/* CORRECTED: Footer Full-Width Background with Proper Content Positioning */

/* Footer Background Full-Width - Pseudo-element Approach */
.footer,
#footer-1 {
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 60px 0 0 0 !important;
    overflow: hidden !important;
    /* Remove problematic positioning */
    left: auto !important;
    right: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
}

/* Full-width background via pseudo-element */
.footer::before,
#footer-1::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 50% !important;
    right: 50% !important;
    bottom: 0 !important;
    width: 100vw !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    background: linear-gradient(135deg, var(--dark-enhanced) 0%, #3A3A3A 100%) !important;
    z-index: -1 !important;
}

/* Remove background from footer element itself */
.footer,
#footer-1 {
    background: transparent !important;
}

/* Bottom Footer Corrected */
.bottom-footer {
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    margin: 40px 0 0 0 !important;
    padding: 20px 0 !important;
    /* Remove problematic positioning */
    left: auto !important;
    right: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    border-top: 1px solid rgba(255,255,255,0.1) !important;
    background: transparent !important;
}

/* Bottom footer full-width background */
.bottom-footer::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 50% !important;
    right: 50% !important;
    bottom: 0 !important;
    width: 100vw !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    background: rgba(0,0,0,0.2) !important;
    z-index: -1 !important;
}

/* Content containers - normal positioning */
.footer .container,
.bottom-footer .container {
    position: relative !important;
    width: auto !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    /* Reset any problematic positioning */
    left: auto !important;
    right: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
    z-index: 2 !important;
}

/* Gradient accent line full-width */
.footer::after,
#footer-1::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 50% !important;
    right: 50% !important;
    width: 100vw !important;
    height: 4px !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    background: linear-gradient(90deg, var(--primary-enhanced) 0%, var(--secondary-enhanced) 50%, var(--accent-enhanced) 100%) !important;
    z-index: 1 !important;
}

/* Ensure no overflow issues */
body, html {
    overflow-x: hidden !important;
}

/* Reset any parent constraints that might interfere */
.page {
    overflow-x: visible !important;
}

/* Mobile responsive adjustments */
@media (max-width: 768px) {
    .footer .container,
    .bottom-footer .container {
        padding: 0 15px !important;
    }
}

/* Text alignment corrections */
.footer-copyright,
.footer-links,
.footer-info,
.footer-form {
    text-align: left !important;
    position: relative !important;
    z-index: 2 !important;
}

.bottom-footer-list {
    text-align: right !important;
    position: relative !important;
    z-index: 2 !important;
}

/* Ensure proper Bootstrap grid behavior */
.footer .row,
.bottom-footer .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.footer [class*="col-"],
.bottom-footer [class*="col-"] {
    padding-left: 15px !important;
    padding-right: 15px !important;
}
