@media (max-width: 800px) {
  .main-nav { background: var(--white); border-bottom: 1px solid var(--line); display: none; left: 0; padding: 1rem; position: absolute; top: 100%; width: 100%; }
  .main-nav.open { display: block; }
  .main-nav ul { align-items: stretch; flex-direction: column; }
  .main-nav a { display: block; padding: .5rem; }
  .nav-toggle { display: block; }
  .hero-inner { padding: 4.5rem 0 3rem; }
  .hero-vault { opacity: .14; right: -10rem; top: 4rem; width: 36rem; }
  .gallery-grid, .footer-inner { grid-template-columns: repeat(2, 1fr); }
  .conf-inner, .contact-inner { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .service-cards, .gallery-grid, .testimonials-grid, .footer-inner { grid-template-columns: 1fr; }
  .pricing-table { display: block; overflow-x: auto; white-space: nowrap; }
  .hero h1 { font-size: 2.35rem; }
  .hero-stats { gap: 1rem; }
  .recommender-controls { align-items: stretch; flex-direction: column; }
  .satisfaction-metrics { gap: 1rem; }
}
