:root {
            --navy: #1F3286; /* Azul marino principal */
            --rose: #BD7CAC; /* Malva secundario */
            --green: #5FAD41; /* Verde terciario */
            --white: #ffffff; /* Blanco */
            --text-dark: #1F2937; /* Gris texto */
            --bg-light: #F9F0F5; /* Rosa muy suave exacto */
            --shadow-sm: 0 2px 8px rgba(31, 50, 134, 0.04);
            --shadow-md: 0 10px 30px rgba(31, 50, 134, 0.06);
            --shadow-lg: 0 20px 40px rgba(31, 50, 134, 0.08);
            --transition: all 0.35s cubic-bezier(0.25, 0.8, 0.25, 1);
            --radius-sm: 8px;
            --radius-md: 16px;
            --radius-lg: 24px;
        }
* {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }
html {
            scroll-behavior: smooth;
            scroll-padding-top: 110px; /* Previene que la cabecera fija tape las tarjetas al hacer scroll */
        }
body {
            font-family: 'Inter', sans-serif;
            background-color: var(--white);
            color: var(--text-dark);
            line-height: 1.7;
            -webkit-font-smoothing: antialiased;
            overflow-x: hidden;
        }
html body .container {
            width: 100%;
            max-width: 1200px;
            margin: 0 auto;
            padding: 0 60px; /* Incrementado a 60px para mayor consistencia y elegancia en el espaciado global */
        }
html body header {
            background-color: #FFFFFF; /* Fondo blanco sólido */
            box-shadow: 0 4px 20px rgba(31, 50, 134, 0.05); /* Sombra suave para destacar al hacer scroll */
            position: fixed; /* Cambiado a fixed para flotar e irse pegando en la parte superior sin alterar el flujo y centrado del hero */
            top: 0;
            left: 0;
            width: 100%;
            z-index: 1000;
            border-bottom: 1px solid var(--bg-light);
            padding: 16px 0;
            transition: var(--transition);
        }
html body header .container {
            max-width: 100% !important; /* Permite que la cabecera ocupe todo el ancho de pantalla y ancle el logo a la izquierda */
            padding: 0 60px !important; /* Relleno lateral consistente de 60px para alinearse exactamente con el hero */
        }
/* En móvil el relleno de 60px deja muy poco ancho útil (200px en un iPhone SE) */
        @media (max-width: 768px) {
html body .container.container, html body header .container.container { padding: 0 22px !important; }
}
@media (max-width: 480px) {
html body .container.container, html body header .container.container { padding: 0 16px !important; }
}
html body .nav-item.has-dropdown > a::after {
            content: '▾';
            font-size: 0.75rem;
            opacity: 0.6;
            transition: transform 0.25s ease;
        }
html body .dropdown-menu {
            position: absolute;
            top: 100%;
            left: 50%;
            transform: translateX(-50%) translateY(10px);
            background-color: var(--white);
            border: 1px solid rgba(31, 50, 134, 0.06);
            border-radius: var(--radius-sm);
            box-shadow: 0 10px 30px rgba(31, 50, 134, 0.08);
            width: max-content;
            min-width: 230px;
            padding: 10px 0;
            margin-top: 8px;
            list-style: none;
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            z-index: 1100;
            transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease;
        }
html body .dropdown-menu::before {
            content: '';
            position: absolute;
            top: -6px;
            left: 50%;
            transform: translateX(-50%) rotate(45deg);
            width: 10px;
            height: 10px;
            background-color: var(--white);
            border-left: 1px solid rgba(31, 50, 134, 0.06);
            border-top: 1px solid rgba(31, 50, 134, 0.06);
        }
html body .nav-burger {
            display: none;
            flex-direction: column;
            justify-content: center;
            gap: 5px;
            width: 44px;
            height: 44px;
            padding: 10px;
            margin-left: auto;
            background: none;
            border: 0;
            cursor: pointer;
        }
