/*
 * PetalKit — vitrine · polices AUTO-HEBERGEES.
 *
 * Geist Sans + Geist Mono (Vercel, SIL OFL 1.1), les memes woff2 que le
 * plugin embarque. Aucune requete tierce, aucun CDN, aucun Google Fonts — le
 * produit promet zero requete reseau, sa vitrine tient la meme promesse.
 *
 * ⚠ CE FICHIER A CHANGE DE FORME LE 02/09, ET C'EST UNE MESURE QUI L'A VOULU.
 * Les deux polices y vivaient en BASE64, comme dans le bundle du plugin :
 * 143 Ko de donnees dans une feuille de style BLOQUANTE, soit 93 % des octets
 * a telecharger avant le premier pixel. Ce qui est juste pour un plugin (un
 * seul fichier, pas de reseau du tout) est faux pour une page web : le
 * navigateur doit parser 185 Ko de CSS avant de peindre quoi que ce soit.
 *
 * Les fichiers sont donc sortis dans `assets/geist-*.woff2`, la feuille ne
 * pese plus que ses declarations, et index.html les precharge. Le compte est
 * le meme (deux fichiers, servis par le meme hote, zero tiers) — c'est
 * l'ORDRE de chargement qui change.
 *
 * Ce sont des polices VARIABLES : un seul fichier par famille couvre 100-900,
 * donc les graisses 400 (prose) et 500 (--w-title) sortent du meme woff2.
 *
 * `font-display: swap` : la page se lit tout de suite dans la pile de repli,
 * puis se recompose. Les piles de repli REELLES vivent dans tokens.css
 * (--font-sans / --font-mono) : system-ui d'Apple et de Windows d'un cote,
 * SF Mono / Menlo / Consolas de l'autre. Si le woff2 ne charge pas, la page
 * reste composee.
 */

@font-face {
  font-family: "Geist Sans";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("assets/geist-sans.woff2") format("woff2");
}

@font-face {
  font-family: "Geist Mono";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("assets/geist-mono.woff2") format("woff2");
}
