/* Montserrat — the io consulting typeface, self-hosted.
 *
 * Extracted from the ioHTML report generator's embedded copy, so ioDOC
 * makes no request to Google Fonts. The deployment CSP is font-src
 * 'self': a document-control platform should not need a third party to
 * be online to render its own text.
 *
 * ONE FILE PER SUBSET, declared ONCE with a weight RANGE.
 *
 * The source CSS declares this font eight times — four static weights x
 * two subsets — but all four payloads per subset are byte-identical,
 * because Montserrat here is a VARIABLE font carrying the whole 100-900
 * wght axis in a single file. Emitting it four times would make the
 * browser fetch the same bytes four times over.
 *
 * The range descriptor also matters for correctness, not just size: this
 * font's default instance is Thin (100). With a single-value descriptor
 * the rendered weight depends on the browser clamping the axis for us.
 * With "font-weight: 100 900" the used weight drives the axis directly,
 * which is what the spec actually guarantees.
 *
 * io brand weights: 300 Light body, 500/600 labels, 700 Bold headlines.
 * SIL OFL 1.1.
 */

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('/fonts/montserrat-latin-ext.woff2') format('woff2-variations');
  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;
}

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('/fonts/montserrat-latin.woff2') format('woff2-variations');
  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;
}
