/* Boost.House: шрифт сайта TikTok Sans (font_3eb8), дизайн «Rappel» 2026.
   Copyright 2024 TikTok Inc. (https://github.com/tiktok/TikTokSans). SIL Open Font License 1.1.
   Файлы шрифта разбиты по алфавитам: браузер скачивает только те, что есть на странице. */

@font-face {
  font-family: "TikTok Sans";
  font-style: normal;
  font-weight: 300 900;
  font-display: swap;
  src: url("../fonts/web/tiktok-sans-cyrillic-ext.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: "TikTok Sans";
  font-style: normal;
  font-weight: 300 900;
  font-display: swap;
  src: url("../fonts/web/tiktok-sans-cyrillic.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "TikTok Sans";
  font-style: normal;
  font-weight: 300 900;
  font-display: swap;
  src: url("../fonts/web/tiktok-sans-greek.woff2") format("woff2");
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
@font-face {
  font-family: "TikTok Sans";
  font-style: normal;
  font-weight: 300 900;
  font-display: swap;
  src: url("../fonts/web/tiktok-sans-vietnamese.woff2") format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: "TikTok Sans";
  font-style: normal;
  font-weight: 300 900;
  font-display: swap;
  src: url("../fonts/web/tiktok-sans-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;
}
@font-face {
  font-family: "TikTok Sans";
  font-style: normal;
  font-weight: 300 900;
  font-display: swap;
  src: url("../fonts/web/tiktok-sans-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+02D8-02D9, U+02DB, U+0302, U+0306-0307, U+030A-030C, U+0312, U+031B, U+0326-0328, U+032E, U+0331, U+0335, U+0337-0338, U+0E3F, U+2070, U+2074-207B, U+207D-207E, U+2080-208B, U+208D-208E, U+2100, U+2105, U+2117, U+2153-2154, U+215B-215E, U+2190, U+2192, U+2194-2199, U+2248, U+2260, U+2264-2265, U+2460-2468, U+24EA, U+24FF, U+25CB-25CC, U+25CF, U+2776-277E, U+FB01-FB02;
}

/* Шкала: размер, межстрочный, начертание, разрядка. Крупные шаги растут с шириной экрана
   от 360 до 1280 px. Наклонного начертания нет: выделение — насыщенностью. */
:root {
  --bh-font-sans: "TikTok Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", "Noto Sans Arabic", Tahoma, sans-serif;
  --bh-weight-light: 300;
  --bh-weight-regular: 400;
  --bh-weight-medium: 500;
  --bh-weight-semibold: 600;
  --bh-weight-bold: 700;
  --bh-weight-extrabold: 800;
  --bh-weight-black: 900;
  --bh-text-display: clamp(2.5rem, 1.9130rem + 2.6087vw, 4rem);
  --bh-leading-display: 1.05;
  --bh-weight-display: 700;
  --bh-tracking-display: -0.02em;
  --bh-text-h1: clamp(2rem, 1.6087rem + 1.7391vw, 3rem);
  --bh-leading-h1: 1.1;
  --bh-weight-h1: 700;
  --bh-tracking-h1: -0.02em;
  --bh-text-h2: clamp(1.625rem, 1.3804rem + 1.0870vw, 2.25rem);
  --bh-leading-h2: 1.15;
  --bh-weight-h2: 700;
  --bh-tracking-h2: -0.01em;
  --bh-text-h3: clamp(1.375rem, 1.2283rem + 0.6522vw, 1.75rem);
  --bh-leading-h3: 1.2;
  --bh-weight-h3: 600;
  --bh-tracking-h3: -0.01em;
  --bh-text-h4: 1.375rem;
  --bh-leading-h4: 1.25;
  --bh-weight-h4: 600;
  --bh-tracking-h4: 0em;
  --bh-text-lead: 1.188rem;
  --bh-leading-lead: 1.5;
  --bh-weight-lead: 400;
  --bh-tracking-lead: 0em;
  --bh-text-body: 1rem;
  --bh-leading-body: 1.55;
  --bh-weight-body: 400;
  --bh-tracking-body: 0em;
  --bh-text-ui: 0.938rem;
  --bh-leading-ui: 1.3;
  --bh-weight-ui: 500;
  --bh-tracking-ui: 0em;
  --bh-text-small: 0.875rem;
  --bh-leading-small: 1.45;
  --bh-weight-small: 400;
  --bh-tracking-small: 0em;
  --bh-text-caption: 0.75rem;
  --bh-leading-caption: 1.35;
  --bh-weight-caption: 500;
  --bh-tracking-caption: 0.02em;
  --bh-numeric: tabular-nums;
}

.bh-text-display {
  font-family: var(--bh-font-sans);
  font-size: var(--bh-text-display);
  line-height: var(--bh-leading-display);
  font-weight: var(--bh-weight-display);
  letter-spacing: var(--bh-tracking-display);
}
.bh-text-h1 {
  font-family: var(--bh-font-sans);
  font-size: var(--bh-text-h1);
  line-height: var(--bh-leading-h1);
  font-weight: var(--bh-weight-h1);
  letter-spacing: var(--bh-tracking-h1);
}
.bh-text-h2 {
  font-family: var(--bh-font-sans);
  font-size: var(--bh-text-h2);
  line-height: var(--bh-leading-h2);
  font-weight: var(--bh-weight-h2);
  letter-spacing: var(--bh-tracking-h2);
}
.bh-text-h3 {
  font-family: var(--bh-font-sans);
  font-size: var(--bh-text-h3);
  line-height: var(--bh-leading-h3);
  font-weight: var(--bh-weight-h3);
  letter-spacing: var(--bh-tracking-h3);
}
.bh-text-h4 {
  font-family: var(--bh-font-sans);
  font-size: var(--bh-text-h4);
  line-height: var(--bh-leading-h4);
  font-weight: var(--bh-weight-h4);
  letter-spacing: var(--bh-tracking-h4);
}
.bh-text-lead {
  font-family: var(--bh-font-sans);
  font-size: var(--bh-text-lead);
  line-height: var(--bh-leading-lead);
  font-weight: var(--bh-weight-lead);
  letter-spacing: var(--bh-tracking-lead);
}
.bh-text-body {
  font-family: var(--bh-font-sans);
  font-size: var(--bh-text-body);
  line-height: var(--bh-leading-body);
  font-weight: var(--bh-weight-body);
  letter-spacing: var(--bh-tracking-body);
}
.bh-text-ui {
  font-family: var(--bh-font-sans);
  font-size: var(--bh-text-ui);
  line-height: var(--bh-leading-ui);
  font-weight: var(--bh-weight-ui);
  letter-spacing: var(--bh-tracking-ui);
}
.bh-text-small {
  font-family: var(--bh-font-sans);
  font-size: var(--bh-text-small);
  line-height: var(--bh-leading-small);
  font-weight: var(--bh-weight-small);
  letter-spacing: var(--bh-tracking-small);
}
.bh-text-caption {
  font-family: var(--bh-font-sans);
  font-size: var(--bh-text-caption);
  line-height: var(--bh-leading-caption);
  font-weight: var(--bh-weight-caption);
  letter-spacing: var(--bh-tracking-caption);
}

/* Цифры одной ширины: цены, счётчики, таблицы. */
.bh-num {
  font-variant-numeric: var(--bh-numeric);
}
