/* ============================================================
   CATHARSIS — tokens.css
   Charte : mockups Kaëla (docs/kaela_doc) — ne pas dévier.
   Polices auto-hébergées (RGPD : aucun CDN).
   ============================================================ */

/* ---------- Polices ----------
   Titres & logo : Fraunces (substitut libre de Canela / Kings Caslon —
   même serif à empattements évasés, fort contraste). Axes SOFT/WONK
   neutralisés pour rester sobre : voir --fvs-display.
   Boutons & interface : Jost (substitut libre de Basic Sans).
   Texte courant : Cormorant Garamond (demandé tel quel par Kaëla).
   ---------------------------------------------------------------- */
@font-face {
  font-family: 'Fraunces';
  src: url('../fonts/fraunces-variable-latin.woff2') format('woff2-variations');
  font-weight: 100 900; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Jost';
  src: url('../fonts/jost-variable-latin.woff2') format('woff2-variations');
  font-weight: 100 900; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Cormorant Garamond';
  src: url('../fonts/cormorant-garamond-v21-latin-regular.woff2') format('woff2');
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Cormorant Garamond';
  src: url('../fonts/cormorant-garamond-v21-latin-italic.woff2') format('woff2');
  font-weight: 400; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Cormorant Garamond';
  src: url('../fonts/cormorant-garamond-v21-latin-500.woff2') format('woff2');
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Cormorant Garamond';
  src: url('../fonts/cormorant-garamond-v21-latin-600.woff2') format('woff2');
  font-weight: 600; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Cormorant Garamond';
  src: url('../fonts/cormorant-garamond-v21-latin-700.woff2') format('woff2');
  font-weight: 700; font-style: normal; font-display: swap;
}

/* ---------- Design tokens ---------- */
:root {
  /* Palette — valeurs validées par Kaëla le 18/07/2026 */
  --bordeaux:      #3E1418;  /* Bordeaux profond — fonds, titres */
  --bourgogne:     #5E2129;  /* Bourgogne — accents, boutons hover */
  --ivoire:        #F3EEE6;  /* Ivoire naturel — fond principal */
  --ivoire-2:      #ECE5D9;  /* Ivoire ombré — cartes, alternances */
  --papier:        #FAF7F0;  /* Blanc papier — surfaces claires */
  --or:            #B08D57;  /* Or antique — filets, détails */
  --or-clair:      #C9AC7C;  /* Or clair — hover, étoiles */
  --or-texte:      #7B613A;  /* Or assombri — TEXTE sur fond clair uniquement.
                                #B08D57 ne donne que 2,68:1 sur l'ivoire, très en
                                dessous du minimum AA de 4,5:1. Même teinte (36°),
                                même saturation, luminosité baissée : 5,03:1 sur
                                l'ivoire, 4,64:1 sur l'ivoire ombré. Ne jamais
                                l'utiliser sur bordeaux (2,74:1) — là c'est
                                --or-clair qui s'applique. */
  --noir:          #111111;  /* Noir intense */
  --encre:         #2E2422;  /* Encre chaude — texte courant sur ivoire */
  --ivoire-sur-bx: #EFE8DB;  /* Texte ivoire sur bordeaux */

  /* Typographies */
  --ff-display: 'Fraunces', 'Times New Roman', serif;   /* logo + titres */
  --ff-ui:      'Jost', 'Helvetica Neue', sans-serif;   /* boutons + nav */
  --ff-texte:   'Cormorant Garamond', Georgia, serif;   /* texte courant */

  /* Fraunces : axes optiques. opsz haut = contraste display ;
     SOFT 0 / WONK 0 = tracé net et sobre, sans glyphes fantaisistes. */
  --fvs-display: 'SOFT' 0, 'WONK' 0, 'opsz' 144;
  --fvs-courant: 'SOFT' 0, 'WONK' 0, 'opsz' 24;

  /* Échelle typographique */
  --fs-hero:    clamp(2.5rem, 5.4vw, 4.4rem);
  --fs-h2:      clamp(1.9rem, 3.4vw, 2.8rem);
  --fs-h3:      clamp(1.3rem, 2vw, 1.65rem);
  --fs-body:    1.22rem;
  --fs-small:   1.05rem;
  --fs-eyebrow: 0.72rem;

  /* Mise en page */
  --maxw:      1180px;
  --gutter:    clamp(1.25rem, 4vw, 3rem);
  --s-section: clamp(4rem, 9vw, 7.5rem);

  /* Divers */
  --transition: 220ms cubic-bezier(.4, 0, .2, 1);
  --shadow-carte: 0 18px 40px -18px rgba(59, 15, 23, .28);
}
