/* Document revisions: component geometry uses the existing desktop scale. */
:root{--u:var(--desktop-unit,1px)}
.header-address{max-width:none;width:calc(390 * var(--u));gap:calc(10 * var(--u));flex-shrink:0}
.header-address>img{flex:none;width:calc(49 * var(--u));height:auto;object-fit:contain}
.header-address p{min-width:0}
.header-address b{font-size:max(12px,calc(18 * var(--u)));font-weight:700;display:block;white-space:nowrap}
.header-address small{font-size:max(10px,calc(12 * var(--u)));line-height:1.3;max-width:none;white-space:nowrap}
.header-inner{gap:calc(20 * var(--u))}
.header-hours b{font-size:max(12px,calc(20 * var(--u)))}
.header-phone{font-size:max(16px,calc(24 * var(--u)))}
.award{background:radial-gradient(ellipse at 80% 55%,#83d2dd99 0,transparent 46%),#fff}
.award h3 span{color:var(--teal)}
.award dd{color:var(--muted)}
.award-art{position:absolute;right:calc(-10 * var(--u));top:calc(-42 * var(--u));width:calc(303 * var(--u));height:calc(289 * var(--u))}
.founders p:last-of-type{font-weight:400}.founders p:last-of-type b{font-weight:500}
.piezo-picture{inset:0;width:100%;height:100%;object-fit:cover;transform:none}.piezo:before{display:none}
.piezo ul{border-radius:0 0 calc(18 * var(--u)) calc(18 * var(--u));overflow:hidden}
.comparison-grid:before{content:'';position:absolute;inset:0 23%;background:radial-gradient(ellipse,#bfeaf4 0,#e6f6fc99 45%,transparent 72%);z-index:-1}
.case-details{padding:calc(23 * var(--u)) 0 0;overflow:hidden;box-shadow:0 0 calc(12 * var(--u)) #6c7a8b26}
.case-details:before{display:none}
.case-details h3{margin:0 calc(22 * var(--u));padding-left:calc(15 * var(--u));position:relative;gap:calc(30 * var(--u));font-size:max(24px,calc(44 * var(--u)))}
.case-details h3:before{content:'';position:absolute;left:0;top:4%;bottom:4%;width:calc(4 * var(--u));background:var(--teal);border-radius:4px}
.case-label{margin:calc(18 * var(--u)) calc(20 * var(--u)) 0 0;padding:calc(10 * var(--u)) calc(28 * var(--u));border-radius:0 calc(18 * var(--u)) calc(18 * var(--u)) 0;font-weight:500;white-space:normal}
.case-details ul{padding:0;margin-top:calc(20 * var(--u))}
.case-details li{margin:0;padding:calc(20 * var(--u)) calc(22 * var(--u)) calc(20 * var(--u)) calc(60 * var(--u));font-size:max(14px,calc(23 * var(--u)));line-height:1.15;min-height:calc(110 * var(--u));display:flex;align-items:center}
.case-details li:nth-child(odd){background:#f4f8fa}
.case-details li:before{content:'';width:calc(24 * var(--u));height:calc(24 * var(--u));left:calc(22 * var(--u));top:50%;transform:translateY(-50%);border:calc(7 * var(--u)) solid #cad7df;background:#6c7a8b;border-radius:50%}
.case-result blockquote{position:relative;background:#bee7ee;border:0;font-weight:500;padding-left:calc(64 * var(--u));margin-top:calc(16 * var(--u))}
.case-result blockquote:before{content:'';position:absolute;left:calc(32 * var(--u));top:calc(23 * var(--u));bottom:calc(23 * var(--u));width:calc(5 * var(--u));border-radius:3px;background:#6c7a8b}
.before-after{--split:50%;position:relative;width:100%;height:calc(224 * var(--u));overflow:hidden;border-radius:calc(24 * var(--u));touch-action:pan-y;background:var(--ice);isolation:isolate}
.before-after>img,.comparison-before,.comparison-before img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none}
.comparison-before{clip-path:inset(0 calc(100% - var(--split)) 0 0)}
.comparison-divider{position:absolute;left:var(--split);top:0;bottom:0;width:2px;background:white;transform:translateX(-50%);pointer-events:none}
.comparison-divider>span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:white;color:var(--teal);font-size:24px;font-weight:600;box-shadow:0 2px 12px #17242b33;white-space:nowrap}
.comparison-label{position:absolute;top:10px;background:#ffffffdd;color:var(--ink);padding:4px 9px;border-radius:6px;font-size:max(12px,calc(16 * var(--u)));pointer-events:none}.before-label{left:10px}.after-label{right:10px}
.before-after input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0;z-index:2;touch-action:pan-y}
.before-after:focus-within{outline:3px solid var(--teal);outline-offset:3px}
.bonus-list li{padding-left:calc(80 * var(--u))}
.bonus-list li:before{width:calc(65 * var(--u));height:calc(77 * var(--u));top:50%;transform:translateY(-50%);display:grid;place-items:center;background:#f4f8fa;border-radius:calc(10 * var(--u));color:#83d2dd;font-size:max(22px,calc(38 * var(--u)));font-weight:700}
.care>h3{display:table;background:#fff;color:#17242b;border-radius:0 calc(15 * var(--u)) 0 0;margin:calc(4 * var(--u)) 0 calc(18 * var(--u)) calc(-28 * var(--u));padding:calc(10 * var(--u)) calc(28 * var(--u));font-size:max(17px,calc(29 * var(--u)))}
.care-grid p{color:var(--muted)}.care-grid b{font-weight:500;background:#bee7ee;color:#17242b;border-radius:calc(8 * var(--u))}.care-grid strong{color:#17242b}
.kirillov-photo>img{left:0;top:0;width:100%;height:100%;object-fit:cover;object-position:center;transform:none}
.installment-grid article:last-child h3{color:#fff}
.guarantee-main .work-guarantee{background:var(--teal)!important;border:calc(2 * var(--u)) solid white}
.guarantee-main .passport{border:calc(2 * var(--u)) solid white}
.work-guarantee p{color:white;font-weight:500;padding-right:calc(14 * var(--u))}
.work-guarantee>div:last-child{position:absolute;left:53%;right:0;top:25%}
.work-guarantee strong{border-radius:calc(16 * var(--u)) 0 0 calc(16 * var(--u));font-size:max(24px,calc(40 * var(--u)))}
.lifetime-art{width:calc(174 * var(--u));height:calc(120 * var(--u));flex:none;align-self:stretch}
.lifetime h3{font-weight:500;padding-right:calc(18 * var(--u))}
.contact-card b{font-weight:700}
/* Continuous ratings strip. */
.ratings{display:block;overflow:hidden;position:relative;margin:calc(20 * var(--u)) calc((100% - 100vw)/2) 0;padding:calc(24 * var(--u)) max(0px,calc((100vw - 1560 * var(--u))/2)) calc(40 * var(--u));background:var(--dark-teal);scroll-snap-type:none}
.ratings:before{display:none}
.ratings-track{display:flex;width:max-content;animation:ratings-scroll 32s linear infinite}
.ratings-group{display:flex;gap:calc(10 * var(--u));width:calc(1560 * var(--u));padding-right:calc(10 * var(--u));flex:none}
.ratings-group>.rating{flex:1;min-width:0}

@keyframes ratings-scroll{from{transform:translateX(calc(-1 * var(--ratings-step)))}to{transform:translateX(calc(-2 * var(--ratings-step)))}}
/* Consultation — three semantic panels matching the Figma composition. */
.consult-v2{background:var(--teal);border-radius:calc(30 * var(--u));padding:calc(50 * var(--u))}
.consult-v2 h2{color:white;font-size:max(28px,calc(45 * var(--u)));line-height:1.04;max-width:calc(1100 * var(--u))}
.consult-cards{display:grid;grid-template-columns:629fr 468fr 325fr;gap:calc(16 * var(--u));margin-top:calc(50 * var(--u));align-items:stretch}
.consult-cards>article{border-radius:calc(20 * var(--u));min-height:calc(252 * var(--u));background:#fff;overflow:hidden;position:relative}
.consult-cards h3{font-size:max(14px,calc(23 * var(--u)));display:flex;align-items:center;gap:calc(12 * var(--u));line-height:1.2;white-space:nowrap;font-weight:700}
.consult-number{display:grid;place-items:center;flex:none;width:calc(66 * var(--u));height:calc(52 * var(--u));border-radius:0 calc(20 * var(--u)) calc(20 * var(--u)) 0;background:var(--ice);color:var(--teal);font-size:max(20px,calc(30 * var(--u)));font-weight:700}
.consult-exam{display:grid;grid-template-columns:350fr 244fr;padding:calc(14 * var(--u)) calc(14 * var(--u)) calc(14 * var(--u)) 0;gap:calc(20 * var(--u))}
.consult-exam-body{padding-top:calc(7 * var(--u));min-width:0}
.consult-exam-services{display:flex;gap:calc(15 * var(--u));align-items:center;padding:calc(23 * var(--u)) calc(15 * var(--u)) calc(15 * var(--u)) calc(24 * var(--u))}
.consult-exam-services ul{display:grid;gap:calc(16 * var(--u));font-size:max(12px,calc(16 * var(--u)));line-height:1.05;flex:1}
.consult-exam-services li,.consult-cost,.consult-council>p,.consult-bonus>p{position:relative;padding-left:calc(34 * var(--u))}
.consult-exam-services li:before,.consult-cost:before,.consult-council>p:before,.consult-bonus>p:before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:calc(18 * var(--u));height:calc(18 * var(--u));background:#6c7a8b;border:calc(5 * var(--u)) solid #cbd8e1;border-radius:50%}
.consult-price{width:calc(123 * var(--u));flex:none;text-align:center;background:var(--teal);border-radius:calc(20 * var(--u));color:#fff;padding:calc(5 * var(--u)) 0;line-height:1}
.consult-price b{font-size:max(24px,calc(40 * var(--u)));display:block}.consult-price s{font-size:max(12px,calc(16 * var(--u)))}
.consult-cost{background:var(--ice);border-radius:calc(20 * var(--u));min-height:calc(52 * var(--u));margin:0 calc(16 * var(--u)) 0 calc(10 * var(--u));display:flex;align-items:center;padding-left:calc(48 * var(--u));font-size:max(12px,calc(16 * var(--u)))}
.consult-cost:before{left:calc(14 * var(--u))}.consult-cost img{margin-left:auto;width:calc(78 * var(--u));height:calc(50 * var(--u));object-fit:contain}
.consult-council{background:var(--ice);padding:calc(18 * var(--u)) calc(20 * var(--u));border-radius:calc(20 * var(--u));min-width:0}
.consult-council>p{font-size:max(12px,calc(16 * var(--u)));white-space:nowrap;line-height:1.1}
.consult-council>div{display:grid;grid-template-columns:1fr 1fr;gap:calc(10 * var(--u));margin-top:calc(21 * var(--u))}
.consult-council .photo{height:calc(147 * var(--u));border-radius:calc(10 * var(--u))}
.consult-bonus{padding-top:calc(21 * var(--u));display:flex;flex-direction:column}
.consult-bonus>p{display:flex;align-items:center;min-height:calc(92 * var(--u));font-size:max(12px,calc(16 * var(--u)));margin-top:calc(14 * var(--u));padding:calc(12 * var(--u)) calc(128 * var(--u)) calc(12 * var(--u)) calc(59 * var(--u));flex:1}
.consult-bonus>p:before{left:calc(25 * var(--u))}.consult-bonus>p:last-child{background:var(--ice);margin-top:0}
.consult-bonus>p img{position:absolute;right:0;bottom:0;width:calc(138 * var(--u));height:calc(93 * var(--u));object-fit:contain}
.consult-bonus>p:last-child img{width:calc(158 * var(--u))}
.consult-cards .consult-promise{background:#647a88;border:calc(5 * var(--u)) solid white;padding-top:calc(16 * var(--u));color:white}
.consult-promise .consult-number{margin-left:calc(-5 * var(--u))}
.consult-promise p{border-left:calc(4 * var(--u)) solid white;margin:calc(13 * var(--u)) calc(22 * var(--u)) calc(22 * var(--u));padding-left:calc(20 * var(--u));font-size:max(14px,calc(23 * var(--u)));line-height:1.2}
/* Gallery cards move between fixed visual positions; no images are stretched. */
.clinic{overflow:hidden}
.clinic-gallery{position:relative}
.clinic-gallery h2{position:relative;width:48%;z-index:1;pointer-events:none}
.clinic-stage{height:calc(560 * var(--u));margin-top:calc(-170 * var(--u));position:relative;touch-action:pan-y;outline-offset:6px}
.clinic-frame{position:absolute;padding:0;background:none;overflow:hidden;border-radius:calc(22 * var(--u));bottom:0;width:calc(250 * var(--u));height:calc(250 * var(--u));opacity:0;pointer-events:none;transition:left .6s ease,width .6s ease,height .6s ease,filter .6s ease,opacity .6s ease;filter:blur(0);transform:none!important}
.clinic-frame img{width:100%;height:100%;object-fit:cover;object-position:center}
.clinic-frame[data-slot="-3"]{left:calc(-120 * var(--u));opacity:.65;filter:blur(3px);pointer-events:auto}
.clinic-frame[data-slot="-2"]{left:calc(200 * var(--u));opacity:1;pointer-events:auto}
.clinic-frame[data-slot="-1"]{left:calc(500 * var(--u));opacity:1;pointer-events:auto}
.clinic-frame[data-slot="0"]{left:calc(800 * var(--u));width:calc(740 * var(--u));height:calc(560 * var(--u));opacity:1;pointer-events:auto}
.clinic-frame[data-slot="1"]{left:calc(1600 * var(--u));width:calc(450 * var(--u));height:calc(450 * var(--u));opacity:.65;filter:blur(4px);pointer-events:auto}
.clinic-frame[data-slot="2"]{left:calc(2100 * var(--u))}.clinic-frame[data-slot="-4"]{left:calc(-430 * var(--u))}
.clinic-navigation{display:flex;align-items:center;gap:calc(25 * var(--u));margin-top:calc(35 * var(--u));max-width:50%}
.clinic-navigation .arrow{width:calc(190 * var(--u));height:calc(68 * var(--u))}
.clinic-navigation .dots{margin:0;gap:calc(9 * var(--u));flex-wrap:wrap}
.clinic-navigation .dot{width:12px;height:12px;min-width:12px;padding:0}
/* Motion is progressive enhancement; all content is visible without JavaScript. */
:where(a,button,input,label[for]){transition:filter .2s ease,background-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}
@media(hover:hover) and (pointer:fine){a:hover,button:not(:disabled):hover{filter:brightness(1.08)}button:not(:disabled,.clinic-frame):hover{transform:translateY(-2px)}.certificate:hover{box-shadow:0 3px 14px #079db84d}.before-after:hover .comparison-divider>span{background:var(--teal);color:white}}
.heading-reveal{transition:opacity .65s ease,translate .65s ease}.heading-reveal.is-waiting{opacity:0;translate:0 22px}.heading-reveal.is-visible{opacity:1;translate:0 0}
@media(min-width:1101px) and (max-width:1350px){.header-address{width:calc(410 * var(--u))}.header-hours{display:none}.header{height:82px}.consult-cards h3{white-space:normal}.consult-exam{gap:8px}.consult-council{padding-inline:8px}.consult-council>p{white-space:normal}}
@media(min-width:701px) and (max-width:1100px){.header-address{display:none}.award-art{width:220px;height:210px;top:-20px}.before-after{height:220px}.consult-v2{padding:28px}.consult-cards{grid-template-columns:1fr 1fr;gap:16px}.consult-exam{grid-column:1/-1}.consult-cards h3{white-space:normal}.consult-bonus>p{font-size:14px}.consult-council>p{font-size:14px}.clinic-gallery{--u:.5px}.clinic-gallery h2{font-size:30px}.clinic-stage{margin-top:-100px}.clinic-navigation{max-width:none}.ratings-group{width:1000px}.rating{min-height:85px}.ratings{margin-inline:-32px;padding-inline:32px}.bonus-list li{padding-left:60px}.bonus-list li:before{width:48px;height:65px;font-size:28px}}
@media(max-width:700px){
 .header-address{display:none}.award-art{width:120px;height:135px;right:-15px;top:-16px}.award{background:radial-gradient(ellipse at 78% 40%,#83d2dd88,transparent 56%),white}.award dd{font-size:12px}
 .piezo-picture{inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.piezo ul{border-radius:0 0 16px 16px}
 .comparison-grid:before{inset:0 0 auto;height:225px}
 .case-details{padding-top:16px;border-radius:16px}.case-details h3{font-size:28px;margin-inline:15px;padding-left:10px;gap:18px}.case-details h3:before{width:3px}.case-label{font-size:12px;padding:9px 15px;margin:12px 15px 0 0;border-radius:0 14px 14px 0}.case-details ul{margin-top:12px}.case-details li{font-size:14px;min-height:65px;padding:14px 15px 14px 40px}.case-details li:before{width:16px;height:16px;border-width:5px;left:15px}
 .before-after{height:180px;border-radius:16px}.comparison-divider>span{width:36px;height:36px}.case-result blockquote{font-size:15px;padding:16px 16px 16px 34px;margin-top:12px}.case-result blockquote:before{left:18px;width:3px;top:16px;bottom:16px}
 .bonus-list li{padding-left:58px}.bonus-list li:before{width:40px;height:52px;font-size:25px;border-radius:7px}.care>h3{font-size:16px;margin:0 0 14px -14px;padding:8px 14px;border-radius:0 12px 0 0}.care-grid b{font-size:12px}.care-grid p{font-size:12px}
 .lifetime-art{width:100px;height:78px}.lifetime h3{padding-right:12px}.work-guarantee strong{font-size:25px;padding:5px 7px}.work-guarantee p{font-size:12px;padding-right:5px}.work-guarantee>div:last-child{left:50%;top:25%}.guarantee-main .work-guarantee,.guarantee-main .passport{border-width:1px}
 .ratings{margin:20px -23px 0;padding:16px 23px 26px;overflow:hidden}.ratings-group{width:800px;gap:10px;padding-right:10px}.ratings-group>.rating{min-width:150px;flex:1}
 .consult-v2{padding:25px 15px;border-radius:20px}.consult-v2 h2{font-size:24px;line-height:1.12}.consult-v2 h2 br{display:none}.consult-cards{display:flex;flex-direction:column;gap:16px;margin-top:24px}.consult-cards>article{border-radius:16px;min-height:0}.consult-cards h3{font-size:15px;gap:8px;white-space:normal}.consult-number{width:38px;height:35px;font-size:22px;border-radius:0 12px 12px 0}.consult-exam{display:flex;flex-direction:column;padding:14px 10px 14px 0;gap:12px}.consult-exam-body{padding:0}.consult-exam-services{padding:14px 8px 12px 14px;gap:12px}.consult-exam-services ul{font-size:12px;gap:14px}.consult-exam-services li{padding-left:22px}.consult-exam-services li:before,.consult-cost:before,.consult-council>p:before,.consult-bonus>p:before{width:14px;height:14px;border-width:4px}.consult-price{width:70px;padding:8px 0;border-radius:12px}.consult-price b{font-size:27px}.consult-price s{font-size:12px}.consult-cost{font-size:12px;padding-left:33px;min-height:42px;margin:0 0 0 9px;border-radius:12px}.consult-cost:before{left:10px}.consult-cost img{width:60px;height:40px}.consult-council{padding:12px;margin-left:10px;border-radius:12px}.consult-council>p{font-size:12px;padding-left:22px}.consult-council>div{margin-top:12px;gap:10px}.consult-council .photo{height:145px;border-radius:8px}.consult-bonus{padding-top:12px}.consult-bonus>p{min-height:76px;font-size:12px;margin-top:12px;padding:12px 95px 12px 36px}.consult-bonus>p:before{left:13px}.consult-bonus>p img{width:95px;height:70px}.consult-bonus>p:last-child img{width:105px}.consult-cards .consult-promise{border-width:3px;padding:12px 0}.consult-promise .consult-number{margin-left:-3px}.consult-promise p{margin:12px 18px 5px;padding-left:14px;border-width:3px;font-size:16px;line-height:1.3}
 .clinic-gallery h2{width:100%;font-size:28px;pointer-events:auto}.clinic-stage{margin-top:25px;height:330px}.clinic-frame{width:130px;height:190px;border-radius:14px}.clinic-frame[data-slot="-3"]{left:-490px}.clinic-frame[data-slot="-2"]{left:-330px}.clinic-frame[data-slot="-1"]{left:-160px;opacity:.6;filter:blur(3px)}.clinic-frame[data-slot="0"]{left:0;width:100%;height:330px}.clinic-frame[data-slot="1"]{left:calc(100% + 25px);width:150px;height:240px}.clinic-frame[data-slot="2"]{left:calc(100% + 200px)}.clinic-frame[data-slot="-4"]{left:-650px}.clinic-navigation{max-width:none;justify-content:center;gap:15px;margin-top:20px;flex-wrap:wrap}.clinic-navigation .arrow{width:110px;height:40px}.clinic-navigation .dots{flex-basis:100%;justify-content:center;gap:8px}.clinic-navigation .dot{width:10px;height:10px;min-width:10px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.heading-reveal.is-waiting{opacity:1;translate:none}.ratings{overflow-x:auto}.ratings-group[aria-hidden="true"]{display:none}}

.case-details li:before,.consult-exam-services li:before,.consult-cost:before,.consult-council>p:before,.consult-bonus>p:before{box-sizing:border-box}

@media(hover:hover){input:not([type=range]):hover{box-shadow:0 0 0 2px #079db826}}
@media(hover:hover) and (pointer:fine){a:not(.map-link):hover{color:var(--teal)}.brand img{transition:transform .2s ease}.brand:hover img{transform:scale(1.025)}.map-link:hover{background:#079db80a}}
/* Slow white halo pulse around video controls. */
.play{--halo-rest:calc(5 * var(--desktop-unit,1px));--halo-peak:calc(13 * var(--desktop-unit,1px));animation:play-halo-pulse 3.8s ease-in-out infinite}
@keyframes play-halo-pulse{0%,100%{box-shadow:0 0 0 var(--halo-rest) #ffffff80}50%{box-shadow:0 0 0 var(--halo-peak) #ffffff30}}
@media(max-width:700px){.play{--halo-rest:3px;--halo-peak:8px}}

/* Four-line caption with content-driven height. */
.piezo-note{width:max(190px,calc(257 * var(--desktop-unit,1px)));max-width:100%;min-height:0;padding:calc(12 * var(--desktop-unit,1px)) calc(18 * var(--desktop-unit,1px))}
.piezo-note>span{display:block;white-space:nowrap}
@media(max-width:700px){.piezo-note{width:200px;padding:10px 12px}}

/* Shared navigation states for cases, doctors and clinic gallery. */
.dots .dot{width:14px;height:14px;min-width:14px;flex-shrink:0}
.dots{gap:10px}
@media(hover:hover) and (pointer:fine){.arrow:not(:disabled):hover{background:#31c3d8;filter:none}}
.arrow:not(:disabled):focus-visible,.arrow:not(:disabled):active{background:#31c3d8}
@media(max-width:700px){.dots .dot{width:12px;height:12px;min-width:12px}.dots{gap:8px}}

/* Figma 380:673 / 380:674: preserve each illustration's image window. */
.consult-art{position:absolute;right:0;bottom:0;display:block;overflow:hidden;width:calc(138 * var(--u));height:calc(78 * var(--u))}
.consult-art-discount{width:calc(158 * var(--u));height:calc(93 * var(--u));border-radius:calc(20 * var(--u)) 0 calc(20 * var(--u)) calc(20 * var(--u))}
.consult-bonus>p .consult-art-bone img{position:absolute;width:144.64%;height:142.49%;left:-.25%;top:.43%;right:auto;bottom:auto;max-width:none;object-fit:fill;transform:scaleX(-1)}
.consult-bonus>p .consult-art-discount img{position:absolute;width:155.76%;height:155.7%;left:-23.06%;top:-19.28%;right:auto;bottom:auto;max-width:none;object-fit:fill}
@media(max-width:700px){.consult-art-bone{width:95px;height:54px}.consult-art-discount{width:105px;height:62px;border-radius:12px 0 12px 12px}}

.footer .marketing{display:block}.footer .marketing img{display:block;width:100%;height:auto;object-fit:contain}

/* Match the source site's compact dark details card and separate license view. */
#media-dialog.details-modal{width:450px;max-width:calc(100vw - 40px);padding:32px;border-radius:12px;background:#17242b;color:white}
.details-modal #media-title{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.details-modal #media-content{margin:0;font-size:16px;line-height:1.22}
.details-modal .close{top:10px;right:10px;width:32px;height:32px;background:transparent;color:white;font-size:30px}
.details-modal::backdrop{backdrop-filter:blur(2px)}
.clinic-details{font-weight:400}.clinic-details b{font-weight:600}.clinic-details p{margin:0}.clinic-details .license-heading{margin-bottom:13px;max-width:310px}
.clinic-details .license-number{margin-bottom:26px;white-space:nowrap;font-size:15px}
.clinic-details .company-details{margin-bottom:18px}.clinic-details .company-address{margin-bottom:20px}
.license-open{width:100%;min-height:85px;border:2px solid white;border-radius:10px;background:white;color:#17242b;font-size:18px;font-weight:700;cursor:pointer;transition:background .2s,color .2s}
.license-open:hover,.license-open:focus-visible{background:#17242b;color:white}
#license-dialog{width:1000px;max-width:calc(100vw - 32px)}
.license-pages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:24px}
.license-pages a{display:block;color:var(--teal)}.license-pages img{display:block;width:100%;height:auto;border:1px solid #dfedf1;border-radius:8px}
.license-pages span{display:block;padding:10px 0}
@media(max-width:639px){#media-dialog.details-modal{width:320px;padding:28px 20px 24px}.details-modal #media-content{font-size:14px}.clinic-details .license-heading{font-size:13px}.clinic-details .license-number{font-size:12px;margin-bottom:20px}.license-open{min-height:47px;font-size:14px}.license-pages{grid-template-columns:1fr;gap:16px}}

/* Keep portrait patient videos fully visible, with controls inside the viewport. */
#media-dialog:has(.portrait-player){width:480px;max-width:calc(100vw - 32px)}
#media-content video.portrait-player{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 180px);aspect-ratio:9/16;object-fit:contain;margin:0 auto;background:#000}

/* Keep the repeating track flush with both viewport edges. */
.ratings{padding-inline:0;padding-bottom:calc(24 * var(--u))}
@media(max-width:700px){.ratings{padding-bottom:16px}}

/* One accessible button covers each complete video preview. */
.video-trigger{position:absolute;inset:0;display:block;width:100%;height:100%;padding:0;border:0;border-radius:inherit;background:transparent;cursor:pointer}
.video-trigger .play{pointer-events:none}
.case-video .video-trigger{border-radius:calc(20 * var(--desktop-unit,1px))}
@media(max-width:700px){.case-video .video-trigger{border-radius:14px}}


.mobile-clinic-gallery{display:none}

.mobile-break{display:none}

/* Shared review: rounded care label and space above doctor actions. */
@media(min-width:701px){.care>h3{border-bottom-right-radius:calc(15 * var(--u))}.doctor-copy .experience{margin-top:calc(12 * var(--desktop-unit, 1px))}.doctor-fact{margin-bottom:calc(12 * var(--desktop-unit, 1px))}}

/* Shared review: rounded care label and space above doctor actions. */
@media(min-width:701px){.care>h3{border-bottom-right-radius:calc(15 * var(--u))}.doctor-copy .experience{margin-top:calc(12 * var(--desktop-unit, 1px))}.doctor-fact{margin-bottom:calc(12 * var(--desktop-unit, 1px))}}
