@import url("reviews.css?v=21");

/* Avis : défilement continu uniquement en CSS, sans flèches ni JavaScript. */
.reviews-rail-tools { display: none; }

@media (min-width: 851px) {
  .reviews-intro { grid-column: 1; grid-row: 1; }
  .reviews-viewport { grid-column: 2; grid-row: 1; align-self: center; min-width: 0; }
}

.reviews-viewport {
  overflow: hidden;
  padding: 9px 0 14px;
  scroll-snap-type: none;
  scroll-behavior: auto;
  mask-image: linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent);
}

.reviews-track {
  display: flex;
  gap: 18px;
  width: max-content;
  animation: reviews-flow 24s linear infinite;
  will-change: transform;
}

.reviews-viewport:hover .reviews-track,
.reviews-viewport:focus-within .reviews-track {
  animation-play-state: paused;
}

.review-card {
  scroll-snap-align: none;
  min-height: 268px;
}

.review-card blockquote {
  display: block;
  overflow: visible;
  min-height: 0;
}

.review-excerpt { display: block; }
.review-details { margin-top: 14px; }
.review-details summary {
  display: inline-block;
  list-style: none;
  color: #a39891;
  font: inherit;
  font-size: 11px;
  cursor: pointer;
}
.review-details summary::-webkit-details-marker { display: none; }
.review-details summary::after { content: " +"; }
.review-details[open] summary { color: var(--gold); }
.review-details[open] summary::after { content: " −"; }
.review-details > span { display: block; margin-top: 11px; }

@keyframes reviews-flow {
  from { transform: translateX(0); }
  to { transform: translateX(calc(-50% - 9px)); }
}

@media (prefers-reduced-motion: reduce) {
  .reviews-track { animation: none; }
}

@media (max-width: 850px) {
  .reviews-intro, .reviews-viewport { grid-column: auto; grid-row: auto; }
  .reviews-viewport { margin-right: -25px; mask-image: linear-gradient(90deg, #000 92%, transparent); }
  .reviews-track { animation-duration: 22s; }
}
