/*
  Polices auto-hébergées — subset latin uniquement (couvre FR + EN)
  Fichiers woff2 à générer via : ./download.sh (racine du projet)

  Playfair Display v40  — normal 400/700/900  + italic 400/700
  Source Sans 3 v19     — normal 300/400/500/600
*/

/* ── Playfair Display — normal ───────────────────────────── */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url('./playfair-display-normal-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 — italic ───────────────────────────── */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400 700;
  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;
}

/* ── Source Sans 3 — normal ──────────────────────────────── */
@font-face {
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url('./source-sans-3-normal-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;
}

/* ── Fallback métrique — limite le CLS au swap de Playfair ── */
@font-face {
  font-family: 'Playfair Display Fallback';
  src: local('Georgia');
  size-adjust: 112%;
  ascent-override: 96%;
  descent-override: 24%;
  line-gap-override: 0%;
}

/* ── Fallback métrique — limite le CLS au swap de Source Sans 3 (audit v8 M7) ──
   Calculé depuis les métriques réelles du woff2 (hhea/OS2) vs Arial. */
@font-face {
  font-family: 'Source Sans 3 Fallback';
  src: local('Arial'), local('Helvetica Neue');
  size-adjust: 111.69%;
  ascent-override: 91.68%;
  descent-override: 35.81%;
  line-gap-override: 0%;
}
