:root{--paper:#f3f0e9;--paper2:#e8e3d8;--ink:#292a26;--muted:#77766d;--line:#cfcbc0;--rust:#bc644e;--rust-dark:#914832;--sage:#89907a;--serif:'Playfair Display',Georgia,serif;--sans:Manrope,Arial,sans-serif;--mono:'DM Mono',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;overflow-x:hidden}.wrap,.section-wrap{width:min(1220px,calc(100% - 88px));margin-inline:auto}.scroll-line{position:fixed;left:0;top:0;height:3px;width:0;background:var(--rust);z-index:80;transition:width .08s linear}.header{height:82px;position:absolute;top:0;left:0;right:0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:0 max(44px,calc((100vw - 1220px)/2));border-bottom:1px solid #ffffff47;color:#f6f2e9;transition:background .35s,color .35s,box-shadow .35s}.header.scrolled{position:fixed;background:#f3f0e9f2;color:var(--ink);border-color:#d8d4c9;backdrop-filter:blur(16px);box-shadow:0 5px 24px #28231b0a}.brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none}.brand-symbol{font:italic 40px/.7 var(--serif);letter-spacing:-5px;color:var(--rust)}.brand-symbol span{color:inherit}.brand-name{font-size:11px;font-weight:800;letter-spacing:2px}.brand-name small{display:block;font:6px var(--mono);letter-spacing:1.4px;margin-top:5px;opacity:.72}.nav{display:flex;gap:30px}.nav a{text-decoration:none;color:inherit;font-size:10px;opacity:.9;transition:opacity .2s}.nav a:hover{opacity:.55}.nav-book{display:flex;align-items:center;gap:23px;text-decoration:none;color:inherit;border:1px solid currentColor;padding:11px 13px;font-size:9px;letter-spacing:.25px;transition:.2s}.nav-book span{font-size:15px;color:var(--rust)}.nav-book:hover{background:var(--rust);border-color:var(--rust);color:#fff}.nav-book:hover span{color:#fff}.menu{display:none}.hero{height:min(820px,100svh);min-height:675px;position:relative;color:#f4f0e8;background:#6e5945;overflow:hidden}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;animation:heroArrive 1.15s cubic-bezier(.17,.67,.2,1) both;transform-origin:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#171914ad 0%,#17191465 34%,transparent 76%),linear-gradient(0deg,#17191483,transparent 28%,#17191424 100%)}.hero-content{position:relative;height:100%;padding-top:82px;display:flex;flex-direction:column}.hero-side{position:absolute;left:26px;top:49%;writing-mode:vertical-rl;transform:rotate(180deg);font:7px var(--mono);letter-spacing:1.2px;line-height:1.8;opacity:.75}.hero-side b{color:#ecaa92}.hero-meta{display:flex;justify-content:space-between;align-items:center;padding-top:20px;font:7px var(--mono);letter-spacing:1px;color:#f3ede0c4}.hero-meta span:first-child{display:flex;align-items:center;gap:7px}.hero-meta i{display:inline-block;width:6px;height:6px;background:#d89176;border-radius:50%;box-shadow:0 0 11px #e4a48e}.hero-title-block{margin-top:auto;margin-bottom:auto;max-width:630px;padding:30px 0 0 4.5%}.pretitle,.overline{font:8px var(--mono);letter-spacing:1.4px;color:var(--rust);margin:0 0 20px}.hero .pretitle{color:#f2c3ac}.hero h1{font-size:clamp(72px,9.4vw,136px);line-height:.86;font-weight:500;letter-spacing:-.078em;margin:0 0 27px}.hero h1 em{font-family:var(--serif);font-weight:400;letter-spacing:-.08em;color:#efb29a}.hero-lead{font-size:12px;line-height:1.8;color:#f2eee2;max-width:360px;margin:0}.hero-cta{display:inline-flex;align-items:center;gap:13px;color:#f5f0e6;text-decoration:none;margin-top:26px;transition:transform .3s}.hero-cta:hover{transform:translateX(7px)}.cta-round{display:grid;place-items:center;width:46px;height:46px;border:1px solid #f5f0e7a6;border-radius:50%;font-size:18px;transition:.3s}.hero-cta:hover .cta-round{background:#f3f0e9;color:var(--ink);transform:rotate(-45deg)}.hero-cta>span:last-child{font-size:9px;line-height:1.4}.hero-cta small{font:6px var(--mono);letter-spacing:.7px;opacity:.7}.hero-stamp{position:absolute;right:9%;top:43%;width:113px;height:113px;border:1px solid #f2e7dba6;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#fff8ef;transform:rotate(9deg);animation:stampFloat 5s ease-in-out infinite}.hero-stamp b{font:31px var(--serif);color:#f1b69f}.hero-stamp span{font:5px var(--mono);letter-spacing:.9px}.hero-bottom{margin-top:auto;padding:18px 0 20px;border-top:1px solid #f4eee35d;display:flex;justify-content:space-between;font:6px var(--mono);letter-spacing:1px;color:#eee8dc}.hero-bottom a{color:inherit;text-decoration:none}.hero-bottom i{font-size:12px;font-style:normal;color:#efb29a;margin-left:8px}.hero-card{position:absolute;right:max(42px,calc((100vw - 1220px)/2));bottom:92px;width:224px;padding:17px 18px 16px;background:var(--paper);color:var(--ink);box-shadow:0 14px 50px #17191430;animation:cardRise .8s .3s both}.hero-card-kicker{display:block;font:6px var(--mono);letter-spacing:1px;color:var(--rust)}.hero-card>b{display:block;font:20px/1.15 var(--serif);margin:11px 0 14px}.hero-card>b em{color:var(--rust)}.hero-card>a{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:11px;color:var(--ink);font-size:8px;text-decoration:none}.hero-card>a span{color:var(--rust);font-size:14px}.ticker{overflow:hidden;background:var(--rust);color:#fff5ec;white-space:nowrap}.ticker>div{display:flex;align-items:center;gap:28px;width:max-content;padding:12px 0;animation:marquee 26s linear infinite}.ticker span{font:7px var(--mono);letter-spacing:1.2px}.ticker b{font-size:11px;color:#f1d4c4}.section-wrap{max-width:1150px}.section-mark{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:13px;font:7px var(--mono);letter-spacing:1px;color:#726f65}.section-mark span:first-child{color:var(--ink)}.section-mark i{font-style:normal;color:var(--rust);margin:0 4px}.intro{padding-top:84px;padding-bottom:97px}.intro-grid{display:grid;grid-template-columns:1fr .8fr;gap:13%;padding-top:50px}.overline{color:var(--rust)}.intro-head h2,.map-heading h2,.class-heading h2,.schedule h2,.membership h2,.faq h2,.final-panel h2{font-size:clamp(45px,6.2vw,78px);line-height:.98;letter-spacing:-.07em;font-weight:500;margin:0}.intro-head h2 em,.map-heading h2 em,.class-heading h2 em,.schedule h2 em,.membership h2 em,.faq h2 em,.final-panel h2 em{font-family:var(--serif);font-weight:400;color:var(--rust);letter-spacing:-.06em}.hand-note{position:relative;display:inline-block;margin:34px 0 0 43%;font:italic 15px/1.15 var(--serif);color:var(--rust);transform:rotate(-8deg)}.hand-note span{position:absolute;right:-28px;bottom:-14px;font:22px var(--sans)}.intro-copy{position:relative;padding-top:46px}.intro-number{position:absolute;top:0;right:0;color:#b8b3a7;font:9px var(--mono)}.dropcap{font:24px/1.45 var(--serif);margin:0 0 17px;max-width:490px}.intro-copy>p:not(.dropcap){font-size:10px;line-height:1.85;color:var(--muted);max-width:430px;margin:0}.intro-facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:32px;border-top:1px solid var(--line);padding-top:15px;gap:13px}.intro-facts b{font:26px var(--serif);color:var(--rust)}.intro-facts b span{font-size:15px}.intro-facts small{display:block;margin-top:4px;font:6px var(--mono);letter-spacing:.65px;color:var(--muted)}.studio-map{padding:0 0 93px}.map-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;padding:38px 0 28px}.map-heading h2{font-size:clamp(40px,5vw,63px)}.map-heading .overline{margin-bottom:17px}.map-heading>p{font-size:10px;line-height:1.8;color:var(--muted);max-width:315px;margin:0 0 4px}.booking-board{display:grid;grid-template-columns:1.35fr .65fr;min-height:455px;background:#e7e2d8;border:1px solid #d3cec2}.room-visual{position:relative;min-height:455px;overflow:hidden;background:linear-gradient(120deg,#ddd7ca,#eee9df 52%,#d4ccbd);background-image:linear-gradient(90deg,#faf6ec4a 1px,transparent 1px),linear-gradient(#faf6ec4a 1px,transparent 1px),radial-gradient(ellipse at 52% 40%,#f6f1e8,#d7d0c2);background-size:42px 42px,42px 42px,auto}.room-windows{position:absolute;top:0;left:0;right:0;height:30px;background:repeating-linear-gradient(90deg,#fbf8ee 0,#fbf8ee 7%,#aba89a 7.3%,#aba89a 7.8%,#e7e2d8 8%,#e7e2d8 22%);box-shadow:0 7px 15px #655b4933}.room-caption{position:absolute;top:14px;left:17px;right:17px;display:flex;justify-content:space-between;z-index:4;font:6px var(--mono);letter-spacing:.7px;color:#6f6c61}.room-caption i{font-style:normal;color:#bd795e;margin-left:4px}.reformer-floor{position:absolute;inset:49px 5% 53px}.reformer{position:absolute;left:var(--x);top:var(--y);width:23%;height:27%;transform:translate(-50%,-50%);border:0;background:transparent;cursor:pointer;transition:transform .25s;z-index:3}.reformer:before{content:"";position:absolute;left:0;right:0;top:37%;height:27%;background:linear-gradient(180deg,#aa805e,#78553d);border:5px solid #c59c77;box-shadow:0 10px 11px #51402e32, inset 0 0 0 1px #e0ba92;border-radius:3px;transform:perspective(200px) rotateX(5deg)}.reformer:after{content:"";position:absolute;left:12%;right:12%;top:25%;height:50%;border:2px solid #795c42;border-bottom-width:4px;border-radius:7px;clip-path:polygon(0 10%,100% 0,95% 90%,5% 100%);opacity:.8}.reformer>span{position:absolute;z-index:2;top:50%;left:50%;transform:translate(-50%,-50%);width:23px;height:23px;border-radius:50%;background:#f3f0e9;color:#62523f;border:1px solid #a28b6e;display:grid;place-items:center;font:7px var(--mono);transition:.2s}.reformer:hover{transform:translate(-50%,-50%) scale(1.08)}.reformer.selected:before{background:linear-gradient(180deg,#bc644e,#9c4938);border-color:#e5ad91;box-shadow:0 0 0 3px #bc644e36,0 12px 14px #51402e32}.reformer.selected>span{background:#bc644e;color:white;border-color:#f0c0a8}.reformer.taken{cursor:not-allowed;opacity:.42}.reformer.taken:before{background:#958e80}.room-plants{position:absolute;z-index:3;color:#737b65;font-size:38px;opacity:.55}.plant-one{left:3%;bottom:13%}.plant-two{right:5%;top:34%;font-size:27px}.room-door{position:absolute;right:18px;bottom:0;width:53px;height:42px;border:1px solid #8c7f69;border-bottom:0;display:flex;align-items:start;justify-content:center;padding-top:8px;gap:7px;color:#655e52;font:6px var(--mono)}.room-label{position:absolute;bottom:14px;left:17px;color:#6e685a;font:8px var(--mono);letter-spacing:.5px}.room-label em{font-style:normal;font-size:6px;color:#a19a8c}.booking-panel{background:#f8f5ef;padding:26px 25px;display:flex;flex-direction:column}.booking-panel-top{display:flex;justify-content:space-between;font:7px var(--mono);letter-spacing:.9px;color:#6c6a62}.step-count{color:#b7b1a5}.booking-panel h3{font:32px/1.05 var(--serif);font-weight:400;margin:25px 0 19px;letter-spacing:-1px}.booking-panel h3 em{color:var(--rust)}.seat-selected{display:flex;align-items:center;gap:10px;background:#eeeae2;padding:10px 9px;margin-bottom:18px}.seat-icon{display:grid;place-items:center;width:29px;height:29px;background:var(--rust);color:#fff;font-size:14px}.seat-selected small,.seat-selected b{display:block}.seat-selected small{font:6px var(--mono);color:#898477;letter-spacing:.6px}.seat-selected b{font-size:9px;margin-top:4px}.seat-state{font:6px var(--mono);color:#75805f;margin-left:auto;white-space:nowrap}.select-row{margin-bottom:15px}.select-row>label,.select-row>span{display:block;font:6px var(--mono);letter-spacing:.8px;color:#716e63;margin-bottom:8px}.select-row select{width:100%;border:1px solid #d6d0c3;background:#f8f5ef;color:var(--ink);font:8px var(--sans);padding:10px;outline-color:var(--rust)}.date-pills{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.date-pill{background:transparent;border:1px solid #d4cfc4;padding:8px 4px;color:#66645b;font:6px var(--mono);cursor:pointer}.date-pill b{display:block;color:var(--ink);font:8px var(--sans);margin-top:5px}.date-pill.active,.date-pill:hover{background:var(--rust);color:white;border-color:var(--rust)}.date-pill.active b,.date-pill:hover b{color:white}.booking-submit{display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:#f6f1e9;border:0;padding:13px 14px;font:8px var(--sans);cursor:pointer;margin-top:auto;transition:background .2s}.booking-submit span{color:#edb39b;font-size:15px}.booking-submit:hover{background:var(--rust)}.booking-caption{font-size:6px;line-height:1.5;color:#8b877d;margin:9px 0 0}.map-legend{display:flex;gap:20px;align-items:center;padding-top:12px;font:6px var(--mono);letter-spacing:.6px;color:#7d796f}.map-legend>span{display:flex;align-items:center;gap:6px}.map-legend i{width:8px;height:8px;background:#a77e5c;border-radius:50%}.map-legend .legend-selected{background:var(--rust)}.map-legend .legend-taken{background:#aaa499}.map-tip{margin-left:auto;color:var(--rust)}.class-section{background:#e7e3da;padding:84px 0 94px}.class-section .section-wrap{max-width:1150px}.class-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;padding:38px 0 29px}.class-heading>p{max-width:300px;color:var(--muted);font-size:10px;line-height:1.8;margin:0 0 4px}.class-heading h2{font-size:58px}.class-switcher{border-top:1px solid #c9c4b9}.class-tabs{display:flex;gap:30px;border-bottom:1px solid #c9c4b9}.class-tab{background:transparent;border:0;border-bottom:2px solid transparent;padding:14px 2px 12px;font:8px var(--mono);letter-spacing:.8px;color:#777369;cursor:pointer;transition:.2s}.class-tab span{margin-right:9px;color:#b2ac9e}.class-tab.active{color:var(--rust-dark);border-color:var(--rust)}.class-tab.active span{color:var(--rust)}.class-feature{display:grid;grid-template-columns:1.1fr .9fr;min-height:387px;background:#f3f0e9}.class-image{position:relative;overflow:hidden;min-height:387px}.class-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .8s cubic-bezier(.2,.65,.2,1)}.class-feature:hover .class-image img{transform:scale(1.035)}.photo-index{position:absolute;left:14px;bottom:14px;padding:7px 9px;background:#f3f0e9df;color:#615f55;font:6px var(--mono);letter-spacing:.5px}.class-detail{padding:37px 8% 27px;position:relative}.class-sticker{display:inline-block;background:#ece7dc;padding:8px 9px;color:#817b6f;font:6px var(--mono);letter-spacing:.7px}.class-detail h3{font:clamp(43px,5vw,64px)/.91 var(--serif);font-weight:400;letter-spacing:-2px;margin:23px 0 15px}.class-detail h3 em{color:var(--rust)}.class-detail>p{max-width:320px;color:#777469;font-size:10px;line-height:1.8;min-height:54px}.class-tags{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0 20px}.class-tags span{border:1px solid #d5d0c4;padding:7px 8px;color:#7a766b;font:6px var(--mono)}.under-link{display:inline-flex;gap:22px;align-items:center;color:var(--ink);text-decoration:none;border-bottom:1px solid #aaa496;padding-bottom:8px;font-size:8px}.under-link b{color:var(--rust);font-size:14px}.class-count{position:absolute;right:25px;bottom:22px;display:flex;align-items:center;gap:8px;color:#938e82;font:7px var(--mono)}.class-count span:first-child{color:var(--rust)}.class-count i{height:1px;width:45px;background:#c4beb2}.schedule{padding-top:83px;padding-bottom:91px}.schedule-top{display:grid;grid-template-columns:.9fr 1.1fr;align-items:end;gap:10%;padding:42px 0 29px}.schedule h2{font-size:64px}.schedule h2 em{color:#7b846b}.schedule-top>div>p{max-width:390px;font-size:10px;line-height:1.8;color:var(--muted);margin:0 0 20px}.week-tabs{display:flex;gap:7px}.week-tab{padding:8px 12px;background:transparent;border:1px solid #cfc9bd;color:#706d63;font:7px var(--mono);letter-spacing:.6px;cursor:pointer}.week-tab.active,.week-tab:hover{background:var(--ink);border-color:var(--ink);color:#f2eee5}.schedule-list{border-top:1px solid var(--line)}.schedule-entry{display:grid;grid-template-columns:80px 1fr 165px 130px 80px;gap:16px;align-items:center;padding:16px 5px;border-bottom:1px solid var(--line);animation:fadeUp .35s both}.schedule-entry>time{font:13px var(--serif);color:var(--rust)}.schedule-entry h3{font-size:10px;margin:0;font-weight:700}.schedule-entry p{font-size:7px;color:#868276;margin:4px 0 0}.schedule-entry .schedule-kind{font:6px var(--mono);letter-spacing:.6px;color:#8d897e}.schedule-entry .capacity{font-size:7px;color:#747369}.schedule-entry .capacity b{color:#738263;font-weight:600}.schedule-entry button{background:transparent;border:1px solid #bdb7aa;color:#4f5049;padding:8px;font:6px var(--mono);cursor:pointer;transition:.2s}.schedule-entry button:hover{background:var(--rust);border-color:var(--rust);color:white}.schedule-demo{margin:10px 0 0;color:#969184;font:6px var(--mono);letter-spacing:.3px}.manifesto{position:relative;min-height:310px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden;background:#c4c1b0;color:#35362f}.manifesto-quote{font:105px/.6 var(--serif);color:#b05f48;opacity:.85}.manifesto p{position:relative;z-index:1;font:clamp(35px,5.4vw,64px)/1.08 var(--serif);margin:2px 0 16px;letter-spacing:-2px}.manifesto p em{color:var(--rust-dark)}.manifesto>span{font:6px var(--mono);letter-spacing:1.2px;color:#646358}.manifesto-lines{position:absolute;inset:-45%;background:repeating-radial-gradient(ellipse at 50% 50%,transparent 0 36px,#ffffff24 37px 38px);transform:rotate(-12deg);animation:slowRotate 42s linear infinite}.membership{padding-top:85px;padding-bottom:96px}.membership-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:14%;align-items:center;padding-top:47px}.membership h2{font-size:65px}.membership-copy{font-size:10px;line-height:1.9;color:var(--muted);max-width:345px;margin:20px 0}.membership-switch{display:flex;align-items:center;gap:11px;margin-top:28px;font:7px var(--mono);letter-spacing:.7px;color:#777368}.membership-switch button{width:42px;height:23px;border:0;border-radius:15px;background:#bbb5a8;padding:3px;cursor:pointer;transition:.25s}.membership-switch button i{display:block;width:17px;height:17px;border-radius:50%;background:#f5f1e7;transition:.25s}.membership-switch button[aria-pressed="true"]{background:var(--rust)}.membership-switch button[aria-pressed="true"] i{transform:translateX(19px)}.membership-note{display:block;font-size:6px;line-height:1.6;color:#969185;margin-top:10px}.membership-card{position:relative;padding:26px 30px 23px;max-width:525px;background:#e8e2d7;overflow:hidden;min-height:340px}.mem-top{display:flex;justify-content:space-between;font:7px var(--mono);letter-spacing:.8px;color:#777368}.mem-top b{color:var(--rust)}.mem-divider{height:1px;background:#cbc4b8;margin:14px 0 24px}.mem-label{font:6px var(--mono);letter-spacing:1px;color:var(--rust-dark)}.membership-card h3{font:clamp(38px,5vw,57px)/.95 var(--serif);font-weight:400;letter-spacing:-2px;margin:13px 0 16px}.membership-card h3 em{color:var(--rust)}.mem-price{display:flex;align-items:baseline;gap:9px}.mem-price>span{font:38px var(--sans);letter-spacing:-2px}.mem-price small{font-size:9px;color:#777368}.mem-price small i{font-style:normal}.membership-card>p{font-size:8px;color:#817d72;max-width:310px;line-height:1.7}.membership-card>a{position:absolute;left:30px;right:30px;bottom:22px;display:flex;justify-content:space-between;border-top:1px solid #c8c1b4;padding-top:12px;text-decoration:none;color:var(--ink);font-size:8px}.membership-card>a span{color:var(--rust);font-size:15px}.mem-mark{position:absolute;right:20px;bottom:50px;font:italic 92px/.8 var(--serif);color:#bc644e1e;pointer-events:none}.faq{padding-bottom:102px}.faq-top h2{font-size:57px;margin-top:38px}.faq-list{margin-top:-90px;margin-left:43%;border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;padding:16px 2px;font-size:9px;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--rust);font-size:16px;transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{max-width:440px;margin:0;padding:0 28px 16px 2px;font-size:8px;line-height:1.75;color:var(--muted)}.final-cta{display:grid;grid-template-columns:1.05fr .95fr;min-height:440px;background:#292a26;color:#f4f0e8}.final-photo{min-height:440px;overflow:hidden}.final-photo img{width:100%;height:100%;object-fit:cover;object-position:73% 50%;filter:saturate(.74);transition:transform 1s}.final-cta:hover .final-photo img{transform:scale(1.035)}.final-panel{padding:68px 12%;position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.final-panel .overline{color:#d9957b}.final-panel h2{font-size:61px}.final-panel h2 em{color:#dda08a}.final-panel>p{max-width:310px;color:#c5c1b7;font-size:9px;line-height:1.8;margin:15px 0 22px}.final-button{display:flex;justify-content:space-between;align-items:center;gap:28px;background:#f3f0e9;color:var(--ink);text-decoration:none;padding:13px 15px;min-width:205px;font-size:8px;transition:.2s}.final-button span{font-size:15px;color:var(--rust)}.final-button:hover{background:var(--rust);color:#fff}.final-button:hover span{color:#fff}.final-note{position:absolute;bottom:25px;right:32px;font:6px var(--mono);letter-spacing:.8px;color:#928e84}.footer{min-height:102px;display:grid;grid-template-columns:1fr 1.2fr 1fr auto;gap:20px;align-items:center;padding:18px max(44px,calc((100vw - 1220px)/2));background:var(--paper)}.footer .brand-symbol{font-size:34px}.footer .brand-name{font-size:10px}.footer-credit span,.footer-credit b{display:block}.footer-credit span,.footer-copy{font:6px var(--mono);letter-spacing:.6px;color:#898579}.footer-credit b{font:6px var(--mono);letter-spacing:.5px;color:#4f5048;margin-top:5px}.footer-contact{position:relative;color:#4b4c45;text-decoration:none;font:6px var(--mono);letter-spacing:.5px}.footer-contact span{color:var(--rust);font-size:13px;margin-left:6px}.footer-contact small{display:block;font:8px var(--sans);letter-spacing:0;margin-top:5px;color:#777368}.footer-copy{text-align:right}.booking-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}.booking-modal.open{opacity:1;visibility:visible}.modal-backdrop{position:absolute;inset:0;background:#1d1c19a8;backdrop-filter:blur(5px)}.modal-card{position:relative;width:min(420px,100%);background:var(--paper);padding:34px 33px 30px;transform:translateY(18px);transition:transform .3s}.booking-modal.open .modal-card{transform:translateY(0)}.modal-close{position:absolute;right:15px;top:11px;border:0;background:transparent;font-size:23px;color:#787368;cursor:pointer}.modal-card h2{font:43px/1 var(--serif);font-weight:400;margin:13px 0}.modal-card h2 em{color:var(--rust)}.modal-card>p{font-size:10px;line-height:1.7;color:#66645c}.modal-demo{padding:11px;background:#e8e3d9;color:#777267;font-size:8px;line-height:1.6;margin:16px 0}.modal-link{display:flex;justify-content:space-between;background:var(--ink);padding:13px;color:#fff;text-decoration:none;font-size:9px}.modal-link span{color:#efb29a;font-size:14px}.toast{position:fixed;z-index:110;left:50%;bottom:24px;transform:translate(-50%,20px);max-width:min(430px,calc(100% - 34px));padding:12px 15px;background:#292a26;color:#f6f0e7;font-size:9px;line-height:1.5;opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s cubic-bezier(.16,.65,.3,1)}[data-reveal].visible{opacity:1;transform:translateY(0)}
@keyframes marquee{to{transform:translateX(-50%)}}@keyframes heroArrive{from{transform:scale(1.055);opacity:.55}to{transform:scale(1);opacity:1}}@keyframes stampFloat{50%{translate:0 -9px;rotate:-4deg}}@keyframes cardRise{from{opacity:0;translate:0 15px}to{opacity:1;translate:0 0}}@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slowRotate{to{transform:rotate(348deg)}}
@media(max-width:900px){.wrap,.section-wrap{width:calc(100% - 48px)}.header{padding:0 24px}.nav{gap:16px}.hero{height:760px;min-height:0}.hero-card{right:24px;bottom:78px}.hero-stamp{right:7%;top:47%}.booking-board{grid-template-columns:1fr}.room-visual{min-height:460px}.booking-panel{padding:24px}.class-feature{grid-template-columns:1fr 1fr}.class-detail{padding:27px 7%}.schedule-top{gap:5%}.schedule-entry{grid-template-columns:63px 1fr 130px 74px;gap:10px}.schedule-entry .capacity{display:none}.membership-grid{gap:8%}.faq-list{margin-left:38%}.footer{padding:18px 24px;grid-template-columns:1fr 1.1fr 1fr}.footer-copy{display:none}}
@media(max-width:650px){.wrap,.section-wrap{width:calc(100% - 34px)}.header{height:68px;padding:0 17px}.brand-symbol{font-size:34px}.brand-name{font-size:10px}.nav{display:none;position:absolute;top:67px;left:0;right:0;padding:10px 17px 18px;background:var(--paper);color:var(--ink);flex-direction:column;gap:0;box-shadow:0 10px 20px #26231a17}.nav.open{display:flex}.nav a{padding:12px 2px;border-bottom:1px solid var(--line)}.nav-book{margin-left:auto;margin-right:10px;padding:9px;font-size:7px;gap:9px}.nav-book span{font-size:12px}.menu{width:30px;height:30px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid currentColor;background:transparent}.menu i{display:block;width:12px;height:1px;background:currentColor}.hero{height:calc(100svh - 0px);min-height:690px;max-height:860px}.hero-photo{object-position:63% center}.hero-shade{background:linear-gradient(90deg,#171914b3 0%,#1719145f 63%,#17191418),linear-gradient(0deg,#171914a3,transparent 38%,#17191429)}.hero-side{display:none}.hero-content{padding-top:68px}.hero-meta{font-size:5px;letter-spacing:.5px;padding-top:14px}.hero-meta span:last-child{display:none}.hero-title-block{padding-left:0;margin-top:auto;margin-bottom:auto}.pretitle{font-size:6px;margin-bottom:15px}.hero h1{font-size:clamp(67px,16vw,97px);margin-bottom:19px}.hero-lead{font-size:10px}.hero-cta{margin-top:20px}.hero-stamp{width:83px;height:83px;top:auto;right:22px;bottom:178px}.hero-stamp b{font-size:23px}.hero-stamp span{font-size:4px}.hero-card{right:17px;bottom:68px;width:175px;padding:12px}.hero-card>b{font-size:16px;margin:7px 0 9px}.hero-card>a{font-size:7px;padding-top:8px}.hero-bottom{font-size:5px;padding-bottom:13px}.hero-bottom>span:first-child{display:none}.ticker>div{gap:17px;padding:10px 0}.ticker span{font-size:6px}.section-mark{font-size:5px;letter-spacing:.5px}.section-mark span:last-child{text-align:right}.intro{padding-top:61px;padding-bottom:66px}.intro-grid{grid-template-columns:1fr;gap:20px;padding-top:33px}.intro-head h2,.map-heading h2,.class-heading h2,.schedule h2,.membership h2,.faq h2,.final-panel h2{font-size:46px}.hand-note{margin:23px 0 0 50%;font-size:12px}.intro-copy{padding-top:28px}.dropcap{font-size:21px}.intro-copy>p:not(.dropcap){font-size:9px}.intro-facts{gap:6px;margin-top:24px}.intro-facts b{font-size:21px}.intro-facts small{font-size:5px;letter-spacing:.2px}.studio-map{padding-bottom:65px}.map-heading{display:block;padding:28px 0 19px}.map-heading .overline{font-size:6px;margin-bottom:12px}.map-heading h2{font-size:39px}.map-heading>p{margin-top:13px;font-size:9px}.booking-board{display:flex;flex-direction:column}.room-visual{min-height:365px}.room-caption{top:11px;font-size:5px}.reformer-floor{inset:43px 3% 44px}.reformer{width:28%;height:26%}.reformer:before{height:30%;border-width:4px}.reformer>span{width:19px;height:19px;font-size:6px}.room-plants{font-size:25px}.room-door{height:33px;width:45px;font-size:5px}.room-label{font-size:6px;bottom:10px}.booking-panel{padding:18px 16px 15px}.booking-panel h3{font-size:29px;margin:17px 0 13px}.seat-selected{margin-bottom:14px}.select-row{margin-bottom:13px}.map-legend{gap:9px;flex-wrap:wrap;font-size:5px}.map-tip{margin-left:0;width:100%;padding-top:4px}.class-section{padding:63px 0}.class-heading{display:block;padding:29px 0 20px}.class-heading h2{font-size:45px}.class-heading>p{font-size:9px;margin-top:12px}.class-tabs{gap:17px}.class-tab{font-size:6px;padding:12px 0 10px}.class-tab span{margin-right:4px}.class-feature{grid-template-columns:1fr}.class-image{min-height:240px}.class-detail{padding:23px 20px 49px}.class-detail h3{font-size:48px;margin:15px 0 11px}.class-detail>p{min-height:0;font-size:9px}.class-tags{gap:4px;margin:13px 0 17px}.class-tags span{font-size:5px;padding:6px}.class-count{right:17px;bottom:16px}.schedule{padding-top:63px;padding-bottom:67px}.schedule-top{grid-template-columns:1fr;gap:18px;padding:30px 0 21px}.schedule h2{font-size:49px}.schedule-top>div>p{font-size:9px;margin-bottom:14px}.week-tabs{gap:5px}.week-tab{padding:8px;font-size:6px}.schedule-entry{grid-template-columns:48px 1fr 63px;gap:7px;padding:12px 2px}.schedule-entry>time{font-size:11px}.schedule-entry h3{font-size:8px}.schedule-entry p{font-size:6px}.schedule-entry .schedule-kind{display:none}.schedule-entry button{font-size:5px;padding:7px 4px}.schedule-demo{font-size:5px;line-height:1.5}.manifesto{min-height:230px}.manifesto-quote{font-size:75px}.manifesto p{font-size:39px}.manifesto>span{font-size:5px}.membership{padding-top:63px;padding-bottom:71px}.membership-grid{grid-template-columns:1fr;gap:25px;padding-top:30px}.membership h2{font-size:51px}.membership-copy{font-size:9px;margin:14px 0}.membership-switch{margin-top:19px}.membership-card{min-height:305px;padding:21px}.membership-card h3{font-size:46px}.mem-price>span{font-size:34px}.membership-card>a{left:21px;right:21px;bottom:18px}.faq{padding-bottom:69px}.faq-top h2{font-size:48px;margin-top:24px}.faq-list{margin:25px 0 0;border-top:1px solid var(--line)}.faq-list summary{font-size:8px;padding:14px 1px}.faq-list details p{font-size:7px}.final-cta{grid-template-columns:1fr}.final-photo{min-height:250px;height:250px}.final-panel{padding:38px 20px 62px;min-height:320px}.final-panel h2{font-size:54px}.final-panel>p{font-size:9px}.final-note{bottom:18px;right:20px;font-size:5px}.footer{grid-template-columns:1fr 1fr;padding:18px 17px;gap:15px}.footer-credit{text-align:right}.footer-credit span,.footer-credit b{font-size:5px}.footer-contact{font-size:5px}.footer-contact small{font-size:7px}.footer .brand-symbol{font-size:29px}.footer .brand-name{font-size:8px}.modal-card{padding:28px 22px 23px}.modal-card h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

.modal-open{overflow:hidden}

/* Coach lab: playful trainer paired with real, usable demo interactions. */
.coach-lab{scroll-margin-top:132px}
.coach-lab button:focus-visible,.coach-lab select:focus-visible{outline:2px solid var(--rust);outline-offset:3px}
.coach-lab{padding-top:116px;padding-bottom:112px}
.coach-grid{display:grid;grid-template-columns:minmax(280px,.76fr) minmax(0,1.24fr);gap:clamp(32px,6vw,86px);padding-top:34px;align-items:stretch}
.coach-card{position:relative;min-height:650px;overflow:hidden;background:#2b211b;color:#f5efe4}
.coach-card:after{content:"";position:absolute;inset:32% 0 0;background:linear-gradient(180deg,transparent 0%,#20191430 35%,#201914ef 78%);pointer-events:none}
.coach-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 9%;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.coach-card:hover>img{transform:scale(1.035)}
.coach-card-top{position:absolute;z-index:2;left:20px;right:20px;top:20px;display:flex;justify-content:space-between;font:8px var(--mono);letter-spacing:1px}
.coach-card-top>span:last-child{display:flex;align-items:center;gap:7px;color:#c9c2b7}
.coach-card-top i{width:6px;height:6px;border-radius:50%;background:#8fbd86;box-shadow:0 0 0 4px #8fbd8626}
.coach-quote{position:absolute;z-index:2;left:25px;right:25px;bottom:23px}
.coach-quote>span,.widget-kicker{font:7px var(--mono);letter-spacing:1px;color:#d69c7d}
.coach-quote p{max-width:330px;min-height:52px;font:clamp(19px,2.3vw,26px)/1.15 var(--serif);margin:10px 0 15px}
.coach-quote button{width:100%;display:flex;justify-content:space-between;align-items:center;border:0;border-top:1px solid #ffffff50;padding:12px 0 3px;background:transparent;color:#f5efe4;text-align:left;font:8px var(--sans);cursor:pointer}
.coach-quote button b{font-size:15px;color:#e1a88a}
.coach-tools{padding:10px 0}
.coach-tools h2{font:clamp(47px,6vw,75px)/.94 var(--serif);font-weight:400;letter-spacing:-2.7px;margin:13px 0 15px}
.coach-tools h2 em,.breath-widget h3 em,.progress-widget h3 em{color:var(--rust);font-weight:400}
.coach-intro{max-width:520px;font-size:11px;line-height:1.8;color:var(--muted);margin:0 0 24px}
.plan-builder{border:1px solid var(--line);padding:20px 21px;background:#f7f4ee}
.plan-label{font:7px var(--mono);letter-spacing:.9px;color:var(--muted);margin-bottom:12px}
.goal-options{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.goal-option{min-height:42px;padding:9px 8px;border:1px solid var(--line);background:transparent;color:var(--ink);font:8px var(--sans);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.goal-option:hover,.goal-option.active{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.plan-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:17px}
.plan-fields label{display:grid;gap:7px;font:7px var(--mono);letter-spacing:.7px;color:var(--muted)}
.plan-fields select{width:100%;min-width:0;border:1px solid var(--line);border-radius:0;background:var(--paper);padding:11px 10px;color:var(--ink);font:9px var(--sans)}
.build-plan{width:100%;display:flex;justify-content:space-between;align-items:center;margin-top:13px;border:0;padding:13px 14px;background:var(--rust-dark);color:#fff;font:9px var(--sans);cursor:pointer;transition:background .2s}
.build-plan:hover{background:var(--ink)}
.build-plan span{font-size:15px}
.plan-result{min-height:100px;margin-top:13px;padding:14px;background:#ece7dc;transition:background .25s}
.plan-result.ready{background:#e6ded0;animation:cardRise .35s ease both}
.plan-result>span{font:7px var(--mono);letter-spacing:.7px;color:var(--rust-dark)}
.plan-result h3{font:22px var(--serif);font-weight:400;margin:7px 0}
.plan-result p{font-size:8px;line-height:1.7;color:#67645c;margin:5px 0}
.plan-result p b{color:var(--ink);font-weight:700}
.plan-result a{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:10px;padding-top:9px;text-decoration:none;color:var(--ink);font-size:8px}
.plan-result a i{font-style:normal;color:var(--rust-dark);font-size:14px}
.coach-widgets{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:13px}
.breath-widget,.progress-widget{position:relative;min-height:238px;padding:17px;background:#e9e4d9}
.breath-widget h3,.progress-widget h3{font:27px/.98 var(--serif);font-weight:400;margin:12px 0}
.breath-ring{--progress:0%;width:62px;height:62px;display:grid;place-items:center;margin:13px auto 5px;border-radius:50%;background:conic-gradient(var(--rust) var(--progress),#d3cbbb var(--progress));position:relative}
.breath-ring:before{content:"";position:absolute;inset:4px;background:#e9e4d9;border-radius:50%}
.breath-ring span{position:relative;z-index:1;font:18px var(--serif)}
.breath-widget>p,.progress-widget>p{min-height:22px;margin:8px 0;font-size:8px;line-height:1.5;color:#716d62}
.widget-actions{display:flex;gap:6px}
.widget-actions button,.progress-widget>button:not(.progress-reset){flex:1;border:1px solid var(--ink);background:var(--ink);color:#fff;padding:9px 8px;font:8px var(--sans);cursor:pointer}
.widget-actions button+button{background:transparent;color:var(--ink)}
.widget-actions button:hover,.progress-widget>button:not(.progress-reset):hover{background:var(--rust-dark);border-color:var(--rust-dark);color:#fff}
.progress-count{display:flex;align-items:baseline;gap:8px;margin:16px 0 10px}
.progress-count b{font:43px/.9 var(--serif);font-weight:400}
.progress-count span{font:8px var(--mono);color:var(--muted)}
.progress-track{height:5px;background:#d1cabc}
.progress-track i{display:block;width:0;height:100%;background:var(--rust);transition:width .45s cubic-bezier(.2,.7,.2,1)}
.progress-widget>button:not(.progress-reset){width:100%;margin-top:5px}
.progress-widget>button:disabled{opacity:.65;cursor:default}
.progress-reset{display:block;margin:9px auto 0;border:0;background:transparent;color:#777368;font:7px var(--sans);text-decoration:underline;cursor:pointer}
@media(max-width:900px){.coach-grid{grid-template-columns:minmax(230px,.72fr) minmax(0,1.28fr);gap:28px}.coach-card{min-height:620px}.coach-tools h2{font-size:56px}.coach-widgets{grid-template-columns:1fr}.breath-widget,.progress-widget{min-height:220px}}
@media(max-width:650px){.coach-lab{padding-top:92px;padding-bottom:70px}.coach-grid{grid-template-columns:1fr;gap:27px;padding-top:26px}.coach-card{min-height:500px}.coach-card>img{object-position:50% 7%}.coach-quote{left:19px;right:19px;bottom:17px}.coach-quote p{font-size:21px;min-height:0}.coach-tools h2{font-size:48px}.coach-intro{font-size:9px}.plan-builder{padding:15px}.goal-options{grid-template-columns:1fr}.goal-option{min-height:37px;text-align:left}.plan-fields{gap:8px}.plan-fields select{padding:10px 7px;font-size:8px}.coach-widgets{grid-template-columns:1fr 1fr;gap:8px}.breath-widget,.progress-widget{min-height:230px;padding:12px}.breath-widget h3,.progress-widget h3{font-size:24px}.widget-kicker{font-size:6px;letter-spacing:.5px}.progress-count b{font-size:36px}.widget-actions button,.progress-widget>button:not(.progress-reset){font-size:7px;padding:9px 5px}}
@media(prefers-reduced-motion:reduce){.coach-card>img,.progress-track i{transition:none}}


.schedule-filters{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.schedule-filter{border:1px solid var(--line);border-radius:99px;background:transparent;color:#67645c;padding:7px 11px;font:7px var(--mono);letter-spacing:.4px;cursor:pointer;transition:background .18s,color .18s,border-color .18s}
.schedule-filter:hover,.schedule-filter.active{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.schedule-empty{margin:0;padding:24px 0;border-top:1px solid var(--line);color:var(--muted);font:10px var(--sans)}
.schedule-filter:focus-visible{outline:2px solid var(--rust);outline-offset:3px}
@media(max-width:650px){.schedule-filters{gap:5px;margin-top:10px}.schedule-filter{font-size:6px;padding:7px 9px}}

.plan-result p small{display:block;margin:7px 0;color:#615e55;font-size:8px;line-height:1.65}
