/* Shared mobile reading scale: never shrink informational text to fit a card. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-size:15px;line-height:1.65}
button,input,select,textarea{font-family:inherit}
input,textarea,select{font-size:16px!important}
p,li,dd{overflow-wrap:break-word}
.review-summary{grid-template-columns:1fr;gap:10px}
.review-summary strong{font-size:15px;color:#86556d}
.review-summary p{font-size:15px;line-height:1.85;color:#735e6d;display:block;overflow:visible;-webkit-line-clamp:unset}
.review-tag-row span,.review-status,.review-media-note{font-size:14px;line-height:1.6}
.review-tag-row{flex-wrap:wrap;gap:7px}
.review-author{flex-wrap:wrap;line-height:1.7}
.review-card-footer{flex-wrap:wrap;align-items:flex-start}
.review-card-footer>span{max-width:100%;font-size:14px}
.review-facts{grid-template-columns:repeat(auto-fit,minmax(95px,1fr))}
.hospital-tags{flex-wrap:wrap}.hospital-tags span{line-height:1.6}
.hospital-meta,.helper,.modal p,.review-feed-note,.source-links{line-height:1.8}
.btn{height:auto;min-height:46px;white-space:normal;line-height:1.5}
.nav-item{font-size:12px;line-height:1.4}
.location{font-size:14px;white-space:nowrap}
.topbar{gap:6px}.top-actions{flex-shrink:0}
.studio-banner{flex-wrap:wrap}.studio-banner .btn{width:auto;max-width:100%;padding:10px 14px}
.studio-banner h3{white-space:normal}.studio-banner>div:first-child{min-width:170px}
.studio-heading p,.studio-bottom p{line-height:1.7}
@media(max-width:359px){.header-brand{width:100px}.location{font-size:14px}.topbar{padding-inline:12px}.hero-copy h1,.hero-copy h2{font-size:24px}.hero-copy{left:16px}.nav-item{font-size:12px}.review-card-body{padding:16px}.category{height:auto;min-height:88px}}
.category{padding:10px 0;white-space:nowrap;min-width:0}.hero-carousel .slide-pager{top:14px;bottom:auto;right:10px}.hero-label{font-size:14px}.hero-copy{top:20px}.hero-copy h1,.hero-copy h2{margin-top:2px}.hero-copy p{color:#665860;max-width:215px;line-height:1.65}.review-pros p,.review-cons p,.review-comment p{font-size:16px;line-height:1.85;color:#685362}.review-pros h2,.review-cons h2{font-size:16px;color:#86556d}.review-pros,.review-cons{padding:18px}.subtitle,.hospital-meta,.helper{color:#857482}
.category .category-cutout{width:54px;height:54px;object-fit:contain;animation:category-breathe 4s ease-in-out infinite;transition:transform .22s ease;filter:drop-shadow(0 4px 4px #ed91aa18)}.category{background:transparent;gap:6px;min-height:96px;border-radius:18px}.category:nth-child(2) img{animation-delay:-1s}.category:nth-child(3) img{animation-delay:-2s}.category:nth-child(4) img{animation-delay:-3s}.category:hover{background:#fff4f8}.category:hover img,.category:focus-visible img{animation:none;transform:translateY(-3px) scale(1.08)}.category:active img{animation:none;transform:scale(.96)}@keyframes category-breathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}@media(prefers-reduced-motion:reduce){.category .category-cutout{animation:none;transition:none}}
/* Controls live below the picture: never cover a face or an action. */
.hero-carousel{border:1px solid #f4e7ed;background:#fff}.hero-carousel .media-track{height:238px}.hero-carousel .slide-pager{position:static;inset:auto;display:flex;justify-content:flex-end;gap:10px;width:100%;border-radius:0;background:#fff8fb;color:#785967;backdrop-filter:none;padding:9px 14px;min-height:42px;border-top:1px solid #f5e7ee}.hero-carousel .slide-pager button{color:#be6b88;padding:5px;border-radius:50%;background:#fff;min-width:28px;min-height:28px;align-items:center;justify-content:center}.hero-carousel .slide-pager .pause{border-left:1px solid #f0dfe8;padding-left:5px}.hero-carousel .slide-counter{font-size:14px;min-width:42px;text-align:center}.campaign-slide{position:relative;width:100%;height:100%;isolation:isolate;background:#fff0e9}.campaign-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right top}.campaign-shade{position:absolute;inset:0;background:linear-gradient(90deg,#fff7f1ed 0%,#fff7f1d9 30%,#fff7f14d 56%,transparent 72%)}.campaign-skin .campaign-shade{background:linear-gradient(90deg,#f0f9f3ef,#f0f9f3d6 30%,#f0f9f343 56%,transparent 72%)}.campaign-eye .campaign-shade{background:linear-gradient(90deg,#edf7ffef,#edf7ffd6 30%,#edf7ff43 56%,transparent 72%)}.campaign-dental .campaign-shade{background:linear-gradient(90deg,#f9f2ffef,#f9f2ffd6 30%,#f9f2ff43 56%,transparent 72%)}.campaign-disclosure{position:absolute;left:15px;top:12px;font-size:14px;line-height:1.5;color:#946e82;background:#ffffffc9;padding:3px 7px;border-radius:8px}.campaign-content{position:absolute;left:18px;right:16px;top:53px;z-index:1}.campaign-type{font-size:14px;color:#b66c87;font-weight:600}.campaign-content h2{font-size:21px;line-height:1.45;letter-spacing:-.8px;margin-top:5px;max-width:74%;font-weight:800}.campaign-content em{font-style:normal;color:#e64b76}.campaign-content p{font-size:14px;color:#68515f;line-height:1.55;margin:7px 0 10px;max-width:60%;font-weight:500}.campaign-content .hero-button{font-size:14px;padding:9px 12px;min-height:38px;color:#3d3039;box-shadow:0 3px 12px #7f4e6410}.clinic-ad-photo{object-position:right top}@media(max-width:359px){.campaign-content{left:15px;top:49px}.campaign-content h2{font-size:19px;max-width:78%}.campaign-content p{max-width:65%;margin-top:5px;margin-bottom:7px}.campaign-disclosure{left:12px}.hero-carousel .slide-pager{padding-block:7px}}
.empty-booking{padding:24px 18px;text-align:center;border-radius:22px;background:linear-gradient(135deg,#fff3f8,#fff);border:1px solid #f4e3ec}.empty-booking>span{font-size:36px;color:#eaa1bb}.empty-booking h3{font-size:17px;line-height:1.6;margin-top:8px}.empty-booking p{font-size:15px;color:#967b8c;line-height:1.8;margin:10px 0 16px}.empty-booking .btn{width:100%}.account-strip button{font-size:14px;color:#8d6b7e}.referral-hero{padding:8px 0 18px}.referral-gift{font-size:40px}.referral-eyebrow{margin:7px 0}.referral-hero h1{font-size:23px;line-height:1.45}.referral-hero p{margin-top:10px}.referral-pass{padding:18px 16px}.referral-code{font-size:24px;margin:8px 0 12px}.referral-pass img{width:160px;height:160px;margin-bottom:14px;border-width:9px}.referral-pass .helper{margin-top:10px}@media(max-height:740px){.referral-gift{font-size:32px}.referral-hero h1{font-size:22px}.referral-hero p{font-size:14px}.referral-hero{padding-top:0;padding-bottom:12px}.referral-pass img{width:144px;height:144px}}
.review-media-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.review-media-gallery a{display:block;border-radius:16px;overflow:hidden;background:#fff4f8}.review-media-gallery img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.review-media-gallery span{display:block;padding:9px 11px;font-size:14px;color:#99798e}#review-report-form textarea{width:100%;min-height:120px;border:1px solid #ecd9e4;border-radius:16px;padding:14px;font-size:16px;line-height:1.8}
.studio-banner-pair{display:flex;flex-direction:column;align-items:center;flex-wrap:nowrap;padding:23px 18px 18px;gap:0;text-align:center}.studio-banner-pair .studio-banner-copy{width:100%;min-width:0!important;flex:none!important}.studio-banner-pair h3{font-size:21px;line-height:1.5;white-space:normal}.studio-banner-pair .studio-banner-copy>p{font-size:15px;line-height:1.8;margin-top:8px}.banner-mirror-pair{display:flex;width:100%;max-width:280px;align-items:center;justify-content:center;gap:10px;margin:18px auto 0}.banner-mirror-pair figure{margin:0;flex:1;min-width:0;display:flex;flex-direction:column;align-items:center}.banner-mirror-pair .banner-mirror{position:relative;width:100%;height:auto;aspect-ratio:3/4;border:4px solid #ecd0b1;border-radius:55% 55% 17% 17%;background:#fff;box-shadow:0 0 0 2px #fff,0 8px 18px #ba799019;flex-shrink:1;overflow:visible}.banner-face-paired{position:absolute;inset:3px;border-radius:55% 55% 15% 15%;overflow:hidden;background:#fff}.banner-face-paired .photo-art{width:100%;height:100%}.banner-mirror-after{border-color:#e9c6a3!important;box-shadow:0 0 0 2px #fff,0 0 22px #ff9ab32e!important}.mirror-mini-spark{position:absolute;right:-6px;top:10%;font-size:25px;color:#ff5d87;animation:mirror-mini-glow 2.7s ease-in-out infinite}.banner-mirror-pair figcaption{font-size:14px;line-height:1.6;color:#9a7089;margin-top:8px}.banner-change-arrow{flex:0 0 18px;align-self:center;color:#db7799;margin-bottom:25px}.studio-banner-pair>.btn{width:100%;max-width:280px;margin:17px auto 0;min-height:44px;font-size:15px;gap:7px}.studio-banner-pair>.banner-example-note{font-size:14px;line-height:1.7;text-align:left;width:100%;margin:12px 0 0;color:#a67c93}.content-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.content-tabs>button{white-space:nowrap;min-width:0;padding-inline:4px;font-size:14px;line-height:1.5}.footer-note,.auth-form-note,.review-feed-note,.compare-note{text-align:left;line-height:1.8}.footer-note{padding-left:22px;padding-right:22px}@keyframes mirror-mini-glow{0%,100%{opacity:.55;transform:scale(.9)}50%{opacity:1;transform:scale(1.08)}}@media(prefers-reduced-motion:reduce){.mirror-mini-spark{animation:none}}@media(max-width:359px){.studio-banner-pair{padding:20px 16px 16px}.studio-banner-pair h3{font-size:20px}.banner-mirror-pair{gap:8px}.content-tabs>button{font-size:14px;padding-inline:3px}}
