:root{--ink:#23272b;--muted:#545b5d;--green:#3e5f32;--soft:#f6f5f0;--line:#d7d8d2;--white:#fff;--gutter:clamp(22px,5vw,64px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--white);color:var(--ink);font-family:AloeSans,"Helvetica Neue",Arial,sans-serif;font-size:17px;line-height:1.5;font-weight:400}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0 0 18px}h1,h2,h3{line-height:1.1;font-weight:400;letter-spacing:-.035em}h1{font-size:clamp(38px,4.8vw,56px);margin-bottom:22px}h2{font-size:clamp(28px,3.2vw,38px)}h3{font-size:23px;letter-spacing:-.02em}p{color:var(--muted)}a{color:inherit;text-underline-offset:6px;text-decoration-thickness:1px}a:hover{color:var(--green)}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}button,a,input,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #6b843b;outline-offset:5px}[hidden]{display:none!important}address{font-style:normal;color:var(--muted)}ul{padding-left:22px;margin:0 0 24px}hr{border:0;border-top:1px solid #b8bcb2;width:110px;margin:28px auto}.container{max-width:1280px;margin:auto;width:100%;padding-left:var(--gutter);padding-right:var(--gutter)}.section{padding:50px 0}.soft{background:linear-gradient(110deg,#f4f2ec,#faf9f5 65%,#f3f3ed)}.section.soft{background:linear-gradient(110deg,#f4f2ec,#faf9f5 65%,#f3f3ed)}.subtitle{font-size:clamp(20px,2.3vw,27px);line-height:1.25;color:var(--ink);letter-spacing:-.025em}.eyebrow{display:block;color:var(--green);font-size:16px;letter-spacing:.025em;margin-bottom:16px}.small{font-size:14px;line-height:1.5}.text-link{display:inline-block;text-decoration:none;border-bottom:1px solid #7b8275;padding-bottom:3px}.text-link:hover{border-color:var(--green)}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:13px 25px;background:var(--green);border:1px solid var(--green);border-radius:8px;color:white;text-decoration:none;font-size:15px;line-height:1.3;letter-spacing:0;text-align:center}.button:hover{background:#2e4925;color:white}.button.outline{background:transparent;border-color:#959b91;color:var(--ink)}.button.outline:hover{background:#ebeee5}.actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:24px}.center{text-align:center}.skip-link{position:absolute;left:20px;top:-100px;padding:12px 20px;z-index:100;background:white}.skip-link:focus{top:10px}.site-header{border-bottom:1px solid var(--line);background:white}.header-inner{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px var(--gutter)}.brand{display:flex;align-items:center;flex-shrink:0;gap:10px;font-size:32px;line-height:1;text-decoration:none;font-weight:400;letter-spacing:-.04em;color:var(--ink)}.brand img{width:36px;height:43px;object-fit:contain}.site-header nav{display:flex;gap:clamp(15px,2.1vw,28px);align-items:center;font-size:14px}.site-header nav>a:not(.button){position:relative;text-decoration:none;white-space:nowrap;padding:14px 0}.site-header nav>a[aria-current=page]:after{content:"";position:absolute;bottom:-19px;left:0;right:0;border-bottom:2px solid var(--green)}.site-header .button{border-radius:28px;min-height:44px;padding:12px 23px;font-size:14px}.menu-toggle{display:none;border:1px solid var(--line);background:white;border-radius:6px;padding:10px 14px;min-height:44px;color:var(--green)}.breadcrumbs{display:flex;align-items:center;gap:10px;padding-top:18px;padding-bottom:18px;font-size:13px;color:#686f70}.breadcrumbs a{text-decoration:none}.hero{max-width:1440px;margin:auto;padding:46px var(--gutter);background:white}.hero-copy{min-width:0}.hero-copy p{max-width:750px}.hero.split{display:grid;grid-template-columns:53% 47%;padding:0;background:#faf9f5;min-height:430px}.hero.split .hero-copy{padding:54px var(--gutter);align-self:center}.hero.split>img{height:100%;width:100%;object-fit:cover;max-height:600px;min-height:430px}.hero.split h1{font-size:clamp(37px,4.1vw,50px)}.hero .text-link{margin-top:4px}.home-hero .hero-copy{text-align:center}.home-hero .hero-copy p{margin-left:auto;margin-right:auto;max-width:480px}.home-hero .button{margin-top:6px}.home-hero h1{max-width:440px;margin:0 auto 24px;line-height:1.04}.home-services{max-width:1440px;margin:auto;display:grid;grid-template-columns:39% 61%}.home-service-copy{padding:50px var(--gutter);text-align:center;align-self:center}.home-service-copy h2{font-size:31px}.home-services>img{width:100%;height:100%;object-fit:cover;min-height:630px;max-height:830px}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1440px;margin:auto}.trust-grid article{padding:48px 38px 58px;text-align:center}.trust-grid article+article{border-left:1px solid var(--line)}.trust-grid h2{font-size:27px}.trust-grid p{font-size:16px}.line-icon{display:block;font-size:30px;color:var(--green);margin-bottom:22px}.botanical{position:relative;background-image:url('../assets/botanical.svg'),linear-gradient(110deg,#f4f2ec,#faf9f5 65%,#f3f3ed)!important;background-position:right 20px bottom 10px,center;background-size:310px auto,cover;background-repeat:no-repeat}.cta-copy{max-width:780px;padding-right:70px}.cta-copy h2{margin-bottom:12px}.cta-copy p{max-width:720px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.two-col>*{min-width:0}.media-row{align-items:center;gap:44px}.media-row>img{width:100%;max-height:360px;object-fit:cover}.about-intro{display:grid;grid-template-columns:1.05fr .95fr;gap:42px;padding-top:46px}.about-intro>div{padding-bottom:34px}.about-intro>img{width:100%;max-height:650px;object-fit:contain;align-self:end;object-position:bottom}.about-intro h1{font-size:clamp(36px,4.4vw,51px)}.education-grid{display:grid;grid-template-columns:.9fr 1.1fr 1.1fr;gap:30px}.education-grid>div{border-left:1px solid var(--line);padding-left:27px}.education-grid h2{font-size:33px}.education-grid h3{font-size:21px;line-height:1.3}.ruled-list{list-style:none;padding:0;color:var(--muted)}.ruled-list li{padding:13px 0;border-bottom:1px solid var(--line)}.section-nav{display:flex;flex-wrap:wrap;gap:12px 35px;padding-top:14px;padding-bottom:14px;border-bottom:1px solid var(--line);font-size:15px}.section-nav a{text-decoration:none;padding:6px 0}.section-nav a:hover{text-decoration:underline}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px}.section-heading h2{margin-bottom:17px}.fee-headings{display:grid;grid-template-columns:90px 90px;gap:8px;text-align:center;font-size:13px;color:var(--muted);margin-right:36px;white-space:nowrap}.accordion{border-top:1px solid var(--line)}.accordion:last-child{border-bottom:1px solid var(--line)}.accordion summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px;padding:19px 3px;cursor:pointer;list-style:none;font-size:18px}.accordion summary::-webkit-details-marker{display:none}.accordion summary:hover{color:var(--green)}.toggle{display:block;position:relative;width:18px;height:18px;flex:0 0 18px}.toggle:before,.toggle:after{position:absolute;content:"";background:var(--green);top:8px;left:3px;width:12px;height:1px}.toggle:after{transform:rotate(90deg)}details[open]>.summary .toggle:after,details[open]>summary .toggle:after{transform:rotate(0)}.accordion-body{padding:0 4px 25px;max-width:1000px}.accordion-body p:last-child{margin-bottom:0}.accordion-body p+.text-link{margin-top:5px}.service summary{gap:18px;min-height:87px}.service-title{flex:1;min-width:0}.service-title small{display:block;margin-top:7px;font-size:13px;line-height:1.4;font-weight:400;color:var(--muted)}.fees{display:grid;grid-template-columns:90px 90px;gap:8px;text-align:center;font-size:15px;flex-shrink:0}.price-label{display:none}.single-fee{grid-column:1 / 3;text-align:center}.service .accordion-body{max-width:900px}.practical-list>div{display:grid;grid-template-columns:27% 1fr;gap:32px;padding:25px 0;border-top:1px solid var(--line)}.practical-list>div:last-child{border-bottom:1px solid var(--line)}.practical-list h3{font-size:22px;max-width:210px;line-height:1.35}.practical-list p{margin-bottom:5px}.overview{max-width:950px;margin-bottom:25px}.contact-large{font-size:clamp(23px,3vw,34px);line-height:1.35;margin-bottom:20px;color:var(--ink);overflow-wrap:anywhere}.contact-link{overflow-wrap:anywhere}.address-heading{font-size:clamp(25px,3.2vw,35px);line-height:1.25;letter-spacing:-.02em}.hours{padding:13px 0;border-top:1px solid var(--line);margin-top:24px}.hours strong{font-weight:500;color:var(--green)}.map{margin:0 0 36px}.map img{width:100%;border:1px solid var(--line);padding:8px}.map figcaption{font-size:13px;color:var(--muted);margin-top:10px}.entry-row{display:grid;grid-template-columns:1fr 1fr;gap:30px;border-top:1px solid var(--line);padding-top:24px}.entry-row h3{font-size:22px}.insurer-grid{max-width:720px;display:grid;grid-template-columns:repeat(3,1fr);gap:30px 40px;align-items:center;margin:38px auto 25px}.insurer-grid img{width:100%;max-width:200px;height:72px;object-fit:contain;justify-self:center}.provider-list{margin:0;gap:10px 30px}.provider-list li{padding:6px}.payer-logo{display:flex;min-height:180px;align-items:center;justify-content:center;height:100%}.payer-logo img{width:auto;max-width:290px;max-height:180px;object-fit:contain}.coverage-row{grid-template-columns:44% 1fr;align-items:center}.balance{color:var(--ink);padding-left:16px;border-left:2px solid var(--green)}.booking-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:24px}.booking-widget{border:1px solid var(--line);padding:26px;min-width:0}.widget-heading{text-align:center;font-size:23px;letter-spacing:-.015em}.prototype-note{text-align:center;font-size:13px;margin-bottom:24px;color:var(--green)}.booking-row{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:19px 0}.booking-row:last-child{border-bottom:1px solid var(--line)}.booking-row h3{font-size:18px;line-height:1.35;margin-bottom:5px;letter-spacing:-.015em}.booking-row p{margin-bottom:4px}.booking-price{font-size:14px;color:var(--ink)}.booking-row .button{padding:11px 18px;min-height:44px;border-radius:2px}.booking-help{padding:32px 26px 220px;align-self:stretch}.booking-help h2{font-size:30px}.booking-help p{font-size:16px}.booking-contact{margin-top:45px}.booking-contact h3{margin-bottom:10px}#booking-selection{min-height:400px}#booking-selection h3{font-size:26px;line-height:1.2}#chosen-name{margin-top:26px}fieldset{border:1px solid var(--line);margin:20px 0;padding:15px 18px}legend{padding:0 8px;color:var(--green)}fieldset label{display:flex;align-items:center;gap:10px;min-height:44px}input[type=radio],input[type=checkbox]{width:18px;height:18px;accent-color:var(--green)}#ear-confirmation{display:flex;align-items:center;gap:10px;padding:15px 0}.selection-price{font-size:30px;color:var(--green);margin:24px 0}.back-button{border:0;border-bottom:1px solid #7b8275;background:transparent;color:var(--ink);padding:4px 0}.review-result{border-top:1px solid var(--line);padding-top:25px;margin-top:30px}.unequal{grid-template-columns:35% 1fr}.concerns{gap:0 48px;margin-top:15px}.legal-layout{display:grid;grid-template-columns:24% 1fr;gap:34px}.legal-layout>nav{display:flex;flex-direction:column;gap:10px;border-right:1px solid var(--line);padding-right:24px;font-size:15px}.legal-layout>nav p{margin-bottom:4px}.legal-layout>nav a{text-decoration:none;color:var(--green);padding:4px 0;min-height:32px}.legal-layout>div>section{margin-bottom:30px}.legal-layout h2{font-size:32px}.legal-contact{padding-top:25px;border-top:1px solid var(--line)}.site-footer{border-top:1px solid var(--line)}.footer-inner{max-width:1440px;margin:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:28px var(--gutter);font-size:12px}.footer-inner p{margin:0;max-width:300px}.site-footer .brand{font-size:25px}.site-footer .brand img{width:28px;height:32px}.site-footer nav{display:flex;gap:22px}.site-footer nav a{text-decoration:none;min-height:32px;display:flex;align-items:center}
@media(min-width:1440px){.hero.split{min-height:510px}.home-services>img{min-height:730px}}
@media(max-width:1100px){.header-inner{gap:18px;padding-left:30px;padding-right:30px}.brand{font-size:27px}.site-header nav{gap:16px;font-size:13px}.site-header .button{padding-left:17px;padding-right:17px;font-size:13px}.trust-grid article{padding-left:28px;padding-right:28px}.hero.split .hero-copy{padding:45px 36px}.home-service-copy{padding:40px 35px}.home-hero h1{font-size:46px}.education-grid{gap:22px}.education-grid>div{padding-left:22px}}
@media(max-width:900px){.header-inner{flex-wrap:wrap;gap:12px}.menu-toggle{display:block;margin-left:auto}.site-header nav{flex-basis:100%;flex-direction:column;gap:0;align-items:stretch;padding:12px 0}.site-header nav>a:not(.button){padding:14px 8px;border-bottom:1px solid var(--line);white-space:normal}.site-header nav>a[aria-current=page]:after{bottom:0;right:auto;width:70px;left:8px}.site-header nav>.button{margin-top:12px}.js .site-header nav{display:none}.js .site-header nav.is-open{display:flex}.hero.split{min-height:380px}.hero.split>img{min-height:380px;max-height:none}.hero.split h1,.home-hero h1{font-size:39px}.hero.split .hero-copy{padding:36px 26px}.hero-copy p{font-size:16px}.home-service-copy{padding:32px 28px}.home-services{grid-template-columns:44% 56%}.home-services>img{min-height:620px}.two-col{gap:30px}.education-grid{grid-template-columns:1fr 1fr}.education-grid>h2{grid-column:1 / -1}.education-grid>div{padding-left:0;border-left:0}.booking-layout{grid-template-columns:minmax(0,1fr) 240px}.booking-widget{padding:22px}.booking-help{padding:26px 20px 160px}.booking-help h2{font-size:26px}.fees{grid-template-columns:70px 70px}.fee-headings{grid-template-columns:70px 70px}.trust-grid h2{font-size:24px}.trust-grid article{padding:35px 22px}.trust-grid p{font-size:15px}.cta-copy{max-width:680px;padding-right:100px}}
@media(max-width:640px){body{font-size:16px}h1{font-size:40px}h2{font-size:30px}h3{font-size:22px}.section{padding:36px 0}.header-inner{padding:15px 22px}.brand{font-size:28px}.brand img{width:30px;height:36px}.breadcrumbs{font-size:12px;padding-top:14px;padding-bottom:14px}.hero{padding:30px 22px 36px}.hero.split{display:flex;flex-direction:column}.hero.split .hero-copy{padding:32px 22px}.hero.split h1,.home-hero h1{font-size:40px}.hero.split>img{height:280px;min-height:0;max-height:320px;object-position:center}.home-hero .hero-copy{padding-top:38px;padding-bottom:38px}.home-hero h1{max-width:360px}.home-hero .hero-copy p{max-width:390px}.home-services{display:flex;flex-direction:column}.home-service-copy{padding:36px 26px}.home-service-copy p{max-width:430px;margin-left:auto;margin-right:auto}.home-services>img{height:320px;min-height:0;object-position:50% 57%}.trust-grid{display:block}.trust-grid article{padding:35px 26px}.trust-grid article+article{border-left:0;border-top:1px solid var(--line)}.trust-grid h2{font-size:27px}.trust-grid p{font-size:16px;max-width:440px;margin:0 auto 18px}.line-icon{margin-bottom:16px}.botanical{background-size:210px auto,cover!important;background-position:right -50px bottom -8px,center!important}.cta-copy{max-width:none;padding-right:0}.cta-copy p,.cta-copy address{padding-right:14px}.actions{gap:12px}.actions .button{padding-left:18px;padding-right:18px}.two-col,.about-intro,.education-grid,.legal-layout,.entry-row,.practical-list>div,.booking-layout{grid-template-columns:1fr}.two-col{gap:26px}.about-intro{padding-top:28px;gap:0}.about-intro>div{padding-bottom:28px}.about-intro>img{max-height:470px;width:100%;object-fit:contain}.about-intro h1{font-size:39px}.education-grid{gap:28px}.education-grid>h2{grid-column:auto;margin-bottom:0}.media-row>img{max-height:270px}.section-nav{gap:8px 20px;font-size:13px}.section-heading h2{font-size:29px;margin-bottom:20px}.fee-headings{display:none}.service summary{display:grid;grid-template-columns:minmax(0,1fr) 18px;gap:9px 16px;padding:18px 2px;min-height:100px}.service-title{grid-column:1;grid-row:1;font-size:18px}.service .fees{grid-column:1;grid-row:2;display:flex;gap:18px;font-size:14px;text-align:left;flex-wrap:wrap}.service .toggle{grid-column:2;grid-row:1 / 3}.price-label{display:inline}.single-fee{text-align:left}.service-title small{font-size:13px;line-height:1.5}.accordion summary{font-size:17px;gap:16px}.practical-list>div{gap:10px;padding:22px 0}.practical-list h3{max-width:none;margin-bottom:2px}.contact-large{font-size:27px}.address-heading{font-size:29px}.entry-row{gap:4px}.entry-row h3{margin-bottom:10px}.insurer-grid{grid-template-columns:repeat(2,1fr);gap:25px 24px;margin-top:30px}.insurer-grid img{max-width:175px;height:67px}.payer-logo{min-height:130px}.payer-logo img{max-height:125px}.coverage-row{gap:28px}.booking-layout{gap:22px}.booking-widget{padding:22px 18px}.booking-row{gap:14px;padding:18px 0}.booking-row h3{font-size:17px}.booking-row .button{font-size:14px;padding:10px 14px}.booking-row .small{font-size:12px}.booking-help{padding:28px 22px 65px}.booking-help h2{font-size:28px;max-width:340px}.booking-contact{margin-top:32px}.legal-layout{gap:28px}.legal-layout>nav{border-right:0;border-bottom:1px solid var(--line);padding:0 0 22px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.legal-layout>nav p{grid-column:1 / -1}.legal-layout h2{font-size:29px}.footer-inner{flex-direction:column;align-items:flex-start;gap:16px;padding:26px 22px}.footer-inner p{max-width:100%}.site-footer nav{gap:25px}.concerns{gap:0}.overview{font-size:17px;line-height:1.55}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}