/* ==========================================================
   QPERTINO - Footer (Modo Negro Premium)
   ========================================================== */

/* =========================
   FOOTER GENERAL
========================= */

.footer{
    background:#000000;
    color:var(--text);
    margin-top:100px;
}

/* =========================
   FOOTER TOP GRID
========================= */

.footer-top{
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1.2fr;
    gap:60px;
    padding:80px 0 60px;
}

/* =========================
   TITULOS
========================= */

.footer-column h3{
    color:#d4af37;
    font-size:1.15rem;
    margin-bottom:25px;
    font-weight:600;
    font-family:"Cormorant Garamond", serif;
    letter-spacing:1px;
}

/* =========================
   TEXTO
========================= */

.footer-column p{
    color:var(--text-light);
    line-height:1.8;
    margin-top:20px;
}

/* =========================
   LOGO FOOTER
========================= */

.footer .logo{
    display:inline-flex;
    align-items:center;
    justify-content:flex-start;
    text-decoration:none;
    margin-bottom:28px;
    transition:.35s;
}

.footer .logo:hover{
    transform:translateY(-2px);
}

.footer .logo-icon{
    width:240px;
    max-width:100%;
    height:auto;
    display:block;
    object-fit:contain;
    transition:.35s;
}

.footer .logo:hover .logo-icon{
    transform:scale(1.02);
}
/* =========================
   LINKS
========================= */

.footer-column ul{
    list-style:none;
    padding:0;
    margin:0;
}

.footer-column ul li{
    margin-bottom:14px;
}

.footer-column ul li a{
    color:var(--text);
    text-decoration:none;
    transition:.3s;
}

.footer-column ul li a:hover{
    color:#d4af37;
    padding-left:6px;
}

/* =========================
   CONTACTO
========================= */

.footer-contact{
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-contact li{
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
    color: var(--text);
    font-size: 1rem;
    line-height: 1.7;
}

.footer-contact li i{
    color: #d4af37;
    min-width: 20px;
    margin-top: 3px;
    flex-shrink: 0;
}

.footer-contact li span,
.footer-contact li a{
    color: var(--text);
    text-decoration: none;
}

.footer-contact li a:hover{
    color: #d4af37;
}

/* =========================
   REDES SOCIALES
========================= */

.footer-social{
    display:flex;
    gap:15px;
    margin-top:25px;
}

.footer-social a{
    width:42px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(212,175,55,.35);
    border-radius:50%;
    color:#d4af37;
    text-decoration:none;
    transition:.35s;
}

.footer-social a:hover{
    background:#d4af37;
    color:#f9f8f8;
    transform:translateY(-3px);
}

/* =========================
   BOTON
========================= */

.footer-column .btn{
    margin-top:25px;
    display:inline-flex;
}

/* =========================
   FOOTER BOTTOM — Corregido: fondo oscuro en lugar de #F3F4F6
========================= */

.footer-bottom{
    border-top:1px solid rgba(255,255,255,0.08);
    /* Corregido: fondo oscuro coherente con el tema */
    background: #0A0A0C;
}

.footer-bottom-content{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:25px 0;
    gap:20px;
}

.footer-bottom p{
    margin:0;
    color:var(--text-muted);
    font-size:.95rem;
}

.footer-links{
    display:flex;
    gap:30px;
}

.footer-links a{
    color:var(--text-muted);
    text-decoration:none;
    transition:.3s;
}

.footer-links a:hover{
    color:#d4af37;
}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:1100px){

    .footer-top{
        grid-template-columns:repeat(2,1fr);
        gap:45px;
    }
}

@media(max-width:768px){

    .footer{
        margin-top:70px;
    }

    .footer-top{
        grid-template-columns:1fr;
        text-align:center;
        padding:60px 0 40px;
    }

    .footer-logo{
        align-items:center;
    }

    .footer-social{
        justify-content:center;
    }

    .footer-contact li{
        justify-content:center;
    }

    .footer-bottom-content{
        flex-direction:column;
        text-align:center;
    }

    .footer-links{
        justify-content:center;
        flex-wrap:wrap;
        gap:15px;
    }
}

/*=====================================
ACCESO ADMINISTRATIVO
=====================================*/

.footer-admin-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--text-muted);
    font-size:.88rem;
    transition:var(--transition);
}

.footer-admin-link i{
    font-size:.75rem;
}

.footer-admin-link:hover{
    color:var(--gold);
}

/*==================================================
BOTÓN WHATSAPP PREMIUM — Corregido: fondo oscuro
==================================================*/

.footer-whatsapp{

    position:fixed;

    right:35px;
    bottom:35px;

    width:68px;
    height:68px;

    display:flex;
    justify-content:center;
    align-items:center;

    border-radius:50%;

    /* Corregido: fondo oscuro en lugar de #F8F9FA */
    background: var(--surface, #121318);

    border:2px solid #C8A74E;

    color:#25D366;

    font-size:34px;

    text-decoration:none;

    box-shadow:0 15px 35px rgba(0,0,0,.35);

    transition:.35s ease;

    z-index:99999;

}

.footer-whatsapp:hover{

    background:#C8A74E;

    color:#111111;

    transform:translateY(-6px) scale(1.08);

    box-shadow:0 20px 45px rgba(200,167,78,.45);

}

.footer-whatsapp::before{

    content:"";

    position:absolute;

    width:100%;
    height:100%;

    border-radius:50%;

    border:2px solid rgba(37,211,102,.45);

    animation:qpertinoWhatsapp 2.2s infinite;

}

@keyframes qpertinoWhatsapp{

    0%{

        transform:scale(1);
        opacity:1;

    }

    100%{

        transform:scale(1.7);
        opacity:0;

    }

}

@media(max-width:768px){

    .footer-whatsapp{

        width:60px;
        height:60px;

        right:20px;
        bottom:20px;

        font-size:30px;

    }

}
