/* LH 100C — Fontes self-hosted com font-display: optional.
 *
 * Por que optional (vs swap):
 *  - swap: usa fallback durante carregamento → quando font carrega, troca →
 *    métricas mudam → CLS spike. Era nossa landing.
 *  - optional: usa fallback. Se font não chega em ~100ms, mantém fallback ATÉ
 *    próximo navigation. Zero CLS. UX igual ao usuário pós-cache.
 *
 * Pesquisa: https://web.dev/articles/font-display#optional
 *           https://web.dev/articles/preload-optional-fonts
 *
 * size-adjust: ajusta métricas da fallback pra parecer com a font final.
 * Calculado via fontaine: https://github.com/unjs/fontaine
 *   - Cormorant Garamond serif: size-adjust 90%, ascent 95%, descent 22%
 *   - Inter sans-serif:         size-adjust 107%, ascent 90%, descent 22%
 */

/* Subset latin (cobre PT-BR, EN, ES, FR). Cyrillic/Vietnamese fica no
 * fallback (raro pra restaurante BR). */

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400 700;            /* variable: cobre 400-700 num arquivo só */
  font-display: optional;
  src: url('/fonts/cormorant-garamond-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;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400 700;
  font-display: optional;
  src: url('/fonts/inter-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;
}

/* Fallback fonts com métricas ajustadas (size-adjust + ascent/descent override).
 * Faz fallback render-tempo ter mesma altura/largura do font final.
 * Quando font local carrega (em ms), troca sem CLS. */

@font-face {
  font-family: 'Cormorant Garamond Fallback';
  src: local('Georgia'), local('Times New Roman'), local('serif');
  size-adjust: 90%;
  ascent-override: 95%;
  descent-override: 22%;
  line-gap-override: 0%;
}

@font-face {
  font-family: 'Inter Fallback';
  src: local('Arial'), local('Helvetica Neue'), local('Helvetica'), local('sans-serif');
  size-adjust: 107%;
  ascent-override: 90%;
  descent-override: 22%;
  line-gap-override: 0%;
}
