/* Shared reading hierarchy across the public pages. */
:root{--type-section:34px;--type-card:24px;--type-body:16px;--type-meta:14px;--space-heading:32px}
body{font-size:var(--type-body);line-height:1.9}
.section h2,.section-top h2,.segment-entry h2,.cv-entry h2,.segment-heading h2,.practice-copy h2,
:is(.case-section,.process-home,.expert-section,.trust-section) .section-top h2{font-size:var(--type-section);line-height:1.65;letter-spacing:.035em}
.section-top{margin-bottom:var(--space-heading)}
.segment-entry h2,.cv-entry h2{margin-bottom:var(--space-heading)}
.segment-eyebrow{font-size:var(--type-meta);line-height:1.8;margin-bottom:12px}
.segment-choices strong,.case-content h3,.roadmap h3,.expert-card h3,.resource-entry h3,
.use-card h3,.advisor-card h3,.output-card h3,.fit-columns h3,.group-grid h3,.case-detail-copy article>h2{font-size:var(--type-card);line-height:1.65;letter-spacing:.025em}
.segment-choices a{padding:26px 28px;min-height:128px}
.segment-choices small,.segment-bank-link{font-size:var(--type-body);line-height:1.8}
.segment-choices small{display:block;margin-bottom:8px}
.section-side p,.case-content>p,.roadmap p,.expert-card>p,.resource-entry p,
.use-card p,.detail-person p,.advisor-card p,.process p,.scenario-flow p,.contact-guide p,.mini-service p,
.output-card p,.case-detail-copy article>p,.pricing-grid p,.group-grid p,.company-business p,.service-row p,
.company-table>div,.guide-note,.service-desc,.contact-band p{font-size:var(--type-body);line-height:1.9}
.small-note,.proof-note,.source-note,.photo-caption,.expert-career,.fit-foot,
.roadmap dt,.roadmap dd,.case-detail-copy dt,.case-detail-copy dd{font-size:var(--type-meta);line-height:1.85}
.faq summary{font-size:18px;line-height:1.8}.faq p{font-size:var(--type-body);line-height:1.9}
.case-link,.expert-work-link,.subnav,.footer-links a,.footer-address{font-size:15px;line-height:1.85}
.gateway-grid strong,.corporate-routes strong,.audience-links strong{font-size:18px;line-height:1.7}
.gateway-grid small,.corporate-routes small,.audience-links small{font-size:var(--type-meta);line-height:1.8}
.work-scene-detail{font-size:var(--type-body);line-height:1.9}
@media(max-width:900px){:root{--type-section:30px;--type-card:22px}}
@media(max-width:600px){
 :root{--type-section:27px;--type-card:21px;--type-body:16px;--type-meta:14px;--space-heading:24px}
 .segment-choices a{padding:22px 20px;min-height:120px}
 .segment-choices strong{font-size:20px}
 .segment-choices small,.segment-bank-link{font-size:15px}
 .faq summary{font-size:17px}
 .work-scene-detail{font-size:15px;line-height:1.8}
 .work-scene-copy .btn{font-size:14px}
 .work-stories.is-scroll-story .work-story-stage{min-height:620px}
 .work-scene,.work-stories.is-scroll-story .work-scene{min-height:620px}
}
/* Reserve the arrow column when a card label wraps. */
.segment-choices strong{display:flex;align-items:center;justify-content:space-between;gap:16px}
.segment-choices strong span{float:none;flex-shrink:0;margin-left:0}
.section h2,.section-top h2,.segment-entry h2,.cv-entry h2{ text-wrap:balance }
