
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Italiana&display=swap');
:root{--bg:#160f15;--ink:#f5efed;--muted:#b8aeb4;--rose:#d3a099;--rose-deep:#8c5c68;--paper:#f2e9e5;--line:#392c35;--serif:"Italiana",serif;--sans:"DM Sans",Arial,sans-serif;--ease:cubic-bezier(.2,.78,.18,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans)}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}
.site-header{position:sticky;top:0;z-index:80;display:grid;grid-template-columns:1fr auto auto;gap:28px;align-items:center;padding:18px 3.2vw;background:rgba(22,15,21,.94);border-bottom:1px solid rgba(255,255,255,.07);backdrop-filter:blur(14px)}.brand{display:flex;flex-direction:column;line-height:.9}.brand strong{font:400 20px var(--serif);letter-spacing:.07em}.brand span{font-size:8px;letter-spacing:.27em;color:#a898a5;margin-top:5px}.desktop-nav{display:flex;gap:22px}.desktop-nav a,.header-cta{font-size:12px}.desktop-nav a:hover{color:var(--rose)}.header-cta,.btn-rose{display:inline-flex;align-items:center;justify-content:center;background:var(--rose);color:#23171c;padding:13px 18px;border:0;font-size:12px;font-weight:600}.menu-toggle{display:none;background:none;border:0;color:#fff}.text-link{font-size:12px;border-bottom:1px solid currentColor;padding-bottom:3px;color:#ffffff;font-weight:600;text-shadow:0 1px 12px rgba(8,5,7,.46)}.wide{width:100%}main{padding:0 3.2vw 70px}
.campaign-hero{position:relative;min-height:820px;margin:0 -3.2vw 0;overflow:hidden}.campaign-image{position:absolute;inset:0}.campaign-image:after{content:"";position:absolute;inset:0;background:
linear-gradient(90deg,rgba(18,12,17,.42) 0%,rgba(18,12,17,.10) 48%,rgba(18,12,17,.14) 100%),
linear-gradient(180deg,rgba(18,12,17,.05) 0%,rgba(18,12,17,.20) 38%,rgba(18,12,17,.72) 68%,rgba(18,12,17,.97) 100%)}.campaign-image img{width:100%;height:100%;object-fit:cover;object-position:center 25%;display:block}.campaign-word{position:absolute;left:50%;top:11%;transform:translateX(-50%);font:400 clamp(150px,22vw,330px)/.78 var(--serif);letter-spacing:-.07em;color:rgba(255,255,255,.18);white-space:nowrap;mix-blend-mode:screen}.campaign-copy{position:absolute;left:7%;bottom:105px;max-width:760px;z-index:3}.campaign-copy h1,.page-heading h1,.feature-copy h1,.studio-full-copy h1,.booking-copy h1,.treatment-detail-copy h1,.practitioner-detail-copy h1{font:400 clamp(58px,6.4vw,96px)/.9 var(--serif);letter-spacing:-.03em;margin:0 0 16px;color:#ffffff;text-shadow:0 2px 20px rgba(8,5,7,.48)}.campaign-copy p,.page-heading p,.feature-copy p,.studio-full-copy p,.booking-copy p,.treatment-detail-copy p,.practitioner-detail-copy p{color:#fff8fa;line-height:1.65;max-width:650px;text-shadow:0 1px 14px rgba(8,5,7,.42)}.campaign-actions{position:absolute;right:6%;bottom:108px;z-index:3;display:flex;gap:16px;align-items:center}
.concern-run{padding:90px 0}.run-heading{max-width:820px}.run-heading h2,.film-caption h2,.wave-copy h2,.final-cta h2{font:400 clamp(44px,4.8vw,70px)/.94 var(--serif);margin:0 0 14px}.run-heading p,.film-caption p,.wave-copy p{color:var(--muted);line-height:1.6}.run-list{margin-top:34px}.run-item{display:grid;grid-template-columns:.72fr 1.28fr;gap:24px;padding:24px 0;border-top:1px solid var(--line);transition:transform .35s var(--ease)}.run-item:last-child{border-bottom:1px solid var(--line)}.run-item:hover{transform:translateX(12px)}.run-item strong{font:400 34px var(--serif)}.run-item span{color:var(--muted);font-size:12px;align-self:center}
.editorial-film{position:relative;min-height:720px;margin-bottom:92px}.film-image{position:absolute;inset:0 0 0 18%;overflow:hidden}.film-image img{width:100%;height:100%;object-fit:cover;display:block}.film-caption{position:absolute;left:0;bottom:50px;width:46%;background:rgba(22,15,21,.88);padding:38px 46px 36px 0;backdrop-filter:blur(6px)}
.treatment-marquee{overflow:hidden;margin-bottom:92px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.marquee-line{display:flex;gap:54px;padding:18px 0;width:max-content;animation:marquee 22s linear infinite}.marquee-line span{font:400 38px var(--serif);color:#7f6a76}@keyframes marquee{to{transform:translateX(-42%)}}
.practitioner-wave{margin-bottom:92px}.wave-copy{max-width:760px;margin-bottom:28px}.wave-track{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:start}.wave-person{display:flex;flex-direction:column}.wave-person.rise{transform:translateY(48px)}.wave-person img{width:100%;height:510px;object-fit:cover;display:block}.wave-person strong{font:400 28px var(--serif);margin-top:14px}.wave-person span{color:var(--muted);font-size:11px;margin-top:5px}
.studio-banner{position:relative;height:620px;overflow:hidden;margin-bottom:88px}.studio-banner img{width:100%;height:100%;object-fit:cover;display:block}.studio-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,12,16,.82),rgba(17,12,16,.08) 60%)}.studio-banner-copy{position:absolute;left:5%;bottom:48px;max-width:620px;z-index:2}.studio-banner-copy h2{font:400 clamp(44px,5vw,72px)/.92 var(--serif);margin:0 0 14px}
.final-cta{display:flex;justify-content:space-between;align-items:end;gap:28px;padding:36px 0;border-top:1px solid var(--line)}.final-cta h2{max-width:820px;margin:0}
.page-heading{max-width:920px;padding:56px 0 44px}.treatment-stream{display:grid}.stream-row{display:grid;grid-template-columns:.8fr 1fr auto;gap:24px;padding:25px 0;border-top:1px solid var(--line);align-items:center}.stream-row:last-child{border-bottom:1px solid var(--line)}.stream-row strong{font:400 34px var(--serif)}.stream-row span{color:var(--muted);font-size:12px}.stream-row b{font-size:11px;color:var(--rose);font-weight:500}
.single-feature{position:relative;min-height:760px;margin:0 -3.2vw}.feature-image{position:absolute;inset:0}.feature-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(22,15,21,.06) 0%,rgba(22,15,21,.20) 45%,rgba(22,15,21,.90) 100%)}.feature-image img{width:100%;height:100%;object-fit:cover}.feature-copy{position:absolute;left:7%;bottom:70px;max-width:680px;z-index:2}.feature-lines{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin-top:34px}.feature-lines div{background:#1c141b;padding:24px;min-height:160px}.feature-lines strong{display:block;font:400 24px var(--serif)}.feature-lines span{display:block;color:var(--muted);font-size:11px;margin-top:8px}
.people-ribbon{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:start}.people-person{display:flex;flex-direction:column}.people-person.drop{margin-top:60px}.people-person img{width:100%;height:530px;object-fit:cover}.people-person strong{font:400 27px var(--serif);margin-top:14px}.people-person span{color:var(--muted);font-size:11px;margin-top:5px}
.studio-full{position:relative;height:760px;margin:0 -3.2vw}.studio-full img{width:100%;height:100%;object-fit:cover}.studio-full:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,10,14,.04) 0%,rgba(15,10,14,.22) 45%,rgba(15,10,14,.91) 100%)}.studio-full-copy{position:absolute;left:7%;bottom:65px;max-width:760px;z-index:2}
.booking-canvas{display:grid;grid-template-columns:.75fr 1.25fr;gap:30px;padding-top:50px}.booking-form{background:var(--paper);color:#251920;padding:30px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.booking-form label{display:flex;flex-direction:column;gap:7px;margin-bottom:14px;font-size:11px}.booking-form input,.booking-form select,.booking-form textarea{padding:12px;border:1px solid #d3c5ca;background:white}.form-status{margin-top:12px;color:#6d6067;font-size:11px}
.treatment-detail,.practitioner-detail{position:relative;min-height:760px;margin:0 -3.2vw}.treatment-detail-image,.practitioner-detail-image{position:absolute;inset:0}.treatment-detail-image:after,.practitioner-detail-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,14,18,.05) 0%,rgba(20,14,18,.20) 44%,rgba(20,14,18,.92) 100%)}.treatment-detail-image img,.practitioner-detail-image img{width:100%;height:100%;object-fit:cover}.treatment-detail-copy,.practitioner-detail-copy{position:absolute;left:7%;bottom:60px;max-width:720px;z-index:2}.detail-meta,.focus-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.12);margin:22px 0}.detail-meta div,.focus-grid span{background:rgba(22,15,21,.72);padding:13px}.detail-meta span{display:block;color:var(--muted);font-size:10px}.detail-meta strong{display:block;font-size:12px;margin-top:4px}.focus-grid span{font-size:11px}
.site-footer{padding:34px 3.2vw 44px;border-top:1px solid rgba(255,255,255,.08);display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:24px;background:#0f0a0e}.site-footer>div{display:flex;flex-direction:column;gap:8px}.site-footer a,.site-footer span{font-size:11px;color:#9f919b}
.reveal-block,.reveal-item{opacity:0;transform:translateY(18px)}.is-visible{opacity:1!important;transform:none!important;transition:opacity .65s var(--ease),transform .65s var(--ease)}.image-reveal{clip-path:inset(10% 0 0 0);transform:scale(1.03)}.image-reveal.is-visible{clip-path:inset(0);transform:none!important;transition:clip-path .95s var(--ease),transform .95s var(--ease),opacity .7s var(--ease)}.motion-line{position:relative}.motion-line:after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:1px;background:var(--rose);opacity:.8}.motion-line.is-visible:after{animation:lineSweep .7s .15s var(--ease) forwards}@keyframes lineSweep{0%{width:0;opacity:.9}75%{width:100%;opacity:.7}100%{width:100%;opacity:0}}
@media(max-width:980px){.desktop-nav,.header-cta{display:none}.menu-toggle{display:block}.site-header{grid-template-columns:1fr auto}.site-header.menu-open .desktop-nav{display:flex;position:absolute;top:100%;left:18px;right:18px;background:#1b1319;padding:18px;flex-direction:column}.campaign-copy{left:5%;right:5%;bottom:130px}.campaign-actions{left:5%;right:auto;bottom:55px}.film-caption{width:65%}.wave-track,.people-ribbon{grid-template-columns:1fr 1fr}.booking-canvas{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr}}
@media(max-width:620px){main{padding:0 20px 50px}.site-header{padding:16px 20px}.campaign-hero,.single-feature,.studio-full,.treatment-detail,.practitioner-detail{margin-left:-20px;margin-right:-20px}.campaign-hero{min-height:760px}.campaign-copy h1,.page-heading h1,.feature-copy h1,.studio-full-copy h1,.booking-copy h1,.treatment-detail-copy h1,.practitioner-detail-copy h1{font-size:52px}.campaign-word{font-size:105px;top:16%}.campaign-actions{flex-direction:column;align-items:flex-start}.run-item,.stream-row{grid-template-columns:1fr}.editorial-film{min-height:650px}.film-image{left:0}.film-caption{width:92%;padding:28px}.wave-track,.people-ribbon{grid-template-columns:1fr}.wave-person.rise,.people-person.drop{transform:none;margin-top:0}.wave-person img,.people-person img{height:430px}.feature-lines{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}.final-cta{flex-direction:column;align-items:flex-start}.site-footer{padding:28px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal-block,.reveal-item,.image-reveal{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important}.motion-line:after{display:none}.marquee-line{animation:none}}
