/* Typographie « Arène ». Chargée par le SPA (index.css) et par Django
   (base.html), comme les jetons de couleur : un seul fichier, sinon les deux
   moitiés du site divergent.

   Anton pour ce qui frappe — noms de combattants, titres, scores. Oswald pour
   tout le reste. Les deux sont condensées : c'est ce qui donne le ton, et
   c'est aussi ce qui demande de l'attention sur le texte courant, d'où
   l'interlignage et l'interlettrage plus généreux que sur une romaine.

   Fontes auto-hébergées : pas de requête vers un CDN tiers, donc rien à
   ajouter à la politique de confidentialité, et pas de police qui manque le
   jour où le CDN tombe. Les `url()` sont relatives, ce qui permet à
   ManifestStaticFilesStorage de les réécrire vers les noms hachés au
   collectstatic.

   Le sous-ensemble `latin` suffit au français : les accents vivent dans
   U+0000-00FF et les ligatures Œ/œ dans U+0152-0153. `latin-ext` n'est là que
   pour les pseudonymes, et l'`unicode-range` fait que le navigateur ne le
   télécharge que s'il en rencontre le besoin. */

@font-face {
  font-family: 'Anton';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/anton-latin-400-normal.912c3c9f2621.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: 'Anton';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/anton-latin-ext-400-normal.ab8365836d69.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: 'Oswald';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/oswald-latin-400-normal.b2a5bf57bad8.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: 'Oswald';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/oswald-latin-ext-400-normal.b23a21589b77.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: 'Oswald';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/oswald-latin-500-normal.8af401f8e32b.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: 'Oswald';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/oswald-latin-ext-500-normal.51f60431e53e.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: 'Oswald';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/oswald-latin-700-normal.665f37b2d0e8.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: 'Oswald';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/oswald-latin-ext-700-normal.2991ebfbe9f0.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;
}

:root {
  --ud-police-titre: 'Anton', 'Haettenschweiler', 'Arial Narrow Bold', Impact, sans-serif;
  --ud-police-texte: 'Oswald', 'Roboto Condensed', 'Arial Narrow', Helvetica, sans-serif;

  /* Anton n'existe qu'en 400 : demander du gras ferait synthétiser une graisse
     par le navigateur, plus lourde et plus sale que le dessin d'origine. */
  --ud-titre-poids: 400;
}

body {
  font-family: var(--ud-police-texte);
  font-weight: 400;
  /* Une condensée serre les lettres : sans ce supplément d'air, un paragraphe
     de commentaires se lit deux fois moins vite qu'en romaine. */
  line-height: 1.65;
  letter-spacing: .01em;
}

/* h4 reste sur la police de texte : c'est presque toujours un libellé de
   panneau dense, où une condensée d'affiche dessert la lecture. */
h1, h2, h3,
.ud-titre {
  font-family: var(--ud-police-titre);
  font-weight: var(--ud-titre-poids);
  line-height: 1.08;
  letter-spacing: .005em;
  text-wrap: balance;
  /* Les composants demandent souvent `font-weight: 600` ou la classe
     `font-extrabold` de Tailwind. Anton n'ayant qu'un seul dessin, le
     navigateur la grossirait lui-même — un faux gras baveux. */
  font-synthesis-weight: none;
}

/* Anton monte très haut et descend peu : les capitales collent au-dessus si on
   la laisse sur l'interlignage par défaut d'un gros titre. */
h1 { letter-spacing: .01em; }

/* Les libellés en capitales espacées restent sur la police de texte : Anton en
   capitales espacées devient illisible sous 14 px. */
.ud-etiquette {
  font-family: var(--ud-police-texte);
  font-weight: 500;
  letter-spacing: .16em;
  text-transform: uppercase;
}

/* Oswald a des chiffres à chasse fixe : on s'en sert partout où des nombres
   s'empilent en colonne. */
.tabular,
.ud-chiffres {
  font-variant-numeric: tabular-nums;
}
