/* Customer reviews section (model pages + [to_reviews] shortcode). Self-contained so it works on any page. */
.to-reviews { --rv-ink: #1c1f24; --rv-muted: #5f6670; --rv-line: #e3e7ec; --rv-blue: #007bff; --rv-star: #f5a623; }
.to-reviews .rv-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 18px; }
.to-reviews .rv-card { grid-column: span 2; margin: 0; background: #fff; border: 1px solid var(--rv-line); border-radius: 10px; padding: 22px 22px 18px; display: flex; flex-direction: column; gap: 14px; box-shadow: 0 1px 2px rgba(0,0,0,.04); }
.to-reviews .rv-card:nth-child(4) { grid-column: 2 / span 2; }
.to-reviews .rv-card:nth-child(5) { grid-column: 4 / span 2; }
.to-reviews .rv-stars { display: flex; gap: 2px; }
.to-reviews .rv-stars svg { width: 18px; height: 18px; fill: var(--rv-star); }
.to-reviews .rv-text { margin: 0; flex: 1; }
.to-reviews .rv-text p { margin: 0; color: var(--rv-ink); font-size: 15px; line-height: 1.6; }
.to-reviews .rv-text p::before { content: "\201C"; } .to-reviews .rv-text p::after { content: "\201D"; }
.to-reviews .rv-by { display: flex; align-items: center; gap: 10px; border-top: 1px solid var(--rv-line); padding-top: 14px; }
.to-reviews .rv-av { flex: none; width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; background: #e8f2ff; color: var(--rv-blue); font-weight: 700; }
.to-reviews .rv-who { display: flex; flex-direction: column; font-size: 13px; line-height: 1.35; min-width: 0; }
.to-reviews .rv-who b { color: var(--rv-ink); font-size: 14px; }
.to-reviews .rv-who a { color: var(--rv-muted); text-decoration: none; }
.to-reviews .rv-who a:hover { text-decoration: underline; }
.to-reviews .rv-more { margin: 22px 0 0; text-align: center; font-weight: 600; }
@media (max-width: 991px) {
  .to-reviews .rv-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .to-reviews .rv-card, .to-reviews .rv-card:nth-child(4), .to-reviews .rv-card:nth-child(5) { grid-column: auto; }
}
@media (max-width: 600px) {
  .to-reviews .rv-grid { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px; margin: 0 -16px; padding: 0 16px 6px; scrollbar-width: none; }
  .to-reviews .rv-grid::-webkit-scrollbar { display: none; }
  .to-reviews .rv-card { flex: 0 0 84%; scroll-snap-align: center; }
}
