/* Гарнитуры. Лежат у нас, а не подтягиваются с fonts.googleapis.com.
 *
 * Три роли, три гарнитуры:
 *   Manrope         — весь текст и заголовки, веса 400–800;
 *   JetBrains Mono  — надзаголовки, метки и подписи капителью;
 *   Playfair Display курсив — выделение внутри заголовка (.em) и подпись
 *                     во всю ширину в подвале.
 *
 * Файлы переменные: одна дорожка веса вместо отдельного файла на каждое
 * начертание. У Manrope ось 200–800, у JetBrains Mono — 400–800; в макете
 * используются 400–800 и 400–500 соответственно, то есть обе оси перекрывают
 * нужное с запасом.
 *
 * Порезаны по алфавитам: браузер качает подмножество, только если на странице
 * есть его символы. Кириллица нужна всегда, латиница — почти всегда,
 * latin-ext — ради одного знака рубля в ценах.
 *
 * Диапазоны скопированы у Google as is. Переписывать их «покороче» нельзя:
 * пропущенный в диапазоне знак не подставится из другого подмножества, он
 * просто выпадет в системный шрифт посреди строки.
 */

/* ---------- Manrope: текст и заголовки ---------- */

@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("/static/fonts/manrope-cyrillic.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("/static/fonts/manrope-latin.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;
}

/* Ради знака рубля. Он лежит в диапазоне U+20AD-20C0 этого подмножества —
   проверено по cmap файла, а не по названию: у Playfair Display рубля нет
   вовсе ни в одном подмножестве Google, и рассчитывать на «наверняка есть»
   тут нельзя. Весь latin-ext ради одного знака — 15 КБ, но качается он только
   на страницах с ценой. */
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("/static/fonts/manrope-latin-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;
}

/* ---------- JetBrains Mono: метки и надзаголовки ---------- */

/* Моноширинная берёт на себя всё, что набрано капителью с большим разрядкой:
   надзаголовки секций, подписи под цифрами, бегущую строку. У гротеска в
   разрядку буквы разъезжаются неравномерно, у моноширинной шаг постоянный —
   строка читается как метка, а не как обрубок предложения. */
@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url("/static/fonts/mono-cyrillic.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
  src: url("/static/fonts/mono-latin.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;
}

/* ---------- Playfair Display курсив: выделение ---------- */

/* Только курсив. Прямое начертание было заголовочным до этого редизайна и
   больше не используется — заголовки набираются Manrope в 800, — поэтому
   playfair-cyrillic.woff2 и playfair-latin.woff2 удалены, а не оставлены
   «на всякий случай»: неиспользуемый файл всё равно попадает в образ. */
@font-face {
  font-family: "Playfair Display";
  font-style: italic;
  font-weight: 500 600;
  font-display: swap;
  src: url("/static/fonts/playfair-italic-cyrillic.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: "Playfair Display";
  font-style: italic;
  font-weight: 500 600;
  font-display: swap;
  src: url("/static/fonts/playfair-italic-latin.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;
}
