/* Self-hosted IBM Plex fonts (latin subset only, matching the site's actual
   content). Pulled 2026-09-29 from Google Fonts' own CDN (fonts.gstatic.com)
   and served from this origin instead, to remove the extra DNS/TLS/request
   round-trip to fonts.googleapis.com + fonts.gstatic.com that a <link
   rel="stylesheet"> to Google Fonts costs on every first visit -- a real,
   measurable LCP/render-blocking win, not a cosmetic change. IBM Plex Sans
   ships as one variable-font file covering weights 400/500/600 (confirmed by
   downloading each weight from Google's own CSS2 API and finding identical
   byte-for-byte files) -- Mono and Serif are static per-weight files. */

@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("/fonts/IBMPlexSans-var.woff2") format("woff2");
}
@font-face {
  font-family: "IBM Plex Serif";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/IBMPlexSerif-400.woff2") format("woff2");
}
@font-face {
  font-family: "IBM Plex Serif";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/IBMPlexSerif-400italic.woff2") format("woff2");
}
@font-face {
  font-family: "IBM Plex Serif";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/fonts/IBMPlexSerif-600.woff2") format("woff2");
}
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/IBMPlexMono-400.woff2") format("woff2");
}
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/fonts/IBMPlexMono-500.woff2") format("woff2");
}
