/* v3 brand fonts — GENERATED by scripts/build_fonts_v3.py.
   Each family ships with a metric-matched fallback (size-adjust +
   ascent/descent/line-gap-override) so a late swap causes zero layout
   shift. Do not edit by hand; re-run the script.

   LT Superior Serif — SIL OFL 1.1, (c) 2024 LyonsType. Shipped unsubset;
   see fonts/LT-Superior-Serif-OFL.txt. Geist — SIL OFL 1.1, Vercel. */

/* ---------------- real faces ---------------- */

@font-face {
  font-family: 'LT Superior Serif';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/lt-superior-serif-400.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

@font-face {
  font-family: 'Geist';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('fonts/geist-var.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/ibm-plex-mono-400.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('fonts/ibm-plex-mono-500.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

@font-face {
  font-family: 'Michroma';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/michroma-400.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

/* ------- metric-matched fallback faces ------- */

/* LT Superior Serif Fallback: local('Times New Roman') reshaped to LT Superior Serif's metrics */
@font-face {
  font-family: 'LT Superior Serif Fallback';
  font-style: normal;
  src: local('Times New Roman');
  size-adjust: 116.41%;
  ascent-override: 68.72%;
  descent-override: 17.18%;
  line-gap-override: 0.00%;
}

/* Geist Fallback: local('Arial') reshaped to Geist's metrics */
@font-face {
  font-family: 'Geist Fallback';
  font-style: normal;
  src: local('Arial');
  size-adjust: 105.50%;
  ascent-override: 95.26%;
  descent-override: 27.96%;
  line-gap-override: 0.00%;
}

/* IBM Plex Mono Fallback: local('Courier New') reshaped to IBM Plex Mono's metrics */
@font-face {
  font-family: 'IBM Plex Mono Fallback';
  font-style: normal;
  src: local('Courier New');
  size-adjust: 99.98%;
  ascent-override: 102.52%;
  descent-override: 27.50%;
  line-gap-override: 0.00%;
}

/* Michroma Fallback: local('Arial') reshaped to Michroma's metrics */
@font-face {
  font-family: 'Michroma Fallback';
  font-style: normal;
  src: local('Arial');
  size-adjust: 141.16%;
  ascent-override: 81.91%;
  descent-override: 18.82%;
  line-gap-override: 0.00%;
}
