/*
Theme Name: Dental Care East & West 2026
Author: MonkeyMarketing
Version: 2.1.0
Text Domain: dcew-2026
Requires PHP: 8.2
*/
:root{--ink:#153f43;--body:#294546;--muted:#486365;--mint:#a5d5cb;--pale:#e6f1ec;--paper:#f8faf7;--white:#fff;--line:#c9d9d1;--accent:#196879;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--body);font:17px/1.7 var(--sans);-webkit-font-smoothing:antialiased}img,svg{display:block;max-width:100%;height:auto}figure{margin:0}a{color:var(--ink);text-underline-offset:5px;text-decoration-thickness:1px}a:hover{color:var(--accent)}a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--accent);outline-offset:5px}button,input,summary{font:inherit}a,summary{-webkit-tap-highlight-color:transparent}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink);font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.035em;line-height:1.13}h1{font-size:58px;margin-bottom:24px}h2{font-size:39px;margin-bottom:24px}h3{font:26px/1.25 var(--serif);letter-spacing:-.02em;margin-bottom:16px}em{font-weight:400}p{margin-bottom:22px}p:last-child{margin-bottom:0}ul,ol{padding-left:24px;margin:0 0 26px}li{margin-bottom:9px}address{font-style:normal}hr{border:0;border-top:1px solid var(--line);margin:28px 0}.wrap{width:calc(100% - 96px);max-width:1168px;margin-inline:auto}.section{padding-block:78px}.eyebrow{font:600 12px/1.5 var(--sans);letter-spacing:1.15px;text-transform:uppercase;margin-bottom:18px;color:var(--ink)}.lead{font-size:20px;line-height:1.65;max-width:760px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:20px;top:-100px;background:var(--ink);color:white;padding:14px 20px;z-index:1000}.skip-link:focus{top:12px;color:white}.arrow{font-family:var(--sans);font-size:22px;line-height:1}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:52px;padding:15px 22px;background:var(--ink);border:1px solid var(--ink);border-radius:4px;color:white;text-decoration:none;font-size:15px;font-weight:600;line-height:1.4}.button:hover,.button:focus-visible{background:#205b60;color:white}.button-outline{background:transparent;color:var(--ink)}.button-outline:hover{background:var(--ink);color:white}.button-light{background:white;color:var(--ink);border-color:white}.button-light:hover{background:var(--pale);color:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:18px;min-height:44px;padding:8px 0;border-bottom:1px solid #779d95;text-decoration:none;font-size:15px;font-weight:600;line-height:1.5}.actions,.inline-links{display:flex;align-items:center;flex-wrap:wrap;gap:14px 26px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:36px}.section-heading>div:first-child{max-width:680px}.section-heading>p,.section-heading>div:last-child:not(:first-child){max-width:370px}.section-heading h2{margin-bottom:0}.section-heading>.text-link{flex-shrink:0}.section-heading p:last-child{margin-bottom:0}
.utility-bar{background:var(--ink);color:#fff;font-size:13px}.utility-bar>.wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:34px}.utility-bar a{color:white;text-decoration:none;display:inline-flex;align-items:center;min-height:34px}.utility-bar a:hover{text-decoration:underline}.utility-bar .utility-links{display:flex;gap:30px}.site-header{background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:40}.header-inner{min-height:96px;display:flex;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}.brand-mark{width:43px;flex-shrink:0}.brand-name{font:29px/1.05 var(--serif);letter-spacing:-1px}.brand-small{display:block;font:10px/1.4 var(--sans);letter-spacing:2px;text-transform:uppercase;margin-bottom:6px}.brand:focus-visible{outline-offset:9px}.wide-nav{display:flex;align-items:center;gap:25px;margin-left:auto;font-size:15px}.wide-nav>a{text-decoration:none;min-height:48px;display:flex;align-items:center}.nav-group>summary{display:flex;align-items:center;gap:7px;cursor:pointer;list-style:none;min-height:48px;font-weight:600}.nav-group>summary::-webkit-details-marker,.mobile-menu>summary::-webkit-details-marker{display:none}.nav-group[open]>summary{color:var(--accent)}.nav-group{position:relative}.nav-dropdown{position:absolute;top:100%;left:-20px;min-width:260px;background:white;border:1px solid var(--line);padding:14px;box-shadow:0 12px 28px #00000012}.nav-dropdown a{display:block;padding:11px 12px;text-decoration:none;line-height:1.5}.nav-dropdown a:hover,.nav-dropdown [aria-current=page]{background:var(--pale)}.header-cta{margin-left:10px;white-space:nowrap}.mobile-menu{display:none}.mobile-actions{display:none}.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding-block:22px;font-size:14px;color:var(--muted)}.breadcrumbs a{color:inherit;text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs [aria-current]{max-width:100%}.page-intro{background:var(--pale);padding-block:54px 58px}.page-intro h1{max-width:970px;overflow-wrap:break-word;hyphens:none}.page-intro .lead{margin-bottom:0}.page-intro .actions{margin-top:28px}.page-intro .eyebrow{margin-bottom:16px}.page-intro .page-kicker{font-size:15px;margin:20px 0 0}
.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 282px;gap:72px;align-items:start;padding-block:58px 72px}.reading-copy{min-width:0;max-width:750px}.reading-copy>h2{font-size:32px;margin-top:44px}.reading-copy>h2:first-child{margin-top:0}.reading-copy>h3{margin-top:32px}.reading-copy p,.reading-copy li{max-width:72ch}.reading-copy .actions{margin-block:28px}.reading-copy .info-note{margin:28px 0}.help-aside{padding:28px;background:var(--pale);border-top:3px solid #719f93;font-size:15px;line-height:1.7}.help-aside h2{font-size:29px;line-height:1.2;margin-bottom:18px}.help-aside .aside-phone{font:27px/1.4 var(--serif);text-decoration:none;display:block;margin-block:20px 10px;white-space:nowrap}.help-aside>a[href^=mailto]{display:inline-flex;align-items:center;min-height:44px;font-size:15px}.help-aside .text-link{display:flex;justify-content:space-between;font-size:14px}.help-aside .aside-hours{font-size:14px;margin-top:24px}.info-note{padding:22px 24px;border-left:3px solid #719f93;background:var(--pale);font-size:16px}.info-note p{margin-bottom:12px}.info-note p:last-child{margin-bottom:0}.small-note,.small-text{font-size:14px;line-height:1.75;color:var(--muted)}.related{border-top:1px solid var(--line);padding-block:44px 58px}.related h2{font-size:29px}.related-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.related-links a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:80px;padding:18px 22px;border:1px solid var(--line);background:white;text-decoration:none;font-size:17px}.related-links a:hover{border-color:#719f93;background:var(--pale)}
.home-hero{background:var(--mint);padding-block:56px}.hero-grid{display:grid;grid-template-columns:1fr 1.06fr;gap:62px;align-items:center}.hero-copy h1{font-size:57px;max-width:560px}.hero-copy h1 em{display:block}.hero-lead{font-size:19px;line-height:1.7;max-width:480px;margin-bottom:28px}.hero-photo img{width:100%;height:360px;object-fit:cover;object-position:62% center;border-radius:0 0 0 56px}.hero-hours{margin-top:22px;font-size:15px}.hero-contact{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:8px}.hero-contact a{font-size:15px}.hero-contact a:first-child{font-weight:600}.home-proof{display:flex;align-items:center;gap:15px;margin-top:28px;padding-top:22px;border-top:1px solid #79afa2;max-width:360px;text-decoration:none}.home-proof img{width:52px;height:68px;object-fit:contain;object-position:bottom;background:#dbeee5;border-radius:0 0 15px 0}.home-proof strong{display:block;font:22px/1.3 var(--serif)}.home-proof span{font-size:14px}.home-proof .arrow{margin-left:auto}.patient-routes{background:white;border-bottom:1px solid var(--line)}.patient-routes .wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.patient-routes a{display:grid;grid-template-columns:minmax(0,1fr) 22px;gap:7px 15px;padding:27px 28px;text-decoration:none;border-right:1px solid var(--line)}.patient-routes a:first-child{padding-left:0}.patient-routes a:last-child{border:0;padding-right:0}.patient-routes strong{font:25px/1.3 var(--serif)}.patient-routes p{grid-column:1;font-size:15px;line-height:1.5;margin:0}.patient-routes .arrow{grid-column:2;grid-row:1/3;align-self:center}.patient-routes a:hover strong{text-decoration:underline}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.care-card{display:flex;flex-direction:column;align-items:flex-start;padding:28px;background:white;border:1px solid var(--line);text-decoration:none;min-width:0}.care-card h2,.care-card h3{font:28px/1.25 var(--serif);margin:0 0 18px}.care-card p{font-size:16px;line-height:1.7;flex:1;margin-bottom:25px}.care-card>.arrow{margin-top:auto}.care-card:hover{border-color:#719f93;background:var(--pale)}.care-card small{font-size:13px;letter-spacing:.5px;margin-bottom:14px}.team-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.team-preview-person{display:grid;grid-template-columns:minmax(0,1fr) 22px;gap:18px;text-decoration:none}.team-preview-person img{grid-column:1/-1;width:100%;height:270px;background:var(--pale);object-fit:contain;object-position:bottom;border-radius:0 0 36px 0}.team-preview-person strong{display:block;font:25px/1.25 var(--serif)}.team-preview-person span span{display:block;font-size:15px;margin-top:6px}.team-preview-person>.arrow{align-self:center}.team-preview-person:hover strong{text-decoration:underline}.team-caption{margin-top:30px;font-size:16px}.tinted-section{background:var(--pale)}.cost-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #aabfb5;border-bottom:1px solid #aabfb5;margin-top:30px}.cost-preview-grid article{padding:28px 30px 28px 0}.cost-preview-grid article+article{border-left:1px solid #aabfb5;padding-left:30px}.cost-code{font-size:14px;margin-bottom:15px}.cost-preview-grid h3{font-size:27px}.cost-price{font:43px/1.1 var(--serif);color:var(--ink);margin:20px 0}.cost-preview-grid article p:last-child{font-size:16px;line-height:1.65}.cost-note{font-size:15px;margin-top:24px;max-width:1000px}.visit-steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding:0;margin:32px 0}.visit-steps li{border-top:1px solid var(--line);padding-top:22px;margin:0;min-width:0}.step-number{display:block;font:23px var(--serif);color:var(--accent);margin-bottom:18px}.visit-steps h2,.visit-steps h3{font:26px/1.3 var(--serif);margin:0 0 15px}.visit-steps p{font-size:16px;line-height:1.75;margin-bottom:0}.faq-list{border-top:1px solid var(--line)}.faq-list>details{border-bottom:1px solid var(--line)}.faq-list>details>summary{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 0;cursor:pointer;list-style:none;font:25px/1.3 var(--serif);color:var(--ink)}.faq-list>details>summary::-webkit-details-marker{display:none}.faq-list>details>summary:after{content:'+';font:25px var(--sans);flex-shrink:0}.faq-list>details[open]>summary:after{content:'−'}.faq-list>details>div{padding:0 44px 24px 0;max-width:900px;font-size:17px;line-height:1.8}.split-feature{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.split-feature img{width:100%;height:auto;max-height:360px;object-fit:contain;border-radius:0 0 0 42px}.split-feature p{max-width:540px}
.booking-choices{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding-top:50px}.booking-panel{padding:35px;background:white;border:1px solid var(--line);display:flex;align-items:flex-start;flex-direction:column}.booking-panel h2{font-size:34px}.booking-panel>p{max-width:55ch}.booking-panel .button{margin-top:auto}.booking-panel .small-note{margin-top:18px;margin-bottom:0}.booking-note{margin-top:28px}.appointment-prep{padding:34px;background:var(--pale);display:grid;grid-template-columns:1fr 1fr;gap:38px}.appointment-prep h2{font-size:30px}.appointment-prep li{font-size:16px}.urgent-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding-block:50px}.urgent-panel{padding:36px;background:white;border:1px solid var(--line)}.urgent-panel h2{font-size:32px}.urgent-panel .phone-action{display:block;font:36px/1.3 var(--serif);margin:24px 0;text-decoration:none}.urgent-panel:first-child{background:var(--ink);color:white;border-color:var(--ink)}.urgent-panel:first-child h2,.urgent-panel:first-child a,.urgent-panel:first-child .eyebrow{color:white}.urgent-panel .small-note{color:inherit}.contact-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px;padding-block:52px}.contact-panel{border-top:1px solid var(--line);padding-top:27px;min-width:0}.contact-panel h2{font-size:31px}.contact-big{display:block;font:31px/1.35 var(--serif);margin:20px 0 12px;text-decoration:none;white-space:nowrap}.contact-email{display:inline-flex;align-items:center;min-height:44px}.hours{margin:0}.hours>div{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line);font-size:15px}.hours dd{margin:0;text-align:right}.visit-panel{background:var(--pale);padding:36px;display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-bottom:66px}.visit-panel h2{font-size:32px}.route-buttons{display:flex;flex-wrap:wrap;gap:20px}.people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 30px}.person{min-width:0;background:white;border:1px solid var(--line)}.person-photo{background:var(--pale)}.person-photo img{width:100%;height:280px;object-fit:contain;object-position:center bottom}.person-info{padding:25px 25px 22px}.person-info h3{font-size:27px;line-height:1.25;margin-bottom:12px}.person-role{font-size:15px;line-height:1.5;margin-bottom:12px}.big-number{font-size:14px;letter-spacing:.2px;margin-bottom:0;color:var(--muted)}.bio{border-top:1px solid var(--line);margin-top:20px}.bio>summary{cursor:pointer;list-style:none;padding:15px 0 0;display:flex;justify-content:space-between;gap:16px;font-size:15px;min-height:44px}.bio>summary:after{content:'+';font-size:20px}.bio[open]>summary:after{content:'−'}.bio>summary::-webkit-details-marker{display:none}.bio>div{padding-top:16px;font-size:16px;line-height:1.75}.team-section+.team-section{padding-top:0}.team-section h2{font-size:36px}.team-source-note{font-size:15px;margin-top:30px}
.rates-section{padding-block:52px 70px}.rates-section>h2{margin-top:48px;font-size:34px}.tariff-nav{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 36px}.tariff-nav a{font-size:14px;padding:10px 14px;border:1px solid var(--line);text-decoration:none;background:white;min-height:44px}.tariff-nav a:hover{background:var(--pale)}.tariff-category{scroll-margin-top:25px;border-top:1px solid var(--line)}.tariff-category>details>summary{display:flex;align-items:center;justify-content:space-between;gap:28px;list-style:none;cursor:pointer;padding:24px 0;font:27px/1.3 var(--serif);color:var(--ink)}.tariff-category>details>summary::-webkit-details-marker{display:none}.tariff-category>details>summary>span:first-child{min-width:0}.category-count{font:14px/1.5 var(--sans);flex-shrink:0;white-space:nowrap}.category-count:after{content:'+';font-size:22px;margin-left:18px}.tariff-category>details[open]>summary>.category-count:after{content:'−'}.tariff-category>details[open]{padding-bottom:26px}.table-scroll{overflow:auto;max-height:70vh;border:1px solid var(--line);background:white;overscroll-behavior:contain}.rates-table{border-collapse:collapse;width:100%;min-width:600px;font-size:15px;line-height:1.6}.rates-table caption{text-align:left;padding:18px 20px;background:var(--pale);font-size:15px;font-weight:600}.rates-table th,.rates-table td{padding:15px 20px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.rates-table thead{position:sticky;top:0;z-index:1;background:var(--ink);color:white}.rates-table thead th{font-weight:400}.rates-table tbody th{width:90px;font-weight:400}.rates-table td:last-child{width:160px;white-space:nowrap;font-weight:600}.rates-table summary{cursor:pointer}.rates-table details p{margin-top:14px;font-size:14px;white-space:pre-line}.table-hint{font-size:14px;margin-top:12px}.tariff-examples{margin-block:34px 50px}.tariff-examples h2{font-size:32px}.directory-group{padding-top:38px}.directory-group h2{font-size:32px}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.directory-grid a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;background:white;border:1px solid var(--line);min-height:90px;text-decoration:none;font-size:18px;line-height:1.4}.directory-grid a:hover{background:var(--pale)}.archive-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:36px}.archive-gallery a{display:block;background:var(--pale);border:1px solid var(--line)}.archive-gallery img{width:100%;height:240px;object-fit:contain}.archive-gallery figcaption{font-size:14px;color:var(--muted);margin-top:10px}.archive-story{max-width:850px;margin-bottom:36px}.archive-story h2{font-size:32px}.archive-wide{padding-block:52px 68px}.document-image{background:white;border:1px solid var(--line);padding:20px;margin:30px 0}.document-image img{width:100%;height:auto;max-height:800px;object-fit:contain}.document-image figcaption{font-size:14px;margin-top:18px}.document-card{padding:30px;background:white;border:1px solid var(--line);margin:28px 0}.document-card h2{font-size:29px}.document-card .small-note{margin-top:20px}.document-card .button{margin-top:10px}.feature-image{margin:0 0 32px}.feature-image img{max-height:390px;width:100%;object-fit:contain;background:var(--pale)}.resource-list{padding:22px 0 0}.resource-list li{padding:8px 0;font-size:16px}.timeline{list-style:none;padding:0;margin:30px 0}.timeline li{padding:26px 0;border-top:1px solid var(--line)}.timeline h2{font-size:29px}.checklist{padding-left:24px}.checklist li::marker{color:var(--accent)}
.invite{background:var(--ink);color:#fff;padding-block:58px}.invite-inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:72px}.invite h2{color:white;font-size:39px;margin:0}.invite p{font-size:17px;max-width:480px}.site-footer{background:#c8e3d9;padding-top:52px;color:var(--ink)}.footer-main{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;gap:40px;padding-bottom:44px}.footer-brand .brand{margin-bottom:22px}.footer-brand .brand-mark{width:40px}.footer-brand .brand-name{font-size:25px}.footer-brand p{font:23px/1.45 var(--serif)}.footer-main h2{font:600 15px/1.5 var(--sans);letter-spacing:.2px;margin:0 0 20px}.footer-main p,.footer-main address{font-size:15px;line-height:1.8}.footer-links{display:flex;align-items:flex-start;flex-direction:column;gap:5px}.footer-links a{display:inline-flex;align-items:center;min-height:40px;font-size:15px;text-decoration:none}.footer-links a:hover{text-decoration:underline}.footer-phone{display:block;font:27px/1.3 var(--serif);text-decoration:none;margin:0 0 10px}.footer-main a[href^=mailto]{font-size:15px;display:flex;align-items:center;min-height:44px}.footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;padding-block:22px;border-top:1px solid #a4c8b8;font-size:14px}.footer-bottom nav{display:flex;flex-wrap:wrap;gap:20px}.footer-bottom a{display:inline-flex;align-items:center;min-height:40px;text-decoration:none}.footer-bottom a:hover{text-decoration:underline}
.skip-link:hover{color:white}.utility-bar a:focus-visible,.urgent-panel-dark a:focus-visible{outline-color:white}.page-goede-doelen .card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-goede-doelen .info-note,.archive-story>.info-note{margin-bottom:28px}.care-card.archive-card{padding:0;overflow:hidden}.archive-card>img{width:100%;height:220px;object-fit:cover;object-position:center;background:var(--pale);border-bottom:1px solid var(--line)}.archive-card[href*=paramaribo]>img,.archive-card[href*=voedselbank]>img{object-fit:contain;padding:18px}.archive-card h2,.archive-card h3,.archive-card p,.archive-card>.arrow{margin-inline:28px}.archive-card h2,.archive-card h3{margin-top:24px}.archive-card>.arrow{margin-bottom:28px}.archive-card p{margin-bottom:24px}
@media(max-width:1120px){.wrap{width:calc(100% - 64px)}.wide-nav{gap:18px}.header-inner{gap:18px}.header-cta{padding-inline:17px}.brand-name{font-size:26px}.brand-mark{width:38px}.hero-grid{gap:38px}.hero-copy h1{font-size:51px}.content-layout{gap:40px;grid-template-columns:minmax(0,1fr) 265px}.footer-main{gap:28px}.footer-phone{font-size:23px}.people-grid{gap:28px 22px}.person-info{padding:22px}.person-info h3{font-size:25px}.contact-grid{gap:24px}.contact-big{font-size:27px}}
@media(max-width:960px){.wide-nav{display:none}.header-cta{margin-left:auto}.mobile-menu{display:block}.mobile-menu>summary{display:flex;align-items:center;gap:11px;list-style:none;cursor:pointer;min-height:48px;padding:8px 0 8px 12px;font-size:15px;font-weight:600;color:var(--ink)}.menu-lines{width:22px;height:14px;border-top:1px solid currentColor;border-bottom:1px solid currentColor;position:relative}.menu-lines:after{content:'';position:absolute;top:6px;left:0;width:22px;border-top:1px solid currentColor}.menu-panel{position:absolute;left:0;right:0;top:100%;padding:18px 32px 26px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 12px 28px #00000012;max-height:calc(100dvh - 180px);overflow:auto;overscroll-behavior:contain}.menu-panel nav>a{display:block;min-height:48px;padding:10px 0;text-decoration:none;border-bottom:1px solid var(--line)}.menu-panel nav>details{border-bottom:1px solid var(--line)}.menu-panel nav>details>summary{padding:12px 0;cursor:pointer;min-height:48px;list-style:none;display:flex;align-items:center;justify-content:space-between}.menu-panel nav>details>summary:after{content:'+'}.menu-panel nav>details[open]>summary:after{content:'−'}.menu-panel nav>details>summary::-webkit-details-marker{display:none}.menu-panel nav>details>div{padding:0 0 12px 18px}.menu-panel nav>details>div>a{display:block;min-height:44px;padding:8px 0;text-decoration:none}.menu-phone{display:block;font-size:19px;margin-top:20px;text-decoration:none;min-height:44px}.hero-grid{grid-template-columns:1fr 1fr;gap:30px}.hero-copy h1{font-size:44px}.hero-lead{font-size:18px}.hero-photo img{height:360px}.hero-copy .button{padding-inline:16px;font-size:14px;gap:14px}.hero-hours{font-size:14px}.patient-routes a{padding-inline:20px}.patient-routes strong{font-size:23px}.content-layout{grid-template-columns:minmax(0,1fr) 245px;gap:30px}.help-aside{padding:24px}.help-aside .aside-phone{font-size:24px}.card-grid,.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.related-links{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-grid{grid-template-columns:1fr 1fr}.contact-panel:last-child{grid-column:1/-1;max-width:650px}.section-heading{gap:34px}.section-heading>div:last-child:not(:first-child),.section-heading>p{max-width:340px}.section-heading h2{font-size:35px}.team-preview-person strong{font-size:23px}.cost-preview-grid article{padding-right:22px}.cost-preview-grid article+article{padding-left:22px}.cost-preview-grid h3{font-size:24px}.cost-price{font-size:37px}.visit-steps{gap:24px}.visit-steps h3{font-size:24px}.directory-grid{grid-template-columns:1fr 1fr}.archive-gallery{grid-template-columns:1fr 1fr}.footer-main{grid-template-columns:1fr 1fr;gap:38px 50px}.split-feature{gap:38px}}
@media(max-width:700px){html{scroll-padding-bottom:90px}body{font-size:17px;padding-bottom:calc(76px + env(safe-area-inset-bottom))}.wrap{width:calc(100% - 40px)}.section{padding-block:48px}.utility-bar>.wrap{min-height:32px}.utility-bar>.wrap>span{display:none}.utility-bar .utility-links{width:100%;justify-content:space-between;gap:18px}.utility-bar a{min-height:32px;font-size:13px}.header-inner{min-height:78px;gap:12px}.brand-mark{width:32px}.brand-name{font-size:24px}.brand-small{font-size:9px;letter-spacing:1.4px}.brand{gap:10px}.header-cta{display:none}.mobile-menu{margin-left:auto}.mobile-menu>summary{font-size:14px}.menu-panel{padding:12px 20px 22px;max-height:calc(100dvh - 176px)}.breadcrumbs{padding-block:18px;font-size:13px;gap:8px}.page-intro{padding-block:34px 38px}.page-intro h1{font-size:42px;line-height:1.12;max-width:100%;letter-spacing:-.035em}.page-intro .lead{font-size:18px;line-height:1.7}.page-intro .eyebrow{font-size:12px}.page-intro .actions{margin-top:25px;gap:14px}.lead{font-size:18px}.content-layout{display:flex;flex-direction:column;gap:34px;padding-block:36px 44px}.reading-copy{width:100%;max-width:none}.reading-copy>h2{font-size:29px;margin-top:34px}.reading-copy>h3{font-size:25px}.help-aside{width:100%;padding:26px}.help-aside h2{font-size:29px}.help-aside .aside-phone{font-size:29px}.help-aside .text-link{font-size:15px}.related{padding-block:32px 42px}.related-links{grid-template-columns:1fr;gap:12px}.related-links a{min-height:68px;padding:18px 20px;font-size:18px}.section-heading{display:block;margin-bottom:28px}.section-heading h2{font-size:35px;line-height:1.15}.section-heading>p,.section-heading>div:last-child:not(:first-child){max-width:none;margin-top:23px}.section-heading>.text-link{margin-top:22px}.home-hero{padding-block:33px 34px}.hero-grid{grid-template-columns:1fr;gap:32px}.hero-copy h1{font-size:43px;line-height:1.1;max-width:100%;margin-bottom:22px}.hero-copy .eyebrow{font-size:12px}.hero-lead{font-size:18px;line-height:1.7;margin-bottom:24px;max-width:none}.hero-copy .actions{gap:10px}.hero-copy .button{font-size:14px;padding:15px 17px;gap:17px}.hero-photo img{height:auto;aspect-ratio:1.65;object-fit:cover;border-radius:0 0 0 36px}.hero-hours{font-size:14px;margin-top:20px}.hero-contact{gap:12px 20px}.hero-contact a{font-size:14px;min-height:44px;display:inline-flex;align-items:center}.home-proof{margin-top:17px;padding-top:20px;max-width:100%}.home-proof strong{font-size:22px}.patient-routes .wrap{display:block}.patient-routes a,.patient-routes a:first-child,.patient-routes a:last-child{padding:23px 0;border-right:0;border-bottom:1px solid var(--line)}.patient-routes a:last-child{border-bottom:0}.patient-routes strong{font-size:26px}.patient-routes p{font-size:15px;max-width:28ch}.card-grid,.page-goede-doelen .card-grid{grid-template-columns:1fr;gap:16px}.care-card{padding:25px;min-height:210px}.care-card h2,.care-card h3{font-size:29px}.care-card p{font-size:16px;line-height:1.7}.team-preview-grid{grid-template-columns:1fr;gap:25px}.team-preview-person{grid-template-columns:96px minmax(0,1fr) 18px;gap:18px;align-items:center}.team-preview-person img{grid-column:1;height:130px;border-radius:0 0 22px 0}.team-preview-person strong{font-size:23px}.team-preview-person span span{font-size:15px}.team-caption{font-size:16px}.team-caption .text-link{display:flex;margin-top:12px}.cost-preview-grid{grid-template-columns:1fr;margin-top:26px}.cost-preview-grid article,.cost-preview-grid article+article{padding:25px 0;border-left:0;border-top:1px solid #aabfb5}.cost-preview-grid article:first-child{border-top:0}.cost-preview-grid h3{font-size:28px}.cost-price{font-size:42px}.cost-note{font-size:15px}.cost-preview .inline-links{align-items:flex-start;flex-direction:column;gap:12px}.visit-steps{grid-template-columns:1fr;gap:26px;margin:28px 0}.visit-steps h2,.visit-steps h3{font-size:27px}.visit-steps li{padding-top:23px}.step-number{margin-bottom:16px}.visit-steps p{font-size:17px}.faq-list>details>summary{font-size:24px;padding:21px 0;gap:18px}.faq-list>details>div{font-size:17px;padding:0 0 24px}.split-feature{grid-template-columns:1fr;gap:30px}.split-feature h2{font-size:35px}.split-feature img{max-height:300px}.booking-choices{grid-template-columns:1fr;padding-top:34px;gap:22px}.booking-panel{padding:26px}.booking-panel h2{font-size:31px}.booking-panel .button{width:100%}.booking-panel .small-note{font-size:14px}.appointment-prep{padding:26px;grid-template-columns:1fr;gap:24px}.appointment-prep h2{font-size:29px}.urgent-grid{grid-template-columns:1fr;padding-block:34px;gap:23px}.urgent-panel{padding:28px;min-width:0}.urgent-panel h2{font-size:31px}.urgent-panel .phone-action{font-size:35px}.contact-grid{grid-template-columns:1fr;padding-block:36px;gap:28px}.contact-panel:last-child{grid-column:auto}.contact-panel h2{font-size:31px}.contact-big{font-size:33px}.visit-panel{grid-template-columns:1fr;padding:27px;gap:28px;margin-bottom:42px}.visit-panel h2{font-size:29px}.people-grid{grid-template-columns:1fr;gap:25px}.person-photo img{height:300px}.person-info{padding:25px}.person-info h3{font-size:29px}.person-role{font-size:16px}.big-number{font-size:14px}.bio>summary{font-size:16px}.bio>div{font-size:17px}.team-section h2{font-size:32px}.team-source-note{font-size:15px}.rates-section{padding-block:36px 45px}.rates-section>h2{font-size:31px}.tariff-examples{margin-block:30px 38px}.tariff-examples h2{font-size:29px}.tariff-nav{gap:8px}.tariff-nav a{font-size:14px;padding:10px 12px}.tariff-category>details>summary{font-size:23px;gap:14px;padding-block:22px}.category-count{font-size:13px;flex:0 0 auto;white-space:nowrap;text-align:left;display:block;margin-top:8px}.tariff-category>details>summary{display:block;position:relative;padding-right:28px}.category-count:after{position:absolute;right:0;top:24px}.category-count:after{font-size:20px;margin-left:7px}.tariff-category>details>summary>span:first-child{overflow-wrap:anywhere;hyphens:auto}/* On small screens each tariff row keeps its code and price together,
   with the complete description beneath. Explicit HTML roles preserve table semantics. */
.rates-table{display:block;font-size:16px;min-width:0;width:100%}.rates-table caption{display:block;padding:16px;font-size:14px}.rates-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}.rates-table tbody{display:block}.rates-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:18px 16px;border-bottom:1px solid var(--line);gap:8px 18px}.rates-table tbody th,.rates-table td{display:block;width:auto;padding:0;border:0}.rates-table tbody th{grid-column:1;grid-row:1;font-weight:600;color:var(--accent)}.rates-table td:nth-child(2){grid-column:1/-1;grid-row:2;overflow-wrap:anywhere;hyphens:none}.rates-table td:last-child{grid-column:2;grid-row:1;width:auto;white-space:nowrap}.rates-table summary{line-height:1.6}.rates-table details p{font-size:15px;line-height:1.7}
.table-hint{font-size:14px}.directory-grid{grid-template-columns:1fr;gap:13px}.directory-grid a{padding:20px;font-size:18px;min-height:72px}.directory-group{padding-top:30px}.directory-group h2{font-size:30px}.archive-wide{padding-block:36px 45px}.archive-gallery{grid-template-columns:1fr 1fr;gap:20px 14px}.archive-gallery img{height:175px}.archive-gallery figcaption{font-size:13px}.archive-story h2{font-size:29px}.document-image{padding:12px}.document-card{padding:26px}.document-card h2{font-size:29px}.info-note{padding:21px;font-size:16px}.invite{padding-block:39px}.invite-inner{grid-template-columns:1fr;gap:26px}.invite h2{font-size:35px}.site-footer{padding-top:38px}.footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px;padding-bottom:30px}.footer-main>div:first-child,.footer-main>div:last-child{grid-column:1/-1}.footer-main>div:last-child .footer-links{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.footer-brand p{font-size:23px;max-width:300px}.footer-main h2{font-size:16px;margin-bottom:14px}.footer-links{gap:0}.footer-links a{font-size:15px;min-height:44px;line-height:1.5}.footer-main>div:last-child .footer-links a:last-child{grid-column:1/-1}.footer-main p,.footer-main address{font-size:16px}.footer-phone{font-size:30px}.footer-main a[href^=mailto]{font-size:16px}.footer-bottom{display:block;font-size:13px;padding-block:22px}.footer-bottom nav{gap:10px 18px;margin-top:14px}.footer-bottom a{min-height:40px}.mobile-actions{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;background:var(--paper);border-top:1px solid var(--line);z-index:35;padding-bottom:env(safe-area-inset-bottom)}.mobile-actions a{display:flex;align-items:center;justify-content:center;gap:15px;min-height:58px;padding:12px 10px;font-size:14px;font-weight:600;line-height:1.4;text-decoration:none}.mobile-actions a:last-child{background:var(--ink);color:white}.mobile-actions a:hover{color:var(--ink);background:var(--pale)}.mobile-actions a:last-child:hover{background:#205b60;color:white}}
@media(max-width:370px){.footer-main{grid-template-columns:1fr}.footer-main>div:last-child .footer-links{grid-template-columns:1fr}.mobile-actions a{font-size:13px;gap:8px;padding-inline:8px}.hero-copy h1,.page-intro h1{font-size:37px}.hero-copy .actions{align-items:stretch;flex-direction:column}.hero-copy .actions .button{width:100%}.section-heading h2{font-size:32px}.brand-name{font-size:22px}.brand-mark{width:29px}.brand-small{font-size:8px}.header-inner{gap:8px}.person-photo img{height:270px}.team-preview-person{grid-template-columns:82px minmax(0,1fr) 18px;gap:14px}.team-preview-person strong{font-size:21px}.team-preview-person img{height:120px}.tariff-category>details>summary{font-size:21px}.category-count{flex-basis:74px}.archive-gallery{grid-template-columns:1fr}.archive-gallery img{height:260px}.contact-big{font-size:29px}.urgent-panel .phone-action{font-size:31px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{body{background:white;color:black;font-size:12px;padding:0}.utility-bar,.site-header,.site-footer,.mobile-actions,.help-aside,.invite,.breadcrumbs,.button,.text-link{display:none}.wrap{width:100%;max-width:none}.section,.content-layout,.page-intro{padding:20px 0;background:white}.content-layout{display:block}.reading-copy{max-width:none}.people-grid{grid-template-columns:1fr 1fr}h1{font-size:32px}h2{font-size:24px}.table-scroll{max-height:none;overflow:visible}.rates-table{min-width:0;font-size:10px}.rates-table th,.rates-table td{padding:5px}details>div{display:block}.person{break-inside:avoid}}

.quality-archive{border-block:1px solid var(--line);margin:30px 0}.quality-archive>summary{cursor:pointer;font-size:18px;padding:18px 0;color:var(--ink)}.quality-document{margin:12px 0 25px;padding:24px;border:1px solid var(--line);background:white;max-width:420px}.quality-document img{width:212px;height:300px;max-width:100%;object-fit:contain;margin-inline:auto}.quality-document figcaption{font-size:14px;line-height:1.6;margin-top:18px;color:var(--muted)}

/* Existing JDS patient access, in the shared DCEW navigation. */
.patient-login-link{display:inline-flex;align-items:center;gap:8px;font-weight:600}
.patient-login-link svg{width:13px;height:15px;flex-shrink:0}
.hero-patient-login{display:flex;flex-wrap:wrap;gap:3px 7px;align-items:center;font-size:14px;margin:16px 0 0}
.hero-patient-login a{display:inline-flex;align-items:center;gap:8px;min-height:36px;font-weight:600}
.hero-patient-login .arrow{font-size:17px}
.hero-patient-login+.hero-hours{margin-top:8px}
.menu-panel nav>a.menu-patient-login{font-weight:600;display:flex;align-items:center;justify-content:space-between;color:var(--ink)}
.patient-login-panel{background:var(--pale);border-color:#aac8bc}
.patient-login-heading{display:flex;align-items:center;gap:12px;margin-bottom:20px}
.patient-login-heading .eyebrow{margin:0}
.patient-login-icon{width:39px;height:42px;display:grid;place-items:center;background:var(--ink);color:white;border-radius:6px}
.patient-login-icon svg{width:17px;height:19px}
.patient-login-details{font-size:15px;padding-left:21px;margin-bottom:26px}
.patient-login-details li{margin-bottom:10px}
.patient-login-panel>.button{width:100%}
.appointment-info-link{padding-top:18px}
@media(max-width:700px){.utility-links .utility-urgent{display:none}.utility-bar .utility-links{gap:10px}.patient-login-link{gap:6px}.utility-bar a.patient-login-link{font-size:12px}.hero-patient-login{margin-top:13px}.patient-login-panel{padding:26px}.patient-login-details{font-size:15px}.appointment-info-link .text-link{align-items:flex-start}.appointment-info-link{padding-top:8px}}
@media(max-width:370px){.utility-bar .utility-links{gap:7px}.utility-bar a{font-size:12px}.utility-bar a.patient-login-link{font-size:11px}.patient-login-link svg{width:11px}.patient-login-panel>.button{gap:15px;padding-inline:17px}}

/* Integrated patient forms. Native dialog submission validates locally without a network request. */
.patient-form-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:54px;align-items:start;padding-block:48px 32px}
.patient-form-column{min-width:0}.form-preview-notice{border:1px solid #aac8bc;border-left:4px solid var(--accent);padding:22px 25px;background:var(--pale);margin-bottom:28px}
.form-preview-notice strong{display:block;font-size:17px;color:var(--ink);margin-bottom:7px}.form-preview-notice p{font-size:15px;line-height:1.65;margin:0}.form-preview-notice p[lang=en]{font-size:13px;margin-top:9px;color:var(--muted)}
.patient-form-dialog{position:static;inset:auto;width:100%;max-width:none;margin:0;padding:0;border:0;background:transparent;color:var(--body)}
.patient-form-dialog:not([open]){display:none}.patient-form{font:inherit}.patient-form p{margin-top:0}.form-required-note{font-size:14px;color:var(--muted);margin-bottom:25px}
.patient-fieldset{padding:26px 0 34px;margin:0;border:0;border-top:1px solid var(--line);min-width:0}.patient-fieldset legend{float:left;display:flex;align-items:baseline;gap:16px;width:100%;padding:0 0 24px;font:28px/1.25 var(--serif);color:var(--ink)}.patient-fieldset legend>span{font:13px var(--sans);color:var(--accent);letter-spacing:1px;min-width:22px}
.patient-fields{clear:both;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px 24px}.form-field{min-width:0}.form-field-wide{grid-column:1/-1}.form-field label{display:block;font-size:15px;font-weight:600;line-height:1.5;margin-bottom:9px;color:var(--ink)}.field-english{display:block;font-size:12px;font-weight:400;color:var(--muted)}.field-optional{font-size:12px;font-weight:400;color:var(--muted)}.required-mark{color:var(--accent)}
.form-field input,.form-field select,.form-field textarea{display:block;width:100%;min-width:0;min-height:50px;border:1px solid #8aa7a0;border-radius:4px;background:#fff;color:var(--ink);font:16px/1.5 var(--sans);padding:12px 13px;box-shadow:none}.form-field select{padding-right:7px}.form-field input[type=date]{appearance:none;-webkit-appearance:none;min-height:50px}.form-field textarea{resize:vertical;min-height:125px}.form-field input:hover,.form-field select:hover,.form-field textarea:hover{border-color:var(--ink)}.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-color:var(--accent)}.field-hint{font-size:13px;line-height:1.6;color:var(--muted);margin:8px 0 0!important}
.form-bottom{border-top:1px solid var(--line);padding-top:28px}.form-bottom>p:first-child{font-size:14px}.form-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:16px 25px}.form-buttons button{cursor:pointer;font:600 15px/1.4 var(--sans)}.form-reset{border:0;background:transparent;text-decoration:underline;text-underline-offset:5px;padding:14px 0;color:var(--ink);min-height:48px}.form-buttons button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.patient-form-help{position:sticky;top:25px;padding:29px;background:var(--pale);border:1px solid var(--line)}.patient-form-help h2{font-size:31px}.patient-form-help h3{font-size:24px}.patient-form-help p{font-size:15px}.patient-form-help .aside-phone{font:26px/1.3 var(--serif);display:block;text-decoration:none;white-space:nowrap;margin-block:22px}.patient-form-help .text-link{font-size:14px}.patient-form-help .small-note{margin-top:15px}
.form-demo-result{display:none;padding:32px;border:1px solid #aac8bc;background:var(--pale)}.patient-form-dialog:not([open])+.form-demo-result{display:block}.form-demo-result h2{font-size:33px}.form-demo-result p{font-size:16px}.result-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--ink);color:#fff;font-size:23px;margin-bottom:22px}.form-demo-result .actions{margin-block:25px}.form-followup{padding-block:25px 55px}.form-followup .reading-copy{max-width:760px}.form-followup h2{font-size:30px}
@media(max-width:960px){.patient-form-layout{grid-template-columns:minmax(0,1fr) 240px;gap:30px}.patient-form-help{padding:23px}.patient-form-help .aside-phone{font-size:23px}.patient-fields{gap:20px 18px}}
@media(max-width:700px){.patient-form-layout{grid-template-columns:1fr;padding-top:30px;gap:35px}.patient-form-help{position:static;padding:26px}.patient-fields{grid-template-columns:1fr;gap:21px}.patient-fieldset{padding-bottom:28px}.patient-fieldset legend{font-size:26px;gap:12px}.form-preview-notice{padding:20px}.form-preview-notice p{font-size:14px}.form-preview-notice p[lang=en]{font-size:12px}.form-field label{font-size:16px}.field-english,.field-optional{font-size:13px}.form-field input,.form-field select,.form-field textarea{min-height:52px}.form-buttons{align-items:stretch;flex-direction:column;gap:7px}.form-buttons .button{width:100%;padding-inline:18px}.form-reset{align-self:flex-start}.form-demo-result{padding:25px}.form-demo-result h2{font-size:29px}.form-followup{padding-bottom:38px}.form-followup h2{font-size:28px}}

/* Equal label, control and hint tracks align every paired field, including wrapped labels. */
.form-field input,.form-field select{height:52px;min-height:52px}.form-field input[type=date]{height:52px;min-height:52px}
@supports(grid-template-rows:subgrid){.form-field{display:grid;grid-template-rows:subgrid;grid-row:span 3;row-gap:0}.form-field label{align-self:end}.form-field input,.form-field select,.form-field textarea{align-self:start}.patient-fields{row-gap:16px}.form-field .field-hint{padding-top:8px;margin-top:0!important}}
@supports not(grid-template-rows:subgrid){.form-field label{min-height:45px}}
.preview-footnote{font:13px/1.6 var(--sans);color:var(--muted);margin:0 0 14px}.patient-form-help h3{margin-bottom:14px}
.location-section{display:grid;grid-template-columns:280px minmax(0,1fr);gap:50px;padding-block:55px 75px;border-top:1px solid var(--line);align-items:center}.location-copy h2{font-size:40px}.location-copy address{font-style:normal;font-size:18px;margin-bottom:18px}.location-copy p:not(.eyebrow){font-size:16px}.location-copy .button{margin-block:8px 14px}.location-map{margin:0;min-width:0}.map-link{display:block;overflow:hidden;border:1px solid var(--line);border-radius:3px;text-decoration:none}.map-canvas{height:420px;position:relative;overflow:hidden;background:#e9eee4}.map-tiles{position:absolute;left:50%;top:50%;width:1280px;height:768px;transform:translate(-610.031px,-489.162px);pointer-events:none}.map-tiles img{position:absolute;width:256px;max-width:none;height:256px}.map-marker{position:absolute;left:50%;top:50%;transform:translate(-21px,-51px);display:flex;align-items:flex-start;gap:8px;filter:drop-shadow(0 3px 3px #153f4330)}.map-marker svg{flex:0 0 42px}.map-marker>span{display:block;white-space:nowrap;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:3px;font:12px/1.4 var(--sans);padding:8px 11px;margin-top:-4px}.map-marker strong{font-size:16px}.map-open{position:absolute;bottom:18px;right:18px;background:var(--ink);color:white;padding:11px 16px;font-size:14px;display:flex;gap:20px;border:1px solid #fff}.map-link:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.location-map figcaption{font-size:11px;color:var(--muted);margin-top:8px}.travel-notice{background:var(--pale);border-left:3px solid var(--accent);padding:23px 26px;margin-block:35px}.travel-notice h2{font-size:28px;margin-top:0}.travel-notice p{font-size:16px}.source-checked{font-size:13px!important;color:var(--muted);padding-top:12px}.reading-copy>.text-link{margin-bottom:12px}
.footer-newsletter{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding-bottom:46px;margin-bottom:45px;border-bottom:1px solid var(--line)}.footer-newsletter h2{font:36px/1.2 var(--serif);margin:0 0 14px}.footer-newsletter .eyebrow{font-size:12px;color:var(--ink)}.footer-newsletter p{font-size:16px;max-width:420px;margin-bottom:0}.newsletter-dialog{position:static;inset:auto;width:100%;max-width:none;margin:0;padding:0;border:0;background:transparent;color:inherit}.newsletter-dialog:not([open]){display:none}.newsletter-form label{display:block;font-size:14px;font-weight:600;margin-bottom:10px}.newsletter-input-row{display:flex;gap:10px}.newsletter-input-row input{flex:1;min-width:0;background:#fff;border:1px solid #d4e5dc;border-radius:3px;padding:13px 14px;font:16px/1.5 var(--sans);color:var(--ink);width:100%;min-height:50px}.newsletter-input-row .button{background:var(--ink);color:#fff;border-color:var(--ink);padding:13px 20px;gap:18px;cursor:pointer;font:600 14px/1.5 var(--sans)}.newsletter-input-row input:focus-visible,.newsletter-input-row button:focus-visible{outline:3px solid #96cdb8;outline-offset:3px}.footer-newsletter .newsletter-privacy{font-size:12px;margin-top:12px}.footer-newsletter .preview-footnote{font-size:11px;color:var(--ink);margin-top:5px}.newsletter-result{display:none;border:1px solid #d4e5dc55;padding:22px}.newsletter-dialog:not([open])+.newsletter-result{display:block}.newsletter-result p{margin:0 0 15px}.newsletter-result a{font-size:14px}
@media(max-width:960px){.location-section{grid-template-columns:230px minmax(0,1fr);gap:30px}.location-copy h2{font-size:34px}.footer-newsletter{gap:35px}.newsletter-input-row{flex-direction:column}.newsletter-input-row .button{align-self:flex-start}.map-marker>span{font-size:11px}.map-marker strong{font-size:13px}}
@media(max-width:700px){.location-section{grid-template-columns:1fr;gap:24px;padding-block:36px 45px}.location-copy h2{font-size:34px}.map-canvas{height:320px}.map-marker>span{margin-top:-34px;margin-left:-37px}.map-open{bottom:12px;right:12px}.footer-newsletter{grid-template-columns:1fr;gap:24px;padding-bottom:32px;margin-bottom:30px}.footer-newsletter h2{font-size:31px}.footer-newsletter p{font-size:15px}.newsletter-input-row{flex-direction:row}.newsletter-input-row .button{padding-inline:15px;gap:10px}.travel-notice{padding:21px}.travel-notice h2{font-size:26px}.patient-fields{row-gap:20px}.form-field{display:block}.form-field label{min-height:0}.preview-footnote{font-size:12px}}
@media(max-width:370px){.newsletter-input-row{flex-direction:column}.newsletter-input-row .button{width:100%}}
.map-tile-0{left:0px;top:0px}.map-tile-1{left:256px;top:0px}.map-tile-2{left:512px;top:0px}.map-tile-3{left:768px;top:0px}.map-tile-4{left:1024px;top:0px}.map-tile-5{left:0px;top:256px}.map-tile-6{left:256px;top:256px}.map-tile-7{left:512px;top:256px}.map-tile-8{left:768px;top:256px}.map-tile-9{left:1024px;top:256px}.map-tile-10{left:0px;top:512px}.map-tile-11{left:256px;top:512px}.map-tile-12{left:512px;top:512px}.map-tile-13{left:768px;top:512px}.map-tile-14{left:1024px;top:512px}
/* V11: quiet links and the native patient-access dialog. */
button.login-trigger{appearance:none;border:0;background:none;border-radius:0;padding:0;color:var(--ink);font:inherit;line-height:inherit;text-align:left;cursor:pointer}
button.login-trigger:hover{text-decoration:underline;color:var(--accent)}
button:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.utility-bar button.login-trigger{display:inline-flex;align-items:center;min-height:34px;color:white;font-size:13px;font-weight:600;gap:8px}
.hero-patient-login button.login-trigger{display:inline-flex;align-items:center;min-height:36px;font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:5px}
.menu-panel nav>button.menu-patient-login{display:flex;align-items:center;min-height:48px;width:100%;padding:12px 0;font-weight:600;border-bottom:1px solid var(--line)}
.footer-links button.login-trigger{display:inline-flex;align-items:center;min-height:40px;font-size:15px;text-decoration:none}
.footer-links button.login-trigger:hover{text-decoration:underline}
.patient-routes :is(a,button.login-trigger){display:block;padding:27px 28px;border-right:1px solid var(--line);text-decoration:none;background:white;color:var(--ink)}
.patient-routes :is(a,button.login-trigger):first-child{padding-left:0}
.patient-routes :is(a,button.login-trigger):last-child{border:0;padding-right:0}
.patient-routes :is(a,button.login-trigger) strong{display:block;margin-bottom:7px}
.patient-routes button.login-trigger:hover strong{text-decoration:underline}
.team-preview-person{grid-template-columns:minmax(0,1fr)}
.team-preview-person img{grid-column:1/-1}
.patient-access-dialog{position:fixed;inset:0;width:calc(100% - 40px);max-width:550px;max-height:calc(100dvh - 40px);margin:auto;padding:0;border:1px solid #aac8bc;border-radius:12px;background:var(--paper);color:var(--body);box-shadow:0 28px 100px #0c30354a;overflow:auto;overscroll-behavior:contain;font:17px/1.65 var(--sans)}
.patient-access-dialog::backdrop{background:rgb(12 39 42 / .55);backdrop-filter:blur(3px)}
.patient-access-head{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 30px;background:var(--pale);border-bottom:1px solid var(--line)}
.patient-access-head .brand{gap:10px}
.patient-access-head .brand-mark{width:34px}
.patient-access-head .brand-name{font-size:25px}
.patient-access-head .brand-small{font-size:9px;letter-spacing:1.6px}
.patient-access-close{appearance:none;display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;padding:0;border:1px solid #b4cec4;border-radius:50%;background:transparent;color:var(--ink);cursor:pointer}
.patient-access-close:hover{background:white;border-color:var(--ink)}
.patient-access-close svg{width:18px;height:18px}
.patient-access-body{padding:34px 38px 30px}
.patient-access-body .eyebrow{font-size:11px;margin-bottom:14px}
.patient-access-body h2{font-size:43px;margin-bottom:18px}
.patient-access-body>p{max-width:39ch;margin-bottom:26px}
.patient-access-body .patient-access-cta{width:100%;justify-content:center;min-height:54px;margin-bottom:15px}
.patient-access-body .patient-access-note{font-size:13px;line-height:1.65;color:var(--muted);margin:0;max-width:43ch}
.patient-access-new{padding-top:24px;margin-top:26px;border-top:1px solid var(--line);font-size:14px}
.patient-access-new a{font-weight:600}
body:has(.patient-access-dialog:modal){overflow:hidden}
@media(max-width:700px){
 .utility-bar button.login-trigger{font-size:12px;min-height:32px;gap:6px}
 .footer-links button.login-trigger{font-size:15px;min-height:44px;line-height:1.5}
 .patient-routes :is(a,button.login-trigger),.patient-routes :is(a,button.login-trigger):first-child,.patient-routes :is(a,button.login-trigger):last-child{width:100%;padding:23px 0;border:0;border-bottom:1px solid var(--line)}
 .patient-routes :is(a,button.login-trigger):last-child{border-bottom:0}
 .team-preview-person{grid-template-columns:96px minmax(0,1fr)}
 .team-preview-person img{grid-column:1}
 .patient-access-dialog{width:calc(100% - 28px);max-height:calc(100dvh - 28px);border-radius:9px}
 .patient-access-head{padding:20px;gap:14px}
 .patient-access-head .brand-mark{width:29px}
 .patient-access-head .brand-name{font-size:23px}
 .patient-access-body{padding:27px 24px}
 .patient-access-body h2{font-size:37px}
 .patient-access-body>p{font-size:16px}
}
@media(max-width:370px){.utility-bar button.login-trigger{font-size:11px}.team-preview-person{grid-template-columns:82px minmax(0,1fr)}.patient-access-head{padding:16px}.patient-access-body{padding:25px 20px}.patient-access-head .brand-name{font-size:21px}.patient-access-head .brand-small{font-size:8px}}

.patient-routes .patient-route-description{display:block;font-size:15px;line-height:1.5;font-weight:400}.patient-routes button.login-trigger:hover{text-decoration:none}

/* V14: Saliy's quieter hero and edge-to-edge treatment photography. */
.home-hero{padding-block:56px}
.hero-grid{grid-template-columns:.9fr 1.1fr;gap:64px}
.hero-lead{max-width:35ch;margin-bottom:30px}
.hero-copy .actions .button{min-width:180px;justify-content:center}
.home-proof{margin-top:28px;padding-top:22px}
.photo-fill{overflow:hidden}
.photo-fill img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:1.85;object-fit:cover;object-position:center}
@media(max-width:1100px){.hero-grid{gap:38px}}
@media(max-width:960px){.hero-grid{grid-template-columns:1fr 1fr;gap:30px}}
@media(max-width:700px){
 .home-hero{padding-block:36px}
 .hero-grid{grid-template-columns:1fr;gap:30px}
 .hero-lead{font-size:18px;max-width:33ch;margin-bottom:26px}
 .home-proof{margin-top:24px;padding-top:20px}
 .photo-fill img{aspect-ratio:1.6}
}

/* V15: the supplied practice film as a full-width hero background. */
.home-hero-video{position:relative;isolation:isolate;overflow:hidden;background:#153f43;padding-block:0;color:#fff}
.hero-video-backdrop{position:absolute;inset:0;z-index:-2;background:#153f43}
.home-hero-video .practice-hero-video{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center}
.home-hero-video:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,34,37,.88) 0%,rgba(7,34,37,.76) 37%,rgba(7,34,37,.3) 75%,rgba(7,34,37,.24) 100%)}
.hero-video-inner{display:flex;align-items:center;min-height:580px;padding-block:70px 82px}
.home-hero-video .hero-copy{max-width:690px}
.home-hero-video h1{color:#fff;font-size:clamp(42px,4.6vw,66px);line-height:1.12}
.home-hero-video h1 em{color:#bde1d8}
.home-hero-video .eyebrow{color:#c4e5dc}
.home-hero-video .hero-lead{color:#fff;max-width:34ch;font-size:21px}
.home-hero-video .button{background:#bde1d8;color:#153f43;border-color:#bde1d8}
.home-hero-video .button:hover{background:#fff;border-color:#fff}
.home-hero-video .home-proof{color:#fff;border-color:#ffffff40;max-width:350px}
.home-hero-video .home-proof span span{color:#dfefeb}
.hero-video-controls{display:flex;justify-content:flex-end;align-items:center;gap:23px;padding-bottom:24px;margin-top:-48px;position:relative;font-size:13px;line-height:1.4}
.hero-video-toggle{display:inline-flex;align-items:center;gap:8px;border:1px solid #ffffff60;border-radius:3px;background:#102f32cc;color:#fff;padding:9px 13px;font:inherit;cursor:pointer;min-height:42px}
.hero-video-toggle[hidden]{display:none}
.hero-video-toggle:hover{background:#153f43}
.hero-video-toggle svg{width:16px;height:16px}
.hero-video-toggle .video-pause-icon{display:none}
.hero-video-toggle[data-playing="true"] .video-pause-icon{display:block}
.hero-video-toggle[data-playing="true"] .video-play-icon{display:none}
.hero-video-full{color:#fff;text-underline-offset:4px}
.home-hero-video :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:5px}
@media(min-width:1700px){.hero-video-inner{min-height:650px}}
@media(max-width:700px){
 .hero-video-inner{min-height:570px;padding-block:55px 110px}
 .home-hero-video h1{font-size:clamp(36px,8.8vw,50px)}
 .home-hero-video .hero-lead{font-size:18px;max-width:31ch}
 .home-hero-video:before{background:linear-gradient(90deg,#072225df,#072225a8)}
 .home-hero-video .practice-hero-video{object-position:58% center}
 .hero-video-controls{justify-content:space-between;gap:12px;margin-top:-74px;padding-bottom:26px;font-size:12px}
 .hero-video-toggle{padding:9px 10px}
 .home-hero-video .home-proof{margin-top:27px}
}

/* V17: customer feedback, quiet forms and the complete practice team. */
.home-hero-video .hero-copy{max-width:690px}.hero-video-inner{min-height:520px;padding-block:70px 90px}
.team-carousel{min-width:0}.carousel-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--accent) transparent;padding-bottom:16px;position:relative;overscroll-behavior-inline:contain}
.team-carousel-card{display:flex;flex-direction:column;min-width:0;scroll-snap-align:start;text-decoration:none;color:var(--ink)}.carousel-photo{margin:0;background:var(--pale);height:280px;overflow:hidden;display:flex;align-items:flex-end;justify-content:center}
.carousel-photo img{display:block;width:auto;max-width:100%;height:100%;object-fit:contain;object-position:center bottom}.carousel-person-info{padding:22px 0 0}.carousel-person-info strong{display:block;font:25px/1.25 var(--serif)}.carousel-person-info>span{display:block;margin-top:9px;font-size:14px;line-height:1.6}.team-carousel-card:hover strong{text-decoration:underline;text-underline-offset:5px}
.carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px}.carousel-direction{display:flex;gap:10px}.carousel-controls button{font:600 13px/1.4 var(--sans);color:var(--ink);background:transparent;border:1px solid var(--line);padding:11px 16px;min-height:44px;cursor:pointer;border-radius:3px}.carousel-controls button:hover{background:#fff}.carousel-controls button[hidden]{display:none}
.team-carousel:has([data-carousel-next]:not([hidden])) .carousel-track{scrollbar-width:none}
.person-photo{display:flex;align-items:flex-end;justify-content:center;overflow:hidden}.person-photo img{display:block;width:auto;max-width:100%;height:280px;object-fit:contain;object-position:center bottom}
[data-photo-align="left"] :is(.person-photo,.carousel-photo){justify-content:flex-start}[data-photo-align="right"] :is(.person-photo,.carousel-photo){justify-content:flex-end}
[data-photo-align="both"] :is(.person-photo,.carousel-photo) img{width:100%;height:280px;object-fit:cover;object-position:center top}
.person-role{margin-top:12px;line-height:1.7}.family-tools{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-bottom:32px}.family-tools [hidden]{display:none}.family-tools p{margin:0}.family-tools .button{cursor:pointer;font:600 14px/1.5 var(--sans)}.family-tools .button:disabled{opacity:.55;cursor:default}
.registration-person{position:relative}.registration-optional{margin-top:23px}.registration-optional summary{cursor:pointer;font-size:14px;text-decoration:underline;text-underline-offset:4px}.registration-optional .patient-fields{padding-top:24px}.form-remove-person{display:block;margin-top:22px;padding:8px 0;background:transparent;border:0;color:var(--ink);font:14px/1.5 var(--sans);text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.form-single-column{grid-template-columns:1fr}.fieldset-intro{font-size:15px;margin-top:-8px;margin-bottom:25px;max-width:55ch}.patient-form .form-field textarea{min-height:155px}.patient-form .form-field label{min-height:52px}.form-single-column .form-field label{min-height:0;margin-bottom:12px}.registration-optional .form-field label{min-height:52px}
.footer-main{border-top:0}.patient-routes a strong{font:24px/1.2 var(--serif)}
@media(max-width:960px){.carousel-track{grid-auto-columns:calc((100% - 24px)/2)}}
@media(max-width:700px){.hero-video-inner{min-height:470px;padding-block:46px 95px}.carousel-track{grid-auto-columns:86%;gap:18px;scroll-padding-inline:0}.carousel-photo{height:290px}.carousel-photo img{height:290px}.carousel-controls{align-items:flex-start;flex-wrap:wrap}.carousel-controls button{padding:10px 13px}.carousel-person-info strong{font-size:24px}.person-photo img{height:300px}.patient-form .form-field label,.registration-optional .form-field label{min-height:0}.family-tools{align-items:flex-start;flex-direction:column;gap:12px}.family-tools .button{width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){.carousel-track{scroll-behavior:auto}}

/* V18: preserve Mike's complete portrait in the homepage carousel. */
.page-index .team-carousel-card[href="ons-team.html#mike"] .carousel-photo img{width:auto;height:100%;max-width:100%;object-fit:contain;object-position:center bottom}

/* Customer feedback, 27 October: two clear homepage actions. */
.home-hero-video .hero-copy .actions {
  gap: 14px;
}
.home-hero-video .hero-copy .actions .button {
  min-width: 200px;
  justify-content: center;
}
.home-hero-video .hero-copy .hero-register {
  background: rgba(21, 63, 67, .85);
  border-color: #bde1d8;
  color: #fff;
}
.home-hero-video .hero-copy .hero-register:hover {
  background: #e6f1ec;
  border-color: #e6f1ec;
  color: #153f43;
}
@media (max-width: 460px) {
  .home-hero-video .hero-copy .actions .button {
    min-width: 0;
  }
}
