/* Site-wide editorial typography system. Loaded after page styles intentionally. */
body { font-family: var(--font-body); font-size: var(--text-base); line-height: 1.6; }
/* !important is deliberately limited to the shared type system. Some legacy page
   sheets assign a complete `font` shorthand to broad page wrappers. */
main h1 { max-width: 15ch; font-family: var(--font-display) !important; font-size: var(--heading-display) !important; font-weight: 800 !important; line-height: 1.02 !important; letter-spacing: -.045em !important; }
main h2 { font-family: var(--font-display) !important; font-size: var(--heading-lg) !important; font-weight: 700 !important; line-height: 1.08 !important; letter-spacing: -.04em !important; }
main h3 { font-family: var(--font-display) !important; font-size: var(--heading-sm) !important; font-weight: 700 !important; line-height: 1.12 !important; letter-spacing: -.03em !important; }
main h4 { font-family: var(--font-display) !important; font-size: var(--text-xl) !important; font-weight: 700 !important; line-height: 1.2 !important; letter-spacing: -.02em !important; }
main p, main li, main label { font-family: var(--font-body) !important; }
main .gold-label, main .eyebrow { font-family: var(--font-body); font-size: var(--text-xs); font-weight: 700; letter-spacing: .15em; line-height: 1.25; }
body .btn, body .home-button, body button[type="submit"], body input[type="submit"] { font-family: var(--font-body) !important; font-size: var(--text-sm); font-weight: 700; letter-spacing: 0; line-height: 1.2; }
nav a, nav button, .footer a { font-family: var(--font-body) !important; font-size: var(--text-sm); font-weight: 600; letter-spacing: 0; }
input, select, textarea { font-family: var(--font-body) !important; font-size: var(--text-base); line-height: 1.5; }
.section-head > p, .hero-copy, .lead, .leader-role, .leadership-profile-role { font-size: var(--text-lg); line-height: 1.55; }
[data-counter], .metrics strong, .home-stat-grid strong { font-variant-numeric: tabular-nums; }
@media (max-width: 560px) { main h1 { font-size: clamp(2.45rem, 11vw, 3rem) !important; line-height: 1.05 !important; letter-spacing: -.04em !important; } main h2 { font-size: clamp(2rem, 9vw, 2.45rem) !important; line-height: 1.1 !important; } main h3 { font-size: clamp(1.35rem, 6.5vw, 1.7rem) !important; } main p { font-size: 1rem; line-height: 1.65; } main .gold-label, main .eyebrow { font-size: .72rem; letter-spacing: .13em; } }

/* Final shared polish: hierarchy, controls and reading rhythm. */
main .gold-label,main .eyebrow{margin-bottom:var(--space-2);letter-spacing:var(--tracking-wide);text-wrap:balance}
main h1+ p,main h2+ p{margin-top:var(--space-4)}
main p{max-width:68ch;color:var(--ink-soft)}
main .section-head{max-width:62rem;margin-bottom:var(--space-6)}
body .btn,body .home-button,body button[type="submit"],body input[type="submit"]{min-height:3rem;padding:.8rem 1.15rem;border-radius:.6rem;gap:.7rem;transition:transform .2s ease,background-color .2s ease,border-color .2s ease}
body .btn:hover,body .home-button:hover{transform:translateY(-2px)}
input,select,textarea{border-color:var(--card-border);border-radius:.5rem;padding:.78rem .9rem;color:var(--ink);background:#fff}
input:focus,select:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:2px;border-color:var(--gold)}
textarea{min-height:8rem;resize:vertical}
.card,.ind,.tech-capability-card,.leadership-profile-card{box-shadow:0 8px 22px rgba(34,27,13,.05)}
.contextual-media>figcaption li{border-radius:0!important}
.card-surface-link{position:absolute;z-index:2;inset:0;border-radius:inherit}.card-surface-link:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.approach-capability-grid li>*:not(.card-surface-link){position:relative;z-index:1;pointer-events:none}
.industries-page-grid .ind,.work-showcase-card,.technology-feature-card{position:relative}.industries-page-grid .ind>a::after,.work-showcase-card a::after,.technology-feature-card a::after{position:absolute;z-index:1;inset:0;content:""}.industries-page-grid .ind>a:focus-visible::after,.work-showcase-card a:focus-visible::after,.technology-feature-card a:focus-visible::after{outline:3px solid var(--gold);outline-offset:3px;border-radius:inherit}
.leadership-connect-list li{cursor:default}.leadership-connect-list li:hover{transform:none;color:inherit;box-shadow:0 9px 24px rgba(34,29,18,.05)}.leadership-connect-arrow{display:none}
@media(max-width:560px){main .section-head{margin-bottom:var(--space-5)}body .btn,body .home-button,body button[type="submit"]{min-height:3.1rem}.card,.ind,.tech-capability-card{border-radius:.85rem}}
