/* ===== Client reviews strip =====================================
   Namespaced rv-. Loaded on index.html, personal-injury.html and
   whistleblower.html. Colours come from the page's own CSS variables
   (--navy, --accent, --offwhite) so the block matches whatever page
   it sits on.
   ================================================================ */

.rv-section{padding:4rem 0 0}
/* The homepage grid above already carries 5rem of bottom padding. */
#practice-areas + .rv-section{padding-top:0}
.rv-head{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;flex-wrap:wrap;margin-bottom:1.75rem}

/* Site H2: Playfair, 3.5rem gold underline (matches .info-block h2) */
.rv-head h2{position:relative;font-family:"Playfair Display",Georgia,serif;font-size:1.9rem;font-weight:600;margin:0;padding-bottom:.45rem}
.rv-head h2::after{content:"";position:absolute;left:0;bottom:0;width:3.5rem;height:3px;background:var(--accent);border-radius:2px}

.rv-summary{display:flex;align-items:center;gap:.8rem;font-family:"Inter",Arial,sans-serif}
.rv-summary .rv-score{font-weight:700;font-size:1.6rem}
.rv-stars{display:inline-flex;gap:2px;color:#FBBC04;font-size:1.05rem;line-height:1;letter-spacing:1px}
.rv-google{font-family:"Inter",Arial,sans-serif;font-weight:500}

.rv-strip{position:relative;overflow:hidden;padding:.75rem 0 1.25rem;contain:paint}
.rv-strip::before,.rv-strip::after{content:"";position:absolute;top:0;bottom:0;width:8%;z-index:2;pointer-events:none}
.rv-strip::before{left:0;background:linear-gradient(90deg,var(--navy),rgba(13,27,42,0))}
.rv-strip::after{right:0;background:linear-gradient(270deg,var(--navy),rgba(13,27,42,0))}

.rv-rail{display:flex;gap:24px;width:max-content;will-change:transform;backface-visibility:hidden;animation:rv-scroll 80s linear infinite}
.rv-strip:hover .rv-rail,.rv-strip:focus-within .rv-rail,.rv-strip.is-paused .rv-rail{animation-play-state:paused}
@keyframes rv-scroll{from{transform:translate3d(0,0,0)}to{transform:translate3d(calc(-50% - 12px),0,0)}}

.rv-card{flex:0 0 360px;display:flex;flex-direction:column;gap:1rem;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:1rem;padding:1.75rem;transition:transform .25s,box-shadow .25s}
.rv-card:hover{transform:translateY(-6px);box-shadow:0 6px 18px rgba(0,0,0,.18)}
.rv-card .rv-top{display:flex;justify-content:space-between;align-items:center}
.rv-card .rv-top .rv-google{font-size:.8rem;opacity:.7}

.rv-quote{font-size:1rem;opacity:.92;margin:0;flex:1}
.rv-quote::before{content:"\201C";color:var(--accent);font-family:"Playfair Display",Georgia,serif;font-size:1.6em;line-height:0;vertical-align:-.3em;margin-right:.1em}
.rv-quote::after{content:"\201D";color:var(--accent);font-family:"Playfair Display",Georgia,serif;font-size:1.6em;line-height:0;vertical-align:-.3em;margin-left:.1em}

.rv-who{display:flex;align-items:center;gap:.75rem}
.rv-who div{display:flex;flex-direction:column}
.rv-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent);color:var(--navy);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-family:"Inter",Arial,sans-serif}
.rv-name{font-family:"Inter",Arial,sans-serif;font-weight:500;font-size:.95rem}

.rv-foot{margin-top:1.5rem;display:flex;gap:1.25rem;flex-wrap:wrap;align-items:center}
.rv-btn{display:inline-block;padding:.75rem 1.5rem;border-radius:9999px;border:1px solid var(--accent);color:var(--accent);font-weight:600;text-decoration:none;font-size:.95rem;transition:background .25s ease,color .25s ease}
.rv-btn:hover{background:var(--accent);color:var(--navy)}
.rv-note{font-size:.85rem;opacity:.6}

@media (prefers-reduced-motion:reduce){.rv-rail{animation:none}.rv-strip{overflow-x:auto}}

@media (max-width:767px){
  .rv-strip{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-left:5%;padding-right:5%}
  .rv-strip::-webkit-scrollbar{display:none}
  .rv-strip::before,.rv-strip::after{display:none}
  .rv-rail{animation:none;width:auto}
  .rv-card{flex:0 0 85vw;scroll-snap-align:start;scroll-snap-stop:always}
  .rv-card:hover{transform:none;box-shadow:none}
}
