/* ============================================================
   ASHBOURNE — Typography
   Newake = display. Coanda = technical structure.
   F37 Judge = ALL-CAPS brand voice (the face has no lowercase —
   lowercase codepoints render as capitals, so never use it for prose).
   Google Sans = body copy, UI, and all long-form reading.
   Neo-brutalist: heavy weights, tight display leading, wide labels.
   ============================================================ */
:root {
  /* —— Families —— */
  /* Google Sans exists for ONE job: lowercase running text. Everything else
     — display, headings, labels, data — uses Newake / Coanda / F37 Judge. */
  --font-display: "Newake", "Coanda", Impact, sans-serif;
  --font-heading: "Coanda", "F37 Judge", sans-serif;
  --font-sans: "Google Sans", "F37 Judge", sans-serif;
  --font-brand: "F37 Judge", "Coanda", sans-serif;
  --font-condensed: "F37 Judge Condensed", "Coanda", sans-serif;
  --font-extended: "F37 Judge Extended", "Coanda", sans-serif;
  /* Data/numeric readouts — uppercase technical type, so Coanda, never Google Sans. */
  --font-data: "Coanda", "F37 Judge Condensed", sans-serif;
  /* Back-compat alias: consumer code written against the old name still resolves. */
  --font-mono: var(--font-data);

  /* —— Weights —— */
  --weight-thin: 100;
  --weight-light: 300;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-bold: 700;
  --weight-black: 900;

  /* —— Type scale (fluid) —— */
  --text-display: clamp(3.5rem, 1.2rem + 10vw, 9rem); /* @kind spacing */
  --text-h1: clamp(2.5rem, 1.4rem + 4.8vw, 4.75rem); /* @kind spacing */
  --text-h2: clamp(2rem, 1.3rem + 2.8vw, 3.25rem); /* @kind spacing */
  --text-h3: clamp(1.5rem, 1.15rem + 1.4vw, 2.125rem); /* @kind spacing */
  --text-h4: clamp(1.25rem, 1.05rem + 0.8vw, 1.5rem); /* @kind spacing */
  --text-lead: clamp(1.125rem, 1rem + 0.5vw, 1.375rem); /* @kind spacing */
  --text-body-lg: 1.125rem; /* @kind spacing */
  --text-body-md: 1rem; /* @kind spacing */
  --text-body-sm: 0.875rem; /* @kind spacing */
  --text-caption: 0.8125rem; /* @kind spacing */
  --text-label: 0.75rem; /* @kind spacing */
  --text-micro: 0.6875rem; /* @kind spacing */

  /* —— Line heights —— */
  --leading-display: 0.86; /* @kind other */
  --leading-tight: 0.95; /* @kind other */
  --leading-snug: 1.1; /* @kind other */
  --leading-normal: 1.3; /* @kind other */
  --leading-relaxed: 1.6; /* @kind other */

  /* —— Letter spacing —— */
  --tracking-tight: -0.02em; /* @kind other */
  --tracking-snug: -0.01em; /* @kind other */
  --tracking-normal: 0em; /* @kind other */
  --tracking-wide: 0.08em; /* @kind other */
  --tracking-wider: 0.16em; /* @kind other */
  --tracking-widest: 0.28em; /* @kind other */
}
