/* ============================================================================
   AEQUIAL ADVISORY — Typographie et couleurs web
   Version 1.0 — 1er octobre 2026
   Alignée sur la charte graphique deck & rapport v1.2
   ----------------------------------------------------------------------------
   PRINCIPE
   Georgia (titres) et Trebuchet MS (texte) sont appelées en LOCAL : elles sont
   préinstallées sur macOS, Windows et iOS. Aucun fichier n’est téléchargé sur
   ces plateformes, donc aucune latence et aucun problème de licence.
   Elles ne peuvent pas être auto-hébergées en @font-face : l’EULA Microsoft
   interdit toute œuvre dérivée des fichiers, et la conversion en WOFF2 en est une.

   Sur Android et Linux, où elles sont absentes, le navigateur bascule sur deux
   polices libres (SIL Open Font License 1.1) fournies ici, calibrées pour
   occuper la même place que les originales :
     - Gelasio  ->  substitut de Georgia      (métriquement identique)
     - Lato     ->  substitut de Trebuchet MS (ajusté à 103,2 %)
   Les substituts ne sont téléchargés QUE si la police locale est absente.
   ========================================================================== */


/* --- 1. Substitut de Georgia : Gelasio -------------------------------------
   Gelasio est métriquement compatible avec Georgia : chasses identiques au
   millième (n = 0,5908 em, H = 0,8149 em, espace = 0,2412 em), hauteur d’x et
   hauteur de capitale identiques. Aucun size-adjust n’est donc nécessaire.
   Seules les métriques verticales diffèrent : on les aligne sur celles de
   Georgia (hhea asc 91,70 % / desc 21,92 % / gap 0) pour que l’interligne
   soit rigoureusement le même.
   -------------------------------------------------------------------------- */

