:root{--ink:#183e43;--ink2:#28494c;--mint:#e0f3e9;--mint2:#bce6d7;--cream:#fcfaf5;--white:#fff;--coral:#f3b6a6;--gold:#f3cd80;--muted:#677b7d;--border:#e2e7e2;--shadow:0 25px 65px rgba(20,62,67,.075);--rad:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.042em}h1,h2{font-weight:650}h1{font-size:clamp(3.35rem,6vw,6.1rem)}h2{font-size:clamp(2.55rem,4.1vw,4.6rem)}h3{font-size:1.35rem}em{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.055em}p{color:#526a6e}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #df8d72;outline-offset:4px}.container{width:min(1180px,calc(100% - 64px));margin-inline:auto}.section{padding:105px 0}.icon{display:inline-flex;flex-shrink:0}.skip-link{position:absolute;top:-100px;left:10px;z-index:1000;background:var(--ink);color:#fff;padding:12px 18px}.skip-link:focus{top:10px}.eyebrow{font-size:.73rem;line-height:1.4;letter-spacing:.14em;font-weight:800;color:#346c69;display:inline-flex;align-items:center;gap:12px;text-transform:uppercase}.eyebrow-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#e7a18d}.eyebrow.light{color:#a9daca}.topline{background:var(--ink);color:#f4f8f2}.topline-inner{min-height:35px;display:flex;justify-content:space-between;align-items:center;gap:18px;font-size:.74rem;letter-spacing:.018em}.topline-inner span,.topline-inner a{display:inline-flex;align-items:center;gap:7px;color:#e5f0e9}.topline-inner a:hover{text-decoration:underline}.site-header{position:relative;z-index:20;background:#fffdf9;border-bottom:1px solid #e9ece5}.nav-wrap{min-height:93px;display:flex;justify-content:space-between;align-items:center;gap:26px}.brand{display:inline-flex;gap:12px;align-items:center;color:var(--ink);min-width:230px}.brand img{width:48px;height:48px;border-radius:16px}.brand span{display:flex;flex-direction:column;line-height:1.25}.brand strong{font-size:1.04rem;letter-spacing:.065em;font-weight:900}.brand small{font-size:.56rem;font-weight:700;letter-spacing:.18em;color:#577073;margin-top:4px}.primary-nav{display:flex;align-items:center;gap:25px}.primary-nav>a:not(.nav-cta){font-size:.88rem;font-weight:650;white-space:nowrap;transition:color .18s}.primary-nav>a:hover,.primary-nav>a[aria-current="page"]{color:#2e9582}.nav-cta{background:var(--ink);color:#fff;padding:13px 19px;border-radius:999px;display:inline-flex;align-items:center;gap:8px;font-weight:750;font-size:.82rem;white-space:nowrap;transition:background .2s,transform .2s}.nav-cta:hover{background:#29746b;transform:translateY(-2px)}.menu-toggle{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:999px;padding:17px 27px;font-size:.93rem;font-weight:750;min-height:57px;white-space:nowrap;transition:transform .2s,box-shadow .2s,background .2s}.btn:hover{transform:translateY(-3px)}.btn-primary{background:#1e665e;color:white;box-shadow:0 10px 25px #1d675c26}.btn-primary:hover{background:#144f4b;box-shadow:0 16px 30px #1d675c36}.btn-text{padding-inline:0;color:var(--ink)}.btn-text:hover{color:#198170}.btn-dark{background:var(--ink);color:#fff}.btn-light{background:var(--cream);color:var(--ink)}.inline-link{display:inline-flex;align-items:center;gap:12px;font-size:.96rem;font-weight:800;padding-bottom:5px;border-bottom:2px solid #6da99f}.inline-link:hover{color:#1d8e7a}
/* Hero */
.hero{background:#e4f1eb;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.03fr 1fr;align-items:center;min-height:665px;gap:60px;padding-top:66px;padding-bottom:72px}.hero-copy{position:relative;z-index:2}.hero h1{font-size:clamp(3.7rem,5.7vw,6.3rem);letter-spacing:-.06em;margin:23px 0}.hero h1 em{color:#237b70}.hero-description{font-size:1.12rem;line-height:1.8;max-width:575px;color:#516d6d;margin-bottom:27px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.hero-location{display:flex;align-items:center;gap:10px;margin-top:38px;font-size:.84rem;color:#577672;font-weight:650}.hero-art{height:540px;position:relative;border-radius:50% 46% 48% 52%;background:#bfe4d4;isolation:isolate;transform:rotate(-2deg);box-shadow:inset 12px 6px 0 #ffffff45}.art-orbit{position:absolute;border:1.5px solid #9fcbba;border-radius:50%;inset:38px;transform:rotate(-20deg)}.art-orbit-two{inset:-24px 45px 32px -28px;transform:rotate(26deg)}.art-sun{position:absolute;width:140px;height:140px;border-radius:50%;background:#f3d28a;right:4%;top:9%;opacity:.95}.art-flower{position:absolute;top:7%;left:13%;font-size:6rem;line-height:1;color:#f4ad9e;transform:rotate(-25deg)}.art-tooth{position:absolute;left:24%;width:57%;top:16%;filter:drop-shadow(5px 24px 12px #20564c22);transform:rotate(5deg);z-index:1}.art-tooth svg{width:100%;height:auto}.art-tag{position:absolute;z-index:2;background:#fffdf7;box-shadow:0 12px 28px #23594c24;line-height:1.2;border-radius:18px;color:var(--ink);transform:rotate(6deg)}.art-tag-top{padding:18px 24px;font-size:1.2rem;left:-12%;top:14%;font-family:Georgia,serif;font-style:italic}.art-tag-top b{font-size:1.5rem;font-weight:600}.art-tag-top span{position:absolute;right:-14px;top:-18px;color:#e79e89;font-size:2.2rem}.art-tag-bottom{right:-8%;bottom:18%;padding:21px 25px;font-size:1.08rem;transform:rotate(-6deg)}.art-tag-bottom strong{font-size:1.3rem}.art-tag-bottom .icon{position:absolute;color:#db9f95;right:18px;bottom:-20px;fill:#f4c1b3}.art-spark{position:absolute;z-index:2;color:#e59c85}.art-spark.a1{top:30%;right:3%;font-size:3rem}.art-spark.a2{left:15%;bottom:14%;font-size:3rem}.hero-wave{position:absolute;bottom:-21px;left:0;width:100%;height:50px;background:var(--cream);clip-path:ellipse(62% 60% at 50% 100%)}.trust-strip{background:var(--cream);border-bottom:1px solid #e5ebe4}.trust-row{display:flex;justify-content:space-between;gap:30px;padding:27px 0}.trust-row p{margin:0;color:var(--ink);font-size:.88rem;font-weight:750}.trust-row span{font-family:Georgia,serif;font-style:italic;color:#6daba0;margin-right:12px;font-size:1.12rem}
/* Services */
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:42px}.section-heading h2{margin:15px 0 0}.section-heading h2 em{color:#3a8c7c}.section-heading>p{max-width:350px;margin:0 0 11px;font-size:1.03rem}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.service-card{background:#fff;min-height:277px;border:1px solid #e9ede7;border-radius:var(--rad);padding:31px 31px 27px;display:flex;align-items:flex-start;flex-direction:column;transition:transform .25s,box-shadow .25s,border .25s}.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#c1dacf}.service-icon{width:56px;height:56px;background:#e4f3ec;border-radius:17px;display:inline-flex;align-items:center;justify-content:center;color:#2b8275;margin-bottom:23px}.service-card:nth-child(3n + 2) .service-icon{background:#fff1e3;color:#b66d55}.service-card:nth-child(3n) .service-icon{background:#f8e5e5;color:#af6d72}.service-card h3{font-size:1.45rem;margin-bottom:10px}.service-card p{font-size:.91rem;line-height:1.65;margin-bottom:23px}.card-more{margin-top:auto;font-size:.85rem;font-weight:800;color:#257d72;display:flex;gap:9px;align-items:center}
/* Approach */
.approach-section{background:#eff5f0}.approach-grid{display:grid;grid-template-columns:.96fr 1fr;gap:11%;align-items:center}.approach-visual{height:555px;position:relative;background:#f5d4b9;border-radius:28px;overflow:visible;display:flex;justify-content:center;align-items:flex-end}.arch-shape{background:#dba58e;position:relative;border-radius:47% 47% 0 0;width:75%;height:86%;display:flex;justify-content:center;align-items:center}.arch-inner{border:2px solid #f8e4ce80;border-radius:46% 46% 0 0;width:85%;height:88%;display:flex;align-items:center;justify-content:center;position:relative}.large-slogan{font-size:clamp(3rem,5.4vw,5.7rem);line-height:1.02;color:#173e43;font-weight:900;letter-spacing:-.085em;transform:rotate(-6deg)}.large-slogan i{font-family:Georgia,serif;font-weight:400}.smile-lines{position:absolute;top:8%;right:10%;display:flex;gap:8px;transform:rotate(15deg)}.smile-lines span{width:9px;height:35px;background:#fff2db;border-radius:10px}.smile-lines span:nth-child(2){height:49px}.approach-sticker{position:absolute;bottom:12%;right:-7%;background:#fffdf7;box-shadow:0 10px 28px #29462f23;padding:20px 21px;display:flex;gap:10px;align-items:center;font-family:Georgia,serif;font-style:italic;font-size:1.05rem;border-radius:16px;transform:rotate(-6deg)}.approach-sticker .icon{color:#e5a084}.approach-copy h2{margin:17px 0 26px}.approach-copy h2 em{color:#438879}.approach-copy>p{font-size:1.03rem;line-height:1.9}.feature-list{margin:29px 0 34px;display:grid;gap:17px}.feature-list>div{display:flex;align-items:center;gap:13px;font-weight:700;font-size:.95rem}.feature-list .icon{background:#d3e8dd;border-radius:50%;padding:4px;width:25px;height:25px;color:#177765}
/* Welcome */
.welcome-section{padding-bottom:115px}.welcome-panel{background:#f4e3d9;border-radius:28px;display:grid;grid-template-columns:1fr .72fr;gap:13%;padding:75px 78px}.welcome-panel h2{margin:17px 0 24px}.welcome-panel h2 em{color:#bb7a70}.welcome-panel p{font-size:1.03rem;max-width:500px;margin-bottom:30px}.welcome-step{border-left:1px solid #caafa6;padding-left:35px}.welcome-step>span{color:#b86d5d;font-family:Georgia,serif;font-style:italic;font-size:1.1rem}.welcome-step h3{font-size:1.3rem;margin:4px 0 5px}.welcome-step p{font-size:.89rem;margin-bottom:22px}
/* FAQ */
.faq-section{background:#fff}.faq-grid{display:grid;grid-template-columns: .72fr 1fr;gap:12%}.faq-grid h2{margin:17px 0 23px}.faq-grid h2 em{color:#438879}.faq-grid>div>p{max-width:355px}.faq-list details{border-bottom:1px solid #d5dfd8}.faq-list details:first-child{border-top:1px solid #d5dfd8}.faq-list summary{list-style:none;cursor:pointer;position:relative;padding:24px 39px 24px 0;font-size:1.06rem;font-weight:750;line-height:1.4}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font-size:1.5rem;font-weight:400;position:absolute;right:4px;top:18px;color:#42887d}.faq-list details[open] summary:after{content:'−'}.faq-list details>p{margin:0 24px 24px 0;font-size:.96rem}.faq-list p a{text-decoration:underline;color:#227869}.cta-band{background:#173e43;color:#fff;padding:75px 0}.cta-inside{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta-inside h2{font-size:clamp(2.5rem,3.7vw,4rem);max-width:675px;line-height:1.13;margin:11px 0 12px}.cta-inside p{color:#c9ddd6;margin-bottom:0}.cta-inside .btn{flex-shrink:0}
/* Footer */
.site-footer{background:#112e32;color:#fff;padding:68px 0 0}.footer-top{display:grid;grid-template-columns:1.25fr .65fr 1fr .8fr;gap:50px;padding-bottom:60px}.brand-footer{color:#fff}.brand-footer small{color:#b3c8c2}.footer-about p{max-width:300px;margin-top:26px;color:#b5cbc4;font-size:.94rem}.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:13px}.footer-column h3{font-size:.8rem;letter-spacing:.12em;color:#c4e7db;margin-bottom:10px;font-weight:800;text-transform:uppercase}.footer-column>a{font-size:.91rem}.footer-column a:hover{text-decoration:underline}.footer-column p{color:#b5cbc4;font-size:.9rem;line-height:1.65;margin:0}.footer-column a .icon{vertical-align:middle}.footer-phone{font-size:1.23rem!important;font-weight:800}.footer-bottom{border-top:1px solid #385659;min-height:75px;display:flex;justify-content:space-between;align-items:center;gap:20px;color:#a8beb9;font-size:.8rem}.footer-bottom a:hover{color:#fff}.tiny-sep{padding:0 8px}.mobile-call{display:none}
/* Interior */
.page-hero{background:#e3f1e9;padding:95px 0 100px;position:relative;overflow:hidden}.page-hero:before{content:"";position:absolute;border:2px solid #c9e5d7;border-radius:50%;width:450px;height:450px;right:-145px;top:-160px}.page-hero:after{content:"✦";position:absolute;right:12%;bottom:33px;color:#e5b2a2;font-size:6rem}.page-hero .container{position:relative;z-index:1}.page-hero h1{max-width:930px;font-size:clamp(3.45rem,5.7vw,6rem);margin:20px 0 26px}.page-hero h1 em{color:#2b8074}.page-hero p{max-width:690px;font-size:1.16rem;line-height:1.85;margin:0}.small-hero{padding:76px 0}.small-hero h1{font-size:clamp(3rem,5vw,4.8rem)}.services-list{display:grid;grid-template-columns:1fr 1fr;gap:20px}.service-list-item{display:flex;align-items:center;gap:20px;background:#fff;border:1px solid var(--border);padding:28px;border-radius:20px;transition:transform .2s,box-shadow .2s}.service-list-item:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.service-list-item .service-icon{margin:0;flex-shrink:0}.service-list-item strong{display:block;font-size:1.2rem;margin-bottom:5px;letter-spacing:-.025em}.service-list-item small{font-size:.88rem;color:#657b7d;line-height:1.55;display:block}.service-row-arrow{margin-left:auto;align-self:center;flex-shrink:0}.info-note{background:#f5e8e0;margin-top:40px;padding:22px 27px;border-radius:14px;text-align:center;color:#586a6b;font-size:.95rem}.info-note a{text-decoration:underline;font-weight:800;color:#226e66}.service-page-hero .breadcrumb{display:block;margin-bottom:24px;font-size:.83rem;font-weight:800;color:#3b7d72}.page-hero-actions{margin-top:30px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.feature-card{padding:40px 32px;background:#fff;border:1px solid var(--border);border-radius:20px;min-height:240px}.feature-card .check-icon{background:#def2e5;color:#207b69;border-radius:100%;width:45px;height:45px;display:grid;place-items:center;margin-bottom:30px}.feature-card h3{font-size:1.4rem}.detail-faq{background:#edf5ee}.split-intro{display:grid;grid-template-columns:1fr 1fr;gap:13%;align-items:start}.split-intro h2{margin:20px 0}.split-intro h2 em{color:#458f80}.split-intro>div:last-child{font-size:1.1rem;line-height:1.85;padding-top:20px}.team-section{background:#eef5ef}.doctor-card{display:grid;grid-template-columns:.8fr 1.2fr;border-radius:26px;overflow:hidden;background:white}.doctor-portrait{background:#d5e6dc;min-height:440px;display:flex;justify-content:center;align-items:center;position:relative;isolation:isolate}.portrait-circle{position:absolute;width:260px;height:260px;background:#c5dad1;border-radius:50%;border:2px solid #b5d2c5}.portrait-initials{font-family:Georgia,serif;font-style:italic;color:#236e64;font-size:9rem;position:relative;z-index:1;letter-spacing:-.1em}.portrait-caption{position:absolute;bottom:24px;left:24px;background:white;padding:9px 16px;border-radius:100px;font-size:.82rem;font-weight:800}.doctor-bio{padding:60px}.doctor-bio h3{font-size:2.55rem;margin:18px 0 28px}.doctor-bio p{font-size:1rem;line-height:1.8}.doctor-bio .inline-link{margin-top:12px}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:65px}.values-grid>div{border-top:1px solid #a3beb4;padding-top:25px}.values-grid span{color:#498d7e;font-family:Georgia,serif;font-size:1rem}.values-grid h3{font-size:2rem;margin:14px 0}.values-grid p{font-size:.96rem}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.step-card{padding:38px;background:#fff;border:1px solid var(--border);border-radius:24px}.step-card>span{font-family:Georgia,serif;font-size:1.1rem;color:#719f8c;display:block;margin-bottom:37px}.step-card>.icon{color:#287c70;margin-bottom:26px}.step-card h3{font-size:1.48rem}.step-card p{font-size:.96rem}.newpatients-band{background:#edf5ee}.info-split{display:grid;grid-template-columns:1fr 1fr;gap:13%;align-items:center}.info-split h2{margin:15px 0 24px}.info-split h2 em{color:#3a897b}.info-split p{line-height:1.9;font-size:1.03rem}.info-split .btn{margin-top:17px}.mini-card{background:#fff;padding:45px;border-radius:24px;box-shadow:var(--shadow)}.mini-card h3{font-size:1.55rem;margin-bottom:26px}.clean-checks{list-style:none;padding:0;margin:0;display:grid;gap:20px}.clean-checks li{display:flex;gap:12px;align-items:start;color:#4a6667}.clean-checks li .icon{color:#2a8b79;flex-shrink:0;margin-top:3px}.insurance-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.insurance-grid h2{margin:18px 0}.insurance-grid h2 em{color:#428b7f}.insurance-grid p{line-height:1.85;font-size:1.03rem}.insurance-grid .btn{margin-top:20px}.insurance-illustration{background:#e4eee4;min-height:460px;padding:54px;border-radius:25px;display:flex;flex-direction:column;align-items:start;justify-content:center;gap:23px}.insurance-illustration>.icon{color:#206c63}.insurance-illustration>span{font-size:1.9rem;letter-spacing:-.04em;font-weight:550;line-height:1.3}.insurance-illustration>span strong{font-weight:900}.mini-check{display:flex;align-items:center;gap:12px;color:#3a6864;font-size:1rem;font-weight:700}.mini-check .icon{color:#388e7e}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.contact-card{background:#fff;border:1px solid var(--border);border-radius:22px;padding:37px;min-height:300px;display:flex;flex-direction:column}.contact-icon{background:#e0f3e9;width:60px;height:60px;display:grid;place-items:center;border-radius:17px;color:#27796f;margin-bottom:26px}.contact-card h2{font-size:1.6rem}.contact-card p{font-size:.95rem;margin-bottom:28px}.contact-link{margin-top:auto;display:flex;align-items:center;gap:9px;color:#24796a;font-weight:800;font-size:1rem}.location-section{padding-top:0}.location-panel{display:grid;grid-template-columns:1fr 1fr;border-radius:25px;overflow:hidden;background:#e7efe7}.location-panel>div:first-child{padding:75px}.location-panel h2{margin:20px 0}.location-panel h2 em{color:#38897b}.location-panel .btn{margin-top:25px}.map-art{min-height:410px;background:#bfdcd0;overflow:hidden;position:relative}.map-road{position:absolute;background:#eff5e6;border:4px solid #e4ecdc}.road-one{width:150%;height:50px;transform:rotate(23deg);top:35%;left:-20%}.road-two{width:150%;height:50px;transform:rotate(-47deg);top:40%;left:-20%}.road-three{width:55px;height:150%;transform:rotate(20deg);top:-20%;left:16%}.map-lake{position:absolute;width:220px;height:150px;right:-70px;bottom:-30px;background:#8dc4bc;border-radius:60% 35% 60% 30%;transform:rotate(-22deg)}.map-pin{position:absolute;top:32%;left:51%;display:grid;place-items:center;background:var(--ink);border:10px solid #e2f0e7;border-radius:100%;width:100px;height:100px;color:white;box-shadow:0 10px 25px #173e4430}.map-art strong{position:absolute;left:53%;top:62%;background:white;padding:11px 18px;border-radius:100px;transform:rotate(-8deg)}.contact-note{background:#f8efe5;padding:38px 0}.contact-note .container{display:grid;grid-template-columns:1fr 1fr;gap:35px}.contact-note p{margin:0;font-size:.87rem}.prose-narrow{max-width:760px}.prose-narrow h2{font-size:1.85rem;margin-top:38px}.prose-narrow p{font-size:1.03rem;line-height:1.9}.prose-narrow p a{text-decoration:underline;color:#14796a}
@media(max-width:1150px){.primary-nav{gap:15px}.primary-nav>a:not(.nav-cta){font-size:.8rem}.nav-cta{padding:12px 14px;font-size:.76rem}.brand{min-width:210px}.brand strong{font-size:.91rem}.brand small{font-size:.49rem}.hero-grid{gap:25px}.hero h1{font-size:clamp(3rem,5.9vw,5rem)}}
@media(max-width:930px){.container{width:min(700px,calc(100% - 44px))}.nav-wrap{min-height:80px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;width:49px;height:49px;border:1px solid #d7e3db;border-radius:13px;background:#fff;cursor:pointer;gap:6px}.menu-toggle span{width:22px;height:2px;border-radius:2px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(8px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:17px 24px 25px;background:#fffdf9;box-shadow:0 22px 25px #173e4420;flex-direction:column;align-items:stretch;gap:2px}.primary-nav.is-open{display:flex}.primary-nav>a{padding:10px 8px!important;font-size:1rem!important}.primary-nav .nav-cta{justify-content:center;margin-top:12px;padding:15px!important}.hero-grid,.approach-grid,.faq-grid,.insurance-grid,.info-split{grid-template-columns:1fr;gap:50px}.hero-grid{padding-top:80px;padding-bottom:70px}.hero h1{font-size:clamp(3.6rem,9vw,5.5rem)}.hero-art{height:480px;max-width:530px;width:100%;margin-inline:auto}.trust-row{gap:15px}.trust-row p{font-size:.78rem}.section{padding:80px 0}.section-heading{align-items:start;gap:30px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.approach-visual{max-width:560px;width:90%;margin:0 auto}.approach-copy{max-width:620px}.welcome-panel{padding:55px 50px;gap:45px}.footer-top{grid-template-columns:1fr 1fr;gap:46px}.faq-grid{gap:25px}.services-list{grid-template-columns:1fr}.split-intro{grid-template-columns:1fr;gap:5px}.doctor-card{grid-template-columns:1fr}.doctor-portrait{min-height:310px}.doctor-bio{padding:46px}.contact-grid{grid-template-columns:1fr;gap:14px}.contact-card{min-height:240px}.location-panel{grid-template-columns:1fr}.location-panel>div:first-child{padding:55px}.map-art{min-height:320px}.contact-note .container{grid-template-columns:1fr}.page-hero:after{right:6%;font-size:4rem}.values-grid,.feature-grid,.steps-grid{gap:16px}}
@media(max-width:620px){.container{width:calc(100% - 38px)}.topline-inner{min-height:31px}.topline-inner>span{font-size:.61rem}.topline-inner>a{display:none}.brand{min-width:auto}.brand img{width:43px;height:43px}.brand strong{font-size:.78rem}.brand small{font-size:.43rem}.nav-wrap{min-height:74px}.hero-grid{padding-top:58px;padding-bottom:62px;gap:28px}.hero h1{font-size:clamp(3.25rem,12.2vw,4.2rem);line-height:1.05;margin:18px 0 22px}.hero .eyebrow{font-size:.58rem}.hero-description{font-size:1rem;line-height:1.75}.hero-actions{gap:5px}.btn{padding:15px 22px;font-size:.86rem;min-height:52px}.btn-text{padding-left:14px}.hero-location{margin-top:23px;font-size:.76rem}.hero-art{height:325px;max-width:355px;margin:16px auto}.art-tooth{top:16%;left:26%;width:53%}.art-tag-top{font-size:.8rem;padding:10px 12px;left:-2%;top:10%}.art-tag-top b{font-size:1.02rem}.art-tag-bottom{font-size:.78rem;padding:12px 13px;right:-2%}.art-tag-bottom strong{font-size:.97rem}.art-flower{font-size:4rem}.art-sun{width:90px;height:90px}.trust-row{flex-direction:column;gap:3px;padding:20px 0}.trust-row p{font-size:.8rem}.section{padding:70px 0}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px}.section h2{font-size:clamp(2.45rem,9vw,3.3rem)}.services-grid,.values-grid,.feature-grid,.steps-grid{grid-template-columns:1fr;gap:13px}.service-card{min-height:235px;padding:25px}.service-icon{margin-bottom:16px}.service-card p{margin-bottom:15px}.approach-visual{height:340px;width:95%}.large-slogan{font-size:3.7rem}.approach-sticker{padding:12px;font-size:.8rem;right:-4%}.welcome-panel{grid-template-columns:1fr;padding:35px 29px;gap:34px}.welcome-step{border-left:0;border-top:1px solid #cfb6af;padding:25px 0 0}.faq-grid{gap:23px}.faq-list summary{font-size:.96rem}.cta-band{padding:55px 0 90px}.cta-inside{display:block}.cta-inside h2{font-size:2.8rem}.cta-inside .btn{margin-top:28px}.footer-top{grid-template-columns:1fr 1fr;gap:36px 18px}.footer-about{grid-column:1/-1}.footer-bottom{flex-direction:column;align-items:start;justify-content:center;padding:22px 0 80px;gap:8px}.mobile-call{display:block;position:fixed;left:0;right:0;bottom:0;z-index:25;background:#fefdf8;border-top:1px solid #d1ded6;box-shadow:0 -8px 20px #174b4520;padding:9px 16px calc(9px + env(safe-area-inset-bottom))}.mobile-call a{display:flex;align-items:center;justify-content:center;gap:11px;background:#1c6a60;color:#fff;min-height:48px;border-radius:100px;font-weight:800;font-size:.92rem}.page-hero{padding:68px 0}.page-hero h1{font-size:clamp(3rem,10vw,4.2rem)}.page-hero p{font-size:1rem}.page-hero:before{width:300px;height:300px;right:-200px}.page-hero:after{opacity:.5}.service-list-item{padding:18px;gap:14px}.service-list-item strong{font-size:1.08rem}.service-list-item small{font-size:.8rem}.service-list-item .service-icon{width:48px;height:48px}.service-row-arrow{display:none}.doctor-portrait{min-height:300px}.doctor-bio{padding:31px}.doctor-bio h3{font-size:2.2rem}.values-grid>div{padding-top:18px}.insurance-illustration{min-height:365px;padding:36px}.insurance-illustration>span{font-size:1.5rem}.contact-card{padding:28px}.location-panel>div:first-child{padding:38px 30px}.map-art{min-height:290px}.footer-column h3{font-size:.72rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Upscale design direction: editorial, composed, sophisticated. All decorative art is original CSS/SVG. */
:root{--ink:#18343b;--ink2:#33505a;--mint:#ecf1ec;--mint2:#cad8cf;--cream:#f8f7f3;--white:#fffdfa;--coral:#b89c81;--gold:#b89a69;--muted:#65747b;--border:#e1e2dc;--shadow:0 24px 70px rgba(19,43,47,.065);--rad:8px}
body{background:var(--cream);color:var(--ink);font-family:"Avenir Next","Helvetica Neue",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.7}
h1,h2,h3{letter-spacing:-.042em}h1,h2{font-weight:500}h1{font-size:clamp(3.7rem,5.5vw,6.35rem);line-height:1.065}h2{font-size:clamp(2.75rem,4.1vw,4.65rem)}h3{font-weight:550}em{font-family:"Iowan Old Style",Baskerville,"Palatino Linotype",Georgia,serif;letter-spacing:-.04em;font-weight:400}
p{color:#576c70}.container{width:min(1216px,calc(100% - 84px))}.section{padding:112px 0}.eyebrow{color:#927a54;font-size:.68rem;letter-spacing:.23em;font-weight:750}.eyebrow-dot{width:28px;height:1px;background:#ac9267;border-radius:0}.topline{background:#142c32}.topline-inner{min-height:36px;font-size:.7rem;letter-spacing:.04em}.site-header{background:#fbfaf7;border-color:#e8e7df}.nav-wrap{min-height:94px}.brand img{width:49px;height:49px;border-radius:7px}.brand strong{font-size:.98rem;letter-spacing:.14em;font-weight:740}.brand small{font-size:.49rem;letter-spacing:.23em;color:#526970;margin-top:7px}.primary-nav{gap:27px}.primary-nav>a:not(.nav-cta){font-weight:600;font-size:.79rem;letter-spacing:.02em}.primary-nav>a:hover,.primary-nav>a[aria-current="page"]{color:#ac8351}.nav-cta{border-radius:3px;background:#18343b;font-size:.74rem;letter-spacing:.04em;padding:15px 20px;font-weight:700}.nav-cta:hover{background:#314f55;transform:none}.btn{border-radius:3px;font-size:.82rem;font-weight:700;letter-spacing:.025em;min-height:58px;padding:18px 25px}.btn:hover{transform:translateY(-2px)}.btn-primary{background:#1f4145;box-shadow:none}.btn-primary:hover{background:#2e5659;box-shadow:0 10px 25px #1d36351a}.btn-dark{background:#1f4145}.btn-light{background:#f3ede2;color:#173138}.btn-text{padding-inline:8px}.btn-text:hover,.inline-link:hover{color:#8e734b}.inline-link{border-bottom:1px solid #9f8b69;font-size:.9rem}
/* Premium hero */
.hero-premium{background:#f4f2ec;position:relative;overflow:hidden}.hero-premium:before{content:"";display:block;position:absolute;left:0;top:0;height:100%;width:50%;background:linear-gradient(95deg,#f7f6f1,#f4f2ec)}.hero-premium .hero-grid{position:relative;display:grid;grid-template-columns:1.13fr .87fr;gap:72px;align-items:stretch;min-height:650px;padding-top:66px;padding-bottom:69px}.hero-premium .hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:24px 0 13px}.hero-premium h1{font-size:clamp(3.65rem,5.4vw,6.05rem);max-width:720px;letter-spacing:-.055em;line-height:1.065;margin:31px 0 29px}.hero-premium h1 em{color:#7e735e;font-style:italic;line-height:1.12}.hero-premium .hero-description{font-size:1.065rem;line-height:1.86;max-width:545px;color:#53666b;margin:0 0 28px}.hero-premium .hero-actions{margin-top:8px;display:flex;align-items:center;flex-wrap:wrap;gap:19px}.hero-premium .hero-location{margin-top:38px;display:flex;align-items:center;gap:10px;color:#687779;font-size:.8rem;letter-spacing:.015em}
.hero-editorial{background:#1b3940;min-height:575px;position:relative;padding:25px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 26px 55px #152e3030}.hero-editorial:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 55% 35%,#335760 0%,transparent 54%),linear-gradient(145deg,#203e43,#142e35);opacity:.95}.editorial-arch{flex:1;position:relative;border:1px solid #8a927a50;border-radius:260px 260px 0 0;min-height:475px;overflow:hidden;display:flex;align-items:center;justify-content:center}.editorial-ring{position:absolute;width:78%;aspect-ratio:1;border:1px solid #d2bb9550;border-radius:50%;top:18%;left:11%}.editorial-ring.ring-2{width:94%;top:12%;left:3%;border-color:#c1b6a12b}.editorial-line{position:absolute;width:68%;height:77%;top:10%;left:16%;color:#dfc69a;opacity:.95}.editorial-number{position:absolute;top:32px;left:36px;color:#d8c9a7;font-size:.57rem;font-weight:700;letter-spacing:.27em}.editorial-seal{position:absolute;bottom:48px;left:50%;transform:translateX(-50%);font-size:1.65rem;font-family:Georgia,serif;color:#f3eddf;letter-spacing:.15em}.editorial-seal span{color:#b19a6e}.editorial-foot{position:relative;display:flex;justify-content:space-between;gap:14px;color:#e6e4dd;padding:19px 1px 0;font-size:.62rem;font-weight:650;letter-spacing:.18em;line-height:1.7}.editorial-foot span:last-child{color:#c8b48d;text-align:right}
.hero-premium .hero-wave{display:none}.trust-strip{background:#f8f7f3;border-top:1px solid #deded8;border-bottom:1px solid #deded8}.trust-row{padding-top:24px;padding-bottom:24px}.trust-row p{color:#40575d;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;font-weight:650}.trust-row p span{color:#b29465;font-family:Georgia,serif;font-size:1.07rem;font-style:italic;margin-right:15px}
/* Core sections, understated luxury */
.section-heading>p{max-width:330px}.section-heading h2 em,.page-hero h1 em,.section h2 em{color:#907f66}.services-section{background:#fbfaf7}.services-grid{gap:16px}.service-card{border-radius:4px;background:#fff;border:1px solid #e4e2db;box-shadow:none;padding:34px 31px;transition:border-color .2s,box-shadow .2s,transform .2s}.service-card:hover{border-color:#b9ae97;box-shadow:0 16px 45px #122e3210;transform:translateY(-3px)}.service-icon{background:#f1f0e9!important;color:#546d6c!important;border-radius:50%!important;width:55px;height:55px}.service-card h3{font-size:1.38rem;font-weight:600}.service-card p{line-height:1.75}.card-more{color:#806a48!important;font-size:.81rem;letter-spacing:.01em}.approach-section{background:#e9eeea}.approach-grid{gap:9%}.approach-visual{background:#1b3a40!important;border-radius:3px!important;height:510px!important;position:relative;overflow:hidden}.approach-visual:before{content:"";position:absolute;inset:-35%;border:1px solid #c8b68f22;border-radius:50%}.approach-sculpture{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 48% 45%,#32535a,#19343b 65%);color:#e9e5d8}.sculpture-topline,.sculpture-bottomline{position:absolute;left:34px;font-size:.65rem;letter-spacing:.23em;color:#d3c19b}.sculpture-topline{top:34px}.sculpture-bottomline{bottom:32px}.sculpture-monogram{font-family:Georgia,serif;font-size:7rem;font-weight:400;letter-spacing:-.1em;line-height:1;color:#e6d6b7;opacity:.9}.sculpture-monogram span{color:#c4a46d}.sculpture-caption{text-align:center;margin-top:30px;color:#f7f3e9;line-height:1.25;letter-spacing:.25em;font-size:.8rem;font-weight:700}.sculpture-caption em{color:#c2a67a;letter-spacing:0;font-size:2.25rem;text-transform:none}.approach-copy h2{line-height:1.1}.feature-list .icon{color:#7b8d7a!important}.welcome-section{background:#fbfaf7}.welcome-panel{background:#ede9e1;border-radius:4px}.welcome-step{border-color:#cabfaca0}.welcome-step>span{color:#a38b62}.faq-section{background:#faf9f5}.faq-list details{border-color:#e0ded4}.cta-band{background:#19343b}.cta-inside h2{font-weight:500;font-size:clamp(2.4rem,3.7vw,4rem)}.cta-inside .eyebrow{color:#cfb88d}.site-footer{background:#10282d}.brand-footer strong,.brand-footer small{color:#efe8d9}.footer-column h3{color:#d3b886}.footer-bottom{border-color:#395059}.page-hero{background:#e9ede8;padding-top:105px;padding-bottom:105px}.page-hero:before{border-color:#cbbda850}.page-hero:after{color:#bdad9070}.page-hero h1{max-width:980px}.service-page-hero{background:#e9ede8}.service-list-item{border-radius:4px}.feature-card,.step-card,.contact-card,.mini-card{border-radius:4px}.doctor-card,.doctor-portrait{border-radius:4px}.contact-icon{background:#e9eee9;border-radius:50%;color:#385a5d}.contact-link{color:#806948}.insurance-illustration,.location-panel{border-radius:4px;background:#e9eeea}.newpatients-band{background:#e9eeea}.map-pin{background:#17353a}.mobile-call a{border-radius:3px;background:#1f4145}
@media(max-width:1140px){.hero-premium .hero-grid{gap:35px}.hero-premium h1{font-size:clamp(3.2rem,5.2vw,5.1rem)}.primary-nav{gap:18px}.brand{min-width:212px}.primary-nav>a:not(.nav-cta){font-size:.75rem}}
@media(max-width:930px){.container{width:min(700px,calc(100% - 48px))}.hero-premium .hero-grid{grid-template-columns:1fr;min-height:unset;padding:72px 0 64px;gap:45px}.hero-premium .hero-copy{padding:0}.hero-premium h1{max-width:700px;font-size:clamp(3.7rem,8vw,5.3rem)}.hero-editorial{height:500px;min-height:unset;max-width:660px;width:100%;margin:0 auto}.editorial-arch{min-height:unset}.hero-premium .hero-location{margin-top:28px}.primary-nav{background:#fbfaf7}.menu-toggle{border-radius:4px}.section{padding:87px 0}}
@media(max-width:620px){.container{width:calc(100% - 38px)}.nav-wrap{min-height:76px}.brand img{width:43px;height:43px}.brand strong{font-size:.78rem}.brand small{font-size:.425rem}.hero-premium .hero-grid{padding:49px 0 54px;gap:27px}.hero-premium h1{font-size:clamp(3.15rem,12vw,4.15rem);margin:20px 0 24px}.hero-premium .hero-description{font-size:.96rem;line-height:1.8}.hero-premium .eyebrow{font-size:.57rem;letter-spacing:.14em}.hero-premium .hero-actions{gap:10px}.hero-premium .hero-actions .btn{width:100%;justify-content:center}.hero-premium .hero-actions .btn-text{min-height:42px}.hero-premium .hero-location{font-size:.72rem;line-height:1.55}.hero-editorial{min-height:375px;height:385px;padding:15px}.editorial-arch{border-radius:220px 220px 0 0}.editorial-line{height:84%;top:6%;width:74%;left:13%}.editorial-seal{bottom:20px;font-size:1.15rem}.editorial-number{top:24px;left:20px;font-size:.47rem}.editorial-foot{font-size:.43rem;letter-spacing:.12em;padding-top:12px}.section{padding:72px 0}.trust-row{padding:21px 0}.trust-row p{font-size:.72rem;letter-spacing:.045em}.section-heading h2{font-size:clamp(2.7rem,10vw,3.5rem)}.approach-visual{height:335px!important}.sculpture-topline,.sculpture-bottomline{left:24px;font-size:.54rem}.sculpture-monogram{font-size:5.6rem}.sculpture-caption{font-size:.63rem}.sculpture-caption em{font-size:1.7rem}.welcome-panel{padding:35px 28px}.cta-band{padding:58px 0 85px}.mobile-call{background:#fbfaf7;border-color:#e6e4dd}.mobile-call a{min-height:50px}.page-hero{padding:72px 0}.service-card{padding:27px}}


/* EXISTING PRACTICE LOGO — preserves the original silver script artwork. */
.brand:has(.legacy-logo-frame){min-width:252px;gap:0;line-height:1;flex-shrink:0}
.brand .legacy-logo-frame{position:relative;display:block;flex:0 0 auto;width:252px;height:79px;background:#243d40;border-radius:3px;isolation:isolate;overflow:hidden}
.brand .legacy-logo{position:absolute;inset:0;z-index:2;display:block;width:100%;height:100%;object-fit:contain;border:0;border-radius:0;max-width:none;background:#243d40}
.brand .legacy-logo-backup{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:9px 5px;color:#e1dbd0;font-size:1.23rem;font-family:'Brush Script MT','URW Chancery L','Palatino Linotype',Georgia,serif;font-weight:400;letter-spacing:-.04em;white-space:nowrap;line-height:1.05;text-align:center}
.brand .legacy-logo-backup small{display:block;margin-top:3px;color:#ded9ca;font-family:'Avenir Next','Segoe UI',sans-serif;font-weight:700;font-size:.54rem;letter-spacing:.18em;text-transform:uppercase}
.legacy-logo-frame.legacy-logo-missing .legacy-logo{display:none}
.brand-footer:has(.legacy-logo-frame){min-width:0}
.brand-footer .legacy-logo-frame,.brand-footer .legacy-logo{background:#162f35}
@media (min-width:931px) and (max-width:1170px){
 .nav-wrap{gap:15px}.brand:has(.legacy-logo-frame){min-width:207px}.legacy-logo-frame{width:207px;height:65px}
 .primary-nav{gap:13px}.primary-nav>a:not(.nav-cta){font-size:.7rem}.nav-cta{padding:13px 12px;font-size:.68rem}
}
@media(max-width:930px){.brand:has(.legacy-logo-frame){min-width:0}.legacy-logo-frame{width:216px;height:68px}.nav-wrap{min-height:83px}}
@media(max-width:620px){.legacy-logo-frame{width:195px;height:62px}.nav-wrap{min-height:79px}}
@media(max-width:360px){.legacy-logo-frame{width:175px;height:55px}}

/* Final small-screen correction for the practice's full-width legacy wordmark. */
@media (min-width:931px) and (max-width:1170px){.brand .legacy-logo-frame{width:207px;height:65px}}
@media (max-width:930px){.brand .legacy-logo-frame{width:216px;height:68px}}
@media (max-width:620px){.brand .legacy-logo-frame{width:195px;height:62px}}
@media (max-width:360px){.brand .legacy-logo-frame{width:175px;height:55px}.nav-wrap{gap:12px}}

/* Launch branding: original user-supplied vector logo (blue), not the old external PNG. */
.brand .legacy-logo-frame{background:transparent;overflow:visible;border-radius:0}
.brand .legacy-logo{background:transparent;object-fit:contain}
.brand-footer .legacy-logo-frame{background:#fbfaf7;border-radius:4px;box-shadow:0 0 0 1px #e1ded6;overflow:hidden}
.brand-footer .legacy-logo{background:transparent;inset:4px 5px;width:calc(100% - 10px);height:calc(100% - 8px)}

/* Hide text fallback beneath the now locally bundled, transparent logo. */
.brand .legacy-logo-backup{display:none}

/* General office email contact */
.footer-email{display:inline-block;overflow-wrap:anywhere;font-weight:650;color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;margin:3px 0 12px}
.contact-link{overflow-wrap:anywhere;word-break:break-word}
@media(min-width:931px){.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Meet Our Team: clinician and business coordinator profiles */
.team-section .doctor-card + .doctor-card { margin-top: 28px; }
.team-section .staff-portrait { background: #e9e5dc; }
.team-section .staff-portrait .portrait-circle { background: #dcd5c7; border-color: #c9bfad; }
.team-section .staff-portrait .portrait-initials { color: #76684e; }
.team-section .staff-card .doctor-bio { display: flex; flex-direction: column; justify-content: center; }
.team-section .staff-card .doctor-bio h3 { margin-bottom: 24px; }
.team-section .staff-card .doctor-bio .inline-link { align-self: start; }
@media (max-width: 620px) { .team-section .doctor-card + .doctor-card { margin-top: 18px; } }


/* Team bios, updated dental focus and insurance banner */
.insurance-note {background: #f3f0e9; border-bottom: 1px solid rgba(10,64,68,.10);}
.insurance-note-row {display:flex; align-items:center; justify-content:space-between; gap:32px; padding:25px 0;}
.insurance-note .eyebrow {font-size: 11px; letter-spacing:.13em; color: #8a7652;}
.insurance-note p {max-width:840px; margin:7px 0 0; color:#31585b; line-height:1.6; font-size:15px;}
.insurance-note strong {color:#173d41;}
.insurance-note .inline-link {flex-shrink:0;}
.team-subheading {margin:56px 0 24px; text-align:center;}
.team-subheading h3 {font-size:clamp(25px,3vw,34px); font-weight:500; margin:9px 0 6px; color:#154146;}
.team-subheading p {max-width:660px; margin:0 auto; line-height:1.6;}
.team-people-grid {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px;}
.person-card {display:flex; align-items:flex-start; gap:18px; padding:24px; background:#f8f6f1; border:1px solid #e9e4d9; border-radius:4px; min-width:0;}
.person-initials {width:55px;height:55px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;background:#dce8e5;color:#2c666b;font-family:Georgia,serif;font-size:23px;}
.person-details {min-width:0;}
.person-details .eyebrow {font-size:10px;letter-spacing:.1em; color:#8a7858;}
.person-details h4 {font-family:Georgia,serif;font-weight:500;font-size:23px;margin:5px 0 8px;color:#153f42;}
.person-details p {font-size:14px;line-height:1.7;color:#526265;margin:0;}
.service-clarification {max-width:800px;margin:28px auto 44px; padding:20px 24px;border-left:3px solid #b7a577;background:#f8f6f1;color:#476064;line-height:1.65;}
@media (max-width:820px) { .insurance-note-row {align-items:flex-start;flex-direction:column;gap:8px;padding:22px 0;} }
@media (max-width:620px) { .team-people-grid {grid-template-columns:1fr;} .person-card {padding:19px;gap:13px;} .person-initials {width:45px;height:45px;font-size:20px;} .team-subheading {margin-top:35px;} }

/* 2026 team and social update: editable profiles and community links */
.team-section .specialist-portrait {background:#d8e5e3;}
.team-section .specialist-portrait .portrait-circle{background:#c8dcd8;border-color:#9fbfb8;}
.team-section .specialist-portrait .portrait-initials{color:#27555b;}
.clinician-highlight {background:#f2f1eb;}
.clinician-highlight-inner{display:grid;grid-template-columns:1.4fr .6fr;gap:10%;align-items:center;}
.clinician-highlight h2{font-size:clamp(2.45rem,4.5vw,3.65rem);margin:14px 0 21px;}
.clinician-highlight p{font-size:1.05rem;line-height:1.85;max-width:680px;}
.clinician-highlight .inline-link{margin-top:14px;}
.provider-mark{min-height:255px;background:#d6e4df;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:13px;border:1px solid #c6d9d2;}
.provider-mark span{font-family:Georgia,serif;font-size:6.3rem;letter-spacing:-.09em;color:#30636a;}
.provider-mark small{font-size:.75rem;letter-spacing:.18em;font-weight:700;color:#496a68;}
.footer-social{display:flex;flex-direction:column;align-items:flex-start;gap:9px;margin-top:18px;padding-top:16px;border-top:1px solid rgba(255,255,255,.18);}
.footer-social span{font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;color:#d4bd92;font-weight:700;}
.footer-social a{font-size:.79rem;line-height:1.45;color:#f6f2ea;text-decoration:none;overflow-wrap:anywhere;}
.footer-social a strong{font-weight:650;}
.footer-social a:hover{text-decoration:underline;text-underline-offset:3px;}
.follow-section{padding:76px 0;background:#e9eee9;}
.follow-section-inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8%;}
.follow-section h2{font-size:clamp(2.2rem,4vw,3.5rem);margin:12px 0 20px;line-height:1.12;}
.follow-section h2 em{color:#417770;}
.follow-section p{max-width:560px;line-height:1.8;}
.follow-links{display:grid;gap:12px;}
.follow-links a{display:grid;grid-template-columns:1fr auto;gap:4px 14px;align-items:center;padding:20px 24px;background:#fffdf9;border:1px solid #d8dfd8;text-decoration:none;transition:transform .18s,box-shadow .18s;}
.follow-links a:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(18,57,59,.08);}
.follow-links a>span:first-child{grid-column:1/2;font-size:.65rem;letter-spacing:.16em;color:#8a7652;font-weight:800;}
.follow-links a strong{grid-column:1/2;grid-row:2;font-weight:600;font-size:1rem;color:#214b50;overflow-wrap:anywhere;}
.follow-links a>span:last-child{grid-column:2;grid-row:1 / 3;color:#a18b64;font-size:1.4rem;}
@media(max-width:930px){.follow-section-inner,.clinician-highlight-inner{grid-template-columns:1fr;gap:28px}.provider-mark{min-height:170px}.provider-mark span{font-size:4rem;}.follow-section{padding:55px 0;}}
@media(max-width:620px){.follow-links a{padding:18px}.follow-links a strong{font-size:.91rem}.team-section .doctor-bio h3{font-size:2.1rem;}}

/* Staff photography: original photo supplied by practice */
.person-photo { width:96px; height:124px; flex-shrink:0; object-fit:cover; object-position:50% 30%; border-radius:4px; background:#e7e7e2; display:block; }
@media(max-width:620px) { .person-photo {width:86px;height:112px;} }

/* Consistent identity-preserving portrait photography — Oct 2026 */
.team-section .doctor-portrait{overflow:hidden;min-height:440px;background:#e8e9e6;}
.team-section .doctor-profile-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;z-index:0;}
.team-section .doctor-portrait .portrait-caption{z-index:2;box-shadow:0 2px 12px rgba(0,0,0,.13);max-width:calc(100% - 48px);}
.team-section .wilson-photo-portrait .doctor-profile-photo{object-position:center center;}
.team-section .person-photo{border-radius:4px;object-position:center 31%;}
@media(max-width:930px){.team-section .doctor-portrait{min-height:460px;}}

/* Additional clinical service providers, 2026-10-29 */
.service-provider-note{display:flex;align-items:center;justify-content:space-between;gap:35px;border:1px solid #deddd3;background:#fffdf8;padding:33px 36px;margin:32px 0 14px;border-radius:4px}
.service-provider-note h3{margin:9px 0 10px;font-family:Georgia,serif;font-size:clamp(1.65rem,2.9vw,2.25rem);font-weight:500;color:#18393d}
.service-provider-note p{max-width:700px;line-height:1.7;margin:0;color:#526568}
.service-provider-labels{min-width:225px;display:flex;flex-direction:column;gap:11px}
.service-provider-labels span{border:1px solid #ddd8cb;padding:9px 14px;color:#26444a;font-size:.83rem;font-weight:700;letter-spacing:.03em;text-align:center}
.service-provider-disclaimer{background:#f4f2ec;color:#405a5d;padding:18px 22px;margin:28px 0 0;border-left:3px solid #a9946f;line-height:1.6}
@media(max-width:720px){.service-provider-note{flex-direction:column;align-items:stretch;padding:27px 24px}.service-provider-labels{min-width:0}}

/* Launch-ready team portraits and patient contact workflow, 2026-10-29 */
.launch-team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:30px}
.launch-team-card{min-width:0;margin:0;background:#fff;border:1px solid #e6e6e1;border-radius:7px;overflow:hidden;box-shadow:0 8px 24px rgba(20,46,52,.06)}
.launch-team-card.launch-doctor{grid-column:span 2}
.launch-team-card img{display:block;width:100%;height:300px;object-fit:cover;object-position:top center;background:#eae8e3}
.launch-team-card.launch-doctor img{height:370px;object-fit:contain;background:#f0f0ee}
.launch-team-card figcaption{text-align:center;padding:18px 10px 22px}
.launch-team-card figcaption h3{font-family:Georgia,serif;font-size:clamp(1.05rem,2vw,1.5rem);line-height:1.2;margin:0 0 9px;color:#1b343b;font-weight:500}
.launch-team-card figcaption p{margin:0;font-weight:600;font-size:.76rem;text-transform:uppercase;letter-spacing:.11em;color:#586367}
.launch-team-others{margin:32px 0 42px;font-size:1rem;color:#40545a}
.team-section .service-provider-note{margin-top:30px}
.launch-doctor-story{background:#faf7f1}
.appointment-email-block{padding:36px 0}
.appointment-email-card{background:#f5f6f1;border:1px solid #e3e8e2;border-radius:14px;padding:clamp(25px,4vw,48px)}
.appointment-email-card h2{margin:10px 0 12px;font-size:clamp(1.8rem,3.5vw,2.8rem)}
.appointment-email-card > p{max-width:780px;line-height:1.75}
.launch-appointment-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:24px 0}
.launch-appointment-actions .btn{white-space:normal;max-width:100%}
.privacy-small{font-size:.83rem;color:#4d6066}
@media(max-width:720px){.launch-team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.launch-team-card.launch-doctor{grid-column:span 1}.launch-team-card img,.launch-team-card.launch-doctor img{height:240px;object-fit:contain}.launch-team-card figcaption{padding:13px 6px 16px}.launch-team-card figcaption h3{font-size:1.05rem}.launch-team-card figcaption p{font-size:.64rem;letter-spacing:.075em}.appointment-email-block{padding:20px 0}}
@media(max-width:420px){.launch-team-card img,.launch-team-card.launch-doctor img{height:190px}}
