/* Identidad tipográfica del cliente. Sin cambios de paleta ni contenido.
 * Fuentes OFL locales; ver fonts/README.md. Compartido con Gutenberg.
 */

@font-face {
  font-family: "Anton";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/anton-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: "Anton";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/anton-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: 400;
  font-display: swap;
  src: url("fonts/lato-regular-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-regular-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-bold-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-bold-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: italic;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/lato-italic-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: italic;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/lato-italic-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: italic;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/lato-bold-italic-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: italic;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/lato-bold-italic-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: "Montserrat";
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url("fonts/montserrat-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: "Montserrat";
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url("fonts/montserrat-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;
}

:root, .editor-styles-wrapper {
  --kb-font-display: "Anton", Impact, sans-serif;
  --kb-font-heading: "Montserrat", Arial, sans-serif;
  --kb-font-body: "Lato", Arial, sans-serif;
  /* Escala semántica corporativa. Se aplica por fases para no sobrescribir
   * excepciones de composición que aún no se hayan validado página a página. */
  --kb-heading-color: #333333;
  --kb-heading-color-on-dark: #fff;
  --kb-heading-h1: 400 clamp(3.5rem, 4.1vw, 5.2rem)/.98 var(--kb-font-display);
  --kb-heading-h1-tracking: .01em;
  --kb-heading-h2: 700 1.75rem/1.5 var(--kb-font-heading);
  --kb-heading-h2-tracking: normal;
  --kb-heading-h3: 700 clamp(1.15rem, 2vw, 1.35rem)/1.5 var(--kb-font-heading);
  --kb-heading-h4: 700 1rem/1.4 var(--kb-font-heading);
  --kb-heading-h5: 700 .9rem/1.4 var(--kb-font-heading);
  --kb-heading-h6: 700 .8rem/1.4 var(--kb-font-heading);
  --global-body-font-family: var(--kb-font-body);
  --global-heading-font-family: var(--kb-font-heading);
  --global-primary-nav-font-family: var(--kb-font-heading);
}

/* El texto de lectura no hereda la familia de un bloque estructural. */
body, .editor-styles-wrapper,
:is(body, .editor-styles-wrapper) :is(p, li, dt, dd, td, th, blockquote, figcaption, input, textarea) {
  font-family: var(--kb-font-body);
}

:is(body, .editor-styles-wrapper) h1 {
  font: var(--kb-heading-h1);
  font-synthesis: none;
  letter-spacing: var(--kb-heading-h1-tracking);
  text-transform: uppercase;
}

:is(body, .editor-styles-wrapper) :is(h2, h3, h4, h5, h6),
:is(body, .editor-styles-wrapper) :is(
  nav, nav li, nav a, button, button p, select, label, summary,
  .wp-block-button__link, .wp-block-button__link p, .button, .kb-primary-link,
  .kb-breadcrumbs, .kb-breadcrumbs li, .kb-breadcrumbs a,
  .kb-pillar-toc, .kb-pillar-toc li, .kb-pillar-toc a,
  .kb-eyebrow, .kb-badge, .kb-chip, .kb-tag, .kb-tags, .kb-tags a,
  .entry-taxonomies, .entry-taxonomies a, .tags-links, .tags-links a,
  .kb-facility-card-meta, .kb-facility-card-meta li,
  .kb-search-result-type, .kb-home-resource-type, .kb-home-citable-label,
  .kb-home-subtitle, .kb-home-city span, .kb-footer-cta-button,
  .primary-menu-container li, .primary-menu-container a,
  .mobile-navigation li, .mobile-navigation a,
  .kb-text-link, .kb-text-link a, .kb-home-text-link, .kb-home-text-link a, .kb-home-card-link,
  .kb-directory-result-count, .kb-search-count
) {
  font-family: var(--kb-font-heading);
}

/* Anton no tiene negrita: no sintetizar pesos 800/950 heredados.
 * Las clases kb-section-number/kb-stat-number permiten reutilizar el papel
 * tipográfico sin insertar números ni modificar textos editoriales. */
:is(body, .editor-styles-wrapper) :is(
  .kb-section-number, .kb-stat-number,
  .kb-step-badge,
  .kb-home-card-number, .kb-numbered-panel > .kb-numbered-panel__number,
  .kb-home-equipment-item > span
),
:is(body, .editor-styles-wrapper) .kb-home-numbered li::before {
  font-family: var(--kb-font-display);
  font-weight: 400;
  font-synthesis: none;
  letter-spacing: .01em;
}
