@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap');
:root{--ink:#153e3a;--teal:#123f3c;--cream:#f7f5ef;--muted:#65716c;--line:#d9ded5;--sage:#e8eee6;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:'DM Sans','Manrope',Arial,sans-serif;background:var(--cream);font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #b88b4a;outline-offset:5px}img{max-width:100%}.wrap{width:min(1240px,calc(100% - 100px));margin:auto}.topbar{background:var(--teal);color:#e4e9e3;font-size:10px;letter-spacing:1.5px}.topbar .wrap{display:flex;justify-content:space-between;padding-top:9px;padding-bottom:9px}.topbar a{letter-spacing:.3px;font-size:11px}header{position:sticky;top:0;z-index:20;background:rgba(247,245,239,.97);border-bottom:1px solid var(--line)}.nav{height:100px;display:flex;align-items:center;gap:32px}.brand{display:flex;align-items:center;gap:15px;flex-shrink:0}.brand small{display:block;font-size:9px;letter-spacing:3px;line-height:1.2}.brand strong{font-family:var(--serif);font-size:25px;line-height:1.4;font-weight:400}.monogram{font-family:var(--serif);font-size:30px;letter-spacing:-3px;border:1px solid #a2b1a3;width:56px;height:56px;border-radius:50%;display:flex;justify-content:center;align-items:center;position:relative;padding-right:3px}.monogram span{position:absolute;font-size:12px;right:-3px;top:-5px;background:var(--cream);padding:0 3px;letter-spacing:0}.nav nav{margin-left:auto;display:flex;gap:27px;font-size:12px;font-weight:500}.nav nav a:hover{color:#9a7041}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--teal);color:white;padding:16px 23px;font-size:12px;border:1px solid var(--teal);transition:background .2s,transform .2s}.btn:hover{background:#28605a;transform:translateY(-2px)}.btn span{font-size:18px;line-height:1}.btn.small{font-size:11px;padding:12px 18px;gap:22px}.menu-toggle{display:none}.hero{overflow:hidden;background:#f3f3ec}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;min-height:655px;gap:20px}.hero-copy{padding:70px 0 44px;position:relative;z-index:2}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2px;display:flex;gap:10px;align-items:center;margin-bottom:24px}.dot{width:6px;height:6px;background:#789783;border-radius:50%}h1,h2,h3,p{margin:0}h1{font-family:var(--serif);font-size:clamp(48px,4.8vw,70px);font-weight:400;line-height:1.09;letter-spacing:-2.7px}h1 em,h2 em{font-weight:400;color:#648075}h1 em{display:inline-block;margin-top:8px}.hero-copy>p{font-size:14px;color:#647069;max-width:395px;margin-top:25px;line-height:1.85}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:30px}.text-link{display:inline-flex;gap:28px;font-size:12px;font-weight:600;align-items:center;border-bottom:1px solid #a5b2a6;padding:7px 0}.text-link span{font-size:17px}.hero-meta{display:flex;align-items:center;gap:15px;font-size:8px;letter-spacing:1.1px;margin-top:47px;color:#62756b}.hero-meta i{width:20px;height:1px;background:#acb8aa}.portrait-panel{position:relative;display:flex;align-items:flex-end;justify-content:center;background:linear-gradient(140deg,#dce6db,#e9ede3 60%,#d5e0d2);margin-right:calc((min(1240px,100vw - 100px) - 100vw)/2);overflow:hidden}.portrait-orbit{position:absolute;width:530px;height:530px;top:46px;border:1px solid #b8c7b5;border-radius:50%}.portrait-orbit:after{content:'';position:absolute;inset:24px;border:1px solid #c8d3c2;border-radius:50%}.portrait{height:570px;width:100%;object-fit:contain;object-position:center bottom;position:relative;z-index:1;mix-blend-mode:multiply}.vertical-label{position:absolute;z-index:2;right:24px;top:60px;writing-mode:vertical-rl;font-size:8px;letter-spacing:2.6px;color:#6e826e}.portrait-caption{position:absolute;z-index:3;bottom:44px;left:25px;right:70px;padding:19px 22px;background:rgba(248,248,241,.91);backdrop-filter:blur(10px);display:flex;gap:15px;align-items:center;border:1px solid #fff9}.portrait-caption strong{display:block;font-family:var(--serif);font-weight:400;font-size:22px}.portrait-caption span{display:block;color:#6e796b;font-size:10px;margin-top:3px}.seal{width:43px;height:43px;border:1px solid #a9b5a2;border-radius:50%;display:grid;place-items:center;font-size:24px}.photo-mark{position:absolute;bottom:12px;right:24px;font-size:7px;letter-spacing:2px;color:#687d65}.credential-strip{border-bottom:1px solid var(--line);background:#fffdf8}.credentials{display:grid;grid-template-columns:repeat(3,1fr);padding-top:29px;padding-bottom:29px}.credentials>div{display:flex;align-items:center;gap:19px;justify-content:center;border-right:1px solid var(--line)}.credentials>div:first-child{justify-content:flex-start}.credentials>div:last-child{border:0}.credential-icon{font-family:var(--serif);font-size:22px;color:#899b84;border:1px solid #cdd6c7;border-radius:50%;width:40px;height:40px;display:grid;place-items:center}.credentials strong{display:block;font-size:12px;font-weight:500}.credentials small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.section{padding:95px 0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:42px}h2{font-family:var(--serif);font-size:46px;line-height:1.15;font-weight:400;letter-spacing:-1.4px}.section-heading>p{max-width:360px;color:var(--muted);font-size:13px;line-height:1.85;padding-bottom:5px}.section .eyebrow{margin-bottom:20px}.expertise-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:55px}.specialty-list{padding-top:3px}.specialty-list button{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;padding:25px 0;display:flex;align-items:center;font-size:16px}.specialty-list button span{font-size:10px;color:#86927f;margin-right:22px}.specialty-list button b{margin-left:auto;font-size:21px;font-weight:400}.specialty-list button[aria-selected=true]{color:var(--teal);font-weight:600;border-bottom-color:var(--teal)}.specialty-list button[aria-selected=true] b{background:var(--teal);color:white;width:29px;height:29px;display:grid;place-items:center}.specialty-panel{position:relative;overflow:hidden;background:var(--sage);padding:38px 38px 28px;min-height:337px}.panel-kicker{font-size:8px;letter-spacing:1.5px;position:relative;z-index:1}.specialty-panel h3{font-family:var(--serif);font-size:30px;font-weight:400;margin:20px 0 12px;position:relative}.specialty-panel>p{max-width:350px;font-size:13px;color:#637269;position:relative}.tags{display:flex;flex-wrap:wrap;gap:6px;margin:22px 0 15px;position:relative;max-width:380px}.tags span{font-size:9px;padding:5px 9px;border:1px solid #c4d0c0;background:#edf1e9}.flower{position:absolute;width:230px;height:230px;right:-75px;top:25px;color:#9aaf93;opacity:.7}.about{background:#eaece4}.about-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:90px}.about-title>p{font-size:12px;color:#667366}.about-title p.about-intro{font-family:var(--serif);font-size:25px;color:var(--ink);margin:32px 0 5px}.about-title .text-link{margin-top:25px}.bio{font-size:14px;color:#56685d;line-height:1.9;margin-bottom:28px}.timeline{margin:0;padding:0;list-style:none}.timeline li{display:grid;grid-template-columns:85px 1fr;padding:19px 0;border-top:1px solid #cdd5c9;gap:15px}.timeline li>span{font-size:9px;letter-spacing:1px;color:#73836e;padding-top:4px}.timeline h3{font-size:13px;font-weight:600}.timeline p{font-size:11px;color:#71806d;line-height:1.8;margin-top:5px}.source-link{font-size:9px;display:inline-block;border-bottom:1px solid #bdcabb;margin-top:20px;color:#6b7c65}.steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:50px}.steps article{padding:0 28px;border-left:1px solid var(--line)}.steps article:first-child{padding-left:0;border:0}.steps article:last-child{padding-right:0}.steps article>span{font-family:var(--serif);font-size:30px;color:#91a08b}.steps h3{font-size:16px;font-weight:500;margin:20px 0 12px}.steps p{font-size:12px;color:var(--muted);line-height:1.85}.guide{background:#efeee7}.section-note{font-size:9px;letter-spacing:1.5px;color:#85917e;padding-bottom:10px}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.guide-card{padding:0;border:1px solid #daddd1;background:var(--cream);text-align:left;transition:transform .2s,box-shadow .2s}.guide-card:hover{transform:translateY(-6px);box-shadow:0 14px 30px #173e3b0b}.guide-art{height:180px;position:relative;overflow:hidden;background:#d6e0d1}.art-two{background:#dce1d9}.art-three{background:#dfd9c8}.line-circle{position:absolute;width:210px;height:210px;border:1px solid #9eaf95;border-radius:50%;right:-20px;top:-20px}.line-circle:before,.line-circle:after{content:'';position:absolute;border:1px solid #9eaf95;border-radius:50%;inset:15px}.line-circle:after{inset:32px}.art-two .line-circle{border-radius:45% 55% 40% 60%;transform:rotate(-30deg);top:0;right:40px}.art-three .line-circle{border-radius:0;transform:rotate(45deg);right:20px;top:-65px}.art-label{position:absolute;left:23px;bottom:20px;font-size:8px;letter-spacing:1.6px}.art-symbol{position:absolute;right:35px;top:20px;font-family:var(--serif);font-size:85px;font-weight:400;line-height:1.1;color:#4d705b}.art-two .art-symbol{font-size:100px;right:80px;top:36px}.art-three .art-symbol{font-size:125px;top:0}.guide-body{padding:25px}.guide-body small{font-size:8px;letter-spacing:1.5px;color:#768770}.guide-body h3{font-family:var(--serif);font-size:23px;font-weight:400;line-height:1.35;margin:12px 0 24px}.guide-body>span{font-size:10px}.medical-note{font-size:10px;color:#7c8677;margin-top:24px}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faq-grid>div>p{font-size:12px;color:var(--muted);max-width:250px;margin-top:24px}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:500;padding:22px 0;gap:20px}summary::-webkit-details-marker{display:none}summary>span{font-size:22px;font-weight:400;color:#80937b}details[open] summary>span{transform:rotate(45deg)}details p{font-size:12px;line-height:1.85;color:var(--muted);padding:0 30px 23px 0}details p a{border-bottom:1px solid #a1b19a;white-space:nowrap}.appointment{background:var(--teal);color:#f0f3eb}.appointment-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:110px}.appointment .eyebrow{color:#b4c9b1}.appointment h2{font-size:53px}.appointment h2 em{color:#b6c9ae}.appointment p{font-size:13px;color:#b7c9be;max-width:370px;margin-top:22px}.btn.light{background:#e9efdf;border-color:#e9efdf;color:var(--teal);margin-top:30px}.btn.light:hover{background:white}.appointment p.booking-note{font-size:10px;max-width:330px;line-height:1.8;margin-top:15px;color:#a6bcb0}.contact-box{padding-top:6px}.contact-row{padding:20px 0 24px;border-bottom:1px solid #ffffff29}.contact-row:first-child{padding-top:0}.contact-row>span{font-size:8px;letter-spacing:2px;color:#a6c1ad;display:block;margin-bottom:10px}.contact-row>a:not(.map-link){display:block;font-family:var(--serif);font-size:30px}.contact-row small{font-size:10px;color:#afc5b6}.contact-row h3{font-weight:400;font-size:15px}.contact-row p{font-size:11px;margin-top:6px}.map-link{font-size:11px;display:inline-block;margin-top:13px;border-bottom:1px solid #8ca490}.inline-button{border:0;border-bottom:1px solid #8ca490;background:none;color:#e8eee3;padding:0 0 5px;font-size:12px}.contact-row.last{border:0;padding-bottom:0}footer{background:#f7f5ef}.footer-main{display:flex;align-items:center;gap:60px;padding:43px 0;border-bottom:1px solid var(--line)}.footer-main>p{font-size:11px;color:var(--muted)}.footer-main>a:last-child{margin-left:auto;font-size:10px}.footer-bottom{padding:20px 0;display:flex;gap:35px;font-size:9px;color:#7b8776}.footer-bottom button{border:0;background:transparent;font-size:9px;color:inherit;padding:0}.footer-bottom>a{margin-left:auto}.skip{position:fixed;top:-60px;background:var(--teal);color:white;padding:10px;z-index:100}.skip:focus{top:0}.mobile-booking{display:none}dialog{max-width:650px;width:calc(100% - 32px);border:1px solid #c7d2c1;background:var(--cream);padding:50px;color:var(--ink);max-height:85vh;overflow:auto}dialog::backdrop{background:#102e29a8;backdrop-filter:blur(5px)}.dialog-close{position:absolute;top:10px;right:17px;background:none;border:0;font-size:30px}.dialog-done{margin-top:25px}.dialog-done:hover{transform:none}dialog h2{font-size:35px;margin:15px 0 20px}#dialog-body p,#dialog-body li{font-size:13px;line-height:1.9;color:var(--muted)}#dialog-body ul{padding-left:20px}#dialog-body p{margin:15px 0}#dialog-body a{text-decoration:underline}#dialog-body label{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}#dialog-body input{accent-color:var(--teal);width:17px;height:17px;flex-shrink:0;margin-top:4px}
@media(min-width:1550px){.hero-grid{min-height:700px}.portrait{height:610px}.hero-copy{padding-top:85px}}
@media(max-width:1100px){.wrap{width:calc(100% - 60px)}.nav{gap:23px}.nav nav{gap:18px;font-size:11px}.brand strong{font-size:23px}.hero-grid{min-height:610px}.hero-copy{padding-top:55px}h1{font-size:57px}.portrait-panel{margin-right:-30px}.portrait{height:525px}.hero-actions{gap:18px}.hero-actions .btn{gap:20px}.hero-meta{font-size:7px;gap:9px}.hero-copy>p{max-width:340px}.portrait-caption{left:16px;right:34px;bottom:32px;padding:15px}.portrait-caption strong{font-size:20px}.section{padding:75px 0}.about-grid,.faq-grid{gap:50px}.expertise-layout{gap:30px}.appointment-grid{gap:60px}h2{font-size:40px}}
@media(max-width:800px){.topbar .wrap>span{font-size:8px;letter-spacing:.6px}.topbar a{font-size:9px}.nav{height:80px;gap:18px}.brand strong{font-size:22px}.monogram{width:46px;height:46px;font-size:26px}.nav nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--cream);padding:22px 30px;border-bottom:1px solid var(--line);flex-direction:column;gap:18px;font-size:14px}.nav nav.open{display:flex}.nav>.btn{margin-left:0}.menu-toggle{display:block;margin-left:auto;background:none;border:0;font-size:23px;order:3}.hero-grid{min-height:560px;grid-template-columns:1fr .85fr;gap:10px}.hero-copy{padding:45px 0 30px}h1{font-size:46px;letter-spacing:-1.8px}.hero-copy>p{font-size:12px;max-width:290px}.hero-actions{align-items:flex-start;flex-direction:column;gap:9px;margin-top:24px}.hero-meta{display:none}.portrait{height:450px;object-fit:cover;object-position:52% bottom;width:110%;max-width:110%}.portrait-caption{left:10px;right:20px;bottom:24px;gap:8px;padding:12px}.portrait-caption strong{font-size:16px}.portrait-caption span{font-size:8px}.seal{width:32px;height:32px;font-size:18px;flex-shrink:0}.vertical-label{right:12px;top:40px;font-size:7px}.portrait-orbit{width:410px;height:410px;top:75px}.credentials{padding-top:22px;padding-bottom:22px}.credentials>div{gap:10px}.credential-icon{width:29px;height:29px;font-size:16px;flex-shrink:0}.credentials strong{font-size:10px}.credentials small{font-size:8px}.credentials>div:first-child{padding-right:10px}.credentials>div{padding-left:10px}.section-heading>p{max-width:260px;font-size:12px}.expertise-layout{grid-template-columns:.95fr 1.1fr;gap:23px}.specialty-list button{font-size:13px;padding:23px 0}.specialty-list button span{margin-right:12px}.specialty-panel{padding:28px 23px}.specialty-panel h3{font-size:25px}.specialty-panel>p{font-size:12px}.panel-kicker{font-size:7px}.tags span{font-size:8px}.about-grid{grid-template-columns:.9fr 1.1fr;gap:35px}h2{font-size:34px}.bio{font-size:12px}.timeline li{grid-template-columns:65px 1fr;gap:8px}.timeline h3{font-size:11px}.timeline p{font-size:10px}.timeline li>span{font-size:8px}.steps article{padding:0 16px}.steps h3{font-size:13px}.steps p{font-size:11px}.guide-grid{gap:16px}.guide-art{height:145px}.guide-body{padding:20px 16px}.guide-body h3{font-size:20px}.art-label{left:15px;font-size:7px}.art-symbol{font-size:65px}.guide-body>span{font-size:9px}.faq-grid{gap:45px}.appointment-grid{gap:45px}.appointment h2{font-size:43px}.appointment .btn{gap:20px;padding:14px 17px;font-size:10px}.contact-row>a:not(.map-link){font-size:26px}.footer-main{gap:30px}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.topbar .wrap{justify-content:center;padding-top:7px;padding-bottom:7px}.topbar .wrap>span{display:none}.nav{height:76px}.nav nav{top:76px}.brand{gap:10px}.brand strong{font-size:21px}.brand small{font-size:8px;letter-spacing:2px}.nav>.btn{font-size:9px;padding:10px 12px;gap:15px}.menu-toggle{font-size:21px;padding:0}.hero-grid{display:flex;flex-direction:column;gap:0}.hero-copy{padding:40px 0 35px}.hero .eyebrow{font-size:9px;margin-bottom:21px}h1{font-size:54px;letter-spacing:-2px}.hero-copy>p{max-width:360px;font-size:13px;margin-top:21px}.hero-actions{flex-direction:row;align-items:center;gap:20px;margin-top:25px}.hero-actions .btn{font-size:10px;padding:14px 16px;gap:22px}.hero-actions .text-link{font-size:10px;gap:13px}.portrait-panel{margin:0 -20px;min-height:390px;height:390px}.portrait{height:405px;width:90%;max-width:90%;object-fit:contain;object-position:center bottom}.portrait-orbit{top:15px;width:380px;height:380px}.portrait-caption{left:25px;right:55px;bottom:26px;padding:15px;gap:15px}.portrait-caption strong{font-size:22px}.portrait-caption span{font-size:10px}.seal{width:40px;height:40px;font-size:22px}.photo-mark{font-size:6px}.vertical-label{right:18px;top:30px}.credentials{grid-template-columns:1fr;padding:10px 0}.credentials>div,.credentials>div:first-child{padding:13px 0;justify-content:flex-start;border:0;border-bottom:1px solid #e8eae2;gap:15px}.credential-icon{width:31px;height:31px}.credentials strong{font-size:12px}.credentials small{font-size:10px}.section{padding:60px 0}.section-heading{display:block;margin-bottom:30px}.section-heading>p{max-width:340px;margin-top:22px}h2{font-size:37px}.section .eyebrow{font-size:9px;margin-bottom:18px}.expertise-layout{grid-template-columns:1fr;gap:25px}.specialty-list button{font-size:15px;padding:20px 0}.specialty-list button span{margin-right:20px}.specialty-panel{min-height:325px;padding:30px}.specialty-panel h3{font-size:29px}.specialty-panel>p{font-size:13px}.tags span{font-size:9px}.panel-kicker{font-size:8px}.about-grid{grid-template-columns:1fr;gap:35px}.about-title p.about-intro{margin-top:23px}.about-title .text-link{margin-top:18px}.bio{font-size:13px}.timeline li{grid-template-columns:75px 1fr;padding:20px 0}.timeline h3{font-size:13px}.timeline p{font-size:11px}.timeline li>span{font-size:9px}.source-link{font-size:9px}.steps{grid-template-columns:1fr 1fr;gap:30px 0;margin-top:32px}.steps article{padding:0 20px}.steps article:nth-child(3){padding-left:0;border:0}.steps h3{font-size:14px;margin-top:12px}.steps p{font-size:12px}.guide-grid{grid-template-columns:1fr;gap:22px}.guide-art{height:190px}.guide-body{padding:24px}.guide-body h3{font-size:26px;margin-bottom:20px}.guide-body small{font-size:9px}.guide-body>span{font-size:11px}.art-label{left:25px;bottom:24px;font-size:9px}.art-symbol{font-size:95px}.section-note{display:block;margin-top:20px}.faq-grid{grid-template-columns:1fr;gap:30px}.faq-grid>div>p{max-width:300px}.appointment-grid{grid-template-columns:1fr;gap:40px}.appointment h2{font-size:48px}.appointment .btn{font-size:11px}.contact-row>a:not(.map-link){font-size:30px}.footer-main{flex-wrap:wrap;gap:25px;padding:35px 0}.footer-main>p{font-size:10px}.footer-main>a:last-child{margin-left:0}.footer-bottom{flex-wrap:wrap;gap:15px;font-size:8px;padding-bottom:85px}.footer-bottom button{font-size:8px}.mobile-booking{position:fixed;bottom:0;left:0;right:0;background:var(--cream);z-index:25;padding:10px 20px;display:flex;gap:10px;border-top:1px solid var(--line);box-shadow:0 -5px 20px #143e3b0a}.mobile-booking a{width:50%;text-align:center;font-size:11px;padding:11px 5px;border:1px solid var(--teal)}.mobile-booking a:last-child{background:var(--teal);color:white}dialog{padding:42px 25px 30px}dialog h2{font-size:30px}html{scroll-padding-top:95px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
