/* Studio Lumière — responsive */
@media (max-width: 960px) {
  .nav-toggle { display: block; }
  .main-nav { position: fixed; inset: 84px 0 auto; flex-direction: column; align-items: stretch; gap: 0; padding: 10px clamp(18px, 4vw, 44px) 26px; background: var(--bg); border-bottom: 1px solid var(--line); transform: translateY(-140%); transition: transform .45s var(--ease); }
  .mk-nav-open .main-nav { transform: none; }
  .mk-nav-open .site-header { background: var(--bg); }
  .main-nav a { padding: 16px 0; border-bottom: 1px solid var(--line); }
  .main-nav .nav-cta { margin-top: 14px; text-align: center; }
  .cards-3 { grid-template-columns: 1fr 1fr; }
  .about-grid, .contact-grid, .offer { grid-template-columns: 1fr; gap: 30px; }
  .offer:nth-child(even) .offer-shot { order: 0; }
  .about-shot { max-width: 420px; }
}
@media (max-width: 620px) {
  .brand small { display: none; }
  .hero-meta { gap: 14px; font-size: .78rem; letter-spacing: .14em; }
  .hero-actions a { flex: 1 1 100%; }
  .cards-3, .form-row { grid-template-columns: 1fr; }
  .form-row { gap: 0; }
  .masonry { columns: 2 140px; column-gap: 10px; }
  .shot { margin-bottom: 10px; }
  .stats { grid-template-columns: 1fr 1fr 1fr; gap: 10px; }
  .stats dt { font-size: 2rem; }
  .lightbox { grid-template-columns: 40px 1fr 40px; }
  .lb-img { width: 80vw; height: 60vh; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; } }
