/* ============================================================================
   Luckiest Man Ventures - design tokens (single source of truth)
   The site, tokens.json, and the docs all derive from these values. To stand up
   a different design system from this template, swap this file + the logo assets.
   ============================================================================ */

@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght,SOFT@0,9..144,400..700,0..100;1,9..144,400..600,0..100&family=Source+Serif+4:ital,opsz,wght@0,8..60,400..600;1,8..60,400&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap');

:root {
  /* ---- Locked core (6) ---- */
  --navy:#123260; --rust:#c24c32; --gold:#e6bf4a;
  --cream:#f5efe3; --white:#fffaf0; --ink:#171717;

  /* ---- Navy ramp ---- */
  --navy-900:#0a1d3b; --navy-700:#123260; --navy-500:#2c4d7e; --navy-300:#5a749e; --navy-100:#b8c3d6;
  --navy-ink:#0b1624;            /* deepest, for inset panels on navy */
  /* ---- Rust ramp ---- */
  --rust-900:#7a2b1f; --rust-700:#a23a25; --rust-500:#c24c32; --rust-300:#d77a63; --rust-100:#ecc0b4;
  --rust-2:#a33e28;             /* accessible rust for small text on cream */
  /* ---- Gold ramp ---- */
  --gold-900:#9c7d22; --gold-700:#c9a338; --gold-500:#e6bf4a; --gold-300:#efd584; --gold-100:#f7ebc4;

  /* ---- Functional (warm only) ---- */
  --success:#3f7a5a; --caution:#e6bf4a; --danger:#9e3b25;

  /* ---- Warm neutrals ---- */
  --paper:#f5efe3; --paper-2:#ede5d4; --paper-3:#e4d9c5; --canvas:#f3eee2;
  --ink-2:#3a3530; --ink-3:#68635b; --ink-4:#9a9488;
  --rule:#d8cdbb; --rule-2:#c8bba4;

  /* ---- Type ---- */
  --display:'Fraunces', Georgia, serif;
  --body:'Source Serif 4', Georgia, serif;
  --sans:'Inter', system-ui, -apple-system, sans-serif;
  --mono:'JetBrains Mono', ui-monospace, Menlo, monospace;

  /* ---- Radius (low, never pills) ---- */
  --r-1:2px; --r-2:4px; --r-3:6px; --r-4:8px;

  /* ---- Spacing ---- */
  --s-1:4px; --s-2:8px; --s-3:12px; --s-4:16px; --s-5:22px; --s-6:28px; --s-7:36px; --s-8:48px; --s-9:64px;

  /* ---- Shadows (soft, warm) ---- */
  --shadow:0 1px 3px rgba(11,22,36,.05), 0 4px 16px rgba(11,22,36,.07);
  --shadow-card:0 2px 8px rgba(11,22,36,.06);
  --shadow-hover:0 6px 22px rgba(11,22,36,.13);

  /* ---- Motion: durations ---- */
  --mo-1:120ms;  /* hover, focus, press */
  --mo-2:200ms;  /* tab, accordion, validation */
  --mo-3:320ms;  /* base: cards, drawers, toasts */
  --mo-4:520ms;  /* narrative reveal */
  --mo-5:800ms;  /* deliberate: title cards */
  /* ---- Motion: easings ---- */
  --ease-stamp:cubic-bezier(.2,.9,.2,1);     /* punches in, locks */
  --ease-rule:cubic-bezier(.65,0,.35,1);     /* draw / retract a line */
  --ease-warm:cubic-bezier(.32,.72,.32,1);   /* default UI decel */
  --ease-out:cubic-bezier(.16,1,.3,1);       /* generic decelerate */
  --ease-in:cubic-bezier(.7,0,.9,.2);        /* exits only */
  --ease-spring:cubic-bezier(.34,1.56,.64,1);/* playful overshoot, personality only */

  /* ---- Layout ---- */
  --page-max:1280px;
}

@media (prefers-reduced-motion: reduce){ *,*::before,*::after{ animation:none !important; transition:none !important; } }
