/* =====================================================
   COSTA RENT | PASO 41.1-A
   FOOTER MEDITERRANEAN PREMIUM
   ===================================================== */

footer.cr-site-footer {

    position: relative !important;
    isolation: isolate;

    overflow: hidden !important;

    background:
        radial-gradient(
            ellipse at 96% 8%,
            rgba(52,149,197,.24),
            transparent 43%
        ),
        radial-gradient(
            ellipse at 0% 100%,
            rgba(16,118,169,.18),
            transparent 45%
        ),
        linear-gradient(
            125deg,
            #112d47 0%,
            #153d5d 56%,
            #102a43 100%
        ) !important;

    color: #e9f3fc !important;

    border-radius: 0 0 17px 17px !important;

    box-shadow:
        0 18px 38px rgba(14,42,66,.14) !important;
}

/* Línea superior corporativa */

footer.cr-site-footer::before {

    content: "";

    position: absolute;
    top: 0;
    left: 0;
    right: 0;

    height: 3px;

    background:
        linear-gradient(
            90deg,
            #1595bd 0%,
            #45c0d6 38%,
            #4b9dd0 75%,
            #1c679a 100%
        );

    opacity: .95;
}

/* Contenedor interior */

footer.cr-site-footer .cr-footer-inner {

    position: relative;
    z-index: 1;

    box-sizing: border-box;

    padding-top: 38px !important;
    padding-bottom: 28px !important;
}

/* Encabezados de las tres columnas */

footer.cr-site-footer :is(h2,h3,h4) {

    color: #ffffff !important;

    font-size: 18px !important;
    font-weight: 750 !important;

    line-height: 1.35 !important;
    letter-spacing: -.25px !important;

    margin-bottom: 20px !important;
}

/* Texto descriptivo */

footer.cr-site-footer p {

    color: #d0e1ee !important;

    font-size: 14px !important;
    font-weight: 400 !important;

    line-height: 1.85 !important;
}

/* Logotipo original */

footer.cr-site-footer img {

    max-width: 100%;
    height: auto;

    object-fit: contain;

    transition:
        filter .25s ease,
        transform .25s ease;
}

footer.cr-site-footer img:hover {

    filter: brightness(1.12);

    transform: translateY(-2px);
}

/* Enlaces generales */

footer.cr-site-footer a {

    color: #e4f4ff !important;

    text-decoration: none !important;

    transition:
        color .2s ease,
        background-color .2s ease,
        border-color .2s ease,
        transform .2s ease !important;
}

footer.cr-site-footer a:hover {

    color: #ffffff !important;
}

/* Navegación del footer */

footer.cr-site-footer .cr-footer-nav a {

    display: inline-flex !important;
    align-items: center !important;

    box-sizing: border-box !important;

    min-height: 37px !important;

    padding: 8px 13px !important;

    margin: 1px 0 !important;

    border: 1px solid transparent !important;
    border-radius: 10px !important;

    background: rgba(255,255,255,.035) !important;

    color: #e5f1fb !important;

    font-size: 14px !important;
    font-weight: 550 !important;

    line-height: 1.35 !important;
}

/* Hover iluminado */

footer.cr-site-footer .cr-footer-nav a:hover {

    background:
        linear-gradient(
            120deg,
            rgba(67,160,214,.29),
            rgba(59,135,188,.15)
        ) !important;

    border-color:
        rgba(132,209,246,.26) !important;

    color: #ffffff !important;

    transform: translateX(4px) !important;
}

/* Correo y teléfono */

footer.cr-site-footer
a[href^="mailto:"],

footer.cr-site-footer
a[href^="tel:"] {

    color: #aee6ff !important;

    text-decoration: none !important;

    border-bottom:
        1px solid transparent !important;
}

footer.cr-site-footer
a[href^="mailto:"]:hover,

footer.cr-site-footer
a[href^="tel:"]:hover {

    color: #ffffff !important;

    border-bottom-color:
        rgba(174,230,255,.65) !important;
}

/* Separadores */

footer.cr-site-footer hr {

    height: 1px !important;

    border: 0 !important;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(191,225,245,.28),
            transparent
        ) !important;

    margin: 32px 0 22px !important;
}

/* Copyright */

footer.cr-site-footer
:is(.cr-footer-bottom,.cr-footer-copyright) {

    color: #b9d0e2 !important;

    font-size: 12px !important;

    letter-spacing: .15px !important;
}

/* Accesibilidad */

footer.cr-site-footer a:focus-visible {

    outline: 3px solid #9bddff !important;

    outline-offset: 3px !important;

    border-radius: 7px !important;
}

/* Adaptación a pantallas pequeñas */

@media (max-width: 760px) {

    footer.cr-site-footer {

        border-radius: 0 0 13px 13px !important;
    }

    footer.cr-site-footer .cr-footer-inner {

        padding-top: 30px !important;
        padding-bottom: 25px !important;
    }

    footer.cr-site-footer :is(h2,h3,h4) {

        font-size: 17px !important;

        margin-bottom: 14px !important;
    }

    footer.cr-site-footer p {

        font-size: 14px !important;
        line-height: 1.75 !important;
    }

    footer.cr-site-footer
    .cr-footer-nav a {

        min-height: 40px !important;
    }
}

/* Respetar preferencias de movimiento */

@media (prefers-reduced-motion: reduce) {

    footer.cr-site-footer a,
    footer.cr-site-footer img {

        transition: none !important;
        transform: none !important;
    }
}

/* FIN PASO 41.1-A */
