/* ============================================================
   Webfonts auto-hébergées — Playfair Display (display) + Inter (sans)
   ============================================================

   Chargement : Maestra scanne ce dossier (pageTheme::getCSS_fonts) et injecte
   ce fichier en PREMIER <link> du <head>, avant la pile css/ du thème. Le CSS
   qui structure le premier paint arrive donc avant tout le reste → pas de FOUC.

   Pourquoi auto-hébergé plutôt qu'un @import fonts.googleapis.com :
     - zéro requête tierce (une origine de moins à résoudre, et rien qui parte
       chez Google depuis le navigateur du visiteur) ;
     - servi en Cache-Control: immutable 1 an par Nginx (location woff2).

   Fichiers : polices VARIABLES (un fichier couvre 400→900), subsets Google
   `latin` et `latin-ext`. Les unicode-range font que `latin-ext` n'est
   téléchargé que si un glyphe l'exige — le français et l'allemand tiennent
   entièrement dans `latin` (Œ/œ et ß inclus).

   ORDRE DES @font-face — NE PAS INVERSER : `latin-ext` d'abord, `latin`
   ENSUITE. Les deux subsets se chevauchent (Œ/œ = U+0152-0153 est dans les
   deux plages), et à family/style/weight identiques c'est la DERNIÈRE
   déclaration qui gagne. Avec `latin` en dernier, « Maître d'œuvre » tape le
   fichier latin ; dans l'autre sens il déclenchait le téléchargement du
   latin-ext (85 Ko) pour cette seule lettre. C'est l'ordre que sert Google.

   Pas de suffixe `-critical` dans les noms : ce suffixe déclencherait le
   preload auto de Maestra (versionning::autoFontPreloadBalise), qui forge un
   href versionné `?mtime`. L'URL nue de ce CSS ne matcherait pas → le
   navigateur téléchargerait chaque fichier DEUX fois.

   MISE À JOUR d'une police : ne jamais écraser un .woff2 en place (URL nue +
   immutable 1 an = les visiteurs garderaient l'ancien fichier). Déposer un
   nouveau nom (ex. `inter-latin-v2.woff2`) et le référencer ici.
   ============================================================ */

/* ============================================================
   Inter — texte courant (variable 400→900)
   ============================================================ */

@font-face {
	font-family: "Inter";
	font-style: normal;
	font-weight: 400 900;
	font-display: swap;
	src: url("inter-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 900;
	font-display: swap;
	src: url("inter-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;
}

/* ============================================================
   Playfair Display — titres & chiffres display (variable 400→900, + italique)
   ============================================================
   L'italique est un VRAI dessin (pas d'oblique synthétique) : le mot accentué
   du hero (.hero__title-accent) et le <em> du footer en dépendent.
   ============================================================ */

@font-face {
	font-family: "Playfair Display";
	font-style: normal;
	font-weight: 400 900;
	font-display: swap;
	src: url("playfair-display-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: "Playfair Display";
	font-style: normal;
	font-weight: 400 900;
	font-display: swap;
	src: url("playfair-display-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: "Playfair Display";
	font-style: italic;
	font-weight: 400 900;
	font-display: swap;
	src: url("playfair-display-italic-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: "Playfair Display";
	font-style: italic;
	font-weight: 400 900;
	font-display: swap;
	src: url("playfair-display-italic-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;
}
