@media (max-width: 1100px) {
  .section { padding: 90px 0; }
  .intro-grid, .why-grid, .about-grid, .contact-grid { grid-template-columns: 1fr; gap: 50px; }
  .showcase-grid { grid-template-columns: repeat(2, 1fr); }
  .showcase-item.large { grid-column: span 2; grid-row: span 1; }
  .testimonial-grid { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 40px; }
  .pillar-grid { grid-template-columns: 1fr; }
}

@media (max-width: 768px) {
  .container { padding: 0 24px; }
  .section { padding: 70px 0; }
  .nav-desktop { display: none; }
  .menu-toggle { display: flex; }
  .header-inner { padding: 0 24px; }

  .hero { min-height: 90vh; padding: 110px 0 70px; }
  .hero-content { padding: 0 24px; }
  .hero-cta { flex-direction: column; align-items: stretch; }
  .hero-cta .btn { text-align: center; }

  .service-grid { grid-template-columns: 1fr; }
  .showcase-grid { grid-template-columns: 1fr; grid-auto-rows: 280px; }
  .showcase-item.large { grid-column: span 1; }

  .page-hero { padding: 150px 0 60px; }
  .contact-form { padding: 32px 24px; }
  .field-row { grid-template-columns: 1fr; }

  .footer-grid { grid-template-columns: 1fr; gap: 30px; margin-bottom: 40px; }
  .footer-bottom { flex-direction: column; gap: 8px; text-align: center; }

  .approach-steps li { font-size: 0.98rem; }
}

@media (max-width: 480px) {
  .section { padding: 60px 0; }
  h1 { font-size: 2.3rem; }
  .display { font-size: 2rem; }
  .testimonial-grid p { font-size: 1.1rem; }
  .pillar { padding: 32px 24px; }
}