
/* Reviews Section */
.reviews-section {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.02) 0%, transparent 100%);
}

.reviews-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 2rem;
}

.review-card {
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  transition: all var(--transition-base);
}

.review-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-glow);
}

.review-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
}

.review-author {
  display: flex;
  gap: 1rem;
  flex: 1;
}

.avatar {
  width: 40px;
  height: 40px;
  border-radius: var(--radius-full);
  background: linear-gradient(135deg, hsl(var(--primary)), hsl(var(--accent)));
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  color: #000;
  flex-shrink: 0;
}

.author-info {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.author-name {
  font-size: 0.95rem;
  font-weight: 600;
  color: hsl(var(--text-primary));
}

.author-role {
  font-size: 0.8rem;
  color: hsl(var(--text-muted));
}

.review-rating {
  flex-shrink: 0;
}

.stars {
  color: hsl(var(--accent));
  font-size: 1rem;
  letter-spacing: 2px;
}

.review-text {
  color: hsl(var(--text-muted));
  font-size: 0.95rem;
  line-height: 1.6;
  font-style: italic;
}

/* Carousel Wrapper */
.reviews-carousel {
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
  /* scroll-snap-type: x mandatory; */
  /* scroll-behavior: smooth; */
  padding-bottom: 1rem;
}

/* Hide scrollbar (optional) */
.reviews-carousel::-webkit-scrollbar {
  display: none;
}

/* Each review card becomes a snap item */
.reviews-grid {
  display: inline-flex;
  gap: 1.5rem;
}

.review-card {
  scroll-snap-align: start;
  min-width: 320px;      /* width of each slide */
  max-width: 320px;
  white-space: normal;   /* allow text wrapping inside */
}
