/* ==========================================================
   FOOTER V2
========================================================== */

.footer-v2 {
    background: #142135;
    /* Sustituir por el azul original del footer */
    color: #fff;
    padding: 72px 0 32px;
}

.footer-v2 a {
    color: inherit;
    text-decoration: none;
}

.footer-v2 ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.footer-v2 img {
    display: block;
    max-width: 100%;
}

/* ==========================================================
   LOGO
========================================================== */

.footer-v2__logo-row {

    display: flex;
    justify-content: center;

    margin-bottom: 42px;

}

.footer-v2__logo {

    width: 120px;
    height: auto;

}

/* ==========================================================
   REDES
========================================================== */

.footer-v2__social-row {

    display: flex;
    align-items: center;
    gap: 2rem;

    margin-bottom: 72px;

}

.footer-v2__divider {

    flex: 1;
    height: 1px;

    background: rgba(255, 255, 255, .22);

}

.footer-v2__social {

    display: flex;
    align-items: center;
    gap: 16px;

}

.footer-v2__social a {

    width: 46px;
    height: 46px;

    display: flex;
    justify-content: center;
    align-items: center;

    border-radius: 50%;

    border: 1px solid rgba(255, 255, 255, .18);

    transition:
        transform .30s ease,
        background .30s ease,
        border-color .30s ease,
        box-shadow .30s ease;

}

.footer-v2__social a:hover {

    background: rgba(255, 255, 255, .10);

    border-color: rgba(255, 255, 255, .35);

    transform: translateY(-4px);

    box-shadow: 0 12px 28px rgba(0, 0, 0, .18);

}

.footer-v2__social img {

    width: 18px;
    height: 18px;

}

/* ==========================================================
   NAVEGACIÓN
========================================================== */

.footer-v2__navigation {

    display: grid;

    grid-template-columns: repeat(5, max-content);

    justify-content: center;

    column-gap: 3.5rem;

    row-gap: 2rem;

    margin-bottom: 4.5rem;

}

.footer-v2__column {

    min-width: 170px;

}

.footer-v2__title {

    margin: 0 0 0.6rem;

    font-family: "Urbanist", sans-serif;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: .3px;

    color: #fff;

}

.footer-v2__list {

    display: flex;
    flex-direction: column;
    gap: .6rem;

}

.footer-v2__list a {

    position: relative;

    display: inline-flex;

    width: fit-content;

    font-family: "Open Sans", sans-serif;
    font-size: .92rem;
    font-weight: 400;

    color: rgba(255, 255, 255, .78);

    transition:
        color .30s ease,
        transform .30s ease;

}

.footer-v2__list a:hover {

    color: #fff;

    transform: translateX(6px);

}

.footer-v2__list a::after {

    content: "";

    position: absolute;

    left: 0;
    bottom: -4px;

    width: 0;
    height: 1px;

    background: #A1CEF5;

    transition: width .30s ease;

}

.footer-v2__list a:hover::after {

    width: 100%;

}

/* ==========================================================
   QUICK LINKS
========================================================== */

.footer-v2__quick-links {

    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;

    gap: 4rem;

    padding: 2.5rem 0;

    margin-bottom: 2.5rem;

    border-top: 1px solid rgba(255, 255, 255, .12);
    border-bottom: 1px solid rgba(255, 255, 255, .12);

}

.footer-v2__quick-link {

    display: inline-flex;
    align-items: center;
    gap: .65rem;

    position: relative;

    font-family: "Urbanist", sans-serif;
    font-size: 1rem;
    font-weight: 600;

    color: #fff;

    transition:
        color .30s ease,
        transform .30s ease;

}

.footer-v2__quick-link::after {

    content: "→";

    font-size: 1rem;

    transition:
        transform .30s ease;

}

.footer-v2__quick-link:hover {

    color: #A1CEF5;

    transform: translateY(-2px);

}

.footer-v2__quick-link:hover::after {

    transform: translateX(6px);

}

/* ==========================================================
   FOOTER BOTTOM
========================================================== */

