:root{--ink:#292720;--muted:#706a5b;--cream:#f7f3e8;--line:#ded7c4;--sand:#eae2c9;--white:#fffdf7}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:154px}
html.lenis{scroll-behavior:auto}
body{margin:0;color:var(--ink);background:var(--white);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.7}
a{color:inherit;text-decoration:none}
button,summary,a{-webkit-tap-highlight-color:transparent}
a,button,summary{touch-action:manipulation}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b77935;outline-offset:5px}
button{font:inherit}
img{display:block;max-width:100%}
p{margin:0 0 1.2em}
h1,h2,h3,h4{font-family:Manrope,sans-serif;margin:0;line-height:1.18;font-weight:500;letter-spacing:-.045em}
h2{font-size:clamp(34px,3.4vw,49px)}
h2 em,h1 em{font-style:normal;color:#82764e}
h3{font-size:24px}
h4{font-size:20px}
ul{padding-left:22px}
li{margin:8px 0}
.wrap{width:min(1320px,calc(100% - 112px));margin-inline:auto}
.utility{background:#d8cba1;color:var(--ink);font-size:11px;letter-spacing:.035em}
.utility .wrap{display:flex;justify-content:space-between;padding-block:9px}
.utility a{display:flex;gap:16px}
.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line)}
.nav-row{height:146px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:10px;font-family:Manrope,sans-serif;font-size:27px;font-weight:600;line-height:1.05;letter-spacing:-1.5px;flex-shrink:0}
.brand img{width:82px;height:130px;object-fit:contain}
.brand-small{display:block;font-family:'DM Sans',sans-serif;font-size:10px;font-weight:500;letter-spacing:3.3px;margin-top:7px}
nav{display:flex;gap:26px;align-items:center;font-size:12px;font-weight:500}
nav>a:hover,.text-link:hover{color:#82764e}
summary{cursor:pointer;list-style:none}
summary::-webkit-details-marker{display:none}
.mega summary{display:flex;gap:9px;align-items:center}
.mega-panel{position:absolute;top:146px;left:0;width:100%;padding:32px max(56px,calc((100vw - 1320px)/2)) 42px;background:var(--white);box-shadow:0 18px 28px #30291812;border-bottom:1px solid var(--line)}
.mega-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:24px}
.mega-heading>span{font-size:22px;font-family:Manrope,sans-serif}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:#b8aa78;color:#25231d;padding:16px 24px;font-size:13px;font-weight:500;border-radius:4px;transition:background .2s,transform .2s;line-height:1.4}
.button:hover{background:#c2b581;transform:translateY(-2px)}
.button span{font-size:20px}
.nav-book{padding:13px 18px;gap:20px;font-size:12px}
.menu-toggle{display:none}
.hero{background:var(--cream);padding:55px 0 59px}
.hero-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:76px;align-items:center}
.eyebrow{font-size:10px;font-weight:600;letter-spacing:2px;line-height:1.5;margin-bottom:23px}
.small-cross{font-size:19px;vertical-align:middle;margin-right:9px}
.hero h1{font-size:clamp(39px,3.55vw,55px);line-height:1.12;max-width:620px;letter-spacing:-2.1px}
.hero-description{font-size:17px;max-width:365px;color:var(--muted);margin:24px 0 29px}
.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}
.text-link{display:inline-flex;align-items:center;gap:18px;font-size:13px;font-weight:600}
.hero-note{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:21px;margin-top:30px;font-size:11px;color:var(--muted)}
.check{border:1px solid #9c916c;border-radius:50%;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;font-size:10px}
.hero-photo{position:relative;height:550px;border-radius:110px 5px 5px 5px;overflow:hidden;background:#c6b878}
.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:57% center}
.hero-photo:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#332b1780)}
.photo-label{position:absolute;z-index:1;bottom:62px;left:28px;right:28px;background:#fbf7eaf0;border:1px solid #ffffff80;backdrop-filter:blur(12px);display:flex;gap:19px;align-items:center;padding:20px 22px;border-radius:4px}
.photo-label p{margin:0;font-size:21px;line-height:1.4;letter-spacing:-.7px;font-family:Manrope,sans-serif}
.photo-label strong{font-weight:500}
.photo-mark{font-size:43px;font-weight:400}
.photo-corner{margin-left:auto;font-size:26px}
.image-caption{position:absolute;bottom:25px;left:29px;color:white;font-size:8px;letter-spacing:2px;z-index:1}
.care-strip{background:var(--sand);border-block:1px solid #d9cfaf}
.care-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:23px;font-size:13px}
.care-strip span:first-child{font-size:11px;color:#706747}
.care-strip i{font-size:16px;font-style:normal;color:#928461}
.section{padding-block:94px}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:42px}
.section-heading>p{max-width:410px;color:var(--muted);font-size:14px;margin-bottom:3px}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}
.service-card{border:1px solid var(--line);border-radius:5px;padding:27px 25px 23px;background:var(--white);transition:background .2s,transform .2s}
.service-card:hover{background:var(--sand);transform:translateY(-4px)}
.service-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:39px}
.service-symbol{width:48px;height:48px;border:1px solid #d3c8a8;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f0ead7;font-size:30px}
.number{font-size:10px;color:#8b826b}
.service-card h3{font-size:23px;letter-spacing:-.8px;margin-bottom:14px;min-height:55px}
.service-card>p{font-size:12px;color:var(--muted);min-height:41px;max-width:170px}
.card-link{display:flex;align-items:center;justify-content:space-between;font-size:11px;margin-top:27px;padding-top:16px;border-top:1px solid var(--line)}
.card-link>span{font-size:21px}
.service-foot{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:29px;font-size:12px}
.service-foot p{margin:0;color:var(--muted)}
.about{background:var(--cream)}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.about-grid h2{margin-bottom:24px}
.about-grid p{color:var(--muted);font-size:14px}
.clinic-photo{position:relative}
.clinic-photo img{width:100%;height:375px;object-fit:cover;border-radius:4px 70px 4px 4px;image-rendering:auto}
.clinic-photo>span{position:absolute;bottom:20px;left:20px;background:var(--cream);padding:12px 16px;font-size:8px;letter-spacing:1.6px}
.inline-details{border-top:1px solid var(--line);margin:26px 0}
.inline-details summary{font-size:13px;padding-block:16px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.inline-details h3{font-size:20px;margin:22px 0 12px}
.inline-details p{font-size:14px}
.values{padding-top:62px;margin-top:63px;border-top:1px solid var(--line)}
.values>h3{max-width:570px;font-size:31px;margin-bottom:35px}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}
.values-grid h4{margin:12px 0 15px;font-size:20px;letter-spacing:-.6px}
.values-grid p{font-size:13px;color:var(--muted);margin:0}
.welcome{display:grid;grid-template-columns:.7fr 1.3fr;gap:0;background:var(--sand);border-radius:5px;overflow:hidden}
.portrait{min-height:455px}
.portrait img{width:100%;height:100%;max-height:610px;object-fit:cover;object-position:center 30%}
.welcome-copy{padding:48px 55px}
.welcome-copy h3{font-size:39px}
.credentials{font-size:12px;margin-top:15px}
.start-date{font-size:11px;display:inline-block;border:1px solid #c8ba8e;padding:5px 10px;border-radius:3px}
.welcome-copy>p:not(.eyebrow):not(.credentials):not(.start-date){font-size:14px}
.provider-list{margin-top:35px}
.provider-list details{border-bottom:1px solid var(--line)}
.provider-list summary{display:grid;grid-template-columns:220px 1fr 20px;gap:30px;align-items:center;padding:24px 0;font-size:12px;color:var(--muted)}
.provider-category{font-family:Manrope,sans-serif;font-size:19px;color:var(--ink);letter-spacing:-.6px}
.provider-list b{font-weight:400;font-size:23px}
.provider-body{padding:0 35px 24px 250px;font-size:14px}
.provider-body a{display:flex;gap:20px;text-decoration:underline;text-underline-offset:5px}
.treatments{background:#e1d3a7;color:var(--ink)}
.treatments h2 em{color:#75663f}
.treatments .section-heading>p{color:#655a40}
.directory{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}
.directory h3{font-family:'DM Sans',sans-serif;font-size:12px;font-weight:600;letter-spacing:0;margin-bottom:17px}
.directory a{display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:12px;padding:11px 0;border-bottom:1px solid #aa9c7250}
.directory a:hover{color:#b88e56}
.directory a span{font-size:16px}
.treatments .directory h3{color:#5d5135}
.conditions{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}
.conditions>div>p:not(.eyebrow){font-size:14px;color:var(--muted);margin-top:25px}
.accordion details{border-bottom:1px solid var(--line)}
.accordion details:first-child{border-top:1px solid var(--line)}
.accordion summary{padding:23px 0;display:flex;justify-content:space-between;align-items:center;gap:30px;line-height:1.6;font-size:14px}
.accordion summary span{font-size:24px;font-weight:400;flex-shrink:0}
.accordion details[open]>summary span,.inline-details[open]>summary span{transform:rotate(45deg)}
.accordion p,.accordion ul{font-size:13px;color:var(--muted);padding-right:20px}
.accordion details>a{display:flex;justify-content:space-between;margin:24px 0;font-size:12px}
.patient-section{background:var(--cream)}
.faq-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}
.faq-grid h2{margin-bottom:25px}
.faq-grid>div>p:not(.eyebrow){font-size:14px;color:var(--muted)}
.contact{display:grid;grid-template-columns:1.1fr .9fr;gap:110px;align-items:center}
.contact h2{font-size:55px;margin-bottom:26px}
.contact>div>p:not(.eyebrow){max-width:470px;color:var(--muted);font-size:14px}
.contact .hero-actions{margin-top:28px}
.contact-card{background:var(--sand);padding:38px 42px;border-radius:5px}
.contact-card h3{margin-bottom:19px}
.contact-card p{font-size:14px}
.contact-card hr{border:0;border-top:1px solid #d0c4a2;margin:25px 0}
.contact-links{display:grid;gap:7px;font-size:13px}
.contact-small{font-size:11px!important;margin-top:20px;margin-bottom:0;color:var(--muted)}
footer{background:#ded1a9;color:var(--ink);padding:48px 0 20px}
.footer-main{display:grid;grid-template-columns:1fr 1.1fr 1fr .5fr;gap:35px;align-items:start;padding-bottom:45px}
.footer-main>.brand{display:block}.footer-main .brand img{width:110px;height:auto;mix-blend-mode:multiply}
.footer-main p,.footer-main>div{font-size:12px;color:#5c533e}
.footer-main>div{display:grid;gap:8px}
.footer-bottom{border-top:1px solid #a99b7055;padding-top:21px;display:flex;justify-content:space-between;color:#655a43;font-size:10px}
.skip-link{position:fixed;left:20px;top:-100px;z-index:100;background:var(--ink);color:white;padding:12px}
.skip-link:focus{top:12px}

@media(min-width:1600px){.hero h1{font-size:56px}
}
@media(max-width:1200px){.wrap{width:calc(100% - 64px)}
nav{gap:16px;font-size:11px}
.nav-row{gap:18px}
.brand{font-size:23px}
.brand svg{width:36px}
.brand-small{font-size:8px}
.nav-book{font-size:11px;padding:12px;gap:15px}
.hero-grid{gap:40px}
.hero-photo{height:520px}
.hero h1{font-size:43px}
.service-card{padding:22px 18px}
.service-card h3{font-size:20px}
.about-grid,.conditions,.faq-grid{gap:55px}
.contact{gap:65px}
.hero-actions{gap:20px}
}

@media(max-width:980px){.brand img{height:112px;width:71px}.menu-toggle{display:flex;gap:15px;align-items:center;background:none;border:0;color:var(--ink);margin-left:auto;padding:10px;font-size:13px}
nav{display:none;position:absolute;top:126px;left:0;right:0;background:var(--white);padding:20px 32px;box-shadow:0 20px 20px #29272015;max-height:calc(100dvh - 150px);overflow:auto}
nav.is-open{display:grid;gap:0}
nav>a,.mega>summary{padding:14px 0;font-size:15px;border-bottom:1px solid var(--line)}
.nav-row{height:126px}
.mega-panel{position:static;padding:20px 0;box-shadow:none}
.mega-heading{display:none}
.mega .directory{grid-template-columns:1fr 1fr;gap:25px}
.hero-grid{gap:30px}
.hero h1{font-size:37px;letter-spacing:-1.5px}
.hero-photo{height:510px}
.photo-label{left:20px;right:20px;padding:17px;gap:12px}
.photo-label p{font-size:18px}
.photo-mark{font-size:33px}
.hero-note{font-size:10px}
.hero-actions{gap:18px}
.hero-actions .button{gap:16px;padding:15px 18px}
.hero-description{font-size:15px}
.care-strip .wrap{font-size:11px;gap:12px}
.care-strip span:first-child{display:none}
.section{padding-block:70px}
.section-heading{gap:35px}
.section-heading>p{max-width:340px;font-size:13px}
.service-grid{grid-template-columns:repeat(2,1fr)}
.service-card h3{min-height:0;font-size:24px}
.service-top{margin-bottom:22px}
.service-card>p{min-height:0;max-width:none}
.about-grid{gap:35px}
.clinic-photo img{height:340px}
.values-grid{gap:30px}
.welcome-copy{padding:35px}
.welcome-copy h3{font-size:31px}
.provider-list summary{grid-template-columns:170px 1fr 15px;gap:20px}
.provider-body{padding-left:190px}
.directory{grid-template-columns:repeat(2,1fr);gap:35px}
.conditions,.faq-grid{gap:40px}
.contact{gap:40px}
.contact h2{font-size:43px}
.contact-card{padding:28px}
.footer-main{grid-template-columns:1fr 1fr}
.footer-main .brand{font-size:27px}
.footer-main .brand-small{font-size:10px}
}

@media(max-width:640px){.brand img{height:100px;width:64px}html{scroll-padding-top:120px}
.wrap{width:calc(100% - 40px)}
.utility .wrap{padding-block:7px;justify-content:center;font-size:9px}
.utility a{display:none}
.nav-row{height:110px;gap:10px}
.brand{font-size:23px;gap:7px}
.brand-small{font-size:8px;letter-spacing:2.9px}
.brand svg{width:34px;height:36px}
.nav-book{display:none}
nav{top:110px;padding:12px 20px}
.menu-toggle{font-size:12px;padding:10px 0 10px 10px}
.hero{padding:36px 0 30px}
.hero-grid{grid-template-columns:1fr;gap:30px}
.eyebrow{font-size:9px;letter-spacing:1.6px;margin-bottom:19px}
.hero h1{font-size:42px;line-height:1.13;max-width:460px;letter-spacing:-1.9px}
.hero-description{max-width:310px;font-size:16px;margin-block:22px}
.hero-actions{gap:23px}
.hero-actions .button{font-size:12px;padding:16px 19px;gap:19px}
.text-link{font-size:12px;gap:12px}
.hero-note{margin-top:24px;padding-top:18px;font-size:10px}
.hero-photo{height:340px;border-top-left-radius:70px}
.hero-photo>img{object-position:center 58%}
.photo-label{bottom:49px;left:20px;right:20px;padding:15px 20px}
.photo-label p{font-size:18px}
.photo-mark{font-size:36px}
.image-caption{font-size:7px;left:20px;bottom:21px;letter-spacing:1.5px}
.care-strip .wrap{display:grid;grid-template-columns:1fr 1fr;gap:12px;text-align:center;padding-block:19px;font-size:11px}
.care-strip i{display:none}
.section{padding-block:55px}
.section-heading{display:block;margin-bottom:28px}
.section-heading>p{margin-top:23px;max-width:none;font-size:14px}
h2{font-size:34px}
.service-grid{gap:12px}
.service-card{padding:19px 15px 16px}
.service-card h3{font-size:19px;min-height:46px;letter-spacing:-.7px}
.service-top{margin-bottom:28px}
.service-symbol{height:40px;width:40px;font-size:26px}
.service-card>p{font-size:11px;min-height:38px}
.card-link{font-size:10px;gap:10px;margin-top:20px;line-height:1.5}
.card-link>span{font-size:18px}
.service-foot{flex-direction:column;gap:6px;margin-top:24px}
.about-grid{grid-template-columns:1fr;gap:30px}
.clinic-photo img{height:260px}
.clinic-photo>span{font-size:7px;padding:10px 12px;left:15px;bottom:15px}
.values{padding-top:35px;margin-top:30px}
.values>h3{font-size:26px}
.values-grid{grid-template-columns:1fr;gap:26px}
.values-grid>div{border-bottom:1px solid var(--line);padding-bottom:22px}
.welcome{grid-template-columns:1fr}
.portrait{min-height:0;height:360px}
.portrait img{object-position:center 23%}
.welcome-copy{padding:29px 24px}
.welcome-copy h3{font-size:31px}
.credentials{font-size:10px}
.provider-list summary{grid-template-columns:1fr 20px;gap:10px;padding:21px 0}
.provider-category{font-size:20px}
.provider-list summary>span:nth-child(2){grid-column:1;font-size:11px}
.provider-list summary b{grid-row:1;grid-column:2}
.provider-body{padding:0 0 22px}
.directory{gap:30px 22px}
.directory h3{font-size:11px;line-height:1.5}
.directory a{font-size:11px;padding:12px 0;line-height:1.5}
.conditions,.faq-grid,.contact{grid-template-columns:1fr;gap:30px}
.conditions>div>p:not(.eyebrow){margin-bottom:0}
.accordion summary{font-size:13px;padding:20px 0;gap:20px}
.faq-grid>div>p:last-child{margin-bottom:0}
.contact h2{font-size:39px}
.contact-card{padding:29px}
.footer-main{grid-template-columns:1fr 1fr;gap:28px 20px;padding-bottom:28px}
.footer-main>.brand,.footer-main>p{grid-column:1 / -1}
.footer-main>p{margin-top:-8px;margin-bottom:0}
.footer-main p,.footer-main>div{font-size:11px}
.footer-bottom{font-size:9px;gap:20px}
.mega .directory{gap:26px 20px}
.mega .directory a{font-size:12px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*{transition:none!important}
}



.site-header .brand img{width:88px;height:91px}
@media(max-width:640px){.site-header .brand img{width:70px;height:72px}}

html{scroll-padding-top:112px}
.site-header{background:rgba(255,253,248,.97);backdrop-filter:blur(16px);border-bottom:1px solid #d9d0ba80;box-shadow:0 3px 18px #3b321204}
.nav-row{height:100px;gap:30px;position:relative}
.site-header .header-wordmark{display:flex;flex-direction:column;align-items:flex-start;gap:0;min-width:180px}
.wordmark-name{font-family:Georgia,'Times New Roman',serif;font-size:35px;font-weight:400;letter-spacing:-1.5px;line-height:1}
.wordmark-descriptor{font-family:'DM Sans',sans-serif;font-size:9px;letter-spacing:3.5px;font-weight:500;line-height:1;margin-top:10px;padding-left:2px}
#main-nav{gap:6px;font-size:12px;font-weight:500}
#main-nav>a:not(.button),.mega>summary{padding:12px 13px;border-radius:30px;transition:background .18s,color .18s}
#main-nav>a:not(.button):hover,.mega>summary:hover,.mega[open]>summary{background:#eee6d0;color:#292720}
.mega>summary{gap:12px;min-height:44px}
.nav-chevron{width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}
.mega[open] .nav-chevron{transform:rotate(225deg) translate(-1px,-1px)}
.button{min-height:54px;padding:8px 9px 8px 23px;border:1px solid #bbae7c;border-radius:40px;background:#d6c695;color:#292720;font-size:13px;font-weight:600;gap:26px;box-shadow:inset 0 1px 0 #fff8df80,0 3px 8px #5541170a;transition:background .18s,box-shadow .18s,transform .18s}
.button>span{display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:#292720;color:#fff9e7;font-size:19px;line-height:1;transition:transform .18s,background .18s}
.button:hover{background:#e2d3a9;box-shadow:0 5px 14px #55411716;transform:translateY(-1px)}
.button:hover>span{transform:rotate(5deg);background:#4a4330}
.button:active{transform:translateY(0);box-shadow:none}
.nav-book{background:#302d24;border-color:#302d24;color:#fff9e7;min-height:49px;font-size:11px;padding:7px 8px 7px 19px;gap:19px;white-space:nowrap}
.nav-book>span{background:#d6c695;color:#292720;width:32px;height:32px;flex-basis:32px}
.nav-book:hover{background:#484131;color:white}
.nav-book:hover>span{background:#e7d8ad}
.text-link{padding-block:7px;border-bottom:1px solid transparent;transition:border-color .18s,color .18s}
.text-link:hover{border-bottom-color:#9c8956;color:#665630}
.mega-panel{top:calc(100% - 3px);left:0;width:100%;padding:30px 32px 0;background:#fffdf8;border:1px solid #ddd3bc;border-radius:16px;box-shadow:0 24px 55px #3b311b24,0 4px 12px #3b311b08;max-height:calc(100dvh - 135px);overflow:auto}
.mega-heading{padding-bottom:23px;margin-bottom:25px;gap:20px;border-color:#e7dfce}
.mega-heading .eyebrow{font-size:9px;color:#84734d;letter-spacing:1.8px;margin:0 0 10px}
.mega-heading>div>span{font-family:Manrope,sans-serif;font-size:24px;letter-spacing:-.8px;line-height:1.25}
.menu-overview{display:flex;gap:20px;align-items:center;font-size:12px;white-space:nowrap}
.menu-overview>span{display:flex;align-items:center;justify-content:center;border:1px solid #d7ccb0;border-radius:50%;width:32px;height:32px;font-size:17px}
.menu-overview:hover>span{background:#eae2c9}
.mega-panel .directory{grid-template-columns:1.08fr 1fr 1fr 1fr;gap:26px;padding-bottom:28px}
.mega-panel .directory h3{font-size:10px;font-weight:600;color:#7f7050;letter-spacing:.25px;margin:0 0 15px;padding-inline:10px;line-height:1.4}
.mega-panel .directory a{border:0;padding:11px 10px;min-height:44px;border-radius:7px;font-size:12px;line-height:1.5;transition:background .18s,color .18s}
.mega-panel .directory a:hover{background:#eee6d0;color:#292720}
.mega-panel .directory a>span{color:#98845a;font-size:16px;transition:transform .18s}
.mega-panel .directory a:hover>span{transform:translate(2px,-2px)}
.mega-panel .directory-group:first-child{background:#f3eddd;border-radius:10px;padding:17px 10px 10px;margin-top:-2px}
.mega-panel .directory-group:first-child h3{margin-bottom:8px}
.mega-panel .directory-group:first-child a{font-weight:600}
.mega-panel .directory-group:not(:first-child){padding-top:15px}
.mega-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #e2d9c3;background:#faf6eb;margin:0 -32px;padding:17px 32px;font-size:11px;color:#7a6c50}
.mega-bottom a{color:#393327;font-weight:500}
.mega-bottom>span>a{margin-left:7px;text-decoration:underline;text-decoration-color:#c0b28d;text-underline-offset:4px}
.mega-bottom>a{display:flex;gap:17px;white-space:nowrap}
#main-nav .mobile-book{display:none}
@media(max-width:1200px){.nav-row{gap:15px}.site-header .header-wordmark{min-width:160px}.wordmark-name{font-size:31px}.wordmark-descriptor{font-size:8px;letter-spacing:3.2px}#main-nav{gap:0}#main-nav>a:not(.button),.mega>summary{padding:12px 9px;font-size:11px}.nav-book{gap:12px;padding-left:16px}.mega-panel .directory{gap:14px}}
@media(max-width:980px){.nav-row{height:88px}.wordmark-name{font-size:33px}.wordmark-descriptor{font-size:9px}.menu-toggle{border:1px solid #d8ceb6;border-radius:30px;padding:9px 16px;gap:13px;min-height:44px;background:#faf7ef}.menu-toggle[aria-expanded=true]{background:#eae2c9}#main-nav{top:calc(100% + 7px);left:0;right:0;padding:15px;background:#fffdf8;border:1px solid #ddd3bc;border-radius:14px;box-shadow:0 20px 40px #3b311b20;max-height:calc(100dvh - 145px)}#main-nav>a:not(.button),.mega>summary{padding:15px;font-size:14px;border:0;border-radius:7px}.mega>summary{justify-content:space-between}.mega-panel{position:static;max-height:none;overflow:visible;border:0;box-shadow:none;border-radius:0;padding:15px 0 0;width:auto}.mega-heading{display:none}.mega-panel .directory{grid-template-columns:1fr 1fr;gap:20px 12px;padding-bottom:20px}.mega-panel .directory a{font-size:12px}.mega-bottom{margin:0;padding:16px 10px;display:block;border-radius:8px;line-height:1.8}.mega-bottom>span>a{display:block;margin-left:0}.mega-bottom>a{margin-top:9px}#main-nav .mobile-book{display:flex;margin:12px 0 0;justify-content:space-between}.nav-book{display:none}.hero-actions .button{padding:8px 9px 8px 23px;gap:24px}}
@media(max-width:640px){html{scroll-padding-top:96px}.nav-row{height:82px}.site-header .header-wordmark{min-width:0}.wordmark-name{font-size:30px}.wordmark-descriptor{font-size:8px;letter-spacing:3px;margin-top:8px}.menu-toggle{font-size:11px;padding:9px 14px}.button,.hero-actions .button{font-size:12px;min-height:52px;padding:8px 8px 8px 20px;gap:18px}.hero-actions{gap:17px}.mega-panel .directory h3{font-size:10px}.mega-panel .directory a{font-size:11px;padding:10px 8px}.mega-panel .directory-group:first-child{padding-inline:5px}.mega-panel .directory{gap:15px 8px}.mega-panel .directory-group:not(:first-child){padding-top:15px}}

.cinematic-hero{position:relative;isolation:isolate;overflow:hidden;background:#27231b;padding:0;color:#fffaf0}
.hero-backdrop{position:absolute;inset:0;z-index:-2;overflow:hidden}
.hero-backdrop img{width:120%;max-width:none;height:100%;object-fit:cover;object-position:50% 45%;animation:sunrise-reveal 1.6s ease-out both}
.cinematic-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(25,24,18,.89) 0%,rgba(29,25,17,.79) 30%,rgba(35,27,16,.46) 55%,rgba(32,25,16,.03) 83%),linear-gradient(0deg,rgba(25,23,17,.66),transparent 36%)}
.cinematic-content{min-height:690px;min-height:clamp(640px,calc(100svh - 138px),830px);display:flex;flex-direction:column;justify-content:center;position:relative;padding-top:72px;padding-bottom:88px}
.cinematic-hero .hero-copy{max-width:740px;padding-bottom:54px}
.cinematic-hero .eyebrow{display:flex;align-items:center;gap:14px;color:#eee3c5;font-size:10px;letter-spacing:2.5px;margin-bottom:29px}
.hero-rule{height:1px;width:34px;background:#d9c48d}
.cinematic-hero h1{font-size:clamp(45px,4.45vw,68px);line-height:1.1;letter-spacing:-2.5px;max-width:760px;font-weight:400;text-wrap:balance;color:#fffaf0;text-shadow:0 2px 25px #20190820}
.cinematic-hero h1 em{color:#e6d29b}
.cinematic-hero .hero-description{font-size:17px;line-height:1.8;color:#eee7d8;max-width:390px;margin:28px 0 30px}
.cinematic-hero .hero-actions{gap:30px}
.cinematic-hero .button{background:#e3d09a;border-color:#e9d8a9;box-shadow:0 4px 25px #1b160f20}
.cinematic-hero .button:hover{background:#f0dfb2}
.cinematic-hero .text-link{color:#fff4db;border-bottom:1px solid #e4d4ac65;padding-block:12px;font-weight:500}
.cinematic-hero .text-link:hover{border-color:#fff4db}
.cinematic-footer{position:absolute;bottom:28px;left:0;right:0;border-top:1px solid #f1e4c738;padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:28px;color:#e4dbc6}
.cinematic-footer p{font-size:11px;letter-spacing:.2px;margin:0}
.cinematic-footer>span{display:flex;gap:16px;font-size:8px;letter-spacing:1.8px}
@keyframes sunrise-reveal{from{transform:scale(1.035);opacity:.7}to{transform:scale(1);opacity:1}}
@media(min-width:1600px){.cinematic-hero .hero-copy{max-width:820px}.cinematic-hero h1{max-width:820px;font-size:72px}}
@media(max-width:980px){.cinematic-content{min-height:710px;padding-top:65px}.cinematic-hero .hero-copy{max-width:630px}.cinematic-hero h1{font-size:54px}.hero-backdrop img{width:140%;object-position:center}.cinematic-hero:after{background:linear-gradient(90deg,#191812e8,#201c12a8 55%,#201c1230),linear-gradient(0deg,#1917119e,transparent 45%)}.cinematic-footer>span{font-size:7px;letter-spacing:1.2px;gap:10px}}
@media(max-width:640px){.cinematic-content{min-height:760px;min-height:max(740px,calc(100svh - 110px));padding-top:58px;padding-bottom:108px;justify-content:center}.cinematic-hero .hero-copy{padding-bottom:20px;max-width:100%}.cinematic-hero h1{font-size:clamp(37px,10.4vw,48px);letter-spacing:-1.6px;line-height:1.13;text-wrap:initial}.cinematic-hero .eyebrow{font-size:8px;letter-spacing:1.8px;gap:12px;margin-bottom:27px}.hero-rule{width:24px}.hero-backdrop img{width:100%;object-position:58% center}.cinematic-hero:after{background:linear-gradient(90deg,#191812d9,#211b1599),linear-gradient(0deg,#1b160e8c,transparent 45%)}.cinematic-hero .hero-description{font-size:15px;max-width:290px;line-height:1.8;margin:24px 0 27px}.cinematic-hero .hero-actions{gap:18px}.cinematic-hero .text-link{font-size:11px}.cinematic-footer{bottom:25px;display:block;padding-top:19px}.cinematic-footer p{font-size:10px}.cinematic-footer>span{margin-top:13px;font-size:7px;letter-spacing:1.5px}}
@media(prefers-reduced-motion:reduce){.hero-backdrop img{animation:none}}

.care-cards .service-card{display:flex;flex-direction:column;background:#faf7ee;border:1px solid #e1d7bf;border-radius:10px;padding:27px 24px 22px;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}
.care-cards .service-top{margin-bottom:34px}
.care-cards .number{font-family:Georgia,serif;font-size:26px;font-style:italic;color:#968257;line-height:1}
.care-cards .service-card h3{font-size:24px;min-height:58px;letter-spacing:-.9px}
.care-cards .service-card>p{font-size:12px;color:#716753;min-height:42px;max-width:190px}
.care-cards .card-link{margin-top:auto;padding-top:19px;border-color:#ded2b6;font-size:11px;gap:12px;min-height:58px}
.care-cards .card-link>span{width:31px;height:31px;flex:0 0 31px;border:1px solid #cdbd94;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;transition:background .2s,color .2s}
.care-cards .service-card:hover{background:#eee5ce;border-color:#c5b17e;box-shadow:0 12px 24px #58421b0c;transform:translateY(-4px)}
.care-cards .service-card:hover .card-link>span{background:#302c22;border-color:#302c22;color:#fff7df}
@media(max-width:980px){.care-cards .service-card h3{min-height:0}.care-cards .service-card>p{max-width:none}}
@media(max-width:640px){.care-cards .service-card{padding:20px 16px 17px}.care-cards .service-top{margin-bottom:27px}.care-cards .number{font-size:24px}.care-cards .service-card h3{font-size:19px;min-height:46px;letter-spacing:-.6px}.care-cards .service-card>p{font-size:11px;min-height:43px}.care-cards .card-link{font-size:10px;gap:8px}.care-cards .card-link>span{width:25px;height:25px;flex-basis:25px;font-size:16px}}

.mission-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:42px}
.mission-card{padding:33px 36px 35px;border:1px solid #ddd2b7;border-radius:10px;background:#fffdf7}
.mission-card:first-child{background:#eee5ce;border-color:#d8c99f}
.mission-card .eyebrow{font-size:9px;letter-spacing:1.8px;color:#837149;margin-bottom:19px}
.mission-card h3{font-size:25px;line-height:1.25;letter-spacing:-.7px;max-width:430px;margin-bottom:18px}
.mission-card>p:not(.eyebrow){font-size:14px;line-height:1.85;color:#706858;margin-bottom:0}
@media(max-width:800px){.mission-cards{gap:18px}.mission-card{padding:27px}.mission-card h3{font-size:23px}.mission-card>p:not(.eyebrow){font-size:13px}}
@media(max-width:640px){.mission-cards{grid-template-columns:1fr;margin-top:28px;gap:16px}.mission-card{padding:26px 24px}.mission-card h3{font-size:24px}}

.clinic-story{background:#ede5d2;padding:88px 0 80px;border-block:1px solid #e1d7bd}
.clinic-story-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:end;margin-bottom:42px}
.clinic-story-intro .eyebrow{color:#7b6b48;font-size:9px;letter-spacing:1.9px;margin-bottom:23px}
.clinic-story-intro h2{font-size:clamp(36px,3.6vw,53px);font-weight:400;line-height:1.12;letter-spacing:-1.8px}
.clinic-story-intro h2 em{font-family:Georgia,serif;font-style:italic;font-size:1.08em;letter-spacing:-1.8px;color:#806e43;display:inline-block;margin-top:8px}
.clinic-story-description p{font-size:14px;line-height:1.9;color:#6c624f;margin:0;max-width:485px}
.clinic-story-panels{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;align-items:stretch}
.clinic-story-photo{margin:0;background:#ddd0ae;display:flex;flex-direction:column;border-radius:9px;overflow:hidden;min-width:0}
.clinic-story-photo>img{display:block;width:100%;height:225px;object-fit:cover}
.clinic-story-photo figcaption{padding:25px 28px 27px;flex:1;display:flex;flex-direction:column;align-items:start}
.clinic-story-photo figcaption>span{font-size:8px;letter-spacing:1.7px;color:#685a39}
.clinic-story-photo figcaption p{font-family:Manrope,sans-serif;font-size:27px;line-height:1.25;letter-spacing:-.9px;margin:13px 0 22px}
.clinic-story-photo figcaption a{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;font-size:11px;border-top:1px solid #b7a67e;padding-top:15px}
.clinic-story-photo figcaption a>span{font-size:20px}
.clinic-principle{background:#fffdf7;padding:34px 30px 27px;border-radius:9px;display:flex;flex-direction:column;border:1px solid #e4dac5}
.clinic-principle .eyebrow{font-size:8px;color:#8d7950;letter-spacing:1.8px;margin:0 0 37px}
.clinic-principle h3{font-size:28px;line-height:1.22;font-weight:400;letter-spacing:-.9px;margin-bottom:24px}
.clinic-principle>p:not(.eyebrow){font-size:13px;line-height:1.85;color:#776d59;margin-bottom:27px}
.principle-baseline{margin-top:auto;padding-top:20px;border-top:1px solid #e3dac6;font-size:10px;line-height:1.6;color:#8b7750}
.clinic-principle-dark{background:#363127;border-color:#363127;color:#fff5de}
.clinic-principle-dark .eyebrow{color:#d2ba80}
.clinic-principle-dark>p:not(.eyebrow){color:#dfd5bf}
.clinic-principle-dark .principle-baseline{border-color:#6c6046;color:#dac18a}
.clinic-promises{padding-top:44px;margin-top:48px;border-top:1px solid #d5c7a8}
.clinic-promises-heading{display:flex;justify-content:space-between;align-items:center;gap:35px;margin-bottom:31px}
.clinic-promises-heading .eyebrow{margin:0;color:#85724c;font-size:8px;letter-spacing:1.5px}
.clinic-promises-heading h3{font-size:23px;letter-spacing:-.7px;line-height:1.3}
.clinic-promises-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:37px}
.clinic-promises-grid>div+div{border-left:1px solid #d5c7a8;padding-left:30px}
.clinic-promises-grid h4{font-size:17px;font-weight:500;line-height:1.4;letter-spacing:-.4px;margin-bottom:13px}
.clinic-promises-grid p{font-size:12px;color:#786c55;line-height:1.85;margin:0}
@media(max-width:1100px){.clinic-story-intro{gap:45px}.clinic-principle{padding:27px 23px}.clinic-principle h3{font-size:25px}.clinic-story-photo figcaption{padding:23px}.clinic-story-photo figcaption p{font-size:25px}.clinic-principle>p:not(.eyebrow){font-size:12px}.clinic-promises-grid{gap:24px}.clinic-promises-grid>div+div{padding-left:24px}}
@media(max-width:850px){.clinic-story{padding:65px 0}.clinic-story-intro{grid-template-columns:1fr;gap:25px}.clinic-story-description p{max-width:650px}.clinic-story-panels{grid-template-columns:1fr 1fr}.clinic-story-photo{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr}.clinic-story-photo>img{height:260px}.clinic-story-photo figcaption{padding:29px}.clinic-principle{padding:28px}.clinic-principle .eyebrow{margin-bottom:24px}.clinic-promises-heading{display:block}.clinic-promises-heading .eyebrow{margin-bottom:15px}.clinic-promises-grid{gap:20px}.clinic-promises-grid>div+div{padding-left:20px}}
@media(max-width:600px){.clinic-story{padding:52px 0}.clinic-story-intro{gap:22px;margin-bottom:28px}.clinic-story-intro h2{font-size:35px;letter-spacing:-1.3px}.clinic-story-intro h2 em{letter-spacing:-1.3px;font-size:1.05em}.clinic-story-intro .eyebrow{font-size:8px;margin-bottom:20px}.clinic-story-description p{font-size:13px;line-height:1.85}.clinic-story-panels{grid-template-columns:1fr;gap:14px}.clinic-story-photo{display:flex;grid-column:auto}.clinic-story-photo>img{height:225px}.clinic-story-photo figcaption{padding:23px 25px}.clinic-story-photo figcaption p{font-size:27px}.clinic-story-photo figcaption p br{display:none}.clinic-principle{padding:28px 25px}.clinic-principle h3{font-size:28px;margin-bottom:19px}.clinic-principle>p:not(.eyebrow){font-size:13px}.clinic-principle .eyebrow{margin-bottom:23px}.clinic-promises{margin-top:34px;padding-top:31px}.clinic-promises-heading h3{font-size:23px}.clinic-promises-grid{grid-template-columns:1fr;gap:24px}.clinic-promises-grid>div+div{padding:22px 0 0;border-left:0;border-top:1px solid #d5c7a8}.clinic-promises-grid h4{font-size:18px}.clinic-promises-grid p{font-size:13px}}

.accordion summary>span,.inline-details summary>span,.provider-list summary>b{transition:transform .3s cubic-bezier(.22,1,.36,1)}
.provider-list details[open]>summary>b{transform:rotate(45deg)}
details[data-animating="closing"]>summary>span,details[data-animating="closing"]>summary>b{transform:rotate(0deg)}
@media(prefers-reduced-motion:reduce){.accordion summary>span,.inline-details summary>span,.provider-list summary>b{transition:none}}

.clinic-footer{background:#eee6ce;color:#302c22;padding:0;border-top:1px solid #d6c8a3}
.footer-welcome{display:grid;grid-template-columns:1.8fr .85fr 1fr;gap:48px;padding:59px 0 48px;align-items:start}
.footer-identity{display:flex;gap:29px;align-items:flex-start}
.footer-logo{display:block;flex:0 0 110px;background:white;border-radius:5px;overflow:hidden;box-shadow:0 1px 7px #5c482408}
.footer-logo img{width:110px;height:auto}
.footer-description .eyebrow{font-size:8px;letter-spacing:1.5px;color:#80704b;margin:4px 0 16px}
.footer-description h2{font-size:31px;line-height:1.18;letter-spacing:-1px;margin-bottom:18px}
.footer-description>p:last-child{font-size:12px;color:#71664e;line-height:1.85;max-width:305px;margin:0}
.footer-visit h3{font-size:20px;letter-spacing:-.5px;margin:2px 0 20px}
.footer-visit address{font-size:12px;font-style:normal;line-height:1.9;color:#71664e;margin-bottom:10px}
.footer-directions{display:inline-flex;align-items:center;gap:19px;font-size:11px;padding-bottom:5px;border-bottom:1px solid #bead80}
.footer-phone{display:block;font-size:17px;font-weight:500;letter-spacing:-.3px;margin:20px 0 2px}
.footer-email{font-size:12px}
.footer-booking>p{font-family:Manrope,sans-serif;font-size:20px;line-height:1.35;letter-spacing:-.5px;margin:0 0 19px}
.footer-booking .button{font-size:11px;gap:15px;background:#302c22;color:#fff6dc;border-color:#302c22;padding-left:18px;white-space:nowrap}
.footer-booking .button>span{background:#ddcb95;color:#302c22;width:31px;height:31px;flex-basis:31px}
.footer-booking .button:hover{background:#4a4030}
.footer-hours-note{display:block;color:#807354;font-size:10px;line-height:1.85;margin-top:15px}
.footer-social{display:flex;gap:20px;margin-top:23px;font-size:11px}
.footer-social a{display:flex;gap:10px;align-items:center}
.footer-navigation{display:grid;grid-template-columns:1fr 4fr;gap:32px;border-block:1px solid #d5c7a5;padding:37px 0 40px}
.footer-care-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.footer-navigation h3{font-family:'DM Sans',sans-serif;font-size:10px;font-weight:600;line-height:1.5;letter-spacing:.3px;color:#756442;margin:0 0 16px}
.footer-navigation a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:34px;padding:6px 0;font-size:11px;line-height:1.6;color:#514936;border:0;transition:color .18s}
.footer-navigation a>span{font-size:13px;color:#94825a}
.clinic-footer a:not(.button):not(.footer-logo):hover{color:#7b6127;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#aa8e50}
.footer-colophon{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:23px 0 27px;color:#76694c;font-size:9px}
.footer-colophon strong{font-weight:500;color:#4c422b}
.footer-colophon a{display:flex;align-items:center;gap:6px}
.footer-colophon>a:last-child{gap:16px}
@media(max-width:1150px){.footer-welcome{grid-template-columns:1.65fr 1fr;gap:35px}.footer-identity{grid-row:span 2}.footer-booking{grid-column:2}.footer-visit{display:grid;grid-template-columns:1fr 1fr;column-gap:15px}.footer-visit h3,.footer-visit address,.footer-directions{grid-column:1}.footer-phone{grid-row:2;grid-column:2;margin:0;align-self:start;font-size:15px}.footer-email{grid-row:2;grid-column:2;align-self:end;font-size:11px}.footer-directions{justify-self:start}.footer-booking>p{display:none}.footer-social{margin-top:16px}.footer-navigation,.footer-care-links{gap:22px}}
@media(max-width:850px){.footer-welcome{grid-template-columns:1fr 1fr;padding:45px 0 35px}.footer-identity{grid-row:auto;grid-column:1/-1;gap:30px}.footer-description>p:last-child{max-width:470px}.footer-visit{display:block}.footer-booking{grid-column:2}.footer-booking>p{display:block}.footer-phone{margin-top:20px}.footer-logo{flex-basis:105px}.footer-logo img{width:105px}.footer-navigation{grid-template-columns:1fr 2fr;gap:35px}.footer-care-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px}.footer-navigation a{min-height:38px;font-size:12px}.footer-navigation h3{font-size:11px}.footer-colophon{flex-wrap:wrap;row-gap:12px}.footer-colophon>span{flex:1 0 100%}}
@media(max-width:520px){.footer-welcome{gap:30px 20px}.footer-identity{gap:22px}.footer-logo{flex-basis:83px}.footer-logo img{width:83px}.footer-description h2{font-size:27px}.footer-description .eyebrow{font-size:7px;letter-spacing:1px;margin-top:0;margin-bottom:12px}.footer-description>p:last-child{font-size:11px;line-height:1.85}.footer-visit{grid-column:1/-1}.footer-visit h3{font-size:22px;margin-bottom:13px}.footer-visit address{font-size:13px}.footer-phone{font-size:18px}.footer-email{font-size:13px}.footer-booking{grid-column:1/-1;padding-top:26px;border-top:1px solid #d5c7a5}.footer-booking>p{font-size:23px}.footer-booking>p br{display:none}.footer-booking .button{font-size:12px;gap:26px}.footer-hours-note{font-size:11px}.footer-social{font-size:12px;gap:26px;margin-top:23px}.footer-navigation{grid-template-columns:1fr;gap:30px;padding:30px 0}.footer-clinic-links{display:grid;grid-template-columns:1fr 1fr;column-gap:22px}.footer-clinic-links h3{grid-column:1/-1;margin-bottom:10px}.footer-care-links{gap:26px 22px}.footer-colophon{font-size:9px;gap:14px}.footer-navigation a{min-height:42px;font-size:11px}.footer-navigation h3{font-size:10px;margin-bottom:10px}}

:root{--ink:#282923;--muted:#595b54;--cream:#f5f5f0;--line:#d9dbd3;--sand:#e8dec1;--white:#ffffff}
body{font-size:18px;line-height:1.8;background:white;color:var(--ink)}
.arrow-icon{width:20px;height:20px;display:inline-block;vertical-align:middle;flex-shrink:0}
.button .arrow-icon{width:19px;height:19px}
#main h2{font-size:clamp(40px,4.3vw,62px);line-height:1.13;letter-spacing:-1.8px}
#main h3{font-size:30px;line-height:1.25;letter-spacing:-.8px}
#main h4{font-size:23px;line-height:1.35}
#main p:not(.eyebrow):not(.credentials):not(.start-date),#main .accordion li{font-size:18px;line-height:1.8;color:#595b54}
#main .eyebrow,.clinic-footer .eyebrow{font-size:12px;letter-spacing:1.5px;color:#746037}
#main .text-link,#main .button,#main .card-link,#main .provider-body a,#main .accordion details>a{font-size:16px}
#main .section-heading>p{max-width:470px}
#main .cinematic-hero h1{font-size:clamp(43px,4.8vw,74px)}
#main .cinematic-hero .hero-copy{max-width:850px}
#main .cinematic-hero .hero-description{font-size:21px;color:#fff5e1;max-width:470px}
#main .cinematic-hero .eyebrow{color:#eee3c5}
#main .cinematic-footer p{font-size:15px;color:#f1e8d4}
.cinematic-footer>span{font-size:12px}
.cinematic-content{padding-top:76px;padding-bottom:105px;min-height:790px}
#main .cinematic-hero .text-link{color:#fff5df}
.utility{background:#eee8d6;font-size:14px}
.site-header{background:#fffffffa}
#main-nav>a:not(.button),.mega>summary{font-size:14px;padding-inline:10px}
.nav-row{gap:20px}.site-header .header-wordmark{min-width:170px}
.button,.nav-book{font-size:15px;min-height:54px}
.wordmark-name{font-size:36px}.wordmark-descriptor{font-size:11px;letter-spacing:3px}
.menu-toggle{font-size:16px}
.mega-heading .eyebrow{font-size:12px}.mega-heading>div>span{font-size:30px}
.menu-overview,.mega-bottom{font-size:15px}
.mega-panel .directory h3{font-size:15px;color:#5d5036;letter-spacing:0}
.mega-panel .directory a{font-size:16px;min-height:46px}
.mega-panel .directory-group:first-child{background:#f5f1e5}
.mega-bottom{background:#f7f7f3}
#main .care-cards .service-card{background:#fff;border-color:#d9dcd4;border-top:3px solid #b4a16e;padding:29px 23px 24px;box-shadow:0 6px 24px #22291806}
#main .care-cards .service-card:hover{background:#faf8f0;border-color:#b4a16e;box-shadow:0 10px 28px #2229180d}
#main .care-cards .service-card h3{font-size:30px;min-height:76px}
#main .care-cards .service-card>p{font-size:18px;max-width:none;min-height:96px}
#main .care-cards .card-link{font-size:15px;line-height:1.5;min-height:70px}
.care-cards .service-foot{gap:20px}.care-cards .service-top{margin-bottom:25px}
.clinic-story{background:#f2f3ef;border-color:#e0e2da}
.clinic-story-intro{grid-template-columns:1.1fr 1fr;gap:60px}
#main .clinic-story-description p{max-width:540px}
#main .clinic-story-intro h2 em{color:#786337}
.clinic-story-photo{background:#fff;border:1px solid #dadcd4}
.clinic-story-photo>img{height:250px}
#main .clinic-story-photo figcaption p{font-size:30px;line-height:1.25;color:#282923}
.clinic-story-photo figcaption>span{font-size:12px;color:#665a3e}
.clinic-story-photo figcaption a{font-size:16px;min-height:48px;border-color:#d8dccf}
.clinic-principle{background:#fff;border-color:#dadcd4}
#main .clinic-principle h3{font-size:32px}
#main .clinic-principle .eyebrow{font-size:12px}
.principle-baseline{font-size:14px;color:#6d5c35;border-color:#d9dccf}
.clinic-principle-dark{background:#2d302a;border-color:#2d302a}
#main .clinic-principle-dark h3{color:#fff}
#main .clinic-principle-dark>p:not(.eyebrow){color:#e8e9df}
#main .clinic-principle-dark .eyebrow{color:#e6ce91}
.clinic-principle-dark .principle-baseline{color:#e6ce91;border-color:#5d6156}
.clinic-promises{border-color:#d3d7cd}.clinic-promises-grid>div+div{border-color:#d3d7cd}
.clinic-promises-heading{align-items:flex-start}
#main .clinic-promises-heading h3{font-size:30px}
#main .clinic-promises-grid h4{font-size:23px}
#main .clinic-promises-grid p{font-size:17px}
.welcome{background:#f1f3ee;border:1px solid #dfe3d9}
#main .welcome-copy h3{font-size:46px}
.credentials,.start-date{font-size:16px;color:#56594f}
.provider-list summary{font-size:17px;grid-template-columns:245px 1fr 24px;padding-block:27px;color:#595b54}
.provider-category{font-size:25px;line-height:1.3}
.provider-body{padding-left:275px}
.treatments{background:#2d302a;color:#fff}
#main .treatments h2 em{color:#e1c786}
#main .treatments .eyebrow{color:#e1c786}
#main .treatments .section-heading>p{color:#e5e8dd}
#main .directory h3{font-family:'DM Sans',sans-serif;font-size:20px;color:#e1c786;letter-spacing:0}
.directory a{font-size:18px;padding:15px 0;border-color:#ffffff30;color:inherit}
.treatments .directory a:hover{color:#f1d89d}
.conditions,.faq-grid{grid-template-columns:1fr 1.2fr;gap:65px}
.accordion summary{font-size:19px;line-height:1.55;padding-block:25px}
.inline-details summary{font-size:17px;min-height:52px}
.accordion ul{font-size:18px}
.patient-section{background:#f4f5f1}
.contact{gap:65px}
.contact-card{background:#f7f7f3;border:1px solid #daddd3;border-top:4px solid #b5a06a}
.contact-links{font-size:18px}
#main .contact-small{font-size:16px!important}
.contact-card hr{border-color:#d8ddcf}
.clinic-footer{background:#252822;color:#fff;border-top:4px solid #b4a16e}
.footer-welcome{grid-template-columns:1.7fr 1fr 1.1fr;gap:38px}
.footer-description h2{font-size:38px;color:#fff}
.footer-description>p:last-child,.footer-visit address{font-size:17px;color:#e0e3d9}
.clinic-footer .eyebrow{color:#e1c786;font-size:12px}
.footer-visit h3{font-size:28px;color:#fff}
.footer-visit{display:block}
.footer-directions,.footer-email,.footer-social{font-size:16px;color:#edf0e5}
.footer-phone{font-size:23px;margin-top:20px}
.footer-booking>p{font-size:27px;color:#fff}
.footer-booking .button{font-size:15px;background:#dbc793;color:#252822;border-color:#dbc793;white-space:normal}
.footer-booking .button>span{background:#252822;color:#fff}
.footer-booking .button:hover{background:#ead9ac}
.footer-hours-note{font-size:15px;color:#d9ddcf}
.footer-navigation{border-color:#ffffff30}
.footer-navigation h3{font-size:16px;color:#e1c786}
.footer-navigation a{font-size:16px;min-height:44px;color:#e6e9de}
.footer-navigation a>span{color:#e1c786}
.footer-colophon{font-size:14px;color:#d9ddcf}
.footer-colophon strong{color:#fff}
.clinic-footer a:not(.button):not(.footer-logo):hover{color:#f1d89d}
@media(max-width:1200px){.footer-welcome{grid-template-columns:1fr 1fr}.footer-identity{grid-column:1/-1;grid-row:auto}.footer-description>p:last-child{max-width:600px}.footer-booking{grid-column:2}.footer-booking>p{display:block}.footer-visit{display:block}.footer-navigation{grid-template-columns:1fr 2fr}.footer-care-links{grid-template-columns:1fr 1fr}.clinic-story-panels{grid-template-columns:1fr 1fr}.clinic-story-photo{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.clinic-story-photo>img{height:290px}.clinic-story-photo figcaption{justify-content:center}.clinic-story-photo figcaption a{margin-top:18px}.cinematic-footer>span{font-size:10px}}
@media(min-width:981px) and (max-width:1250px){.nav-book{display:none}.nav-row{gap:15px}.site-header .header-wordmark{min-width:160px}#main-nav{margin-left:auto}}
@media(max-width:980px){#main-nav>a:not(.button),.mega>summary{font-size:17px;padding:15px}.mega-panel .directory a{font-size:16px}.mega-panel .directory h3{font-size:15px}.provider-list summary{grid-template-columns:210px 1fr 24px}.provider-body{padding-left:235px}.cinematic-content{min-height:790px}.section-heading{align-items:start}.clinic-story-intro{grid-template-columns:1fr;gap:25px}.section-heading>p{max-width:none}.conditions,.faq-grid{gap:35px}.footer-colophon>span{flex-basis:100%}.footer-colophon{flex-wrap:wrap}}
@media(max-width:700px){#main h2{font-size:42px;letter-spacing:-1.2px}.section-heading{display:block}.section-heading>p{margin-top:24px}.service-grid{grid-template-columns:1fr 1fr}.clinic-promises-grid{grid-template-columns:1fr;gap:25px}.clinic-promises-grid>div+div{padding:24px 0 0;border-left:0;border-top:1px solid #d3d7cd}.clinic-promises-heading{display:block}.clinic-promises-heading .eyebrow{margin-bottom:20px}.conditions,.faq-grid,.contact{grid-template-columns:1fr;gap:35px}.cinematic-footer>span{display:none}.provider-list summary{grid-template-columns:1fr 24px;gap:12px}.provider-list summary>span:nth-child(2){grid-column:1;font-size:17px}.provider-list summary b{grid-column:2;grid-row:1}.provider-body{padding-left:0}.footer-identity{gap:25px}.footer-description h2{font-size:32px}.footer-visit,.footer-booking{grid-column:1/-1}.footer-navigation{grid-template-columns:1fr}.footer-clinic-links{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.footer-clinic-links h3{grid-column:1/-1}}
@media(max-width:600px){#main h2{font-size:39px}#main h3{font-size:28px}#main p:not(.eyebrow):not(.credentials):not(.start-date),#main .accordion li{font-size:18px}.service-grid{grid-template-columns:1fr}.care-cards .service-top{margin-bottom:20px}#main .care-cards .service-card h3{min-height:0;font-size:32px}#main .care-cards .service-card>p{min-height:0;margin-bottom:24px}#main .care-cards .card-link{font-size:17px;min-height:56px}.service-foot{align-items:start}.clinic-story-panels{grid-template-columns:1fr}.clinic-story-photo{display:flex;grid-column:auto}.clinic-story-photo>img{height:225px}#main .clinic-story-intro h2 em{font-size:1em}.clinic-principle{padding:29px 25px}.clinic-principle .eyebrow{margin-bottom:25px}.cinematic-content{min-height:830px;padding-top:52px;padding-bottom:110px}#main .cinematic-hero .hero-description{font-size:20px}#main .cinematic-footer p{font-size:14px}.hero-actions{align-items:flex-start;gap:16px;flex-wrap:wrap}.hero-actions .button{font-size:16px}.cinematic-hero .hero-actions{gap:20px}.welcome-copy{padding:28px 24px}#main .welcome-copy h3{font-size:38px}.directory{grid-template-columns:1fr;gap:30px}.mega-panel .directory{grid-template-columns:1fr}.mega-panel .directory a{font-size:17px}.mega-panel .directory h3{font-size:16px}.mega-panel .directory-group{padding:12px!important}.footer-identity{flex-wrap:wrap}.footer-logo{flex-basis:100px}.footer-logo img{width:100px}.footer-description{flex:1 1 190px}.footer-description>p:last-child{font-size:17px}.footer-description .eyebrow{font-size:12px;line-height:1.6}.footer-hours-note{font-size:15px}.footer-social{font-size:16px}.footer-navigation a{font-size:16px;overflow-wrap:anywhere}.footer-navigation h3{font-size:16px}.footer-care-links{gap:28px 23px}.footer-colophon{font-size:14px;align-items:start}.footer-booking{border-color:#ffffff30}.footer-booking .button{font-size:16px}.utility .wrap{font-size:12px}.clinic-promises-heading h3{font-size:28px}#main .contact-small{font-size:16px!important}}

#main .cinematic-hero p:not(.eyebrow):not(.credentials):not(.start-date){color:#fff5e1}
#main .cinematic-hero .hero-description:not(.eyebrow):not(.credentials):not(.start-date){font-size:21px}
#main .cinematic-footer p:not(.eyebrow):not(.credentials):not(.start-date){font-size:15px;color:#f1e8d4}
#main .clinic-principle-dark p:not(.eyebrow):not(.credentials):not(.start-date){color:#e8e9df}
#main .treatments p:not(.eyebrow):not(.credentials):not(.start-date){color:#e5e8dd}
#main .clinic-story-photo figcaption p:not(.eyebrow):not(.credentials):not(.start-date){font-size:30px;line-height:1.25;color:#282923}
@media(max-width:600px){.footer-identity{display:grid;grid-template-columns:100px minmax(0,1fr);gap:12px 22px;align-items:start}.footer-logo{grid-column:1;grid-row:1/3}.footer-description{display:contents}.footer-description .eyebrow{grid-column:2;margin:0}.footer-description h2{grid-column:2;font-size:31px;margin:0}.footer-description>p:last-child{grid-column:1/-1;max-width:none;margin-top:8px}}

.gsap-motion .hero-backdrop img{animation:none}
.clinic-story-photo,.portrait{overflow:hidden}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
