/**
 * Self-hosted variable fonts — Fraunces (display) + Inter (body).
 *
 * Sostituisce il fetch a fonts.googleapis.com (privacy GDPR + perf):
 *   – No DNS extra né TLS handshake esterno.
 *   – Cache lunga (Caddy: max-age=31536000, immutable).
 *   – Niente IP visitatore inviato a Google.
 *
 * unicode-range: subset latin/latin-ext/vietnamese (Fraunces).
 * Inter: file full di rsms (basta uno: copre tutti gli script latini).
 */

/* ───── Fraunces (display / headings) ───── */

@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 300 700;
  font-stretch: 75% 100%;
  font-display: swap;
  src: url('./Fraunces-VariableFont-latin.woff2') format('woff2-variations'),
       url('./Fraunces-VariableFont-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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 300 700;
  font-stretch: 75% 100%;
  font-display: swap;
  src: url('./Fraunces-VariableFont-latin-ext.woff2') format('woff2-variations'),
       url('./Fraunces-VariableFont-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 300 700;
  font-stretch: 75% 100%;
  font-display: swap;
  src: url('./Fraunces-VariableFont-vietnamese.woff2') format('woff2-variations'),
       url('./Fraunces-VariableFont-vietnamese.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 300 700;
  font-stretch: 75% 100%;
  font-display: swap;
  src: url('./Fraunces-Italic-VariableFont-latin.woff2') format('woff2-variations'),
       url('./Fraunces-Italic-VariableFont-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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 300 700;
  font-stretch: 75% 100%;
  font-display: swap;
  src: url('./Fraunces-Italic-VariableFont-latin-ext.woff2') format('woff2-variations'),
       url('./Fraunces-Italic-VariableFont-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* ───── Inter (body / UI) ─────
 *
 * Splittato in 2 subset per ridurre il peso iniziale:
 *   - Latin (basic + Latin-1 + ligature + punctuation): ~105 KB
 *     copre IT/EN/ES/FR/DE/PT — il 99.9% del sito
 *   - Latin Extended: ~141 KB
 *     PL/CZ/SK/HR/HU/RO/TR/VI: caricato SOLO se il testo lo richiede
 *
 * Il full file `Inter-VariableFont.woff2` (352 KB con Greek/Cyrillic/Viet)
 * è ancora in repo per il subset di emergenza ma non viene referenziato.
 *
 * Subset generati con pyftsubset (fonttools):
 *   pyftsubset Inter-VariableFont.woff2 --unicodes="<range>" --flavor=woff2
 *   --layout-features='*' --no-hinting --desubroutinize
 */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('./Inter-VariableFont-latin.woff2') format('woff2-variations'),
       url('./Inter-VariableFont-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+2074, 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: 100 900;
  font-display: swap;
  src: url('./Inter-VariableFont-latin-ext.woff2') format('woff2-variations'),
       url('./Inter-VariableFont-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* NB: Inter Italic NON è registrato come @font-face.
 *
 * Costa 380 KB (Inter-Italic-VariableFont.woff2) ma sulla home viene
 * scaricato per servire pochissimi `<em>` body — la maggior parte degli
 * <em> è dentro headings (h1/h2/h3) che usano Fraunces (var(--ff-display)),
 * quindi Fraunces Italic (180 KB tot tra latin/latin-ext/vietnamese) li
 * copre. Gli <em> body residui ricadono su font-style synthetic italic del
 * browser (slanting algoritmico) — esteticamente meno raffinato ma 0 KB.
 *
 * Se in futuro servisse Inter Italic "vero" su molto testo body, ripristina
 * il @font-face qui sotto: */
/*
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url('./Inter-Italic-VariableFont.woff2') format('woff2-variations'),
       url('./Inter-Italic-VariableFont.woff2') format('woff2');
}
*/
