/* ==========================================================
   H360 DESIGN SYSTEM
   Asistente de Recuperación Posparto PRO
   Versión 3.0
   Variables · Reset · Base · Utilidades
   © 2026 José Carlos Núñez Florido
========================================================== */


/* ==========================================================
   VARIABLES GLOBALES
========================================================== */

:root{

    /* ======================================================
       COLORES
    ====================================================== */

    --color-primary:#2563eb;
    --color-primary-dark:#1d4ed8;
    --color-primary-light:#dbeafe;

    --color-success:#16a34a;
    --color-warning:#ea580c;
    --color-danger:#dc2626;
    --color-info:#0ea5e9;

    --color-background:#f8fafc;
    --color-surface:#ffffff;

    --color-text:#1f2937;
    --color-text-light:#6b7280;

    --color-border:#e5e7eb;


    /* ======================================================
       TIPOGRAFÍA
    ====================================================== */

    --font-family:'Inter',sans-serif;

    --font-xs:.75rem;
    --font-sm:.875rem;
    --font-base:1rem;
    --font-md:1.125rem;
    --font-lg:1.35rem;
    --font-xl:2rem;
    --font-2xl:2.75rem;
    --font-3xl:3.5rem;


    /* ======================================================
       ESPACIADOS
    ====================================================== */

    --space-1:4px;
    --space-2:8px;
    --space-3:12px;
    --space-4:16px;
    --space-5:24px;
    --space-6:32px;
    --space-7:48px;
    --space-8:64px;
    --space-9:80px;
    --space-10:96px;


    /* ======================================================
       RADIOS
    ====================================================== */

    --radius-sm:8px;
    --radius-md:14px;
    --radius-lg:22px;
    --radius-xl:30px;
    --radius-round:999px;


    /* ======================================================
       SOMBRAS
    ====================================================== */

    --shadow-sm:
        0 2px 8px rgba(0,0,0,.05);

    --shadow-md:
        0 10px 30px rgba(0,0,0,.08);

    --shadow-lg:
        0 20px 60px rgba(0,0,0,.12);


    /* ======================================================
       TRANSICIONES
    ====================================================== */

    --transition-fast:.2s ease;

    --transition-normal:.3s ease;

    --transition-slow:.45s ease;


    /* ======================================================
       LAYOUT
    ====================================================== */

    --container:1200px;

}


/* ==========================================================
   RESET
========================================================== */

*{

    margin:0;
    padding:0;
    box-sizing:border-box;

}


*::before,
*::after{

    box-sizing:border-box;

}


html{

    scroll-behavior:smooth;

}


body{

    font-family:var(--font-family);

    background:var(--color-background);

    color:var(--color-text);

    line-height:1.7;

    -webkit-font-smoothing:antialiased;

    text-rendering:optimizeLegibility;

}


img{

    display:block;

    max-width:100%;

    height:auto;

}


svg{

    display:block;

}


a{

    text-decoration:none;

    color:inherit;

    transition:var(--transition-fast);

}


button{

    border:none;

    background:none;

    font-family:inherit;

    cursor:pointer;

}


input,
textarea,
select,
button{

    font:inherit;

}


ul,
ol{

    list-style:none;

}


/* ==========================================================
   SELECCIÓN DE TEXTO
========================================================== */

::selection{

    background:var(--color-primary);

    color:#ffffff;

}


/* ==========================================================
   SCROLLBAR
========================================================== */

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#f1f5f9;

}

::-webkit-scrollbar-thumb{

    background:var(--color-primary);

    border-radius:20px;

}

::-webkit-scrollbar-thumb:hover{

    background:var(--color-primary-dark);

}


/* ==========================================================
   CONTENEDOR
========================================================== */

.contenedor{

    width:min(100% - 32px,var(--container));

    margin-inline:auto;

}


/* ==========================================================
   UTILIDADES
========================================================== */

.oculto{

    display:none !important;

}


.centrado{

    text-align:center;

}


.texto-pequeno{

    font-size:var(--font-sm);

}


.texto-gris{

    color:var(--color-text-light);

}


.texto-primario{

    color:var(--color-primary);

}


.superficie{

    background:var(--color-surface);

}


.sombra{

    box-shadow:var(--shadow-md);

}


.redondeado{

    border-radius:var(--radius-lg);

}


/* ==========================================================
   ACCESIBILIDAD
========================================================== */

.salto-contenido{

    position:absolute;

    left:-9999px;

    top:auto;

}


.salto-contenido:focus{

    left:20px;

    top:20px;

    background:var(--color-primary);

    color:#fff;

    padding:12px 18px;

    border-radius:var(--radius-md);

    z-index:99999;

}


/* ==========================================================
========================================================== */
/* ==========================================================
   H360 DESIGN SYSTEM
   Header · Hero · Navegación
========================================================== */


/* ==========================================================
   HEADER
========================================================== */

.cabecera-principal{

    background:#ffffff;

    position:sticky;

    top:0;

    z-index:999;

    border-bottom:1px solid var(--color-border);

    backdrop-filter:blur(12px);

}


.cabecera-contenido{

    display:flex;

    justify-content:space-between;

    align-items:center;

    min-height:76px;

    gap:var(--space-5);

}


.marca{

    display:flex;

    align-items:center;

    gap:12px;

    font-weight:800;

    font-size:1.2rem;

    color:var(--color-primary);

}


.marca:hover{

    transform:translateY(-2px);

}


.marca-icono{

    font-size:2rem;

}


.enlace-portal{

    padding:12px 22px;

    border-radius:999px;

    background:var(--color-primary);

    color:#fff;

    font-weight:600;

    transition:var(--transition-normal);

}


.enlace-portal:hover{

    background:var(--color-primary-dark);

    transform:translateY(-2px);

}


/* ==========================================================
   HERO
========================================================== */

.hero{

    padding:90px 0;

    background:linear-gradient(
        135deg,
        #eff6ff,
        #ffffff
    );

}


.hero-contenido{

    text-align:center;

    max-width:900px;

}


.hero-icono{

    width:120px;

    height:120px;

    margin:0 auto 30px;

    border-radius:50%;

    background:#ffffff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:3.5rem;

    box-shadow:var(--shadow-md);

}


