@font-face{font-family:MorrowSans;src:url('../assets/fonts/alderline-aspekta-400.woff2') format('woff2');font-display:swap}@font-face{font-family:MorrowSerif;src:url('../assets/fonts/commonlight-bodoni-moda-400.ttf') format('truetype');font-display:swap}@font-face{font-family:MorrowDisplay;src:url('../assets/fonts/alderline-syne-500.woff2') format('woff2');font-display:swap}
:root{--violet:#49318d;--violet-deep:#34216d;--lavender:#ece9ff;--mint:#80edbd;--mint-pale:#d8f7e9;--peach:#ffe6d2;--ink:#2d2160;--soft:#fbfaff;--line:rgba(73,49,141,.16);--sans:MorrowSans,Arial,sans-serif;--serif:MorrowSerif,Georgia,serif;--display:MorrowDisplay,Arial,sans-serif}*{box-sizing:border-box}html{background:var(--soft)}body{margin:0;padding-top:38px;background:var(--soft);color:var(--ink);font:400 16px/1.55 var(--sans)}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}button,input,select,textarea{font:inherit}.skip-link{position:fixed;z-index:200;top:-60px;left:18px;background:var(--mint);padding:10px 14px;color:var(--violet-deep)}.skip-link:focus{top:48px}:focus-visible{outline:2px solid var(--mint);outline-offset:4px}::selection{background:var(--mint);color:var(--violet-deep)}.kicker{margin:0 0 18px;color:var(--violet);font:600 10px/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase}.site-header{position:sticky;top:38px;z-index:40;display:grid;grid-template-columns:auto 1fr auto;align-items:center;min-height:76px;padding:0 clamp(22px,5vw,86px);background:rgba(251,250,255,.91);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.wordmark{font:600 26px/.78 var(--serif);letter-spacing:-.08em}.wordmark span{display:block;margin:7px 0 0 1px;color:#56c99b;font:600 8px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase}.site-header nav{display:flex;justify-content:center;gap:clamp(18px,3vw,42px);font-size:12px}.site-header nav a{padding:11px 0;border-bottom:1px solid transparent}.site-header nav a:hover{border-color:var(--violet)}.header-cta,.book button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border:1px solid var(--violet);border-radius:2px;background:var(--violet);color:white;font:600 11px var(--sans);letter-spacing:.04em;transition:background .2s,color .2s}.header-cta:hover,.book button:hover{background:var(--mint);border-color:var(--mint);color:var(--violet-deep)}.menu-button{display:none}.hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(45%,.92fr);align-items:start;min-height:clamp(700px,55vw,890px);padding:clamp(70px,9vw,145px) clamp(22px,7vw,124px) 0;overflow:hidden;background:linear-gradient(90deg,#fff 0 59%,var(--lavender) 59%)}.hero-copy{position:relative;z-index:2;max-width:725px;padding-top:clamp(40px,4vw,78px)}.hero h1,h2,h3{margin:0;letter-spacing:-.065em}.hero h1{font:500 clamp(56px,6.9vw,112px)/.93 var(--display)}.hero h1 em{font-family:var(--serif);font-weight:400;letter-spacing:-.08em}.hero-note{max-width:390px;margin:31px 0 25px;color:#5b5680;font-size:17px}.text-link{display:inline-flex;gap:17px;align-items:center;padding:11px 0;border-bottom:1px solid var(--violet);font-size:12px}.text-link span{font-size:18px}.hero-media{position:relative;z-index:1;height:clamp(490px,45vw,680px);margin:0;overflow:hidden;box-shadow:-28px 28px 0 var(--violet)}.hero-media::after{position:absolute;inset:0;content:'';background:linear-gradient(0deg,rgba(73,49,141,.1),transparent 35%)}.hero-media figcaption{position:absolute;right:17px;bottom:14px;z-index:2;color:white;font-size:9px;letter-spacing:.13em;text-transform:uppercase}.care-seal{position:absolute;z-index:4;right:clamp(16px,3.7vw,60px);bottom:24px;display:grid;place-items:center;width:136px;height:136px;border-radius:50%;background:var(--mint);color:var(--violet-deep);font-size:10px;letter-spacing:.08em;text-transform:uppercase;transform:rotate(-8deg)}.care-seal i{font:400 25px var(--serif)}.welcome{display:grid;grid-template-columns:.65fr 1fr;gap:10%;align-items:start;padding:clamp(105px,13vw,195px) clamp(22px,12vw,190px);background:var(--violet);color:white}.welcome .kicker{color:var(--mint)}.welcome h2,.care h2,.practice h2,.team h2,.stories h2,.book h2,.visit h2{font:500 clamp(44px,5vw,84px)/.96 var(--display)}.welcome>p:last-child{max-width:550px;margin:30px 0 0;color:#ded9fa;font-size:19px}.care{padding:clamp(100px,13vw,195px) clamp(22px,7vw,124px);background:var(--lavender)}.care-heading{display:grid;grid-template-columns:.52fr 1fr;gap:10%;align-items:end}.care-heading h2{max-width:760px}.care-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:clamp(55px,7vw,100px)}.care-grid article{min-height:280px;padding:28px;background:white;border:1px solid rgba(73,49,141,.09);box-shadow:0 13px 28px rgba(73,49,141,.06)}.care-grid article:nth-child(2){background:var(--peach)}.care-grid article:nth-child(3){background:var(--mint-pale)}.care-grid span{color:var(--violet);font-size:11px}.care-grid h3{margin:76px 0 18px;font:500 clamp(29px,3vw,46px)/.98 var(--serif);letter-spacing:-.055em}.care-grid p{max-width:280px;margin:0;color:#5d5977}.practice{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;background:white}.practice-media{min-height:clamp(620px,54vw,825px);margin:0;overflow:hidden}.practice-copy{max-width:510px;padding:clamp(70px,9vw,142px) clamp(26px,8vw,132px)}.practice-copy h2{font-family:var(--serif);font-weight:400}.practice-copy>p{margin:27px 0;color:#5b5674;font-size:18px}.practice dl{margin:43px 0 0;border-top:1px solid var(--line)}.practice dl div{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.practice dt{color:#716a96}.practice dd{margin:0}.team{padding:clamp(100px,13vw,190px) clamp(22px,7vw,124px);background:#fff}.team-heading{max-width:780px}.team-grid{display:grid;grid-template-columns:1.15fr .72fr .9fr;gap:18px;align-items:stretch;margin-top:clamp(50px,6vw,90px)}.team-card{min-width:0;background:var(--lavender)}.team-card figure{height:clamp(420px,36vw,570px);margin:0;overflow:hidden}.team-card>div{padding:20px 22px}.team-card h3{font:400 36px/1 var(--serif);letter-spacing:-.06em}.team-card p{margin:7px 0 0;color:#686184;font-size:12px}.team-card--copy{display:flex;flex-direction:column;justify-content:space-between;padding:clamp(28px,3vw,52px);background:var(--violet);color:white}.team-card--copy p{margin:0;font:400 clamp(34px,3.4vw,55px)/1.02 var(--serif);letter-spacing:-.055em}.team-card--copy span{color:var(--mint);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.team-card--patient{background:var(--peach)}.stories{padding:clamp(100px,13vw,185px) clamp(22px,7vw,124px);background:var(--mint)}.stories-heading{display:grid;grid-template-columns:.6fr 1fr;gap:10%;align-items:end}.stories .kicker{color:var(--violet-deep)}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:clamp(55px,7vw,100px)}.story-grid blockquote{display:flex;flex-direction:column;min-height:350px;margin:0;padding:28px;background:white;box-shadow:0 13px 25px rgba(52,33,109,.08)}.story-grid blockquote:nth-child(2){background:var(--peach)}.story-grid blockquote:nth-child(3){background:var(--lavender)}.avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#ffd0a4;color:var(--violet-deep);font:400 22px var(--serif)}.avatar--two{background:#d2cef7}.avatar--three{background:#a9ebcb}.story-grid blockquote>p{margin:38px 0 auto;font:400 25px/1.2 var(--serif);letter-spacing:-.035em}.story-grid footer{margin-top:28px;border-top:1px solid var(--line);padding-top:13px}.story-grid strong,.story-grid small{display:block;font-size:11px}.story-grid small{margin-top:3px;color:#716a92}.book{position:relative;display:grid;grid-template-columns:1fr minmax(260px,.7fr) minmax(340px,.75fr);gap:clamp(22px,3vw,55px);align-items:end;padding:clamp(90px,11vw,160px) clamp(22px,7vw,124px);overflow:hidden;background:var(--violet);color:white}.book-copy{align-self:start}.book .kicker{color:var(--mint)}.book h2{font-family:var(--serif);font-weight:400}.book-copy>p:last-child{max-width:380px;color:#ded9fa;font-size:17px}.book-image{height:clamp(390px,36vw,540px);margin:0;overflow:hidden;box-shadow:17px 17px 0 var(--mint)}.book form{position:relative;z-index:2;padding:26px;background:white;color:var(--ink);box-shadow:0 22px 44px rgba(24,13,69,.25)}fieldset{display:grid;gap:15px;margin:0;padding:0;border:0}label{display:grid;gap:7px;color:#5e587e;font-size:10px;letter-spacing:.1em;text-transform:uppercase}label span{color:#9690ad}input,select,textarea{width:100%;min-height:43px;padding:10px 11px;border:1px solid rgba(73,49,141,.22);border-radius:1px;background:#fff;color:var(--ink);outline:0;font-size:14px;letter-spacing:0;text-transform:none}textarea{min-height:82px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--violet);box-shadow:0 0 0 2px rgba(73,49,141,.1)}.book button{width:100%;margin-top:4px;border-color:var(--mint);background:var(--mint);color:var(--violet-deep)}.book button:hover{background:var(--violet-deep);border-color:var(--violet-deep);color:white}[data-form-status]{margin:14px 0 0;color:var(--violet);font-size:12px}.visit{padding:clamp(90px,12vw,175px) clamp(22px,12vw,190px);background:var(--lavender)}.visit h2{max-width:860px;font-family:var(--serif);font-weight:400}.visit>p:last-child{margin:32px 0 0;color:#625c80;font-size:18px}.site-footer{display:grid;grid-template-columns:1fr auto auto;gap:40px;align-items:end;padding:42px clamp(22px,7vw,124px);background:var(--violet-deep);color:white}.site-footer p{margin:0;color:#c9c3ed;font-size:12px}.site-footer .wordmark{font-size:37px}.socials{display:flex;gap:8px}.socials a{display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(255,255,255,.42);border-radius:50%;font-size:11px;transition:background .2s,color .2s}.socials a:hover{background:var(--mint);border-color:var(--mint);color:var(--violet-deep)}.reveal{opacity:1;transform:none}@media(prefers-reduced-motion:no-preference){html.motion-ready .reveal{opacity:0;transform:translateY(28px)}html.motion-ready .reveal.is-visible{opacity:1;transform:none;transition:opacity .8s ease,transform .8s cubic-bezier(.16,1,.3,1)}}html[data-motion=reduced] *{transition:none!important;animation:none!important}
@media(max-width:760px){body{padding-top:38px}.site-header{grid-template-columns:1fr auto auto;min-height:68px;padding-inline:18px}.site-header nav{display:none;position:absolute;top:67px;left:0;right:0;padding:20px 18px;background:var(--soft);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start}.site-header.menu-open nav{display:flex}.header-cta{min-height:40px;padding-inline:11px;font-size:10px}.menu-button{display:grid;place-items:center;width:52px;height:40px;padding:0;border:1px solid var(--violet);background:transparent;color:var(--violet);font:600 10px var(--sans);letter-spacing:.09em;text-transform:uppercase}.hero{grid-template-columns:1fr;min-height:820px;padding:68px 22px 0;background:linear-gradient(180deg,#fff 0 56%,var(--lavender) 56%)}.hero-copy{padding:0}.hero h1{font-size:clamp(52px,15vw,80px)}.hero-note{max-width:350px;margin-top:24px;font-size:16px}.hero-media{height:390px;margin-top:56px;box-shadow:-13px 13px 0 var(--violet)}.care-seal{right:20px;bottom:18px;width:103px;height:103px;font-size:8px}.welcome,.care-heading,.practice,.stories-heading,.book{grid-template-columns:1fr;gap:35px}.welcome{padding:82px 22px}.welcome>p:last-child{margin-top:22px;font-size:17px}.care{padding:84px 22px}.care-grid,.team-grid,.story-grid{grid-template-columns:1fr;gap:14px;margin-top:45px}.care-grid article{min-height:226px}.care-grid h3{margin-top:43px}.practice-media{min-height:490px}.practice-copy{padding:78px 22px}.team{padding:84px 22px}.team-card figure{height:440px}.team-card--copy{min-height:285px}.stories{padding:84px 22px}.story-grid blockquote{min-height:285px}.book{padding:82px 22px}.book-image{height:390px;max-width:450px;width:85%;margin-left:auto}.visit{padding:82px 22px}.site-footer{grid-template-columns:1fr;gap:23px;align-items:start;padding:35px 22px}.site-footer .wordmark{font-size:33px}}

/* Final editorial controls and roomier reading measures. */
.hero h1{line-height:.98}.hero-cta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 21px;border:1px solid var(--violet);border-radius:2px;background:var(--violet);color:#fff;font:600 11px var(--sans);letter-spacing:.04em;transition:background .2s,color .2s}.hero-cta:hover{background:var(--mint);border-color:var(--mint);color:var(--violet-deep)}.site-header nav{justify-self:center;padding:5px 18px;border-radius:999px;background:var(--lavender)}.practice-copy{width:min(100%,660px);max-width:none;padding:clamp(70px,8vw,118px) clamp(28px,6vw,94px)}.welcome>p:last-child{grid-column:2}.team-card--copy p{color:#fff}.care-grid article{position:relative;overflow:hidden}.care-grid article::after{position:absolute;right:-24px;bottom:-30px;width:132px;height:132px;border:1px solid rgba(73,49,141,.18);border-radius:48% 52% 50% 50%;content:'';transform:rotate(22deg)}.care-grid article::before{position:absolute;right:29px;bottom:26px;width:31px;height:42px;border:1px solid rgba(73,49,141,.18);border-radius:52% 48% 52% 48%;content:'';transform:rotate(28deg)}.reveal,[data-reveal]{opacity:1;transform:none}@media(prefers-reduced-motion:no-preference){html.motion-ready .reveal,html.motion-ready [data-reveal]{opacity:0;transform:translateY(28px)}html.motion-ready .reveal.is-visible,html.motion-ready [data-reveal].is-visible{opacity:1;transform:none;transition:opacity .8s ease,transform .8s cubic-bezier(.16,1,.3,1)}}.site-footer{grid-template-columns:1fr auto}.socials{display:none}@media(max-width:760px){.site-header{gap:12px}.site-header nav{padding:20px 18px;border-radius:0;background:var(--soft)}.welcome>p:last-child{grid-column:1}.practice-copy{width:auto;padding:78px 22px}.site-footer{grid-template-columns:1fr}}
.team-grid{grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr);max-width:1120px}.story-card--portrait{padding:0!important;overflow:hidden}.story-card--portrait figure{height:180px;margin:0;overflow:hidden}.story-card--portrait .avatar,.story-card--portrait>p,.story-card--portrait footer{margin-left:28px;margin-right:28px}.story-card--portrait .avatar{margin-top:22px}.story-card--portrait>p{margin-top:25px}.story-card--portrait footer{margin-bottom:28px}@media(max-width:760px){.team-grid{grid-template-columns:1fr}.story-card--portrait figure{height:250px}}
.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:clamp(675px,49vw,800px);padding-top:clamp(44px,5vw,82px);background:linear-gradient(90deg,#fff 0 50%,var(--lavender) 50%)}.hero-copy{padding-top:clamp(26px,3vw,54px);max-width:690px}.hero h1{font-size:clamp(54px,5.7vw,98px);line-height:1}.hero-media{height:clamp(520px,40vw,650px);align-self:end}.care-seal{display:flex;flex-direction:column;gap:5px;justify-content:center}.care-seal img{width:52px;height:52px;object-fit:contain}.care-seal i{display:none}.care-grid article::before,.care-grid article::after{display:none}.care-illustration{display:block;width:58px;height:58px;object-fit:contain;margin:4px 0 28px}.care-grid h3{margin-top:14px}.site-header nav{position:relative;isolation:isolate;padding:5px}.site-header nav a{position:relative;z-index:1;padding:9px 13px;border:0;border-radius:999px;transition:color .25s}.site-header nav a[aria-current]{color:#fff}.nav-glider{position:absolute;z-index:0;top:5px;bottom:5px;left:0;border-radius:999px;background:var(--violet);transition:transform .36s cubic-bezier(.16,1,.3,1),width .36s cubic-bezier(.16,1,.3,1)}.story-grid blockquote{min-height:475px}.story-card--portrait figure{height:190px}.story-card--portrait .review-photo{width:200%!important;max-width:none;height:100%;object-fit:cover}.story-card--portrait .review-photo--right{margin-left:-100%}.visit{display:grid;grid-template-columns:minmax(0,.86fr) minmax(340px,1.14fr);gap:clamp(34px,7vw,120px);align-items:center}.map-frame{min-height:355px;overflow:hidden;background:#d9d7ef;box-shadow:16px 16px 0 var(--mint)}.map-frame iframe{display:block;width:100%;height:100%;min-height:355px;border:0}.map-link{display:inline-flex;margin-top:26px;padding:12px 15px;border:1px solid var(--violet);color:var(--violet);font-size:11px;letter-spacing:.04em;transition:background .2s,color .2s}.map-link:hover{background:var(--violet);color:#fff}@media(max-width:760px){.hero{grid-template-columns:1fr;min-height:800px;padding-top:54px;background:linear-gradient(180deg,#fff 0 54%,var(--lavender) 54%)}.hero h1{font-size:clamp(51px,14vw,76px)}.hero-media{height:390px;margin-top:42px}.site-header nav{padding:20px 18px}.nav-glider{display:none}.site-header nav a[aria-current]{color:var(--violet)}.story-grid blockquote{min-height:0}.story-card--portrait figure{height:240px}.visit{grid-template-columns:1fr;gap:38px}.map-frame,.map-frame iframe{min-height:330px}}
.hero{min-height:clamp(640px,45vw,730px);padding-top:clamp(30px,3.8vw,62px)}.hero-copy{padding-top:clamp(18px,2vw,38px)}.hero-media{width:100%;height:auto;aspect-ratio:3/2;align-self:end}.story-card--portrait .avatar{display:none}.story-card--portrait>p,.story-card--portrait footer{margin-left:28px;margin-right:28px}.story-card--portrait>p{margin-top:24px}.map-frame{position:relative;display:block;min-height:0;aspect-ratio:2494/1554}.map-frame img{width:100%;height:100%;object-fit:contain;background:#d9d7ef}.map-frame span{position:absolute;left:14px;bottom:14px;padding:7px 9px;background:rgba(255,255,255,.92);color:var(--violet-deep);font-size:10px;letter-spacing:.06em;text-transform:uppercase}.map-frame iframe{display:none}@media(max-width:760px){.hero{min-height:760px;padding-top:42px}.hero-copy{padding-top:0}.hero-media{height:auto;aspect-ratio:3/2;margin-top:36px}.map-frame{aspect-ratio:2494/1554}.map-frame iframe{display:none}}
/* Keep the parallax photograph filling its frame at every scroll position. */
.practice-media{height:clamp(620px,54vw,825px);min-height:0}
html[data-showcase=true] body{padding-top:0}
html[data-showcase=true] .site-header{top:0}
@media(max-width:760px){.practice-media{height:490px}}
/* Balance the people and headline on the same vertical centre. */
.hero{align-items:center;padding-bottom:64px;gap:30px;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}
.hero-copy{padding-top:0}.hero-media{align-self:center;aspect-ratio:4/3}
.care-seal{width:128px;height:128px;right:3%;bottom:36px;background:transparent;transform:rotate(-8deg)}
.care-seal img{width:128px;height:128px}.care-seal span{display:none}
.care-illustration{width:108px;height:108px;margin-bottom:20px}
@media(max-width:760px){.hero{grid-template-columns:1fr;gap:0;padding-bottom:50px;min-height:0}.hero-media{aspect-ratio:3/2}.care-seal{width:92px;height:92px;bottom:15px;right:8px}.care-seal img{width:92px;height:92px}.site-header.menu-open nav{position:absolute}}
.story-grid .story-card--portrait figure{position:relative;height:280px}
.story-grid .story-card--portrait figure>img{object-position:center 25%}
.story-grid .story-card--portrait figure>.review-photo{position:absolute;top:0;height:auto;min-height:100%;object-fit:initial}
.story-grid .story-card--portrait>p{margin:24px 28px auto;font-size:24px;line-height:1.3;letter-spacing:-.015em}
.story-grid .story-card--portrait footer{margin:28px 28px}
@media(max-width:760px){.story-grid .story-card--portrait figure{height:270px}}
/* Portraits keep full faces; the appointment cutout sits directly on mint. */
.team-card--feature .doctor-portrait{height:auto;aspect-ratio:3/4}
.team-card--feature .doctor-portrait img{object-fit:cover;object-position:center top;transform:none}
.appointment-banner{display:grid;grid-template-columns:1fr 1fr;align-items:center;position:relative;background:var(--mint);padding:0 clamp(24px,9vw,150px);gap:4%;overflow:hidden;min-height:500px}
.appointment-copy{padding:64px 0;max-width:500px;position:relative;z-index:1}
.appointment-copy h2,.contact-copy h2{font:500 clamp(44px,5vw,76px)/1.06 var(--display);letter-spacing:-.045em}
.appointment-copy h2 em,.contact-copy h2 em{font-family:var(--serif);font-weight:400}
.appointment-copy>p:not(.kicker){max-width:360px;margin:24px 0 28px;font-size:17px}
.doctor-cutout{margin:0;align-self:end;height:520px;overflow:visible}
.doctor-cutout img{width:100%;height:100%;object-fit:contain;object-position:center bottom}
.contact-section{padding:clamp(70px,9vw,140px) clamp(24px,9vw,150px);display:grid;grid-template-columns:1fr 1fr;gap:10%;background:#fff}
.contact-copy>p:not(.kicker){font-size:17px;margin:25px 0 36px;max-width:330px}
.contact-copy dl{font-size:15px}.contact-copy dl div{margin:24px 0}.contact-copy dt{font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}.contact-copy dd{margin:0}
.contact-section form{padding:clamp(24px,3vw,44px);background:var(--lavender);align-self:start;border:0;box-shadow:none}
.contact-section label{font-size:11px;line-height:1.5}.contact-section input,.contact-section select,.contact-section textarea{background:#fff;border:1px solid #c9c0df;border-radius:3px;min-height:46px}
.contact-section button{border:0;border-radius:2px;min-height:48px;background:var(--violet);color:#fff;padding:12px 24px;cursor:pointer;font-size:13px;justify-self:start}
.contact-section button:hover{background:var(--violet-deep)}
@media(max-width:760px){.appointment-banner{grid-template-columns:1fr;padding:0 24px;gap:0}.appointment-copy{padding:56px 0 10px}.doctor-cutout{height:390px;width:100%;max-width:400px;justify-self:center}.contact-section{grid-template-columns:1fr;gap:28px;padding:64px 24px}.contact-copy h2{font-size:44px}.team-card--feature .doctor-portrait{height:auto;aspect-ratio:3/4}}
section[id],#team-title{scroll-margin-top:120px}
/* Clear headline spacing and full portrait compositions. */
.hero{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(40px,5vw,80px);padding-top:64px;padding-bottom:78px;min-height:640px}
.hero h1{font-size:clamp(54px,6vw,90px);line-height:1.06;letter-spacing:-.05em}
.hero h1 em{color:var(--mint);letter-spacing:-.045em;white-space:nowrap}
.hero-note{max-width:345px;margin-top:28px}
.hero-media{box-shadow:-16px 18px 0 var(--violet);aspect-ratio:4/3}
.story-grid .story-card--portrait figure{height:auto;aspect-ratio:1/1;overflow:hidden}
.story-grid .story-card--portrait figure>img:not(.review-photo){width:100%;height:100%;object-fit:cover;object-position:center 18%}
.story-grid .story-card--portrait figure>.review-photo{width:200%!important;height:auto;min-height:0;top:0;transform:none!important}
.team-card--feature .doctor-portrait{aspect-ratio:3/4;height:auto;overflow:hidden}
@media(max-width:760px){.hero{grid-template-columns:1fr;gap:30px;padding:45px 24px 58px;min-height:0}.hero h1{font-size:clamp(48px,12vw,76px)}.hero-media{margin-top:0;aspect-ratio:3/2}.hero h1 em{white-space:normal}.story-grid .story-card--portrait figure{height:auto;aspect-ratio:1/1}}
.appointment-banner{padding-top:36px}
@media(max-width:760px){.appointment-banner{padding-top:0}}

/* Family-led headline with the same bright mint as the site accents. */
.hero h1{font-size:clamp(46px,5.1vw,78px);max-width:620px}.hero h1 em{display:block}
@media(max-width:760px){.hero h1{font-size:clamp(44px,10.8vw,68px);max-width:580px}}
