/* ===== REVIEWS ===== */
.reviews-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 22px;
}
.review-card {
  background: white;
  border-radius: var(--r-lg);
  padding: 1.75rem;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--border);
  transition: transform var(--t-base), box-shadow var(--t-base);
  position: relative;
  overflow: hidden;
}
.review-card::before {
  content: '"';
  position: absolute;
  top: -10px; right: 20px;
  font-size: 100px;
  color: var(--green-pale);
  font-family: var(--font-display);
  font-weight: 900;
  line-height: 1;
  pointer-events: none;
  z-index: 0;
}
.review-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-md); }
.review-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:1rem; position:relative; z-index:1; }
.review-stars { color:#F5A623; font-size:16px; letter-spacing:2px; }
.review-source-badge {
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 10px;
  border-radius: var(--r-full);
  background: var(--cream);
  transition: opacity var(--t-fast);
}
.review-source-badge:hover { opacity:0.8; }
.review-text {
  font-size: 14px;
  color: var(--text-mid);
  line-height: 1.75;
  margin-bottom: 1.25rem;
  font-style: italic;
  position: relative;
  z-index: 1;
}
.reviewer { display:flex; align-items:center; gap:11px; position:relative; z-index:1; }
.reviewer-avatar {
  width: 42px; height: 42px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--green-pale), var(--green-tint));
  display: flex; align-items:center; justify-content:center;
  font-size: 16px; font-weight: 800;
  color: var(--green);
  border: 2px solid var(--green-pale);
  flex-shrink: 0;
}
.reviewer-name { font-size:14px; font-weight:700; color:var(--text-dark); }
.reviewer-location { font-size:12px; color:var(--text-light); }

/* Reviews trust bar */
.trust-bar {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1rem, 4vw, 3rem);
  margin-top: 3rem;
  padding: 2rem 2.25rem;
  background: var(--cream-dark);
  border-radius: var(--r-lg);
  border: 1px solid var(--border);
  box-shadow: var(--shadow-md);
  flex-wrap: wrap;
}
.trust-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}
.trust-num {
  font-family: var(--font-display);
  font-size: 30px;
  font-weight: 900;
  color: var(--green);
  line-height: 1;
}
.trust-lbl { font-size:12px; color:var(--text-light); font-weight:500; }
.trust-divider { width:1px; height:44px; background:var(--border); }