.hero-categoria{

    display:inline-flex;

    align-items:center;

    gap:8px;

    padding:8px 18px;

    background:var(--color-primary-light);

    color:var(--color-primary);

    border-radius:999px;

    font-size:.9rem;

    font-weight:700;

    margin-bottom:24px;

}


.hero h1{

    font-size:clamp(2.2rem,6vw,4rem);

    font-weight:900;

    line-height:1.1;

    margin-bottom:24px;

}


.hero-descripcion{

    font-size:1.25rem;

    color:var(--color-text-light);

    max-width:760px;

    margin:0 auto;

}


/* ==========================================================
   TARJETAS HERO
========================================================== */

.hero-caracteristicas{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));

    gap:20px;

    margin-top:50px;

}


.caracteristica{

    background:#ffffff;

    border-radius:20px;

    padding:22px;

    box-shadow:var(--shadow-sm);

    display:flex;

    flex-direction:column;

    gap:12px;

    align-items:center;

    transition:var(--transition-normal);

}


.caracteristica:hover{

    transform:translateY(-6px);

    box-shadow:var(--shadow-lg);

}


.caracteristica span{

    font-size:2rem;

}


.caracteristica strong{

    font-size:1rem;

}


/* ==========================================================
   ÚLTIMA ACTUALIZACIÓN
========================================================== */

.ultima-actualizacion{

    margin-top:45px;

    color:var(--color-text-light);

    font-size:.95rem;

}


/* ==========================================================
   NAVEGACIÓN INTERNA
========================================================== */

.indice-secciones{

    position:sticky;

    top:76px;

    z-index:200;

    background:#ffffff;

    border-bottom:1px solid var(--color-border);

}


.indice-contenido{

    display:flex;

    justify-content:center;

    flex-wrap:wrap;

    gap:14px;

    padding:18px 0;

}


.indice-contenido a{

    padding:10px 18px;

    border-radius:999px;

    background:#f3f4f6;

    font-weight:600;

    transition:var(--transition-fast);

}


.indice-contenido a:hover{

    background:var(--color-primary);

    color:#ffffff;

}


/* ==========================================================
   ETIQUETAS
========================================================== */

.etiqueta{

    display:inline-block;

    padding:8px 18px;

    border-radius:999px;

    background:var(--color-primary-light);

    color:var(--color-primary);

    font-weight:700;

    font-size:.9rem;

    margin-bottom:20px;

}


/* ==========================================================
   ENCABEZADOS DE SECCIÓN
========================================================== */

.seccion-encabezado{

    margin-bottom:40px;

}


.seccion-encabezado h2{

    font-size:2rem;

    margin-bottom:14px;

}


.seccion-encabezado p{

    color:var(--color-text-light);

    max-width:700px;

}


.seccion-encabezado.centrado{

    text-align:center;

}

.seccion-encabezado.centrado p{

    margin-inline:auto;

}


/* ==========================================================
========================================================== */
/* ==========================================================
   H360 DESIGN SYSTEM
   Formularios · Inputs · Botones
========================================================== */


/* ==========================================================
   SECCIÓN CALCULADORA
========================================================== */

.seccion-calculadora{

    padding:90px 0;

}


.calculadora-grid{

    display:grid;

    grid-template-columns:2fr 1fr;

    gap:40px;

    align-items:start;

}


/* ==========================================================
   TARJETAS
========================================================== */

.tarjeta{

    background:#ffffff;

    border-radius:var(--radius-lg);

    padding:40px;

    box-shadow:var(--shadow-md);

}


/* ==========================================================
   FORMULARIO
========================================================== */

#formularioHerramienta{

    display:flex;

    flex-direction:column;

    gap:28px;

}


/* ==========================================================
   CAMPOS
========================================================== */

.campo{

    display:flex;

    flex-direction:column;

    gap:10px;

}


.campo label{

    font-weight:700;

    color:var(--color-text);

}


.texto-ayuda{

    color:var(--color-text-light);

    font-size:.9rem;

}


.mensaje-error{

    color:var(--color-danger);

    font-size:.85rem;

    min-height:18px;

}


/* ==========================================================
   INPUTS
========================================================== */

input,
select,
textarea{

    width:100%;

    padding:18px 20px;

    border:2px solid var(--color-border);

    border-radius:var(--radius-md);

    background:#ffffff;

    transition:var(--transition-normal);

    font-size:1rem;

    outline:none;

}


input:hover,
select:hover,
textarea:hover{

    border-color:var(--color-primary);

}


input:focus,
select:focus,
textarea:focus{

    border-color:var(--color-primary);

    box-shadow:
        0 0 0 4px rgba(37,99,235,.15);

}


/* ==========================================================
   INPUT + UNIDAD
========================================================== */

.campo-unidad{

    position:relative;

}


.campo-unidad span{

    position:absolute;

    right:18px;

    top:50%;

    transform:translateY(-50%);

    color:var(--color-text-light);

    font-weight:600;

}


/* ==========================================================
   BOTONES
========================================================== */

.acciones-formulario{

    display:flex;

    gap:18px;

    flex-wrap:wrap;

    margin-top:10px;

}


.boton{

    display:inline-flex;

    justify-content:center;

    align-items:center;

    gap:10px;

    padding:18px 34px;

    border-radius:999px;

    font-weight:700;

    transition:var(--transition-normal);

    cursor:pointer;

}


.boton:hover{

    transform:translateY(-3px);

}


.boton-principal{

    background:var(--color-primary);

    color:#ffffff;

}


.boton-principal:hover{

    background:var(--color-primary-dark);

    box-shadow:var(--shadow-lg);

}


.boton-secundario{

    background:#eef2ff;

    color:var(--color-primary);

}


.boton-secundario:hover{

    background:var(--color-primary-light);

}


/* ==========================================================
   ESTADOS
========================================================== */

input:disabled,
select:disabled,
textarea:disabled{

    background:#f3f4f6;

    cursor:not-allowed;

    opacity:.7;

}


.boton:disabled{

    opacity:.6;

    cursor:not-allowed;

}


/* ==========================================================
   RESUMEN LATERAL
========================================================== */

.resumen-tarjeta{

    position:sticky;

    top:150px;

}


