/* Self-hosted fonts — replaces Google Fonts CDN
   Files served from /fonts/ on Cloudflare Pages
   No user IPs sent to Google — GDPR compliant */

/* ── DM Sans ── */
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 300; font-display: block;
  src: url('/fonts/dm-sans-latin-300-normal.woff2') format('woff2'); }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 400; font-display: block;
  src: url('/fonts/dm-sans-latin-400-normal.woff2') format('woff2'); }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 500; font-display: block;
  src: url('/fonts/dm-sans-latin-500-normal.woff2') format('woff2'); }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 600; font-display: block;
  src: url('/fonts/dm-sans-latin-600-normal.woff2') format('woff2'); }
@font-face { font-family: 'DM Sans'; font-style: italic; font-weight: 400; font-display: block;
  src: url('/fonts/dm-sans-latin-400-italic.woff2') format('woff2'); }

/* ── Space Grotesk ── */
@font-face { font-family: 'Space Grotesk'; font-style: normal; font-weight: 300; font-display: block;
  src: url('/fonts/space-grotesk-latin-300-normal.woff2') format('woff2'); }
@font-face { font-family: 'Space Grotesk'; font-style: normal; font-weight: 400; font-display: block;
  src: url('/fonts/space-grotesk-latin-400-normal.woff2') format('woff2'); }
@font-face { font-family: 'Space Grotesk'; font-style: normal; font-weight: 500; font-display: block;
  src: url('/fonts/space-grotesk-latin-500-normal.woff2') format('woff2'); }
@font-face { font-family: 'Space Grotesk'; font-style: normal; font-weight: 600; font-display: block;
  src: url('/fonts/space-grotesk-latin-600-normal.woff2') format('woff2'); }
@font-face { font-family: 'Space Grotesk'; font-style: normal; font-weight: 700; font-display: block;
  src: url('/fonts/space-grotesk-latin-700-normal.woff2') format('woff2'); }

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

/* ── Bebas Neue ── */
@font-face { font-family: 'Bebas Neue'; font-style: normal; font-weight: 400; font-display: block;
  src: url('/fonts/bebas-neue-latin-400-normal.woff2') format('woff2'); }

/* ── Playfair Display ── */
@font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 400; font-display: block;
  src: url('/fonts/playfair-display-latin-400-normal.woff2') format('woff2'); }
@font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 600; font-display: block;
  src: url('/fonts/playfair-display-latin-600-normal.woff2') format('woff2'); }
@font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 700; font-display: block;
  src: url('/fonts/playfair-display-latin-700-normal.woff2') format('woff2'); }
@font-face { font-family: 'Playfair Display'; font-style: normal; font-weight: 900; font-display: block;
  src: url('/fonts/playfair-display-latin-900-normal.woff2') format('woff2'); }
@font-face { font-family: 'Playfair Display'; font-style: italic; font-weight: 400; font-display: block;
  src: url('/fonts/playfair-display-latin-400-italic.woff2') format('woff2'); }
@font-face { font-family: 'Playfair Display'; font-style: italic; font-weight: 700; font-display: block;
  src: url('/fonts/playfair-display-latin-700-italic.woff2') format('woff2'); }

/* ── Newsreader ── */
@font-face { font-family: 'Newsreader'; font-style: normal; font-weight: 400; font-display: block;
  src: url('/fonts/newsreader-latin-400-normal.woff2') format('woff2'); }
@font-face { font-family: 'Newsreader'; font-style: normal; font-weight: 700; font-display: block;
  src: url('/fonts/newsreader-latin-700-normal.woff2') format('woff2'); }
@font-face { font-family: 'Newsreader'; font-style: italic; font-weight: 400; font-display: block;
  src: url('/fonts/newsreader-latin-400-italic.woff2') format('woff2'); }
@font-face { font-family: 'Newsreader'; font-style: italic; font-weight: 700; font-display: block;
  src: url('/fonts/newsreader-latin-700-italic.woff2') format('woff2'); }

/* ── Space Mono ── */
@font-face { font-family: 'Space Mono'; font-style: normal; font-weight: 400; font-display: block;
  src: url('/fonts/space-mono-latin-400-normal.woff2') format('woff2'); }
@font-face { font-family: 'Space Mono'; font-style: normal; font-weight: 700; font-display: block;
  src: url('/fonts/space-mono-latin-700-normal.woff2') format('woff2'); }

/* ── Archivo ── */
@font-face { font-family: 'Archivo'; font-style: normal; font-weight: 400; font-display: block;
  src: url('/fonts/archivo-latin-400-normal.woff2') format('woff2'); }
@font-face { font-family: 'Archivo'; font-style: normal; font-weight: 700; font-display: block;
  src: url('/fonts/archivo-latin-700-normal.woff2') format('woff2'); }
@font-face { font-family: 'Archivo'; font-style: normal; font-weight: 900; font-display: block;
  src: url('/fonts/archivo-latin-900-normal.woff2') format('woff2'); }
