/* =============================================================================
   Design tokens — Guzman et Délices
   Palette et typographie imposées par le cahier des charges (section 3).
   Préfixe : --gd-*  (Guzman et Délices)
   ========================================================================== */

:root {
  /* --- Palette brute (CDC) ------------------------------------------------ */
  --gd-noir: #1d201e;          /* Structure sombre — titres, boutons, footer */
  --gd-or: #d1ae64;            /* Lumière noble — filets, médaille, coordonnées */
  --gd-chocolat: #4a2e1f;      /* Profondeur gourmande — accents chaleur */
  --gd-argile: #a67c68;        /* Terre & douceur — pastilles, accents boutique */
  --gd-taupe: #8f7e72;         /* Matière & élégance — texte secondaire */
  --gd-ivoire: #faf8f5;        /* Fond dominant */
  --gd-blanc-casse: #efebe4;   /* Fond alterné */
  --gd-creme: #f4efea;         /* Fond alterné (respiration) */
  --gd-white: #ffffff;

  /* Variantes d'état dérivées (survol / pressé) */
  --gd-noir-hover: #2c312e;
  --gd-or-hover: #c19a4a;      /* or assombri pour survol */
  --gd-or-soft: #e7d3a4;       /* or clair — filets discrets */
  --gd-chocolat-hover: #5c3a28;

  /* --- Couleurs sémantiques ---------------------------------------------- */
  --gd-color-bg: var(--gd-ivoire);
  --gd-color-surface: var(--gd-white);
  --gd-color-surface-alt: var(--gd-creme);
  --gd-color-surface-sunken: var(--gd-blanc-casse);

  --gd-color-text: var(--gd-noir);          /* corps : noir chaud (lisibilité) */
  --gd-color-text-muted: var(--gd-taupe);   /* second niveau (CDC : taupe grège) */
  --gd-color-heading: var(--gd-noir);
  --gd-color-text-on-dark: var(--gd-ivoire);
  --gd-color-text-on-accent: var(--gd-noir);

  --gd-color-accent: var(--gd-or);
  --gd-color-accent-warm: var(--gd-chocolat);
  --gd-color-accent-soft: var(--gd-argile);

  --gd-color-border: rgba(29, 32, 30, 0.12);
  --gd-color-border-strong: rgba(29, 32, 30, 0.28);
  --gd-color-border-gold: var(--gd-or);
  --gd-color-focus: var(--gd-or);

  /* Liseré tricolore (marqueur identitaire — bleu/blanc/rouge sobre) */
  --gd-tricolore-bleu: #2b3a67;
  --gd-tricolore-blanc: var(--gd-ivoire);
  --gd-tricolore-rouge: #8c2b2b;

  /* --- Typographie -------------------------------------------------------- */
  --gd-font-display: "Cinzel", "Georgia", "Times New Roman", serif;
  --gd-font-sans: "Alegreya Sans", system-ui, -apple-system, "Segoe UI", sans-serif;

  --gd-weight-light: 300;
  --gd-weight-regular: 400;
  --gd-weight-medium: 500;
  --gd-weight-bold: 700;

  /* Échelle fluide (mobile-first) — clamp(min, préf. vw, max) */
  --gd-text-xs: 0.75rem;
  --gd-text-sm: 0.875rem;
  --gd-text-base: 1rem;
  --gd-text-md: 1.125rem;
  --gd-text-lg: clamp(1.25rem, 1.1rem + 0.6vw, 1.5rem);
  --gd-text-xl: clamp(1.5rem, 1.3rem + 1vw, 2rem);
  --gd-text-2xl: clamp(2rem, 1.6rem + 1.8vw, 2.75rem);
  --gd-text-3xl: clamp(2.5rem, 1.9rem + 2.8vw, 3.75rem);
  --gd-text-4xl: clamp(3rem, 2.2rem + 4vw, 5rem);

  --gd-leading-tight: 1.08;
  --gd-leading-snug: 1.25;
  --gd-leading-normal: 1.6;
  --gd-leading-relaxed: 1.75;

  --gd-tracking-tight: -0.01em;
  --gd-tracking-normal: 0;
  --gd-tracking-wide: 0.08em;
  --gd-tracking-caps: 0.16em;   /* petites capitales / sur-titres */

  /* --- Espacement (base 4px) --------------------------------------------- */
  --gd-space-0: 0;
  --gd-space-1: 0.25rem;
  --gd-space-2: 0.5rem;
  --gd-space-3: 0.75rem;
  --gd-space-4: 1rem;
  --gd-space-5: 1.5rem;
  --gd-space-6: 2rem;
  --gd-space-7: 3rem;
  --gd-space-8: 4rem;
  --gd-space-9: 6rem;
  --gd-space-10: 8rem;

  /* --- Rayons ------------------------------------------------------------- */
  --gd-radius-sm: 4px;
  --gd-radius-md: 8px;
  --gd-radius-lg: 16px;
  --gd-radius-xl: 24px;
  --gd-radius-pill: 999px;

  /* --- Ombres (chaudes) --------------------------------------------------- */
  --gd-shadow-sm: 0 1px 2px rgba(29, 32, 30, 0.06), 0 1px 3px rgba(29, 32, 30, 0.08);
  --gd-shadow-md: 0 4px 12px rgba(29, 32, 30, 0.1);
  --gd-shadow-lg: 0 12px 32px rgba(29, 32, 30, 0.16);
  --gd-shadow-gold: 0 6px 20px rgba(209, 174, 100, 0.35);

  /* --- Mise en page ------------------------------------------------------- */
  --gd-container: 1200px;
  --gd-container-narrow: 760px;
  --gd-gutter: clamp(1rem, 0.6rem + 2vw, 2.5rem);

  /* --- Élévation (z-index) ------------------------------------------------ */
  --gd-z-base: 1;
  --gd-z-header: 100;
  --gd-z-overlay: 900;
  --gd-z-modal: 1000;
  --gd-z-drawer: 1100;

  /* --- Transitions -------------------------------------------------------- */
  --gd-transition-fast: 120ms ease;
  --gd-transition: 200ms ease;
  --gd-transition-slow: 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