.resumen-icono{

    width:70px;

    height:70px;

    border-radius:50%;

    background:var(--color-primary-light);

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:2rem;

    margin-bottom:24px;

}


.lista-beneficios{

    display:flex;

    flex-direction:column;

    gap:22px;

    margin-top:30px;

}


.lista-beneficios li{

    display:flex;

    flex-direction:column;

    gap:6px;

}


.lista-beneficios strong{

    color:var(--color-text);

}


.lista-beneficios span{

    color:var(--color-text-light);

    font-size:.95rem;

}


.aviso-resumen{

    margin-top:40px;

    background:#eff6ff;

    border-left:5px solid var(--color-primary);

    padding:22px;

    border-radius:var(--radius-md);

}

.aviso-resumen strong{

    display:block;

    margin-bottom:10px;

}

.aviso-resumen p{

    color:var(--color-text-light);

}


/* ==========================================================
========================================================== */
/* ==========================================================
   H360 DESIGN SYSTEM
   Resultados · Interpretación · Recomendaciones
========================================================== */


/* ==========================================================
   SECCIÓN RESULTADOS
========================================================== */

.seccion-resultados{

    padding:90px 0;

}


.resultado-cabecera{

    text-align:center;

    margin-bottom:60px;

}


.resultado-cabecera h2{

    font-size:2.3rem;

    margin:18px 0;

}


.resultado-cabecera p{

    color:var(--color-text-light);

    max-width:700px;

    margin:auto;

}


/* ==========================================================
   GRID RESULTADOS
========================================================== */

.resultados-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

    gap:28px;

}


/* ==========================================================
   RESULTADO PRINCIPAL
========================================================== */

.resultado-principal{

    grid-column:1/-1;

    background:linear-gradient(
        135deg,
        var(--color-primary),
        var(--color-primary-dark)
    );

    color:#ffffff;

    border-radius:var(--radius-xl);

    padding:60px;

    text-align:center;

    box-shadow:var(--shadow-lg);

}


.resultado-icono{

    font-size:4rem;

    margin-bottom:20px;

}


.resultado-nombre{

    font-size:1.15rem;

    opacity:.9;

}


.resultado-numero{

    font-size:clamp(3rem,8vw,5rem);

    font-weight:900;

    margin:18px 0;

    line-height:1;

}


.resultado-numero small{

    font-size:1.2rem;

    font-weight:600;

}


.resultado-descripcion{

    max-width:700px;

    margin:auto;

    opacity:.95;

}


/* ==========================================================
   TARJETAS SECUNDARIAS
========================================================== */

.resultado-tarjeta{

    background:#ffffff;

    border-radius:var(--radius-lg);

    padding:32px;

    box-shadow:var(--shadow-md);

    transition:var(--transition-normal);

}


.resultado-tarjeta:hover{

    transform:translateY(-8px);

    box-shadow:var(--shadow-lg);

}


.mini-icono{

    font-size:2rem;

    display:block;

    margin-bottom:18px;

}


.resultado-tarjeta h3{

    margin-bottom:12px;

}


.resultado-tarjeta p{

    font-size:2rem;

    font-weight:800;

    color:var(--color-primary);

}


.resultado-ayuda{

    display:block;

    margin-top:14px;

    color:var(--color-text-light);

    font-size:.9rem;

}


/* ==========================================================
   INTERPRETACIÓN
========================================================== */

.interpretacion{

    display:flex;

    gap:26px;

    align-items:flex-start;

    margin-top:50px;

}


.interpretacion-icono{

    width:70px;

    height:70px;

    border-radius:50%;

    background:var(--color-success);

    color:#ffffff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:2rem;

    flex-shrink:0;

}


.interpretacion h3{

    margin-bottom:12px;

}


/* ==========================================================
   RECOMENDACIONES
========================================================== */

.recomendaciones{

    display:flex;

    gap:26px;

    align-items:flex-start;

    margin-top:30px;

}


.recomendaciones-icono{

    width:70px;

    height:70px;

    border-radius:50%;

    background:var(--color-warning);

    color:#ffffff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:2rem;

    flex-shrink:0;

}


#listaRecomendaciones{

    display:flex;

    flex-direction:column;

    gap:14px;

    margin-top:18px;

}


#listaRecomendaciones li{

    padding-left:28px;

    position:relative;

}


#listaRecomendaciones li::before{

    content:"✓";

    position:absolute;

    left:0;

    color:var(--color-success);

    font-weight:700;

}


/* ==========================================================
   AVISO PROFESIONAL
========================================================== */

.aviso-profesional{

    margin-top:50px;

    padding:24px 28px;

    border-left:6px solid var(--color-warning);

    background:#fff7ed;

    border-radius:var(--radius-md);

    color:var(--color-text);

}


.aviso-profesional strong{

    display:block;

    margin-bottom:10px;

}


/* ==========================================================
   COMPONENTES DESTACADOS
========================================================== */

.formula-tarjeta{

    background:#ffffff;

    padding:34px;

    border-radius:var(--radius-lg);

    box-shadow:var(--shadow-md);

    margin:40px 0;

}


.formula{

    font-size:2rem;

    font-weight:800;

    color:var(--color-primary);

    text-align:center;

    margin:30px 0;

}


.nota-informativa{

    background:#eff6ff;

    border-left:5px solid var(--color-info);

    padding:22px;

    border-radius:var(--radius-md);

}


/* ==========================================================
========================================================== */
/* ==========================================================
   H360 DESIGN SYSTEM
   Información · FAQ · Relacionadas · Footer · Responsive
   © 2026 Herramientas360
========================================================== */


/* ==========================================================
   SECCIONES GENERALES
========================================================== */

.seccion-informativa,
.seccion-alternativa,
.seccion-relacionadas{

    padding:90px 0;

}

.seccion-alternativa{

    background:#ffffff;

}

.contenido-estrecho{

    max-width:850px;

    margin:auto;

}

.contenido-estrecho p{

    margin-bottom:22px;

    color:var(--color-text-light);

}


/* ==========================================================
   GRID INFORMACIÓN
========================================================== */

.informacion-grid,
.consejos-grid,
.pasos-grid,
.relacionadas-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

    gap:28px;

    margin-top:50px;

}

