@font-face{font-family:hankenGrotesk;src:url(../media/hanken_grotesk_latin_ext-s.p.23qn2_caajicl.woff2)format("woff2");font-display:swap;font-weight:400 800}@font-face{font-family:hankenGrotesk Fallback;src:local(Arial);ascent-override:100.0%;descent-override:30.3%;line-gap-override:0.0%;size-adjust:100.0%}.hankengrotesk_3b8a0734-module__1j5Pxa__className{font-family:hankenGrotesk,hankenGrotesk Fallback}.hankengrotesk_3b8a0734-module__1j5Pxa__variable{--font-hanken-grotesk:"hankenGrotesk", "hankenGrotesk Fallback"}
@font-face{font-family:instrumentSerif;src:url(../media/instrument_serif_latin_ext-s.p.0ordxpm0gxgw8.woff2)format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:instrumentSerif;src:url(../media/instrument_serif_latin_ext_italic-s.p.30flr4oxtjagu.woff2)format("woff2");font-display:swap;font-weight:400;font-style:italic}@font-face{font-family:instrumentSerif Fallback;src:local(Arial);ascent-override:99.0%;descent-override:31.0%;line-gap-override:0.0%;size-adjust:100.0%}.instrumentserif_8871f3bf-module__HFpZHq__className{font-family:instrumentSerif,instrumentSerif Fallback}.instrumentserif_8871f3bf-module__HFpZHq__variable{--font-instrument-serif:"instrumentSerif", "instrumentSerif Fallback"}
:root{--night:#18233d;--sky:#a8d8f0;--mist:#e8f4f8;--ivory:#faf7f2;--mauve:#8b7aa8;--focus:#5e4c70;--guardian-notice:#675375;--surface-floating:#faf7f2e8;--surface-card:#fffdf9;--surface-night-tint:#faf7f20d;--line-night-muted:#e8f4f833;--text-night-muted:#e8f4f8cc;--text-night-subtle:#e8f4f8c7;--text-night-note:#e8f4f8d1;--guardian-surface:#8b7aa812;--soft:#4b5a74;--line:#bfd6e0;--serif:var(--font-instrument-serif), Georgia, serif;--sans:var(--font-hanken-grotesk), system-ui, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ivory)}body{background:var(--ivory);color:var(--night);font-family:var(--sans);margin:0;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.landing{overflow-x:clip}.wrap{width:min(1120px,100% - 40px);margin-inline:auto}.skip-link{z-index:200;background:var(--night);color:var(--ivory);padding:.75rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus-visible{top:1rem}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.floating-nav{z-index:50;border:1px solid var(--line);background:var(--surface-floating);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;align-items:center;gap:clamp(10px,2vw,28px);width:min(1120px,100% - 24px);padding:8px 9px 8px 17px;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%);box-shadow:0 12px 30px -18px #18233d66}.brand{align-items:center;gap:9px;min-height:44px;margin-right:auto;display:inline-flex}.brand b,.brand small{line-height:1;display:block}.brand b{letter-spacing:.08em;text-transform:uppercase;font-size:18px}.brand small{color:var(--soft);letter-spacing:.15em;text-transform:uppercase;margin-top:4px;font-size:8px;font-weight:700}.continuity-mark{fill:none;width:30px;height:28px;stroke:var(--mauve);stroke-linecap:round;stroke-linejoin:round;stroke-width:13px;overflow:visible}.nav-links{gap:clamp(12px,2vw,26px);display:flex}.nav-links a{min-height:44px;color:var(--soft);align-items:center;font-size:14px;font-weight:700;display:inline-flex}.nav-links a:hover,.quiet-link:hover{color:var(--mauve)}.reserve-button{border:1px solid var(--night);background:var(--night);min-height:44px;color:var(--ivory);cursor:pointer;touch-action:manipulation;border-radius:999px;justify-content:center;align-items:center;gap:9px;padding:11px 18px;font-size:14px;font-weight:750;transition:background-color .18s,color .18s,transform .18s;display:inline-flex}.reserve-button:hover{background:var(--mauve);border-color:var(--mauve);transform:translateY(-2px)}.mobile-nav-toggle,.mobile-nav-menu{display:none}.hero{background:var(--mist);grid-template-columns:1fr 1fr;min-height:min(830px,100svh);padding:110px max(20px,50vw - 560px) 54px;display:grid}.hero-copy{align-self:center;max-width:590px;padding-right:clamp(26px,5vw,72px)}.eyebrow{color:var(--night);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}h1,h2{letter-spacing:-.045em;text-wrap:balance;margin:16px 0 0;font-size:clamp(40px,6vw,76px);font-weight:760;line-height:.98}h1 em,h2 em{color:var(--mauve);font-family:var(--serif);font-weight:400}.hero-lede,.body-copy{max-width:47ch;color:var(--soft);font-size:clamp(17px,2vw,21px)}.hero-actions{flex-wrap:wrap;align-items:center;gap:20px;margin-top:30px;display:flex}.quiet-link{color:var(--night);font-weight:750;transition:color .18s}.provisional-notice{color:var(--soft);margin:28px 0 0;font-size:13px}.hero-media{background:var(--sky);border-radius:48% 48% 0;align-self:stretch;min-height:430px;position:relative;overflow:hidden}.hero-media img{object-fit:cover;width:100%;height:100%}.hero-media .continuity-mark{z-index:1;width:58%;height:42%;stroke:var(--sky);stroke-width:11px;position:absolute;top:8%;left:-8%}.section{padding:clamp(72px,10vw,132px) 0;scroll-margin-top:86px}.heading{max-width:46rem}.heading h2{font-size:clamp(34px,5vw,58px)}.heading>p:last-child{color:var(--soft);font-size:17px}.split{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(32px,8vw,120px);display:grid}.focus-points{gap:12px;margin:28px 0 0;padding:0;font-weight:720;list-style:none;display:grid}.focus-points li{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:0 0 12px;display:flex}.focus-points li:before{border:3px solid var(--mauve);content:"";border-radius:50%;width:10px;height:10px}.classes-section,.prices{background:var(--night);color:var(--ivory)}.classes-section .eyebrow,.prices .eyebrow{color:var(--sky)}.classes-section .heading>p:last-child,.schedule-heading p,.schedule>p{color:var(--text-night-muted)}.schedule{margin-top:clamp(36px,5vw,58px);scroll-margin-top:90px}.schedule-heading{justify-content:space-between;align-items:end;gap:20px;display:flex}.schedule-heading h3{margin:0;font-size:clamp(23px,3vw,30px)}.schedule-heading p,.schedule>p{margin:0;font-size:14px}.schedule ul{flex-direction:column;gap:9px;margin:20px 0 0;padding:0;list-style:none;display:flex}.schedule li{border:1px solid var(--line-night-muted);background:var(--surface-night-tint);border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:17px 20px;transition:border-color .18s,transform .18s;display:grid}.schedule li:hover{border-color:var(--sky);transform:translate(4px)}.schedule li>b{font-variant-numeric:tabular-nums;font-size:22px}.schedule li span{flex-direction:column;min-width:0;display:flex}.schedule li small{color:var(--text-night-subtle)}.schedule li i{color:var(--sky);border:1px solid #e8f4f855;border-radius:999px;padding:5px 10px;font-size:12px;font-style:normal}.movement-section{background:var(--night)}.movement-stage{place-items:end start;min-height:100svh;display:grid;position:relative;overflow:hidden}.movement-media{background:var(--sky);border-radius:42% 0 42% 42%;position:absolute;inset:clamp(16px,3vw,48px);overflow:hidden}.movement-media:before{z-index:1;border:clamp(6px, 1vw, 12px) solid var(--mauve);content:"";opacity:.9;border-bottom:0;border-radius:60% 60% 0 0;width:34%;height:48%;position:absolute;top:8%;left:7%}.movement-media img,.movement-media video{object-fit:cover;width:100%;height:100%;display:block}.movement-copy{z-index:2;width:100%;color:var(--ivory);pointer-events:none;padding-bottom:clamp(44px,8vh,96px);position:relative}.movement-copy .eyebrow{color:var(--sky)}.movement-copy .heading>p:last-child{max-width:48ch;color:var(--text-night-muted)}.movement-copy .heading{max-width:min(38rem,88%)}.movement-copy h2{text-wrap:pretty;max-width:12ch}.movement-media:after{z-index:1;content:"";pointer-events:none;background:linear-gradient(#18233d00 48%,#18233dd9 76%,#18233df2 100%),linear-gradient(90deg,#18233dc7 0%,#18233d59 48%,#18233d0d 100%);position:absolute;inset:0}.movement-video{opacity:0;transition:opacity .32s ease-out;position:absolute;inset:0}.movement-video.is-ready{opacity:1}.teacher-grid{grid-template-columns:1fr 1fr;gap:20px;margin-top:46px;display:grid}.teacher-grid article{border:1px solid var(--line);background:var(--surface-card);border-radius:24px;overflow:hidden}.teacher-media{aspect-ratio:4/5;background:var(--mist);overflow:hidden}.teacher-media img{object-fit:cover;object-position:center top;width:100%;height:100%;display:block}.teacher-grid article>div:last-child{padding:22px 24px 28px}.teacher-grid h3{margin:0 9px 0 0;font-size:24px;display:inline}.teacher-grid small{color:var(--night);letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:800}.teacher-grid p,.image-disclaimer{color:var(--soft)}.image-disclaimer{margin-top:17px;font-size:13px}.price-grid{grid-template-columns:1fr 1fr;gap:18px;margin-top:44px;display:grid}.price-box{border:1px solid var(--line-night-muted);background:var(--surface-night-tint);border-radius:20px;padding:26px}.price-box h3{color:var(--sky);letter-spacing:.13em;text-transform:uppercase;margin:0 0 14px;font-size:14px}.price-box p{border-bottom:1px solid #e8f4f821;justify-content:space-between;gap:15px;margin:0;padding:12px 0;display:flex}.price-box p:last-child{border:0}.price-box strong{font-variant-numeric:tabular-nums}.pricing-note{max-width:62ch;color:var(--text-night-note)}.narrow{width:min(800px,100% - 40px)}.faq-list{flex-direction:column;gap:10px;margin-top:35px;display:flex}.faq-list details{border:1px solid var(--line);background:var(--surface-card);border-radius:16px}.faq-list summary{cursor:pointer;justify-content:space-between;gap:15px;padding:19px 21px;font-size:17px;font-weight:750;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--mauve)}.faq-list details[open] summary span{transform:rotate(180deg)}.faq-list details p{color:var(--soft);margin:0;padding:0 21px 20px}.final-cta{padding:0 0 clamp(72px,10vw,120px)}.final-cta .wrap{background:var(--sky);border-radius:30px;padding:clamp(42px,7vw,80px)}.final-cta h2{max-width:18ch;font-size:clamp(34px,5vw,58px)}.final-cta p:not(.eyebrow){max-width:55ch;color:var(--soft)}.final-cta .eyebrow{color:var(--night)}footer{border-top:1px solid var(--line);background:var(--mist);padding:56px 0 34px}.footer-grid{grid-template-columns:1.5fr 1fr 1.2fr;gap:28px;display:grid}.footer-grid h3{letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:13px}.footer-grid p{color:var(--soft)}.footer-bottom{border-top:1px solid var(--line);color:var(--soft);justify-content:space-between;gap:16px;margin-top:36px;padding-top:23px;font-size:13px;display:flex}.modal-layer{z-index:100;overscroll-behavior:contain;justify-content:center;align-items:flex-start;padding:clamp(10px,4vw,40px);display:flex;position:fixed;inset:0;overflow:auto}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#18233d99;border:0;position:fixed;inset:0}.reservation-modal{border:1px solid var(--line);background:var(--ivory);overscroll-behavior:contain;border-radius:24px;width:min(560px,100%);max-height:calc(100dvh - 20px);margin:auto;padding:clamp(22px,4vw,36px);position:relative;overflow-y:auto;box-shadow:0 40px 90px -30px #18233db3}.modal-close{border:1px solid var(--line);background:var(--surface-card);width:44px;height:44px;color:var(--night);cursor:pointer;border-radius:50%;font-size:25px;position:absolute;top:16px;right:16px}.reservation-modal h3{margin:0 42px 6px 0;font-size:24px}.modal-intro,.form-note{color:var(--soft)}.reservation-modal form{flex-direction:column;gap:16px;display:flex}.reservation-modal label{flex-direction:column;gap:7px;font-size:14px;font-weight:650;display:flex}.reservation-modal input:not([type=checkbox]),.reservation-modal select,.reservation-modal textarea{border:1px solid var(--line);width:100%;color:var(--night);background:#fffdf9;border-radius:12px;padding:12px 14px}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.guardian-fields{border:1px dashed var(--mauve);background:var(--guardian-surface);border-radius:14px;flex-direction:column;gap:16px;padding:16px;display:flex}.guardian-fields strong{color:var(--guardian-notice);font-size:13px}.privacy{color:var(--soft);align-items:flex-start;flex-direction:row!important;font-weight:400!important}.privacy input{width:19px;height:19px;accent-color:var(--mauve);margin-top:2px}.submission-success{text-align:center;padding:14px 0 6px}.success-icon{background:var(--sky);width:66px;height:66px;color:var(--night);border-radius:50%;place-items:center;margin:0 auto 20px;font-size:32px;font-weight:800;display:grid}.submission-success p{color:var(--soft)}@media (max-width:800px){.nav-links{display:none}.floating-nav{gap:7px;padding-left:14px}.mobile-nav-toggle{border:1px solid var(--line);background:var(--ivory);min-width:44px;min-height:44px;color:var(--night);cursor:pointer;touch-action:manipulation;border-radius:999px;justify-content:center;align-items:center;gap:5px;display:inline-flex}.mobile-nav-menu{border:1px solid var(--line);background:var(--ivory);border-radius:20px;gap:4px;padding:8px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 12px 30px -18px #18233d66}.mobile-nav-menu[hidden]{display:none}.mobile-nav-menu a{border-radius:12px;min-height:44px;padding:10px 14px;font-weight:700}.hero{grid-template-columns:1fr;min-height:auto;padding:106px 20px 0}.hero-copy{padding:0 0 42px}.hero-media{border-radius:38% 38% 0 0;min-height:330px;margin:0 -20px}.split,.teacher-grid,.price-grid,.footer-grid{grid-template-columns:1fr}.split{gap:34px}.section{padding:76px 0}.movement-section{padding:28px 0 76px}.movement-stage{min-height:0;display:block;overflow:visible}.movement-media{aspect-ratio:3/4;width:min(1120px,100% - 40px);margin:0 auto 26px;position:relative;inset:auto}.movement-media:after{display:none}.movement-copy{padding-bottom:0;position:static}.movement-copy .heading{max-width:100%}.schedule-heading{flex-direction:column;align-items:start}.schedule li{grid-template-columns:auto 1fr}.schedule li i{grid-column:2;justify-self:start}.form-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.teacher-grid{margin-top:34px}}@media (max-width:480px){.floating-nav .reserve-button{padding:10px 11px;font-size:12px}.mobile-nav-toggle span:last-child{display:none}.brand b{font-size:16px}.hero h1{font-size:44px}.schedule li{padding:14px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