.footer-v2__bottom {

    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;

    gap: 2rem;

    padding-top: .5rem;

}

.footer-v2__copyright {

    margin: 0;

    font-family: "Open Sans", sans-serif;
    font-size: .82rem;
    font-weight: 400;

    color: rgba(255, 255, 255, .68);

}

.footer-v2__privacy {

    position: relative;

    font-family: "Open Sans", sans-serif;
    font-size: .82rem;

    color: rgba(255, 255, 255, .68);

    transition: color .30s ease;

}

.footer-v2__privacy:hover {

    color: #fff;

}

/* Separador */

.footer-v2__privacy::before {

    content: "";

    position: absolute;

    left: -1rem;
    top: 50%;

    width: 1px;
    height: 12px;

    background: rgba(255, 255, 255, .25);

    transform: translateY(-50%);

}

/* ==========================================================
   CERTIFICACIONES
========================================================== */

.footer-v2__certifications {

    display: flex;
    align-items: center;
    gap: 1.5rem;

}

.footer-v2__certifications img {

    height: 34px;
    width: auto;

    opacity: .75;

    transition:
        opacity .30s ease,
        transform .30s ease;

}

.footer-v2__certifications img:hover {

    opacity: 1;

    transform: translateY(-2px);

}

/* ==========================================================
   RESPONSIVE
========================================================== */

@media (max-width:1199.98px) {

    .footer-v2 {

        padding: 64px 0 32px;

    }

    .footer-v2__navigation {

        grid-template-columns: repeat(3, max-content);

        justify-content: center;

        column-gap: 4rem;
        row-gap: 3rem;

    }

}

@media (max-width:991.98px) {

    .footer-v2 {

        padding: 56px 0 32px;

    }

    .footer-v2__logo {

        width: 100px;

    }

    .footer-v2__social-row {

        margin-bottom: 56px;

    }

    .footer-v2__navigation {

        grid-template-columns: repeat(2, max-content);

        justify-content: center;

        column-gap: 5rem;
        row-gap: 3rem;

    }

    .footer-v2__quick-links {

        gap: 2rem;

    }

    .footer-v2__bottom {

        gap: 1.5rem;

    }

}

@media (max-width:767.98px) {

    .footer-v2 {

        padding: 48px 0 28px;

    }

    .footer-v2__logo-row {

        margin-bottom: 32px;

    }

    .footer-v2__logo {

        width: 90px;

    }

    .footer-v2__social-row {

        display: flex;
        justify-content: center;
        align-items: center;

        margin-bottom: 48px;

    }



    .footer-v2__social {

        justify-content: center;

    }

    .footer-v2__social a {

        width: 42px;
        height: 42px;

    }

    .footer-v2__navigation {

        grid-template-columns: 1fr;

        row-gap: 2.5rem;

        text-align: center;

    }

    .footer-v2__column {

        max-width: none;

    }

    .footer-v2__list a {

        display: inline-block;

    }

    .footer-v2__quick-links {

        flex-direction: column;

        gap: 1.25rem;

    }

    .footer-v2__bottom {

        flex-direction: column;

        gap: 1.5rem;

        text-align: center;

    }

    .footer-v2__certifications {

        justify-content: center;

    }

}


@media (max-width:575.98px) {

    .footer-v2 {

        padding: 40px 0 24px;

    }

    .footer-v2__logo {

        width: 90px;

    }

    .footer-v2__social-row {

        gap: .75rem;

    }

    .footer-v2__divider {

        display: none;

    }

    .footer-v2__social {

        gap: 12px;

    }

    .footer-v2__social a {

        width: 40px;
        height: 40px;

    }

    .footer-v2__social img {

        width: 16px;
        height: 16px;

    }

    .footer-v2__title {

        margin-bottom: 1rem;

    }

    .footer-v2__quick-links {

        padding: 2rem 0;

    }

    .footer-v2__certifications {

        gap: 1rem;

    }

    .footer-v2__certifications img {

        height: 28px;

    }

}