/* Google-review slider — reviews are listed once in assets/reviews.js. */
.rev-viewport{overflow:hidden;position:relative}
.rev-viewport::before,.rev-viewport::after{content:"";position:absolute;top:0;bottom:0;width:48px;z-index:2;pointer-events:none}
.rev-viewport::before{left:0;background:linear-gradient(90deg,var(--paper),transparent)}
.rev-viewport::after{right:0;background:linear-gradient(270deg,var(--paper),transparent)}
.rev-track{display:flex;gap:20px;width:max-content;animation:revscroll 45s linear infinite}
.rev-viewport:hover .rev-track{animation-play-state:paused}
@keyframes revscroll{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media (prefers-reduced-motion: reduce){
  .rev-track{animation:none}
  .rev-viewport{overflow-x:auto}
}
.rev{background:var(--white);border:1px solid var(--line);padding:24px;display:flex;flex-direction:column;gap:14px;width:min(330px,82vw);flex:none}
.rev .stars{color:var(--marigold);font-size:15px;letter-spacing:3px}
.rev p{margin:0;font-size:14.5px;line-height:1.6;color:var(--navy-soft);flex:1}
.rev .by{display:flex;align-items:center;gap:12px}
.rev .av{width:38px;height:38px;flex:none;display:grid;place-items:center;background:var(--navy);color:#fff;font-family:var(--mono);font-size:12px}
.rev .nm{font-weight:600;font-size:14px;line-height:1.3}
.rev .nm span{display:block;font-weight:400;font-size:12.5px;color:var(--slate)}
.rev-score{font-family:var(--mono);font-size:13px;color:var(--slate)}
.rev-score b{color:var(--marigold-dk);font-size:16px}
