/* Self-hosted fonts — Sora (display) + Inter (body), latin subset, SIL OFL.
   Files fetched via google-webfonts-helper; see assets/vendor/VERSIONS.txt */

@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/sora-v17-latin-regular.woff2') format('woff2');
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/assets/fonts/sora-v17-latin-600.woff2') format('woff2');
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/assets/fonts/sora-v17-latin-700.woff2') format('woff2');
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url('/assets/fonts/sora-v17-latin-800.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/inter-v20-latin-regular.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/assets/fonts/inter-v20-latin-500.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/assets/fonts/inter-v20-latin-600.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/assets/fonts/inter-v20-latin-700.woff2') format('woff2');
}

/* Metric-matched local fallbacks (Arial) — eliminate font-swap layout shift (CLS).
   Overrides computed from the shipped woff2 metrics vs Arial with fontTools
   (scripts note: knowledge/ERRORS.md 2026-07-18). Referenced by the font stacks
   in tokens.css; while the real fonts load, text renders in Arial scaled to the
   same metrics, so the swap moves (almost) nothing. */
@font-face {
  font-family: 'Sora Fallback';
  src: local('Arial');
  size-adjust: 115.23%;
  ascent-override: 84.18%;
  descent-override: 25.17%;
  line-gap-override: 0%;
}
@font-face {
  font-family: 'Inter Fallback';
  src: local('Arial');
  size-adjust: 107.81%;
  ascent-override: 89.86%;
  descent-override: 22.37%;
  line-gap-override: 0%;
}
