/* =========================================================================
   NOVA · Jetons de design
   C'est LE fichier à modifier pour changer l'identité visuelle :
   couleurs, polices, tailles, rayons, courbes de mouvement.
   ========================================================================= */

/* Polices hébergées localement : aucune dépendance à Internet */
@font-face { font-family: "Poppins"; font-weight: 600; font-style: normal; font-display: swap; src: url("../assets/fonts/poppins-latin-600-normal.woff2") format("woff2"); }
@font-face { font-family: "Poppins"; font-weight: 700; font-style: normal; font-display: swap; src: url("../assets/fonts/poppins-latin-700-normal.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-weight: 400; font-style: normal; font-display: swap; src: url("../assets/fonts/inter-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-weight: 500; font-style: normal; font-display: swap; src: url("../assets/fonts/inter-latin-500-normal.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-weight: 600; font-style: normal; font-display: swap; src: url("../assets/fonts/inter-latin-600-normal.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Mono"; font-weight: 400; font-style: normal; font-display: swap; src: url("../assets/fonts/ibm-plex-mono-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Mono"; font-weight: 500; font-style: normal; font-display: swap; src: url("../assets/fonts/ibm-plex-mono-latin-500-normal.woff2") format("woff2"); }

:root {
  color-scheme: dark;

  /* Couleurs */
  --bg: #050813;
  --bg-2: #0a1026;
  /* Surfaces semi-opaques : même rendu « verre » sans flou en temps réel (bien plus rapide) */
  --surface: rgb(13 20 44 / .8);
  --surface-strong: rgb(9 14 34 / .92);
  --text: #eef2ff;
  --muted: #a3aecb;
  --primary: #3157d5;
  --primary-bright: #5578ff;
  --accent: #55c7ff;
  --success: #2fbf86;
  --error: #ff7a8c;
  --line: rgb(150 175 255 / .16);
  --line-strong: rgb(150 190 255 / .34);

  /* Typographie */
  --font-display: "Poppins", "Segoe UI", Arial, sans-serif;
  --font-body: "Inter", "Segoe UI", Arial, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;

  --fs-hero: clamp(3rem, 9vw, 8.5rem);
  --fs-h2: clamp(2.2rem, 5vw, 4rem);
  --fs-h3: clamp(1.35rem, 2.4vw, 1.8rem);
  --fs-lead: clamp(1.1rem, 1.8vw, 1.35rem);
  --fs-small: .9rem;
  --fs-label: .78rem;

  /* Espacements et formes */
  --container: 1200px;
  --gutter: max(1rem, env(safe-area-inset-left, 0px));
  --section-space: clamp(6rem, 14vw, 11rem);
  --radius-s: .75rem;
  --radius-m: 1.25rem;
  --radius-l: 1.75rem;
  --radius-pill: 999px;

  /* Mouvement */
  --ease-out: cubic-bezier(0.23, 1, 0.32, 1);
  --ease-in-out: cubic-bezier(0.77, 0, 0.175, 1);
  --dur-fast: 160ms;
  --dur-base: 250ms;
  --dur-slow: 500ms;
}
