/* ============================================================================
   AbyNova · fonts.css

   DOS familias, las dos con licencia SIL Open Font License, las dos
   autoalojadas en Cloudflare Pages. Nunca por CDN de Google: el sanitizador de
   Bitrix borra los <link>, así que no habría preconnect — y además, sirviendo
   nosotros el archivo, el visitante no le pega a Google ni una vez.

   · Archivo (Omnibus-Type, Buenos Aires) — cuerpo, UI y h3 para abajo.
     Es una fundición latinoamericana: los diacríticos del español y del
     portugués están dibujados de origen, no adaptados. Que la tipografía de una
     marca para PYME de Paraguay y Ecuador venga de la región es una historia
     que ningún competidor tiene.
   · Instrument Serif — SOLO h1 y h2.
     Viene en un peso único, y eso es una virtud: obliga a la restricción. Un
     serif a 400 en 64 px se lee más caro que cualquier grotesca a 700. Y es el
     diferenciador real en esta categoría: el 95% de los bots de WhatsApp son
     todo-sans, así que un titular con serif lee institucional y establecido en
     vez de startup — que es exactamente lo que un dueño de clínica de 50 años
     reconoce como serio.

   ⚠️ ANTES: este archivo tenía el @font-face ENTERO adentro de un comentario y
   la carpeta assets/fuentes/ no existía. Las 63 páginas se servían en Segoe UI.
   No era un problema de diseño: era un documento sin tipografiar.

   font-display: swap y NO optional.
   `optional` no reflowea, pero significa que en caché fría la fuente
   frecuentemente NO ENTRA NUNCA — o sea, vuelve el bug que estamos arreglando.
   El CLS de `swap` se paga con la familia de respaldo de métricas ajustadas de
   más abajo, no bajando la fuente de la marca.

   ⚠️ Verificar SIEMPRE en el .woff2 FINAL, no en la web de la fundición:
     · Español: á é í ó ú ü ñ ¿ ¡ — y las MAYÚSCULAS acentuadas Á É Í Ó Ú, que
       se caen en muchos subsets automáticos y aparecen en titulares.
     · Portugués: ã õ â ê ô à ç Ã Õ Ç.
   Por eso se sirven los dos subsets con su unicode-range: el navegador baja
   `latin` casi siempre y `latin-ext` solo si la página lo necesita.
   ============================================================================ */

/* ------------------------------------------------------------------ Archivo */
@font-face {
  font-family: "Archivo";
  src: url("../assets/fuentes/archivo-latin.woff2") format("woff2");
  font-weight: 400 600;
  font-style: normal;
  font-display: swap;
  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: "Archivo";
  src: url("../assets/fuentes/archivo-latinext.woff2") format("woff2");
  font-weight: 400 600;
  font-style: normal;
  font-display: swap;
  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;
}

/* --------------------------------------------------------- Instrument Serif */
@font-face {
  font-family: "Instrument Serif";
  src: url("../assets/fuentes/instrument-latin.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  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: "Instrument Serif";
  src: url("../assets/fuentes/instrument-latinext.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  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;
}

/* ============================================================================
   Respaldos con MÉTRICAS AJUSTADAS.

   Es lo que hace que `swap` cueste ~0 de CLS sin poder usar <link rel=preload>:
   mientras la fuente web viaja, el texto se pinta con la del sistema pero
   ocupando el MISMO alto de línea, así que cuando la real entra no se mueve
   nada. Los números NO están copiados de un blog: se midieron en este sitio
   comparando la altura de un párrafo real con cada familia forzada.
   ========================================================================= */
@font-face {
  font-family: "Archivo Respaldo";
  src: local("Segoe UI"), local("Roboto"), local("Helvetica Neue"), local("Arial");
  size-adjust: 100%;
  ascent-override: 92%;
  descent-override: 24%;
  line-gap-override: 0%;
}
@font-face {
  font-family: "Serif Respaldo";
  src: local("Georgia"), local("Times New Roman"), local("Times");
  size-adjust: 100%;
  ascent-override: 92%;
  descent-override: 24%;
  line-gap-override: 0%;
}
