/*
 * Self-hosted webfonts — same origin, no third party.
 *
 * These previously loaded from fonts.googleapis.com / fonts.gstatic.com, which
 * meant every visitor's IP reached Google on every page load. That was the only
 * external request the platform made, and it undercut the privacy position the
 * marketing site and the DPIA both take. Serving them ourselves removes it
 * entirely: a visitor's browser now talks to exactly one host — the tenant's.
 *
 * Files come from the @fontsource/* packages (devDependencies), copied into
 * public/fonts/ so they ship as plain static assets. Latin subset only; only
 * the weights actually used anywhere in the codebase are included, so adding a
 * new weight to a stylesheet means adding the file here too.
 *
 *   Cormorant Garamond  300/400/500          tenant pages, share, category, policies
 *   DM Sans             300/400/500/600 + 300/400 italic
 *   Space Grotesk       400/500/700          hypersafe.link marketing site
 *   JetBrains Mono      400/500
 *
 * `font-display: swap` matches the behaviour of the old `&display=swap` query:
 * text paints immediately in the fallback and swaps when the file lands.
 */

/* ─── Cormorant Garamond ──────────────────────────────────────────── */

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('/fonts/cormorant-garamond-300-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/cormorant-garamond-400-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/cormorant-garamond-500-normal.woff2') format('woff2');
}

/* ─── DM Sans ─────────────────────────────────────────────────────── */

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('/fonts/dm-sans-300-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/dm-sans-400-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/dm-sans-500-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/fonts/dm-sans-600-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'DM Sans';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url('/fonts/dm-sans-300-italic.woff2') format('woff2');
}

@font-face {
  font-family: 'DM Sans';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/dm-sans-400-italic.woff2') format('woff2');
}

/* ─── Space Grotesk ───────────────────────────────────────────────── */

@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/space-grotesk-400-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/space-grotesk-500-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/fonts/space-grotesk-700-normal.woff2') format('woff2');
}

/* ─── JetBrains Mono ──────────────────────────────────────────────── */

@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/jetbrains-mono-400-normal.woff2') format('woff2');
}

@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/fonts/jetbrains-mono-500-normal.woff2') format('woff2');
}