html.nav-mp-lock, html.nav-mp-lock body { overflow: hidden; }
html body .btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 16px 36px;
            border-radius: var(--radius-sm);
            font-family: 'Montserrat', sans-serif;
            font-size: 1rem;
            font-weight: 700;
            text-decoration: none;
            transition: var(--transition);
            cursor: pointer;
            border: 2px solid transparent;
        }
html body .hero-section {
            height: auto; /* Cambiado a auto para evitar ocultar contenido en pantallas reducidas */
            min-height: 58vh; /* Altura reducida: el hero deja de dominar la pantalla y cede protagonismo a la línea de vida */
            display: flex; /* Cambiado a flexbox para un centrado vertical impecable */
            align-items: stretch; /* Estira ambas columnas de arriba a abajo */
            background-color: #FFFFFF; /* Fondo blanco puro solicitado */
            position: relative;
            overflow: hidden; /* Ajustado para contener círculos de fondo */
            padding: 0; /* Sin paddings para estiramiento completo */
        }
html body .hero-minicards {
            display: grid;
            grid-template-columns: repeat(2, 1fr); /* Grilla de 2 columnas (2x2) */
            gap: 16px; /* Gap de 16px para separar bien las cards */
            margin: 24px 0 28px 0;
            width: 100%;
            align-items: stretch; /* Asegura que todas las cards en una fila tengan la misma altura */
        }
html body .minicard-mujer {
            background-color: #EFF4DA; /* Verde suave exacto */
            color: var(--text-dark);
        }
html body .slider-container {
            width: 100%;
            height: 100%; /* Estiramiento completo de arriba a abajo */
            position: absolute; /* Cambiado a absolute en desktop para heredar la altura del flex parent estirado */
            top: 0;
            left: 0;
            overflow: hidden;
            border: none; /* Sin bordes simulados */
            border-radius: 0; /* Sin esquinas recortadas para integrarse a la pantalla */
            box-shadow: none; /* Sin sombras separadoras */
        }
html body .floating-badge {
            position: absolute;
            background: rgba(255, 255, 255, 0.95);
            backdrop-filter: blur(8px);
            padding: 12px 20px;
            border-radius: var(--radius-md);
            box-shadow: var(--shadow-md);
            display: flex;
            align-items: center;
            gap: 12px;
            border: 1px solid rgba(255, 255, 255, 0.6);
            z-index: 15; /* Mayor que el slider */
            transition: var(--transition);
        }
html body .camino-section {
            padding: 100px 0;
            background-color: #FFFFFF; /* Fondo blanco */
            border-top: 1px solid rgba(31, 50, 134, 0.03);
            position: relative;
            overflow: hidden; /* Contiene círculos decorativos y ondas */
        }
html body .camino-section .container {
            width: 90%; /* Ancho del contenedor de la grilla al 90% */
            max-width: 1200px;
            padding: 0; /* Sin paddings restrictivos para ensanchar las cards */
            position: relative;
            z-index: 1;
        }
html body .camino-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr); /* Ocupan el 100% del contenedor dividido en dos */
            gap: 20px; /* Gap reducido de 24px a 20px */
            margin-top: 40px;
            width: 100%;
        }
html body .camino-card {
            background-color: var(--white);
            border: 1px solid #E5E7EB; /* Borde gris suave */
            border-radius: 16px; /* Borde redondeado de 16px */
            padding: 24px; /* Reducido de 32px a 24px para que el texto respire */
            display: flex;
            flex-direction: column;
            box-shadow: var(--shadow-sm);
            transition: var(--transition);
            position: relative;
            min-height: 250px; /* Altura mínima reducida a 250px para ser más compactas */
        }
html body .card-body-text {
            font-size: 15px; /* Aumentado a 15px */
            color: var(--text-dark);
            line-height: 1.6;
            margin-bottom: 24px;
            opacity: 0.95;
        }
