/* ============================================================
   RODAPÉ — Picos Cidade da Gente
   Azul profundo com detalhes âmbar
   ============================================================ */

footer {
    font-family: var(--fonte-principal);
}

/* ── Bloco principal ─────────────────────────────────────── */
.footer-principal {
    background:   linear-gradient(160deg, #0A2550 0%, #0F3D75 50%, #1A5FAD 100%);
    padding:      4.5rem 0 3rem;
    position:     relative;
    overflow:     hidden;
}

/* Decoração: círculo luminoso âmbar */
.footer-principal::before {
    content:       '';
    position:      absolute;
    right:         -100px;
    top:           -100px;
    width:         380px;
    height:        380px;
    border-radius: 50%;
    background:    radial-gradient(circle, rgba(245,166,35,0.10) 0%, transparent 70%);
    pointer-events: none;
}

/* Faixa âmbar no topo do rodapé */
.footer-faixa-mel {
    position:   absolute;
    top:        0;
    left:       0;
    right:      0;
    height:     3px;
    background: linear-gradient(90deg, var(--cor-mel-escuro) 0%, var(--cor-mel) 50%, var(--cor-mel-escuro) 100%);
}

.footer-logo img {
    height:        3rem;
    margin-bottom: 1rem;
    filter:        brightness(0) invert(1);
    opacity:       0.90;
}

.footer-descricao {
    font-size:   0.85rem;
    color:       rgba(255, 255, 255, 0.60);
    line-height: 1.7;
    margin:      0;
    max-width:   240px;
}

/* ── Colunas do rodapé ─────────────────────────────────────── */
.footer-coluna-titulo {
    font-size:      0.72rem;
    font-weight:    800;
    color:          var(--cor-mel);
    text-transform: uppercase;
    letter-spacing: 0.12em;
    margin-bottom:  1.1rem;
    position:       relative;
    padding-bottom: 0.65rem;
}

.footer-coluna-titulo::after {
    content:       '';
    position:      absolute;
    bottom:        0;
    left:          0;
    width:         28px;
    height:        2px;
    background:    var(--cor-mel);
    border-radius: 2px;
}

.footer-links {
    list-style:  none;
    padding:     0;
    margin:      0;
    display:     flex;
    flex-direction: column;
    gap:         0.55rem;
}

.footer-links a {
    font-size:       0.875rem;
    color:           rgba(255, 255, 255, 0.65);
    text-decoration: none;
    transition:      color 0.2s, padding-left 0.2s;
    display:         flex;
    align-items:     center;
    gap:             0.4rem;
}

.footer-links a:hover {
    color:        var(--cor-mel);
    padding-left: 4px;
}

.footer-links a i {
    font-size:  0.65rem;
    color:      var(--cor-mel);
    opacity:    0.7;
    transition: opacity 0.2s;
}

.footer-links a:hover i {
    opacity: 1;
}

/* ── Redes sociais ─────────────────────────────────────────── */
.footer-redes {
    display:    flex;
    gap:        0.85rem;
    flex-wrap:  wrap;
    margin-top: 0.25rem;
}

.footer-rede-item {
    width:           42px;
    height:          42px;
    border-radius:   50%;
    background:      rgba(255, 255, 255, 0.08);
    border:          1px solid rgba(255, 255, 255, 0.12);
    display:         flex;
    align-items:     center;
    justify-content: center;
    transition:      background 0.25s, border-color 0.25s, transform 0.25s;
    text-decoration: none;
}

.footer-rede-item:hover {
    background:   rgba(245, 166, 35, 0.18);
    border-color: rgba(245, 166, 35, 0.50);
    transform:    translateY(-3px);
}

.footer-rede-item svg {
    display: block;
    width:   22px;
    height:  22px;
}

/* Contato direto */
.footer-contato-item {
    display:    flex;
    align-items: flex-start;
    gap:        0.75rem;
    margin-bottom: 0.85rem;
}

.footer-contato-item:last-child {
    margin-bottom: 0;
}

.footer-contato-icone {
    width:           34px;
    height:          34px;
    min-width:       34px;
    border-radius:   50%;
    background:      rgba(245, 166, 35, 0.15);
    border:          1px solid rgba(245, 166, 35, 0.30);
    display:         flex;
    align-items:     center;
    justify-content: center;
    font-size:       0.8rem;
    color:           var(--cor-mel);
}

.footer-contato-texto {
    display:  flex;
    flex-direction: column;
    gap:      0.1rem;
}

.footer-contato-label {
    font-size:      0.65rem;
    font-weight:    700;
    color:          var(--cor-mel);
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.footer-contato-valor {
    font-size:       0.875rem;
    color:           rgba(255, 255, 255, 0.75);
    text-decoration: none;
    transition:      color 0.2s;
}

.footer-contato-valor:hover {
    color: var(--cor-mel);
}

/* ── Divisor ───────────────────────────────────────────────── */
.footer-divisor {
    border:     none;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    margin:     2.5rem 0 0;
}

/* ── Bloco de copyright ────────────────────────────────────── */
.footer-copyright {
    background: rgba(0, 0, 0, 0.30);
    padding:    1.2rem 0;
    text-align: center;
}

.footer-copyright p {
    font-size:  0.82rem;
    color:      rgba(255, 255, 255, 0.45);
    margin:     0;
    line-height: 1.6;
}

.footer-copyright span {
    color:      rgba(255, 255, 255, 0.65);
    font-weight: 600;
}

/* ── bg-verde override ─────────────────────────────────────── */
.bg-verde {
    background: linear-gradient(160deg, #0A2550 0%, #0F3D75 50%, #1A5FAD 100%) !important;
}

/* ── Responsividade ────────────────────────────────────────── */
@media (max-width: 768px) {
    .footer-principal {
        padding: 3.5rem 0 2.5rem;
    }

    .footer-logo img {
        height: 2.5rem;
    }

    .footer-descricao {
        max-width: 100%;
    }

    .footer-coluna-titulo {
        margin-top: 2rem;
    }

    .footer-coluna-titulo:first-child {
        margin-top: 0;
    }
}
