/* Brand icons, comfortable reading sizes, and restrained motion. */
body{font-size:17px}
.icon{display:inline-block;width:24px;height:24px;object-fit:contain;flex-shrink:0;filter:brightness(0) invert(88%) sepia(10%) saturate(903%) hue-rotate(282deg) brightness(97%) contrast(86%);vertical-align:middle}
.wa-icon{display:inline-block;width:34px;height:34px;min-width:34px;object-fit:contain;vertical-align:middle;flex-shrink:0}
.header{height:116px;gap:28px}.brand img{width:83px;height:86px}.brand{flex-shrink:0}
nav{gap:25px}nav a{font-size:14px;letter-spacing:1.1px;text-transform:uppercase;font-weight:600;white-space:nowrap}
.header-cta{font-size:13px;gap:12px;padding:10px 18px;white-space:nowrap}
.button{font-size:15px;gap:12px;min-height:58px;font-weight:500}
.text-link{font-size:15px;gap:12px}.intro{font-size:18px;max-width:410px;line-height:1.8}
.eyebrow{font-size:12px;letter-spacing:2px}.hero-copy{padding-bottom:50px}.hero h1{font-size:clamp(55px,5.1vw,86px)}
.hero-link{font-size:14px;display:flex;margin:20px 0 0;width:max-content}.hero-note{font-size:13px;gap:12px}.hero-note .icon{width:25px;height:25px}
.hero-bottom{font-size:10px;letter-spacing:1.4px}.hero-bottom span:last-child{font-size:9px}
.photo-caption>span{font-size:11px;letter-spacing:1.6px}.round-link{width:52px;height:52px}
.about-copy .lead{font-size:26px;line-height:1.6}.about-copy p:not(.lead){font-size:17px;line-height:1.9}
.values-strip span{gap:15px}.values-strip b{font-size:14px;letter-spacing:.2px}.values-strip .icon{width:28px;height:28px}
.section-heading>p{font-size:17px;max-width:360px;line-height:1.8}
.service-layout{grid-template-columns:.75fr 1.25fr}.service-photo span{font-size:10px;letter-spacing:1.2px}
summary{padding:26px 0;gap:16px}h3{font-size:28px}.plus{line-height:1;display:flex;align-items:center;justify-content:center;transition:transform .3s}
.service-content{padding-left:0;font-size:16px;line-height:1.9}.service-content p{margin-bottom:18px}
.service-content>div{align-items:center;flex-wrap:wrap}.service-content>div>span{font-size:12px;letter-spacing:.3px}
.service-content .text-link{font-size:14px;gap:8px}.service-content .wa-icon{width:30px;height:30px;min-width:30px}
.service-notice{display:flex;align-items:flex-start;gap:28px;padding-top:42px;padding-bottom:42px;border-top:1px solid #ffffff18;background:linear-gradient(105deg,#32152c66,transparent)}
.service-notice>div:first-child{padding-top:6px}.service-notice .icon{width:36px;height:36px}.service-notice .eyebrow{font-size:11px;margin-bottom:12px}
.service-notice h2{font:400 24px/1.6 var(--serif);letter-spacing:0;max-width:900px;margin:0}
.therapist-head h3{font-size:32px}.therapist-head>span{font-size:10px;letter-spacing:1px}
.therapist .button{font-size:14px;min-height:57px;padding:10px 14px;gap:10px;justify-content:center}
.therapist .button .wa-icon{width:34px;height:34px;min-width:34px}
.gallery-controls button{width:38px;height:38px}.gallery-controls .icon{width:22px;height:22px;filter:brightness(0) invert(1)}
.gallery-count{font-size:11px;letter-spacing:1px}.team-footnote{font-size:14px;line-height:1.7}
.prices{display:grid;grid-template-columns:1fr 1fr;gap:75px}.prices-heading>p:not(.eyebrow){font-size:17px;color:var(--muted);max-width:380px;line-height:1.8}.prices-heading .button{margin-top:10px}
.price-list{margin:36px 0 0}.price-list>div{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:28px 0;border-bottom:1px solid var(--line)}
.price-list>div:first-child{border-top:1px solid var(--line)}.price-list dt{font:400 25px/1.4 var(--serif)}.price-list dd{margin:0;color:#dfa4c6;font-size:14px;white-space:nowrap}
.pause{position:relative;isolation:isolate;overflow:hidden;background:#1c1121}.pause:before{content:'';position:absolute;z-index:-1;inset:-40%;background:radial-gradient(ellipse at 40% 50%,#7d1f5559,transparent 48%),radial-gradient(ellipse at 75% 30%,#531b6655,transparent 45%);animation:ambient-flow 20s ease-in-out infinite alternate;pointer-events:none}
.pause-mark{line-height:1}.pause-mark .icon{width:40px;height:40px}.pause>p{font-size:11px;letter-spacing:2px}.pause .button{min-width:255px}
.hero{isolation:isolate}.hero:before{inset:-15%;background:radial-gradient(ellipse at 20% 40%,#69244e66,transparent 55%),radial-gradient(ellipse at 75% 75%,#3c175744,transparent 50%);animation:ambient-flow 24s ease-in-out infinite alternate}
@keyframes ambient-flow{from{transform:translate3d(-2%,-1%,0) scale(1)}to{transform:translate3d(4%,3%,0) scale(1.12)}}
.location{padding-bottom:50px}.location-copy>p:not(.eyebrow){font-size:17px;line-height:1.9;max-width:440px}
.panel-label{font-size:11px;letter-spacing:1.6px}.contact-label{font-size:11px;letter-spacing:1px;display:flex;align-items:center;gap:9px}.contact-label .icon{width:18px;height:18px}
.contact-panel p{font-size:17px;line-height:1.8}.phones{flex-wrap:wrap;gap:20px}.phones a{font-size:15px;display:flex;align-items:center;gap:7px}.phones .wa-icon{width:28px;height:28px;min-width:28px}
.contact-panel .button{font-size:14px;justify-content:center;gap:12px;padding-left:10px;padding-right:10px}
.map-wrap{position:relative;margin:0 8% 85px;border:1px solid #ffffff24;background:#291d2e}.map-wrap iframe{display:block;width:100%;height:430px;border:0;color-scheme:light}
.map-directions{position:absolute;bottom:20px;right:20px;background:#211626;color:var(--ink);padding:13px 20px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 25px #0005;font-size:14px;border:1px solid #ffffff30}.map-directions:hover{background:#4a2342}
.careers .eyebrow{font-size:11px}.careers>div>p:not(.eyebrow){font-size:17px;line-height:1.9}
footer>div{font-size:13px}footer small{font-size:11px}.floating-wa{background:#25d366;border-color:#55e58b;width:66px;height:66px;padding:0;box-shadow:0 5px 28px #0006}
.floating-wa .wa-icon{width:57px;height:57px;min-width:57px}.floating-wa:hover{background:#1fbd5b}
@media(max-width:1200px){.header{padding-left:4%;padding-right:4%;gap:20px}nav{gap:18px}nav a{font-size:13px;letter-spacing:.7px}.header-cta{font-size:12px;padding:8px 12px}.header-cta .wa-icon{width:30px;height:30px;min-width:30px}.button{gap:10px}.prices{gap:45px}.price-list dt{font-size:23px}.therapist .button{font-size:13px;padding:9px}.contact-panel{padding:28px}.service-layout{gap:35px}}
@media(min-width:701px) and (max-width:1000px){.header-cta{display:none}.header nav{margin-left:auto}.header{height:102px}.hero-copy{width:53%}.hero h1{font-size:59px}.intro{font-size:16px;max-width:310px}.hero-bottom span:last-child{max-width:45%;text-align:right;font-size:8px}.about,.location,.careers{gap:35px}.section-heading>p{max-width:300px;font-size:16px}.service-layout{grid-template-columns:1fr}.service-photo{height:300px;min-height:0}.service-photo img{object-position:center 42%}.therapist .button{font-size:11px}.therapist .button .wa-icon{width:29px;height:29px;min-width:29px}.therapist-head>span{display:none}.phones{flex-direction:column}.map-wrap{margin-left:6%;margin-right:6%}.prices{gap:35px}.price-list dt{font-size:21px}.price-list dd{font-size:12px}}
@media(max-width:700px){.header{height:95px;padding:0 6%;gap:20px}.brand img{width:72px;height:76px}.header nav{top:94px;padding:24px 6%;gap:22px}.header nav a{font-size:16px;letter-spacing:1.5px}.hero h1{font-size:clamp(48px,10.9vw,73px)}.eyebrow{font-size:10px;letter-spacing:1.7px}.intro{font-size:17px;line-height:1.8;max-width:390px}.hero .button{font-size:14px;min-height:56px;padding:10px 18px;gap:10px}.hero-link{font-size:14px;margin:18px 0 0;display:flex}.hero-note{font-size:12px;line-height:1.6}.hero-bottom{font-size:8px;letter-spacing:.7px}.hero-bottom span:last-child{font-size:8px;letter-spacing:.4px;max-width:50%}.photo-caption>span{font-size:9px}.about-copy .lead{font-size:23px}.about-copy p:not(.lead){font-size:16px}.values-strip{gap:10px}.values-strip span{display:flex;flex-direction:column;gap:12px}.values-strip b{font-size:12px;line-height:1.5}.values-strip .icon{width:27px;height:27px}.section-heading>p{font-size:16px;max-width:none}.service-content{font-size:16px;padding-left:0}.service-content .text-link{font-size:14px}.service-content>div>span{font-size:12px}h3{font-size:26px}.service-notice{padding:35px 6%;gap:18px}.service-notice .icon{width:27px;height:27px}.service-notice .eyebrow{font-size:9px}.service-notice h2{font-size:21px}.therapist-head h3{font-size:27px}.therapist .button{font-size:12px;min-height:58px;gap:5px;padding:9px 5px;line-height:1.4}.therapist .button .wa-icon{width:29px;height:29px;min-width:29px}.gallery-controls button{width:33px;height:33px}.gallery-count{font-size:10px}.team-footnote{font-size:13px;line-height:1.8}.prices{display:block}.prices-heading>p:not(.eyebrow){font-size:16px;max-width:none}.prices-heading .button{font-size:14px}.price-list{margin-top:35px}.price-list dt{font-size:22px}.price-list dd{font-size:13px}.price-list>div{padding:23px 0;gap:12px}.pause>p{font-size:10px;letter-spacing:1.3px}.pause .button{font-size:14px}.location-copy>p:not(.eyebrow){font-size:16px;max-width:none}.contact-panel p{font-size:16px}.contact-panel .button{font-size:14px}.phones{gap:20px}.phones a{font-size:14px}.map-wrap{margin:0 6% 55px}.map-wrap iframe{height:360px}.map-directions{font-size:13px;right:12px;bottom:12px;padding:10px 14px}.careers>div>p:not(.eyebrow){font-size:16px}.careers .eyebrow{font-size:10px}footer>div{font-size:12px;gap:16px}footer small{font-size:10px}.floating-wa{width:60px;height:60px;right:16px;bottom:16px}.floating-wa .wa-icon{width:51px;height:51px;min-width:51px}}
@media(max-width:360px){.team-grid{grid-template-columns:1fr}.portrait{aspect-ratio:4/4.5}.therapist .button{font-size:15px;gap:12px}.therapist .button .wa-icon{width:34px;height:34px;min-width:34px}.phones{flex-direction:column}.price-list dt{font-size:20px}.price-list dd{font-size:12px}}
@media(prefers-reduced-motion:reduce){.hero:before,.pause:before{animation:none}html{scroll-behavior:auto}*{scroll-behavior:auto!important}}