html body .card-number {
            position: absolute;
            top: 15px;
            right: 24px;
            font-family: 'Montserrat', sans-serif;
            font-size: 80px;
            font-weight: 900;
            line-height: 1;
            color: var(--accent-color, var(--navy));
            opacity: 0.15;
            user-select: none;
            pointer-events: none; /* Evita cualquier interferencia con los clics */
            z-index: 1;
        }
html body .sintomas-section {
            background-color: #F7F9F2; /* Fondo verde muy suave solicitado */
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Ccircle cx='12' cy='12' r='1.5' fill='%23BD7CAC' fill-opacity='0.15'/%3E%3C/svg%3E");
            padding: 80px 0;
            border-top: 1px solid var(--bg-light);
            position: relative;
            overflow: hidden;
        }
html body .sintomas-section .container {
            position: relative;
            z-index: 1;
        }
html body .center-header {
            text-align: center;
            margin-bottom: 50px;
        }
html body .sintomas-subtitle {
            font-family: 'Montserrat', sans-serif;
            font-size: 0.85rem;
            font-weight: 700;
            letter-spacing: 2px;
            color: #BD7CAC; /* Malva */
            text-transform: uppercase;
            display: block;
            margin-bottom: 12px;
        }
html body .sintomas-title {
            font-family: 'Montserrat', sans-serif;
            font-size: 36px;
            font-weight: 800;
            color: #1F3286; /* Azul */
            margin-bottom: 16px;
            line-height: 1.25;
        }
html body .sintomas-description {
            font-size: 1.1rem;
            color: #6B7280; /* Gris */
            max-width: 600px;
            margin: 0 auto;
        }
html body .sintomas-container {
            display: grid;
            grid-template-columns: 1fr 380px;
            gap: 40px; /* Mantener un gap generoso para separar bien el grid del panel */
            width: 90%; /* Ajustado a 90% por solicitud */
            max-width: 1400px; /* Ajustado de 1300px a 1400px por solicitud */
            margin: 0 auto;
            align-items: flex-start;
        }
html body .sintomas-left {
            width: 100%;
        }
html body .sintomas-grid {
            display: grid;
            grid-template-columns: repeat(5, 1fr); /* 5 columnas */
            gap: 10px; /* Ajustado a 10px por solicitud del usuario */
            align-items: stretch;
            width: 100%;
        }
html body .sintoma-card {
            background-color: #F5F5F5; /* Fondo neutro */
            border: 1px solid #E5E7EB; /* Borde suave */
            border-radius: 12px;
            padding: 14px; /* Incrementado a 14px por solicitud */
            box-shadow: 0 2px 6px rgba(31, 50, 134, 0.01);
            transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: center;
            min-height: 90px; /* Altura mínima de 90px por solicitud */
            width: 100%;
            box-sizing: border-box; /* Previene desbordamiento por padding */
            overflow: hidden; /* Evita cualquier desbordamiento de contenido */
            cursor: pointer;
            user-select: none;
        }
html body .sintoma-card.active {
            background-color: #F4E8EF !important; /* Malva suave */
            border-color: #BD7CAC !important;
        }
html body .sintoma-card-special {
            cursor: default;
        }
html body .sintomas-right {
            width: 100%;
            position: sticky; /* Revertido a sticky */
            top: 100px; /* Top ajustado a 100px según la solicitud del usuario */
            z-index: 100;
            pointer-events: auto;
        }
html body .sintoma-detail-panel {
            background-color: #FFFFFF;
            border: 1px solid #E5E7EB;
            border-radius: 16px;
            padding: 20px;
            box-shadow: 0 8px 32px rgba(0,0,0,0.18);
            transform: translateY(-4px);
            height: fit-content; /* Altura auto-adaptable al contenido sin espacio vacío */
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            transition: all 0.3s ease;
            position: relative; /* Restablecido a relative */
            width: 380px;
            min-width: 380px;
            flex-shrink: 0;
            margin-left: auto;
        }
html body .sintoma-detail-panel.closed {
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(10px);
        }
