:root{--white:#fff;--ink:#3e2b21;--secondary:#705548;--copper:#b5754d;--copper-light:#e2b892;--coffee:#382116;--line:#d9c9bd;--dark-text:#e7d4c6;--hover:#68432d;--serif:"Bodoni Moda",Georgia,serif;--sans:"Manrope",sans-serif;color-scheme:light;scroll-behavior:smooth;scroll-padding-top:24px}
*{box-sizing:border-box}
body{margin:0;background:var(--white);color:var(--ink);font:400 16px/1.75 var(--sans);-webkit-font-smoothing:antialiased}
::selection{color:var(--white);background:var(--coffee)}
html{scrollbar-color:var(--copper) var(--white)}
a{color:inherit;text-underline-offset:5px}
a,summary{-webkit-tap-highlight-color:#e2b89266}
a:focus-visible,summary:focus-visible{outline:3px solid var(--copper);outline-offset:5px}
img{max-width:100%;height:auto;display:block}
figure,p,h1,h2,h3,blockquote{margin:0}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.03em;line-height:1.12;text-wrap:balance}
h2{font-size:clamp(38px,4.2vw,56px)}
h1 em,h2 em,h3 em{font-weight:400;color:var(--secondary)}
p{max-width:68ch}
svg{width:22px;height:22px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}
.section{padding-block:100px}
.skip-link{position:fixed;top:-90px;left:16px;background:white;color:var(--ink);padding:12px 20px;z-index:10}
.skip-link:focus{top:12px}
.preview{text-align:center;font-size:12px;line-height:1.5;padding:8px 20px;background:var(--coffee);color:white}
.header{display:flex;align-items:center;justify-content:space-between;gap:26px;padding-block:26px}
.brand{font-family:var(--serif);font-size:27px;line-height:1.25;text-decoration:none}
.brand span{display:block;font:400 12px/1.8 var(--sans);margin-top:7px}
.header nav{display:flex;gap:24px;font-size:14px}
.header nav a{text-decoration:none;padding-block:12px;white-space:nowrap}
.header nav a:hover{text-decoration:underline}
.header-contact{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:14px;font-weight:600;padding-block:12px;white-space:nowrap}
.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:16px;align-items:center;padding-top:28px}
.hero h1{font-size:clamp(44px,4.8vw,66px);line-height:1.13}
.hero-copy{padding-block:20px 54px;position:relative;z-index:1}
.hero-copy>p{max-width:440px;margin-top:26px;color:var(--secondary)}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;background:var(--coffee);color:white;border:1px solid var(--coffee);border-radius:18px 0 18px 0;padding:17px 25px;font-size:14px;font-weight:600;text-decoration:none;min-height:56px;transition:background .2s ease,color .2s ease}
.button:hover{background:var(--hover)}
.hero .button{margin-top:30px}
.hero-secondary{display:block;width:fit-content;font-size:14px;margin-top:18px;padding-block:4px}
.hero-portrait{position:relative;isolation:isolate;align-self:end;padding-top:34px}
.portrait-ground{position:absolute;inset:0 0 0 6%;background:var(--copper-light);border-radius:100px 0 0 0;overflow:hidden;z-index:-1}
.portrait-ground span{position:absolute;top:6px;left:8%;font:italic 400 96px/1.2 var(--serif);color:var(--secondary);letter-spacing:-.03em}
.hero-portrait>img{width:112%;max-width:none;margin-left:-6%;position:relative}
.hero-portrait figcaption{position:relative;background:var(--coffee);color:white;margin-left:6%;padding:20px 26px;font:400 24px/1.3 var(--serif)}
.hero-portrait figcaption span{display:block;font:400 12px/1.8 var(--sans);margin-top:6px;color:var(--dark-text)}
.trust-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding-block:28px}
.trust-bar p{font-size:14px;font-weight:600}
.trust-bar p span{font-weight:400;color:var(--secondary);margin-left:8px}
.trust-bar>a{display:flex;align-items:center;gap:10px;font-size:14px;text-decoration:none;padding-block:8px}
.trust-bar>a:hover strong{text-decoration:underline;text-underline-offset:4px}
.trust-bar>a span{color:var(--secondary)}
.star{fill:var(--copper-light);stroke:var(--ink);width:19px;height:19px}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:70px;margin-bottom:46px}
.section-heading>p{max-width:380px;color:var(--secondary)}
.treatment{display:grid;grid-template-columns:1fr 1.35fr 52px;gap:55px;align-items:center;padding-block:34px;border-top:1px solid var(--line)}
.treatment h3{font-size:36px;line-height:1.12}
.treatment p{color:var(--secondary)}
.treatment .treatment-areas{font-size:14px;color:var(--ink);margin-top:12px}
.treatment>a{width:52px;min-height:52px;border:1px solid var(--line);display:grid;place-items:center;border-radius:18px 0 18px 0}
.treatment>a:hover{background:var(--coffee);color:white;border-color:var(--coffee)}
.treatment-note{font-size:14px;color:var(--secondary);border-top:1px solid var(--line);padding-top:24px;max-width:none}
.about{background:var(--copper-light);padding-top:76px}
.about-layout{display:grid;grid-template-columns:.86fr 1fr;gap:100px;align-items:center}
.about-photo{position:relative;align-self:end}
.about-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%;border-radius:54px 0 0 0}
.about-photo figcaption{position:absolute;bottom:0;left:0;right:0;background:var(--coffee);color:var(--dark-text);padding:18px 24px;font-size:14px}
.about-copy{padding-block:0 66px}
.about-copy h2{font-size:clamp(48px,5vw,68px)}
.about h2 em{color:var(--ink)}
.registration{font-size:14px;margin-top:18px;margin-bottom:30px;font-weight:600}
.about-copy p+p{margin-top:18px}
.text-link{display:inline-flex;align-items:center;gap:15px;font-weight:600;font-size:14px;text-decoration-thickness:1px;margin-top:24px;padding-block:8px}
.text-link:hover{color:var(--hover)}
.about a:focus-visible,.location a:focus-visible{outline-color:var(--coffee)}
.about .text-link:hover,.location .text-link:hover{color:var(--coffee)}
.care{background:var(--coffee);color:white}
.care h2 em{color:var(--copper-light)}
.care .section-heading>p,.care-steps p{color:var(--dark-text)}
.care-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;border-top:1px solid var(--secondary);padding-top:34px}
.care-steps h3{font-size:29px;margin-bottom:16px;letter-spacing:-.02em}
.care .text-link{color:var(--copper-light);margin-top:36px}
.review-rating{flex-shrink:0}
.review-rating p{font-size:14px;color:var(--secondary)}
.review-rating p:first-child{font-size:18px;color:var(--ink)}
.review-rating strong{font-size:28px;font-weight:500}
.review-rating .text-link{margin-top:8px}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.review{display:flex;flex-direction:column;padding:28px;border:1px solid var(--line);border-radius:24px 0 24px 0}
.quote-mark{font:400 54px/.9 var(--serif);color:var(--secondary);height:42px}
.review blockquote{font:400 27px/1.35 var(--serif);letter-spacing:-.02em;margin:10px 0 30px}
.review figcaption{margin-top:auto;font-size:14px;font-weight:600}
.review figcaption span{display:block;font-weight:400;color:var(--secondary);margin-top:4px}
.source-note{font-size:12px;color:var(--secondary);max-width:95ch;margin-top:24px}
.questions{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;border-top:1px solid var(--line)}
.questions h2+p{margin-top:24px;color:var(--secondary)}
details{border-bottom:1px solid var(--line)}
summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;min-height:74px;padding-block:22px;font-weight:500;line-height:1.5}
summary::-webkit-details-marker{display:none}
summary svg{transition:transform .2s ease}
details[open]>summary svg{transform:rotate(180deg)}
details p{padding:0 32px 26px 0;color:var(--secondary)}
.location{background:var(--copper-light);padding-block:80px}
.location-layout{display:grid;grid-template-columns:1fr 1.12fr;gap:70px;align-items:center}
.location h2{font-size:46px}
.location h2 em{color:var(--ink)}
.location h2+p{margin-top:20px}
address{font-style:normal;margin-top:26px}
dl{margin:26px 0 0}
dt{font-weight:600;font-size:14px;margin-bottom:5px}
dd{margin:0}
.location-note{font-size:12px;margin-top:8px}
.location .button{margin-top:28px}
.location-map iframe{display:block;width:100%;height:400px;border:0;background:white;border-radius:54px 0 0 0}
.location-map .text-link{margin-top:16px}
.courses{padding-block:70px;display:flex;align-items:center;justify-content:space-between;gap:70px}
.courses h2{font-size:38px}
.courses p{max-width:530px;color:var(--secondary);margin-top:20px}
.courses .button{flex-shrink:0}
.button-outline{background:white;color:var(--ink)}
.button-outline:hover{background:var(--coffee);color:white}
.footer{background:var(--coffee);color:white;padding-block:45px}
.footer-main{display:flex;align-items:center;justify-content:space-between;gap:32px}
.footer .brand span{color:var(--dark-text)}
.footer nav{display:flex;flex-wrap:wrap;gap:24px;font-size:14px}
.footer nav a{padding-block:8px}
.footer .wrap>p{font-size:12px;color:var(--dark-text);max-width:none;border-top:1px solid var(--secondary);padding-top:24px;margin-top:30px}
@media(min-width:900px) and (prefers-reduced-motion:no-preference){.hero-portrait{animation:portrait-in .8s cubic-bezier(.16,1,.3,1)}@keyframes portrait-in{from{clip-path:inset(0 0 7% 0)}to{clip-path:inset(0)}}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header-contact{display:none}.header nav{gap:20px}.hero h1{font-size:clamp(40px,5vw,56px)}.section-heading{gap:40px}.section-heading>p{max-width:330px}.treatment{gap:30px}.about-layout{gap:55px}.about-copy{padding-bottom:54px}.trust-bar p span{display:block;margin-left:0}.trust-bar>a{flex-wrap:wrap;max-width:260px;gap:4px 8px}.trust-bar>a span{width:100%;padding-left:27px}.questions,.location-layout{gap:45px}.location h2{font-size:40px}}
@media(max-width:760px){:root{scroll-padding-top:16px}.wrap{width:calc(100% - 40px)}.section{padding-block:64px}.header{align-items:flex-start;flex-direction:column;gap:18px;padding-block:22px}.brand{font-size:27px}.header nav{width:100%;justify-content:space-between;gap:10px;font-size:12px}.header nav a{padding-block:7px}.hero{grid-template-columns:1fr;gap:20px;padding-top:20px}.hero h1{font-size:clamp(39px,8.8vw,60px)}.hero-copy{padding-bottom:14px}.hero-copy>p{margin-top:22px;max-width:480px}.hero .button{margin-top:25px}.hero-portrait{width:min(100%,470px);margin-inline:auto}.hero-portrait>img{width:106%;margin-left:-3%}.portrait-ground{inset:0 0 0 3%;border-radius:70px 0 0 0}.portrait-ground span{font-size:80px}.hero-portrait figcaption{margin-left:3%;font-size:23px;padding:18px 24px}.trust-bar{align-items:flex-start;flex-direction:column;gap:12px;padding-block:24px}.trust-bar>a{max-width:none;gap:6px 9px}.trust-bar>a span{width:auto;padding:0;font-size:12px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{max-width:100%;margin-top:24px}h2{font-size:39px}.treatment{grid-template-columns:1fr 48px;gap:18px 20px;padding-block:28px}.treatment h3{font-size:32px}.treatment h3 br{display:none}.treatment h3 em::before{content:" "}.treatment>div{grid-column:1/-1;grid-row:2}.treatment>a{grid-column:2;grid-row:1;width:48px;min-height:48px}.about{padding-top:56px}.about-layout{grid-template-columns:1fr;gap:36px}.about-copy{grid-row:1;padding:0}.about-copy h2{font-size:54px}.about-photo{width:min(100%,420px);margin-inline:auto}.about-photo img{aspect-ratio:4/4.5}.registration{margin-bottom:24px}.care-steps{grid-template-columns:1fr;gap:28px;padding-top:28px}.care-steps h3{margin-bottom:10px}.care .text-link{margin-top:30px}.review-rating{margin-top:26px}.review-grid{grid-template-columns:1fr;gap:16px}.review{padding:24px}.review blockquote{font-size:27px;margin-bottom:24px}.quote-mark{height:30px}.questions,.location-layout{grid-template-columns:1fr;gap:28px}.questions .text-link{margin-top:12px}.location{padding-block:60px}.location h2{font-size:39px}.location-map{margin-top:10px}.location-map iframe{height:340px}.courses{align-items:flex-start;flex-direction:column;padding-block:56px;gap:24px}.courses h2{font-size:36px}.footer-main{align-items:flex-start;flex-direction:column;gap:26px}.footer nav{gap:22px}.button{gap:20px;padding-inline:21px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
