/* ============================================================================
   Google Sans — основной web-шрифт.

   Пути намеренно относительные (../../fonts/...) — при сборке
   CompressedManifestStaticFilesStorage корректно переписывает их в
   hashed-имена (GoogleSans-Regular.<hash>.ttf). Абсолютные /static/...
   так же переписываются, но относительные надёжнее в pipeline.

   font-display:
     - Regular: optional  → если не успел за 100ms, Safari оставит fallback
       и не перевёрстывает страницу. Вместе с metrics-override это даёт
       стабильный layout на медленной мобильной сети.
     - Остальные weights: swap → доступны сразу через fallback, подмена
       прозрачна благодаря metrics-matched Fallback ниже.
   ============================================================================ */

@font-face {
  font-family: 'Google Sans';
  font-style: normal;
  font-weight: 400;
  font-display: optional;
  src: url("../../fonts/google-sans/GoogleSans-Regular.a93fc7148f22.ttf") format('truetype');
}

@font-face {
  font-family: 'Google Sans';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("../../fonts/google-sans/GoogleSans-Italic.2c52f84fd263.ttf") format('truetype');
}

@font-face {
  font-family: 'Google Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../../fonts/google-sans/GoogleSans-Medium.90b1b6ed369a.ttf") format('truetype');
}

@font-face {
  font-family: 'Google Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../../fonts/google-sans/GoogleSans-SemiBold.85ccda912582.ttf") format('truetype');
}

@font-face {
  font-family: 'Google Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../../fonts/google-sans/GoogleSans-Bold.6da6853a331d.ttf") format('truetype');
}

/* ============================================================================
   Metrics-matched fallback.

   Подменяем метрики системного шрифта (Arial/SF Pro/Roboto) так, чтобы
   вертикальные габариты строки совпадали с Google Sans (units per em = 1000,
   ascent ≈ 1006, descent ≈ -238, line-gap = 0).

   В результате:
     - пока Google Sans грузится, iPhone рендерит SF Pro с "поддельными"
       метриками Google Sans — строки не прыгают;
     - если шрифт вообще не дойдёт (блокировка / офлайн / 404), layout
       всё равно не рассыпается.

   Поддержка ascent-override / descent-override / size-adjust:
     - Safari 17+ (iOS 17+), Chrome 87+, Firefox 89+.
     - На старых браузерах правила просто игнорируются, поведение = as-is.
   ============================================================================ */

@font-face {
  font-family: 'Google Sans Fallback';
  font-style: normal;
  font-weight: 400 900;
  src: local('Arial'), local('Helvetica Neue'), local('Helvetica');
  size-adjust: 100.06%;
  ascent-override: 100.55%;
  descent-override: 23.79%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Google Sans Fallback';
  font-style: italic;
  font-weight: 400 900;
  src: local('Arial Italic'), local('Helvetica Neue Italic'), local('Helvetica Italic');
  size-adjust: 100.06%;
  ascent-override: 100.55%;
  descent-override: 23.79%;
  line-gap-override: 0%;
}