html body .panel-close-btn {
            position: absolute;
            top: 16px;
            right: 18px;
            background: none;
            border: none;
            font-size: 26px;
            font-weight: 400;
            color: #9D5E8E; /* Malva */
            cursor: pointer;
            transition: color 0.25s ease, transform 0.25s ease;
            line-height: 1;
            padding: 4px;
            z-index: 10;
        }
html body .detail-link-secondary {
            font-family: 'Montserrat', sans-serif;
            font-size: 0.95rem;
            font-weight: 700;
            color: #BD7CAC; /* Malva */
            text-decoration: none;
            transition: all 0.3s ease;
            border-bottom: 2px solid transparent;
            padding-bottom: 2px;
            align-self: flex-start;
            margin-top: auto;
            white-space: nowrap;
        }
/* Responsividad para Split Layout */
        @media (max-width: 992px) {
html body .sintomas-container.sintomas-container {
                display: flex; /* Revertido de block a flex para el layout móvil */
                flex-direction: column;
                gap: 30px;
            }
html body .sintomas-left.sintomas-left, html body .sintomas-right.sintomas-right {
                width: 100% !important;
                position: static !important;
            }
html body .sintomas-right.sintomas-right {
                pointer-events: auto !important; /* Re-habilitar clics */
            }
html body .sintoma-detail-panel.sintoma-detail-panel {
                position: static !important;
                min-height: auto;
                margin-top: 24px;
            }
}
html body footer {
            background-color: var(--navy);
            color: rgba(255, 255, 255, 0.6);
            padding: 40px 0;
            text-align: center;
            font-size: 0.9rem;
            border-top: 1px solid rgba(255, 255, 255, 0.05);
        }
/* --- RESPONSIVIDAD LAPTOPS --- */
        @media (max-width: 1200px) {
html body .hero-content.hero-content {
                padding: 0 80px 0 60px !important; /* Consistente con padding vertical cero para centrado visual */
            }
html body .nav-menu.nav-menu {
                gap: 4px !important; /* Estrecha el espacio ligeramente en pantallas medianas */
            }
html body .nav-item > a {
                padding: 8px 10px !important; /* Ajuste responsivo de padding */
                font-size: 0.88rem !important; /* Reduce la tipografía levemente para mantener una sola línea */
            }
html body .nav-item a.nav-btn.nav-btn {
                padding: 10px 20px !important; /* Mantiene el botón con buena presencia */
                font-size: 0.85rem !important;
            }
}
/* --- RESPONSIVIDAD (MOBILE & TABLET) --- */
        @media (max-width: 1023px) {
html body .hero-section.hero-section {
                flex-direction: column; /* Cambiado a columna para flexbox responsivo */
                height: auto;
                min-height: auto;
                align-items: stretch;
            }
html body .hero-content.hero-content {
                flex: none;
                width: 100% !important;
                padding: 120px 24px 40px 24px !important; /* Relleno superior de 120px para librar el header fixed, inferior de 40px */
                text-align: center;
                box-sizing: border-box;
            }
html body .hero-minicards.hero-minicards {
                grid-template-columns: repeat(2, 1fr) !important;
                gap: 12px !important;
                text-align: left; /* Mantiene la alineación de texto a la izquierda en las mini-cards */
            }
html body .hero-ctas.hero-ctas {
                justify-content: center;
            }
html body .hero-image-wrapper.hero-image-wrapper {
                position: relative !important; /* Revertido a relative para fluir en una sola columna */
                width: 100% !important; /* Ancho completo */
                height: 450px !important; /* Altura fija en mobile */
                flex: none;
                align-self: stretch;
            }
html body .slider-container.slider-container {
                position: relative !important; /* Revertido a relative para el layout de una columna flotante */
                height: 400px;
                border-radius: var(--radius-lg);
                border: 8px solid var(--white);
                box-shadow: var(--shadow-lg);
                width: 90%;
                margin: 0 auto 40px auto;
            }
html body .badge-1.badge-1 {
                left: 10px;
                bottom: 60px;
            }
html body .badge-2.badge-2 {
                right: 10px;
                top: 40px;
            }
html body .camino-grid.camino-grid {
                grid-template-columns: repeat(2, 1fr) !important;
                gap: 20px !important;
            }
}
html body .decor-circle {
            position: absolute;
            pointer-events: none;
            z-index: 0;
            border-radius: 50%;
        }
