@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--bg:#170f1c;--panel:#211626;--ink:#f6edf1;--muted:#b8a7b8;--pink:#fa168d;--line:#ffffff20;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.8 var(--sans)}::selection{background:#a71969;color:#fff}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%;object-fit:cover}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #ff8fc9;outline-offset:5px}.skip{position:fixed;top:-100px;left:20px;padding:10px;background:var(--pink);z-index:10}.skip:focus{top:10px}.header{height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line);position:relative;z-index:5;background:var(--bg)}.brand{display:flex;align-items:center;gap:15px}.brand img{width:66px;height:70px;object-fit:contain}.brand span{font-size:9px;letter-spacing:2.1px;line-height:1.9;color:var(--muted)}.brand b{font-weight:400;color:var(--ink)}nav{display:flex;gap:32px}nav a{font-size:12px;color:#d9cdd9;transition:color .2s}nav a:hover,.text-link:hover{color:#ff7bbe}.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;min-height:52px;padding:13px 24px;border:1px solid #70405f;font-size:12px;font-weight:600;transition:background .2s,transform .2s}.button span{font-size:21px;line-height:1}.button:hover{background:#382037;transform:translateY(-2px)}.primary{background:var(--pink);border-color:var(--pink);color:white}.primary:hover{background:#d90d76;border-color:#d90d76}.header-cta{font-size:11px;min-height:44px;padding:8px 19px}.menu-toggle{display:none}.hero{padding:55px 5% 0;position:relative;overflow:hidden}.hero:before{content:'';position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 25% 45%,#4c1c3b44,transparent 65%)}.hero-copy{width:51%;padding:24px 0 48px;position:relative;z-index:2}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:600;color:#d6b8cf;margin:0 0 25px}.eyebrow>span{display:inline-block;width:6px;height:6px;background:var(--pink);border-radius:50%;margin-right:9px;vertical-align:middle}h1,h2,h3,p{margin-top:0}h1{font:400 clamp(55px,5.35vw,90px)/1.12 var(--serif);letter-spacing:-2.5px;margin-bottom:26px}em{font-weight:400;color:#e5a3c8}h1 em{color:#fc6fb4}.intro{max-width:355px;font-size:13px;color:var(--muted);line-height:1.9;margin-bottom:29px}.text-link{font-size:12px;border-bottom:1px solid #87617d;display:inline-flex;gap:28px;align-items:center;padding-bottom:5px;transition:color .2s}.hero-link{margin-left:24px;font-size:11px;gap:12px}.hero-note{font-size:10px;color:var(--muted);display:flex;gap:13px;align-items:center;margin-top:39px}.mini-flower{color:#e2a8c7;font-size:25px}.hero-visual{position:absolute;width:46%;top:55px;right:0;bottom:67px;border-radius:160px 0 0 0;overflow:hidden;background:#56403d}.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:48% center;filter:brightness(.75) saturate(.65)}.image-shade{position:absolute;inset:0;background:linear-gradient(0deg,#1a0d20bf,transparent 65%),linear-gradient(90deg,#4a173a30,transparent)}.photo-caption{position:absolute;bottom:35px;left:38px}.photo-caption>span{font-size:8px;letter-spacing:2.5px;color:#e4cedd}.photo-caption p{font:400 32px/1.3 var(--serif);margin:10px 0 0}.round-link{position:absolute;right:36px;bottom:37px;width:48px;height:48px;display:grid;place-items:center;border:1px solid #ffffff70;border-radius:50%;font-size:23px}.hero-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding:22px 0;font-size:8px;letter-spacing:2px;color:#bda2b8}.hero-bottom i{font-style:normal;margin:0 15px;color:var(--pink)}.section{padding:100px 8%}h2{font:400 clamp(38px,4vw,58px)/1.2 var(--serif);letter-spacing:-1.4px;margin-bottom:26px}.about{display:grid;grid-template-columns:1fr 1.05fr;gap:36px 80px;padding-top:95px;padding-bottom:45px}.about-copy{padding-top:14px}.about-copy .lead{font:400 22px/1.6 var(--serif);color:#e9d9e4}.about-copy p:not(.lead){font-size:12px;color:var(--muted);line-height:2}.about-copy .text-link{margin-top:10px}.values-strip{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;margin-top:25px}.values-strip span{color:#d69abd;font-size:21px;display:flex;align-items:center;gap:14px}.values-strip b{font-size:10px;letter-spacing:1px;color:#d8c5d3;font-weight:400}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:45px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:310px;color:var(--muted);font-size:12px;line-height:1.9;margin-bottom:4px}.services{padding-top:65px}.service-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.service-photo{position:relative;min-height:400px}.service-photo img{width:100%;height:100%;max-height:560px;object-fit:cover;filter:brightness(.75) saturate(.7);border-radius:3px 80px 3px 3px}.service-photo span{position:absolute;bottom:24px;left:26px;font-size:8px;letter-spacing:2px;text-shadow:0 1px 5px black}details{border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{display:flex;gap:20px;align-items:center;list-style:none;cursor:pointer;padding:24px 0}summary::-webkit-details-marker{display:none}.number{font-size:10px;color:#bd84a8}h3{font:400 24px/1.3 var(--serif);margin:0}.plus{margin-left:auto;color:#da9abd;font-size:22px;font-weight:400}details[open] .plus{transform:rotate(45deg)}.service-content{padding:0 0 25px 35px;color:var(--muted);font-size:12px;line-height:1.9}.service-content>div{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:22px}.service-content>div>span{font-size:9px;letter-spacing:1px}.service-content .text-link{color:#efb6d4;font-size:10px}.team{background:#211625;padding-top:80px;padding-bottom:55px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 28px}.therapist{min-width:0}.portrait{aspect-ratio:4/4.6;position:relative;background:#301f32;overflow:hidden}.portrait img{width:100%;height:100%;object-fit:cover;object-position:center 24%;transition:opacity .18s,transform .5s;filter:saturate(.8)}.therapist:hover .portrait img{transform:scale(1.025)}.portrait:after{content:'';position:absolute;inset:70% 0 0;background:linear-gradient(transparent,#160b2070);pointer-events:none}.gallery-controls{position:absolute;bottom:15px;left:15px;right:15px;z-index:1;display:flex;align-items:center;justify-content:space-between}.gallery-controls button{border:1px solid #ffffff6b;border-radius:50%;width:32px;height:32px;background:#160d2080;color:white;display:grid;place-items:center;line-height:1;font-size:19px}.gallery-controls button:hover{background:var(--pink)}.gallery-count{color:white;font-size:9px;letter-spacing:2px;text-shadow:0 1px 3px #000}.therapist-head{display:flex;align-items:center;justify-content:space-between;margin:17px 0 13px}.therapist-head h3{font-size:28px}.therapist-head>span{font-size:8px;letter-spacing:1.5px;color:var(--muted)}.therapist .button{width:100%;min-height:43px;font-size:10px;justify-content:space-between;background:transparent;border-color:#714862;padding:9px 15px}.therapist .button:hover{background:#7f2256;border-color:var(--pink)}.therapist .button svg{width:17px;height:17px}.team-footnote{text-align:center;color:#b9a2b2;font-size:10px;margin:35px 0 0}.pause{padding:85px 20px 95px;text-align:center;background:radial-gradient(ellipse at center,#5f22404d,transparent 70%);border-bottom:1px solid var(--line)}.pause-mark{font-size:38px;color:#ef5da8;line-height:1}.pause>p{font-size:8px;letter-spacing:2.5px;color:var(--muted);margin:18px 0 25px}.pause h2{font-size:clamp(32px,4vw,54px);margin-bottom:30px}.pause .button{min-width:230px}.location{display:grid;grid-template-columns:1fr 1fr;gap:90px}.location-copy>p:not(.eyebrow){color:var(--muted);font-size:12px;line-height:2;max-width:390px}.location-copy .text-link{margin-top:20px}.contact-panel{background:#271a2b;border:1px solid #ffffff14;padding:35px 35px 30px;position:relative}.contact-panel:before{content:'';position:absolute;top:0;left:35px;width:45px;height:2px;background:var(--pink)}.panel-label{display:block;letter-spacing:2px;font-size:9px;color:#d2abc3;margin-bottom:30px}.contact-label{display:block;font-size:8px;letter-spacing:1.5px;color:#c29db6;margin-bottom:8px}.contact-panel p{font-size:13px;line-height:1.7;margin-bottom:23px}.phones{display:flex;gap:25px;margin-bottom:28px}.phones a{font-size:12px}.contact-panel .button{width:100%;justify-content:space-between;font-size:11px}.careers{padding-top:45px;padding-bottom:65px;display:grid;grid-template-columns:1fr 1fr;gap:90px;border-top:1px solid var(--line)}.careers .eyebrow{font-size:8px;margin-bottom:15px}.careers h2{font-size:34px}.careers>div>p:not(.eyebrow){font-size:12px;color:var(--muted);line-height:2}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:35px 8%;border-top:1px solid var(--line);background:#120c17}.footer-brand img{object-fit:contain;width:75px;height:78px}footer p{font:400 21px/1.5 var(--serif);color:#dfc4d5;margin:0}footer>div{display:flex;gap:22px;font-size:10px;color:var(--muted)}footer small{font-size:8px;color:#998498;line-height:1.9}.floating-wa{position:fixed;right:25px;bottom:25px;z-index:5;width:51px;height:51px;border:1px solid #f45ba2;background:#c91470;box-shadow:0 4px 30px #0006;border-radius:50%;display:grid;place-items:center;transition:transform .2s}.floating-wa:hover{transform:translateY(-4px)}.floating-wa svg{width:31px;height:31px}
@media(min-width:1500px){body{max-width:1800px;margin:auto}.hero{padding-top:70px}.hero-copy{padding-top:45px;padding-bottom:70px}.hero-visual{top:70px}.section{padding-left:10%;padding-right:10%}}
@media(max-width:1050px){nav{gap:18px}.brand span{display:none}.hero-link{display:flex;width:max-content;margin:20px 0 0}.hero h1{font-size:61px}.hero-visual{width:45%;border-radius:100px 0 0}.hero-note{margin-top:25px}.hero-bottom span:last-child{font-size:7px;letter-spacing:1px}.section{padding-left:6%;padding-right:6%}.about,.location,.careers{gap:40px}.service-layout{gap:35px;grid-template-columns:.8fr 1.2fr}.service-photo{min-height:350px}.contact-panel{padding:28px}.phones{flex-direction:column;gap:12px}.team-grid{gap:30px 20px}.therapist-head>span{font-size:7px}footer{padding-left:6%;padding-right:6%}footer>div{gap:12px}}
@media(max-width:700px){html{scroll-padding-top:20px}.header{height:83px;padding:0 6%}.brand img{width:56px;height:59px}.brand span{display:block;font-size:8px;letter-spacing:1.4px}.header-cta{display:none}.menu-toggle{display:flex;flex-direction:column;gap:6px;border:1px solid #ffffff40;padding:13px;background:transparent;width:44px;height:42px;justify-content:center}.menu-toggle span{height:1px;width:18px;background:#e5b2cf}.header nav{display:none;position:absolute;top:82px;left:0;right:0;background:#25172b;border-bottom:1px solid var(--line);padding:23px 6%;flex-direction:column;gap:18px}.header nav.open{display:flex}.hero{padding:34px 6% 0;display:flex;flex-direction:column}.hero-copy{width:100%;padding:0 0 30px}.eyebrow{font-size:8px;letter-spacing:2px;margin-bottom:20px}.hero h1{font-size:clamp(48px,10.9vw,73px);line-height:1.1;letter-spacing:-1.8px;margin-bottom:22px}.intro{font-size:12px;max-width:330px;margin-bottom:24px}.hero-link{display:inline-flex;margin:0 0 0 15px;font-size:9px;gap:7px}.hero .button{font-size:10px;padding:12px 16px;gap:24px;min-height:47px}.hero-note{font-size:9px;margin-top:20px}.hero-visual{position:relative;top:auto;right:auto;bottom:auto;width:calc(100% + 6.8%);height:330px;margin-left:0;border-radius:70px 0 0}.hero-visual>img{object-position:center 46%}.photo-caption{left:27px;bottom:24px}.photo-caption p{font-size:27px}.photo-caption>span{font-size:7px}.round-link{right:25px;bottom:25px;width:40px;height:40px}.hero-bottom{margin-top:26px;padding:18px 0;font-size:7px;letter-spacing:1.5px}.hero-bottom span:last-child{max-width:170px;text-align:right;font-size:6px;letter-spacing:.7px}.hero-bottom i{margin:0 4px}.section{padding:60px 6%}.about{display:block;padding-bottom:25px}.about-heading h2{margin-bottom:25px}h2{font-size:40px;letter-spacing:-1px}.about-copy{padding-top:0}.about-copy .lead{font-size:20px}.about-copy p:not(.lead){font-size:12px}.values-strip{margin-top:35px;padding:20px 0;gap:14px}.values-strip span{display:block;font-size:21px;text-align:center;flex:1}.values-strip b{display:block;font-size:8px;letter-spacing:0}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin:23px 0 0;max-width:360px;font-size:12px}.service-layout{display:flex;flex-direction:column;gap:25px}.service-photo{height:250px;min-height:0}.service-photo img{border-radius:2px 60px 2px 2px;object-position:center 40%}.service-photo span{font-size:7px}summary{padding:22px 0;gap:15px}h3{font-size:23px}.service-content{padding-left:28px}.service-content>div{flex-wrap:wrap}.team{padding-bottom:35px}.team-grid{grid-template-columns:repeat(2,1fr);gap:28px 15px}.portrait{aspect-ratio:3/4}.therapist-head{margin:13px 0 10px}.therapist-head h3{font-size:24px}.therapist-head>span{display:none}.therapist .button{font-size:8px;padding:10px;gap:5px;min-height:43px}.therapist .button svg{width:14px;height:14px;flex-shrink:0}.gallery-controls{left:9px;right:9px;bottom:10px}.gallery-controls button{width:27px;height:27px;font-size:17px}.gallery-count{font-size:7px;letter-spacing:1px}.team-footnote{font-size:9px;margin-top:26px}.pause{padding:60px 6%}.pause h2{font-size:34px}.pause>p{font-size:7px;letter-spacing:2px}.location{display:block}.location-copy{margin-bottom:35px}.location-copy>p:not(.eyebrow){max-width:none}.contact-panel{padding:28px}.phones{flex-direction:row;gap:20px;justify-content:space-between}.careers{display:block;padding-top:40px;padding-bottom:45px}.careers h2{margin-bottom:20px}footer{flex-wrap:wrap;padding:30px 6% 85px;gap:24px}footer>p{font-size:22px;width:calc(100% - 110px)}footer>div{gap:20px;font-size:10px}footer small{margin-left:auto;font-size:7px}.floating-wa{width:48px;height:48px;right:17px;bottom:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
