/* Logo blanc uniquement dans l'en-tête sombre. */
header .brand img { filter: brightness(0) invert(1); }

@media (max-width: 900px) {
  header { padding-inline: 6vw; }
  .hero { grid-template-columns: 1fr; }
  .hero-copy { min-height: 460px; padding: 70px 6vw 58px; }
  .hero-image { min-height: 430px; }
  .stock, .statement { padding-inline: 6vw; }
  .vehicle-image { height: 315px; }
  .contact { padding-inline: 6vw; }
}

@media (max-width: 680px) {
  .notice { padding: 9px 5vw; font-size: 9px; }
  .notice a, header nav { display: none; }
  header { height: 68px; padding-inline: 5vw; }
  .brand { padding: 5px 0; }
  .brand img { width: 137px; }
  .header-contact { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 0; font-size: 0; }
  .header-contact b { margin: 0; font-size: 18px; }

  .hero-copy { min-height: 410px; padding: 60px 5vw 48px; }
  .hero h1 { font-size: clamp(47px, 15vw, 66px); }
  .intro { margin: 25px 0; font-size: 14px; }
  .hero-actions { gap: 18px; }
  .button { gap: 20px; padding: 14px 16px; }
  .hero-image { min-height: 340px; }
  .hero-model { bottom: 25px; left: 5vw; font-size: 11px; }
  .hero-model b { font-size: 27px; }
  .hero-number { right: 5vw; bottom: 29px; }

  .stock, .statement { padding: 72px 5vw; }
  .section-heading { display: block; margin-bottom: 33px; }
  .section-heading h2 { font-size: clamp(41px, 12vw, 56px); }
  .stock-count { margin-top: 19px; text-align: left; }
  .vehicle-grid { grid-template-columns: 1fr; gap: 18px; }
  .vehicle-image { height: min(70vw, 335px); }
  .card-info { padding: 20px; }
  .card-info h3 { font-size: 20px; }
  .price { font-size: 16px; }

  .statement h2, .contact h2 { font-size: clamp(40px, 12vw, 56px); }
  .commitments { grid-template-columns: 1fr; gap: 35px; margin-top: 48px; }
  .commitments h3 { margin-top: 24px; }
  .contact { display: block; padding: 70px 5vw; }
  .contact-actions { min-width: 0; margin-top: 42px; }
  .phone { font-size: clamp(23px, 7.4vw, 28px); }
  footer { flex-wrap: wrap; padding: 27px 5vw; }
  footer p { order: 3; width: 100%; }

  dialog { width: 100%; max-width: 100%; max-height: 100dvh; margin: 0; }
  .modal-grid { display: block; }
  .modal-gallery img { height: 130px; }
  .modal-gallery img:first-child { height: 270px; }
  .modal-copy { padding: 30px 24px 38px; }
  .modal-copy h2 { font-size: 31px; }
  .admin { min-width: 0; padding: 36px 24px; }
  .admin-row { align-items: start; gap: 12px; }
}