html body .circle-hero-1 {
            width: 300px;
            height: 300px;
            left: -100px;
            top: 10%;
            opacity: 0.08; /* Opacidad sutil solicitada */
        }
html body .circle-hero-2 {
            width: 180px;
            height: 180px;
            left: 20%;
            bottom: -50px;
            opacity: 0.07;
        }
html body .minicard.active.minicard-mujer {
            border: 2px solid #5FAD41 !important;
            background-color: #E2EBB5 !important;
            box-shadow: 0 4px 16px rgba(95, 173, 65, 0.12);
        }
html body .hero-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 16px 32px;
            border-radius: 999px;
            font-family: 'Montserrat', sans-serif;
            font-size: 15px;
            font-weight: 600;
            text-decoration: none;
            cursor: pointer;
            transition: var(--transition);
            border: 2px solid transparent;
        }
html body .hero-btn-primary {
            background-color: var(--navy);
            color: #fff;
            box-shadow: 0 8px 20px rgba(31, 50, 134, 0.25);
        }
html body .hero-btn-primary:hover {
            transform: translateY(-3px);
            box-shadow: 0 12px 28px rgba(31, 50, 134, 0.32);
            background-color: #18266a;
        }
html body .hero-btn-secondary {
            background-color: transparent;
            color: var(--navy);
            border-color: rgba(31, 50, 134, 0.25);
        }
html body .hero-btn-secondary:hover {
            border-color: var(--navy);
            background-color: rgba(31, 50, 134, 0.04);
            transform: translateY(-3px);
        }
html body .hero-lifeline {
            position: relative;
            overflow: hidden;
            background: #ffffff;
            padding: 140px 0 90px; /* Top amplio para librar el header fijo */
        }
html body .hero-lifeline .container {
            position: relative;
            z-index: 2;
            max-width: 1280px; /* Más ancho que el resto del sitio: la línea es protagonista */
        }
html body .showcase-section {
            border-top: 1px solid var(--bg-light);
        }
