:root{--blue:#0b33a0;--blue-dark:#0a2470;--navy:#13235a;--text:#2c3550;--muted:#5b6480;--tint:#eef3ff;--tint-2:#dfe8ff;--line:#d9e0f0;--white:#fff;--sun:#ffc629;--google:#fbbc04;--ok:#138a4f;--radius:18px;--radius-sm:12px;--shadow:0 1px 2px #13235a0f, 0 8px 24px #13235a14;--shadow-lg:0 2px 6px #13235a14, 0 18px 48px #13235a24;--font-head:"Poppins", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-body:"Figtree", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--container:1180px;--header-h:76px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font-body);color:var(--text);background:var(--white);margin:0;font-size:1.0625rem;line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:var(--blue);text-underline-offset:3px}a:hover{color:var(--blue-dark)}h1,h2,h3,h4{font-family:var(--font-head);color:var(--navy);letter-spacing:-.01em;margin:0 0 .5em;font-weight:700;line-height:1.2}h1{font-size:clamp(2rem,4.6vw,3.1rem)}h2{font-size:clamp(1.6rem,3.2vw,2.25rem)}h3{font-size:1.2rem;font-weight:600}p{margin:0 0 1em}ul{padding-left:1.2em}.icon{flex:none}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 20px}.section{padding:64px 0}.section-tint{background:var(--tint)}.section-head{max-width:720px;margin-bottom:32px}.section-head.center{text-align:center;margin-left:auto;margin-right:auto}.section-head p{color:var(--muted);margin:0;font-size:1.1rem}.eyebrow{font-family:var(--font-head);letter-spacing:.08em;text-transform:uppercase;color:var(--blue);margin-bottom:10px;font-size:.82rem;font-weight:600;display:inline-block}.lead{color:var(--text);font-size:1.18rem}.muted{color:var(--muted)}.small{font-size:.92rem}.skip-link{z-index:100;background:var(--navy);color:#fff;border-radius:8px;padding:8px 14px;position:absolute;top:8px;left:-9999px}.skip-link:focus{left:8px}:focus-visible{outline:3px solid var(--sun);outline-offset:2px}.btn{font-family:var(--font-head);cursor:pointer;white-space:nowrap;border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:13px 22px;font-size:1rem;font-weight:600;line-height:1.2;text-decoration:none;transition:background .15s,color .15s,border-color .15s,transform .15s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{background:var(--blue-dark);color:#fff}.btn-outline{color:var(--blue);border-color:var(--blue);background:#fff}.btn-outline:hover{background:var(--tint);color:var(--blue-dark)}.btn-white{color:var(--blue);background:#fff}.btn-white:hover{background:var(--tint);color:var(--blue-dark)}.btn-ghost-white{color:#fff;background:0 0;border-color:#ffffffb3}.btn-ghost-white:hover{color:#fff;background:#ffffff1f}.btn-sm{padding:9px 16px;font-size:.95rem}.btn-row{flex-wrap:wrap;gap:12px;display:flex}.text-link{font-weight:600;font-family:var(--font-head);align-items:center;gap:6px;text-decoration:none;display:inline-flex}.text-link:hover{text-decoration:underline}.top-strip{background:var(--navy);color:#dfe6ff;font-size:.9rem}.top-strip .container{justify-content:space-between;gap:16px;padding-top:7px;padding-bottom:7px;display:flex}.top-strip a{color:#fff;font-weight:600;text-decoration:none}.top-strip a:hover{text-decoration:underline}.top-strip span{align-items:center;gap:6px;display:inline-flex}@media (width<=720px){.top-strip .strip-address{display:none}.top-strip .container{justify-content:center}}.site-header{z-index:50;background:#fffffff7;border-bottom:1px solid #0000;transition:border-color .2s,box-shadow .2s;position:sticky;top:0}.site-header.scrolled{border-color:var(--line);box-shadow:0 4px 18px #13235a12}.header-inner{min-height:var(--header-h);align-items:center;gap:20px;display:flex}.brand{color:var(--navy);flex:none;align-items:center;gap:10px;text-decoration:none;display:flex}.brand img{width:auto;height:58px}.brand-text{flex-direction:column;line-height:1.1;display:flex}.brand-name{font-family:var(--font-head);color:var(--blue);letter-spacing:-.01em;font-size:1.25rem;font-weight:700}.brand-sub{font-family:var(--font-head);letter-spacing:.06em;text-transform:uppercase;color:var(--navy);font-size:.74rem;font-weight:600}.nav{align-items:center;gap:2px;margin-left:auto;display:flex}.nav a{font-family:var(--font-head);color:var(--navy);border-radius:8px;padding:8px 10px;font-size:.95rem;font-weight:500;text-decoration:none}.nav a:hover{background:var(--tint);color:var(--blue)}.nav a[aria-current=page]{color:var(--blue);box-shadow:inset 0 -2px 0 var(--blue);border-radius:0}.nav-extra{display:none}.header-actions{align-items:center;gap:10px;display:flex}.menu-btn{color:var(--navy);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px;display:none}.menu-btn .icon-close,.menu-btn[aria-expanded=true] .icon-open{display:none}.menu-btn[aria-expanded=true] .icon-close{display:block}@media (width<=1140px){.menu-btn{display:inline-flex}.nav{border-top:1px solid var(--line);box-shadow:var(--shadow-lg);max-height:calc(100vh - var(--header-h));background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:8px 20px 20px;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.nav.open{display:flex}.nav a{border-bottom:1px solid var(--line);border-radius:0;padding:13px 4px;font-size:1.05rem}.nav a[aria-current=page]{box-shadow:none}.nav-extra{flex-wrap:wrap;gap:10px;padding-top:16px;display:flex}.nav-extra .btn{border-bottom:2px solid;flex:1}.nav-extra .btn-primary{border-color:var(--blue)}.header-actions{margin-left:auto}}@media (width<=560px){:root{--header-h:66px}.brand img{height:46px}.brand-name{font-size:1.05rem}.brand-sub{font-size:.64rem}.header-actions .btn{display:none}}.hero{background:linear-gradient(180deg, var(--tint) 0%, #fff 100%);padding:48px 0 56px;overflow:hidden}.hero-grid{grid-template-columns:1.1fr .9fr;align-items:center;gap:48px;display:grid}.hero h1{margin-bottom:18px}.hero h1 .eyebrow{margin-bottom:12px;font-size:.9rem;display:block}.hero .lead{max-width:560px;margin-bottom:26px}.hero-visual{position:relative}.hero-photo{box-shadow:var(--shadow-lg);border:6px solid #fff;border-radius:26px;overflow:hidden}.hero-photo img{aspect-ratio:5/4;object-fit:cover;width:100%}.rating-badge{box-shadow:var(--shadow-lg);color:var(--navy);background:#fff;border-radius:16px;align-items:center;gap:12px;padding:12px 16px;text-decoration:none;display:flex;position:absolute;bottom:-20px;left:-22px}.rating-badge:hover{color:var(--navy);transform:translateY(-1px)}.rating-badge strong{font-family:var(--font-head);font-size:1.7rem;line-height:1}.rating-badge .stars{color:var(--google);gap:1px;display:flex}.rating-badge small{color:var(--muted);font-size:.85rem;display:block}.mascot-badge{filter:drop-shadow(0 8px 14px #13235a33);width:84px;position:absolute;top:-26px;right:-10px}.facts{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:30px;padding:0;list-style:none;display:grid}.facts li{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;align-items:flex-start;gap:10px;padding:12px;display:flex}.facts .icon{color:var(--blue);margin-top:2px}.facts strong{font-family:var(--font-head);color:var(--navy);font-size:.98rem;line-height:1.3;display:block}.facts span{color:var(--muted);font-size:.88rem;line-height:1.35;display:block}@media (width<=900px){.hero-grid{grid-template-columns:1fr;gap:40px}.hero-visual{width:100%;max-width:540px;margin:0 auto}.rating-badge{left:12px}.mascot-badge{right:4px}}@media (width<=560px){.facts{grid-template-columns:1fr}.hero{padding-top:32px}}.offers{background:var(--blue);color:#fff;padding:28px 0}.offers ul{grid-template-columns:repeat(4,1fr);gap:12px 24px;margin:0;padding:0;list-style:none;display:grid}.offers a{color:#fff;font-family:var(--font-head);align-items:center;gap:10px;font-size:1rem;font-weight:600;text-decoration:none;display:flex}.offers a:hover{text-decoration:underline}.tick{width:26px;height:26px;color:var(--blue);background:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}@media (width<=900px){.offers ul{grid-template-columns:repeat(2,1fr)}}@media (width<=420px){.offers ul{grid-template-columns:1fr}}.grid{gap:16px;display:grid}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (width<=960px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (width<=620px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;padding:24px}.card h3{margin-bottom:8px}.card p:last-child{margin-bottom:0}.card-link{color:var(--text);flex-direction:column;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}.card-link:hover{box-shadow:var(--shadow-lg);border-color:var(--tint-2);color:var(--text);transform:translateY(-2px)}.card-link .text-link{color:var(--blue);margin-top:auto;padding-top:12px}.icon-bubble{background:var(--tint);width:52px;height:52px;color:var(--blue);border-radius:14px;justify-content:center;align-items:center;margin-bottom:16px;display:inline-flex}.page-head{background:linear-gradient(180deg, var(--tint) 0%, #fff 100%);padding:36px 0 40px}.page-head h1{max-width:860px;font-size:clamp(1.9rem,4vw,2.7rem)}.page-head .lead{max-width:760px;color:var(--text);margin:0}.breadcrumb{color:var(--muted);flex-wrap:wrap;gap:6px;margin:0 0 14px;padding:0;font-size:.9rem;list-style:none;display:flex}.breadcrumb li+li:before{content:"›";color:var(--muted);margin-right:6px}.breadcrumb a{color:var(--muted)}.page-head .btn-row{margin-top:22px}.treatment-group{scroll-margin-top:calc(var(--header-h) + 16px)}.treatment-group+.treatment-group{margin-top:20px}.treatment-group .tg-head{align-items:center;gap:14px;margin-bottom:12px;display:flex}.treatment-group .tg-head .icon-bubble{margin:0}.treatment-group h2{margin:0;font-size:1.5rem}.treatment-items{grid-template-columns:repeat(2,1fr);gap:12px 28px;margin:0;padding:0;list-style:none;display:grid}.treatment-items li{padding-left:30px;position:relative}.treatment-items li:before{content:"";background:var(--tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b33a0' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center / 12px no-repeat;border-radius:50%;width:18px;height:18px;position:absolute;top:6px;left:0}.treatment-items strong{color:var(--navy);font-family:var(--font-head);font-weight:600;display:block}.treatment-items span{color:var(--muted);font-size:.98rem}@media (width<=700px){.treatment-items{grid-template-columns:1fr}}.jump{flex-wrap:wrap;gap:8px;margin-top:22px;padding:0;list-style:none;display:flex}.jump a{border:1px solid var(--line);color:var(--navy);background:#fff;border-radius:999px;padding:7px 14px;font-size:.93rem;font-weight:600;text-decoration:none;display:inline-block}.jump a:hover{border-color:var(--blue);color:var(--blue)}.split{grid-template-columns:1.15fr .85fr;align-items:start;gap:40px;display:grid}.split.even{grid-template-columns:1fr 1fr}@media (width<=900px){.split,.split.even{grid-template-columns:1fr}}.checklist{margin:0 0 1em;padding:0;list-style:none}.checklist li{gap:10px;margin-bottom:10px;display:flex}.checklist .icon{color:var(--blue);margin-top:4px}.price-tag{background:var(--sun);color:var(--navy);font-family:var(--font-head);border-radius:12px;align-items:baseline;gap:8px;padding:6px 14px;font-weight:700;display:inline-flex}.price-tag strong{font-size:1.9rem;line-height:1}.hours{border-collapse:collapse;width:100%;font-size:1rem}.hours th,.hours td{border-bottom:1px solid var(--line);text-align:left;padding:9px 0}.hours th{color:var(--navy);font-weight:600}.hours td{text-align:right;color:var(--text)}.hours tr.today th,.hours tr.today td{color:var(--blue);font-weight:700}.hours tr:last-child th,.hours tr:last-child td{border-bottom:0}.open-now{align-items:center;gap:8px;min-height:1.5em;margin-bottom:8px;font-size:.95rem;font-weight:600;display:inline-flex}.open-now:before{content:"";background:currentColor;border-radius:50%;width:9px;height:9px}.open-now.is-open{color:var(--ok)}.open-now.is-closed{color:var(--muted)}.open-now:empty{display:none}.contact-list{margin:0;padding:0;list-style:none}.contact-list li{border-bottom:1px solid var(--line);gap:14px;padding:12px 0;display:flex}.contact-list li:last-child{border-bottom:0}.contact-list .icon{color:var(--blue);margin-top:3px}.contact-list strong{font-family:var(--font-head);color:var(--navy);font-weight:600;display:block}.contact-list a{font-weight:600}.map{border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow);background:var(--tint);overflow:hidden}.map iframe{border:0;width:100%;height:360px;display:block}.team-card{align-items:center;gap:16px;display:flex}.avatar{width:64px;height:64px;font-family:var(--font-head);color:#fff;background:var(--blue);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:1.2rem;font-weight:700;display:inline-flex}.avatar.denture{background:var(--navy)}.team-card h3{margin:0 0 2px;font-size:1.08rem}.team-card p{color:var(--muted);margin:0;font-size:.95rem}.rating-line{border:1px solid var(--line);color:var(--navy);box-shadow:var(--shadow);background:#fff;border-radius:999px;flex-wrap:wrap;align-items:center;gap:12px;padding:8px 18px;text-decoration:none;display:inline-flex}.rating-line:hover{color:var(--navy);border-color:var(--blue)}.rating-line strong{font-family:var(--font-head);font-size:1.3rem}.rating-line .stars{color:var(--google);display:inline-flex}.review{flex-direction:column;gap:12px;margin:0;display:flex}.review blockquote{color:var(--text);white-space:pre-line;margin:0}.review blockquote:before{content:"“";color:var(--tint-2);margin-bottom:4px;font-family:Georgia,serif;font-size:3rem;line-height:.6;display:block}.review figcaption{font-family:var(--font-head);color:var(--navy);align-items:center;gap:8px;margin-top:auto;font-weight:600;display:flex}.review figcaption .stars{color:var(--google);display:inline-flex}.reviews-masonry{columns:3 320px;column-gap:16px}.reviews-masonry .review{break-inside:avoid;margin-bottom:16px}.faq{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-family:var(--font-head);color:var(--navy);padding:18px 40px 18px 0;font-size:1.05rem;font-weight:600;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--blue);font-size:1.5rem;font-weight:400;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.faq details[open] summary:after{content:"–"}.faq details p{color:var(--text);max-width:760px;margin:0 0 18px}.note{background:var(--tint);border-radius:var(--radius-sm);color:var(--navy);gap:12px;padding:16px 18px;display:flex}.note .icon{color:var(--blue);margin-top:3px}.note p{margin:0}.note-warn{background:#fff6dc}.note-warn .icon{color:#a46a00}.cta-band{background:linear-gradient(135deg, var(--blue) 0%, var(--blue-dark) 100%);color:#fff;padding:52px 0}.cta-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:28px;display:flex}.cta-band h2{color:#fff;margin-bottom:6px}.cta-band p{color:#dfe6ff;margin:0;font-size:1.1rem}.cta-mascot{align-items:center;gap:22px;display:flex}.cta-mascot img{flex:none;width:72px}@media (width<=620px){.cta-mascot img{display:none}}.form{gap:16px;display:grid}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=620px){.form-row{grid-template-columns:1fr}}.field label,.field legend{color:var(--navy);margin-bottom:6px;font-size:.97rem;font-weight:600;display:block}.field .hint{color:var(--muted);font-size:.88rem;font-weight:400}.field input,.field select,.field textarea{width:100%;font:inherit;color:var(--text);background:#fff;border:1.5px solid #c6cfe4;border-radius:10px;padding:11px 13px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue);outline-offset:0;outline:3px solid #0b33a026}.field textarea{resize:vertical;min-height:120px}fieldset.field{border:0;margin:0;padding:0}.radios{flex-wrap:wrap;gap:10px;display:flex}.radios label{cursor:pointer;border:1.5px solid #c6cfe4;border-radius:999px;align-items:center;gap:8px;margin:0;padding:8px 14px;font-weight:500;display:inline-flex}.radios input{width:auto;accent-color:var(--blue)}.trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-status{color:var(--ok);font-weight:600}.form-status:empty{display:none}.site-footer{background:var(--navy);color:#c9d2ef;padding:52px 0 28px;font-size:.97rem}.site-footer a{color:#fff}.footer-grid{grid-template-columns:1.3fr 1fr 1fr;gap:36px;display:grid}.footer-brand{align-items:center;gap:12px;margin-bottom:14px;display:flex}.footer-brand img{background:#fff;border-radius:14px;width:52px;padding:4px}.footer-brand strong{font-family:var(--font-head);color:#fff;font-size:1.1rem;line-height:1.25}.site-footer h2{color:#fff;letter-spacing:.06em;text-transform:uppercase;margin-bottom:14px;font-size:1rem}.footer-links{columns:2;column-gap:18px;margin:0;padding:0;list-style:none}.footer-links li{break-inside:avoid;margin-bottom:8px}.footer-links a{color:#c9d2ef;text-decoration:none}.footer-links a:hover{color:#fff;text-decoration:underline}.footer-hours{border-collapse:collapse;width:100%}.footer-hours th,.footer-hours td{text-align:left;padding:3px 0;font-weight:400}.footer-hours td{text-align:right;color:#fff}.footer-bottom{border-top:1px solid #ffffff24;flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:36px;padding-top:20px;font-size:.88rem;display:flex}.social{align-items:center;gap:8px;text-decoration:none;display:inline-flex}@media (width<=900px){.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>:first-child{grid-column:1/-1}}@media (width<=560px){.footer-grid{grid-template-columns:1fr}}.mobile-bar{display:none}@media (width<=860px){.mobile-bar{z-index:60;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fffffff7;grid-template-columns:1fr 1fr;gap:10px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 18px #13235a14}.mobile-bar .btn{padding:12px 10px}body{padding-bottom:76px}}.prose{max-width:760px}.prose h2{margin-top:1.6em;font-size:1.4rem}@media (width<=900px){.book-aside{order:-1}}.nav .nav-extra .btn{border-bottom-width:2px;border-radius:999px;padding:11px 14px;font-size:1rem}.nav .nav-extra .btn-primary{color:#fff}.nav .nav-extra .btn-primary:hover{background:var(--blue-dark);color:#fff}.nav .nav-extra .btn-outline{color:var(--blue)}
