/* ============================================================
   tokens.css — Gatev profile
   Design direction: "Thracian Editorial"
   Swiss-grid restraint × Balkan editorial weight.
   A deep navy ground, pearl page, one Thracian-gold accent,
   a whisper of Bulgarian red for punctuation.
   Display: heavy serif with Cyrillic grace (Fraunces variable).
   Text:    humanist grotesk with quiet authority (Inter Tight).
   ============================================================ */

:root {
  /* ---------- Palette ---------- */
  --ink:          #0E1524;
  --ink-90:       #17203352;
  --ink-60:       #0E152499;
  --ink-40:       #0E152466;
  --ink-15:       #0E152426;

  --pearl:        #F4F0E6;
  --pearl-soft:   #EAE3D2;
  --bone:         #DCD3BD;

  --gold:         #B8894A;
  --gold-deep:    #8E6830;
  --gold-leaf:    #D6B374;
  --red:          #B0302A;

  --bg:           var(--pearl);
  --bg-dark:      var(--ink);
  --fg:           var(--ink);
  --fg-dark:      var(--pearl);
  --muted:        var(--ink-60);
  --hairline:     var(--ink-15);
  --accent:       var(--gold);
  --accent-deep:  var(--gold-deep);
  --mark:         var(--red);

  /* ---------- Type stacks ---------- */
  --font-display: "Fraunces", "Times New Roman", Georgia, serif;
  --font-sans:    "Inter Tight", "Inter", -apple-system, "Helvetica Neue", Arial, sans-serif;
  --font-mono:    "JetBrains Mono", "SFMono-Regular", ui-monospace, Menlo, monospace;

  /* ---------- Type scale ---------- */
  --fs-xxs:       0.6875rem;
  --fs-xs:        0.8125rem;
  --fs-sm:        0.9375rem;
  --fs-base:      1.1875rem;
  --fs-md:        1.375rem;
  --fs-lg:        1.75rem;
  --fs-xl:        2.5rem;
  --fs-2xl:       4.5rem;
  --fs-display:   clamp(4.5rem, 14vw, 11.25rem);
  --fs-mega:      clamp(7rem,  22vw, 18rem);

  /* ---------- Line heights / tracking ---------- */
  --lh-tight: 0.92;
  --lh-snug:  1.08;
  --lh-head:  1.15;
  --lh-body:  1.58;
  --lh-loose: 1.72;

  --tr-display: -0.025em;
  --tr-head:    -0.015em;
  --tr-body:     0em;
  --tr-caps:     0.16em;
  --tr-meta:     0.08em;

  /* ---------- Space ---------- */
  --s-0:  0;
  --s-1:  0.25rem;
  --s-2:  0.5rem;
  --s-3:  0.75rem;
  --s-4:  1rem;
  --s-5:  1.5rem;
  --s-6:  2rem;
  --s-7:  3rem;
  --s-8:  4.5rem;
  --s-9:  6rem;
  --s-10: 8rem;
  --s-11: 12rem;

  /* ---------- Layout ---------- */
  --measure:       34rem;
  --measure-wide:  52rem;
  --col-gutter:    clamp(1rem, 3vw, 2.5rem);
  --page-pad:      clamp(1.25rem, 5vw, 4rem);
  --grid-max:      88rem;

  /* ---------- Motion ---------- */
  --ease-std:   cubic-bezier(.2,.6,.2,1);
  --ease-out:   cubic-bezier(.22,1,.36,1);
  --dur-fast:   180ms;
  --dur-base:   420ms;
  --dur-slow:   900ms;
  --dur-reveal: 1200ms;
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --dur-fast: 1ms;
    --dur-base: 1ms;
    --dur-slow: 1ms;
    --dur-reveal: 1ms;
  }
}
