/* Single-tooth composition. Shared components retain the approved All-on-4 refinements. */
.hero-teeth img{content:normal!important;width:100%!important;height:100%!important;inset:0!important;object-fit:contain!important}
.restore-top{display:grid;grid-template-columns:1fr .91fr;gap:calc(100 * var(--u));align-items:start}
.restore-heading h2{font-size:calc(55 * var(--u));line-height:1.14;letter-spacing:0;max-width:calc(750 * var(--u))}
.restore-heading .intro{max-width:calc(515 * var(--u));margin-top:calc(32 * var(--u));font-size:calc(24 * var(--u))}
.restore-media{display:grid;grid-template-columns:218fr 456fr;gap:calc(34 * var(--u));padding-top:calc(9 * var(--u))}
.restore-video{position:relative;border-radius:calc(20 * var(--u));overflow:hidden;height:calc(231 * var(--u))}
.restore-video>img{width:100%;height:100%;object-fit:cover}
.restore-video .play{left:calc(15 * var(--u));top:calc(15 * var(--u));bottom:auto;width:calc(52 * var(--u));height:calc(52 * var(--u));font-size:calc(24 * var(--u))}
.restore-choice{display:grid;grid-template-columns:1fr 1fr;border-radius:calc(20 * var(--u));overflow:hidden;box-shadow:var(--shadow)}
.restore-choice figure{margin:0;position:relative;height:calc(231 * var(--u));overflow:hidden}
.restore-choice figure+figure{border-left:1px solid white}
.restore-choice img{width:100%;height:100%;object-fit:cover}
.restore-choice figure:first-child img{width:200%;max-width:none;object-fit:fill}
.restore-choice figcaption{position:absolute;bottom:0;left:0;right:0;color:white;padding:calc(18 * var(--u)) calc(22 * var(--u));background:linear-gradient(transparent,#000b)}
.restore-choice b{display:table;font-size:calc(20 * var(--u));padding:calc(4 * var(--u)) calc(10 * var(--u));border-radius:calc(8 * var(--u));background:var(--teal);white-space:nowrap}
.restore-choice figcaption span{display:block;font-size:calc(16 * var(--u));line-height:1.2;margin-top:calc(12 * var(--u))}
.restore-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:calc(25 * var(--u));margin-top:calc(40 * var(--u))}
.restore-cards article{background:var(--ice);border-radius:calc(20 * var(--u));padding:calc(15 * var(--u)) calc(18 * var(--u));min-height:calc(321 * var(--u));box-shadow:var(--shadow)}
.restore-illustration{height:calc(182 * var(--u));background:white;border-radius:calc(15 * var(--u));display:grid;place-items:center;overflow:hidden}
.restore-illustration img{width:100%;height:100%;object-fit:contain}
.restore-cards p{font-size:calc(20 * var(--u));line-height:1.18;text-align:center;padding:calc(28 * var(--u)) calc(8 * var(--u)) calc(15 * var(--u))}
.comparison-grid{grid-template-columns:510fr 500fr 510fr;align-items:stretch;gap:calc(20 * var(--u));padding-top:0}
.comparison-grid:before{display:none}.classic{grid-column:1}.seamless{grid-column:3}
.implant-diagram{grid-column:2;grid-row:1;position:relative;background:#f1f8fb;border-radius:calc(20 * var(--u));min-height:calc(530 * var(--u));overflow:hidden}
.implant-diagram>img{position:absolute;left:12%;top:7%;width:76%;height:87%;object-fit:contain}
.anatomy-label{position:absolute;z-index:1;border:1px solid var(--teal);border-radius:calc(6 * var(--u));padding:calc(5 * var(--u)) calc(8 * var(--u));background:white;font-size:max(12px,calc(16 * var(--u)));line-height:1.2;font-weight:600}
.anatomy-label:after{content:'';position:absolute;top:50%;width:calc(45 * var(--u));height:1px;background:var(--teal)}
.crown-label{top:9%;left:27%}.crown-label:after{left:100%;transform:rotate(40deg);transform-origin:left}
.tooth-label{top:26%;left:5%}.tooth-label:after{left:100%;transform:rotate(38deg);transform-origin:left}
.abutment-label{top:32%;right:7%}.abutment-label:after{right:100%;transform:rotate(-30deg);transform-origin:right}
.implant-label{top:46%;right:7%}.implant-label:after{right:100%}
.single-case{grid-template-columns:460fr 604fr 429fr;gap:calc(32 * var(--u))}
.single-case .case-details h3{font-size:calc(32 * var(--u));margin-bottom:calc(28 * var(--u))}
.single-case .case-details h3 small{font-size:calc(20 * var(--u));font-weight:500}
.single-case .case-label{font-size:calc(18 * var(--u));padding:calc(12 * var(--u)) calc(20 * var(--u))}
.single-case .case-details li{min-height:calc(110 * var(--u));font-size:calc(24 * var(--u));line-height:1.1}
.single-case .case-video{height:calc(384 * var(--u))}.single-case .case-video .photo img{content:normal;width:100%!important;height:100%!important;inset:0!important;object-fit:cover}
.single-case .before-after{height:calc(217 * var(--u))}.single-case blockquote{min-height:calc(147 * var(--u));font-size:calc(23 * var(--u))}
.single-price{background:#007d96;color:white}.single-price h2{font-size:calc(55 * var(--u));line-height:1.1;letter-spacing:0}.single-price .intro{margin-top:calc(32 * var(--u))}
.stages-grid{display:grid;grid-template-columns:425fr 494fr 607fr;gap:calc(18 * var(--u));margin-top:calc(40 * var(--u))}
.treatment-stage{position:relative;background:white;color:var(--ink);border-radius:calc(20 * var(--u));height:calc(373 * var(--u));padding:calc(24 * var(--u));overflow:hidden}
.treatment-stage h3{font-size:calc(30 * var(--u));position:relative;z-index:1;white-space:nowrap}
.treatment-stage ul{position:relative;z-index:1;margin-top:calc(26 * var(--u));display:grid;gap:calc(16 * var(--u));font-size:calc(20 * var(--u));font-weight:400;max-width:70%}
.treatment-stage li{padding-left:calc(34 * var(--u));position:relative;line-height:1.25}
.treatment-stage li:before{content:'+';position:absolute;left:0;top:0;width:calc(24 * var(--u));height:calc(24 * var(--u));display:grid;place-items:center;color:var(--teal);background:var(--ice);font-weight:700;border-radius:calc(6 * var(--u))}
.treatment-stage>img{position:absolute;width:59%;height:72%;right:0;bottom:0;object-fit:contain}.prosthetic-stage>img{width:65%;height:85%;right:-8%;bottom:-12%}
.single-payment{background:var(--teal);border-radius:calc(20 * var(--u));padding:calc(24 * var(--u));overflow:hidden}
.payment-heading{display:flex;align-items:center;gap:calc(20 * var(--u))}.payment-heading h3{font-size:calc(35 * var(--u));max-width:44%;line-height:1.15}.payment-heading strong{background:white;color:var(--teal);border-radius:calc(32 * var(--u));padding:calc(10 * var(--u)) calc(25 * var(--u));font-size:calc(34 * var(--u));white-space:nowrap;margin-right:calc(-70 * var(--u))}
.payment-terms{position:relative;background:#ffffff3b;border-radius:calc(14 * var(--u));padding:calc(24 * var(--u));margin-top:calc(32 * var(--u));min-height:calc(208 * var(--u))}
.payment-terms h4{font-size:calc(22 * var(--u));margin:0 0 calc(20 * var(--u));font-weight:700}.payment-terms ul{display:grid;gap:calc(8 * var(--u));justify-items:start}
.payment-terms li{font-size:max(12px,calc(14 * var(--u)));line-height:1.2;border-radius:calc(20 * var(--u));padding:calc(6 * var(--u)) calc(16 * var(--u));background:white;color:var(--ink);font-weight:600;white-space:nowrap}
.payment-terms li:before{content:'✓';color:var(--teal);margin-right:calc(12 * var(--u))}
.payment-percent{position:absolute;right:calc(22 * var(--u));bottom:calc(24 * var(--u));display:grid;justify-items:center}.payment-percent b{font-size:calc(82 * var(--u));line-height:1.1}.payment-percent span{font-size:calc(14 * var(--u));color:var(--ink);background:var(--ice);border-radius:calc(16 * var(--u));padding:calc(5 * var(--u)) calc(10 * var(--u))}
.single-price .cta.wide{margin-top:calc(40 * var(--u))}
@media(min-width:701px){.hero,.hero-grid{min-height:calc(976 * var(--u))}.hero h1{max-width:calc(1050 * var(--u))}.hero-teeth{width:calc(357 * var(--u));height:calc(218 * var(--u));right:0;bottom:0}.comparison .method ul{height:calc(470 * var(--u))}.comparison .method li{font-size:max(12px,calc(17 * var(--u)));min-height:calc(72 * var(--u))}}
@media(min-width:701px) and (max-width:1100px){.restore-top{gap:30px;grid-template-columns:1fr 1fr}.restore-heading h2{font-size:30px}.restore-heading .intro{font-size:16px}.restore-media{grid-template-columns:1fr 2fr;gap:12px}.restore-video,.restore-choice figure{height:165px}.restore-choice b{font-size:12px}.restore-choice figcaption span{font-size:12px}.restore-cards p{font-size:14px}.comparison-grid{grid-template-columns:1fr 1fr}.implant-diagram{grid-column:1/-1;grid-row:2;min-height:340px;width:360px;max-width:100%;margin:auto}.classic{grid-column:1}.seamless{grid-column:2}.stages-grid{grid-template-columns:1fr 1fr}.single-payment{grid-column:1/-1}.treatment-stage{height:300px}.treatment-stage h3{font-size:22px}.treatment-stage ul{font-size:16px}.payment-heading h3{font-size:26px}.payment-heading strong{font-size:30px}.payment-terms h4{font-size:20px}.payment-terms li{font-size:14px}.payment-percent b{font-size:60px}.payment-percent span{font-size:14px}.single-case .case-details h3{font-size:26px}.single-case .case-details h3 small{font-size:16px}.single-case .case-label{font-size:14px}.single-case .case-details li,.single-case blockquote{font-size:16px}}
@media(max-width:700px){
 .hero h1{font-size:28px;line-height:33px}.hero h1 span{font-size:25px;max-width:300px}.hero-price p{font-size:14px;max-width:230px}.hero-teeth{width:120px;height:74px;right:-18px;bottom:-1px}.hero-price strong{font-size:24px}
 .restore{padding:30px 0;min-height:1329px}.restore>.container{width:calc(100% - 40px)}.restore-top{display:block}.restore-heading h2{font-size:27px;line-height:34px;max-width:300px}.restore-heading .intro{font-size:14px;line-height:18px;margin-top:20px;max-width:310px}
 .restore-media{display:block;padding:0;margin-top:30px}.restore-video{height:337px;width:100%;border-radius:16px}.restore-video>img{object-fit:cover;object-position:center}.restore-video .play{width:44px;height:44px;font-size:19px;left:16px;top:16px}
 .restore-choice{gap:16px;padding:12px;background:#f4f8fa;margin-top:20px;border-radius:16px;box-shadow:none}.restore-choice figure{height:auto;overflow:visible}.restore-choice figure+figure{border:0}.restore-choice img{height:153px;border-radius:10px;object-fit:cover}.restore-choice figure:first-child img{width:100%;object-fit:cover;object-position:left}.restore-choice figcaption{position:static;color:var(--ink);background:none;padding:12px 0 0}.restore-choice b{font-size:12px;line-height:18px;width:100%;text-align:center;color:white;padding:8px 3px;border-radius:8px}.restore-choice figcaption span{font-size:12px;line-height:15px;margin-top:8px}
 .restore-cards{grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}.restore-cards article{padding:8px;min-height:173px;border-radius:16px;box-shadow:none}.restore-illustration{height:80px;border-radius:12px}.restore-illustration img{object-fit:contain}.restore-cards p{font-size:12px;line-height:16px;text-align:left;padding:8px 0 0}
 .comparison{min-height:1484px}.comparison-grid{display:flex;gap:0;padding:0}.classic{order:0}.implant-diagram{order:1;width:100%;min-height:316px;margin:24px 0 32px;border-radius:16px}.implant-diagram>img{width:78%;height:94%;left:11%;top:3%}.anatomy-label{font-size:12px;padding:4px 5px;border-radius:5px}.anatomy-label:after{width:28px}.crown-label{top:6%;left:32%}.tooth-label{left:4%;top:29%}.abutment-label{right:4%;top:37%}.implant-label{right:4%;top:56%}.seamless{order:2}.comparison .statement{min-height:128px}
 .cases{min-height:974px}.single-case{display:flex;flex-direction:column;gap:0}.single-case .case-video{height:218px;order:0;margin-bottom:20px}.single-case .case-video .photo img{content:url('assets/figma-404-2337.png');object-fit:cover}.single-case .case-details{order:1;min-height:215px;padding:20px 0 25px;border-radius:18px 18px 0 0;box-shadow:none}.single-case .case-details h3{font-size:21px;line-height:26px;margin:0 16px 12px;gap:14px}.single-case .case-details h3 small{font-size:14px}.single-case .case-label{font-size:12px;line-height:16px;padding:7px 16px;max-width:calc(100% - 16px)}.single-case .case-details li{font-size:13px;line-height:18px;min-height:60px;padding:18px 16px}.single-case .case-details li:before{display:none}.single-case .case-details li:last-child{border:0}.single-case .case-result .before-after{height:112px;margin:-5px 16px 18px;order:2;box-shadow:0 0 0 16px #dceefa}.single-case blockquote{order:3;font-size:13px;line-height:16px;min-height:100px;margin-top:0;padding:14px 16px 14px 30px}.single-case .case-result blockquote:before{left:16px;top:14px;bottom:14px}
 .single-price{padding:40px 0 30px;min-height:1224px}.single-price h2{font-size:27px;line-height:34px}.single-price h2 br{display:none}.single-price .intro{font-size:16px;line-height:18px;margin-top:20px;max-width:300px}.stages-grid{display:flex;flex-direction:column;gap:16px;margin-top:30px}.treatment-stage{height:222px;border-radius:16px;padding:16px}.treatment-stage h3{font-size:20px;line-height:26px;white-space:normal}.treatment-stage ul{font-size:14px;line-height:17px;font-weight:500;gap:18px;margin-top:18px;max-width:70%}.treatment-stage li{padding-left:30px}.treatment-stage li:before{width:22px;height:22px;border-radius:7px;font-size:15px}.treatment-stage>img{width:56%;height:80%;right:0;bottom:0}.prosthetic-stage{height:232px}.prosthetic-stage ul{max-width:205px;gap:17px}.prosthetic-stage>img{width:48%;height:83%;right:-1%;bottom:0}.single-payment{border-radius:16px;padding:16px;margin-top:8px}.payment-heading{display:block}.payment-heading h3{font-size:20px;line-height:26px;max-width:100%}.payment-heading strong{font-size:27px;line-height:33px;padding:4px 14px;display:table;margin:10px 0 0;border-radius:28px}.payment-terms{padding:12px;margin-top:16px;border-radius:14px;min-height:253px}.payment-terms h4{font-size:18px;line-height:24px;margin:0 0 18px}.payment-terms ul{gap:8px}.payment-terms li{font-size:12px;line-height:16px;padding:6px 10px;border-radius:20px;white-space:normal}.payment-terms li:before{margin-right:8px}.payment-percent{position:static;display:flex;align-items:center;justify-content:flex-start;gap:26px;margin-top:14px}.payment-percent b{font-size:60px;line-height:66px}.payment-percent span{font-size:12px;padding:5px 10px;border-radius:15px;white-space:nowrap}.single-price .cta.wide{margin-top:24px}
}
@media(max-width:359px){.hero h1{font-size:26px}.hero h1 span{font-size:24px}.hero-price strong{font-size:22px}.hero-teeth{width:105px}.restore-heading h2{font-size:25px;line-height:31px}.restore-video{height:300px}.restore-choice{gap:10px;padding:10px}.restore-choice img{height:135px}.restore-cards p{font-size:12px}.treatment-stage h3{font-size:18px}.treatment-stage ul{font-size:12px;max-width:72%}.payment-heading h3{font-size:18px}.payment-heading strong{font-size:25px}.payment-terms{padding:10px}.payment-terms li{font-size:12px;padding:5px 7px}.payment-percent{gap:16px}.single-case .case-label{font-size:12px}.single-case .case-details h3{font-size:20px}}
@media(min-width:701px){.single-case .case-video{grid-column:3;grid-row:1}.single-case .case-result{grid-column:2;grid-row:1}.single-case .case-video>.photo{min-height:0}.restore-choice figure:first-child img{width:100%;object-fit:cover}}.single-case .comparison-after{width:200%;left:-100%;object-fit:cover}.single-case .comparison-before img{width:200%;left:0;object-fit:cover}
/* Preserve the transparent source crop used by Figma (one implant from the supplied sheet). */
.hero-teeth{transform:scaleX(-1);border-radius:28px;overflow:hidden}
.hero-teeth img{width:388.39%!important;height:211.51%!important;left:-288.39%!important;top:0!important;object-fit:fill!important}
.single-case-layout{margin-top:calc(50 * var(--u))}
.restore-illustration img{width:auto;max-width:100%;height:auto;max-height:100%}
.restore-cards article:last-child .restore-illustration img{width:61%;height:100%;object-fit:contain}
@media(min-width:1101px){.restore-heading h2{font-size:calc(52 * var(--u));line-height:1.14}.restore-top{grid-template-columns:756fr 708fr;gap:calc(96 * var(--u))}.restore-heading h2>span{display:block}.comparison .quote-intro{max-width:none;font-size:calc(24 * var(--u))}}
@media(max-width:700px){.hero-teeth{width:110px;height:82px;right:-1px;border-radius:16px}.hero-teeth img{width:469.6%!important;height:211.51%!important;left:-369.6%!important}.restore-heading h2{max-width:320px}.restore-heading h2>span{display:block;max-width:235px}.restore-heading .intro{font-size:16px;line-height:18px;margin-top:20px}.restore-video>img{content:url('assets/figma-404-1351.png')}.restore-choice figure:first-child img{content:url('assets/figma-404-1355.png');object-position:center}.restore-choice figure:last-child img{content:url('assets/figma-404-1356.png');object-position:center}.restore-choice figcaption span{font-size:13px}.restore-choice b{font-size:14px}.single-case-layout{margin-top:30px}.single-case .case-video>.photo img{content:url('assets/figma-404-2337.png')!important}.single-case .case-video>.photo{height:100%;min-height:0}.single-case .case-result blockquote{font-weight:500}.comparison .statement p{font-weight:500}.prosthetic-stage>img{width:55%;height:86%;right:-4%}}
/* Review corrections: vertical player, matching comparison and stronger captions. */
#media-dialog:has(iframe.portrait-player){width:420px;padding:24px;max-width:calc(100vw - 24px)}
#media-dialog:has(iframe.portrait-player) h2{font-size:22px;line-height:28px;padding-right:30px}
#media-dialog:has(iframe.portrait-player) #media-content{margin-top:16px}
#media-content iframe.portrait-player{display:block;width:min(100%,calc((100dvh - 132px)*9/16));height:auto;aspect-ratio:9/16;margin:auto;background:#000}
.restore-cards p{font-weight:600}
.single-case .comparison-before img{transform:scaleX(-1);left:-100%}
.single-case .comparison-after{transform:scaleX(-1);left:0}
.payment-heading strong{border-top-right-radius:0;border-bottom-right-radius:0}
@media(min-width:701px){
 .restore-choice figure:first-child img{width:200%;max-width:none;object-fit:fill}
 .restore-choice figcaption{top:calc(130 * var(--u));bottom:0;padding:0 calc(20 * var(--u));background:none;z-index:1}
 .restore-choice figure:after{content:'';position:absolute;inset:34% 0 0;background:linear-gradient(transparent,#000b);pointer-events:none}
 .restore-choice b{font-size:calc(20 * var(--u));line-height:calc(24 * var(--u));padding:calc(3 * var(--u)) calc(8 * var(--u));border-radius:calc(6 * var(--u))}
 .restore-choice figcaption span{font-size:calc(16 * var(--u));line-height:calc(19 * var(--u));margin-top:calc(9 * var(--u));max-width:calc(175 * var(--u))}
 .restore-choice figure:last-child figcaption{text-align:right}.restore-choice figure:last-child b{margin-left:auto}.restore-choice figure:last-child figcaption span{margin-left:auto}
}
@media(min-width:701px) and (max-width:1100px){.restore-choice figcaption{top:85px;padding-inline:10px}.restore-choice b{font-size:12px;line-height:16px}.restore-choice figcaption span{font-size:12px;line-height:15px;margin-top:7px}}

/* Let the longer diagnostic bonus grow without touching its border. */
@media(max-width:700px){.single-page .bonus-list{height:auto}.single-page .bonus-list li{height:auto;min-height:78px}}
/* Tighten only the mobile single-tooth hero below its three-line heading. */
@media(max-width:700px){
 .single-page .hero,.single-page .hero-grid{height:1201px}
 .single-page .social-proof{top:147px}
 .single-page .hero-price{top:207px}
 .single-page .first-step{top:318px}
 .single-page .hero .hero-portrait{top:627px}
 .single-page .hero-room{top:633px}
 .single-page .hero-doctor{top:847px}
 .single-page .certificates{top:1037.5px}
 .single-page .hero-cta{top:1121px}
}

@media(max-width:700px){.single-case .case-result .before-after{margin-bottom:32px}}
