/* Avis — carousel en boucle infinie (marquee CSS pur) */
.avis-carousel{
  position:relative;overflow:hidden;margin-top:44px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
          mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
}
.avis-track{
  display:flex;gap:20px;width:max-content;
  animation:avisScroll 56s linear infinite;will-change:transform;
}
.avis-carousel:hover .avis-track{animation-play-state:paused}
@keyframes avisScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.avis-track{animation:none}}

.avis-track .avis-card{
  width:340px;flex:none;
  background:#fff;border:1px solid var(--line);border-radius:14px;
  padding:22px 22px 20px;box-shadow:var(--shadow-sm);
  display:flex;flex-direction:column;gap:14px;
}
.avis-track .avis-text{font-size:14.5px;color:var(--ink);line-height:1.55;flex:1}
.avis-head{display:flex;align-items:center;gap:11px}
.avis-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;flex:none;border:2px solid #fff;box-shadow:0 2px 8px rgba(38,59,106,.16)}
.avis-track .avis-author{font-weight:600;font-size:13.5px;color:var(--navy);margin:0}
