/* fonts.css — self-hosted fonts (SIL OFL). Latin subset, woff2 only.
   Includes metric-matched fallback faces so the swap from fallback to web font does not shift layout (CLS).
   Files live in assets/fonts/. Do NOT add ?ver to these URLs: the <link rel="preload"> in
   inc/enqueue.php must match them exactly so the browser reuses the preloaded file. */
@font-face {
	font-family: "Geist";
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url("../fonts/geist-variable.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: "Instrument Serif";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("../fonts/instrument-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: "Instrument Serif";
	font-style: italic;
	font-weight: 400;
	font-display: swap;
	src: url("../fonts/instrument-serif-400-italic.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;
}

/* ---------- Fallback faces (metric overrides) ----------
   Each reshapes a locally installed font to match the web font's width and vertical metrics, so text
   occupies the same space before and after the swap. Numbers were computed from the shipped woff2 files
   against Times New Roman / Arial using Capsize's metrics:
     size-adjust = (webfont avg glyph width / fallback avg glyph width)
     ascent/descent/line-gap overrides = webfont metric / (units-per-em * size-adjust)
   Recompute these if you replace a font file. Liberation Serif/Sans are the metric-compatible Linux equivalents. */
@font-face {
	font-family: "Instrument Serif Fallback";
	font-style: normal;
	font-weight: 400;
	src: local("Times New Roman"), local("TimesNewRomanPSMT"), local("Liberation Serif");
	size-adjust: 83.94%;
	ascent-override: 117.94%;
	descent-override: 36.93%;
	line-gap-override: 0%;
}
@font-face {
	font-family: "Instrument Serif Fallback";
	font-style: italic;
	font-weight: 400;
	src: local("Times New Roman Italic"), local("TimesNewRomanPS-ItalicMT"), local("Liberation Serif Italic");
	size-adjust: 88.37%; /* approximate: computed against Times New Roman Regular */
	ascent-override: 112.03%;
	descent-override: 35.08%;
	line-gap-override: 0%;
}
@font-face {
	font-family: "Geist Fallback";
	font-style: normal;
	font-weight: 400;
	src: local("Arial"), local("ArialMT"), local("Liberation Sans");
	size-adjust: 104.76%;
	ascent-override: 95.94%;
	descent-override: 28.16%;
	line-gap-override: 0%;
}
@font-face {
	font-family: "Geist Fallback";
	font-style: normal;
	font-weight: 700;
	src: local("Arial Bold"), local("Arial-BoldMT"), local("Liberation Sans Bold");
	size-adjust: 104.76%; /* same numbers as regular: approximate for bold */
	ascent-override: 95.94%;
	descent-override: 28.16%;
	line-gap-override: 0%;
}
