/* Self-hosted brand fonts.
 *
 * Why this file exists: until 2026-10-30 the site loaded Cormorant Garamond and
 * Jost from fonts.googleapis.com. That made the measured page weight
 * non-deterministic — the byte totals depended on how many font subsets the
 * browser managed to request before Lighthouse stopped gathering — and it sent
 * every visitor's IP to a third party before any consent decision.
 *
 * Files are the official Google Fonts builds redistributed by Fontsource
 * (SIL Open Font License 1.1, see fonts/OFL-*.txt). Variable axes cover every
 * weight the site uses (Jost 300-700, Cormorant 300-600) in one file per
 * subset per style, which is smaller than shipping each static weight.
 *
 * unicode-range values are copied verbatim from the Fontsource CSS, i.e. the
 * same subsetting Google used, so glyph coverage is unchanged: cyrillic for
 * Russian text, latin for the brand name, digits and punctuation.
 *
 * font-display: swap, and that is measured, not assumed. An earlier revision of
 * this comment claimed `optional` was in force and justified it with CLS 0.1548
 * on /bento-torty/. Both halves were wrong: the rules below have always said
 * `swap`, and CLS measures 0.0000-0.0001 (median of three runs per page) with a
 * 0.022 worst case against a 0.1 budget, because the image dimensions that
 * caused that shift were fixed in PR #126. `optional` would hide the webfont
 * from every visitor whose connection is slower than ~100 ms, which is most of
 * them; `swap` shows the brand face to everyone. tests/test_font_delivery_contract.py
 * now fails if this comment and the rules below ever disagree again.
 *
 * The byte cost stays predictable: the set of faces is bounded by the files in
 * this repository (no third party can add subsets), and the CI assertion is
 * pessimistic (worst of six runs), so it always sees the same upper bound.
 */

/* UA-нормализация обязана стоять здесь, а не в style.css.
 *
 * address получает font-style: italic из таблицы стилей браузера, а
 * font-family: Jost наследуется от body. Chrome примеряет @font-face к уже
 * разобранному DOM раньше, чем применит style.css, и в этот момент
 * запрашивает курсивные файлы Jost (40 792 Б), которые затем оказываются
 * не нужны: style.css всё равно ставит address прямой шрифт.
 *
 * Загрузка была гонкой — в 5 из 14 прогонов Lighthouse файлы попадали в
 * total-byte-weight, в 9 не попадали, — и именно она давала разброс
 * 40 792 Б на страницах с адресом. Правило рядом с @font-face закрывает
 * окно: 0 из 14 прогонов после правки.
 */
address{font-style:normal}

@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('/fonts/jost-cyrillic-wght-normal.woff2') format('woff2-variations');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('/fonts/jost-latin-wght-normal.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;
}

@font-face {
  font-family: 'Jost';
  font-style: italic;
  font-weight: 300 700;
  font-display: swap;
  src: url('/fonts/jost-cyrillic-wght-italic.woff2') format('woff2-variations');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

@font-face {
  font-family: 'Jost';
  font-style: italic;
  font-weight: 300 700;
  font-display: swap;
  src: url('/fonts/jost-latin-wght-italic.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;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('/fonts/cormorant-garamond-cyrillic-wght-normal.woff2') format('woff2-variations');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('/fonts/cormorant-garamond-latin-wght-normal.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;
}
