@media (min-width: 901px) { .hero-scroll { display: flex; } }
@media (max-width: 1100px) { .services-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 900px) {
  .nav-links { display: none; }
  .nav-cta { display: none !important; }
  #hamburger { display: flex; }
  #home { padding: 0 6vw 12vh; }
  .hero-letter { font-size: 70vw; right: -8vw; opacity: 0.6; }
  .hero-tag { font-size: 9px; letter-spacing: 0.25em; margin-bottom: 20px; }
  .hero-sub { font-size: 13px; margin-bottom: 28px; max-width: 100%; }
  .hero-btns { flex-direction: column; gap: 12px; }
  .hero-btns .btn-primary, .hero-btns .btn-outline { text-align: center; padding: 16px 24px; width: 100%; max-width: 280px; }
  .hero-scroll { display: none; }
  #stats { padding: 48px 6vw; }
  .stats-grid { grid-template-columns: 1fr 1fr; gap: 16px; }
  .stat-num { font-size: 32px; }
  .stat-label { font-size: 9px; letter-spacing: 0.1em; margin-top: 8px; }
  #services { padding: 60px 6vw; }
  .services-grid { grid-template-columns: 1fr; }
  .service-card { padding: 32px 24px; }
  .service-title { font-size: 20px; }
  #about { padding: 60px 6vw; }
  .about-grid { grid-template-columns: 1fr; gap: 48px; }
  .quote-inner { padding: 36px 28px; }
  .quote-mark { font-size: 52px; }
  #gallery { padding: 60px 6vw; }
  .gallery-grid { grid-template-columns: 1fr 1fr; gap: 2px; }
  .gallery-label-name { font-size: 12px; }
  .gallery-label { padding: 14px 12px 10px; }
  #partners { padding: 60px 6vw; }
  .partners-grid { grid-template-columns: 1fr 1fr; }
  #faq { padding: 60px 6vw; }
  summary { font-size: 14px; }
  #cta { padding: 60px 6vw; }
  .cta-btns { flex-direction: column; align-items: center; gap: 12px; }
  .cta-btns .btn-primary, .cta-btns .btn-outline { width: 100%; max-width: 300px; text-align: center; }
  #contact { padding: 60px 6vw; }
  .contact-grid { grid-template-columns: 1fr; gap: 48px; }
  footer { flex-direction: column; align-items: flex-start; gap: 24px; padding: 36px 6vw; }
  .footer-nav { gap: 16px; }
  .footer-copy { font-size: 10px; }
  .divider { margin: 18px 0; }
  #lb-prev, #lb-next { font-size: 40px; }
  #lb-prev { left: 0; }
  #lb-next { right: 0; }
}
@media (max-width: 480px) { .partners-grid { grid-template-columns: 1fr; } }
@media (max-width: 380px) {
  .hero-h1 { font-size: 38px; }
  .stats-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
  .gallery-grid { grid-template-columns: 1fr; }
}