/* Section */
.reviews-section{
  max-width:1400px;
  margin:90px auto 0;
  padding:0 20px 0 0;
  position:relative;
}


/* Rating row */
.reviews-rating.under-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:12px;
  margin-bottom:34px;
  flex-wrap:wrap;
}
.rating-left{
  display:flex;
  align-items:center;
  gap:.7rem;
  flex-wrap:wrap;
}
.stars{
  color:#f4b400;
  font-size:1.25rem;
  letter-spacing:2px;
}
.rating-text{
  color:var(--sub);
  font-size:.98rem;
}
.google-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
}
.google-icon{
  width:22px;
  height:22px;
  display:block;
}

/* Wrapper */
.reviews-wrapper{
  position:relative;
}

/* Fade left/right */
.reviews-wrapper::before,
.reviews-wrapper::after{
  display:none;
}

/* Container */
.reviews-container{
  display:flex;
  gap:26px;
  overflow-x:auto;
  overflow-y:hidden;
  padding:10px 0 40px 0;
  -webkit-overflow-scrolling:touch;
  cursor:grab;
  user-select:none;
  scrollbar-width:none;
  -ms-overflow-style:none;
  touch-action: pan-y;
}
.reviews-container::-webkit-scrollbar{ display:none; }
.reviews-container:active,
.reviews-container.is-dragging{ cursor:grabbing; }

/* Card */
.review-card{
  min-width:420px;
  max-width:420px;
  flex-shrink:0;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:5px;
  padding:18px 18px 16px;
  box-shadow:var(--shadow);
  position:relative;
  overflow:hidden;
  transition:border-color .2s ease;
}
.review-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(0, 0, 0, 0.04);
  opacity:0;
  transition:opacity .25s ease;
  z-index:0;
}
.review-card > *{
  position:relative;
  z-index:1;
}
.review-card:hover{
  border-color:rgba(0, 0, 0, 0.14);
}
.review-card:hover::before{
  opacity:1;
}

/* Header */
.review-header{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  margin-bottom:14px;
}
.review-info h4{
  font-size:1rem;
  font-weight:700;
  color:var(--txt);
  margin:0 0 6px 0;
}
.review-stars{
  color:#f4b400;
  font-size:1.05rem;
  letter-spacing:1.5px;
  white-space:nowrap;
}

/* Text */
.review-text{
  color:#3c4043;
  line-height:1.7;
  font-size:.95rem;
  margin:0;
  transition:color .2s ease;
}
.review-card:hover .review-text{
  color:#2f3134;
}

/* Responsive – Breiten bleiben gleich */
@media (max-width:1024px){
  .review-card{ min-width:380px; max-width:380px; }
}
@media (max-width:768px){
  .reviews-section{ margin:70px auto 0; padding:0 15px 0 6px; }
  .reviews-container{ gap:18px; padding:8px 0 34px 0; }
  .review-card{ min-width:320px; max-width:320px; }
}
@media (max-width:480px){
  .review-card{ min-width:290px; max-width:290px; }
}
