@font-face{font-family:Manrope;src:url(../assets/fonts-manrope.woff2)format("woff2");font-display:swap}@font-face{font-family:Sora;src:url(../assets/fonts-sora.woff2)format("woff2");font-display:swap}:root{--ink:#25221e;--paper:#f4efe6;--paper-2:#e9e0d3;--white:#fffdf8;--accent:#b97854;--accent-deep:#74472f;--muted:#756f67;--line:#25221e29;--display:Sora, arial, sans-serif;--body:Manrope, arial, sans-serif;--color-accent:var(--accent);--color-ink-inverse:var(--white)}[data-theme=moss]{--accent:#78836b;--accent-deep:#46523f;--paper:#f1efe8;--paper-2:#dfe2d8}[data-theme=clay]{--accent:#c98b70;--accent-deep:#7b4939;--paper:#f6eee8;--paper-2:#eadbd1}[data-theme=ink]{--accent:#626f78;--accent-deep:#344049;--paper:#f0f1ef;--paper-2:#d9dedf}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);font-family:var(--body);margin:0;font-size:16px;line-height:1.65}img{object-fit:cover;width:100%;height:100%;display:block}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);letter-spacing:-.045em;font-weight:500;line-height:1.08}h1{font-size:clamp(3.6rem,7.2vw,7.4rem)}h2{font-size:clamp(2.35rem,4.6vw,4.9rem)}h3{font-size:1.45rem}.section{padding:clamp(5.5rem,10vw,9rem) max(5vw,50vw - 690px)}.eyebrow{color:var(--accent-deep);letter-spacing:.18em;text-transform:uppercase;margin-bottom:1.6rem;font-size:.8rem;font-weight:800}.lead{font-size:clamp(1.15rem,1.7vw,1.5rem);line-height:1.55}.scroll-progress-bar{z-index:1000;background:var(--accent);width:0;height:3px;position:fixed;top:0;left:0}.skip-link{z-index:9999;color:var(--white);background:var(--ink);padding:.8rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}[data-reveal]{transition:opacity .7s ease var(--reveal-delay,0s), transform .7s ease var(--reveal-delay,0s)}[data-reveal-ready=true] [data-reveal]{opacity:0;transform:translateY(25px)}[data-reveal-ready=true] [data-reveal=left]{transform:translate(-25px)}[data-reveal-ready=true] [data-reveal=right]{transform:translate(25px)}[data-reveal-ready=true] [data-reveal].is-visible{opacity:1;transform:none}.honeypot-field{position:absolute!important;left:-9999px!important}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.site-header{z-index:100;color:var(--white);-webkit-backdrop-filter:blur(14px)saturate(115%);backdrop-filter:blur(14px)saturate(115%);background:#171512eb;border-bottom:1px solid #ffffff24;position:fixed;inset:0 0 auto}.nav-shell{grid-template-columns:1fr auto 1fr;align-items:center;max-width:1500px;height:84px;margin:auto;padding:0 4vw;display:grid}.brand{width:max-content;font-family:var(--display);letter-spacing:-.02em;align-items:center;gap:.8rem;font-size:1.05rem;transition:opacity .25s;display:inline-flex}.brand:hover{opacity:.82}.brand-mark{letter-spacing:.08em;border:1px solid;border-radius:50%;place-items:center;width:38px;height:38px;font-size:.75rem;display:grid}.nav-links{letter-spacing:.04em;gap:2rem;font-size:.85rem;font-weight:700;display:flex}.nav-links a{padding-bottom:.3rem;transition:color .25s;position:relative}.nav-links a:after{content:"";background:currentColor;width:0;height:1px;transition:width .28s;position:absolute;bottom:0;left:0}.nav-links a:hover:after,.nav-links a:focus-visible:after{width:100%}.nav-book{border-bottom:1px solid;justify-self:end;padding-bottom:.25rem;font-size:.85rem;font-weight:700;transition:color .25s,border-color .25s,transform .25s}.nav-book:hover{border-color:var(--accent);transform:translateY(-1px)}.menu-toggle{background:0 0;border:0;transition:opacity .25s;display:none}.menu-toggle:hover{opacity:.7}.hero{min-height:min(940px,100svh);color:var(--white);background:#41362c;position:relative;overflow:hidden}.hero-media,.hero-shade{position:absolute;inset:0}.hero-media img{object-position:center 22%}.hero-shade{background:linear-gradient(90deg,#16120ec2 0%,#16120e61 45%,#16120e0f 75%),linear-gradient(#0000 60%,#100d0b66)}.hero-copy{z-index:1;width:min(700px,55vw);position:absolute;bottom:11%;left:max(5vw,50vw - 690px)}.hero-copy .eyebrow{color:#eadbcb}.hero-copy h1{margin-bottom:1.3rem}.hero-copy>p:not(.eyebrow){max-width:560px;font-size:1.1rem}.hero-actions{align-items:center;gap:2rem;margin-top:2rem;display:flex}.btn{cursor:pointer;border:0;border-radius:0;justify-content:center;align-items:center;min-height:54px;padding:.9rem 1.5rem;font-size:.88rem;font-weight:800;transition:background-color .28s,color .28s,transform .28s,box-shadow .28s,filter .28s;display:inline-flex}.btn-primary{color:var(--white);background:var(--accent-deep)}.btn-primary:hover{filter:brightness(1.14);transform:translateY(-2px);box-shadow:0 12px 28px #25221e47}.btn-primary:active{transform:translateY(0);box-shadow:0 4px 12px #25221e38}.hero .btn-primary{color:var(--ink);background:var(--white)}.hero .btn-primary:hover{color:var(--white);background:var(--accent-deep);filter:none}.btn:focus-visible,.text-link:focus-visible,.nav-links a:focus-visible,.nav-book:focus-visible,.theme-switcher-toggle:focus-visible,.theme-switcher-color:focus-visible,footer a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.text-link{border-bottom:1px solid;align-items:center;gap:1rem;padding:.5rem 0;font-size:.88rem;font-weight:800;transition:color .28s,border-color .28s;display:inline-flex}.text-link span{font-size:1rem;transition:transform .28s}.text-link:hover span{transform:translate(4px,4px)}.text-link:hover{border-color:var(--accent)}.text-link.dark:hover{color:var(--ink);border-color:var(--ink)}.hero-note{z-index:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-left:1px solid #ffffff80;flex-direction:column;min-width:255px;padding:1.2rem 1.4rem;display:flex;position:absolute;bottom:4vw;right:4vw}.hero-note span,.hero-note small{color:#ffffffb3;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem}.hero-note strong{font-family:var(--display);margin:.35rem 0;font-weight:500}.trust-strip{color:#ded6ca;background:var(--ink);justify-content:center;align-items:center;gap:2.5vw;padding:1.2rem 3vw;display:flex}.trust-strip p{letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.8rem;font-weight:700}.trust-strip span{background:var(--accent);border-radius:50%;width:4px;height:4px}.section-heading{grid-template-columns:.7fr 2fr;gap:3rem;margin-bottom:5rem;display:grid}.section-heading h2{max-width:950px;margin-bottom:1.3rem}.section-heading>div>p{max-width:650px;color:var(--muted)}.treatment-grid{border-top:1px solid var(--line)}.treatment-grid article{border-bottom:1px solid var(--line);grid-template-columns:80px 1fr auto;align-items:center;gap:2rem;padding:2.4rem 1rem;transition:background .25s,padding .25s;display:grid}.treatment-grid article:hover{background:#ffffff47;padding-left:2rem;padding-right:2rem}.treatment-grid .index{color:var(--muted);font-size:.8rem}.treatment-grid article div{grid-template-columns:120px 1.2fr 1.5fr 1fr;align-items:center;gap:2rem;display:grid}.treatment-grid p,.treatment-grid h3{margin:0}.treatment-grid .tag,.treatment-grid small{color:var(--muted);font-size:.82rem}.treatment-grid article>a{border:1px solid var(--line);border-radius:50%;place-items:center;width:44px;height:44px;transition:color .28s,background-color .28s,border-color .28s,transform .28s;display:grid}.treatment-grid article>a:hover,.treatment-grid article:hover>a{color:var(--white);border-color:var(--accent-deep);background:var(--accent-deep);transform:translate(3px)}.approach{color:#eee7dc;background:#292723;grid-template-columns:1fr 1fr;min-height:860px;display:grid}.approach>figure{height:860px;margin:0}.approach-copy{align-self:center;padding:8vw}.approach-copy .eyebrow{color:#c6a088}.approach-copy h2{margin-bottom:2rem}.approach-copy>p{color:#c8c1b8}.approach-copy ol{margin:3rem 0 0;padding:0;list-style:none}.approach-copy li{border-top:1px solid #ffffff29;grid-template-columns:60px 1fr;padding:1.3rem 0;display:grid}.approach-copy li>span{color:#a9a198;font-size:.8rem}.approach-copy li h3,.approach-copy li p{margin-bottom:.35rem}.approach-copy li p{color:#aaa39b;font-size:.95rem}.benefits{background:var(--paper-2)}.benefit-grid{grid-template-columns:repeat(4,1fr);display:grid}.benefit-grid article{border-top:1px solid var(--line);border-right:1px solid var(--line);min-height:270px;padding:1.8rem}.benefit-grid article:last-child{border-right:0}.benefit-grid span{color:var(--accent-deep);font-size:.8rem}.benefit-grid h3{margin-top:6rem}.benefit-grid p{color:var(--muted);font-size:.95rem}.about{grid-template-columns:.9fr 1fr;align-items:center;gap:8vw;display:grid}.about-copy{max-width:610px}.about-copy>p:not(.eyebrow){color:var(--muted)}.about-copy ul{border-top:1px solid var(--line);margin:2rem 0 2.5rem;padding:0;list-style:none}.about-copy li{border-bottom:1px solid var(--line);padding:.7rem 0;font-size:.95rem}.text-link.dark{color:var(--accent-deep)}.about figure{height:min(780px,72vw);margin:0;position:relative}.about figcaption{min-width:230px;color:var(--white);background:var(--accent-deep);flex-direction:column;padding:1.2rem 1.5rem;display:flex;position:absolute;bottom:0;right:0}.about figcaption small{opacity:.7}.reviews{color:#eee8df;background:#1f1e1b;grid-template-columns:.7fr 1fr;gap:8vw;padding:clamp(6rem,10vw,10rem) max(5vw,50vw - 690px);display:grid}.reviews .eyebrow{color:#c6a088}.review-list article{border-top:1px solid #ffffff2b;padding:2rem 0 2.5rem}.review-list .stars{color:var(--accent);letter-spacing:.12em;font-size:.85rem}.review-list p{font-family:var(--display);margin:1.2rem 0;font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.45}.review-list span{color:#9f9992;text-transform:uppercase;letter-spacing:.08em;font-size:.8rem}.faq{grid-template-columns:.7fr 1fr;gap:8vw;display:grid}.faq-list{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-family:var(--display);justify-content:space-between;align-items:center;padding:1.6rem 0;font-size:1.05rem;list-style:none;transition:color .25s;display:flex}.faq summary:hover{color:var(--accent-deep)}.faq summary::-webkit-details-marker{display:none}.faq summary i,.faq summary i:after{content:"";background:currentColor;width:14px;height:1px;display:block}.faq summary i:after{transition:transform .2s;transform:rotate(90deg)}.faq details[open] summary i:after{transform:rotate(0)}.faq details p{max-width:650px;color:var(--muted);padding:0 3rem 1.5rem 0;font-size:1rem}.booking{min-height:800px;color:var(--white);background:#46392e;grid-template-columns:1fr 1fr;align-items:center;gap:7vw;padding:8vw max(5vw,50vw - 690px);display:grid;position:relative;overflow:hidden}.booking-image{opacity:.3;position:absolute;inset:0}.booking-image:after{content:"";background:linear-gradient(90deg,#2c241e 10%,#2c241eb8,#2c241e 100%);position:absolute;inset:0}.booking-copy,.form-card{position:relative}.booking-copy .eyebrow{color:#e0bca4}.booking-copy>p:not(.eyebrow){color:#ddd3ca;max-width:540px}.studio-meta{color:#bdb3aa;flex-direction:column;margin-top:3rem;font-size:.9rem;display:flex}.form-card{width:min(100%,510px);color:var(--ink);background:var(--paper);justify-self:end;padding:clamp(2rem,4vw,3.5rem)}.trial-form{gap:1.25rem;display:grid}.trial-form label{letter-spacing:.06em;text-transform:uppercase;gap:.45rem;font-size:.8rem;font-weight:800;display:grid}.trial-form input,.trial-form select{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);text-transform:none;background:0 0;border-radius:0;outline:none;padding:.75rem 0}.trial-form input:focus,.trial-form select:focus{border-color:var(--accent-deep)}.trial-form button{margin-top:1rem}.form-status{min-height:1.4em;margin:0;font-size:.88rem}.form-status.success{color:#3c6945}.form-status.error{color:#9b3e32}footer{color:#c6bfb6;background:#171614;grid-template-columns:1fr auto;gap:3rem;padding:4rem max(5vw,50vw - 690px) 2.5rem;display:grid}.footer-brand{color:var(--white)}footer>div>p{margin-top:1rem;font-size:.95rem}footer nav{align-items:start;gap:2.2rem;font-size:.95rem;display:flex}footer a:not(.footer-brand){text-underline-offset:.35em;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:1px;transition:color .25s,text-decoration-color .25s}footer a:not(.footer-brand):hover{color:var(--white);text-decoration-color:currentColor}.footer-bottom{border-top:1px solid #ffffff1f;grid-column:1/-1;justify-content:space-between;padding-top:1.6rem;font-size:.85rem;display:flex}.theme-switcher{z-index:110;position:fixed;top:calc(84px + 1.6rem);right:2.4rem}.theme-switcher-toggle{width:46px;height:46px;color:var(--white);background:var(--accent-deep);cursor:pointer;border:0;border-radius:50%;place-items:center;transition:transform .28s,box-shadow .28s,filter .28s;display:grid;box-shadow:0 8px 30px #00000038}.theme-switcher-toggle svg{transform-origin:50%;width:25px;height:25px;animation:9s linear infinite theme-gear-spin}@keyframes theme-gear-spin{to{transform:rotate(360deg)}}.theme-switcher-toggle:hover{filter:brightness(1.18);box-shadow:0 14px 36px #00000052}.theme-switcher-toggle:active{box-shadow:0 6px 16px #00000042}.theme-switcher-panel{visibility:hidden;border:1px solid var(--line);opacity:0;background:var(--paper);width:190px;padding:1rem;transition:all .2s;position:absolute;top:58px;right:0;transform:translateY(-8px);box-shadow:0 15px 40px #00000029}.theme-switcher.is-open .theme-switcher-panel{visibility:visible;opacity:1;transform:none}.theme-switcher-panel p{color:var(--ink);margin-bottom:.8rem;font-size:.8rem;font-weight:800}.theme-switcher-options{gap:.55rem;display:flex}.theme-switcher-color{border:2px solid var(--paper);background:var(--swatch-color);cursor:pointer;border-radius:50%;outline:1px solid #0000;width:26px;height:26px;transition:transform .22s,outline-color .22s}.theme-switcher-color:hover{outline-color:var(--muted);transform:scale(1.14)}.theme-switcher-color.is-active{outline-color:var(--ink)}.consent{z-index:120;border-top:1px solid var(--line);color:var(--ink);background:var(--paper);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem 2.5rem;padding:1.4rem max(5vw,50vw - 690px);transition:transform .32s;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -10px 40px #25221e1f}.consent.is-visible{transform:none}.consent p{max-width:78ch;margin:0;font-size:.9rem;line-height:1.6}.consent-link{color:var(--accent-deep);border-bottom:1px solid;font-weight:700;transition:color .25s,border-color .25s}.consent-link:hover{color:var(--ink);border-color:var(--ink)}.consent-actions{gap:.8rem;display:flex}.consent .btn{min-height:46px;padding:.65rem 1.6rem}.btn-quiet{color:var(--ink);border:1px solid var(--ink);background:0 0;transition:color .28s,background-color .28s,transform .28s}.btn-quiet:hover{color:var(--paper);background:var(--ink);transform:translateY(-2px)}.btn-quiet:active{transform:translateY(0)}@media (width<=940px){.nav-shell{grid-template-columns:1fr auto}.nav-book{display:none}.nav-links{visibility:hidden;opacity:0;width:min(300px,74vw);color:var(--ink);background:var(--paper);gap:0;padding:.5rem 1.5rem 1.2rem;transition:all .2s;display:grid;position:fixed;inset:84px 0 auto auto;transform:translateY(-10px);box-shadow:0 18px 44px #17151238}.site-header{-webkit-backdrop-filter:none;backdrop-filter:none;background:#171512}.nav-links.is-open{visibility:visible;opacity:1;transform:none}.nav-links a{border-bottom:1px solid var(--line);padding:.9rem 0}.nav-links a:last-child{border-bottom:0}.hero-copy{width:75vw}.hero-note{display:none}.section-heading,.approach,.about,.reviews,.faq,.booking{grid-template-columns:1fr}.section-heading{gap:0}.approach-copy{padding:6rem 7vw}.benefit-grid{grid-template-columns:repeat(2,1fr)}.treatment-grid article div{grid-template-columns:100px 1fr}.treatment-grid article div>p:not(.tag),.treatment-grid article div small{grid-column:2}.about{gap:4rem}.about figure{height:760px}.booking{gap:4rem}.form-card{justify-self:start}.theme-switcher{top:calc(84px + 1.1rem);left:1.6rem;right:auto}.theme-switcher-panel{left:0;right:auto}.menu-toggle{cursor:pointer;justify-self:end;place-items:center;width:44px;height:44px;display:grid}.menu-toggle span{gap:6px;display:grid}.menu-toggle i{background:currentColor;width:18px;height:1.5px;transition:transform .3s;display:block}.menu-toggle[aria-expanded=true] i:first-child{transform:translateY(3.75px)rotate(45deg)}.menu-toggle[aria-expanded=true] i:last-child{transform:translateY(-3.75px)rotate(-45deg)}}@media (width<=620px){body{font-size:15px}.nav-shell{height:72px}.nav-links{width:min(280px,78vw);inset-block-start:72px}.hero{min-height:790px}.hero-media img{object-position:64% center}.hero-shade{background:linear-gradient(90deg,#16120ed1,#16120e40),linear-gradient(#0000,#100d0b8c)}.hero-copy{text-align:center;width:88vw;bottom:9%}.hero-copy h1{font-size:3.8rem}.hero-copy>p:not(.eyebrow){margin-inline:auto}.hero-actions{flex-direction:column;align-items:center;gap:.9rem}.hero-actions .btn{width:100%}.trust-strip{justify-content:flex-start;overflow:hidden}.trust-strip p:nth-of-type(n+3),.trust-strip span:nth-of-type(n+3){display:none}.section{padding-left:6vw;padding-right:6vw}.section-heading{margin-bottom:3rem}.treatment-grid article{grid-template-columns:28px 1fr;gap:1rem;padding:1.8rem 0}.treatment-grid article>a{display:none}.treatment-grid article div{display:block}.treatment-grid article div>*{margin-bottom:.5rem}.approach>figure{height:600px}.approach-copy{padding:5rem 6vw}.benefit-grid{grid-template-columns:1fr}.benefit-grid article{border-right:0;min-height:210px}.benefit-grid h3{margin-top:3rem}.about figure{height:570px}.reviews,.booking{padding-left:6vw;padding-right:6vw}.faq{gap:2rem}.booking{min-height:auto}.form-card{padding:1.6rem}footer{text-align:center;grid-template-columns:1fr;justify-items:center;padding-left:6vw;padding-right:6vw}footer nav{flex-wrap:wrap;justify-content:center}.footer-bottom{flex-direction:column;align-items:center;gap:.4rem}.theme-switcher{top:calc(72px + 1rem);left:1.1rem;right:auto}.trial-form button{width:100%}.section>.btn{margin-inline:auto;display:flex}.consent{gap:1rem;padding:1.2rem 6vw}.consent p{font-size:.85rem}.consent-actions{width:100%}.consent .btn{flex:1;padding:.65rem 1rem}}
