
/*
 * Academia Bronze - Páginas informativas
 * Respaldo visual para la campaña de matrícula 2026-2027.
 */

body .ab-enrol-campaign {
    display: block !important;
    width: 100% !important;
    padding: 28px 0 !important;
    border-bottom: 1px solid #dce8ef !important;
    background: linear-gradient(90deg, #eef7f1, #f3f9fd, #eef7f1) !important;
}

body .ab-enrol-campaign .ab-enrol-wrap {
    width: min(1180px, calc(100% - 44px)) !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

body .ab-enrol-campaign .ab-enrol-box {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 25px !important;
    align-items: center !important;
    padding: 27px 30px !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 21px !important;
    color: #ffffff !important;
    background:
        radial-gradient(circle at 92% 12%, rgba(104,213,93,.34), transparent 29%),
        linear-gradient(130deg, #041f43, #0b6fb8 64%, #28b36a) !important;
    box-shadow: 0 16px 42px rgba(8,46,97,.18) !important;
}

body .ab-enrol-campaign .ab-enrol-box small {
    display: block !important;
    margin: 0 0 5px !important;
    color: #8bea74 !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    letter-spacing: .8px !important;
    text-transform: uppercase !important;
}

body .ab-enrol-campaign .ab-enrol-box h2 {
    margin: 0 0 7px !important;
    color: #ffffff !important;
    font-size: clamp(25px, 3vw, 35px) !important;
    line-height: 1.18 !important;
}

body .ab-enrol-campaign .ab-enrol-box p {
    max-width: 760px !important;
    margin: 0 !important;
    color: rgba(255,255,255,.92) !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
}

body .ab-enrol-campaign .ab-enrol-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    margin: 0 !important;
}

body .ab-enrol-campaign .ab-enrol-btn {
    min-height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 12px 19px !important;
    border: 0 !important;
    border-radius: 11px !important;
    color: #0b6fb8 !important;
    background: #ffffff !important;
    box-shadow: 0 12px 25px rgba(4,31,67,.20) !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

body .ab-enrol-campaign .ab-enrol-btn.ab-enrol-green {
    color: #ffffff !important;
    background: linear-gradient(135deg, #28b36a, #68d55d) !important;
}

body .ab-enrol-campaign .ab-enrol-btn:hover {
    transform: translateY(-2px);
}

@media (max-width: 760px) {
    body .ab-enrol-campaign {
        padding: 20px 0 !important;
    }

    body .ab-enrol-campaign .ab-enrol-wrap {
        width: min(100% - 28px, 1180px) !important;
    }

    body .ab-enrol-campaign .ab-enrol-box {
        grid-template-columns: 1fr !important;
        padding: 23px 20px !important;
    }

    body .ab-enrol-campaign .ab-enrol-actions {
        flex-direction: column !important;
        justify-content: stretch !important;
    }

    body .ab-enrol-campaign .ab-enrol-btn {
        width: 100% !important;
        white-space: normal !important;
    }
}


/* =========================================================
   CORRECCIÓN GENERAL PARA MÓVIL — VERSIÓN 1.3
   Evita textos cortados, desbordamientos y falta de márgenes.
   ========================================================= */
@media (max-width: 782px) {

    html,
    body {
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    body .ab-informa,
    body .ab-recursos,
    body .ab-trabaja,
    body .ab-compromisos,
    body .ab-legal,
    body .ab-equipo,
    body .ab-calendario,
    body .ab-opiniones {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        overflow-x: hidden !important;
    }

    body .abi-wrap,
    body .abr-wrap,
    body .abt-wrap,
    body .abc-wrap,
    body .abl-wrap,
    body .ae-wrap,
    body .acal-wrap,
    body .abo-wrap,
    body .ab-enrol-wrap {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    body .ab-informa *,
    body .ab-recursos *,
    body .ab-trabaja *,
    body .ab-compromisos *,
    body .ab-legal *,
    body .ab-equipo *,
    body .ab-calendario *,
    body .ab-opiniones * {
        min-width: 0 !important;
    }

    body .ab-informa h1,
    body .ab-recursos h1,
    body .ab-trabaja h1,
    body .ab-compromisos h1,
    body .ab-legal h1,
    body .ab-equipo h1,
    body .ab-calendario h1,
    body .ab-opiniones h1 {
        max-width: 100% !important;
        font-size: clamp(31px, 9vw, 40px) !important;
        line-height: 1.12 !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
        hyphens: auto !important;
    }

    body .ab-informa h2,
    body .ab-recursos h2,
    body .ab-trabaja h2,
    body .ab-compromisos h2,
    body .ab-legal h2,
    body .ab-equipo h2,
    body .ab-calendario h2,
    body .ab-opiniones h2 {
        max-width: 100% !important;
        font-size: clamp(26px, 7vw, 34px) !important;
        line-height: 1.2 !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
        hyphens: auto !important;
    }

    body .ab-informa h3,
    body .ab-recursos h3,
    body .ab-trabaja h3,
    body .ab-compromisos h3,
    body .ab-legal h3,
    body .ab-equipo h3,
    body .ab-calendario h3,
    body .ab-opiniones h3,
    body .ab-informa p,
    body .ab-recursos p,
    body .ab-trabaja p,
    body .ab-compromisos p,
    body .ab-legal p,
    body .ab-equipo p,
    body .ab-calendario p,
    body .ab-opiniones p,
    body .ab-informa li,
    body .ab-recursos li,
    body .ab-trabaja li,
    body .ab-compromisos li,
    body .ab-legal li,
    body .ab-equipo li,
    body .ab-calendario li,
    body .ab-opiniones li,
    body .ab-informa a,
    body .ab-recursos a,
    body .ab-trabaja a,
    body .ab-compromisos a,
    body .ab-legal a,
    body .ab-equipo a,
    body .ab-calendario a,
    body .ab-opiniones a {
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
        hyphens: auto !important;
    }

    body .abi-hero,
    body .abr-hero,
    body .abt-hero,
    body .abc-hero,
    body .abl-hero,
    body .ae-hero,
    body .acal-hero,
    body .abo-hero {
        padding-top: 54px !important;
        padding-bottom: 54px !important;
    }

    body .abi-grid,
    body .abr-grid,
    body .abt-grid,
    body .abc-grid,
    body .abl-grid,
    body .ae-grid-4,
    body .ae-grid-3,
    body .ae-grid-2,
    body .acal-grid-3,
    body .abo-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body .ab-enrol-campaign {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    body .ab-enrol-campaign .ab-enrol-wrap {
        width: 100% !important;
    }

    body .ab-enrol-campaign .ab-enrol-box {
        width: 100% !important;
        grid-template-columns: minmax(0, 1fr) !important;
        padding: 22px 18px !important;
        border-radius: 16px !important;
    }

    body .ab-enrol-campaign .ab-enrol-actions {
        width: 100% !important;
        flex-direction: column !important;
    }

    body .ab-enrol-campaign .ab-enrol-btn,
    body .abi-btn,
    body .abr-btn,
    body .abc-btn,
    body .abl-btn,
    body .acal-btn,
    body .ae-btn,
    body .abo-btn {
        width: 100% !important;
        max-width: 100% !important;
        white-space: normal !important;
        text-align: center !important;
        overflow-wrap: anywhere !important;
    }

    body iframe,
    body img,
    body video,
    body table {
        max-width: 100% !important;
    }
}

/* Móviles muy estrechos */
@media (max-width: 390px) {
    body .abi-wrap,
    body .abr-wrap,
    body .abt-wrap,
    body .abc-wrap,
    body .abl-wrap,
    body .ae-wrap,
    body .acal-wrap,
    body .abo-wrap,
    body .ab-enrol-wrap {
        padding-left: 17px !important;
        padding-right: 17px !important;
    }

    body .ab-informa h1,
    body .ab-recursos h1,
    body .ab-trabaja h1,
    body .ab-compromisos h1,
    body .ab-legal h1,
    body .ab-equipo h1,
    body .ab-calendario h1,
    body .ab-opiniones h1 {
        font-size: 30px !important;
    }
}

body .ab-enrol-campaign .ab-enrol-legal-note,
.ab-enrol-campaign .ab-enrol-legal-note {
    margin-top: 12px !important;
    padding: 12px 14px !important;
    border: 1px solid rgba(255,255,255,.25) !important;
    border-radius: 11px !important;
    color: rgba(255,255,255,.94) !important;
    background: rgba(4,31,67,.24) !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
}

@media (max-width: 782px) {
    body .ab-enrol-campaign .ab-enrol-legal-note,
    .ab-enrol-campaign .ab-enrol-legal-note {
        padding: 11px 12px !important;
        font-size: 12px !important;
    }
}
