/* Shared typography for every public page and printable worksheet.
   Priority is intentional: these rules replace older page-specific type scales. */
:root{
 --type-body:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 --type-heading:Georgia,"Times New Roman",serif;
 --type-h1:3rem;--type-h2:2.125rem;--type-h3:1.5rem;
 --type-copy:1rem;--type-intro:1.125rem;--type-small:.875rem;--type-label:.75rem;
 --sans:var(--type-body);--serif:var(--type-heading);
}
body{font-family:var(--type-body)!important;font-size:var(--type-copy)!important;line-height:1.7!important}
h1,h2,h3{font-family:var(--type-heading)!important;font-weight:500!important;letter-spacing:-.025em!important;hyphens:none!important;word-break:normal!important;overflow-wrap:break-word!important;text-wrap:pretty}
h1{font-size:var(--type-h1)!important;line-height:1.18!important}
h2{font-size:var(--type-h2)!important;line-height:1.25!important}
h3{font-size:var(--type-h3)!important;line-height:1.3!important}
h4{font-family:var(--type-body)!important;font-size:var(--type-copy)!important;font-weight:700!important;line-height:1.5!important}
p,li,address{font-family:var(--type-body)!important;font-size:var(--type-copy)!important;line-height:1.7!important}
.lead,.intro,.positioning-intro,.resource-heading>p{font-size:var(--type-intro)!important;line-height:1.7!important}
button,input,textarea,select{font-family:var(--type-body)!important;font-size:var(--type-copy)!important;line-height:1.5!important}
button,.button,.market-button,.demo-button,.candidate-button,.owner-login,.site-menu-panel>a,.header-profile-nav,.knowledge-jumps a,.resource-card>a,.knowledge-link,.knowledge-aside a,.text-link,.back-link{font-family:var(--type-body)!important;font-size:var(--type-copy)!important;font-weight:700!important;line-height:1.5!important;letter-spacing:0!important}
label,legend{font-family:var(--type-body)!important;font-size:var(--type-copy)!important;line-height:1.6!important}
legend{font-weight:700!important}
.eyebrow,.tag,.resource-type,.demo-eyebrow,.demo-kicker,.choice-kicker{font-family:var(--type-body)!important;font-size:var(--type-label)!important;font-weight:700!important;line-height:1.6!important;letter-spacing:.1em!important}
.note,.check-note,.demo-note,.updated,.practice-caption,.patrick-note,.institution,.flow-top,.footer-in,footer,footer p,footer li,.utility-inner,.workspace-link{font-family:var(--type-body)!important;font-size:var(--type-small)!important;line-height:1.6!important}
.answer-row label,.language-switch a,.step-number{font-size:var(--type-small)!important;line-height:1.5!important}
.sheet .brand{font-family:var(--type-body)!important;font-size:var(--type-small)!important;font-weight:700!important;line-height:1.5!important;letter-spacing:0!important}
/* A numbered worksheet step is a form prompt, like a check question. */
.sheet section h2{font-family:var(--type-body)!important;font-size:var(--type-copy)!important;font-weight:700!important;line-height:1.6!important;letter-spacing:0!important}
@media(max-width:820px){:root{--type-h1:2rem;--type-h2:1.625rem;--type-h3:1.375rem;--type-intro:1rem}}
@media(max-width:360px){:root{--type-h1:1.75rem;--type-h2:1.5rem;--type-h3:1.25rem}}
@media print{
 :root{--type-copy:10.5pt;--type-intro:10.5pt;--type-small:9pt;--type-label:8pt;--type-h1:21pt;--type-h2:16pt;--type-h3:13pt}
 body,p,li{line-height:1.5!important}
}

/* Deliberate emphasis for the homepage guiding statement. */
.statement p{font-family:var(--type-heading)!important;font-size:clamp(1.375rem,2.4vw,2.125rem)!important;font-style:italic!important;font-weight:400!important;line-height:1.5!important;letter-spacing:0!important;max-width:920px;margin:0 auto;text-wrap:pretty}
.statement-line{display:block}
.statement-line+.statement-line{margin-top:.6em}
@media print{.statement p{font-size:16pt!important}}

/* Clear spacing between the homepage teaser label, heading and action. */
.marketplace-teaser .tag{display:block;margin:0 0 18px}
.marketplace-teaser h2{max-width:850px;margin:0 0 34px}
.marketplace-teaser .button{max-width:100%;white-space:normal;text-align:center}
@media(max-width:820px){.marketplace-teaser .tag{margin-bottom:18px}.marketplace-teaser h2{margin-bottom:30px}.marketplace-teaser .button{padding:14px 20px}}

/* Company positioning replaces the attributed quotation on the homepage. */
.company-positioning{min-width:0;padding-top:64px}
.company-positioning .company-message{font-family:var(--type-heading)!important;font-size:clamp(1.625rem,2.6vw,2.125rem)!important;font-weight:500!important;line-height:1.3!important;letter-spacing:-.025em;margin:0 0 36px;hyphens:none;overflow-wrap:normal}
.company-message span{display:block}
.company-message span+span{margin-top:.35em}
.company-positioning .company-name{font-size:var(--type-small)!important;font-weight:700;color:#fff;margin:0 0 10px;line-height:1.5!important}
.company-positioning .company-services{font-size:var(--type-small)!important;color:#bdd0d7;margin:0;line-height:1.7!important}
@media(max-width:480px){.company-positioning{padding-top:56px}.company-positioning .company-message{font-size:1.625rem!important}}

/* A reading block with one genuine link, replacing the non-interactive fact rows. */
.profile-outlook{margin-top:40px}
.profile-outlook h3{margin:0 0 18px}
.about-text .profile-outlook p{margin:0 0 24px}
.profile-outlook .text-link{display:inline-block;max-width:100%;white-space:normal}