html body .lifeline-section {
            background: linear-gradient(180deg, #ffffff 0%, var(--bg-light) 100%);
            padding: 90px 0 100px;
            overflow: hidden;
        }
html body .lifeline-hint {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            text-align: center;
            font-family: 'Montserrat', sans-serif;
            font-size: 12px;
            font-weight: 700;
            letter-spacing: 1.5px;
            text-transform: uppercase;
            color: var(--rose);
            margin: 0 0 26px;
        }
html body .lifeline {
            position: relative;
            max-width: 1160px;
            margin: 0 auto;
        }
html body .lifeline-inflection {
            position: absolute;
            top: 41px;
            left: 50%;
            width: 25%;
            height: 14px;
            border-radius: 14px;
            background: linear-gradient(90deg, rgba(157,94,142,0) 0%, rgba(157,94,142,0.55) 50%, rgba(157,94,142,0) 100%);
            filter: blur(2px);
            opacity: 0;
            z-index: 0;
            pointer-events: none;
        }
html body .lifeline-traveler {
            position: absolute;
            top: 40px;
            left: 12.5%;
            width: 18px;
            height: 18px;
            margin-left: -9px;
            border-radius: 50%;
            background: radial-gradient(circle, #ffffff 25%, rgba(255,255,255,0) 70%);
            box-shadow: 0 0 16px 6px rgba(189, 124, 172, 0.7);
            opacity: 0;
            z-index: 3;
            pointer-events: none;
        }
html body .lifeline.drawn .stage-1 .lifeline-dot { border-color: #5FAD41; background: #5FAD41; transition: background 0.5s ease 0.25s, border-color 0.5s ease 0.25s, transform 0.15s ease, box-shadow 0.15s ease; }
html body .lifeline-stage:hover .lifeline-dot { transform: scale(1.25); }
html body .lifeline-panel {
            max-width: 840px;
            margin: 44px auto 0;
            background: var(--panel-bg, #F5FAF0);
            border-radius: var(--radius-lg);
            border-left: 5px solid var(--accent, #5FAD41);
            box-shadow: var(--shadow-sm);
            min-height: 300px;
            position: relative;
            overflow: hidden;
            transition: background 0.45s ease, border-color 0.45s ease;
        }
html body .lifeline-panel-inner {
            box-sizing: border-box;
            width: 100%;
            min-height: 300px;
            padding: 26px 32px;
            display: flex;
            gap: 30px;
            align-items: center;
            opacity: 1;
            transition: opacity 0.4s ease;
        }
html body .lifeline-panel-body { flex: 1; min-width: 0; }
html body .lifeline-panel-figure {
            position: relative;
            flex-shrink: 0;
            width: 210px;
            align-self: stretch;
            display: flex;
            align-items: flex-end;
            justify-content: center;
        }
/* --- Responsive de la línea de vida --- */
        @media (max-width: 768px) {
html body .lifeline-title.lifeline-title { font-size: 28px; }
html body .lifeline-intro.lifeline-intro { font-size: 16px; }
html body .lifeline-stage-name.lifeline-stage-name { font-size: 13px; }
html body .lifeline-stage-age.lifeline-stage-age, html body .lifeline-stage-phase.lifeline-stage-phase { font-size: 11px; }
html body .lifeline-stage.lifeline-stage { padding: 34px 2px 0; }
html body .lifeline-panel-inner.lifeline-panel-inner {
                flex-direction: column;
                padding: 24px 22px;
            }
html body .lifeline-panel-figure.lifeline-panel-figure {
                order: -1;
                width: 100%;
                align-self: center;
                margin-bottom: 6px;
            }
html body .lifeline-panel-figure img { max-height: 150px; }
html body .lifeline-panel-title.lifeline-panel-title { font-size: 16px; }
html body .lifeline-panel-tag.lifeline-panel-tag { font-size: 11px; }
html body .lifeline-panel-desc.lifeline-panel-desc { font-size: 13px; }
html body .lifeline-panel-list li { font-size: 13px; }
html body .lifeline-panel-list.lifeline-panel-list { grid-template-columns: 1fr; }
}
/* Pantallas muy pequeñas: mantener la jerarquía (línea sobre el cuadro) */
        @media (max-width: 480px) {
html body .lifeline-stage.lifeline-stage { min-width: 0; padding-left: 1px; padding-right: 1px; }
html body .lifeline-stage-name.lifeline-stage-name { font-size: 11px; letter-spacing: 0; }
html body .lifeline-stage-age.lifeline-stage-age, html body .lifeline-stage-phase.lifeline-stage-phase { font-size: 10px; }
html body .lifeline-panel-title.lifeline-panel-title { font-size: 15px; }
html body .lifeline-panel-figure img { max-height: 135px; }
}
html body .chequeo-layout {
            display: grid;
            grid-template-columns: 1fr 460px;
            gap: 50px;
            max-width: 1220px;
            margin: 0 auto;
            align-items: start;
        }
html body .chequeo-ctas .hero-btn { padding: 11px 18px; font-size: 14px; }
@media (max-width: 480px) {
html body .chequeo-chip.chequeo-chip { padding: 12px 15px; font-size: 13px; }
}
html body .test-section { background: linear-gradient(180deg, #ffffff 0%, #FBFAFC 100%); padding: 80px 0; border-top: 1px solid var(--bg-light); }
html body .chequeo-anat { display: flex; justify-content: center; margin: 2px 0 14px; }
html body .testimonios-section { background: #ffffff; padding: 80px 0; border-top: 1px solid var(--bg-light); }
html body .pasos-section { background: #F9F7FB; padding: 80px 0; border-top: 1px solid var(--bg-light); }
html body .equipo-section { background: #ffffff; padding: 80px 0; border-top: 1px solid var(--bg-light); }
html body .site-footer { background: #1F3286; color: #b7c0e0; padding: 62px 0 26px; }
html body .mobile-cta-bar { display: none; }
@media (max-width: 768px) {

}
html body .hero-lifeline h1, html body .hero-lifeline h2, html body .hero-lifeline h3, html body .sintomas-section h2, html body .sintomas-section h3, html body .test-section h2, html body .test-section h3, html body .pasos-section h2, html body .equipo-section h2, html body .equipo-section h3, html body .testimonios-section h2, html body .showcase-section h2, html body .hero-lifeline h1, html body .hero-lifeline h2, html body .hero-lifeline h3, html body .sintomas-section h2, html body .sintomas-section h3, html body .test-section h2, html body .test-section h3, html body .pasos-section h2, html body .pasos-section h3, html body .equipo-section h2, html body .equipo-section h3, html body .testimonios-section h3, html body .showcase-section h3 { font-family: 'Montserrat', sans-serif; color: var(--navy); font-weight: 700; }
html body .hero-lifeline, html body .sintomas-section, html body .chequeo-section, html body .test-section, html body .hero-section, html body .pasos-section, html body .equipo-section, html body .testimonios-section, html body .site-footer, html body .mobile-cta-bar, html body .chequeo-siguiente, html body .hero-lifeline p, html body .sintomas-section p, html body .test-section p, html body .hero-section p, html body .pasos-section p, html body .equipo-section p, html body .testimonios-section p, html body .site-footer p { font-family: 'Inter', sans-serif; font-weight: 400; line-height: 1.7; }

/* El kit del tema fuerza MAYÚSCULAS y letter-spacing en <button>: neutralizar dentro de los bloques */
html body .hero-lifeline button, html body .hero-lifeline button span,
html body .sintomas-section button, html body .chequeo-section button,
html body .test-section button, html body .mobile-cta-bar a,
html body header .nav-btn { text-transform: none; letter-spacing: normal; }

/* ===== Overrides finales de fidelidad (clase doble: ganan a cualquier empate) ===== */
:root { font-size: 16px; }
html body h1.hero-title.hero-title { font-weight: 900; }
html body h2.sintomas-title.sintomas-title { font-weight: 800; letter-spacing: normal; }
html body h2.hero-title.hero-title { font-weight: 800; }
html body p.test-q.test-q { font-weight: 600; }
html body p.equipo-rol.equipo-rol { font-weight: 700; font-family: 'Montserrat', sans-serif; }
html body p.test-result-email.test-result-email { font-weight: 600; }
html body p strong, html body p b { font-weight: 700; }


/* === MO Bloques: fuentes incrustadas (el optimizador elimina el enlace de Google Fonts) === */
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7W0Q5n-wU.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;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7W0Q5nw.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;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7W0Q5n-wU.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;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7W0Q5nw.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;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7W0Q5n-wU.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;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7W0Q5nw.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;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7W0Q5n-wU.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;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7W0Q5nw.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;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq6R9WXZ0ppC8MLnbtrVK.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;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq6R9WXh0ppC8MLnbtg.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;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUSjIg1_i6t8kCHKm459WdhyyTh89ZNpQ.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;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.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;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUSjIg1_i6t8kCHKm459WdhyyTh89ZNpQ.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;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.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;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUSjIg1_i6t8kCHKm459WdhyyTh89ZNpQ.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;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.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;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUSjIg1_i6t8kCHKm459WdhyyTh89ZNpQ.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;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.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;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUSjIg1_i6t8kCHKm459WdhyyTh89ZNpQ.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;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.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;
}
