/* =========================================================
   Smileatus Dentist theme styles
   Sections are core blocks with "sd-*" classes, so everything
   stays editable in the block editor.
   ========================================================= */
:root{
	--sd-midnight:#0C6170;--sd-green:#37BEB0;--sd-tiffany:#A4E5E0;--sd-tint:#EDFAF9;--sd-ink:#0a4a56;
	--sd-line:#cdeeeb;--sd-deep:#062f38;--sd-serif:'Fraunces',Georgia,serif;--sd-sans:'Manrope',system-ui,-apple-system,sans-serif;
	--sd-w:1180px;--sd-shadow:0 30px 60px -30px rgba(6,47,56,.35)
}
*,*:before,*:after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;font:400 1.02rem/1.7 var(--sd-sans);color:var(--sd-ink);background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:var(--sd-midnight)}
h1,h2,h3,h4,.wp-block-heading{font-family:var(--sd-serif);font-weight:400;color:var(--sd-midnight);line-height:1.12;letter-spacing:-.01em;margin:0}
h1{font-size:clamp(2.5rem,5.4vw,4.6rem);font-weight:300}
h2{font-size:clamp(2rem,4vw,3rem)}
h3{font-size:1.3rem}
p{margin:0}
:focus-visible{outline:3px solid var(--sd-green);outline-offset:3px}
.sd-skip{position:absolute;left:-999px;top:8px;z-index:200;background:#fff;padding:10px 16px}.sd-skip:focus{left:8px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}

/* ---------- layout ---------- */
.sd-wrap{max-width:calc(var(--sd-w) + 48px);margin-inline:auto;padding-inline:24px;width:100%}
.sd-main>*{margin-block:0}
.sd-main>.wp-block-group.alignfull,.sd-sec{width:100%;max-width:none}
.sd-sec{padding:110px 0;position:relative}
.sd-sec .sd-wrap>*+*{margin-block-start:1.1rem}
.sd-sec .sd-wrap>.wp-block-columns,.sd-sec .sd-wrap>.wp-block-group,.sd-sec .sd-wrap>.wp-block-gallery{margin-block-start:2.6rem}
.sd-sec .sd-wrap>.sd-eyebrow+*{margin-block-start:.5rem}
.sd-sec .sd-wrap>h2+p{margin-block-start:1rem}
.sd-tint{background:var(--sd-tint)}
.sd-fade-tint{background:linear-gradient(#fff,var(--sd-tint))}
.wp-block-columns{gap:clamp(2rem,6vw,5rem);margin-bottom:0}
.wp-block-column>*+*{margin-block-start:1.1rem}
.wp-block-column>.sd-eyebrow+*{margin-block-start:.5rem}
.wp-block-image{margin:0}
.wp-block-image img{display:block}

/* ---------- small text styles ---------- */
.sd-eyebrow{font-size:.8rem;font-weight:600;color:var(--sd-green);letter-spacing:.09em;text-transform:uppercase}
.sd-lead{font-size:1.12rem;max-width:540px;opacity:.92}
.sd-sig{font:italic 400 1.45rem var(--sd-serif);color:var(--sd-midnight)}
.sd-note{font-size:.85rem;opacity:.8}
.sd-note a{color:inherit}
.sd-intro{max-width:680px}
.sd-crumb{font-size:.85rem;color:var(--sd-tiffany);margin-bottom:1.6rem!important}.sd-crumb a{color:#fff;opacity:.75;text-decoration:none}.sd-crumb a:hover{opacity:1}

/* ---------- buttons (core Button block) ---------- */
.wp-block-buttons{gap:14px}
.sd-sec .wp-block-buttons{margin-top:1.8rem}
.wp-block-button__link,.sd-btn{display:inline-block;padding:15px 30px;font:600 .95rem/1.3 var(--sd-sans);text-decoration:none;border:1px solid var(--sd-midnight);border-radius:0;background:var(--sd-midnight);color:#fff;transition:.3s;cursor:pointer;text-align:center}
.wp-block-button__link:hover,.sd-btn:hover{background:var(--sd-green);border-color:var(--sd-green);color:#fff}
.wp-block-button.is-style-outline>.wp-block-button__link,.wp-block-button__link.is-style-outline{background:transparent;color:var(--sd-midnight);border:1px solid var(--sd-midnight);padding:15px 30px}
.wp-block-button.is-style-outline>.wp-block-button__link:hover{color:var(--sd-green);border-color:var(--sd-green);background:transparent}
.sd-hero .wp-block-button__link,.sd-final .wp-block-button__link,.sd-dark .wp-block-button__link{background:var(--sd-tiffany);border-color:var(--sd-tiffany);color:var(--sd-midnight)}
.sd-hero .wp-block-button__link:hover,.sd-final .wp-block-button__link:hover{background:var(--sd-green);border-color:var(--sd-green);color:#fff}
.sd-hero .is-style-outline>.wp-block-button__link,.sd-final .is-style-outline>.wp-block-button__link{background:transparent;color:#fff;border-color:var(--sd-tiffany)}
.sd-hero .is-style-outline>.wp-block-button__link:hover,.sd-final .is-style-outline>.wp-block-button__link:hover{color:#fff;border-color:#fff}
.sd-btn-light{background:var(--sd-tiffany);border-color:var(--sd-tiffany);color:var(--sd-midnight)}

/* ---------- header ---------- */
.sd-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--sd-line)}
.admin-bar .sd-header{top:32px}
@media(max-width:782px){.admin-bar .sd-header{top:0}}
.sd-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;height:80px}
.sd-logo{display:block;line-height:0}.sd-logo img,.sd-logo-img{height:58px;width:auto}
.sd-nav .sd-menu-list{display:flex;gap:32px;list-style:none;margin:0;padding:0}
.sd-nav li{position:relative}
.sd-nav a{text-decoration:none;font-weight:500;font-size:.93rem;color:var(--sd-midnight);position:relative;padding:8px 0;display:inline-block}
.sd-nav a:after{content:"";position:absolute;left:0;bottom:2px;height:1px;width:0;background:var(--sd-green);transition:.3s}
.sd-nav a:hover:after,.sd-nav .current-menu-item>a:after,.sd-nav .current_page_item>a:after{width:100%}
.sd-nav .sub-menu{position:absolute;top:100%;left:-16px;min-width:220px;background:#fff;border:1px solid var(--sd-line);box-shadow:var(--sd-shadow);list-style:none;margin:0;padding:10px 16px;opacity:0;visibility:hidden;transform:translateY(6px);transition:.2s}
.sd-nav li:hover>.sub-menu,.sd-nav li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.sd-header-cta{padding:13px 24px}
.sd-burger{display:none;background:none;border:0;width:46px;height:46px;cursor:pointer;padding:0}
.sd-burger i{display:block;width:24px;height:2px;background:var(--sd-midnight);margin:6px auto}
.sd-mobile{position:fixed;inset:0;z-index:120;background:var(--sd-midnight);display:flex;flex-direction:column;justify-content:center;padding:40px 32px;overflow-y:auto}
.sd-mobile[hidden]{display:none}
.sd-mobile ul{list-style:none;margin:0;padding:0}
.sd-mobile a{color:#fff;text-decoration:none}
.sd-mobile-list>li>a{font:300 2.1rem/1.2 var(--sd-serif);display:block;padding:8px 0}
.sd-mobile .sub-menu a{font-size:1.1rem;opacity:.8;padding:4px 0 4px 18px;display:block}
.sd-mobile-call{margin-top:22px;color:var(--sd-tiffany)!important;font-weight:500;font-size:1.1rem}
.sd-mobile .sd-btn{margin-top:18px}
.sd-mobile-close{position:absolute;top:18px;right:18px;background:none;border:0;color:#fff;font-size:2.4rem;width:52px;height:52px;cursor:pointer}
body.sd-lock{overflow:hidden}
@media(max-width:1020px){.sd-nav,.sd-header-cta{display:none}.sd-burger{display:block}.sd-bar{height:70px}.sd-logo img,.sd-logo-img{height:48px}}

/* ---------- hero ---------- */
.sd-hero{color:#fff;overflow:hidden;padding:70px 0 120px;background:radial-gradient(70% 80% at 75% 40%,#118a96 0,var(--sd-midnight) 45%,var(--sd-deep) 100%)}
.sd-hero:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(164,229,224,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(164,229,224,.07) 1px,transparent 1px);background-size:56px 56px;-webkit-mask:radial-gradient(70% 80% at 70% 45%,#000,transparent);mask:radial-gradient(70% 80% at 70% 45%,#000,transparent)}
.sd-hero:after{content:"";position:absolute;width:420px;height:420px;right:-120px;top:-160px;border:1px solid rgba(164,229,224,.3);border-radius:50%;pointer-events:none}
.sd-hero .sd-wrap{position:relative;z-index:1}
.sd-hero h1,.sd-hero h2,.sd-hero h3{color:#fff}
.sd-hero h1 em{color:var(--sd-tiffany);font-style:italic}
.sd-hero .sd-eyebrow{color:var(--sd-tiffany)}
.sd-hero-short{padding:70px 0 150px}
.sd-hero-short h1{max-width:780px}
.sd-hero-media{position:relative;display:flex;justify-content:center}
.sd-tooth-3d{position:relative;width:100%;max-width:520px;margin:0 auto!important;aspect-ratio:1/1.05;display:grid;place-items:center}
.sd-tooth-3d:before{content:"";position:absolute;inset:6%;border-radius:50%;background:radial-gradient(circle,rgba(164,229,224,.55),rgba(55,190,176,.15) 55%,transparent 70%)}
.sd-tooth-3d img{position:relative;max-height:520px;width:auto!important;filter:drop-shadow(0 30px 30px rgba(0,0,0,.35));animation:sd-float 6s ease-in-out infinite}
.sd-tooth-3d canvas{position:absolute;inset:0;width:100%!important;height:100%!important;cursor:grab}
.sd-tooth-3d.is-3d img{opacity:0}
.sd-arch-portrait{position:relative;max-width:440px;width:100%;margin:0 auto!important}
.sd-arch-portrait img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top;border-radius:999px 999px 18px 18px;border:1px solid rgba(164,229,224,.4);background:linear-gradient(160deg,var(--sd-tiffany),var(--sd-green))}
.sd-arch-portrait:before{content:"";position:absolute;inset:-18px 18px 18px -18px;border:1px solid var(--sd-tiffany);border-radius:999px 999px 18px 18px;opacity:.5;pointer-events:none}
.sd-badge{position:absolute;left:0;bottom:46px;background:#fff;color:var(--sd-midnight);padding:16px 22px;box-shadow:0 24px 50px rgba(0,0,0,.25);border-left:3px solid var(--sd-green);font-size:.78rem;line-height:1.5;letter-spacing:2px;color:var(--sd-green);animation:sd-float 5s ease-in-out infinite}
.sd-badge strong{font:400 1.9rem/1 var(--sd-serif);color:var(--sd-midnight);letter-spacing:0;display:block}
.sd-orb{position:relative;width:min(420px,100%);aspect-ratio:1;margin:0 auto!important;border-radius:50%;background:radial-gradient(circle at 40% 35%,rgba(255,255,255,.95),var(--sd-tiffany) 62%,var(--sd-green));box-shadow:0 40px 90px -30px rgba(0,0,0,.5);display:grid;place-items:center}
.sd-orb:before{content:"";position:absolute;inset:-22px;border:1px dashed rgba(164,229,224,.45);border-radius:50%;animation:sd-spin 60s linear infinite}
.sd-orb img{width:56%!important;height:auto;filter:drop-shadow(0 22px 22px rgba(6,47,56,.3));animation:sd-float 6s ease-in-out infinite}
@keyframes sd-float{50%{transform:translateY(-12px)}}
@keyframes sd-spin{to{transform:rotate(360deg)}}

/* ---------- icons (mask images defined at the end) ---------- */
.sd-trust-item:before,.sd-card:before,.sd-box:before,.sd-quick-item:before,.sd-service:before{content:"";display:block;background:currentColor;-webkit-mask:var(--sd-ic) center/contain no-repeat;mask:var(--sd-ic) center/contain no-repeat}

/* ---------- trust bar + marquee ---------- */
.sd-trust{background:var(--sd-midnight);color:#fff;padding:0}
.sd-trust .wp-block-columns{gap:0;margin:0!important}
.sd-trust .wp-block-column{border-right:1px solid rgba(164,229,224,.25)}
.sd-trust .wp-block-column:last-child{border:0}
.sd-trust-item{display:flex;align-items:center;justify-content:center;gap:14px;padding:30px 20px;font:400 1.15rem var(--sd-serif)}
.sd-trust-item:before{width:30px;height:30px;color:var(--sd-tiffany)}
.sd-marquee{overflow:hidden;background:#fff;border-bottom:1px solid var(--sd-line);padding:20px 0;margin:0!important}
.sd-marquee-list{display:flex;gap:56px;list-style:none;margin:0;padding:0;width:max-content;animation:sd-mq 40s linear infinite}
.sd-marquee-list li{font:300 1.7rem var(--sd-serif);color:var(--sd-midnight);white-space:nowrap}
.sd-marquee-list li:nth-child(even){color:var(--sd-green)}
@keyframes sd-mq{to{transform:translateX(-50%)}}

/* ---------- welcome / meet / features ---------- */
.sd-feats{gap:28px!important;margin:2rem 0!important}
.sd-feat{border-top:1px solid var(--sd-green);padding-top:16px}
.sd-feat h3{font-size:1.15rem}.sd-feat p{font-size:.95rem;margin-top:.3rem!important}
.sd-photo-tall img{width:100%;aspect-ratio:4/5;object-fit:cover}
.sd-portrait-frame{position:relative}
.sd-portrait-frame:before{content:"";position:absolute;inset:22px -22px -22px 22px;border:1px solid var(--sd-green)}
.sd-portrait-frame img{position:relative;width:100%;aspect-ratio:4/4.6;object-fit:cover;object-position:top}
.sd-cols3>.wp-block-column{border-left:1px solid var(--sd-line);padding-left:36px}
.sd-cols3>.wp-block-column:first-child{border:0;padding-left:0}
.sd-arch img{width:100%;aspect-ratio:4/5;object-fit:contain;padding:8% 10%;border-radius:999px 999px 0 0;background:linear-gradient(170deg,var(--sd-tint),var(--sd-tiffany) 60%,var(--sd-green))}
.sd-rows{list-style:none;padding:0;margin:1.6rem 0 0!important}
.sd-rows li{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--sd-line);font-size:.95rem}
.sd-rows li strong{font:400 1.18rem var(--sd-serif);color:var(--sd-midnight)}
.sd-tint .sd-rows li{border-color:var(--sd-tiffany)}

/* ---------- home service cards ---------- */
.sd-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.sd-cards>*{margin:0!important}
.sd-card{border:1px solid var(--sd-line);background:#fff;padding:36px 32px;position:relative;transition:.35s}
.sd-card:before{width:34px;height:34px;color:var(--sd-green);margin-bottom:22px}
.sd-card:hover{background:var(--sd-tint);border-color:var(--sd-green);transform:translateY(-4px)}
.sd-card h3 a{text-decoration:none;color:inherit}
.sd-card h3 a:after{content:"";position:absolute;inset:0}
.sd-card p{font-size:.93rem;margin-top:.6rem}
.sd-more,.sd-more a{font-weight:600;font-size:.88rem;color:var(--sd-midnight);text-decoration:none}

/* ---------- gallery ---------- */
.sd-gallery.wp-block-gallery.has-nested-images{display:grid!important;grid-template-columns:1.5fr 1fr 1fr;grid-template-rows:250px 250px;gap:16px!important}
.sd-gallery.wp-block-gallery.has-nested-images figure.wp-block-image{width:auto!important;margin:0!important;position:relative;overflow:hidden;background:var(--sd-tint)}
.sd-gallery.wp-block-gallery.has-nested-images figure.wp-block-image:first-child{grid-row:span 2}
.sd-gallery.wp-block-gallery figure.wp-block-image img{width:100%!important;height:100%!important;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.sd-gallery.wp-block-gallery figure.wp-block-image:hover img{transform:scale(1.06)}
.sd-gallery.wp-block-gallery.has-nested-images figure.wp-block-image figcaption,.sd-caption-overlay figcaption{position:absolute;left:0;right:0;bottom:0;margin:0;padding:34px 18px 14px;color:#fff;font:500 .95rem var(--sd-sans);text-align:left;background:linear-gradient(transparent,rgba(6,47,56,.8));max-height:none;overflow:visible}
.sd-caption-overlay{position:relative;overflow:hidden}
.sd-caption-overlay img{width:100%;aspect-ratio:16/10;object-fit:cover}
.sd-shadow{box-shadow:0 40px 70px -40px rgba(6,47,56,.55)}
@media(max-width:980px){.sd-gallery.wp-block-gallery.has-nested-images{grid-template-columns:1fr 1fr;grid-template-rows:280px 200px 200px}.sd-gallery.wp-block-gallery.has-nested-images figure.wp-block-image:first-child{grid-column:span 2;grid-row:auto}.sd-gallery.wp-block-gallery.has-nested-images figure.wp-block-image:nth-child(6){grid-column:span 2}}
@media(max-width:520px){.sd-gallery.wp-block-gallery.has-nested-images{grid-template-rows:230px 170px 170px;gap:10px!important}}

/* ---------- reviews ---------- */
.sd-head-row{align-items:flex-end!important}
.sd-head-row>.wp-block-column:last-child{text-align:right}
.sd-score{font-size:.82rem;color:var(--sd-green);letter-spacing:3px;line-height:1.6}
.sd-score strong{font:300 3.4rem/1 var(--sd-serif);color:var(--sd-midnight);letter-spacing:0;margin-right:8px;vertical-align:middle}
.sd-reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.sd-reviews>*{margin:0!important}
.sd-review{border:1px solid var(--sd-line);background:#fff;padding:32px;display:flex;flex-direction:column;position:relative}
.sd-review.is-google:after{content:"";position:absolute;top:30px;right:28px;width:22px;height:22px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%23FFC107' d='M43.6 20.1H42V20H24v8h11.3C33.7 32.7 29.2 36 24 36c-6.6 0-12-5.4-12-12s5.4-12 12-12c3.1 0 5.8 1.2 7.9 3.1l5.7-5.7C34 6.1 29.3 4 24 4 12.9 4 4 12.9 4 24s8.9 20 20 20 20-8.9 20-20c0-1.3-.1-2.6-.4-3.9z'/%3E%3Cpath fill='%23FF3D00' d='m6.3 14.7 6.6 4.8C14.7 15.1 19 12 24 12c3.1 0 5.8 1.2 7.9 3.1l5.7-5.7C34 6.1 29.3 4 24 4 16.3 4 9.7 8.3 6.3 14.7z'/%3E%3Cpath fill='%234CAF50' d='M24 44c5.2 0 9.9-2 13.4-5.2l-6.2-5.2C29.2 35.1 26.7 36 24 36c-5.2 0-9.6-3.3-11.3-7.9l-6.5 5C9.5 39.6 16.2 44 24 44z'/%3E%3Cpath fill='%231976D2' d='M43.6 20.1H42V20H24v8h11.3c-.8 2.2-2.2 4.2-4.1 5.6l6.2 5.2C37 39.2 44 34 44 24c0-1.3-.1-2.6-.4-3.9z'/%3E%3C/svg%3E") center/contain no-repeat}
.sd-stars{color:var(--sd-green);letter-spacing:4px}
.sd-review-text{font:300 1.12rem/1.55 var(--sd-serif);color:var(--sd-midnight);margin-top:14px!important;flex:1}
.sd-review-name{margin-top:20px!important;font-size:.92rem;color:var(--sd-midnight)}
.sd-review-src{font-size:.78rem;opacity:.7;margin-top:0!important}
.sd-reviews.is-slider{display:block}
.sd-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding-bottom:4px}
.sd-track::-webkit-scrollbar{display:none}
.sd-track>.sd-review{flex:0 0 calc((100% - 44px)/3);scroll-snap-align:start;margin:0!important;transition:transform .35s,box-shadow .35s}
.sd-track>.sd-review:hover{transform:translateY(-4px);box-shadow:0 18px 40px -22px rgba(12,97,112,.45)}
.sd-ctl{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:28px}
.sd-ctl button.sd-nav-btn{width:46px;height:46px;border-radius:50%;border:1px solid var(--sd-line);background:#fff;color:var(--sd-midnight);font-size:1.1rem;cursor:pointer;transition:.25s}
.sd-ctl button.sd-nav-btn:hover{background:var(--sd-midnight);color:#fff}
.sd-dots{display:flex;gap:8px}
.sd-dots button{width:8px;height:8px;border-radius:8px;border:0;padding:0;background:var(--sd-line);cursor:pointer;transition:.3s}
.sd-dots button.on{width:26px;background:var(--sd-green)}
@media(max-width:980px){.sd-track>.sd-review{flex-basis:calc((100% - 22px)/2)}.sd-reviews{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.sd-track>.sd-review{flex-basis:88%}.sd-reviews{grid-template-columns:1fr}.sd-head-row>.wp-block-column:last-child{text-align:left}}

/* ---------- details / FAQ (core Details block) ---------- */
.wp-block-details{background:#fff;border:1px solid var(--sd-line);margin:0 0 12px!important;padding:0}
.wp-block-details summary{cursor:pointer;list-style:none;padding:20px 24px;font:400 1.15rem/1.35 var(--sd-serif);color:var(--sd-midnight);display:flex;justify-content:space-between;gap:20px}
.wp-block-details summary::-webkit-details-marker{display:none}
.wp-block-details summary:after{content:"+";font:300 1.6rem/1 var(--sd-sans);color:var(--sd-green);transition:.3s}
.wp-block-details[open] summary:after{transform:rotate(45deg)}
.wp-block-details>:not(summary){padding:0 24px 22px;margin:0}

/* ---------- appointment + forms ---------- */
.sd-form-card{background:#fff;border:1px solid var(--sd-line);padding:38px;box-shadow:0 30px 60px -36px rgba(6,47,56,.35)}
.sd-form .sd-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sd-form .sd-field{margin:0 0 16px;border:0;padding:0;min-width:0}
.sd-form label,.sd-form legend{display:block;font-size:.8rem;font-weight:600;color:var(--sd-midnight);margin-bottom:6px;padding:0}
.sd-form label i{color:var(--sd-green);font-style:normal}
.sd-form input:not([type=radio]):not([type=checkbox]),.sd-form select,.sd-form textarea{width:100%;font:400 1rem var(--sd-sans);color:var(--sd-ink);padding:13px 14px;border:1px solid var(--sd-line);background:var(--sd-tint);border-radius:0;transition:.2s;-webkit-appearance:none;appearance:none}
.sd-form select{background-image:linear-gradient(45deg,transparent 50%,var(--sd-midnight) 50%),linear-gradient(135deg,var(--sd-midnight) 50%,transparent 50%);background-position:calc(100% - 20px) 55%,calc(100% - 15px) 55%;background-size:5px 5px;background-repeat:no-repeat;padding-right:40px}
.sd-form input:focus,.sd-form select:focus,.sd-form textarea:focus{outline:0;border-color:var(--sd-green);background:#fff;box-shadow:0 0 0 3px rgba(55,190,176,.18)}
.sd-form .sd-err{display:none;color:#b3261e;font-size:.78rem;margin-top:4px}
.sd-form .sd-field.bad input,.sd-form .sd-field.bad select,.sd-form .sd-field.bad textarea{border-color:#b3261e}
.sd-form .sd-field.bad .sd-err{display:block}
.sd-seg{display:flex;gap:8px;flex-wrap:wrap}
.sd-seg label{flex:1;min-width:110px;margin:0;cursor:pointer;position:relative}
.sd-seg input{position:absolute;opacity:0;pointer-events:none}
.sd-seg span{display:block;text-align:center;padding:11px 10px;border:1px solid var(--sd-line);font-weight:500;font-size:.9rem;color:var(--sd-midnight);transition:.2s}
.sd-seg input:checked+span{background:var(--sd-midnight);border-color:var(--sd-midnight);color:#fff}
.sd-seg input:focus-visible+span{outline:3px solid var(--sd-green);outline-offset:2px}
.sd-consent{display:flex!important;gap:10px;align-items:flex-start;font-weight:400!important;font-size:.82rem!important;margin:6px 0 0!important}
.sd-consent input{width:18px;height:18px;margin-top:3px;accent-color:var(--sd-midnight);flex:none}
.sd-consent.bad{color:#b3261e}
.sd-submit{width:100%;margin-top:20px;padding:17px;font-size:1rem}
.sd-submit[disabled]{opacity:.6;cursor:wait}
.sd-fine{text-align:center;font-size:.76rem;opacity:.7;margin-top:10px!important}
.sd-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.sd-done{display:none;text-align:center;padding:24px 0 6px}
.sd-form.sent>*:not(.sd-done){display:none!important}
.sd-form.sent .sd-done{display:block}
.sd-tick{width:72px;height:72px;margin:0 auto 18px;border-radius:50%;background:var(--sd-tint);color:var(--sd-green);display:grid;place-items:center;font-size:2rem}
.sd-done h3{font-size:1.7rem;margin-bottom:8px}

/* ---------- visit / contact details / map ---------- */
.sd-details{margin:0}
.sd-details dt{font-weight:600;color:var(--sd-midnight);margin-top:16px}
.sd-details dd{margin:4px 0 0}
.sd-details dd a{font-weight:600;color:var(--sd-midnight);text-decoration:none}
.sd-hours{width:100%;max-width:380px;border-collapse:collapse;font-size:.95rem}
.sd-hours th,.sd-hours td{padding:9px 0;border-bottom:1px dashed var(--sd-line);text-align:left;font-weight:400}
.sd-hours th{font-weight:600;color:var(--sd-midnight)}
.sd-hours td{text-align:right}
.sd-hours tr.today th,.sd-hours tr.today td{color:var(--sd-green);font-weight:600}
.sd-map{position:relative;width:100%;min-height:340px;height:100%;background:var(--sd-tint);border:1px solid var(--sd-line)}
.sd-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.7) hue-rotate(-10deg)}
.sd-visit .wp-block-column>.wp-block-image+.wp-block-shortcode,.sd-visit .sd-map{margin-top:16px}
.sd-address p{display:flex;gap:12px;align-items:flex-start;margin:0 0 10px}
.sd-address a{font-weight:600;color:var(--sd-midnight);text-decoration:none}
.sd-svg{width:24px;height:24px;stroke:var(--sd-green);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}
.sd-boxed{border:1px solid var(--sd-line);background:#fff;gap:0!important}
.sd-boxed>.wp-block-column{padding:40px}
.sd-boxed>.sd-visit-map,.sd-boxed>.sd-loc-map{padding:0;min-height:380px;display:flex}
.sd-boxed>.sd-loc-map>*{flex:1}
.sd-boxed>.sd-visit-map>*{flex:1}
.sd-boxed .sd-map{border:0}
.sd-visit-box{padding-top:0}
.sd-loc-info>.wp-block-image{margin:-40px -40px 22px!important}
.sd-loc-info>.wp-block-image img{width:100%;aspect-ratio:16/8;object-fit:cover}
@media(max-width:781px){.sd-boxed>.wp-block-column{padding:26px}.sd-loc-info>.wp-block-image{margin:-26px -26px 18px!important}.sd-boxed>.sd-visit-map,.sd-boxed>.sd-loc-map{min-height:280px}}

/* ---------- final CTA ---------- */
.sd-final{background:var(--sd-midnight);color:#fff;text-align:center;overflow:hidden}
.sd-final:before,.sd-final:after{content:"";position:absolute;border:1px solid rgba(164,229,224,.25);border-radius:50%;width:520px;height:520px;left:-160px;top:-200px;pointer-events:none}
.sd-final:after{left:auto;right:-180px;top:auto;bottom:-260px}
.sd-final h2{color:#fff}
.sd-final p{opacity:.85}
.sd-final .wp-block-buttons{justify-content:center}

/* ---------- about: stats, story, skills, timeline, process ---------- */
.sd-stats{padding:0;margin-top:-56px!important;z-index:2}
.sd-stat-row{background:#fff;border:1px solid var(--sd-line);box-shadow:var(--sd-shadow);gap:0!important;margin:0!important}
.sd-stat-row>.wp-block-column{padding:28px 20px;text-align:center;border-right:1px solid var(--sd-line)}
.sd-stat-row>.wp-block-column:last-child{border:0}
.sd-stat-row h3{font-size:1.9rem}
.sd-stat-row p{font-size:.86rem;margin-top:.3rem!important}
.sd-story p+p{margin-top:1rem}
.sd-cols4{gap:20px!important;flex-wrap:wrap!important}
.sd-cols4>.wp-block-column{flex:1 1 0;min-width:220px}
.sd-box{background:#fff;border:1px solid var(--sd-line);padding:32px 28px;transition:.35s}
.sd-box:before{width:36px;height:36px;color:var(--sd-green);margin-bottom:18px}
.sd-box:hover{border-color:var(--sd-green);transform:translateY(-4px)}
.sd-box h3{font-size:1.25rem}
.sd-box p{font-size:.93rem}
.sd-box .wp-block-details{border:0;border-top:1px solid var(--sd-line);margin:0!important;background:none}
.sd-box .wp-block-details summary{padding:12px 0;font:600 .92rem var(--sd-sans)}
.sd-box .wp-block-details summary:after{font-size:1.2rem}
.sd-box .wp-block-details>:not(summary){padding:0 0 14px;font-size:.88rem}
.sd-checks{list-style:none;padding:0;margin:14px 0 0!important}
.sd-checks li{position:relative;padding-left:24px;font-size:.92rem;margin:7px 0}
.sd-checks li:before{content:"";position:absolute;left:2px;top:.55em;width:10px;height:6px;border-left:2px solid var(--sd-green);border-bottom:2px solid var(--sd-green);transform:rotate(-45deg)}
.sd-skills .sd-wrap>h2,.sd-skills .sd-wrap>.sd-eyebrow,.sd-skills .sd-intro,.sd-why .sd-wrap>h2,.sd-why .sd-wrap>.sd-eyebrow{text-align:center;margin-inline:auto}
.sd-chips{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:1.6rem 0 0!important}
.sd-chips li{border:1px solid var(--sd-line);padding:7px 15px;font-size:.86rem;font-weight:500}
.sd-timeline{list-style:none;padding:0 0 0 30px;margin:0;border-left:1px solid var(--sd-tiffany)}
.sd-timeline li{position:relative;padding:0 0 30px;font-size:.93rem}
.sd-timeline li:last-child{padding-bottom:0}
.sd-timeline li:before{content:"";position:absolute;left:-38px;top:4px;width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid var(--sd-green)}
.sd-timeline em{display:block;font-style:normal;font-size:.74rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--sd-green)}
.sd-timeline strong{display:block;font:400 1.15rem var(--sd-serif);color:var(--sd-midnight);margin:2px 0}
.sd-dark,.sd-process{background:var(--sd-midnight);color:#e3f6f4}
.sd-dark h2,.sd-dark h3{color:#fff}
.sd-dark .sd-eyebrow{color:var(--sd-tiffany)}
.sd-steps{counter-reset:sd;gap:0!important}
.sd-step{padding:0 28px;border-left:1px solid rgba(164,229,224,.25)}
.sd-step:first-child{padding-left:0;border:0}
.sd-step:before{counter-increment:sd;content:"0" counter(sd);font:300 3.2rem/1 var(--sd-serif);color:var(--sd-tiffany);display:block;margin-bottom:14px}
.sd-step p{font-size:.93rem;opacity:.85}

/* ---------- services page ---------- */
.sd-filter{display:flex;gap:6px;flex-wrap:wrap;background:var(--sd-tint);padding:6px;justify-content:flex-end;width:max-content;max-width:100%;margin-left:auto}
.sd-filter button{border:0;background:none;padding:11px 18px;font:600 .88rem var(--sd-sans);color:var(--sd-midnight);cursor:pointer;transition:.25s;white-space:nowrap}
.sd-filter button b{font-weight:600;font-size:.72rem;background:#fff;padding:2px 7px;margin-left:4px;border-radius:10px;color:var(--sd-green)}
.sd-filter button[aria-selected=true]{background:var(--sd-midnight);color:#fff}
.sd-filter button[aria-selected=true] b{background:var(--sd-green);color:#fff}
.sd-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.sd-service-grid>*{margin:0!important}
.sd-service{border:1px solid var(--sd-line);background:#fff;padding:0 30px 30px;display:flex;flex-direction:column;position:relative;transition:transform .35s,box-shadow .35s;scroll-margin-top:110px}
.sd-service>*{margin:0}
.sd-service>*+*{margin-top:.8rem}
.sd-service:hover{transform:translateY(-6px);box-shadow:0 26px 50px -28px rgba(12,97,112,.5)}
.sd-service:before{display:none}
.sd-service-img{margin:0 -30px 18px!important;aspect-ratio:16/9;overflow:hidden;background:radial-gradient(circle at 50% 40%,#fff,var(--sd-tiffany) 85%)}
.sd-service-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.sd-service:hover .sd-service-img img{transform:scale(1.05)}
.sd-tag{font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--sd-green)}
.sd-service h3{font-size:1.5rem;margin-top:.4rem!important}
.sd-service>p{font-size:.95rem}
.sd-service .wp-block-details{border:0;border-top:1px solid var(--sd-line);background:none;margin:14px 0 0!important}
.sd-service .wp-block-details summary{padding:14px 0;font:600 .9rem var(--sd-sans)}
.sd-service .wp-block-details>:not(summary){padding:0 0 14px;font-size:.9rem}
.sd-service-btn{margin-top:auto!important;padding-top:16px}
.sd-service-btn .wp-block-button{width:100%}
.sd-service-btn .wp-block-button__link{width:100%;padding:13px}
.sd-service.hide{display:none}
.sd-service.flash{box-shadow:0 0 0 3px var(--sd-green)}
.sd-unsure{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px 30px;padding:38px 44px;background:linear-gradient(120deg,var(--sd-tint),#fff);border:1px solid var(--sd-line);margin-top:46px!important}
.sd-unsure>*{margin:0!important}
.sd-unsure h3{font-size:1.6rem;grid-column:1}
.sd-unsure p{grid-column:1;max-width:620px}
.sd-unsure .wp-block-buttons{grid-column:2;grid-row:1/3;margin:0!important}
@media(max-width:980px){.sd-cards,.sd-service-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.sd-cards,.sd-service-grid{grid-template-columns:1fr}.sd-unsure{grid-template-columns:1fr;padding:28px 24px}.sd-unsure .wp-block-buttons{grid-column:1;grid-row:auto;margin-top:14px!important}.sd-filter{width:100%;flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;margin-left:0}.sd-service{padding:0 24px 26px}.sd-service-img{margin:0 -24px 16px!important}}

/* ---------- contact page ---------- */
.sd-quick{padding:0;margin-top:-74px!important;z-index:2}
.sd-quick-row{background:#fff;border:1px solid var(--sd-line);box-shadow:var(--sd-shadow);gap:0!important;margin:0!important}
.sd-quick-row>.wp-block-column{border-right:1px solid var(--sd-line)}
.sd-quick-row>.wp-block-column:last-child{border:0}
.sd-quick-item{display:flex;align-items:center;gap:16px;padding:28px 26px;height:100%;transition:.3s}
.sd-quick-item:before{width:52px;height:52px;flex:none;color:var(--sd-green);-webkit-mask-size:26px;mask-size:26px;background-color:var(--sd-green);box-shadow:inset 0 0 0 52px var(--sd-tint)}
.sd-quick-item a{text-decoration:none;font:400 1.2rem var(--sd-serif);color:var(--sd-midnight)}
.sd-quick-item a:after{content:"";position:absolute;inset:0}
.sd-quick-row>.wp-block-column{position:relative}
.sd-quick-item small{display:block;font:600 .74rem var(--sd-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--sd-green)}
.sd-quick-item:hover{background:var(--sd-tint)}
.sd-hours-card{background:#fff;border:1px solid var(--sd-line);padding:28px 30px;margin-top:2rem!important;overflow:hidden}
.sd-hours-card>*+*{margin-top:1rem}
.sd-hours-card>.wp-block-image{margin:-28px -30px 22px!important}
.sd-hours-card .sd-hours{max-width:none}
.sd-bh p+p{margin-top:1rem}
@media(max-width:781px){.sd-quick-row>.wp-block-column{border-right:0;border-bottom:1px solid var(--sd-line)}.sd-hours-card{padding:22px 20px}.sd-hours-card>.wp-block-image{margin:-22px -20px 18px!important}}

/* ---------- footer ---------- */
.sd-footer{background:#08424d;color:#cfeeed;padding:80px 0 30px;font-size:.92rem}
.sd-footer-grid{display:grid;grid-template-columns:1.3fr .8fr 1fr 1.3fr;gap:44px}
.sd-footer h4{font:400 1.1rem var(--sd-serif);color:#fff;margin:0 0 14px}
.sd-footer a{color:inherit;text-decoration:none}.sd-footer a:hover{color:var(--sd-tiffany)}
.sd-footer-list{list-style:none;margin:0;padding:0}.sd-footer-list li{margin:6px 0}
.sd-logo-footer img,.sd-logo-footer .sd-logo-img{height:64px;background:#fff;padding:6px 14px;margin-bottom:14px}
.sd-footer-phone{font:400 1.3rem var(--sd-serif);color:#fff!important;display:inline-block;margin-top:12px}
.sd-footer .sd-hours{font-size:.84rem;margin-top:10px}
.sd-footer .sd-hours th,.sd-footer .sd-hours td{color:#cfeeed;border-color:rgba(164,229,224,.18);padding:5px 0}
.sd-footer .sd-hours tr.today th,.sd-footer .sd-hours tr.today td{color:var(--sd-tiffany)}
.sd-legal{border-top:1px solid rgba(164,229,224,.2);margin-top:50px;padding-top:24px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:.84rem}
@media(max-width:980px){.sd-footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.sd-footer-grid{grid-template-columns:1fr}}

/* ---------- mobile booking bar ---------- */
.sd-mobilebar{display:none}
@media(max-width:1020px){
	.sd-mobilebar{display:flex;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:60;gap:10px;transform:translateY(160%);transition:transform .35s}
	.sd-mobilebar.on{transform:none}
	.sd-mobilebar a{text-align:center;padding:15px 20px;font-weight:600;text-decoration:none;box-shadow:0 14px 30px -12px rgba(6,47,56,.55)}
	.sd-mb-book{flex:1;background:var(--sd-midnight);color:#fff}
	.sd-mb-call{background:#fff;color:var(--sd-midnight);border:1px solid var(--sd-line)}
	.sd-footer{padding-bottom:100px}
}

/* ---------- booking modal ---------- */
.sd-modal{border:0;padding:0;margin:auto;width:min(640px,calc(100% - 32px));max-height:calc(100dvh - 40px);background:#fff;color:var(--sd-ink);box-shadow:0 40px 90px -30px rgba(6,47,56,.6);overflow:hidden}
.sd-modal[open]{display:flex;flex-direction:column;animation:sd-in .35s cubic-bezier(.2,.8,.2,1)}
.sd-modal::backdrop{background:rgba(6,47,56,.62);backdrop-filter:blur(4px)}
@keyframes sd-in{from{opacity:0;transform:translateY(24px) scale(.98)}}
.sd-modal-head{position:relative;padding:28px 34px 24px;background:radial-gradient(90% 140% at 90% 0,#118a96 0,var(--sd-midnight) 55%,var(--sd-deep));color:#fff}
.sd-modal-head .sd-eyebrow{color:var(--sd-tiffany);margin-bottom:6px;padding-right:50px}
.sd-modal-head h2{color:#fff;font-size:clamp(1.6rem,4vw,2.1rem);font-weight:300;padding-right:50px}
.sd-modal-head p:last-of-type{opacity:.85;font-size:.92rem;margin-top:6px}
.sd-modal-x{position:absolute;top:14px;right:14px;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:1.6rem;line-height:1;cursor:pointer}
.sd-modal-x:hover{background:rgba(255,255,255,.25)}
.sd-modal-body{padding:26px 34px 30px;overflow-y:auto;overscroll-behavior:contain}
@media(max-width:600px){
	.sd-modal{width:100%;max-width:100%;max-height:94dvh;margin:auto 0 0}
	.sd-modal[open]{animation:sd-up .35s cubic-bezier(.2,.8,.2,1)}
	@keyframes sd-up{from{transform:translateY(100%)}}
	.sd-modal-head{padding:22px 22px 18px}.sd-modal-body{padding:20px 22px calc(24px + env(safe-area-inset-bottom))}
	.sd-form .sd-row{grid-template-columns:1fr;gap:0}
	.sd-form-card{padding:26px 20px}
}

/* ---------- ordinary pages, posts ---------- */
.sd-page-head{background:var(--sd-tint);padding:70px 0 50px;border-bottom:1px solid var(--sd-line)}
.sd-page-head h1{font-size:clamp(2.2rem,4.6vw,3.6rem)}
.sd-prose{max-width:820px;padding-block:56px}
.sd-prose>*+*{margin-top:1.1em}
.sd-prose h2{font-size:clamp(1.6rem,3vw,2.2rem);margin-top:1.8em}
.sd-prose h3{margin-top:1.5em}
.sd-prose ul,.sd-prose ol{padding-left:1.3em}
.sd-featured{width:100%;height:auto;margin-bottom:24px}
.sd-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;padding:56px 0}
.sd-post-card{border:1px solid var(--sd-line);padding:0 0 26px;background:#fff}
.sd-post-card>*{margin:12px 24px 0}.sd-post-card>a:first-child{margin:0;display:block}.sd-post-card img{width:100%;height:220px;object-fit:cover;display:block}
.sd-post-card h2{font-size:1.4rem}.sd-post-card h2 a{text-decoration:none;color:inherit}
.navigation.pagination{padding-bottom:56px}.nav-links{display:flex;gap:8px;flex-wrap:wrap}.page-numbers{padding:8px 14px;border:1px solid var(--sd-line);text-decoration:none}.page-numbers.current{background:var(--sd-midnight);color:#fff}
@media(max-width:980px){.sd-posts{grid-template-columns:1fr 1fr}}@media(max-width:600px){.sd-posts{grid-template-columns:1fr}}
.sd-comments{margin-top:40px}.comment-form input:not([type=submit]):not([type=checkbox]),.comment-form textarea{width:100%;padding:12px;border:1px solid var(--sd-line)}
.comment-form .submit{background:var(--sd-midnight);color:#fff;border:0;padding:14px 26px;cursor:pointer}

/* ---------- reveal animation (only when JS is running) ---------- */
.sd-js .sd-rv{opacity:0;transform:translateY(32px);transition:opacity .9s,transform .9s cubic-bezier(.2,.7,.2,1)}
.sd-js .sd-rv.in{opacity:1;transform:none}

/* ---------- responsive ---------- */
@media(max-width:1100px){
	.sd-cols4>.wp-block-column{flex-basis:calc(50% - 10px)!important;min-width:0}
	.sd-stat-row,.sd-steps{flex-wrap:wrap!important}
	.sd-stat-row>.wp-block-column,.sd-steps>.wp-block-column{flex-basis:50%!important}
	.sd-stat-row>.wp-block-column:nth-child(2){border-right:0}
	.sd-stat-row>.wp-block-column:nth-child(-n+2){border-bottom:1px solid var(--sd-line)}
	.sd-steps{gap:34px 0!important}.sd-step:nth-child(3){padding-left:0;border:0}
}
@media(max-width:781px){
	.sd-sec{padding:72px 0}
	.sd-hero{padding:46px 0 90px}
	.sd-hero-short{padding:46px 0 120px}
	.sd-hero-cols{gap:46px}
	.sd-trust .wp-block-column{border-right:0;border-bottom:1px solid rgba(164,229,224,.25)}
	.sd-trust-item{padding:18px}
	.sd-cols3>.wp-block-column{border-left:0;border-top:1px solid var(--sd-line);padding:22px 0 0}
	.sd-cols3>.wp-block-column:first-child{border:0;padding-top:0}
	.sd-portrait-frame:before{inset:14px -10px -14px 14px}
	.sd-badge{left:-6px;bottom:24px}
	.sd-arch-portrait{max-width:340px}
	.sd-arch-portrait:before{inset:-12px 12px 12px -12px}
	.sd-cols4>.wp-block-column{flex-basis:100%!important}
	.sd-rows li{flex-direction:column;gap:2px}
}
@media(max-width:560px){
	.sd-wrap{padding-inline:18px}
	.sd-sec{padding:60px 0}
	.wp-block-buttons>.wp-block-button{flex:1 1 100%}
	.wp-block-buttons>.wp-block-button>.wp-block-button__link{width:100%}
	.sd-stat-row>.wp-block-column{padding:20px 12px}
	.sd-stat-row h3{font-size:1.45rem}
	.sd-steps>.wp-block-column{flex-basis:100%!important;padding:0!important;border:0!important}
	.sd-quick-item{padding:20px}
	.sd-review{padding:26px}
	.sd-marquee-list li{font-size:1.35rem}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.sd-js .sd-rv{opacity:1;transform:none}}

/* ---------- icon masks ---------- */
.sd-i-spark{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3l2.5 6L21 12l-6.5 3L12 21l-2.5-6L3 12l6.5-3z%22/%3E%3C/svg%3E")}
.sd-i-heart{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 21C5 15 3 11 3 8a5 5 0 0 1 9-3 5 5 0 0 1 9 3c0 3-2 7-9 13z%22/%3E%3C/svg%3E")}
.sd-i-pin{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 21s-6.5-6.2-6.5-11a6.5 6.5 0 0113 0c0 4.8-6.5 11-6.5 11z%22/%3E%3Ccircle cx=%2212%22 cy=%2210%22 r=%222.3%22/%3E%3C/svg%3E")}
.sd-i-crown{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 18 3 7l5 4 4-6 4 6 5-4-1 11z%22/%3E%3C/svg%3E")}
.sd-i-shield{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3l7 3v6c0 4.5-3 8-7 9-4-1-7-4.5-7-9V6z%22/%3E%3Cpath d=%22M9 12l2 2 4-4%22/%3E%3C/svg%3E")}
.sd-i-phone{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M5 4h4l2 5-2.5 1.5a11 11 0 005 5L15 13l5 2v4a2 2 0 01-2 2A16 16 0 013 6a2 2 0 012-2%22/%3E%3C/svg%3E")}
.sd-i-clock{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%228.5%22/%3E%3Cpath d=%22M12 7.5V12l3 2%22/%3E%3C/svg%3E")}
.sd-i-mail{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223%22 y=%225%22 width=%2218%22 height=%2214%22 rx=%221.5%22/%3E%3Cpath d=%22M3.5 6l8.5 7 8.5-7%22/%3E%3C/svg%3E")}
.sd-i-smile{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%228.5%22/%3E%3Cpath d=%22M8.5 14c1.9 2 5.1 2 7 0%22/%3E%3Cpath d=%22M9 9.5h.01M15 9.5h.01%22 stroke-width=%222.6%22/%3E%3C/svg%3E")}
.sd-i-general{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 21C5 15 3 11 3 8a5 5 0 0 1 9-3 5 5 0 0 1 9 3c0 3-2 7-9 13z%22/%3E%3C/svg%3E")}
.sd-i-cosmetic{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3l2.5 6L21 12l-6.5 3L12 21l-2.5-6L3 12l6.5-3z%22/%3E%3C/svg%3E")}
.sd-i-restorative{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 18 3 7l5 4 4-6 4 6 5-4-1 11z%22/%3E%3C/svg%3E")}
.sd-i-pediatric{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%228.5%22/%3E%3Cpath d=%22M8.5 14c1.9 2 5.1 2 7 0%22/%3E%3Cpath d=%22M9 9.5h.01M15 9.5h.01%22 stroke-width=%222.6%22/%3E%3C/svg%3E")}
.sd-ic-veneers{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 4.2C10.3 3 8 2.6 6.4 3.6 4.3 5 4.5 8.3 5.3 11c.8 2.6 1.2 9 3.2 9 1.6 0 1.4-5 3.5-5s1.9 5 3.5 5c2 0 2.4-6.4 3.2-9 .8-2.7 1-6-1.1-7.4C16 2.6 13.7 3 12 4.2z%22/%3E%3Cpath d=%22M7.5 7.5c2.8 1.2 6.2 1.2 9 0%22/%3E%3C/svg%3E")}
.sd-ic-teeth-whitening{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 4.2C10.3 3 8 2.6 6.4 3.6 4.3 5 4.5 8.3 5.3 11c.8 2.6 1.2 9 3.2 9 1.6 0 1.4-5 3.5-5s1.9 5 3.5 5c2 0 2.4-6.4 3.2-9 .8-2.7 1-6-1.1-7.4C16 2.6 13.7 3 12 4.2z%22/%3E%3Cpath d=%22M19.5 1.5v3M18 3h3M3.5 15.5v2.5M2.3 16.8h2.5%22/%3E%3C/svg%3E")}
.sd-ic-invisalign{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 9c3 3 15 3 18 0M3 9v3c3 3.5 15 3.5 18 0V9%22/%3E%3Cpath d=%22M7 11.5v2M12 12v2.5M17 11.5v2%22/%3E%3C/svg%3E")}
.sd-ic-dental-cleaning{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 20 15 9%22/%3E%3Crect x=%2214%22 y=%223%22 width=%227%22 height=%226%22 rx=%221.5%22 transform=%22rotate%2845 17.5 6%29%22/%3E%3C/svg%3E")}
.sd-ic-pediatric-dentistry{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%228.5%22/%3E%3Cpath d=%22M8.5 14c1.9 2 5.1 2 7 0%22/%3E%3Cpath d=%22M9 9.5h.01M15 9.5h.01%22 stroke-width=%222.6%22/%3E%3C/svg%3E")}
.sd-ic-periodontal-treatment{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 4.2C10.3 3 8 2.6 6.4 3.6 4.3 5 4.5 8.3 5.3 11c.8 2.6 1.2 9 3.2 9 1.6 0 1.4-5 3.5-5s1.9 5 3.5 5c2 0 2.4-6.4 3.2-9 .8-2.7 1-6-1.1-7.4C16 2.6 13.7 3 12 4.2z%22/%3E%3Cpath d=%22M4.6 9.5c2.4 1.6 4.6 2 7.4 2s5-.4 7.4-2%22/%3E%3C/svg%3E")}
.sd-ic-crowns{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 9l3.5 3L12 5l4.5 7L20 9l-1.5 9h-13z%22/%3E%3Cpath d=%22M6 21h12%22/%3E%3C/svg%3E")}
.sd-ic-restorative-dentistry{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 4.2C10.3 3 8 2.6 6.4 3.6 4.3 5 4.5 8.3 5.3 11c.8 2.6 1.2 9 3.2 9 1.6 0 1.4-5 3.5-5s1.9 5 3.5 5c2 0 2.4-6.4 3.2-9 .8-2.7 1-6-1.1-7.4C16 2.6 13.7 3 12 4.2z%22/%3E%3Cpath d=%22M9.5 9.5h5M12 7v5%22/%3E%3C/svg%3E")}
.sd-ic-tooth-extractions{--sd-ic:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 4.2C10.3 3 8 2.6 6.4 3.6 4.3 5 4.5 8.3 5.3 11c.8 2.6 1.2 9 3.2 9 1.6 0 1.4-5 3.5-5s1.9 5 3.5 5c2 0 2.4-6.4 3.2-9 .8-2.7 1-6-1.1-7.4C16 2.6 13.7 3 12 4.2z%22/%3E%3Cpath d=%22M12 21.5v1.5%22/%3E%3C/svg%3E")}

/* ---------- refinements ---------- */
.sd-nav .menu-item-type-custom.current-menu-item>a:after{width:0}
.sd-nav .menu-item-type-custom.current-menu-item>a:hover:after{width:100%}
.sd-filter{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
.sd-filter::-webkit-scrollbar{display:none}
.sd-filter-col{min-width:0}
.sd-box>h3{margin-bottom:14px}
.sd-quick-item:before{width:30px;height:30px;-webkit-mask-size:contain;mask-size:contain;box-shadow:none;background-color:var(--sd-green)}
.sd-service-img img{color:transparent;font-size:0}
.sd-boxed>.wp-block-column.sd-visit-map,.sd-boxed>.wp-block-column.sd-loc-map{padding:0}
@media(max-width:781px){.sd-tooth-3d{max-width:300px}.sd-tooth-3d img{max-height:330px}.sd-orb{width:min(300px,86%)}}
