/* ==========================================================================
   Mobile Overrides
   ========================================================================== */
@media (max-width: 767px) {
  .zg3-container { padding-inline: 16px; }

  .zg3-section { padding-block: var(--zg3-sp-48); }

  .zg3-section-header { margin-bottom: var(--zg3-sp-32); }
  .zg3-section-header h2 { font-size: clamp(24px, 6vw, 36px); }

  .zg3-section-header--flex {
    flex-direction: column;
    gap: var(--zg3-sp-16);
  }
  .zg3-section-header--flex .zg3-btn {
    align-self: flex-start;
  }

  /* Services: handled in services.css */

  /* Why-us: 1 col on mobile (responsive handled in why-us.css) */
  .zg3-whyus-bubbles { margin-top: var(--zg3-sp-24); }

  /* Team: 2 + peek, no right clip */
  .zg3-team-swiper .swiper-slide { width: 45%; }
  .zg3-team-swiper { overflow: visible !important; }
  #team { overflow: hidden; }

  .zg3-faq-grid { gap: var(--zg3-sp-32); }
  .zg3-footer__grid { gap: var(--zg3-sp-32); }
  .zg3-contact-grid { gap: var(--zg3-sp-32); }

  /* Quiz: layout handled in contact.css */

  /* Partners marquee — reset left margin for mobile */
  .zg3-marquee {
    margin-left: -16px;
  }

  /* Reviews nav */
  .zg3-reviews-nav {
    margin-bottom: var(--zg3-sp-16);
  }

  /* Blog mobile: no swiper dots, full-width button */
  .zg3-section-header--flex .zg3-btn {
    width: 100%;
    justify-content: center;
  }

  /* Portfolio mobile: no swiper dots, no right clip */
  .zg3-portfolio-swiper .swiper-pagination { display: none; }
  .zg3-portfolio-swiper { overflow: visible !important; }
  #portfolio { overflow: hidden; }
  .zg3-portfolio-card--mobile .zg3-portfolio-card__image {
    aspect-ratio: 4/5;
  }
}
