/* Clinic reels rail (centre card is highlighted and previews itself) and the written reviews. */
.reels{background:var(--offwhite);overflow:hidden}
.rail-wrap{margin-top:50px;position:relative}
.rail{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;padding:20px calc(50% - 150px) 34px;scrollbar-width:none;cursor:grab;-webkit-overflow-scrolling:touch}
.rail::-webkit-scrollbar{display:none}
.rail.dragging{cursor:grabbing;scroll-snap-type:none}
.reel{flex:0 0 300px;scroll-snap-align:center;transform:scale(.88);opacity:.5;transition:transform .8s var(--ease),opacity .8s var(--ease)}
.reel.is-active{transform:scale(1);opacity:1}
.reel-media{position:relative;aspect-ratio:9/16;border-radius:26px;overflow:hidden;background:var(--charcoal);box-shadow:0 40px 70px -36px rgba(42,39,35,.6)}
.reel-media video{width:100%;height:100%;object-fit:cover;pointer-events:none}
.reel-open{position:absolute;inset:0;width:100%;background:linear-gradient(to top,rgba(42,39,35,.62),transparent 45%);border:none;color:#fff;display:flex;align-items:flex-end;justify-content:center;padding-bottom:22px;font-size:.88rem;font-weight:700;gap:10px;opacity:1;transition:background .4s}
.reel-open span{display:inline-flex;align-items:center;gap:10px;padding:10px 20px;border-radius:99px;background:rgba(251,249,246,.18);backdrop-filter:blur(8px);border:1px solid rgba(251,249,246,.4)}
.reel-open svg{width:14px;height:14px;fill:currentColor}
.reel-title{margin-top:20px;text-align:center;font-weight:300;font-size:1.1rem;color:var(--charcoal)}
.rail-controls{display:flex;justify-content:center;align-items:center;gap:20px}
.rail-btn{width:50px;height:50px;border-radius:50%;border:1px solid var(--charcoal);background:transparent;color:var(--charcoal);font-size:1.3rem;transition:background .25s,color .25s}
.rail-btn:hover{background:var(--charcoal);color:#fff}
.rail-dots{display:flex;gap:10px}
.rail-dot{width:8px;height:8px;border-radius:50%;border:none;background:var(--line);padding:0;transition:background .3s,transform .3s}
.rail-dot.on{background:var(--clay-deep);transform:scale(1.5)}

.reviews{background:var(--cream)}
.review-feature{margin:56px auto 0;max-width:900px;text-align:center}
.review-feature blockquote{font-size:clamp(1.35rem,2.8vw,2.1rem);font-weight:300;line-height:1.7;color:var(--charcoal)}
.review-feature blockquote::before{content:'\201D';display:block;font-size:5rem;line-height:.6;color:var(--clay);font-weight:800;margin-bottom:18px}
.review-meta{margin-top:24px;font-size:.85rem;color:var(--muted);letter-spacing:.06em}
.review-grid{columns:3;column-gap:24px;margin-top:70px}
.review{break-inside:avoid;margin-bottom:24px;background:var(--offwhite);border-radius:var(--radius);padding:30px 28px;border:1px solid var(--line)}
.review p{font-weight:300;line-height:1.95;font-size:.98rem}
.review-by{margin-top:18px;padding-top:14px;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted);letter-spacing:.05em}
