@import url('./type-tokens.css?v=101');
@font-face{font-family:'HC Inter';src:url('./fonts/inter-tight-400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'HC Inter';src:url('./fonts/inter-tight-600.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:'HC Inter';src:url('./fonts/inter-tight-900.ttf') format('truetype');font-weight:900;font-display:swap}
/* These semantic roles intentionally override the older, page-specific scales. */
body{font-family:'HC Inter',Arial,sans-serif;font-size:var(--type-detail);line-height:var(--type-body-leading)}
h1,h2,h3,h4,blockquote{letter-spacing:var(--type-heading-tracking) !important;font-kerning:normal;font-synthesis:none}
h1,h2,h3,h4{font-family:'HC Inter',Arial,sans-serif;word-spacing:normal}
h1,h2,h3,h4{line-height:var(--type-heading-leading) !important}
/* Page titles use the display tier, which resolves to the section scale (see type-tokens.css). */
h1{font-size:var(--type-display) !important;font-weight:900 !important}
h2{font-size:var(--type-section) !important;font-weight:900 !important}
h3{font-size:var(--type-subheading) !important;line-height:1.22 !important;font-weight:600 !important}
h4{font-size:var(--type-detail) !important;line-height:1.3 !important;font-weight:600 !important}
h1 :is(span,em,strong),h2 :is(span,em,strong),h3 :is(span,em,strong){letter-spacing:inherit !important}
/* Card titles and labels share a smaller scale than section headings. */
:is(.choice-card,.card-body,.asset-body,.form-panel)>h2,.connection-node h2,.thinking-heading h3{font-size:var(--type-card) !important;font-weight:600 !important;line-height:1.18 !important}
.entry-title h2,.office-details h3{font-size:var(--type-article) !important;line-height:1.15 !important}
.input-section h2{font-size:var(--type-subheading) !important;font-weight:600 !important}
.result-top h2,.roles h3,.area-research h3,.best-for h3,.chart-heading h3,.calculation-content h3{font-size:var(--type-detail) !important;line-height:1.3 !important;font-weight:600 !important}
.person-caption h2{font-size:24px !important;font-weight:600 !important;line-height:1.18 !important}
.job-title,.episode-role{font-size:var(--type-small) !important;line-height:1.4 !important;letter-spacing:normal !important}
/* Supporting prose keeps one size and rhythm across page layouts. */
.hero-content .support,.hero-copy>p,.hero-grid>p,.section-copy>p,.section-intro p,.section-heading>p,.identity-layout p,.story-copy p,.show-copy>p,.relationship-grid>div>p,.area-copy p,.research-copy p,.feature-copy p,.work-copy p,.scenario-copy>p,.offer-explanation>p,.refer-layout>div>p,.connect-layout>div>p,.join-copy>p,.join-layout>div>p,.contact-layout>div>p,.contact-grid>div>p,.faq-layout>div>p,.offices-heading>p{font-size:var(--type-body) !important;line-height:var(--type-body-leading) !important;letter-spacing:normal !important}
.history-timeline p,.values-grid p,.values-list p,.work-list p,.work-grid p,.question-grid p,.specialties p,.connections-grid p,.journey-copy p,.feedback-card blockquote,.faq-list details>p,.faqs details>p,.support-list p,.process-list p{font-size:var(--type-detail) !important;line-height:var(--type-body-leading) !important;letter-spacing:normal !important}
.faq-list summary,.faq-list summary span,.faqs summary{font-size:var(--type-body) !important;line-height:1.4 !important;letter-spacing:normal !important}
.hero-content .competition{font-size:var(--type-body) !important;line-height:1.5 !important;letter-spacing:normal !important}
.team-hero blockquote{font-size:var(--type-article);line-height:1.18}
@media(max-width:550px){.person-caption h2{font-size:21px !important}.job-title{font-size:14px !important}}

/* Editorial headings use the same scale, with one purposeful accent phrase.
   Preferred two-line breaks give way to natural wrapping on smaller screens. */
:is(h1,h2).editorial-heading{color:var(--on-text,var(--concept-text,#fff));text-wrap:balance}
:is(h1,h2).editorial-heading .heading-emphasis{color:var(--on-accent,var(--concept-accent-text,#ddfa23));font-style:normal}
@media(max-width:800px){.editorial-heading .editorial-break{display:none}}
