@media (max-width: 1024px) {
  .section { padding: 80px 0; }
  .intro { padding: 90px 0; }
  .intro-grid, .about-grid, .philo-grid, .contact-grid { grid-template-columns: 1fr; gap: 50px; }
  .about-image { height: 420px; }
  .services-grid { grid-template-columns: 1fr; }
  .showcase-grid { grid-template-columns: 1fr 1fr; grid-auto-rows: 280px; }
  .showcase-item.large, .showcase-item.wide { grid-column: span 2; grid-row: auto; }
  .why-grid, .pillars, .testi-grid { grid-template-columns: 1fr; gap: 28px; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 40px; }
}

@media (max-width: 720px) {
  .container { padding: 0 22px; }
  .section { padding: 60px 0; }
  .intro { padding: 70px 0; }
  .section-head { margin-bottom: 50px; }

  .menu-toggle { display: flex; }
  .nav-links {
    position: fixed;
    top: 0; right: -100%;
    width: 78%; max-width: 340px;
    height: 100vh;
    background: var(--cream);
    flex-direction: column;
    align-items: flex-start;
    padding: 100px 36px 40px;
    gap: 24px;
    transition: right .4s ease;
    box-shadow: -10px 0 40px rgba(43,61,47,.15);
  }
  .nav-links.open { right: 0; }
  .nav-links a { font-size: 1.1rem; }

  .menu-toggle.active span:nth-child(1) { transform: translateY(11px) rotate(45deg); }
  .menu-toggle.active span:nth-child(2) { opacity: 0; }
  .menu-toggle.active span:nth-child(3) { transform: translateY(-11px) rotate(-45deg); }

  .hero-content { padding: 130px 22px 100px; }
  .hero-cta { flex-direction: column; align-items: stretch; }
  .btn { text-align: center; }

  .showcase-grid { grid-template-columns: 1fr; grid-auto-rows: 260px; }
  .showcase-item.large, .showcase-item.wide { grid-column: span 1; }

  .footer-grid { grid-template-columns: 1fr; gap: 30px; padding-bottom: 30px; }
  .contact-form { padding: 30px; }
  .pillar { padding: 28px; }
  .testi { padding: 28px; }
  .page-hero { padding: 150px 0 60px; }
}