/* ============================================
   ANIMAL SHADOW — Design Tokens
   ============================================ */

:root {
  /* Colors — Dark + Red + Gold */
  --c-black: #0a0a0a;
  --c-dark: #111111;
  --c-dark-2: #161616;
  --c-dark-card: #1a1a1a;
  --c-dark-border: #2a2a2a;
  --c-red: #ae0000;
  --c-red-light: #cc1a1a;
  --c-red-dark: #8a0000;
  --c-red-glow: rgba(174, 0, 0, 0.25);
  --c-gold: #d4a84b;
  --c-gold-light: #e8c66a;
  --c-gold-dark: #b08930;
  --c-white: #f5f5f5;
  --c-white-pure: #ffffff;
  --c-white-muted: #999999;
  --c-white-dim: #666666;
  --c-error: #e74c3c;
  --c-success: #2ecc71;

  /* Typography */
  --ff-display: 'Benzin', 'Oswald', sans-serif;
  --ff-heading: 'Benzin', 'Oswald', sans-serif;
  --ff-body: 'Montserrat', sans-serif;

  /* Font Sizes — Fluid */
  --fs-hero: clamp(3.2rem, 9vw, 7.5rem);
  --fs-h1: clamp(2.4rem, 5vw, 4rem);
  --fs-h2: clamp(1.8rem, 3.5vw, 3rem);
  --fs-h3: clamp(1.3rem, 2vw, 1.75rem);
  --fs-h4: clamp(1.1rem, 1.5vw, 1.35rem);
  --fs-body: clamp(0.95rem, 1.1vw, 1.1rem);
  --fs-small: clamp(0.8rem, 0.9vw, 0.9rem);
  --fs-label: clamp(0.7rem, 0.8vw, 0.8rem);

  /* Font Weights */
  --fw-light: 300;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --fw-black: 900;

  /* Spacing */
  --s-section: clamp(6rem, 12vh, 10rem);
  --s-section-sm: clamp(4rem, 8vh, 6rem);
  --s-container: clamp(1.5rem, 4vw, 3rem);
  --s-gap: clamp(1rem, 2vw, 2rem);
  --s-gap-sm: clamp(0.5rem, 1vw, 1rem);

  /* Container */
  --w-container: 1200px;
  --w-container-sm: 900px;
  --w-container-xs: 700px;

  /* Border Radius */
  --r-sm: 4px;
  --r-md: 8px;
  --r-lg: 16px;
  --r-full: 9999px;

  /* Transitions */
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-out-quart: cubic-bezier(0.25, 1, 0.5, 1);
  --ease-in-out: cubic-bezier(0.76, 0, 0.24, 1);
  --t-fast: 0.2s;
  --t-normal: 0.4s;
  --t-slow: 0.8s;
  --t-slower: 1.2s;

  /* Z-index */
  --z-particles: 1;
  --z-content: 10;
  --z-nav: 100;
  --z-mobile-menu: 300;
  --z-loader: 1000;
  --z-cursor: 999999; /* Toujours au-dessus de tout - popups, modals, overlays */

  /* Shadows */
  --shadow-card: 0 4px 30px rgba(0, 0, 0, 0.4);
  --shadow-red: 0 0 30px rgba(174, 0, 0, 0.2);
  --shadow-red-strong: 0 0 60px rgba(174, 0, 0, 0.35);
  --shadow-gold: 0 0 30px rgba(212, 168, 75, 0.15);
  --shadow-gold-strong: 0 0 60px rgba(212, 168, 75, 0.25);

  /* Mode transition */
  --mode-transition: background-color 0.8s ease, color 0.6s ease, border-color 0.6s ease;
}

/* ==================================================
   MODE: STEALTH — Ultra dark, furtif, minimal
   ================================================== */
body.mode-stealth {
  --c-black: #030303;
  --c-dark: #080808;
  --c-dark-2: #0b0b0b;
  --c-dark-card: #0e0e0e;
  --c-dark-border: #1a1a1a;
  --c-red: #8a0000;
  --c-red-light: #aa0000;
  --c-red-dark: #5c0000;
  --c-red-glow: rgba(138, 0, 0, 0.15);
  --c-white: #c0c0c0;
  --c-white-pure: #d0d0d0;
  --c-white-muted: #606060;
  --c-white-dim: #404040;
  --shadow-card: 0 4px 30px rgba(0, 0, 0, 0.7);
  --shadow-red: 0 0 20px rgba(138, 0, 0, 0.1);
  --shadow-red-strong: 0 0 40px rgba(138, 0, 0, 0.2);
}

/* ==================================================
   MODE: ARCHANGE — Lumiere, purete, elevation
   ================================================== */
body.mode-archange {
  --c-black: #f2f0ed;
  --c-dark: #e8e5e0;
  --c-dark-2: #ddd9d3;
  --c-dark-card: #ffffff;
  --c-dark-border: #d0ccc5;
  --c-red: #1a1a1a;
  --c-red-light: #333333;
  --c-red-dark: #000000;
  --c-red-glow: rgba(0, 0, 0, 0.08);
  --c-gold: #9e7c3a;
  --c-gold-light: #b8943e;
  --c-gold-dark: #7a5f28;
  --c-white: #1a1a1a;
  --c-white-pure: #000000;
  --c-white-muted: #555555;
  --c-white-dim: #888888;
  --shadow-card: 0 4px 30px rgba(0, 0, 0, 0.08);
  --shadow-red: 0 0 30px rgba(0, 0, 0, 0.05);
  --shadow-red-strong: 0 0 60px rgba(0, 0, 0, 0.1);
  --shadow-gold: 0 0 30px rgba(158, 124, 58, 0.15);
}
