:root{--paper:#f5f0e8;--plum:#402d38;--rose:#e7d5cc;--clay:#91685b;--ink:#352e32;--muted:#6a6062;--line:#cfc4be;--white:#fffcf8;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:125px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.8}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #007b82;outline-offset:6px}::selection{background:#dcc4b7;color:var(--plum)}.skip{position:fixed;top:-100px;left:20px;padding:12px 22px;background:var(--white);z-index:100}.skip:focus{top:12px}.announcement{background:var(--plum);color:var(--paper);text-align:center;font-size:11px;letter-spacing:.035em;padding:9px 20px}.announcement a{margin-left:16px;border-bottom:1px solid #aa959b}.site-header{height:105px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;gap:30px;background:rgba(245,240,232,.97);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(64,45,56,.12)}.brand{width:180px;height:95px;overflow:hidden;flex-shrink:0;display:flex;align-items:center}.brand img{width:180px;height:120px;object-fit:contain}.site-header nav{display:flex;gap:31px;align-items:center;font-size:12px}.site-header nav a{position:relative;padding:8px 0}.site-header nav a::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--plum);transform:scaleX(0);transform-origin:left;transition:transform .3s}.site-header nav a:hover::after,.site-header nav a[aria-current]::after{transform:scaleX(1)}.header-cta{font-size:12px;border:1px solid #a99a9e;padding:11px 18px;border-radius:2px;white-space:nowrap;transition:.25s}.header-cta span{margin-left:17px}.header-cta:hover{background:var(--plum);color:var(--paper)}.menu-toggle{display:none}.eyebrow{display:block;font-size:10px;line-height:1.5;letter-spacing:.16em;font-weight:600;text-transform:uppercase}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:-.035em}h1{font-size:clamp(64px,7vw,112px);line-height:.98}h2{font-size:clamp(42px,4.6vw,72px);line-height:1.04}h3{font-size:32px;line-height:1.15}em{font-weight:400;color:var(--clay)}p{color:var(--muted)}p+p{margin-top:18px}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:7%;padding:60px 7% 68px;max-width:1600px;margin:auto;align-items:center}.hero-copy .eyebrow{margin-bottom:30px}.hero h1{color:var(--plum)}.hero-copy>p{max-width:395px;margin:26px 0 28px;font-size:14px;line-height:1.9}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--plum);color:var(--white);font-size:12px;padding:17px 23px;min-height:54px;transition:background .25s,transform .25s}.button span{font-size:22px;line-height:1}.button:hover{background:#60424e;transform:translateY(-2px)}.hero-note{font-size:10px;line-height:1.7;margin-top:27px;padding-left:32px;position:relative;color:var(--muted)}.hero-note .small-mark{position:absolute;left:0;top:-3px;font-size:25px;color:var(--clay)}.hero-note>span:last-child{font-size:10px}.hero-visual{position:relative;margin:0 20px 0 0}.portrait-frame{height:540px;overflow:hidden;background:#dedbd0}.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;transition:transform 1.3s}.hero-visual:hover img{transform:scale(1.025)}.vertical-note{position:absolute;right:-31px;top:0;writing-mode:vertical-rl;font-size:9px;letter-spacing:.22em}.portrait-label{background:var(--rose);margin-left:35px;margin-right:-20px;position:relative;margin-top:-38px;padding:21px 27px;display:flex;align-items:center;justify-content:space-between}.portrait-label strong{font-family:var(--serif);font-size:30px;font-weight:500;line-height:1.2;display:block}.portrait-label span{font-size:9px;letter-spacing:.15em}.portrait-label a{font-size:30px;border:1px solid #ac8b85;width:46px;height:46px;border-radius:50%;text-align:center;line-height:43px}.care-ribbon{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:center;align-items:center;gap:5%;padding:22px 5%;font-size:10px;letter-spacing:.06em}.care-ribbon i{font-size:20px;font-style:normal;color:var(--clay)}.section{padding:100px 7%;max-width:1600px;margin:auto}.intro{display:grid;grid-template-columns:1.1fr 1fr;gap:12%}.intro h2,.section-heading h2,.first-step h2{margin-top:25px}.intro-copy{padding-top:5px}.large-copy{font-size:22px;line-height:1.5;font-family:var(--serif);color:var(--ink);letter-spacing:-.01em}.intro-copy .large-copy{font-size:30px}.text-link{display:inline-flex;gap:35px;align-items:center;font-size:12px;border-bottom:1px solid var(--clay);padding-bottom:9px;margin-top:25px}.text-link span{font-size:24px;line-height:1}.text-link:hover{color:var(--clay)}.care-section{background:#eae3dc;max-width:none}.section-heading{display:flex;justify-content:space-between;gap:10%;align-items:end;margin-bottom:48px}.section-heading>p{max-width:300px;font-size:13px;margin-bottom:7px}.service-row{border-top:1px solid #bfb0ad;display:grid;grid-template-columns:45px 1.2fr .85fr 30px;align-items:center;gap:25px;padding:32px 0;transition:padding .3s}.service-row:last-child{border-bottom:1px solid #bfb0ad}.service-row:hover{padding-left:12px}.service-number{font-family:var(--serif);font-size:22px;color:var(--clay)}.service-row h3{font-size:36px}.service-row div>span{font-size:8px;letter-spacing:.12em;display:block;margin-top:10px}.service-row p{font-size:13px;max-width:280px}.service-row b{font-size:30px;font-weight:400}.human-section{display:grid;grid-template-columns:1fr 1fr;background:var(--plum);color:var(--paper)}.human-photo{height:690px;position:relative;overflow:hidden}.human-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}.human-photo>span{position:absolute;bottom:30px;left:30px;padding:10px 20px;background:var(--paper);color:var(--plum);font-size:12px}.human-copy{padding:85px 15% 65px 13%;align-self:center}.human-copy h2{font-size:clamp(44px,4.4vw,68px);margin:25px 0}.human-copy em,.closing em{color:#dab7a8}.human-copy p{color:#ded0d5;font-size:13px}.human-copy .text-link{border-color:#aa8c8b}.first-step{display:grid;grid-template-columns:1fr 1fr;gap:12%}.steps{list-style:none;padding:0;margin:0}.steps li{display:flex;gap:26px;padding:22px 0;border-top:1px solid var(--line)}.steps li:last-child{border-bottom:1px solid var(--line)}.steps li>span{font-size:10px;color:var(--clay);padding-top:10px}.steps h3{font-size:30px}.steps p{font-size:13px;margin-top:10px}.closing{position:relative;overflow:hidden;background:var(--plum);color:var(--paper);text-align:center;padding:85px 7% 95px}.closing-inner{position:relative;z-index:1}.closing h2{margin:25px 0 32px}.button.light{background:var(--paper);color:var(--plum)}.button.light:hover{background:var(--rose)}.thread-art{position:absolute;width:55%;right:-10%;bottom:-25%;stroke:#bda496;stroke-width:1;opacity:.26;pointer-events:none}.closing .thread-art{width:65%;right:-28%;bottom:-15%;transform:rotate(-30deg)}footer{padding:65px 7% 25px}.footer-top{display:grid;grid-template-columns:1.3fr .7fr 1fr;gap:8%;padding-bottom:50px}.footer-brand{font-family:var(--serif);font-size:33px;line-height:1.1;display:block}.footer-brand>span{display:block;font:8px var(--sans);letter-spacing:.16em;margin-top:10px}.footer-top p{font-size:12px;margin-top:24px}.footer-top>div:not(:first-child){display:flex;flex-direction:column;align-items:start;gap:10px;font-size:12px}.footer-top .eyebrow{margin:5px 0 12px}.footer-top a:hover{color:var(--clay)}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:40px;font-size:9px;line-height:1.7}.footer-bottom p{max-width:410px}.page-heading{padding-top:70px;padding-bottom:60px}.page-heading h1{margin-top:30px;font-size:clamp(64px,6.8vw,104px)}.page-heading>p{font-size:16px;max-width:500px;margin-top:25px}.bio{display:grid;grid-template-columns:.85fr 1fr;gap:10%;padding-top:20px;align-items:start}.bio-image img{width:100%;height:570px;object-fit:cover}.photo-caption{padding-top:17px;font-family:var(--serif);font-size:25px;display:flex;justify-content:space-between;align-items:center}.photo-caption span{font-family:var(--sans);font-size:9px;letter-spacing:.1em}.bio-copy h2{font-size:53px;margin:25px 0}.bio-copy p{font-size:14px}.bio-copy .large-copy{font-size:25px}.values{background:var(--rose);max-width:none}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7%;margin-top:40px}.values-grid article{border-top:1px solid #b79b91;padding-top:25px}.values-grid article>span{font-size:9px;letter-spacing:.12em}.values-grid h3{font-size:39px;margin:25px 0 18px}.values-grid p{font-size:13px}.personal{display:grid;grid-template-columns:1fr .8fr;gap:15%;align-items:center}.personal h2{margin:25px 0}.personal p{font-size:14px}.personal img{height:560px;width:100%;object-fit:cover}.personal blockquote{font:italic 33px/1.2 var(--serif);margin:40px 0 0;color:var(--clay)}cite{font-style:normal;display:block;font:9px var(--sans);letter-spacing:.12em;margin-top:25px}.care-detail{display:grid;grid-template-columns:1fr 2fr;gap:5%;padding-top:70px;padding-bottom:70px;border-top:1px solid var(--line);scroll-margin-top:20px}.detail-number{font:120px/1 var(--serif);color:#b8a095}.care-detail h2{font-size:52px;margin:20px 0}.care-detail p{max-width:640px;font-size:14px}.care-detail .large-copy{font-size:28px}.simple-list{list-style:none;padding:0;margin:25px 0 0;font-size:12px}.simple-list li{padding:10px 0;border-top:1px solid var(--line)}.simple-list li::before{content:'↗';margin-right:15px;color:var(--clay)}.concerns{display:grid;grid-template-columns:1fr 1fr;gap:13%;background:var(--plum);color:var(--paper);max-width:none}.concerns h2{margin:25px 0}.concerns em{color:#dab7a8}.concerns p{font-size:13px;color:#dfd0d5}.concern-list{display:flex;flex-direction:column;justify-content:center}.concern-list span{border-bottom:1px solid #78636e;padding:11px 0;font-size:14px}.faq-section{display:grid;grid-template-columns:1fr 1.3fr;gap:10%}.faq-section h2{margin-top:25px}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0}summary::-webkit-details-marker{display:none}summary>span{font-size:22px;font-weight:400;transition:transform .25s}details[open] summary>span{transform:rotate(45deg)}.faq details p{font-size:13px;padding-bottom:24px}.contact-section{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:20px}.contact-card{position:relative;display:block;background:var(--rose);padding:30px 35px 38px;margin-bottom:20px;transition:background .2s}.contact-card:hover{background:#dfc7ba}.contact-card strong{display:block;font-family:var(--serif);font-size:44px;font-weight:500;letter-spacing:-.035em;line-height:1.2;margin:18px 45px 12px 0;overflow-wrap:anywhere}.contact-card strong.email-address{font-size:37px}.contact-card p{font-size:12px;max-width:250px}.round-arrow{position:absolute;right:30px;bottom:35px;width:40px;height:40px;border:1px solid #a2877e;border-radius:50%;text-align:center;font-size:25px;line-height:38px}.privacy-note{font-size:11px;padding:2px 10px}.contact-aside h2{font-size:53px;margin:22px 0 35px}.contact-aside>div{border-top:1px solid var(--line);padding:20px 0}.contact-aside h3{font-size:27px;margin-bottom:12px}.contact-aside p{font-size:13px}.contact-aside .insurers{color:var(--clay);font-size:12px;font-weight:600;line-height:2}.contact-quote{position:relative;overflow:hidden;background:var(--rose);text-align:center;padding:75px 7%}.contact-quote blockquote{font:500 68px/1.05 var(--serif);letter-spacing:-.035em;position:relative;z-index:1;margin:0}.contact-quote .thread-art{opacity:.4;stroke:var(--clay)}.reveal{opacity:1;transform:none}.js-motion .reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}.js-motion .reveal.visible{opacity:1;transform:none}
@media(min-width:1600px){.site-header,.care-ribbon,.care-section,.concerns,.values,footer{padding-left:max(7%,calc((100vw - 1376px)/2));padding-right:max(7%,calc((100vw - 1376px)/2))}.hero-visual .portrait-frame{height:620px}}
@media(max-width:1050px){.header-cta{display:none}.site-header nav{gap:25px}.hero{gap:6%;padding:45px 6% 60px}.hero h1{font-size:82px}.portrait-frame{height:490px}.hero-copy .eyebrow{font-size:8px}.hero-copy>p{font-size:13px}.hero .button{gap:20px;font-size:11px;padding:16px}.section{padding:75px 6%}.service-row{grid-template-columns:30px 1.2fr .8fr 25px;gap:20px}.service-row h3{font-size:31px}.human-copy{padding:60px 11%}.human-photo{height:620px}.first-step{gap:8%}.bio{gap:7%}.bio-image img{height:500px}.bio-copy h2{font-size:45px}.personal{gap:9%}.contact-section{gap:7%}.contact-card{padding:25px}.contact-card strong{font-size:37px}.contact-card strong.email-address{font-size:30px}}
@media(max-width:740px){html{scroll-padding-top:88px}.announcement{font-size:9px;padding:8px 12px}.announcement a{margin-left:8px}.site-header{height:82px;padding:0 6%}.brand{width:145px;height:78px}.brand img{width:145px;height:97px}.menu-toggle{display:flex;gap:15px;align-items:center;border:0;background:none;color:var(--plum);padding:12px 0 12px 12px;font-size:12px}.menu-toggle span{font-size:21px}.site-header nav{display:none;position:absolute;top:81px;left:0;right:0;background:var(--paper);padding:20px 7% 30px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #402d3810;flex-direction:column;align-items:stretch;gap:6px;font-size:18px}.site-header nav.open{display:flex}.site-header nav a{padding:10px 0}.hero{grid-template-columns:1fr;padding:40px 7% 42px;gap:35px}.hero-copy .eyebrow{font-size:9px;letter-spacing:.12em;margin-bottom:22px}.hero h1{font-size:clamp(66px,15vw,90px);line-height:.99}.hero-copy>p{font-size:14px;margin:23px 0;max-width:400px}.hero .button{font-size:12px;gap:30px;padding:17px 21px}.hero-note{margin-top:22px}.hero-visual{margin-right:15px}.portrait-frame{height:440px}.portrait-frame img{object-position:50% 28%}.portrait-label{margin-left:25px;margin-right:-15px;padding:17px 22px;margin-top:-32px}.portrait-label strong{font-size:29px}.vertical-note{right:-25px;font-size:8px}.care-ribbon{padding:18px 7%;gap:12px;font-size:8px;flex-wrap:wrap;text-align:center}.care-ribbon i{font-size:15px}.care-ribbon span:first-child{width:100%}.care-ribbon i:nth-child(2){display:none}.section{padding:62px 7%}h2{font-size:48px}.intro,.first-step,.bio,.personal,.concerns,.faq-section,.contact-section{grid-template-columns:1fr;gap:35px}.intro-copy .large-copy{font-size:29px}.intro-copy p{font-size:14px}.intro-copy p.large-copy{font-size:28px}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:25px;max-width:380px;font-size:14px}.service-row{grid-template-columns:25px 1fr 25px;gap:12px;padding:27px 0}.service-row h3{font-size:31px}.service-row div>span{font-size:8px;letter-spacing:.07em}.service-row p{grid-column:2;grid-row:2;max-width:none;font-size:13px;margin-top:0}.service-row b{grid-column:3;grid-row:1/3}.service-number{align-self:start;font-size:21px}.human-section{grid-template-columns:1fr}.human-photo{height:540px}.human-photo img{object-position:50% 58%}.human-copy{padding:55px 7% 60px}.human-copy h2{font-size:52px}.human-copy p{font-size:14px}.human-photo>span{left:24px;bottom:24px}.steps li{gap:20px}.closing{padding:65px 7%}.closing h2{font-size:43px}.closing .eyebrow{font-size:9px}.closing .thread-art{width:150%;bottom:-5%;right:-90%}footer{padding:50px 7% 25px}.footer-top{grid-template-columns:1fr 1fr;gap:35px 20px;padding-bottom:35px}.footer-top>div:first-child{grid-column:1/-1}.footer-top>div:last-child{grid-column:1/-1}.footer-top>div:not(:first-child){font-size:13px}.footer-top p{margin-top:18px}.footer-bottom{flex-direction:column;gap:18px;font-size:9px}.page-heading{padding-top:45px;padding-bottom:35px}.page-heading h1{font-size:clamp(58px,12vw,85px);margin-top:25px}.page-heading>p{font-size:14px}.page-heading .eyebrow{font-size:9px}.bio{padding-top:15px}.bio-image img{height:auto;max-height:570px;object-fit:cover}.photo-caption{font-size:25px}.photo-caption span{font-size:8px}.bio-copy h2{font-size:48px}.values-grid{grid-template-columns:1fr;gap:32px;margin-top:30px}.values-grid h3{font-size:37px;margin:18px 0}.values-grid p{font-size:14px}.personal img{height:480px;order:-1}.personal blockquote{font-size:32px}.care-detail{grid-template-columns:1fr;gap:20px;padding-top:40px;padding-bottom:45px}.detail-number{font-size:65px}.care-detail h2{font-size:45px}.care-detail .large-copy{font-size:27px}.care-detail .eyebrow{font-size:9px}.simple-list{font-size:12px}.concern-list span{font-size:14px}.faq-section{gap:30px}.faq-section h2 br{display:none}.faq-section h2 em:before{content:' '}.contact-section{padding-top:15px;gap:55px}.contact-card{padding:30px}.contact-card strong{font-size:40px}.contact-card strong.email-address{font-size:35px}.contact-aside h2{font-size:48px}.contact-quote{padding:60px 7%}.contact-quote blockquote{font-size:48px}.contact-quote .thread-art{width:110%;bottom:-15%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.js-motion .reveal{opacity:1;transform:none}}
.contact-card p{max-width:none;padding-right:50px}

/* Headway booking: external scheduling, no patient information collected here. */
.booking-section{padding-top:0;padding-bottom:65px;scroll-margin-top:20px}
.booking-panel{background:var(--plum);color:var(--paper);padding:54px;display:grid;grid-template-columns:1fr 1fr;gap:10%}
.booking-copy h2{margin:22px 0;font-size:62px}.booking-copy em{color:#dab7a8}
.booking-copy>p{color:#e3d6da;font-size:14px;max-width:400px}
.booking-button{margin-top:26px;gap:24px}.booking-copy .booking-note{font-size:11px;line-height:1.7;margin-top:14px;max-width:340px}
.booking-guide{align-self:center}.booking-guide ol{list-style:none;padding:0;margin:23px 0}
.booking-guide li{display:flex;gap:20px;padding:18px 0;border-top:1px solid #78636e}.booking-guide li>span{font-size:10px;color:#dab7a8;padding-top:7px}.booking-guide h3{font-size:28px;letter-spacing:-.02em}.booking-guide li p{color:#e3d6da;font-size:12px;line-height:1.8;margin-top:8px}.returning-patients{border-top:1px solid #78636e;padding-top:20px;color:#e3d6da;font-size:12px}.returning-patients strong{color:var(--paper);font-weight:600}
@media(max-width:1050px){.booking-panel{padding:35px;gap:7%}.booking-button{font-size:11px;padding:16px;gap:15px}.booking-copy h2{font-size:54px}}
@media(max-width:740px){.booking-section{padding-top:0;padding-bottom:45px}.booking-panel{grid-template-columns:1fr;padding:30px 24px;gap:35px}.booking-copy h2{font-size:50px}.booking-button{width:100%;font-size:11px;gap:10px;padding:16px}.booking-guide h3{font-size:27px}.booking-panel .eyebrow{font-size:9px}}
