/**
 * Estilos para footer de largura total
 * Versão reforçada para garantir compatibilidade total
 */

/* Reset para garantir que o footer tenha largura total */
body {
    overflow-x: hidden; /* Evita barras de rolagem horizontal */
}

/* Seletores agressivos para o footer */
footer,
.site-footer,
#colophon,
.footer-area,
#footer,
.site-info,
.footer-wrapper,
.footer-widgets,
.footer-widgets-container,
#colophon .footer-widgets,
footer.site-footer,
.footer-widgets-area,
.footer-inner,
.footer-adv,
.footer-adv-overlay,
.ast-site-footer {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
    left: 0 !important;
    right: 0 !important;
    position: relative !important;
}

/* Container dentro do footer - também força largura total */
footer .container,
.site-footer .container,
#colophon .container,
.footer-widgets .container,
.site-info .container,
.footer-adv .container,
footer.site-footer .container,
.footer-widgets-container .container,
.footer-widgets-area .container,
#footer .container,
.footer-inner .container,
.ast-site-footer .container {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    display: block !important;
}

/* Contêiner do conteúdo do footer - centralizamos este para manter o layout */
.footer-content-wrapper,
.footer-widgets-inner,
.footer-inner-content,
.site-footer .site-info .container,
.site-footer .footer-widgets .container-inner,
.footer-content {
    width: 100% !important;
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
}

/* Evitar que outros containers limitem a largura */
@media (min-width: 768px) {
    .container,
    .container-md,
    .container-sm,
    .container-lg,
    .container-xl {
        max-width: 100% !important;
    }
    
    footer .col-md-12,
    .site-footer .col-md-12,
    #colophon .col-md-12,
    .footer-widgets .col-md-12 {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }
    
    /* Se o tema usar row/col do Bootstrap */
    footer .row,
    .site-footer .row,
    #colophon .row,
    .footer-widgets .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
        max-width: 100% !important;
        width: 100% !important;
    }
}

/* Regras específicas para WooCommerce */
.woocommerce-page footer,
.woocommerce-page .site-footer,
.woocommerce-page #colophon,
.woocommerce-checkout footer,
.woocommerce-checkout .site-footer,
.woocommerce-checkout #colophon {
    width: 100vw !important;
    max-width: none !important;
    box-sizing: border-box !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
}

/* Regra especial para pegar qualquer outro elemento dentro do footer que possa estar limitando a largura */
.site-footer *:not(script):not(style) {
    max-width: none;
}

/* Preservar padding vertical para conteúdos do footer */
.footer-widgets-container,
.site-info-container,
.footer-content-wrapper {
    padding-top: 40px;
    padding-bottom: 40px;
}