/* ==========================
   AVIS CLIENTS DÉFILANTS — ACCUEIL
========================== */

.home-reviews-section{
  position:relative;
  z-index:1;
  padding:3rem 0;
}

.home-reviews-header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:1rem;
  margin-bottom:1.6rem;
}

.home-reviews-controls{
  display:flex;
  align-items:center;
  gap:.7rem;
  flex-shrink:0;
}

.review-arrow{
  width:44px;
  height:44px;
  border-radius:50%;
  border:1px solid rgba(212,175,55,.45);
  background:rgba(10,10,16,.96);
  color:#fff;
  font-size:1.9rem;
  line-height:1;
  cursor:pointer;
  transition:.22s ease-out;
}

.review-arrow:hover{
  background:var(--accent);
  transform:translateY(-2px);
  box-shadow:0 12px 30px rgba(212,175,55,.35);
}

.reviews-slider-wrap{
  position:relative;
  overflow:hidden;
}

.reviews-slider{
  display:flex;
  gap:1rem;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  padding:.2rem .1rem 1rem;
  scrollbar-width:none;
}

.reviews-slider::-webkit-scrollbar{
  display:none;
}

.review-slide{
  flex:0 0 calc((100% - 2rem) / 3);
  scroll-snap-align:start;
}

.review-card{
  height:100%;
  min-height:285px;
  position:relative;
  overflow:hidden;
  background:rgba(10,10,16,.96);
  border:1px solid var(--border);
  border-radius:22px;
  padding:1.35rem;
  box-shadow:var(--shadow-main);
}

.review-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top right,rgba(212,175,55,.13),transparent 38%);
  pointer-events:none;
}

.review-card > *{
  position:relative;
  z-index:1;
}

.review-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  margin-bottom:.55rem;
}

.review-stars{
  color:var(--accent);
  letter-spacing:.16em;
  font-size:1rem;
}

.review-note{
  color:#fff;
  font-size:.75rem;
  font-weight:800;
  padding:.35rem .65rem;
  border:1px solid rgba(212,175,55,.35);
  background:rgba(212,175,55,.08);
  border-radius:999px;
}

.review-date{
  display:inline-flex;
  color:var(--muted);
  font-size:.82rem;
  margin-bottom:.8rem;
}

.review-text{
  color:#d7d7dd;
  line-height:1.75;
  font-size:.95rem;
  margin-bottom:1.2rem;
}

.review-author{
  display:flex;
  align-items:center;
  gap:.75rem;
  margin-top:auto;
}

.review-author span{
  width:38px;
  height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--accent);
  color:#fff;
  font-weight:900;
  flex-shrink:0;
}

.review-author strong{
  color:#fff;
  font-size:.95rem;
}

@media(max-width:980px){
  .review-slide{
    flex-basis:calc((100% - 1rem) / 2);
  }
}

@media(max-width:680px){
  .home-reviews-section{
    padding:2rem 0;
  }

  .home-reviews-header{
    align-items:flex-start;
    flex-direction:column;
  }

  .home-reviews-controls{
    width:100%;
    justify-content:flex-end;
  }

  .review-slide{
    flex-basis:88%;
  }

  .review-card{
    min-height:260px;
    border-radius:18px;
    padding:1.2rem;
  }
}

@media(max-width:430px){
  .review-slide{
    flex-basis:92%;
  }

  .review-arrow{
    width:40px;
    height:40px;
  }
}


/* FIX AFFICHAGE AVIS ACCUEIL — cartes propres en slider */
.home-reviews-section{
  position:relative;
  z-index:1;
  padding:2.6rem 0;
  overflow:hidden;
}

.home-reviews-section .container{
  max-width:1200px;
}

.home-reviews-header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:1rem;
  margin-bottom:1.25rem;
}

.home-reviews-controls{
  display:flex;
  align-items:center;
  gap:.55rem;
  flex-shrink:0;
}

.review-arrow{
  width:40px;
  height:40px;
  border-radius:999px;
  border:1px solid rgba(212,175,55,.45);
  background:rgba(10,10,16,.96);
  color:#fff;
  font-size:1.45rem;
  line-height:1;
  cursor:pointer;
  transition:.22s ease-out;
}

.review-arrow:hover{
  background:var(--accent);
  color:#080808;
  transform:translateY(-2px);
}

.reviews-slider-wrap{
  position:relative;
  width:100%;
  overflow:hidden;
}

.reviews-slider{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:1rem;
  width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  padding:.15rem .1rem 1rem;
  scrollbar-width:none;
}

.reviews-slider::-webkit-scrollbar{
  display:none;
}

.review-slide{
  flex:0 0 calc((100% - 2rem) / 3) !important;
  width:calc((100% - 2rem) / 3) !important;
  max-width:calc((100% - 2rem) / 3) !important;
  min-width:0 !important;
  scroll-snap-align:start;
}

.review-card{
  height:100%;
  min-height:245px !important;
  max-height:none !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between;
  gap:.75rem;
  padding:1.2rem !important;
  border-radius:20px !important;
  background:
    radial-gradient(circle at top right,rgba(212,175,55,.10),transparent 36%),
    rgba(10,10,16,.96) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  box-shadow:0 18px 44px rgba(0,0,0,.28) !important;
  overflow:hidden;
}

.review-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  margin-bottom:.15rem;
}

.review-stars{
  color:var(--accent);
  letter-spacing:.08em;
  font-size:.92rem;
  white-space:nowrap;
}

.review-note{
  color:#fff;
  font-size:.78rem;
  font-weight:900;
  white-space:nowrap;
}

.review-date{
  display:block;
  color:var(--muted);
  font-size:.82rem;
}

.review-text{
  color:#d7d7dd;
  line-height:1.65;
  font-size:.92rem;
  margin:0;
  display:-webkit-box;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.review-author{
  display:flex;
  align-items:center;
  gap:.65rem;
  margin-top:auto;
}

.review-author span{
  width:34px;
  height:34px;
  min-width:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:linear-gradient(135deg,#fff3b0,#d4af37,#8a5a12);
  color:#080808;
  font-weight:900;
  font-size:.85rem;
}

.review-author strong{
  color:#fff;
  font-size:.92rem;
  line-height:1.3;
}

@media(max-width:980px){
  .review-slide{
    flex-basis:calc((100% - 1rem) / 2) !important;
    width:calc((100% - 1rem) / 2) !important;
    max-width:calc((100% - 1rem) / 2) !important;
  }
}

@media(max-width:680px){
  .home-reviews-section{
    padding:2rem 0;
  }

  .home-reviews-header{
    flex-direction:column;
    align-items:flex-start;
  }

  .home-reviews-controls{
    width:100%;
    justify-content:flex-end;
  }

  .review-slide{
    flex-basis:88% !important;
    width:88% !important;
    max-width:88% !important;
  }

  .review-card{
    min-height:230px !important;
    border-radius:18px !important;
    padding:1rem !important;
  }
}


/* AUTO-SLIDER AVIS : pause au survol */
.review-card{
  cursor: default;
}

.review-card:hover{
  border-color: rgba(212,175,55,.42) !important;
  transform: translateY(-3px);
  transition: .22s ease-out;
}

.reviews-slider{
  cursor: grab;
}

.reviews-slider:active{
  cursor: grabbing;
}
