/*
 * Self-hosted fonts (latin subset).
 *
 * Served from the theme rather than a third-party CDN so no visitor IP is
 * disclosed to Google — the correct default for a UK entity under GDPR.
 * Only the weights and styles the design actually uses are bundled.
 *
 * Fraunces & IBM Plex Mono: SIL Open Font License 1.1.
 * Hanken Grotesk: SIL Open Font License 1.1.
 */

/* ---- Fraunces (display serif) ---- */
@font-face{
  font-family: "Fraunces";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/fonts/fraunces-latin-400-normal.woff2") format("woff2");
}
@font-face{
  font-family: "Fraunces";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/fonts/fraunces-latin-600-normal.woff2") format("woff2");
}
@font-face{
  font-family: "Fraunces";
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url("assets/fonts/fraunces-latin-500-italic.woff2") format("woff2");
}

/* ---- Hanken Grotesk (body / UI) ---- */
@font-face{
  font-family: "Hanken Grotesk";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/fonts/hanken-grotesk-latin-400-normal.woff2") format("woff2");
}
@font-face{
  font-family: "Hanken Grotesk";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/fonts/hanken-grotesk-latin-500-normal.woff2") format("woff2");
}
@font-face{
  font-family: "Hanken Grotesk";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/fonts/hanken-grotesk-latin-600-normal.woff2") format("woff2");
}

/* ---- IBM Plex Mono (labels / counts) ---- */
@font-face{
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/fonts/ibm-plex-mono-latin-400-normal.woff2") format("woff2");
}
@font-face{
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/fonts/ibm-plex-mono-latin-500-normal.woff2") format("woff2");
}
