/* --- VARIÁVEIS LOCAIS --- */
#mapea-footer-v2 {
    --f-bg: #4F0713;       /* Merlot Escuro (Fundo Principal) */
    --f-text: #f0f0f0;     /* Texto Claro */
    --f-gold: #FDC762;     /* Detalhes Dourados */
    --f-rosa: #E499B6;     /* Rosa Suave */
    --f-rubi: #AD0919;     /* Vermelho */
}

/* --- ESTRUTURA PRINCIPAL --- */
#mapea-footer-v2 {
    background-color: var(--f-bg);
    color: var(--f-text);
    font-family: 'Poppins', sans-serif;
    position: relative;
    width: 100%;
    overflow: hidden;
    padding-top: 80px;
    margin-top: 0;
    box-sizing: border-box;
}

/* Borda Superior Degradê */
.footer-border-gradient {
    position: absolute; top: 0; left: 0; width: 100%; height: 4px;
    background: linear-gradient(90deg, var(--f-rubi), var(--f-rosa), var(--f-gold), var(--f-rosa), var(--f-rubi));
}

/* Container Geral */
.mf-container {
    max-width: 1200px; margin: 0 auto; padding: 0 20px;
}

/* --- GRID LAYOUT --- */
#mapea-footer-v2 > .mf-container {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr 1.2fr; /* 4 Colunas Assimétricas */
    gap: 50px;
    padding-bottom: 60px;
}

.mf-col { display: flex; flex-direction: column; }

/* --- MARCA & SOCIAL --- */
.mf-logo {
    height: 55px; width: auto; display: block; margin-bottom: 20px;
    filter: brightness(0) invert(1); opacity: 0.9; transition: opacity 0.3s;
}
.footer-logo-link:hover .mf-logo { opacity: 1; }
.mf-desc { font-size: 14px; line-height: 1.6; opacity: 0.7; margin-bottom: 25px; max-width: 300px; }

/* Social Icons */
.mf-social { display: flex; gap: 12px; }
.mf-social a {
    width: 38px; height: 38px;
    background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1);
    border-radius: 50%; display: flex; align-items: center; justify-content: center;
    color: white; text-decoration: none; transition: all 0.3s;
}
.mf-social a:hover {
    background: var(--f-gold); color: var(--f-bg); border-color: var(--f-gold);
    transform: translateY(-3px);
}

/* --- TÍTULOS E LINKS --- */
.mf-title {
    color: var(--f-gold); font-size: 16px; font-weight: 700;
    text-transform: uppercase; letter-spacing: 1px; margin-bottom: 25px;
    display: inline-block;
}
.mf-links { list-style: none; padding: 0; margin: 0; }
.mf-links li { margin-bottom: 12px; }
.mf-links a {
    text-decoration: none; color: rgba(255,255,255,0.7);
    font-size: 14px; transition: all 0.3s ease; display: inline-block;
}
.mf-links a:hover { color: var(--f-gold); padding-left: 5px; }

/* --- SEGURANÇA --- */
.mf-secure-badge {
    display: flex; align-items: center; gap: 15px;
    background: rgba(0,0,0,0.2); padding: 15px; border-radius: 10px;
    border: 1px solid rgba(255,255,255,0.05); margin-bottom: 20px;
}
.icon-lock {
    font-size: 20px; color: #4CAF50;
    background: rgba(76, 175, 80, 0.1); width: 40px; height: 40px;
    display: flex; align-items: center; justify-content: center; border-radius: 50%;
}
.icon-lock::before { content: "\f023"; font-family: "Font Awesome 5 Free"; font-weight: 900; } /* Ícone Cadeado */

.mf-secure-badge .text { display: flex; flex-direction: column; line-height: 1.2; }
.mf-secure-badge strong { font-size: 13px; color: white; }
.mf-secure-badge span { font-size: 11px; opacity: 0.6; }

.pay-label { font-size: 12px; opacity: 0.6; margin-bottom: 10px; display: block; }
.mf-pay-icons { display: flex; gap: 15px; font-size: 26px; opacity: 0.8; }
.mf-pay-icons i { transition: transform 0.2s; }
.mf-pay-icons i:hover { transform: scale(1.1); color: white; }

/* --- COPYRIGHT --- */
.mf-copyright {
    background-color: rgba(0,0,0,0.2); padding: 25px 0;
    font-size: 13px; color: rgba(255,255,255,0.5);
    border-top: 1px solid rgba(255,255,255,0.05);
}

.flex-between {
    display: flex !important;
    justify-content: space-between;
    align-items: center;
}

/* --- RESPONSIVIDADE --- */
@media (max-width: 992px) {
    /* Tablet: 2 Colunas */
    #mapea-footer-v2 > .mf-container {
        grid-template-columns: 1fr 1fr; gap: 40px;
    }
}

@media (max-width: 768px) {
    /* Mobile: 1 Coluna Centralizada */
    #mapea-footer-v2 { padding-top: 60px; text-align: center; }

    /* Força 1 coluna no mobile */
    #mapea-footer-v2 > .mf-container {
        grid-template-columns: 1fr; gap: 50px;
    }

    .mf-logo { margin: 0 auto 20px auto; }
    .mf-desc { margin: 0 auto 25px auto; }
    .mf-social { justify-content: center; }
    .mf-secure-badge { justify-content: center; text-align: left; max-width: 300px; margin: 0 auto 20px auto; }
    .mf-pay-icons { justify-content: center; }

    .flex-between { flex-direction: column; gap: 10px; }
}