:root {
  /* ── Colours: dark base, paper accents, stamp red ─────── */
  --clr-base:        #0e0c08;   /* warm near-black */
  --clr-base-deep:   #050402;   /* deeper, for layering */
  --clr-base-soft:   #1a1611;   /* raised surface */
  --clr-paper:       #f1e8d0;   /* cream / manila */
  --clr-paper-aged:  #e8dcb8;   /* slightly more yellowed */
  --clr-paper-dark:  #c9b48a;   /* brown card / kraft */
  --clr-paper-edge:  #8a7a55;   /* paper edge shadow */
  --clr-ink:         #1a1612;   /* dark ink (text on paper) */
  --clr-ink-soft:    #4a4136;   /* secondary ink */
  --clr-amber:       #f5a623;   /* hazard amber accent */
  --clr-amber-deep:  #c47d0a;
  --clr-red:         #c92a2a;   /* rubber-stamp red */
  --clr-red-deep:    #8a1a1a;
  --clr-rule-blue:   #7894b8;   /* faint lined-paper rule */
  --clr-text:        #f1e8d0;
  --clr-text-muted:  #9a9082;
  --clr-rule-dark:   #2a241c;

  /* ── Typography ──────────────────────────── */
  --font-stencil:  'Big Shoulders Stencil Display', sans-serif;
  --font-display:  'Antonio', sans-serif;
  --font-body:     'Newsreader', Georgia, serif;
  --font-hand:     'Caveat', cursive;
  --font-mono:     'JetBrains Mono', ui-monospace, monospace;

  /* Fluid type */
  --fs-mega:   clamp(4rem, 13vw, 10rem);
  --fs-hero:   clamp(3rem, 9vw, 7rem);
  --fs-h2:     clamp(2.2rem, 5.5vw, 4rem);
  --fs-h3:     clamp(1.2rem, 2.5vw, 1.6rem);
  --fs-body:   clamp(1rem, 1.4vw, 1.1rem);
  --fs-small:  0.88rem;
  --fs-label:  0.74rem;

  /* ── Spacing ─────────────────────────────── */
  --space-xs:  0.5rem;
  --space-sm:  1rem;
  --space-md:  1.5rem;
  --space-lg:  2.5rem;
  --space-xl:  4rem;
  --space-2xl: 7rem;

  /* ── Layout ──────────────────────────────── */
  --container-max:     1280px;
  --container-padding: clamp(1.25rem, 5vw, 2.5rem);
  --radius-sm:         2px;

  /* ── Motion ──────────────────────────────── */
  --transition-fast: 150ms ease;
  --transition-base: 250ms ease;
  --transition-slow: 380ms ease;

  /* ── Elevation: hard offset paper shadows ─ */
  --shadow-paper:    4px 4px 0 rgba(0, 0, 0, 0.5);
  --shadow-paper-lg: 8px 8px 0 rgba(0, 0, 0, 0.55);
  --shadow-stamp:    1px 1px 0 rgba(0, 0, 0, 0.2);
}
