/* ==========================================================================
   Feuille racine du site public.

   Elle ne porte QUE des `@import` et des `@font-face` : une règle écrite dans
   son corps l'emporterait sur tout ce que les feuilles importées déclarent,
   requêtes média comprises, et rendrait le responsive silencieusement
   inopérant.

   Les `@import` viennent EN PREMIER, avant les `@font-face`. Ce n'est pas une
   préférence : la spécification impose qu'une règle `@import` précède toute
   autre règle hors `@charset` et `@layer`. Placée après un `@font-face`, elle
   est ignorée par le navigateur, sans erreur visible - la page s'affiche
   simplement sans aucun style.

   L'ordre des imports EST la cascade : jetons d'abord (rien ne peut s'y
   référer avant), socle, mise en page, composants, catalogue, mouvement,
   utilitaires, et le responsive en dernier, comme sa propre en-tête le dit.

   **La chaîne d'@import reste, et c'est mesuré.** Elle coûte un aller-retour :
   le navigateur charge cette feuille, y découvre huit imports, et les demande
   ensuite. Les deux façons de l'éviter ont été essayées sur l'image de
   production, deux fois chacune :

   - précharger les huit feuilles : performance 92 -> 90, LCP 3,2 -> 3,5 s ;
   - les déclarer en huit `<link>` dans le gabarit, les `@font-face` sortis dans
     une feuille à part : FCP 1,60 -> 1,52 s, mais LCP 2,60 -> 2,76 s et
     performance 96 -> 95.

   Le mécanisme est le même dans les deux cas : les feuilles disputent la bande
   passante à l'image d'ouverture, qui est le LCP de la page. Quatre-vingt-dix
   millisecondes gagnées sur le premier pixel peint contre cent-quatre-vingts
   perdues sur l'image que le visiteur regarde : l'échange n'est pas bon sur un
   site dont le contenu EST une photographie.
   ========================================================================== */

@import url("_jetons-e7IGeqh.css");
@import url("_socle-xI6q5Nr.css");
@import url("_mise-en-page-uCsy9CU.css");
@import url("_composants-FYh4Tll.css");
@import url("_catalogue-EcPqBSQ.css");
@import url("_maquette-xr9bCr_.css");
@import url("_mouvement-7iKe1tN.css");
@import url("_utilitaires-AW7wFxX.css");
@import url("_responsive-0wA6F1V.css");

/* Outfit, la police de la maquette, servie par le site : aucun appel à Google
   Fonts, qui transmettrait l'adresse IP de chaque visiteur à un tiers. Une
   seule fonte variable de 100 à 400, découpée en deux sous-ensembles - le
   latin de base suffit au français, l'étendu ne se charge que si une page
   l'emploie (un nom polonais, un « ł »). */
@font-face {
  font-family: "Outfit";
  src: url("../fonts/sarahm-outfit-latin-3BR0lLl.woff2") format("woff2");
  font-weight: 100 400;
  font-style: normal;
  font-display: swap;
  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: "Outfit";
  src: url("../fonts/sarahm-outfit-latin-ext-6bPR0nO.woff2") format("woff2");
  font-weight: 100 400;
  font-style: normal;
  font-display: swap;
  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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* Le repli recalé sur les métriques d'Outfit : sans lui, le texte saute au
   moment où la fonte arrive, et c'est un décalage compté dans le CLS. */
@font-face {
  font-family: "Outfit repli";
  src: local("Arial");
  size-adjust: 100%;
  ascent-override: 100%;
  descent-override: 26%;
  line-gap-override: 0%;
}
