/* ============================================================================
   FONT SERVITI DA NOI, NON DA GOOGLE.

   Prima le pagine chiedevano i font a fonts.googleapis.com. Sembra un
   dettaglio tecnico e non lo è: ogni visitatore, PRIMA di qualunque consenso,
   mandava il proprio indirizzo IP a Google. Per un sito europeo è un
   trasferimento di dati personali verso un terzo, fatto senza che nessuno lo
   abbia chiesto — e la conseguenza pratica è che servirebbe un banner per una
   cosa che non serve al prodotto.

   La soluzione non è chiedere il consenso: è togliere il motivo. I font stanno
   qui, arrivano dal nostro dominio, e non parte nessuna richiesta verso
   nessuno. In più si caricano prima, perché non c'è da risolvere un altro
   dominio e aprire un'altra connessione.

   Tenuti solo i sottoinsiemi latin e latin-ext: il prodotto è italiano, e il
   cirillico, il greco e il vietnamita sarebbero peso scaricato e mai usato.
   In pratica sull'italiano si scarica quasi sempre il solo `latin`: le lettere
   accentate italiane (à è é ì ò ù) stanno tutte dentro U+0000-00FF.

   ---------------------------------------------------------------------------
   TAFFIDI — Plus Jakarta Sans per i titoli, Inter Tight per il testo.

   Prima ci ho provato con un serif (Fraunces), ragionando sul significato del
   nome. Bocciato, e la bocciatura ha ragione: il prodotto è un cruscotto pieno
   di tabelle, scadenze e numeri, e un serif in cima a una tabella promette una
   lettura che nessuno farà mai. Plus Jakarta Sans è geometrico ma con le
   terminazioni aperte e la «a» a doppio piano: moderno senza essere freddo, e
   soprattutto reggeva bene sia un titolo da 48px sia una voce di menù da 13.

   Inter Tight sotto fa il contrario, e va bene così: sparisce, e in un
   gestionale pieno di date, codici e scadenze il testo deve sparire e lasciare
   leggere il dato.

   ---------------------------------------------------------------------------
   PERCHÉ VARIABILI, E PERCHÉ È ANCHE UNA CORREZIONE.

   Prima c'era UN file statico per famiglia, dichiarato con quattro
   `font-weight` diversi (500, 600, 700, 800) che puntavano tutti allo stesso
   file. Al browser stai dicendo «questo disegno è il grassetto», quindi lui
   non ingrassa niente: i pesi esistevano nel CSS e non sulla pagina.

   Questi due file sono VARIABILI e dichiarano un INTERVALLO di peso
   (`font-weight: 400 900`). Da qui in poi un 800 è davvero un 800, e con due
   @font-face per famiglia invece di otto.
   ============================================================================ */

/* Plus Jakarta Sans (variabile 400–800) · latin-ext */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(/font/jakarta-var-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;
}

/* Plus Jakarta Sans (variabile 400–800) · latin */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url(/font/jakarta-var-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;
}

/* Inter Tight (variabile 400–700) · latin-ext */
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/font/inter-tight-var-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 Tight (variabile 400–700) · latin */
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/font/inter-tight-var-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;
}

/* JetBrains Mono 400 · latin-ext — resta: date, codici CER, numeri di
   attestato e importi devono stare in colonna, e per questo serve una
   larghezza fissa. Non è una scelta di stile, è una scelta di lettura. */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/font/jetbrains-mono-400-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;
}

/* JetBrains Mono 400 · latin */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/font/jetbrains-mono-400-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;
}

/* JetBrains Mono 500/600/700 · lo stesso file: è statico, e dichiararlo su più
   pesi NON lo ingrassa. Si tiene perché il monospazio qui serve per i DATI,
   dove il grassetto non si usa; se un giorno servisse davvero, va preso il
   file variabile come per le altre due famiglie. */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500 700;
  font-display: swap;
  src: url(/font/jetbrains-mono-400-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: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500 700;
  font-display: swap;
  src: url(/font/jetbrains-mono-400-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;
}
