/* PROPER VERTICAL STACKING FOR ALL SECTIONS */

/* About Section - Stack vertically */
.about-section .content-wrapper {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}

.about-section .section-title,
.about-section .section-subtitle {
    width: 100% !important;
    text-align: center !important;
}

.about-content {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    gap: 3rem !important;
}

.about-text {
    width: 100% !important;
    max-width: 800px !important;
    text-align: center !important;
    margin: 0 auto !important;
}

.stats-container {
    display: flex !important;
    justify-content: center !important;
    gap: 3rem !important;
    width: 100% !important;
    flex-wrap: wrap !important;
}

/* Investigations Section - Stack vertically */
.investigations-section .content-wrapper {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}

.investigations-section .section-title,
.investigations-section .section-subtitle {
    width: 100% !important;
    text-align: center !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.investigations-grid {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 30px !important;
    margin: 0 auto !important;
}

.view-all-container {
    width: 100% !important;
    text-align: center !important;
    margin-top: 50px !important;
}

/* Services Section - Stack vertically */
.services-section .content-wrapper {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}

.services-section .section-title,
.services-section .section-subtitle {
    width: 100% !important;
    text-align: center !important;
}

.services-grid {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 30px !important;
    margin: 0 auto !important;
}

/* Contact Section - Stack vertically */
.contact-section .content-wrapper {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}

.contact-section .section-title,
.contact-section .section-subtitle {
    width: 100% !important;
    text-align: center !important;
}

.contact-content {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 60px !important;
    width: 100% !important;
    max-width: 1000px !important;
    margin: 0 auto !important;
}

/* Remove any float or side-by-side layouts */
.section-title {
    float: none !important;
    display: block !important;
    margin: 0 auto 20px auto !important;
}

.section-subtitle {
    float: none !important;
    display: block !important;
    margin: 0 auto 40px auto !important;
}

/* Ensure no grid or flex on parent containers that shouldn't have it */
body.home .primary-content {
    display: block !important;
}

body.home #main-content {
    display: block !important;
}

/* Tablet adjustments */
@media (max-width: 1024px) {
    .investigations-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    
    .services-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    
    .contact-content {
        grid-template-columns: 1fr !important;
    }
}

/* Mobile adjustments */
@media (max-width: 768px) {
    .investigations-grid {
        grid-template-columns: 1fr !important;
    }
    
    .services-grid {
        grid-template-columns: 1fr !important;
    }
    
    .stats-container {
        flex-direction: column !important;
        align-items: center !important;
    }
    
    .stat-card {
        width: 100% !important;
        max-width: 300px !important;
    }
}