/* ============================================================
   GOLDEN RATIO TYPE SCALE  (φ = 1.618)
   Loaded AFTER styles.css. Overrides only typography.
   No layout, color, or spacing values are touched.

   PURE GOLDEN STEPS
     body        16px      (base)
     subheading  26px      16 x 1.618
     heading     42px      26 x 1.618
     display     68px      42 x 1.618

   HALF-STEPS  (sqrt 1.618 = 1.272) — for UI text that must
   live between the pure steps: nav, meta, buttons, captions.
     micro       10px      caption / eyebrow
     caption     13px      meta, labels, breadcrumbs
     lead        20px      nav links, intro lead
     mid-heading 33px      secondary headings
     mid-display 53px      large-but-not-hero

   LINE HEIGHT
     body 16 x 1.618 = 26px  (the ratio governs leading too)
   ============================================================ */

:root{
  --gr-micro:10px;
  --gr-caption:13px;
  --gr-body:16px;
  --gr-lead:20px;
  --gr-sub:26px;
  --gr-mid:33px;
  --gr-heading:42px;
  --gr-display-mid:53px;
  --gr-display:68px;

  --gr-leading-body:26px;   /* 16 x 1.618 */
  --gr-leading-tight:1.1;   /* headings */
}

/* ---------- BASE ---------- */
body{font-size:var(--gr-body);line-height:var(--gr-leading-body);}
p{font-size:var(--gr-body);line-height:var(--gr-leading-body);}

/* ---------- DISPLAY (68) ---------- */
.hero-title{font-size:var(--gr-display);line-height:var(--gr-leading-tight);}

/* ---------- HEADING (42) ---------- */
.tgb__name{font-size:var(--gr-heading);line-height:var(--gr-leading-tight);}
.tape h2,
.split-body h2,
.split-body h2.gold-head,
.mat h2,
.cta-band h2{font-size:var(--gr-heading);line-height:var(--gr-leading-tight);}

/* ---------- SUBHEADING (26) ---------- */
.intro-sub{font-size:var(--gr-sub);line-height:var(--gr-leading-tight);}
.quote blockquote{font-size:var(--gr-sub);line-height:1.42;}   /* 26 x 1.42 = 37 */
.site-footer h3{font-size:var(--gr-sub);line-height:var(--gr-leading-tight);}

/* ---------- LEAD (20) ---------- */
.intro-lead{font-size:var(--gr-lead);line-height:32px;}         /* 20 x 1.618 = 32 */
.mat-lead{font-size:var(--gr-lead);line-height:32px;}
.nav-left a{font-size:var(--gr-lead);}
.nav-right a{font-size:var(--gr-lead);}
.accolades li{font-size:var(--gr-lead);}

/* ---------- BODY (16) ---------- */
.tape-row{font-size:var(--gr-body);line-height:var(--gr-leading-body);}
.split-body p{font-size:var(--gr-body);line-height:var(--gr-leading-body);}
.cta-band p{font-size:var(--gr-body);line-height:var(--gr-leading-body);}
.site-footer p,.site-footer a{font-size:var(--gr-body);}

/* ---------- CAPTION (13) ---------- */
.eyebrow,
.record-link,
.quote cite,
.tgb__caption,
.tgb__mlabel,
.tgb__division,
.tgb__status,
.btn{font-size:var(--gr-caption);}

/* ---------- MICRO (10) ---------- */
.foot-bottom p{font-size:var(--gr-micro);}

/* ---------- MOBILE: step the display sizes down one rung ---------- */
@media (max-width:900px){
  .hero-title{font-size:var(--gr-display-mid);}   /* 68 -> 53 */
  .tgb__name,
  .tape h2,
  .split-body h2,
  .split-body h2.gold-head,
  .mat h2,
  .cta-band h2{font-size:var(--gr-mid);}          /* 42 -> 33 */
  .intro-sub,
  .quote blockquote{font-size:var(--gr-lead);}    /* 26 -> 20 */
}

/* ============================================================
   SPEC PANEL — preview only. Not part of the site.
   ============================================================ */
.gr-spec{background:#0b0b0b;color:#fff;padding:44px 0;}
.gr-spec .gr-title{font-family:var(--font-display);font-weight:600;font-size:var(--gr-sub);line-height:1.1;letter-spacing:.5px;text-transform:uppercase;color:#fff;margin:0 0 6px;}
.gr-spec .gr-note{font-size:var(--gr-caption);line-height:20px;color:rgba(255,255,255,.6);margin:0 0 26px;max-width:760px;}
.gr-scale{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;border-top:1px solid rgba(255,255,255,.14);padding-top:24px;}
.gr-step{min-width:0;}
.gr-step .gr-px{font-family:var(--font-display);font-weight:600;color:var(--gold);line-height:1;margin:0 0 8px;display:block;}
.gr-step .gr-label{font-family:var(--font-body);font-size:var(--gr-caption);letter-spacing:1.4px;text-transform:uppercase;color:#fff;margin:0 0 3px;}
.gr-step .gr-math{font-family:var(--font-body);font-size:var(--gr-caption);color:rgba(255,255,255,.45);margin:0;}
.gr-step--body .gr-px{font-size:var(--gr-body);}
.gr-step--sub  .gr-px{font-size:var(--gr-sub);}
.gr-step--head .gr-px{font-size:var(--gr-heading);}
.gr-step--disp .gr-px{font-size:var(--gr-display);}
@media (max-width:900px){ .gr-scale{grid-template-columns:repeat(2,1fr);} }
