/**
 * Self-hosted typefaces.
 *
 * Both families ship as variable WOFF2 covering the whole weight range the
 * site uses, so there are two files rather than seven. They are served from
 * this origin and preloaded in wp_head, which removes the third-party DNS,
 * TLS and stylesheet hop that used to run before the font bytes were even
 * requested.
 *
 * font-display: optional, not swap, and that is the whole fix for reflow.
 *
 * swap guarantees a swap: whenever the face is not ready at first paint the
 * text paints in the fallback and then re-lays out when it arrives. Metric
 * overrides cannot prevent that. They equalise average advance width, but
 * line breaking is decided per word, and Helvetica does not break where
 * Manrope breaks even when both set to the same total width -- which is why
 * matching the widths to 0.02% still left 17 blocks changing line count.
 *
 * optional removes the swap entirely. The browser takes a ~100ms block
 * period; if the face is ready it is used for the whole page, and if it is
 * not, the fallback is used for the whole page and is never replaced. Either
 * way nothing re-lays out after first paint. Text is never hidden beyond that
 * block period and first paint is not delayed.
 *
 * The cost is that on a cold cache over a slow link a visitor can get the
 * fallback for that page view. Preloading two same-origin files of 24KB and
 * 61KB makes that rare, and the per-weight metric overrides in tokens.css
 * keep that case dimensionally close so it does not shift the layout.
 *
 * Latin subset only, matching the unicode-range Google serves.
 */

@font-face {
	font-family: "Manrope";
	font-style: normal;
	font-weight: 400 800;
	font-display: optional;
	src: url("../fonts/manrope-latin-var.woff2") format("woff2-variations"),
		url("../fonts/manrope-latin-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: "DM Sans";
	font-style: normal;
	font-weight: 100 1000;
	font-display: optional;
	src: url("../fonts/dm-sans-latin-var.woff2") format("woff2-variations"),
		url("../fonts/dm-sans-latin-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;
}
