/* ============================================================================
   JBK · Tipografia auto-hospedada  ·  2026-08-17
   ============================================================================
   Reemplaza a fonts.googleapis.com + fonts.gstatic.com. Motivos:

   1. QUITA DOS DEPENDENCIAS EXTERNAS. Antes el navegador tenia que resolver DNS,
      negociar TLS y bajar un CSS de googleapis, y RECIEN AHI descubria que debia
      pedir los woff2 a gstatic: dos viajes encadenados antes del primer byte de
      tipografia. Ahora salen del mismo servidor que el resto del sitio.

   2. ARREGLA EL SALTO DE TIPOGRAFIA (FOUT). Medido antes del cambio: el titular
      "Our Services" pasaba de 482px a 391px al llegar Lato -- 91px, un 23.3%.
      Ese salto es lo que se veia al entrar o refrescar.

   Solo se hospedan los pesos 400, 700 y 900. El 300 estaba en la URL de Google
   pero NO se usa en ninguna parte del sitio (verificado), asi que se bajaba en
   cada visita para nada.
   Ojo: el markup usa font-600 y font-800 en 112 lugares; Lato no trae esos pesos
   y el navegador los redondea a 700 y 900. Ya era asi antes.
   ============================================================================ */

/* ---- Lato, auto-hospedada ------------------------------------------------- */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/lato-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: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/lato-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;
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('fonts/lato-700-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: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('fonts/lato-700-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: 'Lato';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url('fonts/lato-900-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: 'Lato';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url('fonts/lato-900-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;
}

/* ---- El reemplazo, con las MISMAS metricas que Lato -----------------------
   Esta es la mitad que arregla el salto. Mientras Lato viaja, el navegador usa
   Arial -- que es mas ancha -- y al llegar Lato el texto se encoge de golpe.
   Aca se declara Arial con las metricas de Lato aplicadas encima, calculadas con
   fontTools desde el propio archivo:

     Lato: em=2000  ascenso=1974  descenso=-426  gap=0  anchoMedio=1042
     Arial: em=2048  anchoMedio=1044

     size-adjust      102.20%   <- estira Arial para que ocupe lo mismo
     ascent-override   96.57%   <- iguala la altura sobre la linea base
     descent-override  20.84%   <- y debajo
     line-gap-override  0%      <- Lato no lleva gap

   El intercambio sigue ocurriendo, pero como ambas ocupan lo mismo, el texto NO
   se mueve. Eso es lo que se veia.

   Si algun dia se cambia de tipografia, hay que RECALCULAR estos cuatro numeros:
   dejarlos con los de Lato seria peor que no tenerlos. El script esta en la
   sesion como vendor_fonts.py. */
@font-face {
  font-family: 'Lato Fallback';
  src: local('Arial'), local('Helvetica Neue'), local('Helvetica');
  size-adjust: 102.20%;
  ascent-override: 96.57%;
  descent-override: 20.84%;
  line-gap-override: 0%;
}
