/*
 * The Crypto Secret — self-hosted web fonts (Story 1.1).
 *
 * Instrument Sans, latin + latin-ext subsets, served from this theme's own
 * fonts/ directory. SIL Open Font License 1.1 — the licence text travels with
 * the font files in OFL.txt beside this file, as the OFL requires of any
 * redistribution. Do not delete it when pruning the theme.
 *
 * No runtime request is made to any external font host. The design canvas
 * loads Google Fonts only because it permits no other host; production must
 * not (tokens.md, "Production" note). The hostnames are deliberately not
 * written out anywhere in this file: it is served to the browser, and the
 * verification gate asserts those strings are absent from the served CSS as
 * well as the served HTML.
 *
 * WHY TWO FILES AND NOT EIGHT
 * ---------------------------
 * Instrument Sans ships only as a VARIABLE font. Google's CSS API serves all
 * four weights the design uses — 400 / 500 / 600 / 700 — from exactly two
 * files, one per subset, each spanning the whole range. Verified against the
 * v2 CSS API on 2026-08-31: four weights, two distinct URLs, 41KB total.
 * There is no static per-weight cut to host, so the faithful equivalent is
 * one block per subset declaring a weight RANGE. 500 and 600 are real
 * instances of the wght axis, not weights the browser synthesises.
 *
 * The unicode-range split is kept as upstream ships it: a page of pure-latin
 * copy never downloads the 11KB latin-ext file at all.
 *
 * Do not add an @import or a <link> fallback here. If these files are missing
 * the theme's enqueue bails (functions.php) — it does not reach for a CDN.
 */

/*
 * No italic face is hosted, and only the wght axis is available. Without this,
 * the browser SYNTHESISES what it cannot find: a sheared oblique for every
 * <em>, and a smeared faux-bold if a weight ever resolves outside 400–700.
 * Both look wrong beside a drawn face and neither is what the artboards show.
 * font-synthesis: none makes the constraint real rather than merely asserted
 * in the comment above — if a design later needs italic, the correct fix is to
 * host the italic file, not to let the browser invent one.
 */
:root {
	font-synthesis: none;
}

/* Instrument Sans 400–700 — latin-ext */
@font-face {
  font-family: 'Instrument Sans';
  font-style: normal;
  font-weight: 400 700;
  font-stretch: 100%;
  font-display: swap;
  src: url('instrument-sans-400-700-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* Instrument Sans 400–700 — latin */
@font-face {
  font-family: 'Instrument Sans';
  font-style: normal;
  font-weight: 400 700;
  font-stretch: 100%;
  font-display: swap;
  src: url('instrument-sans-400-700.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;
}
