/* ZARYA V28.72-T2 | Semantic typography contract.
   Last stylesheet on all eight pages. Existing T1 is superseded only at mapped components.
   Preserve visual hierarchy, no changes to app images, embedded financial labels or navigation. */
:root{
 --zt2-font:"Inter ZARYA",Inter,-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Helvetica,Arial,sans-serif;
 --zt2-ink:#081424; --zt2-muted:#5b6a7e; --zt2-gold:#855615;
 --zt2-home-hero:clamp(52px,5.2vw,76px);
 --zt2-page-hero:clamp(48px,4.6vw,66px);
 --zt2-chapter:clamp(40px,3.65vw,56px);
 --zt2-section:clamp(34px,3vw,44px);
 --zt2-secondary:clamp(24px,2vw,30px);
 --zt2-body:clamp(17px,1.35vw,20px);
 --zt2-eyebrow:13px; --zt2-cta:16px;
 --zt2-title-weight:760;--zt2-title-leading:1.08;--zt2-title-tracking:-.045em;
}
/* Role-specific titles, scoped to actual content headings, never app interfaces. */
html body :is(#hero-h-d,#hero-h){font-family:var(--zt2-font);font-size:var(--zt2-home-hero)!important;font-weight:var(--zt2-title-weight)!important;line-height:var(--zt2-title-leading)!important;letter-spacing:var(--zt2-title-tracking)!important;color:var(--zt2-ink);text-wrap:balance;}
html body :is(.hero-copy>h1.fit--hero3,.hero-copy>h1:not(.zj-sr),#about-landing-title,#os-hero-h,#gs-h1,.pv>h1,.bookend-copy>h1.fit){font-family:var(--zt2-font);font-size:var(--zt2-page-hero)!important;font-weight:var(--zt2-title-weight)!important;line-height:1.09!important;letter-spacing:var(--zt2-title-tracking)!important;color:var(--zt2-ink);text-wrap:balance;}
html body :is(#econ-h,#app-h,#acc-h,#deploy-h,#close-h,#z15-heading,#oe-title,#oe5-cost-title,#weekly-app-title,.closing-photo-copy>h2.fit,#closeHeading,.about-semantic-title,#chapter-03-title,.bookend-panel>h2){font-family:var(--zt2-font);font-size:var(--zt2-chapter)!important;font-weight:var(--zt2-title-weight)!important;line-height:1.10!important;letter-spacing:-.042em!important;color:var(--zt2-ink);text-wrap:balance;overflow-wrap:normal;}
/* Chapter section intro hierarchy, distinct from large statement headings */
html body :is(.s2-parity>.wrap>h2.fit,.z15-intro>h2,#oe5-cost-title){font-size:var(--zt2-section)!important;line-height:1.13!important;letter-spacing:-.035em!important;}
/* Only secondary headings in editorial text, never names, metrics or UI screens */
html body :is(.z16-nav-headline,.oe5-intro h3,.gs29-wrap h3:not(.sr-only)){font-family:var(--zt2-font);font-size:var(--zt2-secondary)!important;line-height:1.16!important;font-weight:720!important;letter-spacing:-.027em!important;color:var(--zt2-ink);}
/* Shared prose: mapped editorial descriptions; exceptions kept intentionally for UI and cards */
html body :is(.hero__lede,.hero-copy>p:not(.eyebrow),.os-lede,.gs29-intro>p,.oe5-intro>p,.about-landing__copy>p:not(.eyebrow),.bookend-copy>p:not(.eyebrow),.closing-photo-copy>p:not(.eyebrow),.pv>p){font-family:var(--zt2-font);font-size:var(--zt2-body)!important;line-height:1.52!important;letter-spacing:-.008em;color:var(--zt2-muted);}
/* Eyebrows normalized across major editorial systems, without targeting app image text */
html body :is(.eyebrow,.os-eyebrow,.gs-kicker,.oe5-eyebrow,.panel-eyebrow,.chapter__eyebrow,.about-landing__eyebrow,.bookend-copy>.kicker,.pv>.eyebrow){font-family:var(--zt2-font)!important;font-size:var(--zt2-eyebrow)!important;font-weight:750!important;line-height:1.4!important;letter-spacing:.18em!important;text-transform:uppercase;color:var(--zt2-gold)!important;}
/* CTA labels: constrain to established primary call-to-action classes, excluding tab nav */
html body :is(a.btn,button.btn,.os-cta,.zs-btn,.hero__cta,.gs29-intro a,.closing-photo-copy a,.bookend-copy a.btn){font-family:var(--zt2-font);font-size:var(--zt2-cta)!important;font-weight:700!important;line-height:1.25!important;letter-spacing:-.012em!important;}
/* Prevent large headings from forcing sideways scrolling; normal line wrapping, not word-breaking. */
html body :is(.hero-copy,.bookend-copy,.about-landing__copy,.feature__copy,.deploy__intro,.closing-photo-copy,.pv,.oe5-intro,.z15-intro){min-width:0;}
@media(max-width:900px){:root{--zt2-home-hero:clamp(38px,7.7vw,58px);--zt2-page-hero:clamp(36px,6.9vw,54px);--zt2-chapter:clamp(33px,6vw,46px);--zt2-section:clamp(30px,5vw,40px);--zt2-secondary:clamp(23px,3.5vw,28px);--zt2-body:clamp(16px,2.1vw,19px);--zt2-cta:16px;}}
@media(max-width:390px){:root{--zt2-home-hero:clamp(34px,9vw,38px);--zt2-page-hero:clamp(33px,8.7vw,37px);--zt2-chapter:clamp(30px,8.2vw,35px);--zt2-section:clamp(28px,7.6vw,33px);--zt2-secondary:23px;--zt2-body:16px;--zt2-eyebrow:12px;--zt2-cta:15px;}}
