/* ==========================================================================
   responsive.css — Points de rupture
   Desktop-first : les media queries réduisent progressivement la grille.
   ========================================================================== */

/* Grands écrans / laptops */
@media (max-width: 1200px) {
  .model-card { flex: 0 0 25%; } /* 4 visibles */
  .news__grid { grid-template-columns: repeat(2, 1fr); }
  .news-row__excerpt { display: none; }
  .megamenu__grid { grid-template-columns: repeat(3, 1fr); }
}

/* Tablettes paysage */
@media (max-width: 1024px) {
  :root { --space-xl: 4rem; }
  .nav { display: none; }
  .burger { display: flex; margin-left: auto; }
  .mosaic { grid-template-columns: 1fr 1fr; }
  .mosaic > .mosaic__tile:nth-child(1) { grid-column: 1; grid-row: 1 / 3; aspect-ratio: auto; }
  .mosaic > .mosaic__tile:nth-child(2) { grid-column: 2; grid-row: 1; aspect-ratio: 1/1; }
  .mosaic > .mosaic__tile:nth-child(3) { grid-column: 2; grid-row: 2; aspect-ratio: 1/1; }
  .mosaic > .mosaic__tile:nth-child(4) { grid-column: 1 / 3; grid-row: 3; aspect-ratio: 16/6; }
  /* Variante électrique tablette */
  .mosaic--electric > .mosaic__tile:nth-child(1) { grid-column: 1; grid-row: 1; aspect-ratio: 1/1; }
  .mosaic--electric > .mosaic__tile:nth-child(2) { grid-column: 1; grid-row: 2; aspect-ratio: 1/1; }
  .mosaic--electric > .mosaic__tile:nth-child(3) { grid-column: 2; grid-row: 1; aspect-ratio: 1/1; }
  .mosaic--electric > .mosaic__tile:nth-child(4) { grid-column: 2; grid-row: 2; aspect-ratio: 1/1; }
  .mosaic--electric > .mosaic__tile:nth-child(5) { grid-column: 1 / 3; grid-row: 3; aspect-ratio: 16/6; }
  .offer-row__body { grid-template-columns: 1fr; }
  .quick__grid { grid-template-columns: 1fr 1fr; }
  .quick-mosaic { grid-template-columns: 1fr 1fr; grid-template-rows: 260px 220px 220px 260px; }
  .quick-mosaic .mosaic__tile:nth-child(1) { grid-column: 1 / 3; grid-row: 1; }
  .quick-mosaic .mosaic__tile:nth-child(2) { grid-column: 1;     grid-row: 2; }
  .quick-mosaic .mosaic__tile:nth-child(3) { grid-column: 2;     grid-row: 2; }
  .quick-mosaic .mosaic__tile:nth-child(4) { grid-column: 1;     grid-row: 3; }
  .quick-mosaic .mosaic__tile:nth-child(5) { grid-column: 2;     grid-row: 3; }
  .quick-mosaic .mosaic__tile:nth-child(6) { grid-column: 1 / 3; grid-row: 4; }
  .footer__top { grid-template-columns: 1fr 1fr; }
  .footer__links-grid { grid-template-columns: repeat(3, 1fr); }
  .footer__links-head--invisible { display: none; }
}

/* Tablettes portrait */
@media (max-width: 768px) {
  .model-card { flex: 0 0 33.333%; } /* 3 visibles */
  .hero__slide { height: min(58vh, 496px); }
  .hero__dots { right: calc(1rem + 40px + 0.6rem); bottom: calc(1.2rem + (40px - 5px) / 2); }
  .hero__dot { width: 22px; height: 4px; }
  .hero__playpause { right: 1rem; bottom: 1.2rem; width: 40px; height: 40px; }
  .hero__playpause svg { width: 15px; }
  .section__head { flex-direction: column; align-items: flex-start; }
  .offer-row__right { padding: 2rem; }
  .footer__bottom { flex-direction: column; align-items: flex-start; }
  .footer__also-inner { flex-direction: column; align-items: flex-start; gap: 0.75rem; }
  .footer__contact-inner { flex-direction: column; align-items: flex-start; }
  .footer__bottom-inner { flex-direction: column; align-items: flex-start; }
}

/* Mobiles */
@media (max-width: 560px) {
  .container { width: min(100% - 2rem, var(--container)); }
  .model-card { flex: 0 0 50%; } /* 2 visibles */
  .btn--range-cta { width: auto; }
  .mosaic { grid-template-columns: 1fr; }
  .mosaic > .mosaic__tile:nth-child(1),
  .mosaic > .mosaic__tile:nth-child(2),
  .mosaic > .mosaic__tile:nth-child(3),
  .mosaic > .mosaic__tile:nth-child(4) { grid-column: 1; grid-row: auto; aspect-ratio: 16/9; }
  .mosaic--electric > .mosaic__tile:nth-child(1),
  .mosaic--electric > .mosaic__tile:nth-child(2),
  .mosaic--electric > .mosaic__tile:nth-child(3),
  .mosaic--electric > .mosaic__tile:nth-child(4),
  .mosaic--electric > .mosaic__tile:nth-child(5) { grid-column: 1; grid-row: auto; aspect-ratio: 16/9; }
  .feature-mosaic__row { flex-direction: column; height: auto; }
  .feature-mosaic__tile--wide,
  .feature-mosaic__tile--narrow { flex: none; aspect-ratio: 16/9; }
  .quick__grid { grid-template-columns: 1fr; }
  .quick-mosaic { grid-template-columns: 1fr; grid-template-rows: repeat(6, 220px); }
  .quick-mosaic .mosaic__tile:nth-child(1),
  .quick-mosaic .mosaic__tile:nth-child(2),
  .quick-mosaic .mosaic__tile:nth-child(3),
  .quick-mosaic .mosaic__tile:nth-child(4),
  .quick-mosaic .mosaic__tile:nth-child(5),
  .quick-mosaic .mosaic__tile:nth-child(6) { grid-column: 1; grid-row: auto; }
  .news__grid { grid-template-columns: 1fr; }
  .news-row { flex-direction: column; align-items: flex-start; gap: 0.75rem; }
  .news-row__cta { align-self: flex-end; }
  .footer__top { grid-template-columns: 1fr; }
  .footer__links-grid { grid-template-columns: 1fr 1fr; }
  .footer__links-col a { white-space: normal; }
  .hero__actions { flex-direction: column; align-items: stretch; }
  .hero__actions .btn { justify-content: center; }
  .btn { width: 100%; justify-content: center; }
}

/* Respect des préférences de mouvement réduit */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.001ms !important; transition-duration: 0.001ms !important; scroll-behavior: auto !important; }
  [data-reveal] { opacity: 1; transform: none; }
}
