:where(a, button, .wp-element-button):focus-visible{outline:3px solid var(--wp--preset--color--coral);outline-offset:3px;border-radius:6px}
.wp-element-button{min-height:3rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;transition:background-color .15s}
.is-style-outline>.wp-element-button{background:transparent;color:var(--wp--preset--color--ink);border:2px solid var(--wp--preset--color--ink)}
.is-style-outline>.wp-element-button:hover{background:var(--wp--preset--color--ink);color:#fff}
.has-coral-background-color.wp-element-button:hover{background:#D9583A!important}
header.wp-block-template-part{position:sticky;top:0;z-index:50}
body.admin-bar header.wp-block-template-part{top:32px}
@media (max-width:782px){body.admin-bar header.wp-block-template-part{top:46px}}
.nc-topbar p{margin:0}
.nc-topbar a{color:#fff;font-weight:700}
.nc-mainbar{border-bottom:1px solid rgba(20,33,61,.12)}
.nc-mainbar .wp-block-navigation{font-size:1.0625rem;font-weight:700}
.nc-mainbar .wp-block-navigation__submenu-container{border:1px solid rgba(20,33,61,.15)!important;border-radius:10px;padding:.4rem 0;min-width:15rem!important}
.nc-mainbar .wp-block-navigation-item__content{padding:.35rem .9rem;min-height:44px;display:flex;align-items:center}
.nc-card{background:#fff;border:1px solid rgba(20,33,61,.12);border-radius:16px}
.nc-hero h1{max-width:16ch}
.nc-lead{font-size:1.375rem;line-height:1.5;max-width:34ch}
.nc-price-table table{border-collapse:collapse;width:100%}
.nc-price-table td{border:0;border-top:1px solid rgba(20,33,61,.12);padding:.75rem 0;vertical-align:top}
.nc-price-table td:last-child{text-align:right;font-family:var(--wp--preset--font-family--heading);font-weight:600;font-size:1.5rem;white-space:nowrap;padding-left:1rem}
.nc-tasks .wp-block-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:.75rem}
.nc-tasks .wp-block-button{width:100%}
.nc-tasks .wp-block-button__link{width:100%;justify-content:space-between;padding:1.35rem 1.5rem;font-size:1.25rem;background:#fff;color:var(--wp--preset--color--ink);border:2px solid var(--wp--preset--color--ink);border-radius:14px;text-align:left}
.nc-tasks .wp-block-button__link::after{content:"\2192";font-size:1.5rem;line-height:1}
.nc-tasks .wp-block-button__link:hover{background:var(--wp--preset--color--ink);color:#fff}
.nc-tasks .nc-task-urgent .wp-block-button__link{background:var(--wp--preset--color--coral);border-color:var(--wp--preset--color--coral)}
.nc-tasks .nc-task-urgent .wp-block-button__link:hover{background:#D9583A;color:var(--wp--preset--color--ink)}
.nc-service h3 a{text-decoration:none;color:inherit}
.nc-service h3 a::after{content:"";position:absolute;inset:0}
.nc-service{position:relative;transition:border-color .15s}
.nc-service:hover{border-color:var(--wp--preset--color--teal)}
.nc-initials{width:4.5rem;height:4.5rem;border-radius:50%;display:flex!important;align-items:center;justify-content:center;font-family:var(--wp--preset--font-family--heading);font-weight:600;font-size:1.375rem;margin:0}
.nc-quote{border-left:4px solid var(--wp--preset--color--coral)!important;margin:0;padding-left:1.25rem!important}
.nc-quote p{font-size:1.25rem;line-height:1.55}
.nc-langs{font-size:1.375rem;font-weight:700}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.nc-areas{column-count:2;column-gap:1.5rem}
.wp-site-blocks>*+*{margin-block-start:0}
.nc-tasks .wp-block-button{display:flex}
.nc-tasks .wp-block-button__link{height:100%;border-radius:18px}
.nc-hero-photo{margin:0}
.nc-hero-photo img{width:100%;object-position:50% 0;border-radius:50% 50% 20px 20px / 22% 22% 20px 20px}
.nc-wordmark{font-family:var(--wp--preset--font-family--heading);font-weight:600;font-size:1.625rem;line-height:1;color:var(--wp--preset--color--ink);text-decoration:none;white-space:nowrap;letter-spacing:-0.01em}
.nc-wordmark:hover{color:var(--wp--preset--color--teal)}
.nc-wm-arrow{display:inline-block;height:0.74em;width:0.62em;margin:0 0.03em 0 0.01em;vertical-align:-0.01em}
.nc-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nc-pills{gap:.5rem!important}
.nc-pill{background:#fff;border-radius:999px;padding:.4rem 1rem;font-weight:700;font-size:1rem;line-height:1.3;margin:0!important}
.nc-card{border-radius:24px}
.nc-service{border-top:4px solid var(--wp--preset--color--teal)}
.nc-hero,.nc-wave-b,.nc-wave-t{position:relative}
.nc-hero::after,.nc-wave-b::after,.nc-wave-t::before{content:"";position:absolute;left:0;right:0;height:40px;background-repeat:no-repeat;background-size:100% 100%;pointer-events:none;z-index:1}
.nc-hero::after,.nc-wave-b::after{bottom:-39px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1440V12C1200 44 960 44 720 24S240 0 0 28Z' fill='%239FD3CD'/%3E%3C/svg%3E")}
.nc-wave-t::before{top:-39px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0 40H1440V28C1200 -4 960 -4 720 16S240 40 0 12Z' fill='%239FD3CD'/%3E%3C/svg%3E")}
.has-mist-background-color a:not(.wp-element-button){color:var(--wp--preset--color--ink)}
.has-mist-background-color a:not(.wp-element-button):hover{color:#000}
.nc-hero-video{position:relative;margin:0}
.nc-hero-video video{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 0;border-radius:50% 50% 20px 20px / 22% 22% 20px 20px;background:#9FD3CD}
.nc-photo-arch img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:50% 50% 20px 20px / 22% 22% 20px 20px;display:block}
.nc-photo-arch{margin:0 0 1rem}
.nc-hero-video video{height:auto}
img,video{max-width:100%}
.nc-service:has(a[href*="emergency-dental-care"]),.nc-service-urgent{background:var(--wp--preset--color--coral);border-color:var(--wp--preset--color--coral)!important}
.nc-service:has(a[href*="emergency-dental-care"]) :is(h3,h3 a,p),.nc-service-urgent h3,.nc-service-urgent h3 a,.nc-service-urgent p{color:var(--wp--preset--color--ink)}
.nc-service:has(a[href*="emergency-dental-care"]):is(:hover,:focus-within),.nc-service-urgent:hover,.nc-service-urgent:focus-within{box-shadow:0 0 0 3px var(--wp--preset--color--ink)}
footer.wp-block-template-part a{display:inline-flex;align-items:center;min-height:44px}
@media (max-width:600px){
.nc-topbar p:first-child{display:none}
.nc-topbar .wp-block-group{justify-content:center!important}
.nc-topbar a{font-size:1.125rem}
.nc-wordmark{font-size:1.3rem}
.nc-mainbar .wp-block-buttons .wp-element-button{padding:.55rem 1rem;font-size:1rem;min-height:44px}
.nc-hero h1{max-width:none}
.nc-lead{font-size:1.2rem}
.nc-hero::after,.nc-wave-b::after{height:24px;bottom:-23px}
.nc-wave-t::before{height:24px;top:-23px}
.nc-pill{font-size:.95rem}
}
/* v0.2.3: tap targets >=44px, header fit on small phones */
.nc-topbar a{display:inline-flex;align-items:center;min-height:44px}
.nc-topbar{padding-top:0!important;padding-bottom:0!important}
.nc-mainbar .wp-block-buttons .wp-element-button{white-space:nowrap}
.wp-block-navigation__responsive-container-open,.wp-block-navigation__responsive-container-close{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{min-height:44px;display:flex;align-items:center}
main h3 a{display:inline-block;padding:.625rem 0}
.nc-wordmark{display:inline-block;padding:.875rem 0}
.nc-more a{display:inline-flex;align-items:center;min-height:44px}
@media (max-width:400px){
.nc-mainbar>.wp-block-group,.nc-mainbar>.wp-block-group>.wp-block-group{gap:.5rem}
.nc-wordmark{font-size:1.05rem}
.nc-mainbar .wp-block-buttons .wp-element-button{padding:.5rem .7rem;font-size:.9375rem}
}
@media (max-width:340px){
.nc-wordmark{font-size:.95rem}
.nc-mainbar .wp-block-buttons .wp-element-button{padding:.45rem .6rem;font-size:.875rem}
}
/* v0.2.5: landing page parts */
.nc-checklist{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:.6rem 2rem}
.nc-checklist li{position:relative;padding-left:1.9rem}
.nc-checklist li::before{content:"";position:absolute;left:0;top:.4em;width:.9rem;height:.9rem;border-radius:50%;background:var(--wp--preset--color--coral)}
.nc-links{padding-left:1.25rem}
.nc-links a{display:inline-flex;align-items:center;min-height:44px}
.nc-callout{border:0!important;border-left:8px solid var(--wp--preset--color--coral)!important}
.has-ink-background-color a:not(.wp-element-button){color:#fff}
.nc-faq h3{margin-top:var(--wp--preset--spacing--40)}
.nc-faq p{max-width:65ch}
/* v0.2.6 */
a[href^="tel:"]{white-space:nowrap}
.nc-team-section .is-layout-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.nc-team h3{margin:.75rem 0 0}
.nc-team p{margin:.25rem 0 0}
.nc-team .nc-photo-arch{margin:0}
.nc-gallery .is-layout-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.nc-gallery figure{margin:0}
.nc-gallery img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:20px;display:block}
@media (max-width:600px){
.nc-team-section .is-layout-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.75rem}
.nc-team h3{font-size:1.125rem}
.nc-team p{font-size:.95rem;line-height:1.35}
.nc-gallery .is-layout-grid{grid-template-columns:1fr!important}
}
/* v0.2.7: tablet uses the menu button; plain submenus inside the open menu */
@media (min-width:600px) and (max-width:1099px){
.nc-mainbar .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex}
.nc-mainbar .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:none}
.nc-mainbar .wp-block-navigation__responsive-container-close:not(.always-shown){display:flex}
}
.nc-mainbar .is-menu-open .wp-block-navigation__submenu-container{border:0!important;padding:0!important;min-width:0!important}
/* v0.2.8: richer Services dropdown */
@media (min-width:1100px){
.nc-mainbar .wp-block-navigation__submenu-container{padding:.5rem!important;border:0!important;border-top:4px solid var(--wp--preset--color--teal)!important;border-radius:18px!important;box-shadow:0 18px 40px rgba(20,33,61,.18),0 2px 6px rgba(20,33,61,.08);min-width:17rem!important}
.nc-mainbar .wp-block-navigation__submenu-container .wp-block-navigation-item{width:100%}
.nc-mainbar .wp-block-navigation__submenu-container .wp-block-navigation-item__content{width:100%;border-radius:12px;padding:.6rem .75rem!important;font-weight:700;transition:background-color .15s}
.nc-mainbar .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,.nc-mainbar .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus-visible{background:#E8F5F3;color:var(--wp--preset--color--ink)}
.nc-mainbar .wp-block-navigation__submenu-container:has(.wp-block-navigation-item__description){min-width:24rem!important}
.nc-mainbar .wp-block-navigation-item__content:has(.wp-block-navigation-item__description){display:grid!important;grid-template-columns:2.5rem 1fr;column-gap:.85rem;row-gap:.1rem;align-items:center}
.nc-mainbar .wp-block-navigation-item__content:has(.wp-block-navigation-item__description)::before{content:"";grid-row:1/span 2;grid-column:1;width:2.5rem;height:2.5rem;border-radius:12px;background:#9FD3CD url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h13M13 6l6 6-6 6' fill='none' stroke='%2314213D' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.nc-mainbar .wp-block-navigation-item__content:has(.wp-block-navigation-item__description) .wp-block-navigation-item__label{grid-column:2;grid-row:1}
.nc-mainbar .wp-block-navigation-item__description{display:block!important;grid-column:2;grid-row:2;font-weight:400;font-size:.9rem;line-height:1.3;color:#4A5568}
.nc-mainbar .nc-nav-urgent>.wp-block-navigation-item__content::before{background-color:#E76F51}
.nc-mainbar .nc-nav-all{border-top:1px solid rgba(20,33,61,.12);margin-top:.35rem;padding-top:.35rem}
.nc-mainbar .nc-nav-all>.wp-block-navigation-item__content{color:var(--wp--preset--color--teal)}
.nc-mainbar .nc-nav-all .wp-block-navigation-item__label::after{content:" \2192"}
}
.nc-mainbar .is-menu-open .wp-block-navigation-item__description{display:none}
/* v0.2.9: open (mobile/tablet) menu */
.nc-mainbar .is-menu-open{background:#fff!important;padding:1rem 1.25rem 2rem!important}
.nc-mainbar .is-menu-open .wp-block-navigation__responsive-container-content{align-items:stretch!important;padding-top:3rem!important;max-width:34rem;margin:0 auto}
.nc-mainbar .is-menu-open .wp-block-navigation__container{align-items:stretch!important;gap:0!important;width:100%}
.nc-mainbar .is-menu-open .wp-block-navigation__container>.wp-block-navigation-item{width:100%;align-items:stretch!important;border-bottom:1px solid rgba(20,33,61,.12);padding:.35rem 0}
.nc-mainbar .is-menu-open .wp-block-navigation__container>.wp-block-navigation-item>.wp-block-navigation-item__content{font-family:var(--wp--preset--font-family--heading);font-weight:600;font-size:1.25rem;justify-content:flex-start;text-align:left;padding:.4rem 0!important}
.nc-mainbar .is-menu-open .wp-block-navigation__submenu-container{width:100%;gap:.15rem!important;padding:.25rem 0 .5rem!important;align-items:stretch!important}
.nc-mainbar .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item{width:100%;align-items:stretch!important}
.nc-mainbar .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content{font-size:1.0625rem;font-weight:700;text-align:left;justify-content:flex-start;padding:.45rem .6rem!important;border-radius:12px;width:100%;box-sizing:border-box}
.nc-mainbar .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content:active{background:#E8F5F3}
.nc-mainbar .is-menu-open .wp-block-navigation-item__content:has(.wp-block-navigation-item__description){display:grid!important;grid-template-columns:2.25rem 1fr;column-gap:.75rem;align-items:center}
.nc-mainbar .is-menu-open .wp-block-navigation-item__content:has(.wp-block-navigation-item__description)::before{content:"";grid-row:1/span 2;grid-column:1;width:2.25rem;height:2.25rem;border-radius:10px;background:#9FD3CD url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h13M13 6l6 6-6 6' fill='none' stroke='%2314213D' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/15px no-repeat}
.nc-mainbar .is-menu-open .nc-nav-urgent>.wp-block-navigation-item__content::before{background-color:#E76F51}
.nc-mainbar .is-menu-open .wp-block-navigation-item__content:has(.wp-block-navigation-item__description) .wp-block-navigation-item__label{grid-column:2;grid-row:1}
.nc-mainbar .is-menu-open .wp-block-navigation-item__description{display:block!important;grid-column:2;grid-row:2;font-weight:400;font-size:.9rem;line-height:1.3;color:#4A5568}
.nc-mainbar .is-menu-open .nc-nav-all>.wp-block-navigation-item__content{color:var(--wp--preset--color--teal)}
.nc-mainbar .is-menu-open .nc-nav-all .wp-block-navigation-item__label::after{content:" \2192"}
.nc-mainbar .is-menu-open .wp-block-navigation__responsive-container-close{top:1rem;right:1.25rem}
.nc-mainbar .is-menu-open .wp-block-navigation__submenu-container:not(:has(.wp-block-navigation-item__description)){display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:.5rem!important;padding:.35rem 0 .75rem!important;box-sizing:border-box}
.nc-mainbar .is-menu-open .wp-block-navigation__submenu-container:not(:has(.wp-block-navigation-item__description))>.wp-block-navigation-item{width:calc(50% - .25rem)!important;min-width:0}
.nc-mainbar .is-menu-open .wp-block-navigation__submenu-container:not(:has(.wp-block-navigation-item__description)) .wp-block-navigation-item__content{background:#EEF7F6;padding:.6rem .75rem!important;font-size:1rem;line-height:1.25}
.nc-mainbar .nc-nav-call{display:none!important}
@media (max-width:1099px){
.nc-mainbar .is-menu-open .nc-nav-call{display:flex!important;border-bottom:0!important;padding-top:1rem!important}
.nc-mainbar .is-menu-open .nc-nav-call>.wp-block-navigation-item__content{justify-content:center!important;background:#E76F51;color:#14213D!important;border-radius:999px;padding:.85rem 1.25rem!important;font-family:var(--wp--preset--font-family--body)!important;font-weight:700!important;font-size:1.125rem!important}
}
/* v0.3.0 */
.nc-service-urgent a:not(.wp-element-button),.nc-service:has(a[href*="emergency-dental-care"]) a{color:var(--wp--preset--color--ink)}