.info-tarjeta,
.consejo-tarjeta,
.paso-tarjeta,
.relacionada-tarjeta{

    background:#ffffff;

    border-radius:var(--radius-lg);

    padding:34px;

    box-shadow:var(--shadow-md);

    transition:var(--transition-normal);

}

.info-tarjeta:hover,
.consejo-tarjeta:hover,
.paso-tarjeta:hover,
.relacionada-tarjeta:hover{

    transform:translateY(-8px);

    box-shadow:var(--shadow-lg);

}

.info-tarjeta span,
.consejo-tarjeta span{

    display:block;

    font-size:2rem;

    margin-bottom:20px;

}

.info-tarjeta h3,
.consejo-tarjeta h3,
.paso-tarjeta h3{

    margin-bottom:14px;

}

.info-tarjeta p,
.consejo-tarjeta p,
.paso-tarjeta p{

    color:var(--color-text-light);

}


/* ==========================================================
   PASOS
========================================================== */

.paso-numero{

    width:55px;

    height:55px;

    border-radius:50%;

    background:var(--color-primary);

    color:#ffffff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-weight:800;

    margin-bottom:22px;

}


/* ==========================================================
   FAQ
========================================================== */

.faq{

    margin-top:50px;

    display:flex;

    flex-direction:column;

    gap:18px;

}

.faq details{

    background:#ffffff;

    border-radius:var(--radius-md);

    padding:22px 28px;

    box-shadow:var(--shadow-sm);

}

.faq summary{

    cursor:pointer;

    font-weight:700;

    list-style:none;

    position:relative;

    padding-right:30px;

}

.faq summary::-webkit-details-marker{

    display:none;

}

.faq summary::after{

    content:"+";

    position:absolute;

    right:0;

    top:0;

    font-size:1.3rem;

    color:var(--color-primary);

}

.faq details[open] summary::after{

    content:"−";

}

.faq p{

    margin-top:18px;

    color:var(--color-text-light);

}


/* ==========================================================
   HERRAMIENTAS RELACIONADAS
========================================================== */

.relacionada-tarjeta{

    text-decoration:none;

    color:inherit;

}

.relacionada-tarjeta span{

    display:block;

    font-size:2rem;

    margin-bottom:20px;

}

.relacionada-tarjeta strong{

    display:inline-block;

    margin-top:20px;

    color:var(--color-primary);

}


/* ==========================================================
   FOOTER
========================================================== */

.pie-pagina{

    background:#111827;

    color:#ffffff;

    margin-top:80px;

}

.pie-contenido{

    display:grid;

    grid-template-columns:2fr 1fr;

    gap:50px;

    padding:70px 0;

}

.pie-marca p{

    margin-top:18px;

    color:#cbd5e1;

}

.pie-navegacion{

    display:flex;

    flex-direction:column;

    gap:16px;

}

.pie-navegacion a{

    color:#cbd5e1;

}

.pie-navegacion a:hover{

    color:#ffffff;

}

.copyright{

    border-top:1px solid rgba(255,255,255,.12);

    padding:25px 0;

    text-align:center;

    color:#94a3b8;

}


/* ==========================================================
   ANIMACIONES
========================================================== */

