/* Cabinet dentaire du Molard — responsive */
@media (max-width: 960px) {
  .nav-toggle { display: block; }
  .main-nav { position: absolute; top: 100%; left: 0; right: 0; z-index: -1; flex-direction: column; align-items: stretch; padding: 14px clamp(18px, 4vw, 40px) 24px; background: #fff; box-shadow: 0 30px 40px -30px rgba(15, 42, 51, .4); transform: translateY(-140%); transition: transform .4s var(--ease); }
  .mk-nav-open .main-nav { transform: none; }
  .main-nav a { padding: 14px 16px; }
  .main-nav .btn-cta { margin: 8px 0 0; text-align: center; }
  .hero-inner, .team-grid, .faq-grid, .contact-layout { grid-template-columns: 1fr; }
  .hero-visual { max-width: 360px; }
  .why-cards, .soins-grid { grid-template-columns: 1fr 1fr; }
  .footer-inner { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .topbar-inner span:last-child { display: none; }
  .brand-text small { display: none; }
  .why-cards, .soins-grid, .visit-steps, .form-row, .footer-inner { grid-template-columns: 1fr; }
  .visit-steps::before { display: none; }
  .form-row { gap: 0; }
  .hero-actions a { flex: 1 1 100%; }
  .soin-row { grid-template-columns: 1fr; gap: 8px; }
  .soin-price { text-align: left; }
  .fc1 { left: 0; } .fc2 { right: 0; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; } }
