/* Pie reutilizable: tres columnas con centro geométrico real. */
.site-footer {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
    align-items: center;
    gap: 18px;
    padding: 14px clamp(20px, 5vw, 76px);
    border-top: 1px solid rgba(255, 255, 255, .14);
    background: rgba(9, 19, 15, .28);
    color: #e1e9e2;
    font-size: 12px;
}
.footer-legal {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
}
.footer-brand {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
}
.footer-brand img {
    width: 155px;
    max-width: 100%;
    height: auto;
}
.footer-instagram {
    display: inline-flex;
    color: #d9e6db;
}
.footer-creator {
    justify-self: end;
    text-align: right;
    white-space: nowrap;
}
.footer-creator strong {
    font-weight: 600;
    color: #c5ff91;
}
.site-footer a:hover {
    color: #b7ff82;
}
/* Móvil: marca central y enlaces con espacio suficiente. */
@media (max-width: 650px) {
    .site-footer {
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 12px;
        padding: 18px 16px;
    }
    .footer-legal {
        justify-content: center;
    }
    .footer-creator {
        justify-self: center;
        text-align: center;
    }
}

/* Redes sociales: iconos centrados y enlace táctil accesible. */
.footer-social {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.footer-social > span,
.footer-social > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
}

.footer-whatsapp {
    color: #a3f86e;
    transition: color .2s ease;
}

.footer-whatsapp:hover {
    color: #d5ffbc;
}
