/* ---------------------------------------------------------
   1. HERO — reduce vertical pressure on mobile
   --------------------------------------------------------- */

@media (max-width: 768px) {
    .hero {
        padding: 120px 0 50px;
    }

    .hero h1 {
        font-size: 2.2rem;
        line-height: 1.25;
    }

    .hero .subtitle {
        font-size: 1.05rem;
    }
}


/* ---------------------------------------------------------
   2. EXECUTIVE SUMMARY OVERLAP — normalize spacing
   --------------------------------------------------------- */

@media (max-width: 768px) {
    .overlap-section {
        margin-top: -30px;
        padding-bottom: 30px;
    }

    .summary-box {
        padding: 30px;
    }
}


/* ---------------------------------------------------------
   3. MULTI-COLUMN GRIDS — stack safely
   --------------------------------------------------------- */

@media (max-width: 992px) {
    .phase-grid,
    .comparison-grid,
    .impact-section,
    .testimonial-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}


/* ---------------------------------------------------------
   4. SYSTEMS & SOLUTIONS GRIDS — prevent overflow
   --------------------------------------------------------- */

@media (max-width: 992px) {
    .systems-grid {
        grid-template-columns: 1fr;
    }

    .solutions-grid {
        grid-template-columns: 1fr;
    }
}


/* ---------------------------------------------------------
   5. METRICS & RESULTS — tighter spacing on small screens
   --------------------------------------------------------- */

@media (max-width: 768px) {
    .metric-card,
    .result-card {
        padding: 25px 20px;
    }

    .metric-card h2,
    .result-card h2 {
        font-size: 2.6rem;
    }
}


/* ---------------------------------------------------------
   6. TABLE — allow horizontal scroll instead of breaking
   --------------------------------------------------------- */

@media (max-width: 768px) {
    .styled-table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
}


/* ---------------------------------------------------------
   8. QUOTE BOX — reduce padding on phones
   --------------------------------------------------------- */

@media (max-width: 576px) {
    .quote-box {
        padding: 40px 25px;
    }

    .quote-icon {
        font-size: 3rem;
        top: 20px;
        left: 20px;
    }

    .meta-info {
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
    }
}


/* ---------------------------------------------------------
   9. GENERAL SAFETY — prevent horizontal scroll
   --------------------------------------------------------- */

html,
body {
    overflow-x: hidden;
}

@media (max-width: 768px) {

    section {
        padding: 60px 0 !important;
    }

    .section-title {
        font-size: 2.0rem;
    }

    .summary-section-title {
        font-size: 2.0rem;
    }

}