/* Solution Contacts — tokens (direction « Plateforme », choisie le 24/09/2026).
   Aucune couleur, police, rayon ou espacement en dur ailleurs que dans ce fichier.
   Polices : League Spartan (The League of Moveable Type, SIL OFL 1.1) ·
             Public Sans (USWDS, SIL OFL 1.1) — voir CREDITS. */

@font-face {
  font-family: "League Spartan";
  src: url("../fonts/LeagueSpartan-var.woff2") format("woff2");
  font-weight: 100 900; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "Public Sans";
  src: url("../fonts/PublicSans-Regular.woff2") format("woff2");
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "Public Sans";
  src: url("../fonts/PublicSans-SemiBold.woff2") format("woff2");
  font-weight: 600; font-style: normal; font-display: swap;
}
/* Replis aux métriques ajustées */
@font-face {
  font-family: "League Spartan repli";
  src: local("Arial Black"), local("Arial Bold"), local("Arial");
  size-adjust: 96%; ascent-override: 92%; descent-override: 24%;
}
@font-face {
  font-family: "Public Sans repli";
  src: local("Arial"), local("Helvetica");
  size-adjust: 103%; ascent-override: 92%; descent-override: 22%;
}

:root {
  /* Couleurs — blanc + nuit portent l'essentiel, soleil ≤ 5 % */
  --blanc: #FFFFFF;
  --brume: #F3F5F9;         /* fond des bandes secondaires */
  --nuit: #151E5F;
  --encre: #10153A;
  --ardoise: #545B7A;
  --filet: #DDE1EA;
  --soleil: #FE7A00;
  --soleil-texte: #B34F00;  /* orange lisible sur blanc (AA) */
  --soleil-fond: #FFF0E0;
  --vert: #1F7A45;
  --vert-fond: #E6F3EB;
  --gris-fond: #EEF0F5;
  --erreur: #B3261E;
  --sur-nuit: var(--blanc);
  --sur-nuit-2: color-mix(in srgb, var(--blanc) 80%, var(--nuit));

  /* Typographie */
  --f-titre: "League Spartan", "League Spartan repli", system-ui, sans-serif;
  --f-texte: "Public Sans", "Public Sans repli", system-ui, sans-serif;
  --t-h1: clamp(2.5rem, 1.4rem + 4vw, 4.4rem);   --i-h1: 1.02; --l-h1: -0.03em;
  --t-h2: clamp(1.9rem, 1.3rem + 2vw, 2.8rem);   --i-h2: 1.08; --l-h2: -0.02em;
  --t-h3: 1.2rem;                                 --i-h3: 1.2;
  --t-chapo: 1.15rem;
  --t-corps: 1rem;                                --i-corps: 1.6;
  --t-petit: .9rem;
  --t-mini: .8rem;
  --g-titre: 700;

  /* Espaces */
  --g: clamp(1rem, 4vw, 4rem);
  --max: 76rem;
  --mesure: 34rem;
  --s-1: .4rem; --s-2: .8rem; --s-3: 1.3rem; --s-4: 2rem; --s-5: 3rem; --s-6: 4.5rem; --s-7: 6rem;

  /* Rayons — hiérarchie : pastille > carte > écran */
  --r-champ: 6px;
  --r-carte: 10px;
  --r-ecran: 16px;
  --r-pastille: 999px;

  /* Mouvement */
  --duree: .2s;
}
