@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600&family=Manrope:wght@400;500;600&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap";:root{--paper:#f9f7f2;--cream:#eeebe3;--ink:#453d36;--muted:#746c63;--line:#dcd6cb;--dark:#443b33;--rose:#b87964;--rose-deep:#966454;--rose-wash:#ead5ca;--radius:3px;--serif:"Playfair Display", Georgia, serif;--sans:"DM Sans", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{background:var(--paper);color:var(--ink);font-family:var(--sans);margin:0;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit}img{object-fit:cover;max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.14}h1{letter-spacing:-2.4px;font-size:clamp(48px,4.7vw,76px)}h2{letter-spacing:-1.5px;font-size:clamp(38px,3.7vw,56px)}h3{font-size:28px}em{color:var(--rose-deep);font-weight:400}p{color:var(--muted)}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--rose-deep);outline-offset:6px}.topbar{text-align:center;letter-spacing:2.5px;background:var(--cream);padding:8px;font-size:10px}.header{border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;gap:30px;height:106px;padding:0 4.5%;display:flex}.brand{letter-spacing:3px;white-space:nowrap;font-family:Manrope,sans-serif;font-size:24px;line-height:1.2}.brand span{text-align:center;letter-spacing:4.5px;margin-top:9px;font-size:9px;display:block}.header nav{gap:34px;font-size:14px;display:flex}.header nav a:hover,.header nav a[aria-current]{text-underline-offset:7px;text-decoration:underline}.button{background:var(--dark);border-radius:var(--radius);color:#fff;justify-content:space-between;align-items:center;gap:28px;min-height:52px;padding:16px 24px;font-size:14px;transition:background .2s,transform .2s;display:inline-flex}.button:hover{background:#695846;transform:translateY(-2px)}.button span{font-size:20px;line-height:1}.text-link{border-bottom:1px solid #928676;align-items:center;gap:26px;padding-bottom:6px;font-size:14px;display:inline-flex}.text-link:hover{color:#987957}.text-link span{font-size:20px}.hero{grid-template-columns:1fr 1fr;min-height:650px;display:grid}.hero-copy{flex-direction:column;align-items:flex-start;padding:68px 7% 36px 9%;display:flex}.eyebrow{letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-bottom:25px;font-size:11px;font-weight:500;line-height:1.5}.small-line{vertical-align:middle;background:var(--rose);width:25px;height:1px;margin-right:10px;display:inline-block}.hero h1{margin-bottom:27px}.hero-description{max-width:430px;font-size:15px;line-height:1.8}.actions{flex-wrap:wrap;align-items:center;gap:25px;margin-top:32px;display:flex}.hero-foot{color:var(--muted);align-items:center;gap:14px;margin-top:auto;padding-top:45px;font-size:11px;line-height:1.6;display:flex}.icon{vertical-align:-.15em;flex-shrink:0;width:1em;min-width:1em;height:1em;display:inline-block}.button>.icon,.back .icon{font-size:20px}.fine-icon{color:var(--rose);font-size:30px}.hero-visual{border-bottom:1px solid var(--rose-wash);background:#cabfb0;min-height:650px;position:relative;overflow:hidden}.hero-visual>img{object-position:center 40%;width:100%;height:100%;position:absolute}.hero-visual:after{content:"";pointer-events:none;background:linear-gradient(#0000 0%,#342b231f 35%,#342b23c2 100%);position:absolute;inset:42% 0 0}.image-caption{z-index:1;color:#fff;letter-spacing:1.6px;justify-content:space-between;gap:15px;font-size:9px;display:flex;position:absolute;bottom:23px;left:28px;right:28px}.image-caption span{text-shadow:0 1px 4px #1c15118c;min-width:0}.image-caption span:last-child{text-align:right}.image-word{z-index:1;font-family:var(--serif);color:#fff;font-size:50px;font-style:italic;position:absolute;bottom:52px;left:35px}.principles{border-bottom:1px solid var(--line);letter-spacing:1px;justify-content:space-around;gap:25px;padding:26px 4.5%;font-size:11px;display:flex}.principles span{color:var(--rose-deep);align-items:center;gap:20px;display:flex}.principles b{color:var(--ink);letter-spacing:.3px;font-size:13px;font-weight:400}.section{padding:90px 4.5%}.section-head{grid-template-columns:1fr 1fr;align-items:end;gap:10%;margin-bottom:44px;display:grid}.section-head>div>p:not(.eyebrow),.section-head>p{max-width:390px;font-size:15px}.section-head .text-link{margin-top:25px}.treatment-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.treatment-card{background:var(--cream);border-radius:var(--radius);border:1px solid #0000;flex-direction:column;min-height:300px;padding:25px;transition:border-color .2s,background .2s;display:flex}.treatment-card:hover{background:#e7e1d6;border-color:#a89886}.card-top{color:var(--rose-deep);justify-content:space-between;margin-bottom:34px;font-size:12px;display:flex}.card-top span:last-child{font-size:23px}.treatment-card .eyebrow{letter-spacing:1.5px;margin-bottom:12px;font-size:9px}.treatment-card h3{margin-bottom:14px;font-size:27px}.treatment-card p:not(.eyebrow){font-size:13px;line-height:1.8}.card-link{text-underline-offset:5px;margin-top:auto;padding-top:24px;font-size:11px;text-decoration:underline}.philosophy{background:#eeebe3;grid-template-columns:1fr 1fr;display:grid}.philosophy-image{min-height:570px;position:relative}.philosophy-image img{filter:saturate(.6);width:100%;height:100%;position:absolute}.philosophy-image span{letter-spacing:2px;color:var(--ink);background:var(--paper,#f8f6f1);max-width:calc(100% - 70px);padding:10px 14px;font-size:10px;line-height:1.5;position:absolute;bottom:28px;left:35px}.philosophy-copy{padding:75px 12%}.philosophy-copy p:not(.eyebrow){margin-top:24px;font-size:14px}.philosophy-copy .text-link{margin-top:32px}.doctor-grid{grid-template-columns:1fr 1fr;gap:40px;display:grid}.doctor-card{min-width:0;display:block}.practitioner-portrait{aspect-ratio:5/6;border-radius:var(--radius);background:var(--cream);width:100%;height:auto}.doctor-card-copy{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:20px;padding:25px 0 22px;display:flex}.doctor-card-copy>span{color:var(--rose-deep);font-size:24px}.doctor-card:hover h3{text-underline-offset:5px;text-decoration:underline 1px}.doctors-home{max-width:1450px;margin-inline:auto}.practitioner-profiles{margin-top:70px}.practitioner-profile{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(30px,6vw,85px);display:grid}.doctor-grid .eyebrow{margin-bottom:13px;font-size:9px}.doctor-grid h3{margin-bottom:12px;font-size:26px}.doctor-grid p{font-size:13px}.consult{text-align:center;background:var(--dark);color:var(--paper);padding:80px 24px}.consult .eyebrow,.consult p,.consult em{color:#cbbda9}.consult h2{font-size:56px}.consult p:not(.eyebrow){max-width:405px;margin:25px auto}.light{background:var(--paper);color:var(--ink)}.light:hover{background:#e0d6c7}footer{padding:60px 4.5% 20px}.footer-main{grid-template-columns:1.5fr 1fr .7fr .7fr;gap:35px;padding-bottom:55px;display:grid}.footer-logo-link{width:min(210px,100%);display:block}.footer-logo{aspect-ratio:1;object-fit:contain;mix-blend-mode:multiply;width:100%;height:auto}.footer-main .brand{place-self:start;font-size:21px}.footer-main p{font-size:14px}.footer-main>div{flex-direction:column;gap:12px;font-size:13px;display:flex}.footer-main a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;padding-top:22px;font-size:10px;display:flex}.menu-toggle,.mobile-booking-bar,.mobile-nav[hidden]{display:none}.mobile-nav{background:var(--cream);flex-direction:column;gap:15px;padding:20px 6%;display:flex}.skip{z-index:100;background:#fff;padding:12px;position:absolute;top:-100px;left:15px}.skip:focus{top:10px}.page-head{background:var(--cream);padding:65px 4.5% 55px}.page-head .eyebrow{margin-bottom:20px}.page-head p:not(.eyebrow){max-width:650px;margin-top:25px}.page-head h1{max-width:1000px}.page-content{max-width:1450px;margin:auto;padding:65px 4.5% 90px}.category-title{justify-content:space-between;align-items:center;gap:25px;margin-bottom:30px;display:flex}.category-title h2{font-size:38px}.category-title span{color:var(--muted);font-size:12px}.catalog{grid-template-columns:repeat(3,1fr)}.medical-block{background:var(--cream);border-radius:var(--radius);grid-template-columns:1fr 1fr;gap:50px;margin-top:60px;padding:40px;display:grid}.medical-block h2{font-size:38px}.medical-block .text-link{margin-top:22px}.content-grid{grid-template-columns:1.7fr 1fr;align-items:start;gap:10%;display:grid}.prose h2{margin-bottom:22px;font-size:36px}.prose p+p{margin-top:20px}.prose section+section{margin-top:55px}.prose ul{color:var(--muted);padding-left:20px}.aside-box{background:var(--cream);border-radius:var(--radius);padding:32px}.aside-box h3{margin-bottom:20px}.aside-box p{font-size:14px}.aside-box .button{margin-top:25px}.back{margin-bottom:30px;font-size:13px;display:inline-block}.profile{border-top:1px solid var(--line);padding:40px 0;scroll-margin-top:30px}.profile h2{margin-bottom:16px}.profile .eyebrow{margin-bottom:15px}.notice{background:var(--cream);border-radius:var(--radius);border-left:2px solid #ae9675;margin:25px 0;padding:16px 22px}.booking-panel{background:var(--cream);border-radius:var(--radius);max-width:740px;margin:0 auto;padding:45px}.booking-panel h2{margin-bottom:22px;font-size:38px}.status{align-items:center;gap:10px;margin-bottom:25px;font-size:12px;display:inline-flex}.status:before{content:"";background:var(--rose);border-radius:50%;width:7px;height:7px}.booking-panel .text-link{margin-top:25px}.booking-terms{text-align:center;max-width:740px;margin:22px auto 0;font-size:13px}.booking-terms a{color:var(--muted);text-underline-offset:5px;text-decoration:underline}.booking-terms span{margin-left:5px;font-size:18px}.price-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:22px 0;display:flex}.price-row h3{font-size:24px}.price-row span{color:var(--muted);font-size:13px}.contact-grid{grid-template-columns:1fr 1fr;gap:30px;display:grid}.contact-item{border-top:1px solid var(--line);padding:25px 0}.contact-item h2{margin-bottom:15px;font-size:29px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;color:var(--ink);font-size:17px}details p{padding-top:15px}.faq{max-width:800px;margin:65px auto 0}.legal-page{max-width:1120px}.legal-intro{max-width:560px;margin-bottom:58px}.legal-intro p:not(.eyebrow){font-size:17px;line-height:1.8}.legal-sections{max-width:820px}.legal-sections section{border-top:1px solid var(--line);padding:28px 0 30px;scroll-margin-top:30px}.legal-sections section:last-child{border-bottom:1px solid var(--line)}.legal-sections .eyebrow{color:#9b8c79;margin-bottom:12px}.legal-sections h2{margin-bottom:13px;font-size:32px}.legal-sections p:not(.eyebrow){font-size:15px;line-height:1.85}.legal-sections p+p{margin-top:20px}.faq h2{margin-bottom:25px;font-size:36px}@media (width>=1600px){.hero,.hero-visual{min-height:760px}.hero-copy{padding-top:95px}}@media (width<=1050px){.header,.header nav{gap:20px}.brand{font-size:20px}.hero-copy{padding-top:50px}.hero,.hero-visual{min-height:620px}.hero h1{font-size:53px}.actions{gap:20px}.actions .button{padding:14px 18px}.treatment-grid,.catalog{grid-template-columns:repeat(2,1fr)}.philosophy-copy{padding:55px 9%}.footer-main{grid-template-columns:1.3fr 1fr .6fr .6fr}.doctor-grid{gap:25px}.doctor-grid h3{font-size:24px}}@media (width<=760px){html{scroll-padding-top:25px}.topbar{padding:7px;font-size:9px}.header{gap:16px;height:82px;padding:0 6%}.brand{letter-spacing:2px;font-size:18px}.brand span{letter-spacing:3.3px;margin-top:7px;font-size:7px}.header nav,.header-book{display:none}.menu-toggle{color:var(--ink);background:0 0;border:0;align-items:center;gap:8px;padding:10px 0;font-size:0;display:flex}.menu-toggle span{font-size:21px}.hero{grid-template-columns:1fr}.hero-copy{padding:43px 6% 35px}.eyebrow{margin-bottom:22px;font-size:10px}.hero h1{letter-spacing:-1.8px;font-size:51px}.hero-description{max-width:440px;font-size:14px}.actions{gap:20px;margin-top:27px}.actions .button{gap:20px;font-size:12px}.actions .text-link{gap:13px;font-size:12px}.hero-foot{padding-top:25px;font-size:10px}.hero-visual{min-height:470px}.hero-visual>img{object-position:center 38%}.image-word{font-size:44px;left:24px}.image-caption{font-size:8px;left:24px;right:24px}.principles{flex-wrap:wrap;justify-content:flex-start;gap:17px;padding:23px 6%}.principles span{flex:100%;gap:12px;font-size:10px}.principles b{font-size:12px}.section{padding:55px 6%}.section-head{grid-template-columns:1fr;gap:24px;margin-bottom:30px}.section-head>p,.section-head>div>p:not(.eyebrow){font-size:14px}.section-head .text-link{margin-top:18px}h2{font-size:39px}.treatment-grid{gap:12px}.treatment-card{min-height:310px;padding:19px 16px}.treatment-card h3{overflow-wrap:normal;font-size:24px}.treatment-card .eyebrow{letter-spacing:1px;font-size:8px}.treatment-card p:not(.eyebrow){font-size:12px}.card-top{margin-bottom:23px}.card-link{font-size:10px}.philosophy{grid-template-columns:1fr}.philosophy-image{min-height:400px}.philosophy-copy{padding:48px 6%}.doctor-grid{grid-template-columns:1fr;gap:30px}.practitioner-profile{grid-template-columns:minmax(0,1fr);gap:28px}.practitioner-profiles{margin-top:45px}.consult{padding:60px 6%}.consult h2{font-size:43px}.consult p:not(.eyebrow){font-size:14px}.footer-main{grid-template-columns:1fr 1fr;gap:35px}.footer-main>.brand{grid-column:1/-1}.footer-logo-link{grid-column:1/-1;width:170px}.footer-main>p{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:8px}footer{padding:45px 6% 20px}body{padding-bottom:82px}.mobile-booking-bar{left:16px;right:16px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:20;border:1px solid var(--rose);border-radius:var(--radius);background:var(--dark);color:#fff;letter-spacing:.2px;justify-content:space-between;align-items:center;gap:20px;padding:14px 18px;font-size:13px;display:flex;position:fixed;box-shadow:0 14px 32px #362b2338}.mobile-booking-bar span:last-child{color:var(--rose-wash);font-size:20px;line-height:1}.mobile-booking-bar:focus-visible{outline-color:var(--rose-wash);outline-offset:4px}.page-head{padding:42px 6%}.page-head h1{letter-spacing:-1.5px;overflow-wrap:normal;font-size:clamp(30px,7.5vw,43px)}.page-head p:not(.eyebrow){font-size:15px}.page-content{padding:45px 6% 60px}.category-title{align-items:start}.category-title h2{font-size:29px}.category-title span{font-size:11px}.medical-block{grid-template-columns:1fr;gap:25px;margin-top:35px;padding:28px}.content-grid{grid-template-columns:1fr;gap:35px}.prose h2{font-size:32px}.booking-panel{padding:28px}.booking-panel h2{font-size:32px}.price-row h3{font-size:21px}.price-row span{text-align:right;font-size:11px}.contact-grid{grid-template-columns:1fr;gap:10px}.faq{margin-top:45px}.legal-intro{margin-bottom:35px}.legal-intro p:not(.eyebrow){font-size:16px}.legal-sections section{padding:24px 0 26px}.legal-sections h2{font-size:29px}.legal-sections p:not(.eyebrow){font-size:16px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.treatment-card p:not(.eyebrow),.doctor-grid p:not(.eyebrow){font-size:14px}.card-link{font-size:12px}@media (width<=760px){.treatment-card h3{font-size:22px}.treatment-card .eyebrow{font-size:10px}.treatment-card p:not(.eyebrow){font-size:14px}.treatment-card{min-height:350px}.hero-description{font-size:16px}.hero-visual{min-height:440px}}@media (width<=600px){.treatment-grid{grid-template-columns:minmax(0,1fr)}.treatment-card{min-height:0;padding:24px}.treatment-card h3{font-size:clamp(25px,6.5vw,30px)}.price-row{flex-direction:column;align-items:flex-start;gap:10px}}@media (width<=390px){.hero h1{font-size:46px}}
