@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap');
:root{--ink:#193231;--sub:#58706b;--mint:#e7f3ee;--aqua:#c9e5da;--cream:#faf8f3;--line:#d8e4dc;--accent:#226c59;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font:16px/1.7 'DM Sans',Arial,sans-serif}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid #e08e34;outline-offset:3px}.skip{position:absolute;top:-80px;left:10px;background:white;padding:10px;z-index:9}.skip:focus{top:10px}.container{max-width:1180px;margin:auto;padding:0 28px}header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:2}.nav{min-height:82px;display:flex;align-items:center;gap:26px;justify-content:space-between}.wordmark{font:700 22px/1.1 Manrope,sans-serif;letter-spacing:-.045em;text-decoration:none;white-space:nowrap}.wordmark small{display:block;font:600 9px/1.5 'DM Sans',sans-serif;letter-spacing:.17em;text-transform:uppercase;color:var(--accent);margin-top:5px}.links{display:flex;flex-wrap:wrap;gap:23px;align-items:center}.links a{text-decoration:none;font-size:14px;font-weight:600}.links a:hover,.textlink:hover{text-decoration:underline}.button{display:inline-block;background:var(--accent);border:1px solid var(--accent);padding:13px 21px;border-radius:5px;color:white!important;text-decoration:none;font-weight:700;line-height:1.35;text-align:center}.button:hover{background:#174b3d}.button.secondary{background:transparent;color:var(--accent)!important}.nav .button{font-size:13px;padding:10px 15px}.hero{background:linear-gradient(130deg,#f5faf4 0%,#e2eee5 64%,#d6e9e2 100%);padding:100px 0 90px}.hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr);gap:70px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--accent);font-size:12px;font-weight:700}.hero h1,h1,h2,h3{font-family:Manrope,'DM Sans',sans-serif;letter-spacing:-.047em;line-height:1.13}h1{font-size:clamp(40px,5vw,68px);margin:16px 0 24px}h2{font-size:clamp(30px,3.5vw,43px);margin:0 0 20px}h3{font-size:21px;margin:0 0 12px}p{margin:0 0 18px}p.lead{font-size:18px;line-height:1.7;max-width:690px;color:#38534d}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero-art{min-height:390px;border-radius:50% 50% 12px 12px;background:radial-gradient(circle at 55% 27%,#f9fffa 0 9%,transparent 9.2%),radial-gradient(circle at 55% 26%,#c5e7d8 0 26%,transparent 26.3%),linear-gradient(145deg,#99c9b7,#277966);display:grid;place-items:center;padding:38px;color:#fff;position:relative}.hero-art:before{content:'';position:absolute;inset:18px;border:1px solid #ffffff65;border-radius:inherit}.hero-art span{z-index:1;font:500 clamp(29px,4vw,48px)/1.15 Manrope,sans-serif;letter-spacing:-.06em;text-align:center;max-width:340px}.section{padding:88px 0}.section.light{background:white}.section.mint{background:var(--mint)}.intro{max-width:730px;margin-bottom:34px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:white;border:1px solid var(--line);border-radius:12px;padding:29px;display:flex;flex-direction:column;align-items:flex-start}.card p{color:var(--sub)}.card a{margin-top:auto;font-weight:700;color:var(--accent);text-underline-offset:4px}.light .card{background:var(--cream)}.split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}.checklist{padding:0;list-style:none}.checklist li{padding:14px 0 14px 27px;border-bottom:1px solid var(--line);position:relative}.checklist li:before{content:'✓';position:absolute;left:0;color:var(--accent);font-weight:700}.banner{background:#193d34;color:white;border-radius:14px;padding:44px;display:flex;align-items:center;justify-content:space-between;gap:28px}.banner h2{margin:0 0 9px}.banner p{margin:0;color:#d7ede3}.banner .button{background:white;border-color:white;color:var(--ink)!important;white-space:nowrap}.detail-hero{background:var(--mint);padding:76px 0}.detail-hero h1{max-width:900px}.article{max-width:780px;margin:auto;padding:70px 28px 90px}.article h2{font-size:30px;margin-top:42px}.article ul{padding-left:22px}.article li{margin-bottom:9px}.faq{border-top:1px solid var(--line);padding:20px 0}.faq h3{font-size:18px;margin-bottom:7px}.muted{color:var(--sub)}.contact-box{background:white;border:1px solid var(--line);border-radius:12px;padding:35px}.contact-box a{overflow-wrap:anywhere}.crumb{font-size:13px;color:var(--sub);margin-bottom:20px}.crumb a{color:var(--accent)}footer{background:#102f28;color:#e7f1eb;padding:60px 0 24px}footer a{color:#e7f1eb}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}footer .wordmark small{color:#a5d6bf}.footer-end{border-top:1px solid #ffffff30;margin-top:45px;padding-top:20px;font-size:13px;color:#b6cbc0}.floating{position:fixed;right:22px;bottom:22px;z-index:5;border-radius:40px;box-shadow:0 5px 18px #173d3340}.note{font-size:14px;color:var(--sub)}@media(max-width:850px){.hero-grid,.split{grid-template-columns:1fr;gap:35px}.hero-art{min-height:250px}.grid{grid-template-columns:1fr 1fr}.nav{align-items:flex-start;padding-top:16px;padding-bottom:16px;flex-wrap:wrap}.links{width:100%;gap:12px 18px}.links a{font-size:13px}.footer-grid{grid-template-columns:1fr 1fr}.banner{display:block}.banner .button{margin-top:22px}}@media(max-width:560px){.container{padding:0 20px}.hero{padding:70px 0}.hero-art{min-height:230px}.section{padding:60px 0}.grid,.footer-grid{grid-template-columns:1fr}.banner{padding:27px}.floating{right:12px;bottom:12px;font-size:13px;padding:11px 15px}.actions .button{width:100%}}

header{background:#0b1e3f;border-color:#0b1e3f}.nav .links a{color:#fff}.nav .links .button{background:#74c8aa;border-color:#74c8aa;color:#102c39!important}.wordmark img{display:block;width:170px;height:83px;object-fit:contain}.hero-art{background:#0b1e3f;border-radius:12px;padding:0;min-height:0;overflow:hidden}.hero-art:before{display:none}.hero-art img{width:100%;height:auto;display:block}.hero{background:linear-gradient(130deg,#f5faf4 0%,#e2eee5 64%,#d6e9e2 100%)}footer{background:#0b1e3f}.footer-grid .wordmark img{width:190px;height:auto}@media(max-width:560px){.nav .wordmark img{width:140px;height:69px}.nav{gap:12px}}

.photo{width:100%;height:auto;display:block;border-radius:12px}.photo-frame{background:#e7f3ee;padding:10px;border-radius:15px}.photo-caption{font-size:13px;color:#58706b;margin:10px 0}.case-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:44px;align-items:center}.case-photo{max-height:580px;width:100%;object-fit:contain;background:#e7f3ee}.case-note{max-width:600px}@media(max-width:800px){.case-grid{grid-template-columns:1fr}}
/* Drag-to-compare: each half is a crop from the untouched clinic-supplied composite. */
.comparison{--split:50%;position:relative;width:100%;aspect-ratio:900/680;overflow:hidden;border-radius:12px;background:#172b2c;isolation:isolate}.comparison img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;user-select:none;pointer-events:none}.comparison .comparison-after{clip-path:inset(0 0 0 var(--split))}.comparison .comparison-divider{position:absolute;left:var(--split);top:0;bottom:0;width:2px;background:white;transform:translateX(-50%);box-shadow:0 0 6px #1126;pointer-events:none;z-index:2}.comparison .comparison-divider:after{content:'↔';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:white;color:#193d34;font:700 25px/1 Arial,sans-serif;box-shadow:0 2px 12px #1128}.comparison .comparison-label{position:absolute;top:12px;z-index:2;background:#0b1e3fcc;color:#fff;padding:3px 9px;border-radius:4px;font-weight:700;font-size:12px;pointer-events:none}.comparison .comparison-label.before{left:12px}.comparison .comparison-label.after{right:12px}.comparison input[type=range]{position:absolute;inset:0;z-index:3;width:100%;height:100%;margin:0;cursor:ew-resize;appearance:none;-webkit-appearance:none;background:transparent;touch-action:pan-y}.comparison input[type=range]::-webkit-slider-runnable-track{background:transparent;height:100%;border:0}.comparison input[type=range]::-moz-range-track{background:transparent;height:100%;border:0}.comparison input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:44px;height:44px;border:0;background:transparent;border-radius:50%;margin-top:0}.comparison input[type=range]::-moz-range-thumb{width:44px;height:44px;border:0;background:transparent;border-radius:50%}.comparison input[type=range]:focus-visible{outline:3px solid #e08e34;outline-offset:-4px}
/* Dental Works logo palette: navy, mint and a restrained pink dot. */
:root{--ink:#0a1d3d;--sub:#425c68;--mint:#eef8f4;--aqua:#cdece1;--cream:#fafbfa;--line:#c9e5da;--accent:#70c9a8;--navy:#0a1d3d;--pink:#f1a3b3}
body{color:var(--ink)}
a:focus-visible,button:focus-visible,.comparison input[type=range]:focus-visible{outline-color:var(--pink)}
header,footer{background:var(--navy)}
.nav .links .button,.button{background:var(--accent);border-color:var(--accent);color:var(--navy)!important}
.button:hover,.nav .links .button:hover{background:#93d9be;border-color:#93d9be}
.button.secondary{background:transparent;border-color:var(--navy);color:var(--navy)!important}
.button.secondary:hover{background:#e0f3eb}
.eyebrow,.wordmark small,.crumb a,.card a,.checklist li:before{color:#276e61}
.eyebrow:before{content:'';display:inline-block;width:7px;height:7px;background:var(--pink);border-radius:50%;margin-right:9px;vertical-align:2px}
.hero{background:linear-gradient(130deg,#f4faf7 0%,#e3f5ee 68%,#d5eee5 100%)}
.detail-hero{background:#e9f6f1}
p.lead{color:#3c5661}
.banner{background:var(--navy)}.banner p{color:#dbf1e9}.banner .button{background:var(--accent);border-color:var(--accent);color:var(--navy)!important}
.hero-art,.comparison{background:var(--navy)}.comparison .comparison-divider:after{color:var(--navy)}
.floating{box-shadow:0 5px 18px #0a1d3d40}

/* iTero Lumina consultation preview */
.scan-section{background:#fff;padding:38px 0 12px}.scan-preview{background:#0a1d3d;color:#fff;border-radius:18px;padding:35px 42px;max-width:950px;margin:auto;border-left:7px solid #70c9a8}.scan-preview h2{font-size:clamp(26px,3vw,38px);margin:10px 0 16px;color:#fff}.scan-preview p{font-size:16px;line-height:1.7;color:#e2f0ec;max-width:760px;margin-bottom:10px}.scan-kicker{color:#89d9bb;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:700}.scan-kicker:before{content:'';display:inline-block;background:#f1a3b3;width:7px;height:7px;border-radius:50%;margin-right:9px;vertical-align:2px}.scan-preview a{color:#9fe4ca}.scan-preview .textlink{display:inline-block;margin-top:7px}.scan-preview span{color:#9fe4ca;margin:0 9px}@media(max-width:560px){.scan-section{padding:24px 0 6px}.scan-preview{padding:28px 23px;border-left-width:5px}.scan-preview h2{font-size:27px}.scan-preview p{font-size:15px}}

.calm-section{background:#f6f9f7}.calm-section .intro{color:#425c68;max-width:760px;font-size:18px;line-height:1.7}.calm-section .textlink{font-weight:700;color:#276e61;text-underline-offset:4px}

.hero-photo,.clinic-photo{margin:0}.hero-photo img{width:100%;height:auto;display:block;border-radius:12px}.hero-photo figcaption,.clinic-photo figcaption{color:#58706b;font-size:13px;margin:7px 0 0}.clinic-photo img{display:block;width:100%;height:auto;border-radius:12px}.scanner-photo-section{padding-top:42px;padding-bottom:42px}.scanner-photo-section .split{align-items:center}.scanner-photo-section p{max-width:450px}

.case-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.case-pair figure,.clinic-video{margin:0}.case-pair img{display:block;width:100%;height:auto;border-radius:12px}.case-pair figcaption{font-weight:700;margin-top:8px;color:#276e61}.second-case{background:#fff}.clinic-video video{width:100%;height:auto;max-height:460px;border-radius:12px;background:#0a1d3d;display:block}.clinic-video figcaption{font-size:13px;color:#58706b;margin-top:8px}.video-section .split{align-items:center}@media(max-width:700px){.case-pair{grid-template-columns:1fr}}

.scanner-quote{border-left:3px solid #f1a3b3;padding:0 0 0 18px;margin:24px 0 0}.scanner-quote p{color:#fff;font-size:18px;line-height:1.5;margin:0 0 8px}.scanner-quote cite{font-style:normal;color:#9fe4ca;font-size:14px}

/* Complete owner-supplied Dental Works logo, no cropped lettering. */
.nav .wordmark img{width:192px;height:auto;max-height:106px;object-fit:contain}.footer-grid .wordmark img{width:220px;height:auto;max-height:none;object-fit:contain}@media(max-width:560px){.nav .wordmark img{width:154px;height:auto;max-height:88px}.footer-grid .wordmark img{width:205px}}

/* Social link preview; keep icons paired with clear labels. */
.social-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:13px}.social-link{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:8px;border:1px solid currentColor;text-decoration:none;font-size:14px;font-weight:700;line-height:1.25;min-height:42px}.social-link:hover{text-decoration:underline}.social-link svg{width:20px;height:20px;flex:none}.contact-social{border-top:1px solid var(--line);margin-top:26px;padding-top:21px}.contact-social .social-link{color:#174f47;border-color:#a8d7c4}.social-heading{display:block;margin-top:15px}footer .social-link{color:#d9eee6;border-color:#55756a}footer .social-link:hover{background:#193b4d}

/* Persistent mobile quick actions. */
.mobile-action-bar{display:none}@media(max-width:700px){body{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}.mobile-action-bar{position:fixed;display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:8px;align-items:stretch;bottom:0;left:0;right:0;z-index:100;background:#fff;border-top:1px solid #c9e5da;box-shadow:0 -4px 16px #0a1d3d1c;padding:9px 12px calc(9px + env(safe-area-inset-bottom,0px));min-height:76px}.mobile-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:10px;text-decoration:none;color:#0a1d3d;font:700 12px/1.2 "DM Sans",Arial,sans-serif;min-width:0;min-height:54px}.mobile-action svg{width:22px;height:22px}.mobile-action-primary{background:#70c9a8;color:#0a1d3d}.mobile-action:focus-visible{outline:3px solid #f1a3b3;outline-offset:-2px}}

/* Logo emphasis and dedicated mobile navigation row. */
@media(max-width:700px){.nav{display:flex;flex-direction:column;align-items:stretch;gap:0;padding-top:13px;padding-bottom:15px}.nav>.wordmark{display:block;width:max-content;max-width:100%;padding:0 0 12px}.nav .wordmark img{width:235px;height:auto;max-height:none;object-fit:contain}.nav .links{border-top:1px solid #ffffff38;padding-top:12px;display:flex;align-items:center;gap:12px 18px;width:100%}.nav .links a:not(.button){font-size:14px;white-space:nowrap}.nav .links .button{margin-top:2px}}
@media(max-width:385px){.nav .links{gap:10px 13px}.nav .links a:not(.button){font-size:13px}}

/* Self-hosted treatment FAQ guide, with explicit clinician handoff. */
.faq-chat{position:fixed;right:18px;bottom:22px;z-index:90;font-family:'DM Sans',Arial,sans-serif}.faq-launch{display:flex;gap:9px;align-items:center;background:#0a1d3d;color:#fff;border:1px solid #70c9a8;border-radius:40px;padding:12px 18px;box-shadow:0 5px 19px #0a1d3d44;font:700 15px/1.2 'DM Sans',Arial,sans-serif;cursor:pointer}.faq-launch svg{width:22px;height:22px}.faq-panel{width:min(390px,calc(100vw - 32px));height:min(620px,calc(100dvh - 110px));display:flex;flex-direction:column;background:#fff;border-radius:16px;border:1px solid #bddfce;box-shadow:0 12px 50px #0a1d3d45;overflow:hidden;position:absolute;right:0;bottom:62px}.faq-panel[hidden]{display:none}.faq-head{background:#0a1d3d;color:#fff;position:static;padding:15px 18px;display:flex;align-items:center;justify-content:space-between;flex:none}.faq-head strong{display:block;font:700 17px Manrope,Arial,sans-serif}.faq-head small{display:block;color:#bce8d6;font-size:12px}.faq-close{border:0;background:none;color:#fff;font:30px/1 Arial,sans-serif;cursor:pointer;padding:0 3px}.faq-content{overflow:auto;overscroll-behavior:contain;padding:17px;flex:1}.faq-greeting{background:#eef8f4;border-radius:12px 12px 12px 2px;padding:13px 15px;font-size:14px;line-height:1.45;margin:0 0 15px}.faq-search-label{font-size:12px;font-weight:700;color:#276e61;display:block;margin-bottom:5px}.faq-content input{width:100%;border:1px solid #b5d5c7;border-radius:8px;padding:10px 12px;font:14px 'DM Sans',Arial,sans-serif;color:#0a1d3d;min-height:43px}.faq-topics{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.faq-topic{border:1px solid #acd7c5;background:#fff;color:#184b40;border-radius:20px;padding:7px 11px;font:600 12px/1.3 'DM Sans',Arial,sans-serif;cursor:pointer;text-align:left}.faq-topic.selected,.faq-topic:hover{background:#d9f0e6;border-color:#70c9a8}.faq-answer{background:#f5faf7;border:1px solid #c9e5da;border-radius:12px;padding:15px;margin:12px 0}.faq-answer:empty{display:none}.faq-answer h3{font:700 17px/1.2 Manrope,Arial,sans-serif;margin:0 0 9px}.faq-answer p{font-size:14px;line-height:1.55;margin:0 0 12px}.faq-answer a{font-size:13px;font-weight:700}.faq-more{display:block;color:#276e61;margin-bottom:12px}.faq-whatsapp{display:inline-flex;background:#70c9a8;color:#0a1d3d;text-decoration:none;border-radius:7px;padding:10px 13px}.faq-empty{font-size:13px;margin:0;color:#425c68}
@media(max-width:700px){.faq-chat{right:12px;bottom:calc(87px + env(safe-area-inset-bottom,0px))}.faq-panel{height:min(620px,calc(100dvh - 181px));bottom:61px;right:0;width:min(390px,calc(100vw - 24px))}.faq-launch{padding:11px 15px}}

/* September 2026 treatment landing pages */
.landing-hero .eyebrow{max-width:100%;overflow-wrap:anywhere}.landing-hero .note{margin-top:18px}.landing-body section{margin-bottom:35px}.landing-body section h2{margin-bottom:15px}.landing-body .related-link{padding:19px 23px;background:#e9f6f1;border-radius:10px;font-weight:700}.landing-body .related-link a{color:#184d49}.landing-links{background:#eef7f2}@media(max-width:560px){.landing-hero{padding:55px 0}.landing-body{padding:38px 20px 70px}.landing-links .grid{grid-template-columns:1fr}}


/* Mobile contact controls: reserve the host branding zone without changing the badge. */
@media(max-width:700px){body{padding-bottom:calc(166px + env(safe-area-inset-bottom,0px))}.mobile-action-bar{bottom:90px;padding-left:111px;gap:4px}.mobile-action-bar:after{content:"";position:absolute;left:0;right:0;top:100%;height:90px;background:#fff}.faq-chat{left:12px;right:auto;bottom:calc(106px + env(safe-area-inset-bottom,0px));z-index:101}.faq-launch{padding:10px 9px;font-size:13px;gap:5px}.faq-panel{left:0;right:auto;bottom:65px;height:min(580px,calc(100dvh - 245px))}}

.map-embed iframe{display:block;width:100%;height:380px;border:0;border-radius:16px;background:#e8f1f0}.map-section .button{margin:14px 10px 0 0}@media(max-width:640px){.map-embed iframe{height:300px}}
