/* Fontes self-hosted (subset latin, woff2) — baixadas do Google Fonts.
   Fallbacks com size-adjust para reduzir o layout shift do swap. */

@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 300 600;
  font-display: swap;
  font-optical-sizing: auto;
  src: url('../assets/fonts/fraunces-italic-var.woff2') format('woff2');
}

@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  font-optical-sizing: auto;
  src: url('../assets/fonts/fraunces-var.woff2') format('woff2');
}

@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../assets/fonts/plex-mono-400.woff2') format('woff2');
}

@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../assets/fonts/plex-mono-500.woff2') format('woff2');
}

@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../assets/fonts/plex-sans-300.woff2') format('woff2');
}

@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../assets/fonts/plex-sans-400.woff2') format('woff2');
}

@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../assets/fonts/plex-sans-500.woff2') format('woff2');
}

@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../assets/fonts/plex-sans-600.woff2') format('woff2');
}
/* Fallback métrico aproximado para o display serif (reduz CLS no swap) */
@font-face {
  font-family: 'Fraunces-fallback';
  src: local('Georgia');
  size-adjust: 106%;
  ascent-override: 92%;
  descent-override: 24%;
}
