@charset "UTF-8";
/* Локальные шрифты. Внешние шрифтовые сервисы запрещены.
   Переменные начертания — один файл на все насыщенности.
   Только кириллица и базовая латиница — лишние сабсеты не нужны.
   Запасные семейства с метриками отступов — предотвращают CLS при swap. */

/* Onest — заголовки */
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('../assets/fonts/onest-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('../assets/fonts/onest-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;
}

/* Запасные начертания для Onest: пока файл не пришел, текст набран системным
   шрифтом с теми же шириной строки и высотой, и при подмене ничего не прыгает.
   Цифры посчитаны по файлам шрифтов: средняя ширина знака
   на тексте главной и страницы услуги, обычное к Onest 400, жирное к Onest 700.
   Arial (и метрически равный ему Liberation Sans на Linux) — для компьютеров
   и iOS, Roboto — для Android, где Arial нет. */
@font-face {
  font-family: 'Onest Fallback';
  font-weight: 100 599;
  src: local('Arial'), local('ArialMT'), local('Liberation Sans'), local('LiberationSans');
  size-adjust: 102.85%;
  ascent-override: 94.31%;
  descent-override: 29.65%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Onest Fallback';
  font-weight: 600 900;
  src: local('Arial Bold'), local('Arial-BoldMT'), local('Liberation Sans Bold'), local('LiberationSans-Bold');
  size-adjust: 99.93%;
  ascent-override: 97.07%;
  descent-override: 30.52%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Onest Fallback Roboto';
  font-weight: 100 599;
  src: local('Roboto'), local('Roboto-Regular');
  size-adjust: 102.14%;
  ascent-override: 94.96%;
  descent-override: 29.86%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Onest Fallback Roboto';
  font-weight: 600 900;
  src: local('Roboto Bold'), local('Roboto-Bold');
  size-adjust: 104.53%;
  ascent-override: 92.80%;
  descent-override: 29.18%;
  line-gap-override: 0%;
}

/* Montserrat — текст, цифры, интерфейс */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('../assets/fonts/montserrat-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

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

/* Запасные начертания для Montserrat, тем же способом: обычное к Montserrat 500
   (основной текст), жирное к Montserrat 700. */
@font-face {
  font-family: 'Montserrat Fallback';
  font-weight: 100 599;
  src: local('Arial'), local('ArialMT'), local('Liberation Sans'), local('LiberationSans');
  size-adjust: 112.76%;
  ascent-override: 85.85%;
  descent-override: 22.26%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Montserrat Fallback';
  font-weight: 600 900;
  src: local('Arial Bold'), local('Arial-BoldMT'), local('Liberation Sans Bold'), local('LiberationSans-Bold');
  size-adjust: 109.38%;
  ascent-override: 88.50%;
  descent-override: 22.95%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Montserrat Fallback Roboto';
  font-weight: 100 599;
  src: local('Roboto'), local('Roboto-Regular');
  size-adjust: 111.98%;
  ascent-override: 86.44%;
  descent-override: 22.41%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Montserrat Fallback Roboto';
  font-weight: 600 900;
  src: local('Roboto Bold'), local('Roboto-Bold');
  size-adjust: 114.42%;
  ascent-override: 84.60%;
  descent-override: 21.94%;
  line-gap-override: 0%;
}
