.mobile-drill-nav:not([hidden]){position:fixed!important;inset:0!important;width:100%;height:100dvh;max-height:none!important;padding:0!important;overflow:hidden!important;z-index:90;background:var(--navy);color:white;border:0!important}
.mobile-menu-top{position:absolute;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;height:76px;padding:14px 22px;border-bottom:1px solid #ffffff20;background:var(--navy);z-index:3}
.mobile-menu-top>a{display:flex;align-items:center}
.mobile-menu-top img{width:205px;height:44px;object-fit:contain;object-position:left center}
.mobile-menu-close{border:1px solid #ffffff30;background:transparent;color:white;border-radius:8px;display:grid;place-items:center;width:42px;height:42px;flex:none;padding:0}
.mobile-menu-close .icon{width:21px;height:21px}
.mobile-menu-root,.mobile-menu-detail{position:absolute;inset:76px 0 0;overflow-y:auto;overscroll-behavior:contain;padding:22px 22px calc(30px + env(safe-area-inset-bottom));background:var(--navy);transition:transform .3s cubic-bezier(.22,1,.36,1),opacity .25s;scrollbar-width:thin}
.mobile-menu-root{transform:translateX(0);opacity:1}
.has-detail .mobile-menu-root{transform:translateX(-18%);opacity:0}
.mobile-menu-detail{transform:translateX(100%);opacity:0;pointer-events:none;padding-top:0}
.mobile-menu-detail.is-active{transform:translateX(0);opacity:1;pointer-events:auto}
.mobile-menu-detail-head{position:sticky;top:0;z-index:2;padding:16px 0 18px;margin:0;background:var(--navy);border-bottom:1px solid #ffffff2b}
.mobile-menu-back{display:flex;align-items:center;gap:8px;min-height:44px;padding:7px 11px;margin:0 0 13px;font:inherit;font-size:.8125rem;color:#b5d5f2;background:#ffffff08;border:1px solid #ffffff25;border-radius:7px}
.mobile-menu-back .icon{width:16px;height:16px;transform:rotate(180deg)}
.mobile-menu-detail h2{font-size:1.8rem;line-height:1.3;letter-spacing:-.035em;font-weight:400;margin:0;color:white}
.mobile-menu-detail h2:focus{outline:none}
.mobile-menu-detail-content>a{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:56px;padding:16px 0;border-bottom:1px solid #ffffff20;font-size:1rem;line-height:1.5;color:#f1f6fc}
.mobile-menu-detail-content>a>.icon{width:18px;height:18px;flex:none;color:#9dc5e9}
.mobile-menu-detail-content>p{color:#8db4d7;text-transform:uppercase;font-size:.6875rem;letter-spacing:.08em;font-weight:600;line-height:1.6;margin:27px 0 7px}
.mobile-menu-detail-content>.mobile-treatment-overview{color:#b5d9f7;font-size:.9375rem}
.mobile-menu-detail-content>.mobile-treatment-price{background:var(--blue);color:#fff;padding:14px 17px;border:0;border-radius:8px;margin-top:24px;font-weight:600}
.mobile-drill-trigger{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;background:none;border:0;border-bottom:1px solid #ffffff20;color:#f1f6fc;min-height:55px;padding:13px 0;font:inherit;text-align:left;font-size:1rem;line-height:1.5}
.mobile-drill-trigger>.icon{width:16px;height:16px;flex:none;transform:rotate(-90deg);color:#91b6d7}
.mobile-menu-root .mobile-nav-group{margin-top:28px}
.mobile-menu-root .mobile-nav-group h2{font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:#8db4d7;margin-bottom:7px}
.mobile-menu-root .mobile-nav-group>a{font-size:1rem;min-height:55px;padding:13px 0}
.mobile-menu-booking{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 19px;border-radius:10px;background:var(--blue);color:white;font-size:1.0625rem;font-weight:700;line-height:1.5}
.mobile-menu-booking small{display:block;font-size:.6875rem;line-height:1.6;font-weight:400;color:#d9eaff;margin-top:3px}
.mobile-menu-booking>.icon{width:21px;height:21px;flex:none}
.mobile-drill-nav .mobile-menu-root .mobile-menu-price{display:flex;justify-content:space-between;align-items:center;border:1px solid #ffffff30;border-radius:8px;background:#ffffff07;color:#e3effb;padding:12px 17px;min-height:49px;font-size:.9375rem;font-weight:500;max-width:none;margin-top:10px}
.mobile-drill-nav .mobile-menu-root .mobile-menu-price .icon{width:18px;height:18px}
.menu-open .dentist-launcher,.menu-open .floating-contact,.menu-open .mobile-contact-bar,.menu-open .pricing-sticky{visibility:hidden}
.mobile-drill-nav a:focus-visible,.mobile-drill-nav button:focus-visible{outline:2px solid #a3d0fb;outline-offset:3px}
@media(max-width:370px){.mobile-menu-top{padding-inline:18px}.mobile-menu-top img{width:185px}.mobile-menu-root,.mobile-menu-detail{padding-inline:19px}.mobile-menu-detail h2{font-size:1.65rem}}
@media(min-width:1181px){body:not(.text-enlarged) .mobile-drill-nav{display:none!important}}
.text-enlarged .mobile-drill-nav:not([hidden]){position:fixed!important;inset:0!important;max-height:none!important;padding:0!important}
.text-enlarged .mobile-menu-root,.text-enlarged .mobile-menu-detail{inset-block-start:80px}
@media(prefers-reduced-motion:reduce){.mobile-menu-root,.mobile-menu-detail{transition:none}}
.mobile-drill-nav .mobile-menu-booking{padding:17px 19px;min-height:74px;border:0;display:flex}
.mobile-drill-nav .mobile-menu-top>a{padding:0;min-height:0;border:0}

/* Light navigation surface; the brand strip keeps its navy identity. */
.mobile-drill-nav:not([hidden]),.text-enlarged .mobile-drill-nav:not([hidden]){background:#f6f9fc;color:var(--navy)}
.mobile-menu-root,.mobile-menu-detail,.mobile-menu-detail-head{background:#f6f9fc;color:var(--navy)}
.mobile-menu-detail-head{border-color:#d4e1eb}
.mobile-menu-detail h2{color:var(--navy)}
.mobile-menu-back{color:#315c7e;background:white;border-color:#c6d9e9}
.mobile-menu-root .mobile-nav-group h2,.mobile-menu-detail-content>p{color:#4e7190;font-weight:600}
.mobile-drill-trigger,.mobile-menu-detail-content>a,.mobile-menu-root .mobile-nav-group>a{color:var(--navy);border-color:#d5e2ed}
.mobile-drill-trigger>.icon,.mobile-menu-detail-content>a>.icon{color:#567e9e}
.mobile-menu-detail-content>.mobile-treatment-overview{color:var(--blue)}
.mobile-menu-detail-content>.mobile-treatment-price{color:white}
.mobile-drill-nav .mobile-menu-root .mobile-menu-price{background:white;border-color:#c7d9e7;color:var(--navy)}
.mobile-drill-nav .mobile-menu-booking{color:white;box-shadow:0 7px 20px #1263da16}
.mobile-menu-root .mobile-menu-contact{color:var(--navy)}
.mobile-drill-nav a:focus-visible,.mobile-drill-nav button:focus-visible{outline-color:#1263da}
.mobile-menu-top a:focus-visible,.mobile-menu-top button:focus-visible{outline-color:#a3d0fb}
@media(hover:hover){.mobile-drill-trigger:hover,.mobile-menu-detail-content>a:hover,.mobile-menu-root .mobile-nav-group>a:hover{color:var(--blue);background:#eaf2fa}}

.mobile-drill-nav .mobile-menu-contact-action{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;margin-top:10px;min-height:54px;padding:14px 18px;border:1px solid #b6cfe3;border-radius:9px;background:white;color:var(--navy);font:inherit;font-size:1rem;font-weight:600;text-align:left}
.mobile-menu-contact-action .icon{width:20px;height:20px}
.mobile-drill-nav .mobile-menu-root .mobile-menu-price{border:0;border-radius:0;background:transparent;padding:10px 4px;min-height:44px;margin-top:6px;color:#4c6b83;font-size:.875rem}
.mobile-drill-nav .mobile-menu-contact-action:hover{border-color:#4e95d0;background:#edf5fc}
