/* Local typography review. Use ?font=original to compare the prior pairing. */
@font-face{font-family:'PP Eiko Preview';src:url('assets/fonts/pp-eiko-preview.ttf') format('truetype');font-weight:100 800;font-style:normal;font-display:swap}
:root[data-typography=eiko]{--font-display:'PP Eiko Preview',Georgia,serif;--font-text:'DM Sans',sans-serif}
[data-typography=eiko] body{font-family:var(--font-text);font-weight:400}
[data-typography=eiko] button,[data-typography=eiko] input,[data-typography=eiko] textarea,[data-typography=eiko] select{font-family:var(--font-text)}
[data-typography=eiko] h3,[data-typography=eiko] h4,[data-typography=eiko] .floating-output>p,[data-typography=eiko] .source-artifact>p{font-family:var(--font-text)}
[data-typography=eiko] .hero-showcase h1,[data-typography=eiko] .workflow-index h2,[data-typography=eiko] .people-heading h2,[data-typography=eiko] .section-heading h2,[data-typography=eiko] .engagement-copy h2,[data-typography=eiko] #engagement-title,[data-typography=eiko] .questions-section h2,[data-typography=eiko] .contact-grid h2,[data-typography=eiko] .chapter-copy h3,[data-typography=eiko] .workflow-mobile-intro>p:last-child{font-family:var(--font-display);font-weight:400;letter-spacing:-.04em;line-height:1.12;font-synthesis:none}
[data-typography=eiko] .hero-showcase h1{font-size:clamp(64px,6.45vw,102px);line-height:1.13;letter-spacing:-.04em;margin:26px 0 30px}
[data-typography=eiko] .title-line{padding-bottom:.14em;margin-bottom:-.14em}
[data-typography=eiko] .hero-showcase .hero-intro{font-size:16px;line-height:1.8}
[data-typography=eiko] .hero-showcase .actions{margin-top:27px}
[data-typography=eiko] .use-case h2{font-family:var(--font-text);font-weight:400}
[data-typography=eiko] .editorial{font-family:var(--font-display);font-style:normal;letter-spacing:-.03em;line-height:1.15}
[data-typography=eiko] .chapter-copy h3{font-size:clamp(33px,3.25vw,47px)}
[data-typography=eiko] .approach-grid h3,[data-typography=eiko] .principle-grid h3,[data-typography=eiko] .engagement-details h3,[data-typography=eiko] .contact-card h3{font-weight:400;letter-spacing:-.035em}
@media(min-width:1361px){[data-typography=eiko][data-hero-layout=surround] .hero-showcase h1{font-size:clamp(74px,6vw,94px)}[data-typography=eiko][data-hero-layout=surround] .hero-intro{font-size:15px}}
@media(max-width:1360px) and (min-width:761px){[data-typography=eiko] .hero-showcase h1{font-size:clamp(60px,7.5vw,87px)}}
@media(max-width:760px){[data-typography=eiko] .hero-showcase h1{font-size:clamp(46px,9.6vw,67px);line-height:1.15;margin:22px 0 25px}[data-typography=eiko] .hero-showcase .hero-intro{font-size:15px;line-height:1.75}[data-typography=eiko] .chapter-copy h3{font-size:35px}[data-typography=eiko] .people-heading h2,[data-typography=eiko] #engagement-title{font-size:46px}[data-typography=eiko] .contact-grid h2{font-size:64px}[data-typography=eiko] .interlude-copy .editorial{font-size:46px}}
@media(max-width:380px){[data-typography=eiko] .hero-showcase h1{font-size:45px}[data-typography=eiko] .chapter-copy h3{font-size:32px}[data-typography=eiko] .people-heading h2,[data-typography=eiko] #engagement-title{font-size:41px}}

/* Legibility pass: preserve scale contrast without using display-sized microcopy. */
[data-typography=eiko] body{font-size:17px;line-height:1.68}
[data-typography=eiko] nav,
[data-typography=eiko] .button,
[data-typography=eiko] .text-link{font-size:14px}
[data-typography=eiko] .eyebrow{font-size:12px;line-height:1.55}
[data-typography=eiko] .small{font-size:13px}
[data-typography=eiko] .hero-showcase .hero-intro{font-size:17px;line-height:1.75}
[data-typography=eiko] .case-category{font-size:11px}
[data-typography=eiko] .workflow-index-intro{font-size:15px;line-height:1.75}
[data-typography=eiko] .workflow-navigation{font-size:16px}
[data-typography=eiko] .workflow-navigation small{font-size:13px;line-height:1.5}
[data-typography=eiko] .workflow-reading{font-size:12px}
[data-typography=eiko] .image-kicker,
[data-typography=eiko] .floating-meta,
[data-typography=eiko] .floating-boundary{font-size:11px}
[data-typography=eiko] .floating-lines{font-size:10px}
[data-typography=eiko] .chapter-copy>p:not(.eyebrow){font-size:16px;line-height:1.7}
[data-typography=eiko] .chapter-handoff span{font-size:11px}
[data-typography=eiko] .chapter-handoff p{font-size:14px;line-height:1.65}
[data-typography=eiko] .sample-output .eyebrow{font-size:10px}
[data-typography=eiko] .sample-output p{font-size:15px;line-height:1.7}
[data-typography=eiko] .interlude-copy>span{font-size:16px}
[data-typography=eiko] .principle-grid p{font-size:15px;line-height:1.65}
[data-typography=eiko] .approach-grid article>p{font-size:15px;line-height:1.65}
[data-typography=eiko] .approach-grid .deliverable{font-size:13px;line-height:1.6}
[data-typography=eiko] .deliverable span{font-size:11px}
[data-typography=eiko] .engagement-details article>p:not(.eyebrow){font-size:15px;line-height:1.7}
[data-typography=eiko] .commercial-note{font-size:14px;line-height:1.65}
[data-typography=eiko] .faq summary{font-size:17px;line-height:1.5}
[data-typography=eiko] .faq details>p{font-size:16px;line-height:1.7}
[data-typography=eiko] .contact-card>p{font-size:16px;line-height:1.7}
[data-typography=eiko] .contact-card .booking-note,
[data-typography=eiko] footer p,
[data-typography=eiko] footer>a:last-child{font-size:13px}
[data-typography=eiko] .engagement-image figcaption{font-size:13px}

/* Diagram labels are secondary, but their key states should remain decipherable. */
[data-typography=eiko] .enquiry-note{font-size:11px}
[data-typography=eiko] .mini-status,
[data-typography=eiko] .brief-chip,
[data-typography=eiko] .answer-bubble>div>span,
[data-typography=eiko] .mismatch-chip{font-size:10px}
[data-typography=eiko] .question-bubble{font-size:12px}
[data-typography=eiko] .source-chips>span,
[data-typography=eiko] .invoice-sheet>span{font-size:9px}
[data-typography=eiko] .task-row{font-size:8px}

@media(max-width:760px){
  [data-typography=eiko] body{font-size:16px;line-height:1.68}
  [data-typography=eiko] .hero-showcase .hero-intro{font-size:16px;line-height:1.7}
  [data-typography=eiko] .hero-showcase .button,
  [data-typography=eiko] .hero-showcase .text-link,
  [data-typography=eiko] .menu-toggle{font-size:13px}
  [data-typography=eiko] .eyebrow{font-size:11px}
  [data-typography=eiko] .case-category{font-size:10px}
  [data-typography=eiko] .workflow-navigation a{font-size:12px}
  [data-typography=eiko] .workflow-reading{font-size:10px}
  [data-typography=eiko] .chapter-copy>p:not(.eyebrow),
  [data-typography=eiko] .people-content>p,
  [data-typography=eiko] .section-heading>p{font-size:16px}
  [data-typography=eiko] .chapter-handoff p{font-size:14px}
  [data-typography=eiko] .faq summary{font-size:16px}
  [data-typography=eiko] .interlude-copy>span{font-size:14px}
  [data-typography=eiko] footer>a:last-child{font-size:12px}
  [data-typography=eiko] .enquiry-note{font-size:9px}
  [data-typography=eiko] .question-bubble{font-size:9px}
  [data-typography=eiko] .mini-status,
  [data-typography=eiko] .brief-chip,
  [data-typography=eiko] .answer-bubble>div>span,
  [data-typography=eiko] .mismatch-chip{font-size:8px}
  [data-typography=eiko] .source-chips>span,
  [data-typography=eiko] .invoice-sheet>span,
  [data-typography=eiko] .task-row{font-size:7px}
}

/* Give the business-value headline space without shrinking the reading copy. */
.hero-showcase .hero-copy{max-width:1320px}
[data-typography=eiko] .hero-showcase .hero-value-title{font-size:clamp(58px,5.35vw,88px);line-height:1.15;letter-spacing:-.045em}
.hero-showcase .hero-intro{max-width:690px;text-wrap:pretty}
@media(min-width:1361px){
  [data-hero-layout=surround] .hero-showcase .hero-copy{max-width:660px}
  [data-typography=eiko][data-hero-layout=surround] .hero-showcase .hero-value-title{font-size:64px}
  [data-hero-layout=surround] .hero-showcase .hero-intro{max-width:540px}
  [data-hero-layout=surround] .case-marketing{top:850px}
  [data-hero-layout=surround] .hero-showcase{min-height:1250px}
  [data-hero-layout=surround] .use-case-universe{height:1180px}
}
@media(max-width:760px){
  .hero-showcase .hero-copy{max-width:520px}
  [data-typography=eiko] .hero-showcase .hero-value-title{font-size:clamp(40px,7.6vw,56px);line-height:1.15;letter-spacing:-.04em}
}
