/* ═══════════════════════════════════════════
   FOOTER GLOBAL — Costuras Creativas Child Theme
   Aplica en toda la web via footer.php
   Selector raíz: .cc-landing-footer
═══════════════════════════════════════════ */

/* ── Wrapper principal ── */
.cc-landing-footer {
    background-color: var(--cc-ink);
    color: var(--cc-white);
    padding: 52px 5% 24px;
    display: block !important;
    width: 100%;
    box-sizing: border-box;
    clear: both;
    position: relative;
    /* Romper cualquier grid/flex heredado del contenido anterior */
    grid-column: unset !important;
    grid-row: unset !important;
    float: none;
}

/* ── Grid interior: 3 columnas ── */
.cc-landing-footer__inner {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr;
    gap: 48px;
    max-width: 1100px;
    margin: 0 auto 40px;
}

/* ── Columna de marca ── */
.cc-landing-footer__brand {
    display: flex;
    flex-direction: column;
}

.cc-landing-footer__logo {
    height: 30px;
    width: auto;
    display: block;
    margin-bottom: 14px;
    /* Invertir logo claro sobre fondo oscuro */
    filter: brightness(0) invert(1);
    opacity: 0.75;
}

.cc-landing-footer__logo-text {
    font-family: var(--cc-font-display);
    font-size: 1.1rem;
    font-weight: 900;
    text-transform: uppercase;
    color: var(--cc-white);
    letter-spacing: 0.06em;
    display: block;
    margin-bottom: 14px;
    text-decoration: none;
}

.cc-landing-footer__tagline {
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.4);
    line-height: 1.7;
    font-weight: 300;
    max-width: 240px;
    margin: 0;
}

/* ── Redes sociales ── */
.cc-landing-footer__socials {
    display: flex;
    gap: 9px;
    margin-top: 18px;
}

.cc-landing-footer__social {
    width: 34px;
    height: 34px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.85rem;
    text-decoration: none;
    color: rgba(255, 255, 255, 0.4);
    transition: all var(--cc-transition);
    line-height: 1;
}

.cc-landing-footer__social:hover {
    border-color: var(--cc-rose);
    color: var(--cc-rose);
    background: rgba(232, 98, 156, 0.08);
}

/* ── Columnas de links ── */
.cc-landing-footer__col {
    display: flex;
    flex-direction: column;
}

.cc-landing-footer__col-title {
    font-family: var(--cc-font-display);
    font-size: 0.72rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    font-weight: 700;
    color: var(--cc-rose);
    margin-bottom: 14px;
    margin-top: 0;
    line-height: 1;
}

/* ── Menús wp_nav_menu ── */
.cc-footer-menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

.cc-footer-menu li {
    margin-bottom: 9px;
}

.cc-footer-menu li a {
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.4);
    text-decoration: none;
    font-weight: 300;
    font-family: var(--cc-font-body);
    transition: color var(--cc-transition);
    display: inline-block;
    line-height: 1.4;
}

.cc-footer-menu li a:hover {
    color: var(--cc-white);
}

.cc-footer-menu .sub-menu {
    display: none;
}

/* ── Fallback: listas ul directas sin wp_nav_menu ── */
.cc-landing-footer__col ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.cc-landing-footer__col ul li {
    margin-bottom: 9px;
}

.cc-landing-footer__col ul li a {
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.4);
    text-decoration: none;
    font-weight: 300;
    font-family: var(--cc-font-body);
    transition: color var(--cc-transition);
}

.cc-landing-footer__col ul li a:hover {
    color: var(--cc-white);
}

/* ── Barra inferior de copyright ── */
.cc-landing-footer__bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    padding-top: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1100px;
    margin: 0 auto;
    flex-wrap: wrap;
    gap: 8px;
}

.cc-landing-footer__bottom p {
    font-size: 0.7rem;
    color: rgba(255, 255, 255, 0.2);
    margin: 0;
    font-family: var(--cc-font-body);
    font-weight: 300;
}

/* ── Seguridad: ocultar cualquier elemento del footer nativo de Astra ──
   Los hooks PHP deberían prevenirlos, pero esto es el último recurso. ── */
#ast-footer-bar,
.ast-footer-copyright,
.ast-footer-below-section,
.ast-above-footer,
.ast-below-footer,
#colophon .ast-small-footer,
#colophon:not(:has(.cc-landing-footer)),
.ast-small-footer-wrap,
.ast-small-footer {
    display: none !important;
    height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Quitar fondo/padding del #colophon de Astra cuando no tiene nuestro footer */
#colophon {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* ── Responsive ── */
@media (max-width: 860px) {
    .cc-landing-footer__inner {
        grid-template-columns: 1fr 1fr;
        gap: 32px;
    }
}

@media (max-width: 540px) {
    .cc-landing-footer {
        padding: 40px 5% 20px;
    }

    .cc-landing-footer__inner {
        grid-template-columns: 1fr;
        gap: 28px;
        margin-bottom: 28px;
    }

    .cc-landing-footer__bottom {
        flex-direction: column;
        text-align: center;
        gap: 4px;
    }

    .cc-landing-footer__tagline {
        max-width: 100%;
    }
}
