/* Fondations Triga, aplaties depuis le projet Claude Design
   « Design System Triga » (5b73974f-2ecf-448d-8853-c9fb6fc8469f).
   Ordre d'origine de styles.css : fonts, colors, typography, spacing, effects.

   Les @import de Google Fonts ont été retirés : le site ne doit adresser
   aucune requête à un tiers. Les trois familles sont auto-hébergées dans
   assets/fonts/ et déclarées en @font-face ci-dessous. */

/* ---- Polices auto-hébergées ----
   Les trois familles du système Triga, servies depuis triga.pro et non
   depuis Google Fonts. Charger une police chez Google transmettrait
   l'adresse IP du visiteur à un tiers, ce que la page de confidentialité
   affirme ne pas faire. Sous-ensembles latin et latin-ext seulement :
   le français y tient, « œ » compris. */
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/plus-jakarta-sans-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/plus-jakarta-sans-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/plus-jakarta-sans-600-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/plus-jakarta-sans-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:700;font-display:swap;src:url(assets/fonts/plus-jakarta-sans-700-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:700;font-display:swap;src:url(assets/fonts/plus-jakarta-sans-700-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:800;font-display:swap;src:url(assets/fonts/plus-jakarta-sans-800-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:800;font-display:swap;src:url(assets/fonts/plus-jakarta-sans-800-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/inter-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/inter-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/inter-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/inter-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/inter-600-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/inter-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url(assets/fonts/inter-700-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url(assets/fonts/inter-700-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/jetbrains-mono-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/jetbrains-mono-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/jetbrains-mono-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/jetbrains-mono-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

/* ---- tokens/colors.css ---- */
:root {
  /* Base : famille violette unique */
  --paper: #FAFAFC;        /* fond de page, blanc chaud à peine lavande */
  --veil: #EEE9FB;         /* surface lavande : cartes, blocs éditoriaux */
  --veil-deep: #E3DCF6;    /* lavande appuyée : états hover de surfaces */
  --ink: #1A1A2E;          /* texte principal */
  --ink-soft: #2A2A3E;     /* texte secondaire fort */
  --indigo: #4727B5;       /* violet de marque : actions, liens, wordmark */
  --indigo-hover: #3A1F9A;
  --royal: #2A1574;        /* bloc signature profond, un par page */
  --halo: #8B72F0;         /* accent secondaire : focus, highlights sur royal */
  --whisper: #6B6680;      /* légendes, métadonnées */
  --hairline: #E5E1EF;     /* bordures, filets */
  --hairline-strong: #D6CFE8;
  --error: #B54727;
  --success: #1F7A4C;
  /* Alias sémantiques */
  --surface: var(--paper);
  --surface-raised: var(--veil);
  --surface-signature: var(--royal);
  --text-body: var(--ink);
  --text-muted: var(--whisper);
  --text-on-signature: #FFFFFF;
  --accent: var(--indigo);
  --border-default: var(--hairline);
  --border-strong: var(--hairline-strong);
  --focus: var(--halo);
}

/* ---- tokens/typography.css ---- */
:root {
  --font-display: "Plus Jakarta Sans", system-ui, sans-serif; /* titres, voix de marque */
  --font-body: "Inter", system-ui, sans-serif;                /* texte courant, contrôles */
  --font-mono: "JetBrains Mono", ui-monospace, monospace;     /* légendes techniques, valeurs */

  --text-display-xl: 800 112px/1.02 var(--font-display); --ls-display: -0.025em;
  --text-display-lg: 800 84px/1.02 var(--font-display);
  --text-display-md: 800 56px/1.02 var(--font-display);
  --text-headline-lg: 700 44px/1.12 var(--font-display); --ls-headline: -0.015em;
  --text-headline-md: 700 32px/1.12 var(--font-display);
  --text-headline-sm: 700 24px/1.12 var(--font-display);
  --text-title: 600 20px/1.3 var(--font-display);
  --text-body-lg: 400 18px/1.6 var(--font-body);
  --text-body-md: 400 16px/1.6 var(--font-body);
  --text-body-sm: 400 14px/1.55 var(--font-body);
  --text-label-sm: 500 12px/1.4 var(--font-mono); --ls-label: 0.12em; /* toujours uppercase */
  --text-mono-md: 400 14px/1.5 var(--font-mono);
}

/* ---- tokens/spacing.css ---- */
:root {
  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 16px;
  --space-lg: 24px;
  --space-xl: 40px;
  --space-2xl: 72px;
  --space-3xl: 128px;
  --gutter: 24px;
  --container: 1200px;   /* défaut */
  --container-wide: 1320px;
  --container-prose: 800px;
}

/* ---- tokens/effects.css ---- */
:root {
  --radius-xs: 4px;    /* checkbox */
  --radius-sm: 8px;    /* chips, tooltips */
  --radius-md: 12px;   /* inputs */
  --radius-lg: 14px;   /* cartes, blocs photo */
  --radius-xl: 20px;   /* panneaux */
  --radius-2xl: 28px;
  --radius-3xl: 36px;  /* bloc signature royal uniquement */
  --radius-full: 999px; /* boutons, tags, pilules */

  --shadow-card: 0 24px 48px -28px rgba(71,39,181,0.22), 0 2px 6px -2px rgba(26,26,46,0.06);
  --shadow-lift: 0 36px 60px -28px rgba(71,39,181,0.32), 0 4px 12px -4px rgba(26,26,46,0.08);
  --focus-ring: 0 0 0 2px #FAFAFC, 0 0 0 4px #8B72F0;

  --ease: cubic-bezier(0.2, 0.7, 0.3, 1);
  --dur-state: 120ms;    /* hover, focus */
  --dur-surface: 200ms;  /* fill de bouton, bascule d'onglet */
  --dur-layout: 360ms;
}
