/* Actualización para asegurar consistencia en la tipografía Montserrat */

/* Definición de la fuente principal con fallbacks adecuados */
:root {
    --font-primary: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    /* Resto de tus variables... */
}

/* Aseguramos que el body use el peso correcto */
body {
    font-family: var(--font-primary);
    font-weight: 400; /* Peso normal, no light ni bold */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

/* Definimos claramente los pesos para cada elemento */
p, li, span, a, button, input, textarea, select, label {
    font-family: var(--font-primary);
    font-weight: 400; /* Peso normal para la mayoría del texto */
}

/* Para textos que quieres más ligeros */
p.light, .text-light, .hero-description, .section-subtitle {
    font-weight: 300;
}

/* Para textos que necesitan un poco más de énfasis pero no negrita completa */
.semi-bold, .nav-link, .btn, .footer-title {
    font-weight: 500;
}

/* Para textos en negrita */
strong, b, .text-bold {
    font-weight: 600;
}

/* Para textos muy destacados */
.text-extra-bold {
    font-weight: 700;
}

/* Aseguramos que los encabezados usen la fuente secundaria */
h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-secondary);
    font-weight: 400; /* Peso normal para encabezados */
}

/* Ajuste específico para botones */
.btn, button {
    font-family: var(--font-primary);
    font-weight: 500; /* Semi-bold para botones */
    letter-spacing: 0.05em;
}
/* Ajuste específico para dispositivos Apple */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
    body, p, li, span, a, button, input, textarea, select, label {
        -webkit-text-stroke: 0.45px rgba(0, 0, 0, 0.1);
    }
    
    .light, p.light, .text-light, .hero-description, .section-subtitle {
        -webkit-text-stroke: 0.25px rgba(0, 0, 0, 0.1);
    }
}
/* Prevenir FOUT (Flash of Unstyled Text) */
body {
    opacity: 0.98;
    transition: opacity 0.2s ease-in;
}

body.fonts-loaded {
    opacity: 1;
}