@keyframes aparecer{

    from{

        opacity:0;

        transform:translateY(20px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

@keyframes flotar{

    0%,100%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-8px);

    }

}

.animar{

    animation:aparecer .6s ease;

}

.flotar{

    animation:flotar 3s ease-in-out infinite;

}


/* ==========================================================
   RESPONSIVE
========================================================== */

@media (max-width:992px){

    .calculadora-grid{

        grid-template-columns:1fr;

    }

    .resumen-tarjeta{

        position:static;

    }

    .pie-contenido{

        grid-template-columns:1fr;

    }

}

@media (max-width:768px){

    .cabecera-contenido{

        flex-direction:column;

        justify-content:center;

        padding:20px 0;

    }

    .hero{

        padding:70px 0;

    }

    .hero-caracteristicas{

        grid-template-columns:1fr;

    }

    .indice-secciones{

        position:static;

    }

    .indice-contenido{

        justify-content:flex-start;

        overflow-x:auto;

        flex-wrap:nowrap;

        padding-bottom:12px;

    }

    .tarjeta{

        padding:28px;

    }

    .resultado-principal{

        padding:40px 24px;

    }

    .interpretacion,
    .recomendaciones{

        flex-direction:column;

    }

}

@media (max-width:480px){

    .hero h1{

        font-size:2rem;

    }

    .boton{

        width:100%;

    }

    .acciones-formulario{

        flex-direction:column;

    }

}


/* ==========================================================
   FIN DEL H360 DESIGN SYSTEM
========================================================== */

/* ==========================================================
   ASISTENTE DE RECUPERACIÓN POSPARTO PRO
========================================================== */

.hero-cta{margin:28px auto 18px;text-decoration:none}
.hero-confianza{max-width:760px;margin:0 auto 28px;padding:18px 22px;border:1px solid rgba(255,255,255,.35);border-radius:var(--radius-md);background:rgba(255,255,255,.1);text-align:left}
.hero-confianza p{margin:6px 0}

.formulario-tarjeta{min-width:0}
.progreso{margin:30px 0;padding:22px;border-radius:var(--radius-md);background:#f8f5fa}
.progreso-carril{height:10px;overflow:hidden;border-radius:999px;background:#e4dce8}
.progreso-carril span{display:block;width:0;height:100%;border-radius:inherit;background:#6d4c7d;transition:width .3s ease}
#progresoTexto{margin:10px 0 18px;text-align:right;font-size:.875rem;font-weight:700;color:#594064}
.progreso-pasos{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0;padding:0;list-style:none}
.progreso-paso{padding:10px;border-radius:10px;color:#6b7280;font-size:.8rem}
.progreso-paso strong,.progreso-paso span{display:block}
.progreso-paso.actual{outline:2px solid #6d4c7d;color:#4e315b;background:#fff}
.progreso-paso.completado{color:#285b40;background:#eaf6ef}

.formulario-seccion{margin:0;padding:26px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#fff}
.formulario-seccion legend{padding:0 10px;font-size:1.15rem;font-weight:800;color:var(--color-text)}
.formulario-seccion legend span{display:inline-grid;width:32px;height:32px;margin-right:8px;place-items:center;border-radius:50%;background:#6d4c7d;color:#fff}
.campos-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.opciones-columnas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.opciones-columnas h3{margin:0 0 14px;font-size:1rem}
.opciones-grid{display:grid;gap:10px}
.opciones-grid label,.sintomas-grid label{display:flex;align-items:center;gap:10px;padding:13px;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer}
.opciones-grid label:hover,.sintomas-grid label:hover{border-color:#6d4c7d;background:#faf7fb}
.opciones-grid input,.sintomas-grid input{width:20px;height:20px;flex:0 0 auto;accent-color:#6d4c7d}
.sintomas-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}
.estado-formulario{min-height:24px;color:#285b40;font-weight:700}
.campo-invalido{border-color:var(--color-danger)!important}
.campo-unidad input{padding-right:58px}

#botonCalcular[aria-busy="true"]::before{content:"";width:18px;height:18px;border:2px solid rgba(255,255,255,.5);border-top-color:#fff;border-radius:50%;animation:girar .7s linear infinite}
@keyframes girar{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.progreso-carril span,#botonCalcular[aria-busy="true"]::before{transition:none;animation:none}}

@media (max-width:768px){
    .progreso-pasos{grid-template-columns:repeat(2,1fr)}
    .campos-grid,.opciones-columnas{grid-template-columns:1fr}
    .sintomas-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:480px){
    .formulario-seccion{padding:20px 14px}
    .progreso{padding:16px 12px}
    .progreso-pasos,.sintomas-grid{grid-template-columns:1fr}
    .hero-confianza{padding:15px}
}

/* ==========================================================
   INFORME PERSONALIZADO
========================================================== */

.seccion-resultados{opacity:0;transform:translateY(18px)}
.seccion-resultados.informe-visible{opacity:1;transform:none;transition:opacity .45s ease,transform .45s ease}
.informe-cabecera{max-width:900px;margin-right:auto;margin-left:auto}
.informe-cabecera p{font-size:1.08rem;line-height:1.75}

.resumen-indicadores{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:18px;margin-bottom:30px}
.indicador-informe{min-width:0;padding:24px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-md)}
.indicador-informe>span{display:block;margin-bottom:14px;font-size:1.8rem}
.indicador-informe strong{display:block;color:#5a3869;font-size:1.18rem;line-height:1.3;overflow-wrap:anywhere}
.indicador-informe small{display:block;margin-top:8px;color:var(--color-text-light)}

.etapa-recuperacion{display:flex;align-items:center;gap:28px;margin-bottom:30px;border-left:8px solid #54866b}
.etapa-recuperacion h3{margin:10px 0;font-size:1.65rem}
.etapa-recuperacion p{line-height:1.7}
.etapa-icono{display:grid;width:84px;height:84px;flex:0 0 auto;place-items:center;border-radius:50%;background:#edf7f1;font-size:2.6rem}
.etapa-recuperacion[data-etapa-color="rosa"]{border-color:#b95f7b}.etapa-recuperacion[data-etapa-color="rosa"] .etapa-icono{background:#fbeef2}
.etapa-recuperacion[data-etapa-color="coral"]{border-color:#b75f50}.etapa-recuperacion[data-etapa-color="coral"] .etapa-icono{background:#fff0ed}
.etapa-recuperacion[data-etapa-color="verde"]{border-color:#54866b}.etapa-recuperacion[data-etapa-color="verde"] .etapa-icono{background:#edf7f1}
.etapa-recuperacion[data-etapa-color="turquesa"]{border-color:#347d7a}.etapa-recuperacion[data-etapa-color="turquesa"] .etapa-icono{background:#e9f7f6}
.etapa-recuperacion[data-etapa-color="azul"]{border-color:#416e9b}.etapa-recuperacion[data-etapa-color="azul"] .etapa-icono{background:#edf4fb}
.etapa-recuperacion[data-etapa-color="violeta"]{border-color:#6d4c7d}.etapa-recuperacion[data-etapa-color="violeta"] .etapa-icono{background:#f5eef8}

.cronologia-posparto{margin-bottom:30px;overflow:hidden}
.cronologia-posparto h3{margin-bottom:38px}
.cronologia-carril{position:relative;height:8px;margin:0 12px;border-radius:999px;background:linear-gradient(90deg,#d9a4b4,#5f8f73)}
.cronologia-posicion{position:absolute;z-index:2;top:50%;width:24px;height:24px;border:4px solid #fff;border-radius:50%;background:#5a3869;box-shadow:0 2px 9px rgba(0,0,0,.28);transform:translate(-50%,-50%);transition:left .45s ease}
.hito{position:absolute;top:50%;left:var(--posicion);width:12px;height:12px;border:2px solid #fff;border-radius:50%;background:#6d4c7d;transform:translate(-50%,-50%)}
.cronologia-etiquetas{display:grid;grid-template-columns:repeat(5,1fr);margin:18px 0 0;padding:0;list-style:none;color:var(--color-text-light);font-size:.8rem;text-align:center}
.cronologia-etiquetas li:first-child{text-align:left}.cronologia-etiquetas li:last-child{text-align:right}

.informe-dos-columnas{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.perfil-recuperacion h3{margin-bottom:22px}
.perfil-recuperacion dl{display:grid;gap:14px}
.perfil-recuperacion dl div{display:grid;grid-template-columns:135px 1fr;gap:14px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}
.perfil-recuperacion dt{font-weight:700;color:var(--color-text-light)}
.perfil-recuperacion dd{margin:0;overflow-wrap:anywhere}
.contador-sintomas{margin-top:22px;padding:14px;border-radius:var(--radius-md);background:#f5eef8;color:#51325e}
.contador-sintomas strong{font-size:1.4rem}
.informe-dos-columnas .interpretacion{margin-top:0}
.interpretacion p{line-height:1.75}

.prioridades-etapa{display:flex;align-items:flex-start;gap:26px;margin-top:30px;background:linear-gradient(135deg,#fff,#f8f3fa)}
#listaPrioridades{display:grid;gap:13px;margin-top:18px}
#listaPrioridades li{position:relative;padding-left:28px}
#listaPrioridades li::before{content:"✓";position:absolute;left:0;color:#3f7656;font-weight:900}
.solo-lectores{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

@media (max-width:900px){.informe-dos-columnas{grid-template-columns:1fr}}
@media (max-width:600px){
    .resumen-indicadores{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
    .indicador-informe{padding:18px 14px}
    .etapa-recuperacion,.prioridades-etapa{flex-direction:column}
    .cronologia-etiquetas{font-size:.68rem}
    .perfil-recuperacion dl div{grid-template-columns:1fr;gap:5px}
}
@media (max-width:360px){.resumen-indicadores{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.seccion-resultados.informe-visible,.cronologia-posicion{transition:none}}

/* ==========================================================
   CONTENIDO INTELIGENTE VISIBLE
========================================================== */

.contenido-posparto{margin-top:54px}
.contenido-posparto-cabecera{max-width:780px;margin:0 auto 32px;text-align:center}
.contenido-posparto-cabecera h2{margin:14px 0;font-size:clamp(1.65rem,4vw,2.25rem)}
.contenido-posparto-cabecera p{color:var(--color-text-light)}
.contenido-posparto-grid{display:grid;gap:28px}

.contenido-inteligente{position:relative;overflow:hidden;border-top:7px solid var(--contenido-acento,#6d4c7d);opacity:0;transform:translateY(14px);animation:entrada-contenido .45s ease forwards}
.contenido-inteligente:nth-child(2){animation-delay:.06s}.contenido-inteligente:nth-child(3){animation-delay:.12s}.contenido-inteligente:nth-child(4){animation-delay:.18s}
.contenido-inteligente[data-prioridad="alta"]{box-shadow:0 16px 38px rgba(72,49,82,.18);outline:2px solid color-mix(in srgb,var(--contenido-acento) 32%,transparent)}
.contenido-inteligente[data-prioridad="media"]{box-shadow:var(--shadow-md)}
.contenido-inteligente[data-prioridad="baja"]{box-shadow:var(--shadow-sm);background:#fcfcfd}
.contenido-inteligente[data-color="bosque"]{--contenido-acento:#397052;--contenido-suave:#edf6f1}
.contenido-inteligente[data-color="ciruela"]{--contenido-acento:#724a76;--contenido-suave:#f6eff7}
.contenido-inteligente[data-color="rosa"]{--contenido-acento:#a65370;--contenido-suave:#fbeef2}
.contenido-inteligente[data-color="violeta"]{--contenido-acento:#655095;--contenido-suave:#f2effa}
.contenido-inteligente[data-color="coral"]{--contenido-acento:#a45145;--contenido-suave:#fff0ed}
.contenido-inteligente[data-color="azul"]{--contenido-acento:#416e9b;--contenido-suave:#edf4fb}
.contenido-inteligente[data-color="verde"]{--contenido-acento:#397052;--contenido-suave:#edf6f1}
.contenido-inteligente[data-color="dorado"]{--contenido-acento:#80651d;--contenido-suave:#fbf6e7}
.contenido-inteligente[data-color="ambar"]{--contenido-acento:#8a5b18;--contenido-suave:#fff5df}
.contenido-inteligente[data-color="lima"]{--contenido-acento:#52702b;--contenido-suave:#f2f8e8}

.contenido-inteligente-cabecera{display:flex;align-items:center;gap:20px;margin-bottom:24px}
.contenido-inteligente-icono{display:grid;width:68px;height:68px;flex:0 0 auto;place-items:center;border-radius:20px;background:var(--contenido-suave);font-size:2.15rem}
.contenido-inteligente h3{margin-top:7px;font-size:1.55rem}
.contenido-nivel{display:inline-flex;padding:5px 10px;border-radius:999px;background:var(--contenido-suave);color:var(--contenido-acento);font-size:.76rem;font-weight:800;letter-spacing:.02em}
.contenido-etiqueta-tipo{display:block;margin-bottom:7px;color:#4b5563;font-size:.78rem;font-weight:800}
.contenido-resumen{margin-bottom:20px;color:#3f3444;font-size:1.06rem;font-weight:650;line-height:1.7}
.contenido-explicacion{line-height:1.8;color:var(--color-text)}
.contenido-puntos{display:grid;gap:12px;margin:24px 0;padding:20px;border-radius:var(--radius-md);background:#f8faf9}
.contenido-puntos li{position:relative;padding-left:28px}
.contenido-puntos li::before{content:"✓";position:absolute;left:0;color:var(--contenido-acento);font-weight:900}
.contenido-importante,.contenido-evolucion,.contenido-sabias{margin-top:18px;padding:20px 22px;border-radius:var(--radius-md)}
.contenido-importante{border-left:5px solid var(--contenido-acento);background:var(--contenido-suave)}
.contenido-evolucion{border:1px solid var(--contenido-acento);background:#fff}
.contenido-sabias{border:1px solid #ddd7e3;background:#fff}
.contenido-importante h4,.contenido-evolucion h4,.contenido-sabias h4{margin-bottom:8px;font-size:1rem;color:var(--contenido-acento)}
.contenido-importante p,.contenido-evolucion p,.contenido-sabias p{line-height:1.65}

@keyframes entrada-contenido{to{opacity:1;transform:none}}
@media (min-width:1024px){
    .contenido-posparto-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
    .contenido-inteligente[data-prioridad="alta"]{grid-column:1/-1}
}
@media (max-width:480px){
    .contenido-inteligente{padding:24px 18px}
    .contenido-inteligente-cabecera{align-items:flex-start}
    .contenido-inteligente-icono{width:54px;height:54px;border-radius:16px;font-size:1.7rem}
    .contenido-inteligente h3{font-size:1.3rem}
    .contenido-puntos,.contenido-importante,.contenido-evolucion,.contenido-sabias{padding:17px}
}
@media (prefers-reduced-motion:reduce){.contenido-inteligente{opacity:1;transform:none;animation:none}}

/* ==========================================================
   PLAN PERSONALIZADO DE RECUPERACIÓN
========================================================== */

.plan-recuperacion{margin-top:64px}
.plan-nivel{margin-bottom:30px;padding:26px;border-radius:var(--radius-lg);background:#f8faf9}
.plan-nivel>h3{margin-bottom:20px;font-size:1.25rem}
#planPrioridadAlta{border-left:6px solid #6d4c7d;background:#f7f1f9}
#planPrioridadMedia{border-left:6px solid #47775a}
#planPrioridadBaja{border-left:6px solid #7b8490;background:#fafafa}
.plan-prioridades-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}
.plan-prioridad{padding:20px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff}
.plan-prioridad-alta{box-shadow:0 8px 22px rgba(80,48,91,.12)}
.plan-prioridad-icono{display:block;margin-bottom:12px;font-size:1.7rem}
.plan-prioridad h4{margin-bottom:9px}
.plan-prioridad p{line-height:1.55}
.plan-prioridad small{display:block;margin-top:12px;color:var(--color-text-light);line-height:1.5}

.plan-consejos-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:38px}
.plan-consejo{min-width:0;border-top:5px solid #6d4c7d}
.plan-consejo-icono{display:block;margin-bottom:14px;font-size:2rem}
.plan-consejo h3{margin-bottom:12px;font-size:1.3rem}
.plan-consejo>p{line-height:1.7}
.plan-consejo-puntos{display:grid;gap:9px;margin-top:18px}
.plan-consejo-puntos li{position:relative;padding-left:25px;color:var(--color-text-light)}
.plan-consejo-puntos li::before{content:"✓";position:absolute;left:0;color:#47775a;font-weight:900}

.plan-objetivos,.plan-consejo-final{display:flex;align-items:flex-start;gap:24px;margin-top:30px}
.plan-objetivos>span,.plan-consejo-final>span{font-size:2.3rem}
.plan-objetivos h3,.plan-consejo-final h3{margin-bottom:10px}
#listaObjetivosPlan{display:grid;gap:11px;margin-top:18px}
#listaObjetivosPlan li{position:relative;padding-left:27px}
#listaObjetivosPlan li::before{content:"✓";position:absolute;left:0;color:#47775a;font-weight:900}
.plan-consejo-final{border:1px solid #ead9a6;background:linear-gradient(135deg,#fffdf7,#fff8e3)}
.plan-consejo-final p{line-height:1.75}

@media (max-width:768px){.plan-consejos-grid{grid-template-columns:1fr}}
@media (max-width:480px){
    .plan-nivel{padding:20px 15px}
    .plan-prioridades-grid{grid-template-columns:1fr}
    .plan-objetivos,.plan-consejo-final{flex-direction:column;padding:24px 18px}
}

/* ==========================================================
   TIMELINE INTELIGENTE
========================================================== */

.timeline-inteligente{margin-top:68px}
.timeline-hitos{display:grid;grid-template-columns:repeat(7,minmax(210px,1fr));gap:18px;margin:0 0 34px;padding:18px 4px 28px;overflow-x:auto;list-style:none;scrollbar-width:thin}
.timeline-hito{position:relative;min-width:0;padding:22px;border:1px solid var(--color-border);border-top:6px solid #8a929c;border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-sm);animation:entrada-contenido .4s ease both}
.timeline-hito::after{content:"";position:absolute;z-index:-1;top:35px;left:100%;width:19px;height:2px;background:#cfd4d9}
.timeline-hito:last-child::after{display:none}
.timeline-hito[data-estado="completado"]{border-top-color:#4d7c61;background:#f7fbf8}
.timeline-hito[data-estado="actual"]{border:2px solid #6d4c7d;border-top-width:7px;box-shadow:0 12px 28px rgba(78,49,91,.17)}
.timeline-hito[data-estado="proximo"]{border-top-color:#96701e;background:#fffdf6}
.timeline-hito[data-estado="futuro"]{background:#fafafa}
.timeline-hito-cabecera{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.timeline-hito-icono{font-size:1.8rem}
.timeline-hito-estado{color:#45505c;font-size:.72rem;font-weight:800}
.timeline-hito-etiqueta{display:block;margin-bottom:6px;color:var(--color-text-light)}
.timeline-hito h3{margin-bottom:11px;font-size:1.2rem}
.timeline-hito>p{line-height:1.55}
.timeline-cambios{display:grid;gap:8px;margin-top:15px;color:var(--color-text-light);font-size:.88rem}
.timeline-cambios li{position:relative;padding-left:17px}.timeline-cambios li::before{content:"•";position:absolute;left:0;color:#6d4c7d}
.timeline-prioridad{margin-top:17px;padding-top:14px;border-top:1px solid var(--color-border)}
.timeline-prioridad strong{display:block;margin-bottom:7px;font-size:.88rem}.timeline-prioridad p{color:var(--color-text-light);font-size:.82rem;line-height:1.45}

.timeline-actual,.timeline-siguiente,.timeline-recuerda{display:flex;align-items:flex-start;gap:24px;margin-top:24px}
.timeline-actual{border-left:7px solid #6d4c7d;background:#f8f2fa}
.timeline-siguiente{border-left:7px solid #96701e;background:#fffdf6}
.timeline-recuerda{border-left:7px solid #4d7c61;background:#f5faf7}
.timeline-destacado-icono{font-size:2.25rem;flex:0 0 auto}
.timeline-actual h3,.timeline-siguiente h3,.timeline-recuerda h3{margin:9px 0 13px}
.timeline-siguiente p,.timeline-recuerda p{line-height:1.7}
#timelineActualContenido{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
#timelineActualContenido li{padding:15px;border-radius:var(--radius-md);background:#fff}
#timelineActualContenido strong{display:block;margin-bottom:7px;color:#583465}
#timelineActualContenido p{color:var(--color-text-light);font-size:.9rem;line-height:1.55}

@media (max-width:768px){
    .timeline-hitos{display:flex;flex-direction:column;gap:16px;overflow:visible;padding-left:22px}
    .timeline-hito{width:100%}
    .timeline-hito::after{top:100%;left:-14px;width:2px;height:18px}
    .timeline-hito::before{content:"";position:absolute;top:27px;left:-27px;width:12px;height:12px;border:3px solid #fff;border-radius:50%;background:#6d4c7d;box-shadow:0 0 0 2px #6d4c7d}
    #timelineActualContenido{grid-template-columns:1fr}
}
@media (max-width:480px){.timeline-actual,.timeline-siguiente,.timeline-recuerda{flex-direction:column;padding:24px 18px}}
@media (prefers-reduced-motion:reduce){.timeline-hito{animation:none}}

/* ==========================================================
   SEÑALES DE ALERTA Y CUÁNDO CONSULTAR
========================================================== */

.alertas-posparto{margin-top:70px}
.alertas-niveles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.alerta-nivel{border-top:7px solid var(--alerta-acento);background:var(--alerta-fondo)}
.alerta-nivel>header{display:flex;align-items:flex-start;gap:16px;margin-bottom:16px}
.alerta-nivel>header>span{font-size:1.7rem}
.alerta-nivel small{display:block;margin-bottom:4px;color:var(--color-text-light);font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.alerta-nivel h3{font-size:1.35rem}
.alerta-nivel>p{margin-bottom:20px;line-height:1.65}
.alerta-habitual{--alerta-acento:#47775a;--alerta-fondo:#f6fbf8}
.alerta-consulta{--alerta-acento:#96701e;--alerta-fondo:#fffdf5}
.alerta-urgente{--alerta-acento:#a24747;--alerta-fondo:#fff8f8;grid-column:1/-1}
.alerta-nivel ul{display:grid;gap:13px}
.alerta-urgente ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}
.alerta-urgente li{position:relative;padding:12px 12px 12px 31px;border-radius:var(--radius-md);background:#fff;line-height:1.55}
.alerta-urgente li::before{content:"•";position:absolute;left:15px;color:#923f3f;font-weight:900}
.alerta-item{display:flex;align-items:flex-start;gap:13px;padding:15px;border-radius:var(--radius-md);background:#fff}
.alerta-item-icono{flex:0 0 auto;font-size:1.3rem}
.alerta-item h4{margin-bottom:6px;font-size:1rem}
.alerta-item p{color:#4b5563;font-size:.91rem;line-height:1.55}
.alertas-pedir-ayuda{display:flex;align-items:flex-start;gap:22px;margin-top:28px;border-left:7px solid #567495;background:#f4f8fc}
.alertas-pedir-ayuda>span{font-size:2.2rem}.alertas-pedir-ayuda h3{margin-bottom:10px}.alertas-pedir-ayuda p{line-height:1.7}
.alertas-recuerda{margin-top:22px;padding:20px 24px;border:1px solid #d7dde4;border-radius:var(--radius-md);background:#fafbfc}
.alertas-recuerda strong{display:block;margin-bottom:7px}.alertas-recuerda p{line-height:1.65}

@media (max-width:768px){
    .alertas-niveles{grid-template-columns:1fr}
    .alerta-urgente{grid-column:auto}
    .alerta-urgente ul{grid-template-columns:1fr}
}
@media (max-width:480px){
    .alerta-nivel{padding:24px 18px}
    .alertas-pedir-ayuda{flex-direction:column;padding:24px 18px}
}

/* ==========================================================
   FAQ, FUENTES Y CONFIANZA
========================================================== */

.seo-confianza{margin-top:72px}
.faq-posparto-lista{display:grid;gap:14px}
.faq-posparto-item{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-sm)}
.faq-posparto-item summary{position:relative;padding:21px 55px 21px 22px;cursor:pointer;font-weight:800;line-height:1.45;list-style:none}
.faq-posparto-item summary::-webkit-details-marker{display:none}
.faq-posparto-item summary::after{content:"+";position:absolute;top:50%;right:22px;color:#654273;font-size:1.5rem;transform:translateY(-50%)}
.faq-posparto-item[open] summary::after{content:"−"}
.faq-posparto-item summary:focus-visible{outline:3px solid #315f9b;outline-offset:3px;border-radius:var(--radius-md)}
.faq-posparto-respuesta{padding:0 22px 24px;border-top:1px solid var(--color-border)}
.faq-posparto-respuesta p{padding-top:20px;line-height:1.8;color:#424b56}
.microcopy-posparto{max-width:820px;margin:40px auto;color:var(--color-text-light);font-size:1.02rem;line-height:1.75;text-align:center}

.fuentes-posparto{display:flex;align-items:flex-start;gap:24px;margin-top:38px;border-left:7px solid #557698;background:#f6f9fc}
.fuentes-posparto>span{font-size:2.3rem}.fuentes-posparto h2{margin-bottom:10px;font-size:1.6rem}.fuentes-posparto p{line-height:1.7}
#listaFuentesPosparto{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;margin-top:20px}
#listaFuentesPosparto li{position:relative;padding-left:20px}#listaFuentesPosparto li::before{content:"↗";position:absolute;left:0;color:#315f76}
#listaFuentesPosparto a{color:#274f75;text-decoration:underline;text-underline-offset:3px}

.relacionadas-posparto-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px}
.relacionada-posparto{display:block;padding:24px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#fff;color:var(--color-text);text-decoration:none;box-shadow:var(--shadow-sm);transition:var(--transition-normal)}
.relacionada-posparto:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.relacionada-posparto:focus-visible{outline:3px solid #315f9b;outline-offset:3px}
.relacionada-posparto h3{margin-bottom:10px;font-size:1.12rem}.relacionada-posparto p{line-height:1.55}.relacionada-posparto small{display:block;margin-top:14px;color:var(--color-text-light);line-height:1.45}
.confianza-final{display:flex;align-items:flex-start;gap:24px;margin-top:48px;border:2px solid #d7c5df;background:linear-gradient(135deg,#faf6fc,#f4f8f6)}
.confianza-final>span{font-size:2.5rem}.confianza-final h2{margin-bottom:12px;font-size:1.65rem}.confianza-final p{line-height:1.75}.confianza-final small{display:block;margin-top:15px;color:var(--color-text-light)}

@media (max-width:600px){
    #listaFuentesPosparto{grid-template-columns:1fr}
    .fuentes-posparto,.confianza-final{flex-direction:column;padding:24px 18px}
    .faq-posparto-item summary{padding:18px 48px 18px 16px}
    .faq-posparto-respuesta{padding:0 16px 20px}
}
@media (prefers-reduced-motion:reduce){.relacionada-posparto{transition:none}}
