@font-face{font-family:Montserrat;src:url(/assets/fonts/montserrat-400.woff)format("woff");font-weight:400;font-display:swap}@font-face{font-family:Montserrat;src:url(/assets/fonts/montserrat-600.woff)format("woff");font-weight:600;font-display:swap}@font-face{font-family:Montserrat;src:url(/assets/fonts/montserrat-800.woff)format("woff");font-weight:800;font-display:swap}@font-face{font-family:Montserrat;src:url(/assets/fonts/montserrat-900.woff)format("woff");font-weight:900;font-display:swap}@font-face{font-family:BankGothic;src:url(/assets/fonts/bank-gothic.ttf)format("truetype");font-display:swap}:root{color-scheme:dark;--background:#101010;--surface:#171417;--text:#fff;--muted:#c0bbc2;--accent:#ad78c5;--brand:#78418e;--button:#78418e;--button-hover:#8b50a3;--line:#686268;--inset:5.55vw;--rail:65px;--header:85px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header)}body{padding-right:var(--rail);background:var(--background);color:var(--text);margin:0;font:400 16px/1.6 Montserrat,Arial,sans-serif}body:has(dialog[open]),body.menu-open{overflow:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0}button,a,select,textarea{border-radius:0}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button:disabled{cursor:wait}button,a,summary,select,textarea{outline-offset:5px}:focus-visible{outline:2px solid var(--accent)}[hidden]{display:none!important}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:900;line-height:1}h2{letter-spacing:.015em;font-size:6.5vw}h3{letter-spacing:.01em}p{color:var(--muted)}.text-accent{color:var(--accent)}.section{width:100%;padding:6vw var(--inset);margin:0}.section-intro{max-width:850px;margin-top:25px;font-size:clamp(14px,1.25vw,24px);line-height:1.8}.eyebrow{letter-spacing:.12em;color:var(--muted);font-size:12px;font-weight:600}.button{white-space:nowrap;justify-content:center;align-items:center;gap:30px;min-height:56px;padding:15px 24px;font-size:15px;font-weight:800;transition:background .2s;display:inline-flex}.button span,.text-link span{font-family:Arial,sans-serif;font-size:24px;line-height:1}.button-primary{background:var(--button);color:#fff}.button-primary:hover{background:var(--button-hover)}.button-outline{border:1px solid var(--line);background:0 0}.button-outline:hover{background:var(--surface)}.text-link{background:0 0;border-bottom:1px solid;justify-content:space-between;align-items:center;gap:25px;padding:9px 0;font-size:14px;font-weight:600;transition:color .2s;display:inline-flex}.text-link:hover{color:var(--accent)}.skip-link{background:var(--button);z-index:30;padding:10px;position:fixed;top:8px;left:8px;transform:translateY(-200%)}.skip-link:focus{transform:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.header{height:var(--header);background:var(--background);z-index:10;align-items:center;gap:2.5vw;padding:0 25px;display:flex;position:sticky;top:0}.brand{flex-shrink:0;align-items:center;gap:12px;display:inline-flex}.brand img{object-fit:contain;width:43px;height:46px}.brand>span{letter-spacing:.1em;font-family:BankGothic,Montserrat,sans-serif;font-size:26px;line-height:1}.brand small{letter-spacing:.16em;margin-top:7px;font:600 8px/1.5 Montserrat,sans-serif;display:block}.header .brand>span{text-align:center;flex-direction:column;justify-content:center;align-items:center;line-height:.85;display:flex}.header .brand small{white-space:nowrap;margin-top:5px;line-height:1}.desktop-nav{align-items:center;gap:2vw;margin-left:auto;display:flex}.desktop-nav a{white-space:nowrap;font-size:clamp(10px,1vw,19px);font-weight:400}.desktop-nav a:hover{color:var(--accent)}.header-city{font-size:clamp(11px,1vw,19px);font-weight:800}.menu-toggle{width:var(--rail);height:var(--header);background:var(--background);z-index:23;border-left:1px solid var(--line);padding:0 17px;position:fixed;top:0;right:0}.menu-toggle span{background:var(--text);height:1px;margin:8px 0;transition:transform .2s;display:block}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4.5px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4.5px)rotate(-45deg)}.side-rail{height:100dvh;width:var(--rail);border-left:1px solid var(--line);background:var(--background);z-index:22;padding-top:var(--header);flex-direction:column;align-items:stretch;display:flex;position:fixed;top:0;right:0}.rail-vk{place-items:center;height:55px;font-size:18px;font-weight:600;display:grid}.rail-vk:hover{color:var(--accent)}.rail-booking{writing-mode:vertical-rl;border-bottom:1px solid var(--line);letter-spacing:.015em;background:0 0;place-items:center;height:29vh;min-height:200px;margin-top:auto;font-size:26px;font-weight:400;display:grid;transform:rotate(180deg)}.rail-booking:hover{background:var(--brand)}.menu-backdrop{z-index:20;background:#0000008c;position:fixed;inset:0}.mobile-menu{top:0;right:var(--rail);background:var(--background);border-left:1px solid var(--line);z-index:21;width:min(570px,45vw);padding:30px;position:fixed;bottom:0;overflow-y:auto}.mobile-menu a{text-transform:uppercase;padding:5px 0;font-size:clamp(22px,2vw,36px);font-weight:900;line-height:1.3;display:block}.mobile-menu a:hover{color:var(--accent)}.mobile-menu a:last-child{margin-top:45px;font-size:18px;font-weight:600}.hero{width:100%;height:50vw;max-height:calc(100dvh - var(--header));border-bottom:1px solid var(--line);grid-template-columns:5fr 7fr;min-height:480px;display:grid;overflow:hidden}.hero-photo{min-width:0;position:relative;overflow:hidden}.hero-photo>video{object-fit:cover;object-position:50% 42%;width:100%;height:100%;position:absolute}.hero-tag{letter-spacing:.01em;background:#9b63b3;padding:2vw 1vw;font-size:3vw;font-weight:900;line-height:1.2;position:absolute;bottom:0;left:0}.hero-tag>span{color:#101010}.hero-content{grid-template-rows:auto minmax(0,1fr);min-width:0;display:grid}.hero h1{pointer-events:none;letter-spacing:.005em;z-index:1;margin-top:-.4vw;padding:0 1.4vw .25vw;font-size:7vw;font-weight:900;line-height:.95}.hero h1>span{white-space:nowrap;display:block}.hero h1 b{color:#9b63b3;font-weight:900}.hero-media{min-height:0;display:block;position:relative;overflow:hidden}.hero-media video{object-fit:cover;object-position:50% 50%;width:100%;height:100%}.video-toggle{z-index:2;color:#fff;cursor:pointer;text-align:right;background:0 0;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.video-toggle:focus-visible{outline-offset:-5px;outline:3px solid #fff}.hero-tag{pointer-events:none;z-index:1}.locations{padding:0;position:relative}.location-grid{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.location-grid article{text-align:center;border-right:1px solid var(--line);flex-direction:column;align-items:center;padding:5vw 1.5vw 3vw;display:flex;position:relative;overflow:hidden}.location-grid article:last-child{border-right:0}.studio-phone{white-space:nowrap;font-size:1.5vw;font-weight:800}.studio-phone:hover{color:var(--accent)}.location-area{text-transform:uppercase;color:var(--muted);margin:3vw 0 1vw;font-size:1vw}.location-grid h3{color:var(--accent);margin:0 0 2vw;font-size:1.75vw}.location-grid p{text-transform:uppercase;min-height:3.6em;font-size:1vw;line-height:1.8}.location-grid .text-link{margin-top:25px;font-size:12px}.facts{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);padding:4vw 0;display:grid}.facts>div{text-align:center;padding:0 1vw}.facts strong{font-size:6vw;font-weight:900;line-height:1.1}.facts strong span{color:var(--brand)}.facts p{text-transform:uppercase;margin-top:12px;font-size:1.1vw;line-height:1.7}.classes{padding:0}.classes>h2,.classes>.section-intro{padding-left:var(--inset);padding-right:var(--inset)}.classes>h2{padding-top:6vw}.classes>.section-intro{max-width:1000px;margin-bottom:4vw}.class-tabs{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.class-tabs button{text-align:left;padding:2.3vw var(--inset);border:1px solid var(--line);text-transform:uppercase;background:0 0;border-left:0;justify-content:space-between;align-items:flex-start;gap:15px;font-size:clamp(17px,1.9vw,36px);font-weight:900;line-height:1.1;display:flex}.class-tabs button:last-child{border-right:0}.class-tabs button[aria-selected=true]{background:var(--brand);border-color:var(--brand)}.class-tabs button:not([aria-selected=true]):hover{background:var(--surface)}.class-tab-label{flex-direction:column;gap:.45vw;display:flex}.class-tab-label small{letter-spacing:.06em;color:var(--muted);font-size:.48em;font-weight:600}.class-tabs button[aria-selected=true] .class-tab-label small{color:#fff}.class-panel{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.class-image{min-height:min(40vw,800px);overflow:hidden}.class-image img{object-fit:cover;object-position:50% 53%;width:100%;height:100%}.class-image-teens img{object-position:50% 50%}.class-copy{flex-direction:column;justify-content:center;align-items:flex-start;padding:4vw;display:flex}.class-copy h3{margin:2vw 0;font-size:3.5vw;line-height:1.05}.class-copy p{max-width:750px;font-size:clamp(13px,1.1vw,21px);line-height:1.85}.class-copy .text-link{margin-top:1vw;font-size:clamp(12px,1vw,19px)}.family{padding:0}.family>h2{padding:6vw var(--inset) 0;font-size:6.5vw}.family>.section-intro{margin:25px var(--inset) 4vw}.family-grid{grid-template-columns:1fr 1fr;gap:0;display:grid}.family-main{grid-column:1/-1}.stage-slider{aspect-ratio:1.6;background:#101010;width:100%;max-height:90vh;position:relative;overflow:hidden}.stage-slider img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .8s;position:absolute;inset:0}.stage-slider img.is-active{opacity:1}.stage-dots{justify-content:center;gap:10px;padding:16px 0 0;display:flex}.stage-dots button{cursor:pointer;background:0 0;border:1px solid #fff;border-radius:50%;width:10px;height:10px;padding:0}.stage-dots button[aria-current=true]{background:#9b63b3;border-color:#9b63b3}@media (prefers-reduced-motion:reduce){.stage-slider img{transition:none}}.family-grid figcaption{padding:2.5vw var(--inset);border-bottom:1px solid var(--line)}.family-grid figcaption h3{font-size:2vw}.family-grid figcaption p{margin-top:12px;font-size:clamp(13px,1.1vw,21px)}.family-awards{border-right:1px solid var(--line)}.family-awards img{aspect-ratio:1;object-fit:cover;width:100%}.family-awards figcaption{border-bottom:0;padding:2.5vw 3vw}.family-note{flex-direction:column;justify-content:center;align-items:flex-start;padding:3vw 4vw;display:flex}.family-note>img{width:7vw;height:7.3vw;margin-bottom:2vw}.family-note h3{font-size:3vw;line-height:1.1}.family-note p{max-width:650px;margin:2vw 0;font-size:clamp(13px,1.1vw,21px)}.family-note a{font-size:clamp(13px,1vw,19px)}.founder{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:5fr 7fr;display:grid}.founder-photo{min-height:49vw;position:relative}.founder-photo img{object-fit:cover;object-position:50% 35%;width:100%;height:100%;position:absolute;inset:0}.founder-copy{padding:5vw}.founder-copy h2{margin:2vw 0;font-size:5vw}.founder-role{text-transform:uppercase;font-size:1vw}.founder-copy blockquote{margin:3vw 0 2vw;font-size:2vw;font-weight:600;line-height:1.5}.founder-copy>p:last-child{font-size:clamp(13px,1.1vw,21px);line-height:1.85}.questions{padding:6vw var(--inset);grid-template-columns:1fr 1.1fr;gap:4vw;display:grid}.questions h2{font-size:3.8vw}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-size:clamp(13px,1.1vw,21px);font-weight:600;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary span{color:var(--accent);font-size:27px;font-weight:400;line-height:1}details[open] summary span{transform:rotate(45deg)}details p{padding:0 25px 24px 0;font-size:clamp(13px,1vw,19px);line-height:1.9}details p a{color:var(--text);text-decoration:underline}.contact{color:#101010;--accent:#78418e;color-scheme:light;background:#fff;grid-template-columns:1fr 1fr;gap:0;padding:8vw 0;display:grid}.contact-title-grid{background-image:linear-gradient(90deg,#0000 calc(100% - 1px),#c8c8c8 1px),linear-gradient(#0000 calc(100% - 1px),#c8c8c8 1px);background-size:8vw 8vw;place-items:center;margin:0 4vw;display:grid}.contact h2{text-align:center;color:var(--brand);padding:3vw 0;font-size:5vw;line-height:1.3}.contact-form{flex-direction:column;justify-content:center;padding:0 5vw 0 3vw;display:flex}.contact-form>p:first-child{color:#404040;margin-bottom:25px;font-size:1vw;font-weight:600}.contact-form label{letter-spacing:.04em;color:#555;margin-top:15px;font-size:11px}.contact-form select{color:#212529;letter-spacing:.01em;background:0 0;border:0;border-bottom:1px solid #999;height:auto;min-height:52px;padding:12px 0;font-size:1.5vw}.contact-form .contact-hint{color:#555;margin:24px 0;font-size:12px}.contact-form .button{width:100%;min-height:55px;padding:12px;font-size:1.5vw}.contact-phone{text-align:center;color:#212529;margin-top:20px;font-size:1.3vw;font-weight:600}.studio-description{padding:4vw 25px}.studio-description p{color:var(--text);font-size:1.1vw;line-height:1.8}.studio-description p+p{margin-top:2vw}.footer-nav{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.footer-nav a{border-bottom:1px solid var(--line);padding:3vw;font-size:3.2vw;font-weight:900;line-height:1.2}.footer-nav a:nth-child(odd){border-right:1px solid var(--line)}.footer-nav a:hover{background:var(--brand)}.footer{color:#101010;background:#fff;justify-content:space-between;align-items:center;gap:35px;padding:4vw 25px;display:flex}.footer .brand img{filter:invert()}.footer p{color:#333;font-size:12px;line-height:1.8}.footer .legal{text-align:right}dialog{border:1px solid var(--line);background:var(--background);width:min(620px,100% - 32px);max-height:calc(100dvh - 32px);color:var(--text);overscroll-behavior:contain;padding:40px}dialog::backdrop{background:#0a080cd9}.dialog-close{width:44px;height:44px;color:var(--muted);background:0 0;font-size:32px;position:absolute;top:12px;right:16px}.booking-intro h2{letter-spacing:-.02em;margin:17px 0;font-size:42px}.booking-intro>p:last-child{max-width:420px;font-size:13px}#booking-form{margin-top:22px}#booking-form label{margin:15px 0 7px;font-size:12px;display:block}select,textarea{background:var(--surface);width:100%;color:var(--text);border:1px solid #746779;padding:11px 12px;font-size:13px;line-height:1.7}select{height:46px}textarea{resize:vertical;min-height:115px}select:focus,textarea:focus{border-color:var(--accent)}.booking-actions{grid-template-columns:1.2fr 1fr;gap:10px;margin-top:22px;display:grid}.booking-actions .button{gap:12px;padding:14px 16px;font-size:12px}.booking-phone{font-size:12px}.booking-phone a{color:var(--text);text-decoration:underline}.copy-status{min-height:24px;color:var(--accent);margin:9px 0;font-size:12px}@media (prefers-reduced-motion:no-preference){.reveal.is-pending{opacity:0;transform:translateY(15px)}.reveal{transition:opacity .45s,transform .45s}}@media (width<=1100px) and (width>=768px){.header{gap:20px;padding:0 20px}.brand>span{font-size:20px}.brand img{width:35px;height:40px}.desktop-nav{gap:18px}.desktop-nav a,.header-city{font-size:10px}.hero{min-height:420px}.location-grid h3{font-size:1.65vw}.location-grid p,.location-area{font-size:11px}.studio-phone{font-size:1.4vw}.facts p{font-size:11px}.founder-copy .eyebrow{font-size:10px}.founder-role{font-size:11px}.footer p{font-size:10px}.footer{gap:20px}.contact-form>p:first-child{font-size:11px}.contact-form select,.contact-form .button,.contact-phone{font-size:16px}}@media (width<=767px){:root{--inset:24px;--rail:0px;--header:82px}.header{gap:15px;padding:0 24px}.brand>span{font-size:23px}.brand img{width:39px;height:42px}.brand small{font-size:7px}.desktop-nav,.header-city,.side-rail{display:none}.menu-toggle{border:0;width:65px;height:82px;padding:0 18px;position:fixed;right:8px}.mobile-menu{border:0;width:100%;padding:25px 24px 35px;top:82px;right:0}.mobile-menu a{padding:8px 0;font-size:26px}.mobile-menu a:last-child{font-size:17px}.menu-backdrop{top:82px}.hero{flex-direction:column;height:auto;min-height:0;max-height:none;display:flex}.hero-content{order:0;display:block;position:relative}.hero h1{letter-spacing:.02em;text-shadow:0 1px 12px #00000059;margin:0;padding:0;font-size:6vw;line-height:.95;position:absolute;top:24px;left:24px}.hero h1 b{color:#c198d3}.hero-media{aspect-ratio:16/9;height:auto}.hero-media:after{content:"";pointer-events:none;background:linear-gradient(110deg,#00000085,#0000 60%);position:absolute;inset:0}.hero-media video{object-position:50% 50%;position:absolute;inset:0}.hero-photo{aspect-ratio:16/9;order:1}.hero-photo>video{object-position:50% 32%}.hero-tag{padding:2vw 1vw;font-size:3vw}.location-grid{grid-template-columns:1fr}.location-grid article{border:0;border-bottom:1px solid var(--line);padding:10vw 24px}.location-grid article:last-child{border-bottom:0}.studio-phone{font-size:16px}.location-area{margin:8vw 0 12px;font-size:11px}.location-grid h3{margin:0 0 6vw;font-size:6vw}.location-grid p{min-height:0;font-size:12px}.location-grid .text-link{margin-top:22px;font-size:12px}.facts{padding:35px 0}.facts strong{font-size:9vw}.facts p{margin-top:10px;font-size:9px}.section{padding:50px 24px}h2{letter-spacing:0;font-size:10vw}.section-intro{margin-top:22px;font-size:14px}.classes{padding:0}.classes>h2{padding-top:50px}.classes>.section-intro{margin-bottom:30px}.class-tabs button{gap:8px;padding:20px 16px;font-size:clamp(11px,2.8vw,18px)}.class-tabs button>span[aria-hidden]{display:none}.class-tab-label{gap:5px}.class-tab-label small{font-size:.72em}.class-panel{grid-template-columns:1fr}.class-image{height:95vw;min-height:0;max-height:560px}.class-copy{padding:35px 24px}.class-copy h3{margin:22px 0;font-size:8vw}.class-copy p{font-size:13px}.class-copy .text-link{margin-top:0;font-size:12px}.family{padding:0}.family>h2{padding:50px 24px 0;font-size:8.5vw}.family>.section-intro{margin:24px 24px 30px}.family-grid{grid-template-columns:1fr}.family-main{grid-column:auto}.family-grid figcaption{padding:25px 24px}.family-grid figcaption h3{font-size:20px}.family-grid figcaption p{font-size:13px}.family-awards{border-right:0}.family-awards figcaption{border-bottom:1px solid var(--line);padding:25px 24px}.family-note{padding:35px 24px}.family-note>img{width:70px;height:73px;margin-bottom:24px}.family-note h3{font-size:8vw}.family-note p{margin:23px 0;font-size:13px}.family-note a{font-size:13px}.founder{grid-template-columns:1fr}.founder-photo{height:110vw;min-height:0;max-height:600px}.founder-photo img{object-position:50% 25%}.founder-copy{padding:35px 24px}.founder-copy .eyebrow{font-size:10px}.founder-copy h2{margin:24px 0;font-size:11vw}.founder-role{font-size:11px}.founder-copy blockquote{margin:28px 0;font-size:20px}.founder-copy>p:last-child{font-size:13px}.questions{padding:45px 24px;display:block}.questions h2{margin-bottom:25px;font-size:8.5vw}summary,details p{font-size:13px}.contact{grid-template-columns:1fr;gap:40px;padding:45px 0}.contact-title-grid{background-size:20vw 20vw;min-height:64vw;margin:0 24px}.contact h2{padding:7vw 0;font-size:12vw;line-height:1.2}.contact-form{padding:0 24px}.contact-form>p:first-child{font-size:12px}.contact-form label{font-size:10px}.contact-form select{font-size:16px}.contact-form .contact-hint{font-size:12px}.contact-form .button,.contact-phone{font-size:17px}.studio-description{padding:35px 24px}.studio-description p{font-size:12px;line-height:1.9}.studio-description p+p{margin-top:24px}.footer-nav a{padding:24px 18px;font-size:4.2vw}.footer{flex-wrap:wrap;align-items:flex-start;gap:25px;padding:30px 24px}.footer .brand{width:100%}.footer p{font-size:10px}.footer .legal{text-align:left}dialog{padding:32px 22px 24px}.booking-intro h2{font-size:33px}.booking-intro .eyebrow{padding-right:30px;font-size:8px}.booking-actions{grid-template-columns:1fr}.booking-actions .button{font-size:12px}}@media (width<=360px){.header{padding-left:18px}.brand{gap:9px}.brand>span{font-size:19px}.brand img{width:33px}.menu-toggle{width:55px;right:0}.facts p{font-size:8px}.class-tabs button{padding:17px 10px;font-size:10px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.reveal.is-pending{opacity:1;transform:none}}@media (width>=768px){.hero-photo,.hero-content{min-height:0}.hero-media video{position:absolute;inset:0}}.facts{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=767px){.facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 16px;padding:35px 16px}.facts strong{font-size:clamp(44px,9vw,62px)}.facts p{font-size:11px;line-height:1.6}}.direction-cards li:has(>.style-trigger){padding:0}.style-trigger{color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;text-align:left;cursor:pointer;background:0 0;flex:1;justify-content:space-between;align-self:stretch;align-items:center;gap:12px;padding:13px 16px;transition:background .2s,color .2s;display:flex}.style-trigger span{color:var(--accent);transition:transform .2s}.style-trigger:hover,.style-trigger:focus-visible{background:var(--brand)}.style-trigger:hover span,.style-trigger:focus-visible span{color:#fff;transform:translate(2px,-2px)}.style-trigger:focus-visible{outline-offset:-4px;outline:2px solid #fff}.style-trigger{min-width:0}.style-trigger span{flex:none}@media (width<=767px){.style-trigger{gap:8px;padding:12px}}.style-dialog{width:min(900px,100% - 32px,180dvh - 61.2px);padding:0;overflow:auto}.style-dialog[open]{grid-template-columns:minmax(0,4fr) minmax(0,5fr);display:grid}.style-media{aspect-ratio:1080/1350;background:#000}.style-media video{object-fit:contain;background:#000;width:100%;height:100%;display:block}.style-body{flex-direction:column;justify-content:center;gap:20px;padding:48px 40px 40px;display:flex}.style-body h2{font-size:clamp(28px,3.4vw,48px);line-height:1.05}.style-body #style-text{color:var(--muted);font-size:clamp(14px,1.1vw,17px);line-height:1.7}.style-body .button{justify-content:space-between;width:100%;margin-top:8px}.style-body .style-learn{color:var(--muted);font-size:clamp(13px,1vw,15px);line-height:1.6}.style-body .style-learn b{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:11px;display:block}.style-dialog.no-video{width:min(560px,100% - 32px)}.style-dialog.no-video[open]{grid-template-columns:1fr}.style-dialog.no-video .style-media{display:none}.style-dialog.no-video .style-body{padding:56px 40px 40px}.style-dialog .dialog-close{z-index:2}@media (width<=767px){.style-dialog[open]{grid-template-columns:1fr}.style-dialog{width:min(100% - 32px,max(280px,80dvh - 280px))}.style-body{gap:14px;padding:24px 22px}.style-body h2{font-size:28px}.style-dialog .dialog-close{background:#10101099}}.direction-cards{border:1px solid var(--line);background:var(--surface);grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin:2vw 0;padding:0;list-style:none;display:grid}.direction-cards li{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:56px;color:var(--text);text-transform:uppercase;letter-spacing:.02em;align-items:center;padding:13px 16px;font-size:clamp(11px,.9vw,17px);font-weight:800;line-height:1.25;display:flex}.direction-cards li:nth-child(2n){border-right:0}.direction-cards li:nth-last-child(-n+2){border-bottom:0}.direction-cards li:last-child:nth-child(odd){border-right:0;grid-column:1/-1}.direction-cards-teens li:nth-child(8){border-bottom:1px solid var(--line)}.direction-cards-teens li:nth-child(9){border-bottom:0}@media (width>=768px){.class-image{height:100%;min-height:40vw}}@media (width<=767px){.direction-cards{margin:24px 0}.direction-cards li{min-height:52px;padding:12px;font-size:11px}}@media (width>=1024px){.direction-cards.direction-cards-teens{grid-template-columns:repeat(3,minmax(0,1fr))}.direction-cards.direction-cards-teens li{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.direction-cards.direction-cards-teens li:nth-child(n+7){border-bottom:0}.direction-cards.direction-cards-teens li:nth-child(3n){border-right:0}.direction-cards.direction-cards-teens li:last-child:nth-child(odd){grid-column:auto}.direction-cards-teens .style-trigger{padding:12px 14px}}.class-slider{isolation:isolate;background:var(--surface);position:relative}.class-slider .class-slide{z-index:0;opacity:0;pointer-events:none;transition:opacity .7s cubic-bezier(.16,1,.3,1);display:block;position:absolute;inset:0}.class-slider .class-slide.is-active{z-index:1;opacity:1}.class-slider .class-slide img{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.class-panels{display:grid}.class-panels>.class-panel{grid-area:1/1}.class-panels>.class-panel[hidden]{visibility:hidden;display:grid!important}@media (width<=767px){.class-image.class-slider{aspect-ratio:4/5;height:auto;max-height:none}}.pricing{padding:0}.pricing>h2{padding:6vw var(--inset) 0}.pricing>.section-intro{padding:0 var(--inset);margin-bottom:4vw}.price-grid{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.price-card{padding:4vw var(--inset);border-right:1px solid var(--line);flex-direction:column;align-items:flex-start;display:flex}.price-card:last-child{border-right:0}.price-card h3{color:var(--accent);margin-bottom:2.5vw;font-size:1.75vw}.price-list{width:100%;margin:0 0 3vw}.price-list>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:20px;padding:1.4vw 0;display:flex}.price-list dt{color:var(--muted);font-size:clamp(13px,1.1vw,21px)}.price-list dd{margin:0;font-size:clamp(22px,3vw,58px);font-weight:900;line-height:1}.price-card .text-link{text-align:left;font-size:clamp(12px,1vw,19px)}.price-note{padding:2.5vw var(--inset);border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:clamp(13px,1.1vw,21px);line-height:1.8}@media (width<=767px){.pricing>h2{padding:50px 24px 0}.pricing>.section-intro{margin-bottom:30px;padding:0 24px}.price-grid{grid-template-columns:1fr}.price-card{border-right:0;border-bottom:1px solid var(--line);padding:35px 24px}.price-card:last-child{border-bottom:0}.price-card h3{margin-bottom:24px;font-size:6vw}.price-list{margin-bottom:28px}.price-list>div{padding:14px 0}.price-list dt{font-size:13px}.price-list dd{font-size:26px}.price-card .text-link{font-size:12px}.price-note{padding:25px 24px;font-size:13px}}.trial{padding:5vw var(--inset);background:var(--brand);border-bottom:1px solid var(--line);grid-template-columns:7fr 5fr;align-items:center;gap:4vw;display:grid}.trial .eyebrow{color:#fff;margin-bottom:1.5vw}.trial h2{font-size:4.5vw;line-height:1.05}.trial-action p{margin-bottom:2vw;font-size:clamp(13px,1.1vw,21px);line-height:1.8}.trial .button-primary{color:#101010;background:#fff;justify-content:space-between;width:100%;max-width:420px}.trial .button-primary:hover{background:#e9dcef}@media (width<=767px){.trial{grid-template-columns:1fr;gap:25px;padding:45px 24px}.trial .eyebrow{margin-bottom:14px}.trial h2{font-size:9vw}.trial-action p{margin-bottom:24px;font-size:13px}.trial .button-primary{max-width:none}}.locations-head{padding:6vw var(--inset) 4vw;border-bottom:1px solid var(--line)}.locations-head .section-intro{max-width:1000px}@media (width<=767px){.locations-head{padding:50px 24px 30px}}#booking-form input[type=text],#booking-form input[type=tel]{background:var(--surface);width:100%;color:var(--text);border:1px solid #746779;border-radius:0;padding:11px 12px;font-size:13px;line-height:1.7}#booking-form input:focus{border-color:var(--accent)}.hp-field{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.booking-actions{grid-template-columns:1fr}.booking-actions .button{justify-content:space-between}.copy-status.is-error{color:#ff9a9a}dialog::backdrop{backdrop-filter:blur(6px);background:#0a080c99}.booking-actions .button{white-space:normal;text-align:left;width:100%;min-height:52px;font-size:13px;line-height:1.3}.booking-actions .button .submit-label{flex:1}::selection{background:var(--accent);color:#101010}::selection{background:var(--accent);color:#101010}.contact{background:var(--background);color:var(--text);color-scheme:dark;--accent:#ad78c5;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0}.contact-photo{border-right:1px solid var(--line);background:0 0;min-height:36vw;margin:0;display:block;position:relative;overflow:hidden}.contact-photo img{object-fit:cover;object-position:40% 40%;width:100%;height:100%;position:absolute;inset:0}.contact-photo:after{content:"";background:linear-gradient(#1010101a 35%,#101010e0);position:absolute;inset:0}.contact-photo h2{left:var(--inset);z-index:1;text-align:left;color:#fff;padding:0;font-size:5vw;line-height:1.05;position:absolute;bottom:3vw}.contact-form{padding:5vw var(--inset) 5vw 5vw}.contact-form>p:first-child,.contact-form label{color:var(--muted)}.contact-form select{background:var(--surface);color:var(--text);border:1px solid #746779;min-height:52px;padding:11px 12px;font-size:clamp(14px,1.1vw,20px)}.contact-form .contact-hint{color:var(--muted)}.contact-form .button{font-size:clamp(14px,1.2vw,22px)}.contact-phone{color:var(--text);font-size:clamp(15px,1.3vw,24px)}.contact-phone:hover{color:var(--accent)}@media (width<=767px){.contact{gap:0;padding:0}.contact-photo{border-right:0;border-bottom:1px solid var(--line);min-height:78vw}.contact-photo h2{font-size:12vw;bottom:24px;left:24px}.contact-form{padding:35px 24px 40px}.contact-form select{font-size:16px}}.contact-form input[type=text],.contact-form input[type=tel]{background:var(--surface);width:100%;color:var(--text);border:1px solid #746779;border-radius:0;min-height:52px;padding:11px 12px;font-size:clamp(14px,1.1vw,20px)}.contact-form input:focus{border-color:var(--accent)}.contact-form .copy-status{min-height:20px;margin:10px 0 0}.contact-form .button{margin-top:24px}@media (width<=767px){.contact-form input[type=text],.contact-form input[type=tel]{font-size:16px}}.contact{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.contact-photo{min-height:0}.contact-photo img{min-width:0}@media (width<=767px){.contact{grid-template-columns:1fr}.contact-photo{min-height:78vw}}.button .submit-label{font-family:inherit;font-size:inherit;line-height:inherit;text-align:left;white-space:normal;flex:1}.contact-form .button{justify-content:space-between;gap:16px}.footer .brand>span{text-align:center;flex-direction:column;justify-content:center;align-items:center;line-height:.85;display:flex}.footer .brand small{white-space:nowrap;margin-top:5px;line-height:1}.footer{padding:4vw var(--inset);grid-template-columns:1.2fr 1fr 1fr;align-items:start;gap:4vw;display:grid}.footer-brand{flex-direction:column;align-items:flex-start;gap:18px;display:flex}.footer .footer-nav{border:0;grid-template-columns:1fr 1fr;gap:10px 20px;display:grid}.footer .footer-nav a{color:#101010;border:0;padding:0;font-size:clamp(13px,1.1vw,20px);font-weight:600;line-height:1.3}.footer .footer-nav a:hover{color:var(--brand);background:0 0}.footer-contacts{text-align:right;flex-direction:column;align-items:flex-end;gap:10px;display:flex}.footer-contacts a{color:#101010;font-size:clamp(13px,1.1vw,20px);font-weight:600}.footer-contacts .footer-phone{font-size:clamp(16px,1.5vw,28px);font-weight:800}.footer-contacts a:hover{color:var(--brand)}.footer-contacts .legal{margin-top:10px}@media (width<=767px){.footer{grid-template-columns:1fr;gap:28px;padding:35px 24px}.footer .footer-nav{grid-template-columns:1fr 1fr}.footer .footer-nav a{font-size:15px}.footer-contacts{text-align:left;align-items:flex-start}.footer-contacts a{font-size:15px}.footer-contacts .footer-phone{font-size:20px}}.footer-logo{display:block}.footer-logo img{width:clamp(96px,9vw,150px);height:auto;display:block}@media (width<=767px){.footer-logo img{width:110px}}.footer{align-items:start}.footer .footer-nav,.footer-contacts{align-self:baseline}.footer .footer-nav a,.footer-contacts a{line-height:1.2}@media (width<=767px){.footer .footer-nav,.footer-contacts{align-self:start}}.stage-slider{touch-action:pan-y}@media (width<=767px){.trial{grid-template-columns:minmax(0,1fr)}.trial-copy,.trial-action{min-width:0}}@media (width<=300px){.class-tabs button{padding:15px 7px;font-size:9px}}@media (width<=360px){.button{white-space:normal;text-align:left;gap:12px;padding:14px 16px}#booking-title{font-size:min(33px,8.8vw)}}.stage-dots{gap:12px}.stage-dots button{position:relative}.stage-dots button:after{content:"";position:absolute;inset:-12px -6px}.trial-action p{color:#f5eef8}.consent{letter-spacing:0;text-transform:none;color:var(--muted);cursor:pointer;align-items:flex-start;gap:10px;margin:16px 0 4px;font-size:12px;line-height:1.5;display:flex}.contact-form .consent,#booking-form .consent{letter-spacing:0;text-transform:none;color:var(--muted);margin-top:16px;font-size:12px}.consent input{width:20px;height:20px;accent-color:var(--button);cursor:pointer;flex:none;margin:1px 0 0}.consent a{color:var(--text);text-underline-offset:2px;text-decoration:underline}.consent a:hover{color:var(--accent)}.consent input:focus-visible{outline-offset:2px;outline:2px solid #fff}.legal a{color:inherit;text-underline-offset:2px;text-decoration:underline}.legal-page{max-width:820px;padding:calc(var(--header) + 40px) var(--inset) 80px;margin:0 auto}.legal-page h1{margin-bottom:8px;font-size:clamp(28px,4vw,48px);line-height:1.1}.legal-page .updated{color:var(--muted);margin-bottom:32px;font-size:13px}.legal-page h2{color:var(--accent);margin:36px 0 12px;font-size:clamp(18px,2vw,24px)}.legal-page p,.legal-page li{color:var(--muted);font-size:15px;line-height:1.75}.legal-page ul{margin:8px 0 8px 20px;list-style:outside}.legal-page a{color:var(--text);text-underline-offset:2px;text-decoration:underline}.legal-page .back{letter-spacing:.04em;text-transform:uppercase;margin-bottom:28px;font-size:13px;font-weight:700;text-decoration:none;display:inline-block}.legal-page mark{color:#ffd7b8;background:#5b2a14;padding:0 4px}.legal-top{padding:26px var(--inset);position:absolute;inset:0 0 auto}.legal-top img{width:44px;height:36px;display:block}@media (width<=767px){.legal-page{padding-top:calc(var(--header) + 24px)}.legal-page p,.legal-page li{font-size:14px}}.about{padding:6vw var(--inset);border-bottom:1px solid var(--line);grid-template-columns:5fr 7fr;gap:4vw;display:grid}.about h2{margin:0;padding:0;font-size:6.5vw;line-height:1}.about-copy{color:var(--muted);font-size:clamp(14px,1.15vw,22px);line-height:1.8}.about-copy p{margin:0 0 1.4em}.about-lead{color:var(--text);font-size:clamp(17px,1.7vw,32px);font-weight:600;line-height:1.5}.about-list{margin:0 0 1.4em;padding:0;list-style:none}.about-list li{margin-bottom:1em;padding-left:1.6em;position:relative}.about-list li:before{content:"";background:var(--accent);width:.6em;height:.6em;position:absolute;top:.7em;left:0}.about-mission{border-top:1px solid var(--line);color:var(--text);margin:2em 0 0;padding-top:1.4em}.about-mission strong{color:var(--accent);text-transform:uppercase;letter-spacing:.08em}@media (width<=767px){.about{grid-template-columns:minmax(0,1fr);gap:24px;padding:50px 24px}.about h2{font-size:12vw}.about-copy{font-size:14px}.about-lead{font-size:17px}}@media (width<=1000px) and (width>=768px){.desktop-nav{gap:12px}.desktop-nav a{font-size:9px}}.stage-slider .stage-dots{z-index:2;padding:8px 14px;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.stage-slider .stage-dots button{box-shadow:0 0 3px #000000b3}@media (width<=767px){.stage-slider .stage-dots{gap:10px;padding:6px 12px;bottom:10px}}.family-awards .award-slider{aspect-ratio:3/2;max-height:none}.family-awards .award-slider img{aspect-ratio:auto}.family-grid{grid-template-columns:3fr 2fr}@media (width<=767px){.family-grid{grid-template-columns:1fr}}.cookie-banner{left:calc((100% - var(--rail)) / 2);z-index:24;width:min(520px,calc(100% - var(--rail) - var(--inset) * 2));background:var(--surface);border:1px solid var(--line);align-items:center;gap:14px;padding:11px 14px;display:flex;position:fixed;bottom:16px;transform:translate(-50%);box-shadow:0 6px 24px #00000073}.cookie-banner[hidden]{display:none}.cookie-banner p{color:var(--muted);margin:0;font-size:11px;line-height:1.45}.cookie-banner a{color:#fff;text-underline-offset:2px;text-decoration:underline}.cookie-accept{background:var(--button);color:#fff;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;flex-shrink:0;padding:8px 16px;font-size:11px;font-weight:700;transition:background .2s}.cookie-accept:hover{background:var(--button-hover)}.cookie-accept:focus-visible{outline-offset:2px;outline:3px solid #fff}@media (width<=767px){.cookie-banner{gap:10px;width:calc(100% - 20px);padding:10px 12px;bottom:10px;left:50%}.cookie-banner p{font-size:10.5px}.cookie-accept{padding:8px 12px}}.legal-page .table-wrap{-webkit-overflow-scrolling:touch;margin:12px 0 0;overflow-x:auto}.legal-page table{border-collapse:collapse;width:100%;min-width:640px;color:var(--muted);font-size:13px;line-height:1.55}.legal-page th,.legal-page td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px}.legal-page th{color:var(--text);background:var(--surface);font-weight:700}.legal-page strong{color:var(--text)}@media (width>=1100px){.class-panel{grid-template-columns:5fr 6fr}.class-image.class-slider{min-height:min(calc((100vw - var(--rail)) * .568),118vh)}}
