/* ═══════════════════════════════════════════════════════════════════════
   Self-hosted Google Fonts — no CDN dependency
   Replaces: fonts.googleapis.com imports in tuning-theme.css,
   affiliate-guide.html, and docs/03-sora-video-prompts.html
   ═══════════════════════════════════════════════════════════════════════ */

/* ── IBM Plex Sans ────────────────────────────────────────────────────── */
@font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 300; font-display: swap; src: url('ibm-plex-sans-300.ttf') format('truetype'); }
@font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url('ibm-plex-sans-400.ttf') format('truetype'); }
@font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url('ibm-plex-sans-500.ttf') format('truetype'); }
@font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 600; font-display: swap; src: url('ibm-plex-sans-600.ttf') format('truetype'); }
@font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 700; font-display: swap; src: url('ibm-plex-sans-700.ttf') format('truetype'); }

/* ── JetBrains Mono ───────────────────────────────────────────────────── */
@font-face { font-family: 'JetBrains Mono'; font-style: normal; font-weight: 400; font-display: swap; src: url('jetbrains-mono-400.ttf') format('truetype'); }
@font-face { font-family: 'JetBrains Mono'; font-style: normal; font-weight: 500; font-display: swap; src: url('jetbrains-mono-500.ttf') format('truetype'); }
@font-face { font-family: 'JetBrains Mono'; font-style: normal; font-weight: 600; font-display: swap; src: url('jetbrains-mono-600.ttf') format('truetype'); }
@font-face { font-family: 'JetBrains Mono'; font-style: normal; font-weight: 700; font-display: swap; src: url('jetbrains-mono-700.ttf') format('truetype'); }

/* ── Syne ─────────────────────────────────────────────────────────────── */
@font-face { font-family: 'Syne'; font-style: normal; font-weight: 400; font-display: swap; src: url('syne-400.ttf') format('truetype'); }
@font-face { font-family: 'Syne'; font-style: normal; font-weight: 600; font-display: swap; src: url('syne-600.ttf') format('truetype'); }
@font-face { font-family: 'Syne'; font-style: normal; font-weight: 700; font-display: swap; src: url('syne-700.ttf') format('truetype'); }
@font-face { font-family: 'Syne'; font-style: normal; font-weight: 800; font-display: swap; src: url('syne-800.ttf') format('truetype'); }

/* ── DM Mono ──────────────────────────────────────────────────────────── */
@font-face { font-family: 'DM Mono'; font-style: normal; font-weight: 300; font-display: swap; src: url('dm-mono-300.ttf') format('truetype'); }
@font-face { font-family: 'DM Mono'; font-style: normal; font-weight: 400; font-display: swap; src: url('dm-mono-400.ttf') format('truetype'); }
@font-face { font-family: 'DM Mono'; font-style: normal; font-weight: 500; font-display: swap; src: url('dm-mono-500.ttf') format('truetype'); }

/* ── DM Sans ──────────────────────────────────────────────────────────── */
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 300; font-display: swap; src: url('dm-sans-300.ttf') format('truetype'); }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url('dm-sans-400.ttf') format('truetype'); }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url('dm-sans-500.ttf') format('truetype'); }
