/* ============================================================
   Responsive breakpoints.
   ============================================================ */

@media (max-width: 1024px) {
  .showcase__cols     { grid-template-columns: 1fr 1fr; gap: var(--sp-8); }
  .img-grid-wrap      { width: 95vw; }
  .scroller__card     { width: 320px; }
}

@media (max-width: 900px) {
  .stats-row { grid-template-columns: repeat(2, 1fr); }
  .services-grid { grid-template-columns: repeat(2, 1fr); }
}

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

@media (max-width: 1024px) {
  .footer__grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
  .nav__links { display: none; }
  .nav__links.is-open {
    display: flex;
    flex-direction: column;
    position: fixed;
    inset: 0;
    background: var(--color-bg-1);
    justify-content: center;
    align-items: center;
    gap: var(--sp-8);
    z-index: 200;
  }
  .nav__links.is-open a { font-size: 18px; }
  .nav__toggle { display: flex; }

  .hero { padding-top: calc(var(--nav-height) + var(--sp-12)); }
  .section { padding: var(--sp-16) var(--sp-6); }

  .showcase__cols    { grid-template-columns: 1fr; }
  .showcase__text-wrap { min-height: auto; }
  .engagements__grid { grid-template-columns: 1fr; }

  /* Engage-scroll: stack vertically on mobile */
  .engage-scroll { height: auto; }
  .engage-scroll__sticky { position: relative; height: auto; }
  .engage-scroll__progress { display: none; }
  .engage-scroll__title-layer { position: relative; display: flex; flex-direction: column; }
  .engage-scroll__title { position: relative; opacity: 1 !important; min-height: 30vh; }
  .engage-scroll__title h2 { font-size: clamp(2rem, 10vw, 3.5rem); }
  .engage-scroll__cards-layer {
    position: relative;
    flex-direction: column;
    transform: none !important;
  }
  .engage-scroll__grid {
    flex: none;
    width: 100%;
    opacity: 1 !important;
    grid-template-columns: 1fr;
    padding: var(--sp-6);
  }
  .engage-scroll__grid .card { background: var(--color-bg-card); }
  .contact__grid     { grid-template-columns: 1fr; gap: var(--sp-10); }
  .scroller__card    { width: 300px; min-height: 380px; }
  .hero__buttons     { flex-direction: column; align-items: flex-start; }
  .stats-row         { grid-template-columns: repeat(2, 1fr); }

  .section-header { gap: var(--sp-4); }
  .footer__grid { grid-template-columns: 1fr; gap: var(--sp-8); }
  .footer__bottom { flex-direction: column; gap: var(--sp-4); }
  .sticky-cta { bottom: var(--sp-5); right: var(--sp-5); }
}

@media (max-width: 480px) {
  .industries__grid { grid-template-columns: 1fr; }
  .scroller__card   { width: 280px; min-height: 360px; }
}
