@media (max-width: 920px) {
    .main-nav {
      position: absolute;
      top: 76px;
      left: 0;
      right: 0;
      background: var(--concrete);
      border-bottom: 1px solid var(--line);
      flex-direction: column;
      align-items: flex-start;
      gap: 0;
      padding: 8px 28px 20px;
      display: none;
    }
    .main-nav.open { display: flex; }
    .main-nav a { width: 100%; padding: 12px 0; border-bottom: 1px solid var(--line); }
    .main-nav a.nav-cta { text-align: center; margin-top: 10px; border-bottom: none; }
    .nav-toggle { display: flex; }

    .project-grid { grid-template-columns: 1fr 1fr; }
    .why-grid { grid-template-columns: 1fr 1fr; }
    .process-list { grid-template-columns: 1fr 1fr; }
    .enquiry-form { grid-template-columns: 1fr; }
    .past-grid { grid-template-columns: 1fr 1fr; }
    .hero-stats { gap: 32px; }
    .hero-inner { flex-direction: column; align-items: stretch; gap: 40px; }
    .hero-content { max-width: none; }
    .hero-carousel-box { aspect-ratio: 4 / 3; border-radius: 18px; }
    .contact-columns { grid-template-columns: 1fr; }
    .office-grid { grid-template-columns: 1fr; }
    .about-grid { grid-template-columns: 1fr; }
    .services-grid { grid-template-columns: 1fr 1fr; }
    .md-grid { grid-template-columns: 1fr; }
    .md-top { flex-direction: column; align-items: flex-start; gap: 24px; }
    .md-photo { margin: 0 auto; width: 180px; height: 180px; }
    .vmv-grid { grid-template-columns: 1fr; }
    .markets-grid { grid-template-columns: 1fr 1fr; }
  }
  
@media (max-width: 640px) {
.project-grid { grid-template-columns: 1fr; }
    .section-pager { right: 10px; gap: 8px; }
    .pager-btn { width: 36px; height: 36px; }
    .pager-btn svg { width: 17px; height: 17px; }
    .why-grid { grid-template-columns: 1fr; }
    .process-list { grid-template-columns: 1fr 1fr; }
    .hero { padding: 76px 0 56px; }
    .footer-inner { flex-direction: column; align-items: flex-start; }
    .footer-links { flex-wrap: wrap; gap: 14px 18px; }
    .wrap { padding: 0 20px; }
    .enquiry-form, .contact-alt { min-width: 0; }
    .enquiry-form { padding: 22px 18px; }
    .services-grid { grid-template-columns: 1fr; }
    .markets-grid { grid-template-columns: 1fr; }
    .past-grid { grid-template-columns: 1fr; }
    .md-quote { font-size: 1.15rem; padding-left: 18px; }
    .hero-caption { left: 12px; bottom: 18px; padding: 8px 12px; }
    .hero-caption-name { font-size: 0.95rem; }
    .hero-caption-where { font-size: 0.6rem; }
    .hero-counter { top: 12px; right: 12px; font-size: 0.64rem; padding: 4px 8px; }
  
    .header-actions { display: none; }
    .whatsapp-float { display: none; }
    .mobile-cta-bar { display: flex; }
    body { padding-bottom: 64px; }

    .modal-backdrop { padding: 12px; align-items: flex-end; }
    .modal { max-height: 92vh; max-width: 100%; border-radius: 12px 12px 0 0; }
    .modal-media { height: 230px; }
    .modal-body { padding: 22px 20px 26px; }
    .modal-list-grid { grid-template-columns: 1fr; }
    .modal-gallery { grid-template-columns: repeat(2, 1fr); gap: 6px; }
    .lightbox { padding: 20px; }
    .lightbox-prev, .lightbox-next { padding: 8px 12px; font-size: 1.5rem; }
    .lightbox-prev { left: 8px; }
    .lightbox-next { right: 8px; }
    .enquiry-modal-backdrop { padding: 12px; align-items: flex-end; }
    .enquiry-modal { max-width: 100%; border-radius: 14px 14px 0 0; padding: 26px 20px 28px; }
    .enquiry-modal-form { grid-template-columns: 1fr; }
    .enquiry-modal-actions { grid-template-columns: repeat(2, 1fr); }
    .welcome-toast { right: 12px; bottom: 12px; width: auto; }
  }