/**
 * Theme Overrides - Fixes Saaspik Theme Responsive Issues
 * 
 * This file MUST load AFTER app.css to override theme conflicts
 * Load order: app.css → theme-overrides.css → responsive-fixes.css
 */

/* ============================================
   Container Overrides - Fix Fixed Widths
   ============================================ */

/* Override theme's fixed container widths */
.container,
.container-wrap {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.container-wide {
    max-width: 100% !important;
    width: 100% !important;
}

/* Responsive container padding */
@media (min-width: 576px) {
    .container,
    .container-wrap {
        padding-left: 30px !important;
        padding-right: 30px !important;
    }
}

@media (min-width: 768px) {
    .container,
    .container-wrap {
        padding-left: 40px !important;
        padding-right: 40px !important;
    }
}

@media (min-width: 992px) {
    .container,
    .container-wrap {
        padding-left: 60px !important;
        padding-right: 60px !important;
        max-width: 1400px !important;
    }
}

@media (min-width: 1200px) {
    .container,
    .container-wrap {
        padding-left: 80px !important;
        padding-right: 80px !important;
        max-width: 1400px !important;
    }
}

/* ============================================
   Banner Section Overrides
   ============================================ */

.banner,
.banner-two,
.banner.banner-two {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
}

.banner .container,
.banner-two .container,
.banner.banner-two .container {
    width: 100% !important;
    max-width: 100% !important;
}

/* ============================================
   Row and Column Overrides
   ============================================ */

.row {
    margin-left: -15px !important;
    margin-right: -15px !important;
    display: flex !important;
    flex-wrap: wrap !important;
}

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

/* ============================================
   Fixed Width Element Overrides
   ============================================ */

/* Override theme's fixed widths for responsive behavior */
img {
    max-width: 100% !important;
    height: auto !important;
}

/* ============================================
   Body and HTML Overrides
   ============================================ */

html {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
}

body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    position: relative !important;
}

#main_content {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
}

/* ============================================
   Mobile Overrides
   ============================================ */

@media (max-width: 767px) {
    .container,
    .container-wrap {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
    
    .row {
        margin-left: -10px !important;
        margin-right: -10px !important;
    }
    
    [class*="col-"] {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
}

/* ============================================
   Prevent Theme CSS Conflicts
   ============================================ */

/* Override any theme CSS that sets fixed heights */
.banner,
section.banner {
    min-height: auto !important;
    height: auto !important;
}

/* Ensure flexbox works properly */
.banner-content-wrap,
.banner-content-wrap .row {
    display: flex !important;
    flex-wrap: wrap !important;
}


