/* =============================================================
   RESPONSIVE.CSS — Sun Crew Energy Website
   Mobile-first breakpoint overrides
   ============================================================= */

/* =====================================================================
   TABLET LANDSCAPE — max 1199px
   ===================================================================== */
@media (max-width: 1199.98px) {
    .hero-image-wrapper img   { height: 440px; }
    .why-us-image-wrapper img { height: 420px; }
    .process-grid             { grid-template-columns: repeat(2, 1fr); }
}

/* =====================================================================
   TABLET PORTRAIT — max 991px
   ===================================================================== */
@media (max-width: 991.98px) {
    :root { --section-py: 4rem; }

    .hero {
        min-height: auto;
        padding: 6rem 0 4rem;
    }
    .hero-content       { text-align: center; }
    .hero-subtitle      { max-width: 100%; margin-left: auto; margin-right: auto; }
    .hero-actions       { justify-content: center; }
    .hero-stats         { justify-content: center; }

    /* Text is centered/full-width on mobile, so switch the scrim to a
       bottom-weighted vertical fade — video stays clear up top, text
       readable over the darker lower half. */
    .hero-overlay {
        background: linear-gradient(
            180deg,
            rgba(14, 34, 56, 0.28) 0%,
            rgba(14, 34, 56, 0.42) 38%,
            rgba(14, 34, 56, 0.80) 100%
        );
    }

    .hero-image-wrapper { margin-top: 2.5rem; }
    .hero-image-wrapper img { height: 360px; }

    .section-subtitle   { max-width: 100%; }
    .why-us-image-wrapper img { height: 360px; }
    .about-preview-image img  { height: 340px; }
}

/* =====================================================================
   MOBILE LANDSCAPE — max 767px
   ===================================================================== */
@media (max-width: 767.98px) {
    :root { --section-py: 3.5rem; --navbar-h: 66px; }

    .hero-title          { font-size: 2.25rem; }
    .section-title       { font-size: 1.875rem; }

    /* Declutter the hero on mobile: hide the stats strip (kept on desktop). */
    .hero-stats          { display: none; }

    .service-card        { padding: 1.5rem; }
    .process-grid        { grid-template-columns: 1fr 1fr; }

    .about-stats-grid    { grid-template-columns: 1fr 1fr; }

    .contact-form-wrapper { padding: 1.75rem 1.25rem; }

    .thank-you-card      { padding: 2.5rem 1.5rem; }

    .footer-bottom       { flex-direction: column; text-align: center; }

    .mv-card             { padding: 2rem; }

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

    .service-card-full {
        flex-direction: column;
        gap: 1rem;
    }
    .service-card-full-icon { width: 52px; height: 52px; min-width: 52px; font-size: 1.5rem; }

    .why-us-image-wrapper img { height: 300px; }
    .about-preview-image img  { height: 280px; }
    .founder-card-img         { height: 260px; }
}

/* =====================================================================
   SMALL MOBILE — max 575px
   ===================================================================== */
@media (max-width: 575.98px) {
    :root { --section-py: 3rem; }

    .hero-title   { font-size: 2rem; letter-spacing: -0.02em; }
    .hero-subtitle { font-size: 0.9375rem; }

    .btn-lg { padding: 0.8rem 1.5rem; font-size: 0.9375rem; }

    .hero-actions          { flex-direction: column; gap: 0.75rem; margin-bottom: 0.5rem; }
    .hero-actions .btn     { width: 100%; justify-content: center; }

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

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

    .project-card-img { height: 200px; }

    .founder-card-img { height: 240px; }

    .whatsapp-float {
        bottom: 1.25rem; right: 1.25rem;
        width: 50px; height: 50px;
        font-size: 1.5rem;
    }

    .back-to-top {
        bottom: 1.25rem; left: 1.25rem;
        width: 40px; height: 40px;
        font-size: 1rem;
    }

    .filter-tabs    { gap: 0.375rem; }
    .filter-tab     { padding: 0.4375rem 1rem; font-size: 0.8125rem; }

    .page-hero {
        padding-top: calc(var(--navbar-h) + 2rem);
        padding-bottom: 2rem;
    }

    .footer-bottom-links { gap: 1rem; }

    .cta-section { padding: 3rem 0; }

    .brands-section { display: none; } /* hide on very small to avoid layout issues */
}
