/* ============================================================
   01 TOKENS ,  Son Altesse
   Design variables: color, type, spacing, radii, effects.
   Warm, spicy palette: piment red + leaf green.
   Authentic West-African gastronomy.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,600;12..96,700;12..96,800&family=Hanken+Grotesk:wght@400;500;600;700&family=Space+Mono:wght@400;700&display=swap');

:root {
  /* --- Neutrals (warm, earthy) --- */
  --ink: #1a0f0a;
  --ink-2: #2a1a12;
  --soot: #4a3528;
  --stone: #8a7262;
  --paper: #fff;
  --paper-2: #fefbf7;
  --paper-3: #fdf6ed;
  --white: #fff;

  /* --- Brand cores --- */
  --piment: #ca3636;
  --piment-2: #b52e2e;
  --piment-3: #fde8e8;
  --leaf: #36864d;
  --leaf-2: #2d7040;
  --leaf-3: #e6f5eb;
  --warm-gold: #f5a623;
  --warm-gold-3: #fef3dc;
  --warm-cream: #fdf8f0;
  --warm-cream-3: #fefcf7;

  /* --- Semantic aliases --- */
  --text-strong: var(--ink);
  --text-body: var(--soot);
  --text-muted: var(--stone);
  --text-inverse: var(--paper);

  --surface-page: var(--paper);
  --surface-alt: var(--warm-cream);
  --surface-card: var(--white);
  --surface-ink: var(--ink);
  --surface-brand: var(--piment);

  --brand-primary: var(--piment);
  --brand-secondary: var(--leaf);
  --brand-accent: var(--warm-gold);
  --brand-deep: var(--ink);

  --border-strong: var(--ink);
  --border-subtle: var(--paper-3);
  --border-on-ink: rgba(255, 255, 255, 0.18);
  --focus-ring: var(--piment);

  /* --- Type --- */
  --font-display: 'Bricolage Grotesque', system-ui, sans-serif;
  --font-sans: 'Hanken Grotesk', system-ui, -apple-system, sans-serif;
  --font-mono: 'Space Mono', ui-monospace, monospace;

  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-black: 800;

  --text-xs: 0.98rem;
  --text-sm: 1.1rem;
  --text-base: 1rem;
  --text-lg: 1.1rem;
  --text-xl: 1.45rem;
  --text-2xl: 1.85rem;
  --text-3xl: 2.4rem;
  --text-4xl: 3.1rem;
  --text-5xl: 4rem;
  --text-6xl: 5.25rem;

  --leading-tight: 1.05;
  --leading-snug: 1.18;
  --leading-normal: 1.5;
  --leading-relaxed: 1.65;

  --tracking-tight: -0.025em;
  --tracking-snug: -0.01em;
  --tracking-wide: 0.07em;
  --tracking-wider: 0.14em;

  /* --- Spacing (8px base) --- */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 2.5rem;
  --space-8: 3rem;
  --space-10: 4rem;
  --space-12: 5rem;
  --space-16: 7rem;
  --space-20: 9rem;

  /* --- Radii (organic, slightly round) --- */
  --radius-sm: 4px;
  --radius-md: 10px;
  --radius-lg: 18px;
  --radius-xl: 28px;
  --radius-pill: 999px;

  /* --- Borders --- */
  --border-hair: 1px;
  --border-rule: 1px;
  --border-bold: 3px;

  /* --- Layout --- */
  --container: 1200px;
  --container-wide: 1360px;
  --gutter: var(--space-5);
  --section-y: var(--space-16);

  /* --- Effects: Red offset shadows (spicy signature) --- */
  --shadow-hard-sm: 3px 3px 0 0 var(--leaf);
  --shadow-hard: 5px 5px 0 0 var(--leaf);
  --shadow-hard-lg: 8px 8px 0 0 var(--leaf);
  --shadow-leaf: 5px 5px 0 0 var(--leaf);
  --shadow-piment: 5px 5px 0 0 var(--piment-2);
  --shadow-soft: 0 12px 30px -12px rgba(202, 54, 54, 0.25);

  /* --- Motion --- */
  --ease-out: cubic-bezier(0.22, 0.61, 0.36, 1);
  --ease-snap: cubic-bezier(0.2, 0.9, 0.3, 1.2);
  --dur-fast: 120ms;
  --dur: 200ms;
  --dur-slow: 360ms;
}
