/* ============================================
   Aviso de Privacidad
   ============================================ */

/* --- Contenedor --- */
.apriv {
    counter-reset: seccion;
    padding-top: 86px;
    padding-bottom: 90px;
    background-color: #fff;
}

/* --- Encabezados --- */
.apriv h1 {
    font-size: 2.5rem;
    font-weight: bolder;
    text-align: center;
}

.apriv h2 {
    counter-increment: seccion;
    position: relative;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.4;
    padding-left: 2.5rem;
    margin-top: 2rem;
    margin-bottom: 0.75rem;
}

.apriv h2::before {
    content: counter(seccion, upper-roman) ".";
    position: absolute;
    top: 0;
    left: 0;
    font-weight: 700;
}

.apriv h3 {
    position: relative;
    font-size: 1.5rem;
    font-weight: 600;
    color: #333;
    padding-left: 2rem;
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
}

.apriv h3::before {
    content: "›";
    position: absolute;
    top: 0;
    left: 0.5rem;
    font-weight: 700;
}

/* --- Cuerpo de texto y listas --- */
.apriv p,
.apriv ul li {
    font-size: 1.25rem;
    line-height: 1.6;
    margin-top: 0.75em;
    margin-bottom: 0.75em;
    padding-left: 0.5rem;
}

.apriv-romanos {
    list-style-type: lower-roman;
    padding-left: 2rem;
}

.apriv-requisitos {
    list-style-type: disc;
    padding-left: 2rem;
}

/* --- Ajustes responsive --- */
@media (max-width: 991.98px) {
    .apriv {
        padding-bottom: 120px;
    }
}

@media (max-width: 767.98px) {
    .apriv {
        padding-bottom: 200px;
    }

    .apriv h1 {
        font-size: 1.75rem;
    }

    .apriv h2 {
        font-size: 1.5rem;
    }

    .apriv h3 {
        font-size: 1.3rem;
    }

    .apriv p,
    .apriv ul li {
        font-size: 1.2rem;
    }
}
