/* ════════════════════════════════════════════════════════════════
   Le Code Pour Tous — Polices auto-hébergées (conformité RGPD)
   Aucune requête vers Google/Cloudflare : les .woff2 sont servis
   depuis /assets/fonts/. Voir la note d'installation.
   ════════════════════════════════════════════════════════════════ */

/* ── Sora (titres) ─────────────────────────────────────────────── */
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/sora-400.woff2') format('woff2');
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/assets/fonts/sora-700.woff2') format('woff2');
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url('/assets/fonts/sora-800.woff2') format('woff2');
}

/* ── DM Sans (corps de texte) ──────────────────────────────────── */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/dmsans-400.woff2') format('woff2');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/assets/fonts/dmsans-500.woff2') format('woff2');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/assets/fonts/dmsans-600.woff2') format('woff2');
}

/* ── OpenDyslexic (mode DYS) ───────────────────────────────────── */
@font-face {
  font-family: 'OpenDyslexic';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/opendyslexic-400.woff2') format('woff2');
}
@font-face {
  font-family: 'OpenDyslexic';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/assets/fonts/opendyslexic-700.woff2') format('woff2');
}
