/* ============================================================
   TYPOGRAPHY — Chris Bookman Personal Brand
   Display serif (Newsreader) for voice. Grotesk (Archivo) for
   structure. Mono (Space Mono) for the data signal — eyebrows,
   labels, metric units.
   ============================================================ */

:root {
  /* ---- Families ---- */
  --font-display: 'Newsreader', Georgia, 'Times New Roman', serif;
  --font-sans:    'Archivo', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-mono:    'Space Mono', 'SFMono-Regular', ui-monospace, monospace;

  /* ---- Weights ---- */
  --fw-regular: 400; /* @kind other */
  --fw-medium:  500; /* @kind other */
  --fw-semibold:600; /* @kind other */
  --fw-bold:    700; /* @kind other */
  --fw-black:   900; /* @kind other */

  /* ---- Type scale (fluid-friendly base; rem at 16px root) ---- */
  --fs-eyebrow:  0.75rem;   /* 12px — mono eyebrows / labels */
  --fs-caption:  0.8125rem; /* 13px */
  --fs-small:    0.875rem;  /* 14px */
  --fs-body:     1rem;      /* 16px */
  --fs-body-lg:  1.125rem;  /* 18px — lede / intro body */
  --fs-h6:       1.25rem;   /* 20px */
  --fs-h5:       1.5rem;    /* 24px */
  --fs-h4:       1.9375rem; /* 31px */
  --fs-h3:       2.5rem;    /* 40px */
  --fs-h2:       3.25rem;   /* 52px */
  --fs-h1:       4.25rem;   /* 68px */
  --fs-display:  6rem;      /* 96px — hero */

  /* ---- Line heights ---- */
  --lh-tight:   1.05; /* @kind other */
  --lh-snug:    1.18; /* @kind other */
  --lh-normal:  1.5;  /* @kind other */
  --lh-relaxed: 1.65; /* @kind other */

  /* ---- Letter spacing ---- */
  --ls-eyebrow:  0.18em;  /* @kind other */
  --ls-caps:     0.08em;  /* @kind other */
  --ls-tight:   -0.02em;  /* @kind other */
  --ls-tighter: -0.035em; /* @kind other */
  --ls-normal:   0;       /* @kind other */

  /* ---- Semantic roles ---- */
  --text-hero:    var(--fw-medium) var(--fs-display)/var(--lh-tight) var(--font-display);
  --text-h1:      var(--fw-medium) var(--fs-h1)/var(--lh-tight) var(--font-display);
  --text-h2:      var(--fw-medium) var(--fs-h2)/var(--lh-snug) var(--font-display);
  --text-h3:      var(--fw-medium) var(--fs-h3)/var(--lh-snug) var(--font-display);
  --text-body:    var(--fw-regular) var(--fs-body)/var(--lh-relaxed) var(--font-sans);
  --text-label:   var(--fw-bold) var(--fs-eyebrow)/1.2 var(--font-mono);
}
