/* ============================================================
   GC — Typographic Scale
   Display & headings in --font-display (Prompt), body in
   --font-body (IBM Plex Sans). Tight tracking on large display.
   ============================================================ */

:root {
  /* Font sizes — a 1.25 (major third) modular scale, rounded */
  --text-2xs: 0.6875rem;  /* 11px — micro labels, legal */
  --text-xs:  0.75rem;    /* 12px — captions, eyebrows */
  --text-sm:  0.875rem;   /* 14px — secondary, dense UI */
  --text-base: 1rem;      /* 16px — body default */
  --text-md:  1.125rem;   /* 18px — lead body */
  --text-lg:  1.375rem;   /* 22px — small headings */
  --text-xl:  1.75rem;    /* 28px — H4 */
  --text-2xl: 2.25rem;    /* 36px — H3 */
  --text-3xl: 2.875rem;   /* 46px — H2 */
  --text-4xl: 3.75rem;    /* 60px — H1 */
  --text-5xl: 4.75rem;    /* 76px — hero display */

  /* Line heights */
  --leading-tight: 1.08;
  --leading-snug: 1.2;
  --leading-normal: 1.5;
  --leading-relaxed: 1.65;

  /* Letter spacing */
  --tracking-tight: -0.02em;   /* large display */
  --tracking-snug: -0.01em;    /* headings */
  --tracking-normal: 0em;
  --tracking-wide: 0.04em;     /* eyebrows, buttons */
  --tracking-wider: 0.12em;    /* all-caps labels */

  /* Semantic roles */
  --type-hero-size: var(--text-5xl);
  --type-hero-weight: var(--weight-bold);
  --type-h1-size: var(--text-4xl);
  --type-h2-size: var(--text-3xl);
  --type-h3-size: var(--text-2xl);
  --type-h4-size: var(--text-xl);
  --type-eyebrow-size: var(--text-xs);
  --type-body-size: var(--text-base);
  --type-caption-size: var(--text-sm);
}
