/* ==================================================================
   responsive.css — all media queries
   Loaded last so breakpoint rules always win.
   ================================================================== */

/* -------- Responsive -------- */
@media (max-width: 1024px) {
  .gs-philosophy-grid { grid-template-columns: repeat(2, 1fr); gap: 30px 20px; }
  .gs-phil-connector { display: none; }
  .gs-flow { grid-template-columns: repeat(3, 1fr); row-gap: 20px; }
  .gs-flow-connector { display: none; }
  .gs-shift-grid { grid-template-columns: repeat(2, 1fr); }
  .gs-audience-grid { grid-template-columns: repeat(2, 1fr); }

}

@media (max-width: 900px) {
  .gs-nav-links, .gs-nav-actions { display: none; }
  .gs-nav-toggle { display: inline-flex; }
  .gs-hero-grid { grid-template-columns: 1fr; }
  /* .gs-hero-visual-wrap { order: -1; } */
  .gs-hero-visual { max-width: 420px; margin: 0 auto; }
  .gs-problem-grid { grid-template-columns: 1fr; }
  .gs-scanner-grid { grid-template-columns: 1fr; }
  .gs-vision-grid { grid-template-columns: 1fr; }
  .gs-footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
  .gs-footer-brand { grid-column: 1 / -1; }
  
}

/* =========================
   Newsletter - Mobile View
========================= */

@media (max-width: 600px) {

    .gs-newsletter {
        grid-template-columns: 1fr;
        width: 100%;
        padding: 24px 18px;
        box-sizing: border-box;
    }

    /* Newsletter top section */
    .gs-newsletter-info {
        display: grid;
        grid-template-columns: 70px 1fr;
        gap: 18px;
        align-items: center;
    }

    /* Email icon */
    .gs-newsletter-info .icon {
        width: 68px;
        height: 68px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* Heading */
    .gs-newsletter-info h2 {
        font-size: 18px;
        line-height: 1.3;
        margin: 0 0 6px;
    }

    /* Description */
    .gs-newsletter-info p {
        font-size: 14px;
        line-height: 1.5;
        margin: 0;
    }

    /* Form */
    .gs-newsletter-form {
        display: grid;
        grid-template-columns: 1fr;
        gap: 12px;
        padding: 10px 0 0;
        width: 100%;
    }

    /* Input */
    .gs-email-input {
        width: 100%;
        height: 52px;
        box-sizing: border-box;
        font-size: 15px;
    }

    /* Subscribe button */
    .gs-newsletter-form button {
        width: 100%;
        height: 52px;
        font-size: 15px;
    }

    /* Disclaimer text */
    .gs-newsletter-note {
        font-size: 14px;
        line-height: 1.6;
        margin-top: 14px;
    }
}

@media (max-width: 620px) {
  .gs-container { padding-left: 18px; padding-right: 18px; }
  .gs-eco-grid { grid-template-columns: 1fr; }
  .gs-philosophy-grid { grid-template-columns: 1fr; }
  .gs-shift-grid { grid-template-columns: 1fr; }
  .gs-audience-grid { grid-template-columns: 1fr; }
  .gs-flow { grid-template-columns: 1fr 1fr; }
  .gs-scanner-features { grid-template-columns: 1fr; }
  .gs-sm-summary { grid-template-columns: 1fr; }
  .gs-footer-grid { grid-template-columns: 1fr; }
  .gs-hero-cta .gs-btn, .gs-cta-actions .gs-btn { width: 100%; }
  .gs-hero-visual { max-width: 340px; }
  .gs-hv-toast { left: 0; }
  .gs-hv-stat { left: 0; }
  .gs-hv-donut-card { right: 0; }
  .gs-footer-bottom { flex-direction: column; align-items: flex-start; }
    .gs-bottom-card { grid-template-columns: 1fr;}
}


@media (max-width: 380px) {
  .gs-container { padding-left: 18px; padding-right: 18px; }
  .gs-eco-grid { grid-template-columns: 1fr; }
  .gs-philosophy-grid { grid-template-columns: 1fr; }
  .gs-shift-grid { grid-template-columns: 1fr; }
  .gs-audience-grid { grid-template-columns: 1fr; }
  .gs-flow { grid-template-columns: 1fr 1fr; }
  .gs-scanner-features { grid-template-columns: 1fr; }
  .gs-sm-summary { grid-template-columns: 1fr; }
  .gs-footer-grid { grid-template-columns: 1fr; }
  .gs-hero-cta .gs-btn, .gs-cta-actions .gs-btn { width: 100%; }
  .gs-hero-visual { max-width: 340px; }
  .gs-hv-toast { left: 0; }
  .gs-hv-stat { left: 0; }
  .gs-hv-donut-card { right: 0; }
  .gs-footer-bottom { flex-direction: column; align-items: flex-start; }
  .gs-bottom-card { grid-template-columns: 1fr;}
}


@media (max-width: 380px) {
  .gs-flow { grid-template-columns: 1fr; }
  .gs-hero-framework { gap: 8px; }
  .gs-framework-sep { width: 16px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .gs-root *, .gs-root *::before, .gs-root *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
  }
  .gs-reveal { opacity: 1 !important; transform: none !important; }
}

/* ------------------------ Responsive add ----------------------- */
@media (max-width: 1024px) {
  .gs-about-grid { grid-template-columns: 1fr; }
  .gs-cap-grid { gap: 18px; }
  .gs-culture-grid { grid-template-columns: repeat(2, 1fr); }
  .gs-careers-grid { grid-template-columns: repeat(2, 1fr); }
  .gs-team-grid { grid-template-columns: repeat(2, 1fr); }
  .gs-journey { grid-template-columns: repeat(3, 1fr); row-gap: 28px; }
  .gs-journey-line { display: none; }
}
@media (max-width: 900px) {
  .gs-hero-eco { max-width: 460px; margin: 0 auto; }
  .gs-mv-grid { grid-template-columns: 1fr; }
  .gs-cap-grid { grid-template-columns: 1fr; }
  .gs-flagship-grid { grid-template-columns: 1fr; }
  .gs-founder-grid { grid-template-columns: 1fr; }
  .gs-founder-photo { max-width: 320px; }
  .gs-careers-head { grid-template-columns: 1fr; gap: 16px; }
  .gs-featured-article { grid-template-columns: 1fr; }
  .gs-featured-article-media { min-height: 180px; }
  .gs-contact-grid { grid-template-columns: 1fr; }
  .gs-related-grid { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  .gs-eco-caps { grid-template-columns: 1fr; }
  .gs-eco-assets { grid-template-columns: 1fr; }
  .gs-about-principles { grid-template-columns: 1fr; }
  .gs-flagship-points { grid-template-columns: 1fr; }
  .gs-culture-grid { grid-template-columns: 1fr; }
  .gs-careers-grid { grid-template-columns: 1fr; }
  .gs-team-grid { grid-template-columns: 1fr; }
  .gs-insights-grid { grid-template-columns: 1fr; }
  .gs-journey { grid-template-columns: 1fr; }
  .gs-field-row { grid-template-columns: 1fr; gap: 0; }
  .gs-flagship { border-radius: 24px; }
}
