/* ============================================================
   Reviews page — page-specific styles
   ============================================================ */

/* ---------- Hero (chevron accent, ratings row) ---------- */
.rev-hero {
  position: relative;
  background: var(--primary);
  overflow: hidden;
}
.rev-hero__x {
  position: absolute;
  right: 121px; bottom: 0;
  width: 711.789px;
  max-width: none;
  height: 572px;
  z-index: 0;
  pointer-events: none;
}
.rev-hero .hero__copy { display: flex; flex-direction: column; align-items: flex-start; gap: 32px; max-width: 968px; }
.rev-hero .hero__copy > * { margin: 0; }
.rev-hero .com-hero__inner { min-height: 572px; }

/* ---------- Testimonials grid (white section, no navy bg) ---------- */
.rev-grid { background: var(--white); padding: clamp(64px,10vw,160px) 0; }
.rev-grid__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
/* override base .tcard sizing for this 3x2 light-background context */
.rev-grid .tcard { min-height: 340px; }

/* ---------- Share Your Experience ---------- */
.share { background: var(--soft-bg); padding: clamp(64px,10vw,160px) 0; }
.share__inner { display: flex; gap: 32px; align-items: flex-start; }
.share__head { flex: 0 0 595px; max-width: 100%; }
.share__head .eyebrow { margin-bottom: 12px; }
.share__head .h2 { margin-bottom: 12px; }
.share__cards { flex: 1 1 0; display: flex; gap: 28px; align-items: stretch; }
.share-card {
  flex: 1 1 0;
  background: var(--white);
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(31,41,55,.12);
  padding: 24px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
  transition: transform .3s cubic-bezier(.2,.7,.3,1), box-shadow .3s ease;
}
.share-card:hover { transform: translateY(-6px); box-shadow: 0 16px 32px rgba(31,41,55,.18); }
.share-card__logo { height: 40px; display: flex; align-items: center; }
.share-card__logo img { height: 100%; width: auto; }
.share-card__logo--google img { height: 55px; margin-top: -7px; }
.share-card h3 { margin: 0; font-weight: 700; font-size: 18px; line-height: 28px; color: var(--body-text); }
.share-card p.desc { margin: 0; font-weight: 400; font-size: 16px; line-height: 22px; letter-spacing: -0.18px; color: var(--secondary-text); }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 1100px) {
  .rev-grid__cards { grid-template-columns: repeat(2, 1fr); }
  .share__inner { flex-direction: column; }
  .share__head { flex-basis: auto; width: 100%; }
}
@media (max-width: 1024px) {
  .rev-hero__x { display: none; }
}
@media (max-width: 768px) {
  .rev-grid__cards { grid-template-columns: 1fr; }
  .share__cards { flex-direction: column; }
  .rev-hero .com-hero__inner { min-height: 0; padding-top: 80px; padding-bottom: 48px; }
}
