/* ============================================================
   WSC · Typography tokens
   Newsreader (serif) carries the heritage voice; Archivo (sans)
   handles UI; Anton is the heavy condensed display accent that
   echoes the wordmark; JetBrains Mono for technical surfaces.
   ============================================================ */
:root {
  /* ---- Families --------------------------------------------- */
  --font-serif: 'Newsreader', 'Iowan Old Style', Georgia, 'Times New Roman', serif;
  --font-sans:  'Archivo', -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif;
  --font-condensed: 'Anton', 'Archivo Narrow', 'Arial Narrow', var(--font-sans);
  --font-mono:  'JetBrains Mono', 'SFMono-Regular', Menlo, Consolas, monospace;

  /* ---- Weights ---------------------------------------------- */
  --fw-light: 300;      /* @kind font */
  --fw-regular: 400;    /* @kind font */
  --fw-medium: 500;     /* @kind font */
  --fw-semibold: 600;   /* @kind font */
  --fw-bold: 700;       /* @kind font */

  /* ---- Type scale (1.250 major-third-ish, tuned) ------------ */
  --text-2xs: 0.6875rem;   /* 11 */
  --text-xs:  0.75rem;     /* 12 */
  --text-sm:  0.875rem;    /* 14 */
  --text-base: 1rem;       /* 16 */
  --text-md:  1.125rem;    /* 18 */
  --text-lg:  1.375rem;    /* 22 */
  --text-xl:  1.75rem;     /* 28 */
  --text-2xl: 2.25rem;     /* 36 */
  --text-3xl: 3rem;        /* 48 */
  --text-4xl: 4rem;        /* 64 */
  --text-5xl: 5.25rem;     /* 84 */

  /* ---- Line heights ----------------------------------------- */
  --leading-tight: 1.05;
  --leading-snug: 1.18;
  --leading-display: 1.08;
  --leading-normal: 1.5;
  --leading-relaxed: 1.65;

  /* ---- Letter spacing --------------------------------------- */
  --tracking-tightest: -0.03em;
  --tracking-tight: -0.015em;
  --tracking-normal: 0em;
  --tracking-wide: 0.04em;
  --tracking-eyebrow: 0.16em;   /* uppercase labels */
  --tracking-motto: 0.28em;     /* Latin motto / crest text */

  /* ---- Semantic roles --------------------------------------- */
  --display-font: var(--font-serif);
  --display-weight: var(--fw-semibold);
  --display-tracking: var(--tracking-tight);

  --heading-font: var(--font-serif);
  --heading-weight: var(--fw-medium);

  --eyebrow-font: var(--font-sans);
  --eyebrow-weight: var(--fw-semibold);
  --eyebrow-tracking: var(--tracking-eyebrow);

  --body-font: var(--font-serif);   /* editorial body is serif */
  --ui-font: var(--font-sans);      /* UI / controls are sans  */
  --body-weight: var(--fw-regular);
}

/* ---- Optional helper classes (also usable in cards) -------- */
.wsc-eyebrow {
  font-family: var(--eyebrow-font);
  font-weight: var(--eyebrow-weight);
  font-size: var(--text-xs);
  letter-spacing: var(--tracking-eyebrow);
  text-transform: uppercase;
  color: var(--text-brand);
}
.wsc-motto {
  font-family: var(--font-sans);
  font-weight: var(--fw-semibold);
  letter-spacing: var(--tracking-motto);
  text-transform: uppercase;
  color: var(--text-accent);
}
.wsc-display {
  font-family: var(--display-font);
  font-weight: var(--display-weight);
  letter-spacing: var(--display-tracking);
  line-height: var(--leading-display);
}
.wsc-condensed {
  font-family: var(--font-condensed);
  text-transform: uppercase;
  letter-spacing: 0.005em;
  font-weight: 400;
}
