/* Curated, locally rendered reviews. No third-party widget or external assets. */
.treatment-reviews{min-width:0;color:#322b27;align-self:start;--review-cols:1;--review-gap:16px}
.treatment-reviews--wide{margin:0 0 56px;--review-cols:3}
.treatment-reviews--wide.treatment-reviews--2{--review-cols:2}
.treatment-reviews__heading{margin-bottom:22px}
.treatment-reviews__heading .eyebrow{margin:0 0 9px;color:#75604f;font-size:10px;letter-spacing:.18em}
.treatment-reviews .treatment-reviews__heading h2{font:400 30px/1.14 Georgia,'Times New Roman',serif;letter-spacing:-.025em;margin:0 0 10px}
.treatment-reviews__intro{color:#64564f;font-size:13px;line-height:1.5;margin:0}
.review-track{display:flex;align-items:stretch;gap:var(--review-gap);overflow-x:auto;overflow-y:hidden;overflow-anchor:none;scroll-padding-inline:0;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#ad9280 transparent;list-style:none;padding:0 0 12px;margin:0;touch-action:pan-x pan-y pinch-zoom}
.treatment-reviews.is-enhanced .review-track{scrollbar-width:none}
.treatment-reviews.is-enhanced .review-track::-webkit-scrollbar{display:none}
.review-track:focus-visible{outline:2px solid #89715d;outline-offset:4px}
.review-slide{display:flex;margin:0;padding:0;flex:0 0 calc((100% - (var(--review-cols) - 1)*var(--review-gap))/var(--review-cols));min-width:0;scroll-snap-align:start;scroll-snap-stop:always;list-style:none}
.review-card{width:100%;padding:26px;background:#fffaf7;border:1px solid #dfcfc5;min-width:0;display:flex;flex-direction:column}
.review-card__meta{display:flex;justify-content:space-between;align-items:start;gap:12px;margin:0 0 18px}
.review-card__treatment{margin:0;font-size:12px;line-height:1.5;color:#64564f}
.review-stars{color:#80604b;font-size:11px;letter-spacing:1px;white-space:nowrap;padding-top:2px}
.review-quote,.review-full{margin:0;border:0;padding:0}
.review-quote p{font:400 21px/1.48 Georgia,'Times New Roman',serif;letter-spacing:-.01em;margin:0;overflow-wrap:anywhere}
.review-excerpt-note,.review-service-note{font-size:11px;line-height:1.5;color:#75604f;margin:12px 0 0}
.review-more{margin:0 0 0;border:0}
.review-more summary{font-size:13px;line-height:1.5;cursor:pointer;text-decoration:underline;text-underline-offset:4px;min-height:44px;display:flex;align-items:center;padding:8px 0;list-style:none;color:#55463d}
.review-more summary::-webkit-details-marker{display:none}
.review-more summary:after{content:'+';margin-left:10px;font-size:18px;text-decoration:none}
.review-more[open] summary:after{content:'−'}
.review-more summary:focus-visible{outline:2px solid #89715d;outline-offset:3px}
.review-full{border-top:1px solid #dfcfc5;margin-top:5px;padding-top:15px}
.review-full p{font:400 15px/1.7 Arial,Helvetica,sans-serif;white-space:normal;overflow-wrap:anywhere;margin:0 0 12px}
.review-card__source{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding-top:22px;font-size:13px;line-height:1.5}
.review-card__source a{font-size:12px;color:#64564f;min-height:32px;display:inline-flex;align-items:center;gap:5px;text-decoration:underline;text-underline-offset:4px}
.review-navigation{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:18px;border-top:1px solid #dfcfc5;padding-top:14px}
.review-arrow{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;min-height:44px;border:1px solid #bda796;background:transparent;border-radius:50%;padding:0;color:#322b27}
.review-arrow svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.review-arrow:disabled{opacity:.35;cursor:default}
.review-arrow:not(:disabled):hover{background:#f0e0d5}
.review-count{font-size:12px;line-height:1.5;color:#64564f;margin:0;min-width:43px;text-align:center;white-space:nowrap}
@container(max-width:850px){.treatment-reviews--wide{--review-cols:2}}
@container(max-width:600px){.treatment-reviews--wide,.treatment-reviews--wide.treatment-reviews--2{--review-cols:1;margin-bottom:40px}.treatment-reviews .treatment-reviews__heading h2{font-size:28px}.review-card{padding:24px}.review-quote p{font-size:21px;line-height:1.45}.review-slide{scroll-snap-align:center}}
@media(prefers-reduced-motion:reduce){.review-track{scroll-behavior:auto}}

.review-dialog{box-sizing:border-box;width:min(620px,calc(100% - 32px));max-height:80vh;max-height:80dvh;margin:auto;padding:32px;border:1px solid #dfcfc5;background:#fffaf7;color:#322b27;overflow:auto;overscroll-behavior:contain}
.review-dialog:not([open]){display:none}
.review-dialog::backdrop{background:rgba(32,26,22,.48)}
.review-dialog__close{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;margin:0 0 12px auto;padding:0;border:1px solid #bda796;border-radius:50%;background:#fffaf7;color:#322b27;font:28px/1 Arial,sans-serif;cursor:pointer}
.review-dialog .review-dialog__title{font:400 28px/1.2 Georgia,'Times New Roman',serif;margin:0 0 24px;letter-spacing:-.02em}
.review-dialog__treatment{font:13px/1.5 Arial,Helvetica,sans-serif;color:#64564f;margin:0 0 10px}
.review-dialog .review-full{border:0;margin:0;padding:0}
.review-dialog .review-full p{font:400 17px/1.75 Arial,Helvetica,sans-serif}
.review-dialog__source{display:inline-flex;align-items:center;min-height:44px;margin-top:12px;color:#64564f;font:13px/1.5 Arial,Helvetica,sans-serif;text-underline-offset:4px}
@media(max-width:600px){.review-dialog{padding:24px}}