@font-face {
  font-family: 'Gelasio';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  ascent-override: 91.7%;
  descent-override: 21.92%;
  line-gap-override: 0%;
  src: url('./fonts/gelasio-latin-400-normal.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: 'Gelasio';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  ascent-override: 91.7%;
  descent-override: 21.92%;
  line-gap-override: 0%;
  src: url('./fonts/gelasio-latin-ext-400-normal.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: 'Gelasio';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  ascent-override: 91.7%;
  descent-override: 21.92%;
  line-gap-override: 0%;
  src: url('./fonts/gelasio-latin-400-italic.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: 'Gelasio';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  ascent-override: 91.7%;
  descent-override: 21.92%;
  line-gap-override: 0%;
  src: url('./fonts/gelasio-latin-ext-400-italic.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: 'Gelasio';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  ascent-override: 91.7%;
  descent-override: 21.92%;
  line-gap-override: 0%;
  src: url('./fonts/gelasio-latin-700-normal.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: 'Gelasio';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  ascent-override: 91.7%;
  descent-override: 21.92%;
  line-gap-override: 0%;
  src: url('./fonts/gelasio-latin-ext-700-normal.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: 'Gelasio';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  ascent-override: 91.7%;
  descent-override: 21.92%;
  line-gap-override: 0%;
  src: url('./fonts/gelasio-latin-700-italic.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: 'Gelasio';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  ascent-override: 91.7%;
  descent-override: 21.92%;
  line-gap-override: 0%;
  src: url('./fonts/gelasio-latin-ext-700-italic.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;
}


/* --- 2. Substitut de Trebuchet MS : Lato -----------------------------------
   Lato n’est pas métriquement compatible, mais c’est le meilleur substitut
   libre mesuré : avec size-adjust: 103.2 % (= hauteur d’x de Trebuchet 0,5229
   divisée par celle de Lato 0,5065), la ligne de texte occupe la même largeur
   à 0,1 % près. Métriques verticales alignées sur Trebuchet MS
   (hhea asc 93,90 % / desc 22,22 % / gap 0).
   -------------------------------------------------------------------------- */

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  size-adjust: 103.2%;
  ascent-override: 93.9%;
  descent-override: 22.22%;
  line-gap-override: 0%;
  src: url('./fonts/lato-latin-400-normal.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: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  size-adjust: 103.2%;
  ascent-override: 93.9%;
  descent-override: 22.22%;
  line-gap-override: 0%;
  src: url('./fonts/lato-latin-ext-400-normal.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: 'Lato';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  size-adjust: 103.2%;
  ascent-override: 93.9%;
  descent-override: 22.22%;
  line-gap-override: 0%;
  src: url('./fonts/lato-latin-400-italic.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: 'Lato';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  size-adjust: 103.2%;
  ascent-override: 93.9%;
  descent-override: 22.22%;
  line-gap-override: 0%;
  src: url('./fonts/lato-latin-ext-400-italic.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: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  size-adjust: 103.2%;
  ascent-override: 93.9%;
  descent-override: 22.22%;
  line-gap-override: 0%;
  src: url('./fonts/lato-latin-700-normal.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: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  size-adjust: 103.2%;
  ascent-override: 93.9%;
  descent-override: 22.22%;
  line-gap-override: 0%;
  src: url('./fonts/lato-latin-ext-700-normal.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: 'Lato';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  size-adjust: 103.2%;
  ascent-override: 93.9%;
  descent-override: 22.22%;
  line-gap-override: 0%;
  src: url('./fonts/lato-latin-700-italic.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: 'Lato';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  size-adjust: 103.2%;
  ascent-override: 93.9%;
  descent-override: 22.22%;
  line-gap-override: 0%;
  src: url('./fonts/lato-latin-ext-700-italic.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;
}


/* --- 3. Jetons de marque --------------------------------------------------- */

:root {
  /* Piles de polices — l’ordre est la règle : local d’abord, substitut ensuite */
  --aeq-font-titre: Georgia, 'Gelasio', 'Times New Roman', Times, serif;
  --aeq-font-texte: 'Trebuchet MS', 'Lato', 'Lucida Grande', 'Lucida Sans Unicode',
                    Tahoma, Verdana, sans-serif;

  /* Palette principale */
  --aeq-navy:    #12294A;  /* titres, aplats de section */
  --aeq-or:      #B4915A;  /* filets, séparateurs, accents */
  --aeq-bronze:  #8C6A32;  /* accent secondaire, priorité moyenne */
  --aeq-ivoire:  #F8F5EF;  /* fonds de bloc */
  --aeq-ardoise: #6B7280;  /* texte secondaire, légendes */
  --aeq-brume:   #D9DEE7;  /* séries de graphique secondaires, filets clairs */

  /* Couleurs joyaux — données et catégories */
  --aeq-petrole:  #1F5C6B;
  --aeq-sapin:    #2F5D50;  /* priorité standard */
  --aeq-bordeaux: #7A2E3A;  /* priorité élevée */

  /* Échelle typographique web (base 17 px) */
  --aeq-pas: 1.0625rem;
}

/* --- 4. Application — à adapter à votre CMS -------------------------------- */

body {
  font-family: var(--aeq-font-texte);
  font-size: var(--aeq-pas);
  line-height: 1.6;
  color: var(--aeq-navy);
  background: #FFFFFF;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, .aeq-titre {
  font-family: var(--aeq-font-titre);
  font-weight: 400;              /* Georgia en graisse normale : plus noble */
  color: var(--aeq-navy);
  letter-spacing: -0.005em;
  line-height: 1.22;
}

h1 { font-size: 2.35rem; margin: 0 0 .6em; }
h2 { font-size: 1.65rem; margin: 2.2em 0 .5em; }
h3 { font-size: 1.22rem; margin: 1.8em 0 .4em; }

/* Filet or sous les titres de niveau 2 — signature de la marque */
h2.aeq-filet::after {
  content: '';
  display: block;
  width: 56px;
  height: 2px;
  margin-top: .55em;
  background: var(--aeq-or);
}

/* Surtitre / œil-de-chat en capitales espacées */
.aeq-surtitre {
  font-family: var(--aeq-font-texte);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--aeq-or);
}

/* Chapô */
.aeq-chapo {
  font-family: var(--aeq-font-titre);
  font-size: 1.22rem;
  font-style: italic;
  color: var(--aeq-ardoise);
  line-height: 1.5;
}

/* Bloc d’encadré — angles droits, conformément à la charte */
.aeq-encadre {
  background: var(--aeq-ivoire);
  border-left: 3px solid var(--aeq-or);
  padding: 1.15rem 1.35rem;
  margin: 1.8rem 0;
}

/* Citation */
blockquote.aeq {
  font-family: var(--aeq-font-titre);
  font-size: 1.3rem;
  font-style: italic;
  color: var(--aeq-navy);
  border: 0;
  border-top: 1px solid var(--aeq-or);
  border-bottom: 1px solid var(--aeq-or);
  padding: 1.3rem 0;
  margin: 2.2rem 0;
}

/* Tableau — filets fins, pas de quadrillage */
table.aeq {
  width: 100%;
  border-collapse: collapse;
  font-size: .94rem;
}
table.aeq th {
  font-family: var(--aeq-font-texte);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  text-align: left;
  color: #FFFFFF;
  background: var(--aeq-navy);
  padding: .6rem .75rem;
}
table.aeq td {
  padding: .6rem .75rem;
  border-bottom: 1px solid var(--aeq-brume);
  vertical-align: top;
}
table.aeq tbody tr:nth-child(even) { background: var(--aeq-ivoire); }

/* Lien */
a.aeq, .aeq-contenu a {
  color: var(--aeq-navy);
  text-decoration: none;
  border-bottom: 1px solid var(--aeq-or);
  padding-bottom: 1px;
}
.aeq-contenu a:hover { color: var(--aeq-bronze); border-bottom-color: var(--aeq-bronze); }

/* Légende et source */
.aeq-source {
  font-size: .78rem;
  color: var(--aeq-ardoise);
}
