/**
 * Footer Styles - Poços Já
 * Versão: 1.1 - Layout duas colunas no mobile
 * 
 * Desktop: Logo + Menu horizontal + Redes sociais
 * Mobile: Logo (esquerda) + Menu (direita) em duas colunas
 */

.site-footer {
    background: #003482;
    color: #ffffff;
    padding: 40px 0 20px;
    margin-top: 60px;
}

.footer-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* ===================================================================
   DESKTOP - LAYOUT HORIZONTAL
   =================================================================== */

@media (min-width: 769px) {
    .footer-top {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 40px;
        padding-bottom: 30px;
    }
    
    .footer-logo {
        flex-shrink: 0;
    }
    
    .footer-logo img {
        height: 50px;
        width: auto;
        display: block;
    }
    
    .footer-menu {
        flex: 1;
        display: flex;
        justify-content: center;
    }
    
    .footer-menu ul {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
        gap: 30px;
        flex-wrap: wrap;
        justify-content: center;
    }
    
    .footer-menu li {
        margin: 0;
    }
    
    .footer-menu a {
        color: #ffffff;
        text-decoration: none;
        font-size: 15px;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        transition: opacity 0.2s;
        white-space: nowrap;
    }
    
    .footer-menu a:hover {
        opacity: 0.8;
    }
    
    .footer-social-desktop {
        display: flex;
        gap: 15px;
        flex-shrink: 0;
    }
    
    .footer-social-desktop a {
        color: #ffffff;
        text-decoration: none;
        font-size: 14px;
        font-weight: 500;
        display: flex;
        align-items: center;
        gap: 6px;
        transition: opacity 0.2s;
        white-space: nowrap;
    }
    
    .footer-social-desktop a:hover {
        opacity: 0.8;
    }
    
    .footer-social-desktop svg {
        width: 20px;
        height: 20px;
        flex-shrink: 0;
    }
    
    .footer-social-mobile {
        display: none;
    }
    
    .footer-bottom {
        border-top: 1px solid rgba(255, 255, 255, 0.2);
        padding-top: 20px;
        text-align: center;
    }
    
    .footer-copyright {
        margin: 0;
        font-size: 13px;
        color: rgba(255, 255, 255, 0.85);
        font-weight: 400;
        white-space: nowrap;
    }
    
    .footer-credits {
        font-size: 11px;
        color: rgba(255, 255, 255, 0.75);
        font-weight: 300;
    }
    
    .footer-copyright a,
    .footer-credits a {
        color: #ffffff !important;
        text-decoration: underline;
        transition: opacity 0.2s;
    }
    
    .footer-copyright a:hover,
    .footer-credits a:hover {
        opacity: 0.8;
        color: #ffffff !important;
    }
    
    .footer-social-mobile {
        display: none;
    }
}

/* ===================================================================
   MOBILE - LAYOUT DUAS COLUNAS (Logo esquerda + Menu direita)
   =================================================================== */

@media (max-width: 768px) {
    .site-footer {
        padding: 30px 0 20px;
        margin-top: 40px;
    }
    
    .footer-top {
        display: grid;
        grid-template-columns: auto 1fr;
        gap: 20px;
        align-items: start;
        padding-bottom: 25px;
    }
    
    /* Logo maior à esquerda */
    .footer-logo {
        grid-column: 1;
        align-self: start;
    }
    
    .footer-logo img {
        height: 80px;
        width: auto;
        display: block;
    }
    
    /* Menu à direita */
    .footer-menu {
        grid-column: 2;
        align-self: start;
    }
    
    .footer-menu ul {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 12px;
        align-items: flex-start;
    }
    
    .footer-menu li {
        margin: 0;
    }
    
    .footer-menu a {
        color: #ffffff;
        text-decoration: none;
        font-size: 15px;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        transition: opacity 0.2s;
        display: block;
        line-height: 1.4;
    }
    
    .footer-menu a:hover,
    .footer-menu a:active {
        opacity: 0.8;
    }
    
    .footer-social-desktop {
        display: none;
    }
    
    .footer-bottom {
        margin-top: 25px;
        padding-top: 20px;
        border-top: 1px solid rgba(255, 255, 255, 0.2);
        text-align: center;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }
    
    .footer-social-mobile {
        display: flex;
        gap: 20px;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        order: 1;
    }
    
    .footer-social-mobile a {
        color: #ffffff;
        text-decoration: none;
        font-size: 15px;
        font-weight: 500;
        display: flex;
        align-items: center;
        gap: 8px;
        transition: opacity 0.2s;
    }
    
    .footer-social-mobile a:hover,
    .footer-social-mobile a:active {
        opacity: 0.8;
    }
    
    .footer-social-mobile svg {
        width: 22px;
        height: 22px;
        flex-shrink: 0;
    }
    
    .footer-copyright {
        margin: 0;
        padding-top: 20px;
        border-top: 1px solid rgba(255, 255, 255, 0.2);
        font-size: 12px;
        color: rgba(255, 255, 255, 0.85);
        font-weight: 400;
        line-height: 1.6;
        order: 2;
    }
    
    .footer-credits {
        display: block;
        margin-top: 5px;
        font-size: 10px;
        color: rgba(255, 255, 255, 0.75);
        font-weight: 300;
    }
    
    .footer-copyright a,
    .footer-credits a {
        color: #ffffff;
        text-decoration: underline;
        transition: opacity 0.2s;
    }
    
    .footer-copyright a:hover,
    .footer-copyright a:active,
    .footer-credits a:hover,
    .footer-credits a:active {
        opacity: 0.8;
    }
}

/* ===================================================================
   AJUSTES PARA TELAS MOBILE PEQUENAS
   =================================================================== */

@media (max-width: 480px) {
    .footer-top {
        gap: 15px;
    }
    
    .footer-logo img {
        height: 70px;
    }
    
    .footer-menu a {
        font-size: 14px;
    }
}

/* ===================================================================
   AJUSTES PARA TELAS INTERMEDIÁRIAS
   =================================================================== */

@media (min-width: 769px) and (max-width: 1024px) {
    .footer-top {
        flex-wrap: wrap;
        justify-content: center;
    }
    
    .footer-menu {
        width: 100%;
        order: 2;
        margin-top: 20px;
    }
    
    .footer-logo {
        order: 1;
    }
    
    .footer-social-desktop {
        order: 3;
        margin-top: 20px;
    }
}

/* ===================================================================
   RESET PARA EVITAR CONFLITOS COM O TEMA
   =================================================================== */

.site-footer * {
    box-sizing: border-box;
}

.site-footer ul {
    list-style: none;
}

.site-footer a {
    text-decoration: none;
}

/* Remove qualquer padding/margin do tema que possa interferir */
.site-footer .footer-container {
    width: 100%;
}