/* =========================================================
   FOOTER
========================================================= */

.footer{
position:relative;
background:linear-gradient(180deg,#0f2a44,#0a1e33);
color:#E6EEF6;
padding:45px 0 35px;
border-top:0;
}


/* =========================================================
   GRID
========================================================= */

.footer-grid{
display:grid;
grid-template-columns:1.2fr .8fr;
gap:80px;
align-items:start;
}


/* =========================================================
   LOGO
========================================================= */

.footer-brand .logo{
    filter:drop-shadow(0 0 6px rgba(79,195,255,.35));
    transition:all .4s ease;
}

.footer-brand img:hover{
    filter:drop-shadow(0 0 12px rgba(79,195,255,.7));
    transform:scale(1.05);
}


/* =========================================================
   DESCRIPCIÓN
========================================================= */

.footer-brand p{
    margin-top:15px;
    font-size:14px;
    color:#c7d6e5;
}


/* =========================================================
   NAVEGACIÓN
========================================================= */

.footer-nav a{
    display:block;
    margin-bottom:8px;
    color:#E6EEF6;
    font-weight:500;
    transition:all .3s ease;
}

.footer-nav a:hover{
    color:#4FC3FF;
    transform:translateX(4px);
}


/* =========================================================
   INFORMACIÓN LEGAL
========================================================= */

.footer-legal{
    text-align:center;
    margin-top:45px;
    font-size:13px;
    color:#AFC3D6;
    border-top:1px solid rgba(255,255,255,.15);
    padding-top:18px;
}


/* =========================================================
   SEPARADOR LUMINOSO
========================================================= */

.footer::before{
    content:"";
    position:absolute;
    top:0;
    left:50%;
    transform:translateX(-50%);
    width:60%;
    height:2px;

    background:linear-gradient(
        90deg,
        transparent,
        #0071BC,
        #4FC3FF,
        #0071BC,
        transparent
    );

    background-size:200% 100%;

    box-shadow:
        0 0 8px rgba(0,113,188,.6),
        0 0 18px rgba(0,113,188,.35),
        0 0 30px rgba(79,195,255,.25);

    animation:footerGlow 6s linear infinite;
}


@keyframes footerGlow{

    0%{
        background-position:0% 50%;
    }

    100%{
        background-position:200% 50%;
    }

}


/* =========================================================
   INSTAGRAM
========================================================= */

.footer-instagram{
    display:flex;
    align-items:center;
    gap:8px;
    color:#fff;
    font-weight:600;
    font-size:14px;
    margin-top:15px;
}

.footer-instagram img{
    width:24px;
    height:24px;
}

.footer-instagram-text{
    color:#fff;
}

.footer-instagram img:hover{
    transform:scale(1.2);
    box-shadow:0 4px 12px rgba(255,255,255,.6);
}

/* =========================================================
   WHATSAPP FLOTANTE
========================================================= */

.whatsapp-float{
    position:fixed;
    bottom:25px;
    right:25px;
    width:60px;
    height:60px;
    border-radius:50%;
    background:#25D366;
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:1000;
}

.whatsapp-float img{
    width:32px;
    height:32px;
}


/* =========================================================
   CHAT WHATSAPP
========================================================= */

.wa-chat{
    position:fixed;
    bottom:90px;
    right:25px;
    width:280px;
    background:#FFFFFF;
    border-radius:12px;
    box-shadow:0 10px 40px rgba(0,0,0,.15);
    display:flex;
    flex-direction:column;
    opacity:0;
    pointer-events:none;
    transform:translateY(40px);
    transition:all .3s ease;
    z-index:1100;
}

.wa-chat.active{
    opacity:1;
    pointer-events:auto;
    transform:translateY(0);
}

.wa-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    background:#0071BC;
    color:#fff;
    padding:12px;
    border-top-left-radius:12px;
    border-top-right-radius:12px;
}

.wa-logo{
    height:36px;
    width:36px;
    border-radius:50%;
    object-fit:cover;
}

.wa-text{
    flex:1;
    font-weight:600;
    font-size:14px;
    margin-left:5px;
}

.wa-close{
    cursor:pointer;
    font-size:18px;
}

.wa-body{
    padding:12px;
    display:flex;
    flex-direction:column;
    gap:10px;
}

.wa-body button{
    background:#25D366;
    border:none;
    padding:10px;
    border-radius:8px;
    color:#fff;
    font-weight:600;
    cursor:pointer;
    font-size:14px;
    text-align:left;
}

.wa-body button:hover{
    background:#1ebe57;
}


/* =========================================================
   BOTÓN SUBIR AL INICIO
========================================================= */

#scrollTopBtn{
    position:fixed;
    bottom:100px;
    right:30px;
    z-index:1000;
    background:#0071BC;
    color:#fff;
    border:none;
    border-radius:50%;
    width:50px;
    height:50px;
    font-size:24px;
    cursor:pointer;
    box-shadow:0 8px 20px rgba(0,113,188,.35);
    transition:all .3s ease;
    opacity:0;
    pointer-events:none;
}

#scrollTopBtn:hover{
    transform:translateY(-3px);
    box-shadow:0 12px 28px rgba(0,113,188,.45);
}

#scrollTopBtn.show{
    opacity:1;
    pointer-events:auto;
}

/* =========================================
   AJUSTE FINAL FOOTER
========================================= */

.footer-nav{
    padding-top:4px;
}

.footer-nav a{
    margin-bottom:12px;
}