/* 
 * Archivo centralizado de fuentes para IFS
 * Se debe importar en todas las páginas antes que otros archivos CSS
 */

/* Adobe Typekit - Fonts principales */
/* Las fuentes de Typekit se cargan desde el HTML con el link externo */

/* Fuentes de respaldo y normalización */
:root {
    /* Variables CSS para fuentes consistentes */
    --font-primary: "neue-haas-unica", "Neue Haas Unica", "Helvetica Neue", Arial, sans-serif;
    --font-secondary: "proxima-nova", "Proxima Nova", Arial, sans-serif;
    --font-condensed: "proxima-nova-condensed", "Proxima Nova Condensed", Arial, sans-serif;
    --font-fallback: "Helvetica Neue", Arial, sans-serif;
}

/* Normalización de fuentes para elementos base */
body {
    font-family: var(--font-primary);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin: 0;
    padding: 0;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-primary);
}

/* Clases utilitarias para fuentes */
.font-primary {
    font-family: var(--font-primary) !important;
}

.font-secondary {
    font-family: var(--font-secondary) !important;
}

.font-condensed {
    font-family: var(--font-condensed) !important;
}

.font-fallback {
    font-family: var(--font-fallback) !important;
}

/* Pesos de fuente consistentes */
.font-light {
    font-weight: 300;
}

.font-normal {
    font-weight: 400;
}

.font-medium {
    font-weight: 500;
}

.font-semibold {
    font-weight: 600;
}

.font-bold {
    font-weight: 700;
}

/* Asegurar que todos los elementos del navbar y footer usen las fuentes correctas */
.header-container,
.header-container * {
    font-family: var(--font-primary);
}

footer,
footer * {
    font-family: var(--font-primary);
}

/* Específicamente para elementos que pueden tener problemas */
.main-nav-logo span,
.cookie-banner,
.cookie-banner * {
    font-family: var(--font-primary);
}

/* Fallbacks específicos para elementos críticos */
.webtools-text,
.nav-links-top,
.main-nav-links a,
.footer-title,
.footer-links a,
.company-name,
.powered-by {
    font-family: var(--font-primary);
}

/* Reset básico para evitar conflictos con componentes */
/* Solo para elementos que no son navbar o footer */
body > *:not(.header-container):not(footer) {
    box-sizing: border-box;
}

/* Asegurar que las imágenes no interfieran */
img {
    max-width: 100%;
    height: auto;
}

/* Reset básico para listas fuera de componentes */
body > *:not(.header-container):not(footer) ul,
body > *:not(.header-container):not(footer) ol {
    margin: 0;
    padding: 0;
    list-style: none;
}
