/* ZARYA V28.72-T1 | Controlled cross-page typography roles.
   Scope: LIVE HTML text only, not raster art, cards, calculators or navigation.
   Do not overwrite approved imagery or change financial values. */
:root{
 --zt-font:"Inter ZARYA",Inter,-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Helvetica,Arial,sans-serif;
 --zt-ink:#081424; --zt-muted:#5b6a7e; --zt-gold:#855615;
 --zt-hero:clamp(42px,5.1vw,76px);
 --zt-chapter:clamp(34px,4.05vw,58px);
 --zt-intro:clamp(40px,4.5vw,66px);
 --zt-body:clamp(17px,1.38vw,20px);
 --zt-heading-leading:1.085;
 --zt-heading-track:-.048em;
}
/* Normalize typesetting, avoiding forced font substitution on images. */
html body { -webkit-text-size-adjust:100%; }
html body h1,html body h2,html body h3 {font-family:var(--zt-font);font-optical-sizing:auto;}
/* Real page heroes (do not target decorative or screen-reader-only headings). */
html body #hero-h-d,
html body #hero-h,
html body .hero-copy > h1,
html body #about-landing-title,
html body #os-hero-h,
html body #gs-h1 {
 font-size:var(--zt-hero) !important;
 font-weight:760 !important;
 line-height:var(--zt-heading-leading) !important;
 letter-spacing:var(--zt-heading-track) !important;
 color:var(--zt-ink);
 text-wrap:balance;
}
/* Page introduction heading systems, including template-style pages. */
html body .gs29-intro > h1,
html body .oe5-intro > h2,
html body .os-hero__copy > h1 {
 font-size:var(--zt-intro) !important;
 font-weight:760 !important;
 line-height:1.09 !important;
 letter-spacing:var(--zt-heading-track) !important;
 text-wrap:balance;
}
/* Chapter headings: common family and optical hierarchy, no arbitrary scaling of every h2. */
html body .home .feature__copy h2.display,
html body .home .app__copy h2.display,
html body .home .deploy__intro h2.display,
html body .home .feature__copy .display,
html body .zj-canvas .chapter .copy > h2:not(.sr-only),
html body #chapter-03-title,
html body #weekly-app-title {
 font-size:var(--zt-chapter) !important;
 font-weight:760 !important;
 line-height:1.10 !important;
 letter-spacing:-.044em !important;
 text-wrap:balance;
}
/* Unified prose within major intro/copy regions (exclude app mockups and financial UI). */
html body .hero__lede,
html body .hero-copy > p:not(.eyebrow),
html body .os-lede,
html body .gs29-intro > p,
html body .oe5-intro > p {
 font-family:var(--zt-font);
 font-size:var(--zt-body) !important;
 line-height:1.52 !important;
 letter-spacing:-.012em;
 color:var(--zt-muted);
}
/* Eyebrows: one optical identity across page and chapter components. */
html body .eyebrow,html body .os-eyebrow,html body .gs-kicker,
html body .oe5-eyebrow,html body .panel-eyebrow,
html body .chapter__eyebrow,html body .gs29-intro .eyebrow {
 font-family:var(--zt-font) !important;
 font-size:12px !important;
 font-weight:750 !important;
 line-height:1.4 !important;
 letter-spacing:.20em !important;
 text-transform:uppercase;
 color:var(--zt-gold) !important;
}
/* Do not globally size text inside buttons; standardize font feel only. */
html body a.btn,html body button.btn,html body .os-cta,
html body .zs-btn,html body .hero__cta,html body .gs29-intro a {
 font-family:var(--zt-font);
 font-weight:700 !important;
 letter-spacing:-.012em;
}
/* Narrow viewport: retain semantic hierarchy while avoiding overwide heading blocks. */
@media(max-width:900px){
 :root{--zt-hero:clamp(36px,7.8vw,58px);--zt-chapter:clamp(32px,6.5vw,48px);--zt-intro:clamp(35px,7vw,54px);--zt-body:clamp(16px,2.2vw,19px);}
 html body #hero-h-d,html body #hero-h,html body .hero-copy > h1,
 html body #about-landing-title,html body #os-hero-h,html body #gs-h1,
 html body .zj-canvas .chapter .copy > h2:not(.sr-only){overflow-wrap:normal;hyphens:none;}
}
@media(max-width:390px){
 :root{--zt-hero:clamp(33px,9.2vw,39px);--zt-chapter:clamp(30px,8.4vw,36px);--zt-intro:clamp(32px,8.8vw,40px);}
}
