/* tokens.css — Corporate Editorial design system. Single source of visual truth.
   Reference these only through var(--…). Raw hex belongs ONLY in this file. */

:root {
  /* ---- Color ------------------------------------------------------------- */
  --paper:        #FAF9F6;  /* page background, warm off-white              */
  --paper-alt:    #F1EFE9;  /* alternating sections / card fills            */
  --ink:          #1A1A1A;  /* primary text, near-black charcoal            */
  --ink-soft:     #3B3B38;  /* secondary body text                         */
  --muted:        #6B6B66;  /* meta: dates, labels, tags (warm grey)       */
  --accent:       #0B3D2E;  /* signature deep forest green                 */
  --accent-hover: #0F5341;  /* lifted green for hover/active states         */
  --accent-tint:  rgba(11, 61, 46, 0.06); /* faint green wash for hovers    */
  --line:         #DAD7CF;  /* hairline rules, borders, timeline line      */
  --shadow-color: 20, 20, 20; /* rgb triplet for shadow rgba()             */

  /* ---- Type families ----------------------------------------------------- */
  --font-head: "Newsreader", Georgia, "Times New Roman", serif;
  --font-body: "Inter", "Helvetica Neue", Arial, sans-serif;

  /* ---- Type scale (base 16px) -------------------------------------------- */
  --fs-hero:  clamp(2.75rem, 6vw, 4.5rem);
  --fs-h2:    clamp(2rem, 4vw, 3rem);
  --fs-h3:    1.5rem;
  --fs-lead:  1.375rem;
  --fs-body:  1.125rem;
  --fs-small: 1rem;
  --fs-meta:  0.8125rem;

  --lh-tight:   1.05;
  --lh-head:    1.15;
  --lh-body:    1.65;
  --tracking-meta: 0.08em;

  /* ---- Spacing scale (8px base) ------------------------------------------ */
  --space-1:  0.5rem;
  --space-2:  1rem;
  --space-3:  1.5rem;
  --space-4:  2rem;
  --space-6:  3rem;
  --space-8:  4rem;
  --space-12: 6rem;
  --space-16: 8rem;
  --space-24: 12rem;

  /* ---- Layout ------------------------------------------------------------ */
  --measure:  1200px;
  --gutter:   clamp(1.5rem, 5vw, 6rem);
  --radius:   2px;

  /* ---- Motion ------------------------------------------------------------ */
  --ease-out:      cubic-bezier(0.22, 1, 0.36, 1);
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  --dur-reveal: 400ms;   /* HARD CEILING for any transition */
  --dur-hover:  180ms;
  --dur-fast:   120ms;
  --reveal-shift: 24px;
}
