@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap";@layer theme{:root,:host{--spacing:.25rem;--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.inline{display:inline}.table{display:table}.resize{resize:both}}@font-face{font-family:Jersey M54;src:local(Jersey M54),local(JerseyM54);font-display:swap}@font-face{font-family:Amoresa Aged;src:url(/fonts/amoresa-aged.otf)format("opentype"),local(Amoresa Aged),local(AmoresaAged),local(Amoresa);font-style:normal;font-weight:400;font-display:swap}:root{--ice:#bde0ff;--wine:#721010;--ink:#050505;--paper:#fff;--fog:#c9c9c5;--stone:#aeadab;--smoke:#e5e3df;--charcoal:#171717;--line:#05050524;--font-body:"Montserrat", var(--font-geist-sans), Arial, sans-serif;--font-display:"Jersey M54", "Sport Jersey", Impact, Haettenschweiler, "Arial Black", sans-serif;--font-script:"Amoresa Aged", "Brush Script MT", "Segoe Script", cursive}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--fog);color:var(--ink);font-family:var(--font-body);margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}main{overflow:hidden}.topbar{z-index:80;isolation:isolate;background:0 0;border:0;border-radius:0;grid-template-columns:minmax(110px,1fr) auto minmax(110px,1fr);align-items:center;gap:28px;width:100%;min-height:78px;padding:12px max(22px,50vw - 590px);display:grid;position:fixed;top:0;left:0;right:0;overflow:visible}.topbar:before{z-index:-1;border-radius:inherit;-webkit-backdrop-filter:blur(22px)saturate(1.2);content:"";background:linear-gradient(90deg,#121212ad,#12121275);border-bottom:1px solid #ffffff29;position:absolute;inset:0;box-shadow:0 18px 55px #00000038}.brand{width:max-content;min-width:max-content;color:var(--wine);text-transform:uppercase;align-items:center;font-weight:900;display:inline-flex}.brand img{object-fit:contain;width:104px;height:54px}.brand span,h1,.heroMonogram span,.splitHead span,.classCard h4{font-family:var(--font-display);letter-spacing:0}.navlinks{text-transform:uppercase;flex-wrap:wrap;justify-content:center;gap:18px;font-size:.68rem;font-weight:850;display:flex}.navItem{position:relative}.navlinks a{color:#ffffffeb;border-radius:0;padding:8px 0;display:inline-flex;position:relative}.navlinks>.navItem>a:after{transform-origin:0;content:"";background:currentColor;height:1px;transition:transform .2s;position:absolute;bottom:4px;left:0;right:0;transform:scaleX(0)}:is(.navlinks a:hover,.navlinks a:focus-visible){color:var(--ice);background:0 0}.navlinks>.navItem>a:hover:after,.navItem:hover>a:after,.navItem:focus-within>a:after{transform:scaleX(1)}.navlinks>.navItem>a:focus-visible:after{transform:scaleX(1)}.navPanel{-webkit-backdrop-filter:blur(18px);opacity:0;pointer-events:none;background:#121212c2;border:1px solid #ffffff24;border-radius:8px;gap:2px;width:max-content;min-width:190px;padding:12px;transition:opacity .18s,transform .18s;display:grid;position:absolute;top:100%;left:50%;transform:translate(-50%)translateY(10px);box-shadow:0 18px 46px #05050547}.navPanel a{color:var(--paper);white-space:nowrap;justify-content:flex-start;padding:8px 10px;font-size:.68rem}.navItem:hover .navPanel,.navItem:focus-within .navPanel{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}.headerCta{min-height:40px;color:var(--ink);text-transform:uppercase;background:#ffffffeb;border:1px solid #ffffffeb;border-radius:999px;justify-content:center;justify-self:end;align-items:center;padding:10px 20px;font-size:.72rem;font-weight:950;transition:transform .28s,box-shadow .28s,background .28s;animation:3.6s ease-in-out infinite ctaBreath;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 14px 34px #00000029}.menuToggle,.hamburgerButton,.mobileScrim,.mobileMenu{display:none}.floatingActions{z-index:35;position:fixed;bottom:18px;right:18px}.floatingActions a{background:var(--wine);width:54px;min-height:54px;color:var(--paper);border-radius:999px;justify-content:center;align-items:center;padding:0;transition:transform .28s,box-shadow .28s;animation:2.8s ease-in-out infinite whatsappPulse;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 18px 42px #00000038}.floatingActions svg{fill:currentColor;width:28px;height:28px}.hero{background:var(--charcoal);min-height:96vh;color:var(--paper);--hero-image-y:0px;--hero-copy-y:0px;--hero-mark-y:0px;--hero-dim:.92;align-items:end;padding:142px max(22px,50vw - 590px) 76px;display:grid;position:relative}.pageHero{background:radial-gradient(circle at 86% 18%, #bde0ff61, transparent 24%), var(--smoke);min-height:clamp(420px,56vh,640px);color:var(--wine);align-content:end;padding:148px max(22px,50vw - 590px) 72px;display:grid}.pageHero.dark{color:var(--ice);background:linear-gradient(90deg,#050505eb,#050505b8),url(/assets/editorial-dance-bw.png) 50%/cover}.pageHero.aboutHero{background:linear-gradient(90deg,#050505e0,#0505056b),url(/assets/about-hero-facade.jpeg) 50%/cover}.pageHero.pricingHero{background:linear-gradient(90deg,#050505db,#05050561),url(/assets/tarifas-hero-2026.jpeg) 50% 42%/cover}.pageHero.rentalHero{background:linear-gradient(90deg,#050505e0,#05050575),url(/assets/alquiler-hero-2026.jpeg) 50% 54%/cover}.pageHero.eventsHero{min-height:clamp(300px,40vh,420px);padding-bottom:clamp(38px,5vw,52px)}.pageHero.blue{background:var(--ice);color:var(--wine)}.pageHero .eyebrow{color:currentColor}.pageHero h1{color:currentColor;max-width:1120px;text-shadow:none;margin:0;font-size:clamp(4.2rem,10vw,10rem);line-height:.82}.pageHeroCopy{max-width:720px;color:inherit;margin-top:22px}.pageHeroCopy p{font-size:clamp(1rem,1.4vw,1.25rem);line-height:1.6}.heroDisciplineList{color:currentColor;flex-wrap:wrap;gap:10px 0;margin:0;padding:0;font-size:clamp(1rem,1.4vw,1.25rem);font-weight:650;line-height:1.45;list-style:none;display:flex}.heroDisciplineList li{align-items:center;display:inline-flex}.heroDisciplineList li:not(:last-child):after{content:"•";color:var(--wine);margin:0 14px;font-weight:950}.heroMedia{position:absolute;inset:0;overflow:hidden}.heroMedia img,.heroMedia video{object-fit:cover;object-position:center center;filter:grayscale()contrast(1.04);width:100%;height:100%;opacity:var(--hero-dim);transform:translate3d(0, var(--hero-image-y), 0) scale(1.08);transform-origin:50%;will-change:transform, opacity}.heroMedia:after{content:"";background:radial-gradient(circle at 61% 48%,#ffffff0f,#0000 24%),linear-gradient(90deg,#050505e6,#05050580 36%,#0505051a 62%,#05050599);position:absolute;inset:0}.heroContent{z-index:1;max-width:620px;transform:translate3d(0, var(--hero-copy-y), 0);will-change:transform;position:relative}.heroNumber{object-fit:contain;filter:drop-shadow(5px 5px #05050542);width:clamp(155px,23vw,300px);max-width:78vw;height:auto;margin:14px 0 8px;display:block}.heroPhrase{max-width:620px;color:var(--paper);font-family:var(--font-display);text-transform:uppercase;margin:0 0 10px;font-size:clamp(2.15rem,4.25vw,4.6rem);line-height:.9}.heroValues{color:var(--ice);text-transform:uppercase;margin-bottom:10px;font-size:clamp(.84rem,1.3vw,1.08rem);font-weight:950}.eyebrow,.kicker{color:var(--ice);text-transform:uppercase;margin:0 0 12px;font-size:.76rem;font-weight:950}h1,h2,h3,h4,p{margin-top:0}h1{color:var(--paper);text-transform:uppercase;text-shadow:7px 0 0 var(--wine);margin-bottom:18px;font-size:clamp(5.2rem,15vw,12rem);line-height:.76}h2{max-width:1080px;font-family:var(--font-script);letter-spacing:0;font-size:clamp(2.2rem,4.6vw,5.6rem);font-weight:400;line-height:.96}h3{font-family:var(--font-script);margin:0;font-size:clamp(1.9rem,3.4vw,3.8rem);font-weight:480;line-height:.98}.heroContent p:not(.eyebrow):not(.heroPhrase):not(.heroValues),.copyBlock p,.youthPanel p,.feePanel p,.rentalPanel p,.trialPanel p,.teamCard p,.trialCallout p,.softNote p{max-width:660px;font-size:clamp(1rem,1.25vw,1.15rem);line-height:1.7}.heroActions,.trialActions{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.button,.trialCallout a,.bookingStrip a{text-transform:uppercase;border:1px solid;border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:12px 18px;font-size:.78rem;font-weight:950;transition:transform .28s,box-shadow .28s,background .28s,color .28s;display:inline-flex;position:relative;overflow:hidden}.headerCta:before,.button:before,.trialCallout a:before,.bookingStrip a:before,.floatingActions a:before{content:"";pointer-events:none;background:linear-gradient(115deg,#0000,#ffffffb3,#0000);width:55%;position:absolute;inset:-45% auto -45% -70%;transform:translate(0)skew(-18deg)}.headerCta:hover,.button:hover,.trialCallout a:hover,.bookingStrip a:hover{transform:translateY(-4px)scale(1.025);box-shadow:0 18px 42px #72101047}.headerCta:focus-visible{transform:translateY(-4px)scale(1.025);box-shadow:0 18px 42px #72101047}.button:focus-visible{transform:translateY(-4px)scale(1.025);box-shadow:0 18px 42px #72101047}.trialCallout a:focus-visible{transform:translateY(-4px)scale(1.025);box-shadow:0 18px 42px #72101047}.bookingStrip a:focus-visible{transform:translateY(-4px)scale(1.025);box-shadow:0 18px 42px #72101047}:is(.floatingActions a:hover,.floatingActions a:focus-visible){transform:translateY(-5px)scale(1.08)rotate(-4deg);box-shadow:0 22px 52px #7210106b}.headerCta:hover:before,.button:hover:before,.trialCallout a:hover:before,.bookingStrip a:hover:before,.floatingActions a:hover:before{animation:.82s forwards buttonShine}.headerCta:focus-visible:before{animation:.82s forwards buttonShine}.button:focus-visible:before{animation:.82s forwards buttonShine}.trialCallout a:focus-visible:before{animation:.82s forwards buttonShine}.bookingStrip a:focus-visible:before{animation:.82s forwards buttonShine}.floatingActions a:focus-visible:before{animation:.82s forwards buttonShine}.primary{background:var(--wine);color:var(--paper)}.secondary{color:var(--ink);background:#ffffffdb}.heroMonogram{z-index:1;width:min(260px,34vw);color:var(--ice);text-align:right;transform:translate3d(0, var(--hero-mark-y), 0);will-change:transform;position:absolute;bottom:50px;right:max(22px,50vw - 590px)}.heroMonogram span{color:#0000;-webkit-text-stroke:2px var(--ice);font-size:clamp(8rem,18vw,18rem);line-height:.7;display:block}.heroMonogram small{color:var(--paper);text-transform:uppercase;font-size:.92rem;font-weight:900;display:block}.section,.contact{padding:96px max(22px,50vw - 590px)}.section{position:relative}.pageIndex,.homeIntro,.homeSteps,.homeContactBlock,.editorialPage,.classesPage,.schedulePage,.pricesPage,.eventsPage,.rentalPage,.trainingBlock{background:var(--smoke)}.homeIntro{background:var(--smoke);grid-template-columns:minmax(0,.82fr) minmax(340px,1fr);align-items:center;gap:clamp(34px,7vw,92px);display:grid}.homeIntroCopy h2,.homeStepsCopy h2,.homeContactIntro h2{color:var(--wine)}.homeStepsCopy h2{max-width:880px;font-family:var(--font-display);text-transform:uppercase;font-size:clamp(2.3rem,5.4vw,5.6rem);font-weight:950;line-height:.88}.homeCheckList{gap:16px;margin:34px 0;padding:0;list-style:none;display:grid}.homeCheckList li{color:var(--ink);padding-left:34px;font-size:clamp(1rem,1.45vw,1.25rem);font-weight:850;line-height:1.45;position:relative}.homeCheckList li:before{color:var(--wine);content:"✓";position:absolute;top:.08em;left:0}.homeFeatureImage,.homeStepsImage{background:var(--charcoal);border:1px solid #05050529;border-radius:8px;margin:0;overflow:hidden}.homeFeatureImage{aspect-ratio:5/4}.homeStepsImage{aspect-ratio:4/5}.homeFeatureImage img,.homeStepsImage img{object-fit:cover;filter:grayscale()contrast(1.08);width:100%;height:100%}.homeFeatureImage img{object-position:center center;filter:grayscale(.18)contrast(1.03)saturate(.82)}.homeSteps{background:var(--fog);grid-template-columns:minmax(320px,.72fr) minmax(0,1fr);align-items:center;gap:clamp(34px,7vw,90px);display:grid}.stepsList{counter-reset:step;border-top:1px solid #05050529;gap:0;margin:34px 0 18px;padding:0;list-style:none;display:grid}.stepsList li{color:var(--ink);border-bottom:1px solid #05050529;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:20px;padding:18px 0;font-size:clamp(1rem,1.5vw,1.3rem);font-weight:850;display:grid}.stepsList strong{font:inherit;font-weight:inherit}.stepsList span{color:#0000;font-family:var(--font-display);-webkit-text-stroke:1px var(--wine);font-size:clamp(2.4rem,4vw,4.4rem);line-height:.78}.stepsCycle{display:none}.stepsFlow{counter-reset:step;margin:0;padding:0;list-style:none}.stepsFlow li{z-index:4;top:var(--y);left:var(--x);width:clamp(92px,16vw,136px);position:absolute;transform:translate(-50%,-50%)}.stepsFlow button{width:100%;color:var(--ink);cursor:pointer;font-family:var(--font-body);text-align:center;text-transform:uppercase;background:#c9c9c5b3;border:1px solid #0000;border-radius:8px;justify-items:center;gap:6px;padding:8px 6px;font-size:clamp(.58rem,.95vw,.74rem);font-weight:950;line-height:1.05;transition:background .22s,border-color .22s,box-shadow .22s,transform .22s;display:grid}:is(.stepsFlow button:hover,.stepsFlow button:focus-visible,.stepsFlow button.is-active){background:#ffffffc7;border-color:#800d115c;transform:translateY(-2px);box-shadow:0 12px 30px #800d1124}.stepsFlow strong{max-width:100%;font:inherit;font-weight:inherit}.stepsFlow span{color:#0000;font-family:var(--font-display);-webkit-text-stroke:1px var(--wine);font-size:clamp(2.1rem,4.5vw,4.2rem);line-height:.78}.cycleArrow{z-index:2;color:var(--wine);font-family:var(--font-body);font-size:clamp(1.25rem,3vw,2.1rem);font-style:normal;font-weight:950;line-height:1;display:block;position:absolute}.cycleArrow1{top:17%;left:64%;transform:rotate(32deg)}.cycleArrow2{top:48%;left:86%;transform:rotate(90deg)}.cycleArrow3{top:79%;left:64%;transform:rotate(145deg)}.cycleArrow4{top:79%;left:32%;transform:rotate(214deg)}.cycleArrow5{top:48%;left:10%;transform:rotate(270deg)}.cycleArrow6{top:17%;left:31%;transform:rotate(326deg)}.repeatNote{max-width:640px;color:var(--wine);font-weight:900}.homeContactBlock{color:var(--paper);background:linear-gradient(90deg,#050505e0,#050505a3),url(/assets/home-contact-bg.jpeg) 50%/cover;grid-template-columns:minmax(0,.75fr) minmax(320px,.8fr);align-items:start;gap:clamp(24px,4vw,44px);display:grid}.homeContactIntro{grid-column:1/-1}.homeContactIntro .kicker,.homeContactIntro h2{color:var(--ice)}.homeContactIntro h2{font-family:var(--font-display);text-transform:uppercase;font-size:clamp(2.6rem,7vw,6.6rem);font-weight:950;line-height:.88}.homeForm{color:var(--ink);background:#ffffffe6;border:1px solid #ffffff47;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:clamp(20px,3vw,34px);display:grid}.homeForm label{text-transform:uppercase;gap:8px;font-size:.74rem;font-weight:950;display:grid}.interestField{border:0;gap:10px;min-width:0;margin:0;padding:0;display:grid;position:relative}.interestField legend{text-transform:uppercase;margin:0 0 8px;padding:0;font-size:.74rem;font-weight:950}.interestDropdown{position:relative}.interestDropdown summary{min-height:46px;color:var(--ink);cursor:pointer;text-transform:none;background:#ffffffb8;border:1px solid #0505052e;justify-content:space-between;align-items:center;padding:12px;font-size:.74rem;font-weight:950;list-style:none;display:flex}.interestDropdown summary::-webkit-details-marker{display:none}.interestDropdown summary:after{content:"⌄";color:var(--wine);font-size:1.15rem;line-height:1}.interestDropdown[open] summary{border-color:#800d118c}.interestOptions{z-index:20;background:#fffffffa;border:1px solid #0505052e;grid-template-columns:1fr;max-height:270px;padding:8px;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 18px 34px #0505052e}.interestOptions label{cursor:pointer;text-transform:none;background:0 0;border:0;border-bottom:1px solid #05050514;align-items:center;gap:8px;min-height:34px;padding:8px;font-size:.78rem;line-height:1.15;display:flex}.interestOptions label:last-child{border-bottom:0}.homeForm input,.homeForm select,.homeForm textarea{width:100%;min-height:46px;color:var(--ink);font:inherit;text-transform:none;background:#ffffffb8;border:1px solid #0505052e;border-radius:0;padding:12px}.homeForm .interestOptions input{width:16px;min-width:16px;height:16px;min-height:16px;accent-color:var(--wine);padding:0}.homeForm textarea{resize:vertical}.fullField,.homeForm button{grid-column:1/-1}.homeMap{background:var(--smoke);border:1px solid #ffffff47;border-radius:8px;min-height:100%;overflow:hidden}.homeMap iframe{filter:grayscale()contrast(1.04);border:0;width:100%;height:100%;min-height:460px}.contentColumns{grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:center;gap:clamp(32px,6vw,80px);display:grid}.contentColumns.reverse{grid-template-columns:minmax(280px,420px) minmax(0,1fr)}.contentColumns.reverse>div{grid-column:2}.contentColumns.reverse>figure{grid-area:1/1}.editorialPage .contentColumns>div,.installations .contentColumns>div{align-content:start;gap:18px;display:grid}.editorialPage :where(p,li,span,strong),.team :where(p,li,span,strong,a),.installations :where(p,li,span,strong){font-family:var(--font-body)}.editorialPage h2,.installations h2{margin-bottom:10px}.installationsTitle{color:var(--wine);font-family:var(--font-display);text-transform:uppercase;font-size:clamp(3.2rem,8vw,7.2rem);font-weight:950;line-height:.84}.editorialPage p,.installations p,.teamIntro p,.teamDetailCard p{max-width:760px;font-family:var(--font-body);text-align:left;font-size:clamp(1.05rem,1.18vw,1.14rem);font-weight:500;line-height:1.72}.leadText{max-width:760px;font-family:var(--font-body);margin-top:12px;font-size:clamp(1.14rem,1.44vw,1.36rem);font-weight:500;line-height:1.6}.editorialImage{aspect-ratio:4/5;background:var(--charcoal);border:1px solid #05050529;border-radius:8px;margin:0;overflow:hidden}.editorialImage img{object-fit:cover;filter:grayscale()contrast(1.08);width:100%;height:100%}.installationsGallery{aspect-ratio:4/5;grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:1.05fr .95fr;gap:12px;margin:0;display:grid}.installationsGallery img{object-fit:cover;filter:contrast(1.02)saturate(.86);border:1px solid #05050529;border-radius:8px;width:100%;height:100%;min-height:0}.installationsGallery img:first-child{grid-row:1/-1}.aboutHeroImage img{object-position:center bottom}.linkGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.linkTile{min-height:190px;color:var(--wine);background:#ffffff8a;border:1px solid #0505051f;border-radius:8px;flex-direction:column;justify-content:space-between;padding:24px;transition:transform .2s,background .2s;display:flex}:is(.linkTile:hover,.linkTile:focus-visible){background:#bde0ff6b;transform:translateY(-5px)}.linkTile span{font-family:var(--font-display);text-transform:uppercase;font-size:clamp(2.4rem,4vw,4.2rem);line-height:.86}.linkTile p{color:#050505b8;margin:24px 0 0;line-height:1.5}.sectionIntro{margin-bottom:42px;display:block}.about .kicker,.classes .kicker,.schedule .kicker,.fees .kicker,.team .kicker,.trial .kicker,.contact .kicker{color:var(--wine)}.aboutEditorial{background:linear-gradient(180deg, #ffffff9e, #c9c9c5e6), var(--fog);z-index:2;border-top-left-radius:52px;border-top-right-radius:52px;gap:0;margin-top:-34px;display:grid}.aboutMasthead{border-bottom:1px solid #0505052e;grid-template-columns:minmax(0,1fr);align-items:end;padding-bottom:46px;display:grid}.aboutMasthead h2{letter-spacing:0;max-width:760px;color:var(--ink);font-size:clamp(3.1rem,7.4vw,7.2rem);font-weight:400;line-height:.9}.aboutFeature{border-bottom:1px solid #0505052e;grid-template-columns:minmax(230px,.72fr) minmax(0,1fr);align-items:center;gap:clamp(30px,6vw,84px);padding:clamp(42px,7vw,84px) 0;display:grid}.aboutPortrait{aspect-ratio:4/5;border:1px solid #0505052e;justify-self:center;width:min(100%,420px);margin:0;overflow:hidden}.aboutPortrait img{object-fit:cover;filter:grayscale()contrast(1.08);width:100%;height:100%}.aboutStory{border-left:1px solid #0505052e;max-width:760px;padding-left:clamp(24px,4vw,64px);position:relative}.aboutLead{color:var(--ink);margin-bottom:22px;font-size:clamp(1.15rem,2.1vw,1.75rem);line-height:1.28}.aboutStory p:not(.aboutLead){color:#050505c2}.aboutValues{border-bottom:1px solid #0505052e;grid-template-columns:minmax(0,1fr) minmax(240px,390px);align-items:center;gap:clamp(30px,6vw,84px);padding:clamp(36px,5vw,62px) 0;display:grid}.valueRows{border-top:1px solid #0505052e;display:grid}.valueRows.wide{margin-top:54px}.valueRows div{border-bottom:1px solid #0505052e;grid-template-columns:minmax(170px,.34fr) minmax(0,1fr);align-items:start;gap:clamp(22px,4vw,54px);padding:24px 0;display:grid}.valueRows span{color:var(--wine);font-family:var(--font-body);text-transform:none;font-size:clamp(.92rem,1.1vw,1.05rem);font-weight:850;line-height:1.25}.valueRows p{color:#050505b8;font-family:var(--font-body);margin:0;font-size:clamp(1.05rem,1.18vw,1.14rem);font-weight:500;line-height:1.7}.aboutValuesImage{aspect-ratio:4/5;border:1px solid #0505052e;justify-self:end;width:min(100%,390px);margin:0;overflow:hidden}.aboutValuesImage img{object-fit:cover;filter:grayscale()contrast(1.06);width:100%;height:100%}.aboutSignature{grid-template-columns:minmax(120px,210px) minmax(0,1fr);align-items:center;gap:clamp(26px,5vw,72px);padding-top:clamp(34px,5vw,58px);display:grid}.aboutSignature img{opacity:.92;width:100%}.aboutSignature p{max-width:660px;font-family:var(--font-script);color:var(--wine);font-size:clamp(1.9rem,4vw,4.8rem);line-height:.98}.copyBlock{max-width:720px}.pending{color:var(--wine);font-weight:800}.aboutVisual{align-content:start;gap:18px;display:grid}.aboutVisual>img{opacity:.9;justify-self:end;width:76%}.trialCallout,.softNote{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff94;border:1px solid #0505051f;border-radius:8px;padding:24px}.trialCallout span,.softNote span{color:var(--wine);text-transform:uppercase;margin-bottom:10px;font-size:.76rem;font-weight:950;display:block}.trialCallout a{background:var(--wine);color:var(--paper);margin-top:8px}.classes{background:var(--smoke)}.widePhoto{background:var(--ink);border-radius:52px 52px 8px;width:min(920px,78vw);height:min(50vw,520px);min-height:300px;margin:0 0 58px auto;overflow:hidden}.widePhoto img{object-fit:cover;filter:grayscale()contrast(1.04);width:100%;height:100%}.classSplit{margin-top:50px}.splitHead{align-items:end;gap:20px;margin-bottom:16px;display:flex}.splitHead span{color:#0000;-webkit-text-stroke:1px var(--wine);font-size:clamp(4rem,9vw,9rem);line-height:.72}.splitHead h3{font-family:var(--font-script);letter-spacing:0;font-weight:400}.classGrid{gap:14px;min-height:clamp(360px,44vw,560px);display:flex}.classGrid.compact{min-height:clamp(320px,34vw,460px)}.classCard{background-position:50%;background-size:cover;border:1px solid #05050524;border-radius:8px;flex:1 1 0;min-width:0;transition:flex .36s,transform .36s,box-shadow .36s;position:relative;overflow:hidden}.classCard:before{z-index:1;content:"";background:linear-gradient(#ffffff2e,#ffffff85 72%,#ffffffad),#0505050f;position:absolute;inset:0}.classCard:after{z-index:0;background:inherit;background-position:inherit;filter:grayscale()contrast(1.08);content:"";background-size:cover;transition:filter .34s,transform .34s;position:absolute;inset:0;transform:scale(1.02)}.classCard:hover,.classCard:focus-within{flex:1.55 1 0;transform:translateY(-8px);box-shadow:0 24px 58px #05050533}.classCard:hover:after,.classCard:focus-within:after{transform:scale(1.08)}.classCardLink{z-index:2;width:100%;min-height:100%;color:var(--wine);background:0 0;border:0;border-radius:0;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:8px;padding:clamp(16px,2vw,24px);display:flex;position:relative}.classCard span{color:var(--wine);text-transform:uppercase;max-width:100%;font-size:clamp(.56rem,.72vw,.68rem);font-weight:950;line-height:1.08}.classCard h4{max-width:100%;color:var(--wine);overflow-wrap:anywhere;text-transform:uppercase;margin:0;font-size:clamp(1.65rem,3.25vw,3.65rem);line-height:.88}.classCard p{max-width:100%;color:var(--wine);overflow-wrap:anywhere;text-transform:uppercase;margin:0;font-size:clamp(.68rem,.78vw,.82rem);font-weight:750;line-height:1.38}.classCard a{color:var(--wine)}.classDirectory{z-index:4;flex-wrap:wrap;gap:8px;margin-bottom:38px;display:flex;position:sticky;top:96px}.classDirectory a{background:var(--ice);color:var(--wine);text-transform:uppercase;border-radius:999px;padding:9px 13px;font-size:.74rem;font-weight:950;display:inline-flex}.classArticleList{gap:28px;display:grid}.classArticle{background:#ffffff8a;border:1px solid #0505051f;border-radius:8px;grid-template-columns:minmax(240px,.48fr) minmax(0,1fr);align-items:center;gap:clamp(24px,5vw,64px);padding:clamp(20px,4vw,42px);display:grid}.classArticle figure{aspect-ratio:4/5;background:var(--charcoal);border-radius:8px;margin:0;overflow:hidden}.classArticle img{object-fit:cover;filter:grayscale()contrast(1.08);width:100%;height:100%}.classArticleNumber{color:var(--wine);font-size:.76rem;font-weight:950;display:inline-block}.classArticle h2{color:var(--wine);margin:8px 0 18px}.classDetailGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0 28px;padding:0;list-style:none;display:grid}.classDetailBox{background:linear-gradient(135deg,#ffffffd1,#bde0ff29);border:1px solid #800d113d;border-radius:8px;min-height:148px;padding:18px;box-shadow:0 14px 32px #05050512}.classDetailBox span{color:var(--wine);font-family:var(--font-display);text-transform:uppercase;margin-bottom:10px;font-size:clamp(1.35rem,2.2vw,2rem);font-weight:950;line-height:.92;display:block}.classDetailBox p{color:var(--ink);margin:0;font-size:clamp(.92rem,1.05vw,1rem);font-weight:650;line-height:1.48}.pricePanel ul{color:var(--wine);margin:0 0 26px;padding-left:22px;font-size:clamp(1rem,1.45vw,1.28rem);line-height:1.58}.trainingBlock{background:var(--fog);color:var(--ink);overflow:hidden}.trainingIntro{max-width:980px;margin-bottom:42px}.trainingIntro>p{color:var(--wine);letter-spacing:0;text-transform:uppercase;margin:0 0 12px;font-size:clamp(.78rem,1vw,.95rem);font-weight:950}.trainingIntro h2{color:var(--wine);font-family:var(--font-display);text-transform:uppercase;font-size:clamp(3rem,7vw,8rem);font-weight:950;line-height:.86}.trainingCarousel{padding:0 clamp(18px,5vw,64px) 42px;position:relative;overflow:hidden}.trainingStage{min-height:clamp(430px,45vw,560px);color:var(--ice);cursor:pointer;isolation:isolate;background:linear-gradient(110deg,#050505f0,#050505d1 54%,#800d1170),linear-gradient(#ffffff14,#fff0);border:1px solid #bde0ff47;border-radius:8px;grid-template-columns:minmax(0,.92fr) minmax(300px,.78fr);align-items:stretch;gap:clamp(24px,4vw,58px);padding:clamp(24px,4vw,54px);display:grid;position:relative;overflow:hidden;box-shadow:0 30px 90px #05050561}.trainingStage:before{content:"";pointer-events:none;border:1px solid #bde0ff33;position:absolute;inset:14px}.trainingStage:after{content:"";z-index:-2;opacity:.72;background:radial-gradient(circle at 78% 36%,#bde0ff29,#0000 34%),linear-gradient(90deg,#ffffff0a 1px,#0000 1px) 0 0/46px 46px;position:absolute;inset:0}.trainingContent{z-index:1;align-content:center;display:grid;position:relative}.trainingCounter{color:var(--ice);font-family:var(--font-body);align-items:center;gap:14px;margin-bottom:clamp(24px,4vw,44px);font-size:.92rem;font-weight:850;display:flex}.trainingCounter span{background:#bde0ffb8;width:clamp(42px,7vw,96px);height:1px}.trainingKicker{width:fit-content;color:var(--wine);background:var(--ice);text-transform:uppercase;margin:0 0 20px;padding:9px 12px;font-size:clamp(.78rem,1vw,.95rem);font-weight:950;line-height:1}.trainingContent h3{max-width:620px;min-height:0;color:var(--ice);font-family:var(--font-display);text-transform:uppercase;text-shadow:3px 3px #050505c7;margin:0 0 clamp(18px,2vw,26px);font-size:clamp(3.1rem,7vw,8rem);font-weight:950;line-height:.84}.trainingReveal{opacity:.74;max-width:680px;transition:opacity .24s,transform .24s;transform:translateY(8px)}:is(.trainingStage:hover .trainingReveal,.trainingStage:focus-visible .trainingReveal,.trainingStage.is-open .trainingReveal){opacity:1;transform:translateY(0)}.trainingReveal strong{color:var(--ice);font-family:var(--font-body);text-transform:uppercase;margin-bottom:10px;font-size:clamp(.92rem,1.1vw,1.06rem);font-weight:950;line-height:1.15;display:block}.trainingReveal p{color:#ffffffdb;font-family:var(--font-body);margin:0;font-size:clamp(1rem,1.35vw,1.2rem);font-weight:650;line-height:1.58}.trainingImageWrap{min-height:100%;position:relative}.trainingImageWrap img{object-fit:cover;filter:grayscale()contrast(1.05);border-radius:8px;width:100%;height:100%;min-height:340px;transition:filter .35s,transform .35s;display:block;box-shadow:0 22px 62px #0000006b}:is(.trainingStage:hover .trainingImageWrap img,.trainingStage:focus-visible .trainingImageWrap img,.trainingStage.is-open .trainingImageWrap img){filter:grayscale(0%)contrast(1.02);transform:scale(1.025)}.trainingImageCorner{border-color:var(--ice);pointer-events:none;width:56px;height:56px;position:absolute}.trainingImageCorner.top{border-top:2px solid;border-left:2px solid;top:-12px;left:-12px}.trainingImageCorner.bottom{border-bottom:2px solid;border-right:2px solid;bottom:-12px;right:-12px}.trainingProgress{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:22px;display:grid}.trainingProgressItem{color:#ffffff94;cursor:pointer;text-align:left;background:0 0;border:0;min-width:0;padding:0;display:block}.trainingProgressItem span{background:#ffffff2e;height:4px;display:block;overflow:hidden}.trainingProgressItem i{background:var(--ice);height:100%;transition:width .35s;display:block}.trainingProgressItem strong{font-family:var(--font-body);text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;margin-top:10px;font-size:clamp(.72rem,.85vw,.84rem);font-weight:850;display:block;overflow:hidden}.trainingProgressItem.is-active{color:var(--ice)}.trainingArrow{z-index:4;width:54px;height:54px;color:var(--ice);cursor:pointer;background:#800d11f0;border:1px solid #ffffffb8;border-radius:50%;place-items:center;transition:background .2s,transform .2s;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 16px 38px #05050552}:is(.trainingArrow:hover,.trainingArrow:focus-visible){background:var(--wine);transform:translateY(-50%)scale(1.06)}.trainingArrow.prev{left:0}.trainingArrow.next{right:0}.trainingArrow span{font-family:var(--font-display);margin-top:-4px;font-size:3.4rem;line-height:1;display:block}.youthPanel,.feePanel,.rentalPanel,.trialPanel{background:#ffffff8a;border:1px solid #0505051f;border-radius:8px;padding:34px}.youthPanel{max-width:780px;margin-left:auto}.schedule{background:var(--fog)}.schedulePage{padding-top:40px}.scheduleLayout,.teamLayout{grid-template-columns:1fr minmax(250px,320px);align-items:start;gap:28px;display:grid}.scheduleLayout{display:block}.scheduleWrap{background:radial-gradient(circle at 18% 12%, #ffffff6b, transparent 28%), linear-gradient(145deg, #ffffff80, #05050509), var(--smoke);border:1px solid #0505051f;border-radius:8px;width:100%;padding:clamp(18px,3vw,34px);overflow:visible;box-shadow:inset 0 1px #ffffff5c}.scheduleGrid{grid-template-columns:minmax(82px,.9fr) repeat(6,minmax(0,1fr));align-items:center;column-gap:clamp(8px,1.65vw,22px);width:100%;display:grid}.scheduleGrid>*{text-align:center;text-transform:uppercase;border:0;border-radius:0;justify-content:center;align-items:center;min-height:clamp(54px,6vw,76px);padding:4px;font-size:clamp(.66rem,1.15vw,1.04rem);font-weight:500;line-height:1.06;display:flex}.scheduleHeader strong{background:var(--ice);min-height:42px;color:var(--wine);border-radius:999px;margin-bottom:12px;font-size:clamp(.78rem,1.45vw,1.36rem);font-weight:950}.scheduleHeader strong:first-child{background:var(--wine);color:var(--paper)}.scheduleGrid time{color:var(--wine);white-space:nowrap;border-right:2px solid var(--ice);background:0 0;justify-content:flex-start;padding-right:clamp(6px,1vw,14px);font-size:clamp(.68rem,1.2vw,1.06rem);font-weight:500}.scheduleGrid a{color:var(--wine);text-decoration:none;transition:background .2s,color .2s,transform .2s}:is(.scheduleGrid a:hover,.scheduleGrid a:focus-visible){color:var(--wine);background:#bde0ff6b;border-radius:999px;transform:translateY(-2px)}.scheduleBreak{min-height:54px;color:var(--wine);text-align:center;text-transform:uppercase;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;font-size:clamp(1rem,1.8vw,1.45rem);font-weight:950;display:grid}.scheduleBreak span{background:var(--ice);height:2px}.empty{min-height:clamp(54px,6vw,76px)}.bookingStrip{color:var(--paper);background:#050505;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(20px,4vw,56px);padding:clamp(18px,2.8vw,28px) max(22px,50vw - 590px);display:grid}.bookingStrip img{object-fit:contain;object-position:left center;mix-blend-mode:screen;width:min(720px,100%);height:auto;max-height:138px;display:block}.bookingStrip a{background:var(--wine);color:var(--paper)}.adminApp{min-height:100vh;color:var(--ink);background:#f7f4e8;grid-template-columns:82px minmax(0,1fr);display:grid}.adminSidebar{height:auto;min-height:100vh;color:var(--paper);background:#080808;border-right:1px solid #7210102e;flex-direction:column;align-items:center;gap:28px;padding:18px 14px;display:flex;position:sticky;top:0}.adminBrand{color:var(--ice);text-transform:uppercase;justify-items:center;gap:8px;font-size:0;font-weight:950;display:grid}.adminBrand img{object-fit:contain;width:42px;height:42px}.adminBrand span{background:var(--ice);border-radius:999px;width:6px;height:6px;overflow:hidden}.adminMenuButton{display:none}.adminTabs{gap:12px;display:grid}.adminTabs button,.adminButton,.rowActions a,.rowActions button,.payment{min-height:42px;font:inherit;text-transform:uppercase;cursor:pointer;border:1px solid #05050529;border-radius:8px;font-size:.76rem;font-weight:950}.adminTabs button{width:48px;min-height:48px;color:var(--wine);text-align:center;background:#fffffff5;border-color:#0505051f;border-radius:999px;place-items:center;padding:0;display:grid;box-shadow:0 8px 18px #0505051a}:is(.adminTabs button.isActive,.adminTabs button:hover,.adminTabs button:focus-visible){background:var(--wine);color:var(--paper);transform:translateY(-2px)}.adminTabIcon{font-family:var(--font-body);font-size:.88rem;font-weight:950;line-height:1}.adminTabLabel,.adminMobileActions{display:none}.calendarMenuIcon{border:2px solid;border-radius:4px;width:19px;height:18px;display:block;position:relative}.calendarMenuIcon:before,.calendarMenuIcon:after{content:"";position:absolute}.calendarMenuIcon:before{border-top:2px solid;top:4px;left:-2px;right:-2px}.calendarMenuIcon:after{background:currentColor;border-radius:1px;width:3px;height:3px;bottom:4px;left:4px;box-shadow:6px 0}.adminMain{padding:26px clamp(18px,3vw,38px) 64px;overflow:hidden}.adminHeader,.adminSectionHead{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.adminHeader h1{color:var(--wine);font-family:var(--font-body);text-shadow:none;text-transform:none;margin:0;font-size:clamp(2rem,3.2vw,3.5rem);font-weight:900;line-height:1}.adminActions,.rowActions{flex-wrap:wrap;gap:10px;display:flex}.adminSyncBadge{background:var(--ice);max-width:260px;color:var(--wine);border:1px solid #72101024;border-radius:8px;align-self:center;padding:8px 10px;font-size:.68rem;font-weight:900;line-height:1.2}.adminSaveNotice{color:var(--wine);background:#fff4f4;border:1px solid #8f101438;border-radius:8px;margin:0 0 18px;padding:12px 14px;font-size:.78rem;font-weight:900}.adminButton,.rowActions a,.rowActions button{justify-content:center;align-items:center;padding:10px 14px;display:inline-flex}.primaryAdmin{background:var(--wine);color:var(--paper)}.secondaryAdmin{background:var(--paper);color:var(--wine)}.adminStats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.adminStatsDisclosure{margin:20px 0}.adminStatsDisclosure summary{background:var(--paper);min-height:46px;color:var(--wine);text-transform:uppercase;cursor:pointer;border:1px solid #05050529;border-radius:8px;align-items:center;padding:10px 14px;font-size:.76rem;font-weight:950;list-style:none;display:inline-flex}.adminStatsDisclosure summary::-webkit-details-marker{display:none}.adminStatsDisclosure summary:after{content:"+";margin-left:12px}.adminStatsDisclosure[open] summary:after{content:"-"}.adminStats article,.adminSection,.paymentBoard article{background:#ffffffb8;border:1px solid #7210101f;border-radius:8px;box-shadow:0 2px 8px #0505050f}.adminStats article{min-height:86px;padding:14px}.adminStats span,.studentHeader,.bookingRow small,.paymentBoard span{color:#05050594;text-transform:uppercase;font-size:.72rem;font-weight:900}.adminStats strong{color:var(--wine);font-family:var(--font-display);margin-top:8px;font-size:clamp(1.7rem,2.9vw,3rem);line-height:.9;display:block}.adminSection{padding:clamp(16px,2.2vw,26px);overflow:hidden}.adminSection h2{color:var(--wine);font-family:var(--font-body);margin-bottom:10px;font-size:clamp(1.28rem,2vw,2rem);font-weight:900;line-height:1.1}.adminSection p{color:#050505ad;max-width:720px;line-height:1.55}.adminSearch{min-width:min(100%,320px);color:var(--wine);text-transform:uppercase;gap:8px;font-size:.72rem;font-weight:950;display:grid}.adminSearch input,.sheetCell input,.sheetCell select,.enrollmentRow select,.paymentEditor select,.editableCardFields input,.editableCardFields select,.editableCardFields textarea,.editableMetaGrid input,.editableMetaGrid select,.bookingEditor input,.bookingEditor select,.bookingEditor textarea,.classSlotRow input,.reservationForm input,.reservationForm select,.reservationForm textarea{background:var(--paper);width:100%;min-height:46px;color:var(--ink);font:inherit;text-transform:none;border:1px solid #0505052e;border-radius:4px;padding:12px}.adminList{gap:12px;margin-top:20px;display:grid}.bookingRow{background:#05050509;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px;display:grid}.draftBooking{background:#bde0ff57;border:1px solid #7210102e}.bookingRow h3,.paymentBoard h3{color:var(--wine);font-family:var(--font-body);text-transform:uppercase;margin:8px 0;font-size:clamp(1.15rem,2vw,1.45rem);font-weight:950}.bookingEditor,.editableCardFields{gap:8px;display:grid}.labeledFields label{color:var(--wine);text-transform:uppercase;gap:5px;font-size:.68rem;font-weight:950;display:grid}.bookingEditor{grid-template-columns:repeat(2,minmax(0,1fr))}.bookingEditor .statusSelect,.bookingEditor textarea{grid-column:1/-1}.bookingEditor input,.bookingEditor select,.bookingEditor textarea,.editableCardFields input,.editableCardFields select,.editableCardFields textarea,.editableMetaGrid input,.editableMetaGrid select,.classSlotRow input{background:#ffffffe0;min-height:36px;padding:8px 10px;font-size:.76rem}.bookingEditor textarea,.editableCardFields textarea{resize:vertical;min-height:78px}.statusSelect,.payment{width:max-content;color:var(--ink);text-transform:uppercase;border:1px solid #72101029;border-radius:999px;justify-content:center;align-items:center;padding:8px 10px;font-size:.68rem;font-weight:950;display:inline-flex}.statusSelect{background:var(--paper);cursor:pointer;min-height:34px}.statusSelect.nueva,.payment.pendiente{color:var(--wine);background:#7210101a}.payment.elegir-fecha{color:#0505059e;background:#0505050f}.statusSelect.contactada,.payment.revisar{background:var(--ice);color:var(--wine)}.statusSelect.confirmada,.payment.pagado{color:var(--wine);background:#fffffff0}.statusSelect.lista-de-espera,.statusSelect.asistio{color:var(--wine);background:#bde0ffb8}.statusSelect.no-asistio,.statusSelect.cancelado{color:var(--ink);background:#05050514}.rowActions a{background:var(--wine);color:var(--paper)}.rowActions button{background:var(--paper);color:var(--wine)}.draftBooking .rowActions button[type=submit]{background:var(--wine);color:var(--paper)}.studentTable{background:#ffffff6b;border:1px solid #0505051f;border-radius:8px;margin-top:20px;overflow-x:auto}.studentHeader,.studentRow{border-bottom:1px solid #0505051a;grid-template-columns:42px minmax(164px,.8fr) minmax(148px,.72fr) minmax(132px,.56fr) minmax(330px,1.6fr) minmax(126px,.58fr) minmax(156px,.7fr);align-items:stretch;gap:0;min-width:1098px;display:grid}.studentHeader{z-index:2;background:#ece8dc;position:sticky;top:0}.studentHeader span{border-right:1px solid #0505051a;align-items:center;min-height:36px;padding:8px 10px;display:flex}.studentRow{color:#050505c2;min-height:78px;font-size:.82rem}.studentRow>*{border-right:1px solid #0505051a;padding:8px}.studentNumber{color:var(--ink);font-family:var(--font-display);justify-content:center;align-items:flex-start;font-size:1.45rem;line-height:1;display:flex}.sheetCell{align-content:start;gap:8px;display:grid}.sheetCell span{color:var(--wine);text-transform:uppercase;font-size:.68rem;font-weight:900;display:block}.sheetCell input,.sheetCell select,.enrollmentRow select{background:#ffffffc7;min-height:34px;padding:7px 9px;font-size:.78rem}.enrollmentEditor{gap:10px;display:grid}.enrollmentRow{border-bottom:1px solid #05050514;grid-template-columns:minmax(122px,.58fr) minmax(0,1fr) 58px;align-items:start;gap:7px;padding-bottom:10px;display:grid}.enrollmentRow:last-of-type{border-bottom:0}.schedulePicker{flex-wrap:wrap;gap:6px;display:flex}.schedulePicker label{min-height:30px;color:var(--wine);background:#bde0ff6b;border:1px solid #72101024;border-radius:999px;align-items:center;gap:6px;padding:5px 8px;font-size:.66rem;font-weight:850;display:inline-flex}.schedulePicker input{width:14px;height:14px;accent-color:var(--wine)}.miniButton{background:var(--wine);min-height:32px;color:var(--paper);font:inherit;text-transform:uppercase;cursor:pointer;border:1px solid #0505051f;border-radius:6px;padding:7px 9px;font-size:.62rem;font-weight:950}.miniButton.danger{color:var(--ink);background:#05050514}.miniButton:disabled{opacity:.38;cursor:not-allowed}.paymentEditor{align-content:start;gap:8px;display:grid}.classAccordion,.paymentBoard{gap:10px;margin-top:20px;display:grid}.paymentBoard article{padding:18px}.classGroup{background:#ffffffb8;border:1px solid #7210101f;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0505050f}.classGroup summary{cursor:pointer;grid-template-columns:110px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:68px;padding:14px 18px;list-style:none;display:grid}.classGroup summary::-webkit-details-marker{display:none}.classGroup summary:after{background:var(--wine);width:28px;min-height:28px;color:var(--paper);content:"+";border-radius:999px;grid-area:1/3;justify-self:end;place-items:center;margin-left:12px;font-weight:950;display:inline-grid}.classGroup[open] summary:after{content:"-"}.classGroup summary span,.classGroup summary small{color:#05050594;text-transform:uppercase;font-size:.72rem;font-weight:900}.classGroup summary strong{color:var(--wine);text-transform:uppercase;font-size:clamp(1rem,1.8vw,1.45rem);font-weight:950}.classGroup summary small{padding-right:46px}.classSlotsTable{border:1px solid #0505051a;border-radius:8px;margin:0 18px 18px;display:grid;overflow:hidden}.classSlotsHeader,.classSlotRow{grid-template-columns:1.15fr .82fr 1.04fr 1.15fr 190px 92px 92px 78px;align-items:center;gap:0;display:grid}.classSlotsHeader{background:var(--wine);color:var(--paper);text-transform:uppercase;font-size:.7rem;font-weight:950}.classSlotsHeader span,.classSlotRow>*{border-right:1px solid #05050514;align-items:center;min-height:40px;padding:9px 12px;display:flex}.classSlotRow{color:#050505c2;background:#ffffff9e;border-top:1px solid #05050514}.classSlotRow strong,.classSlotRow span:last-child{color:var(--wine);font-weight:950}.classSlotRow input{width:calc(100% - 12px);margin:6px}.classSlotRow span{gap:5px}.stepperControl{grid-template-columns:28px minmax(34px,1fr) 28px;align-items:center;gap:4px;width:100%;display:grid}.classSlotRow .stepperControl{border-right:0;padding:0}.stepperControl button{background:var(--wine);min-height:30px;color:var(--paper);font:inherit;cursor:pointer;border:1px solid #0505051f;border-radius:6px;place-items:center;font-size:.86rem;font-weight:950;line-height:1;display:grid}.stepperControl input,.classSlotRow .stepperControl input{text-align:center;width:100%;min-height:30px;margin:0;padding:5px 4px}.compactStepper{padding:9px 8px}.capacityEditor{grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;gap:6px;display:grid}.capacityEditor label{color:#05050594;text-transform:uppercase;gap:3px;font-size:.58rem;font-weight:950;line-height:1.1;display:grid}.capacityEditor input{text-align:center;width:100%;margin:0}.capacityEditor strong{color:var(--wine);text-transform:uppercase;grid-column:1/-1;font-size:.66rem;font-weight:950}.capacityAlert{background:#bde0ff6b;color:var(--wine)!important}.monthCalendar{background:#ffffffbd;border:1px solid #7210101f;border-radius:8px;gap:10px;margin-top:18px;padding:14px;display:grid;box-shadow:0 2px 8px #0505050f}.monthCalendarHead{grid-template-columns:104px minmax(0,1fr) 104px;align-items:center;gap:10px;display:grid}.monthCalendarHead strong{color:var(--wine);text-align:center;text-transform:uppercase;font-size:clamp(1.1rem,2vw,1.6rem);font-weight:950}.monthWeekdays,.monthGrid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.monthWeekdays span{color:#05050594;text-transform:uppercase;place-items:center;min-height:28px;font-size:.68rem;font-weight:950;display:grid}.monthDay{aspect-ratio:1;min-height:92px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#ffffffdb;border:1px solid #0505051a;border-radius:8px;align-content:start;gap:5px;padding:9px;display:grid}.monthDay.hasClasses{border-color:#72101038}.monthDay.isSelected{background:var(--wine);border-color:var(--wine);color:var(--paper)}.monthDay.emptyDay{pointer-events:none;background:0 0;border:0;min-height:92px}.monthDay strong{font-size:1rem;font-weight:950}.monthDay span,.monthDay small{width:max-content;max-width:100%;color:var(--wine);text-transform:uppercase;background:#bde0ff80;border-radius:999px;padding:4px 6px;font-size:.58rem;font-weight:950;line-height:1.1}.monthDay.isSelected span,.monthDay.isSelected small{color:var(--paper);background:#ffffff2e}.calendarToolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;display:flex}.calendarToolbar strong,.calendarToolbar span{min-height:38px;color:var(--wine);text-transform:uppercase;background:#ffffffc7;border:1px solid #72101024;border-radius:999px;align-items:center;padding:8px 12px;font-size:.74rem;font-weight:950;display:inline-flex}.scheduleSelector{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.scheduleSelector button{min-height:34px;color:var(--wine);font:inherit;text-transform:uppercase;cursor:pointer;background:#ffffffdb;border:1px solid #72101024;border-radius:999px;padding:7px 10px;font-size:.66rem;font-weight:950}.scheduleSelector button.isActive{background:var(--wine);color:var(--paper)}.calendarGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.calendarGrid.singleCalendarGrid{grid-template-columns:1fr}.calendarClass{background:#ffffffbd;border:1px solid #7210101f;border-radius:8px;gap:14px;padding:16px;display:grid;box-shadow:0 2px 8px #0505050f}.calendarClass header{gap:4px;display:grid}.calendarClass header span,.calendarClass header small,.calendarColumns h4{color:#05050594;text-transform:uppercase;font-size:.68rem;font-weight:950}.calendarClass h3{color:var(--wine);font-family:var(--font-body);text-transform:uppercase;margin:0;font-size:clamp(1rem,1.4vw,1.28rem);font-weight:950;line-height:1.05}.calendarCapacity{flex-wrap:wrap;gap:8px;display:flex}.calendarCapacity strong,.calendarCapacity span{background:var(--ice);min-height:30px;color:var(--wine);text-transform:uppercase;border:1px solid #7210101f;border-radius:999px;align-items:center;padding:6px 9px;font-size:.66rem;font-weight:950;display:inline-flex}.calendarColumns{grid-template-columns:1fr;gap:12px;display:grid}.calendarColumns>div{min-width:0}.calendarColumns h4{margin:0 0 8px}.calendarList{align-content:start;gap:6px;display:grid}.attendeePill,.emptyPill{width:100%;max-width:100%;min-height:30px;color:var(--ink);font-family:var(--font-body);overflow-wrap:break-word;white-space:normal;word-break:normal;background:#ffffffdb;border:1px solid #72101024;border-radius:8px;align-items:center;padding:6px 9px;font-size:.7rem;font-weight:850;line-height:1.15;display:flex}.attendeePill.trial{color:var(--wine);background:#bde0ff73}.emptyPill{color:#05050585}.editableWaitlist{display:grid}.waitlistLine{grid-template-columns:minmax(0,1fr) 112px 74px;gap:6px;width:100%;display:grid}.waitlistLine input,.waitlistLine select{background:#ffffffdb;min-height:32px;padding:7px 8px;font-size:.68rem}.announcementGrid,.changeBoard,.resourceBoard{gap:12px;margin-top:20px;display:grid}.announcementGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.announcementCard,.changeBoard article,.resourceBoard article,.monthLedger article{background:#ffffffc2;border:1px solid #7210101f;border-radius:8px;padding:18px;box-shadow:0 2px 8px #0505050f}.announcementCard.general{background:#bde0ff61}.announcementCard.importante{background:#8fbde5}.announcementCard span,.resourceBoard span,.portalNotice span,.portalList span,.slotPreview span{color:var(--wine);text-transform:uppercase;font-size:.68rem;font-weight:950}.announcementCard h3,.changeBoard h3,.resourceBoard h3{color:var(--wine);text-transform:uppercase;margin:8px 0;font-size:clamp(1.1rem,1.8vw,1.45rem);font-weight:950}.announcementCard dl,.changeBoard dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0 0;display:grid}.editableMetaGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.editableMetaGrid label{color:var(--wine);text-transform:uppercase;gap:5px;font-size:.66rem;font-weight:950;display:grid}.changeBoard dl{grid-template-columns:repeat(4,minmax(0,1fr))}.announcementCard dt,.changeBoard dt{color:#05050594;text-transform:uppercase;font-size:.68rem;font-weight:900}.announcementCard dd,.changeBoard dd{color:var(--ink);margin:4px 0 0;font-weight:850}.policyStrip{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.policyStrip span{background:var(--ice);color:var(--wine);text-transform:uppercase;border:1px solid #7210101f;border-radius:999px;padding:9px 11px;font-size:.72rem;font-weight:950}.changeBoard{grid-template-columns:repeat(2,minmax(0,1fr))}.resourceBoard{grid-template-columns:repeat(3,minmax(0,1fr))}.adminChatLayout{grid-template-columns:260px minmax(0,1fr);gap:14px;margin-top:20px;display:grid}.adminChatList{align-content:start;gap:8px;display:grid}.adminChatList button{color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#ffffffc2;border:1px solid #7210101f;border-radius:8px;gap:5px;padding:12px;display:grid}.adminChatList button.isActive{background:var(--wine);color:var(--paper)}.adminChatList strong,.adminChatList span,.adminChatList small{overflow-wrap:anywhere}.adminChatList strong{color:inherit;text-transform:uppercase;font-size:.82rem;font-weight:950}.adminChatList span,.adminChatList small{color:inherit;opacity:.82;font-size:.68rem;font-weight:850}.adminChatPanel{background:#ffffffc7;border:1px solid #7210101f;border-radius:8px;grid-template-rows:auto minmax(320px,1fr) auto;min-width:0;display:grid;overflow:hidden;box-shadow:0 2px 8px #0505050f}.adminChatHead{background:var(--wine);color:var(--paper);padding:14px 16px}.adminChatHead h3{text-transform:uppercase;margin:0 0 4px;font-size:1rem;font-weight:950}.adminChatHead span{font-size:.72rem;font-weight:850}.adminChatMessages{background:#f7f4e8b8;flex-direction:column;gap:10px;max-height:520px;padding:16px;display:flex;overflow-y:auto}.adminChatMessage{background:#bde0ff61;border:1px solid #7210101f;border-radius:8px;justify-self:end;gap:8px;width:min(680px,100%);margin-left:auto;padding:12px;display:grid}.adminChatMessage>div,.adminChatMessageActions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.adminChatMessage span,.adminChatMessage time,.emptyChat{color:var(--wine);text-transform:uppercase;font-size:.66rem;font-weight:950}.chatSender{color:var(--wine);text-transform:uppercase;font-size:.78rem;font-weight:950}.adminChatMessage label,.adminChatComposer{color:var(--wine);text-transform:uppercase;gap:6px;font-size:.68rem;font-weight:950;display:grid}.adminChatMessage input,.adminChatMessage select,.adminChatMessage textarea,.adminChatComposer input,.adminChatComposer select,.adminChatComposer textarea{background:#ffffffe6;min-height:34px;padding:8px 10px;font-size:.76rem}.adminChatMessage textarea{color:var(--ink);background:0 0;border:0;padding:0;font-size:.86rem;font-weight:750;line-height:1.35}.adminChatMessage textarea,.adminChatComposer textarea{resize:vertical;min-height:74px}.chatPreview{object-fit:cover;background:#ffffffb8;border:1px solid #7210101f;border-radius:8px;width:min(320px,100%);max-height:220px;display:block}.draftPreview{width:min(240px,100%);max-height:180px}.attachmentName{color:var(--wine);overflow-wrap:anywhere;font-size:.74rem;font-weight:950}.adminChatComposer{background:#ffffffdb;border-top:1px solid #7210101f;padding:12px}.adminChatComposer div{justify-content:flex-end;display:flex}.attachButton{background:var(--wine);width:max-content;min-height:38px;color:var(--paper);text-transform:uppercase;cursor:pointer;border:1px solid #0505051f;border-radius:8px;justify-content:center;align-items:center;padding:9px 12px;font-size:.68rem;font-weight:950;display:inline-flex}.attachButton input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.emptyChat{color:#05050580;margin:auto;padding:12px}.resourceBoard p{margin:0 0 12px}.resourceBoard strong,.resourceBoard small{display:block}.monthLedger{gap:10px;margin-top:16px;display:grid}.monthLedger article{grid-template-columns:minmax(150px,.4fr) minmax(0,1fr);align-items:center;gap:14px;display:grid}.monthLedger strong{color:var(--wine);text-transform:uppercase;font-weight:950}.monthLedger div{grid-template-columns:repeat(12,minmax(42px,1fr));gap:6px;display:grid}.portalMonths{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.stripePreview{background:linear-gradient(135deg, #050505f0, #721010e6), var(--wine);color:var(--paper);border-radius:8px;gap:5px;padding:14px;display:grid;position:relative;overflow:hidden;box-shadow:0 14px 30px #0505052e}.stripePreview:after{content:"";background:#bde0ff2e;border-radius:50%;width:118px;height:118px;position:absolute;bottom:-36px;right:-28px}.stripePreview span{color:var(--ice);text-transform:uppercase;font-size:.68rem;font-weight:950}.stripePreview strong{text-transform:uppercase;font-size:1.06rem;font-weight:950}.stripePreview p{color:var(--paper);margin:0;font-size:1.4rem;font-weight:950}.stripePreview small{color:var(--ice);font-size:.9rem;font-weight:950}.monthLedger button,.monthLedger span,.portalMonths span,.portalMonths button{color:#0505059e;text-transform:uppercase;background:#ffffffbd;border:1px solid #0505051a;border-radius:6px;place-items:center;min-height:34px;font-size:.66rem;font-weight:950;display:grid}.monthLedger button.isPaid,.monthLedger span.isPaid,.portalMonths span.isPaid,.portalMonths button.isPaid{color:var(--wine);background:#bde0ffbd;border-color:#72101029}.monthLedger button,.portalMonths button{cursor:pointer}.portalMonths button.isSelected{background:var(--wine);border-color:var(--wine);color:var(--paper)}.portalApp{min-height:100vh;color:var(--ink);background:linear-gradient(#050505e0 0 220px,#f7f4e800 220px),linear-gradient(90deg,#05050509 1px,#0000 1px) 0 0/44px 44px,#f7f4e8;place-items:start center;padding:clamp(12px,3vw,28px);display:grid}.appAccess{min-height:100vh;color:var(--paper);background:radial-gradient(circle at 50% 10%,#7210107a,#72101000 36%),linear-gradient(#050505ad,#050505f5),url(/assets/studio-main-room.png) 50%/cover;place-items:center;padding:24px;display:grid}.appSessionShell{min-height:100vh;position:relative}.appSignOutButton{z-index:60;background:var(--wine);min-height:42px;color:var(--paper);font:inherit;text-transform:uppercase;cursor:pointer;border:1px solid #05050529;border-radius:8px;padding:0 14px;font-size:.72rem;font-weight:950;position:fixed;bottom:16px;right:16px;box-shadow:0 12px 28px #0505052e}:is(.appSignOutButton:hover,.appSignOutButton:focus-visible){background:#9f1414}.accessPanel{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#080808e6;border:1px solid #ffffff24;border-radius:18px;gap:18px;width:min(100%,430px);padding:22px;display:grid;box-shadow:0 28px 70px #05050580}.accessBrand{color:var(--paper);text-align:center;background:linear-gradient(#05050529,#050505c7),url(/assets/hero-ballerina-bw.png) 50% 28%/cover;border:1px solid #ffffff1f;border-radius:16px;place-items:center;gap:18px;padding:28px 18px 22px;display:grid}.accessBrand img{object-fit:contain;background:#bde0fff2;border-radius:12px;width:min(170px,70%);height:62px;padding:9px}.accessBrand div{justify-items:center;gap:8px;display:grid}.accessBrand span{color:var(--ice);text-transform:uppercase;font-size:.68rem;font-weight:950}.accessBrand h1{max-width:11ch;color:var(--paper);font-family:var(--font-body);text-transform:none;margin:0;font-size:clamp(2rem,9vw,3rem);font-weight:950;line-height:.95}.accessBrand p{color:#f7f4e8c7;max-width:28ch;margin:0;font-size:.82rem;font-weight:750;line-height:1.35}.accessNotice,.accessFeedback{color:var(--paper);background:#bde0ff24;border:1px solid #bde0ff52;border-radius:12px;margin:0;padding:12px 14px;font-size:.76rem;font-weight:800;line-height:1.35}.accessFeedback{background:#72101052;border-color:#ffffff38}.accessModeTabs{background:#ffffff14;border:1px solid #ffffff1f;border-radius:999px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:4px;display:grid;overflow:hidden}.accessModeTabs button{color:#f7f4e8b8;min-height:44px;font:inherit;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:999px;font-size:.72rem;font-weight:950}.accessModeTabs button.isActive{background:var(--paper);color:var(--wine);box-shadow:0 8px 20px #05050538}.googleAccessButton{min-height:50px;color:var(--paper);font:inherit;text-transform:uppercase;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:999px;justify-content:center;align-items:center;gap:10px;font-size:.78rem;font-weight:950;display:flex}.googleAccessButton img{background:var(--paper);border-radius:50%;width:24px;height:24px;padding:4px}.accessForm{gap:12px;display:grid}.accessForm label{color:#f7f4e8db;text-transform:uppercase;gap:8px;font-size:.7rem;font-weight:950;display:grid}.accessForm input,.accessForm select{min-height:50px;color:var(--paper);font:inherit;background:#050505a8;border:1px solid #ffffff29;border-radius:999px;padding:13px 15px;font-size:.82rem}.accessForm input::placeholder{color:#f7f4e87a}.accessForm button{background:var(--wine);min-height:52px;color:var(--paper);font:inherit;text-transform:uppercase;cursor:pointer;border:1px solid #ffffff24;border-radius:999px;margin-top:4px;font-size:.76rem;font-weight:950;box-shadow:0 14px 28px #7210105c}@media (max-width:640px){.appAccess{place-items:stretch stretch;min-height:100svh;padding:0}.accessPanel{width:100%;min-height:100svh;padding:max(28px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:#080808e6;border:0;border-radius:0;align-content:space-between;gap:18px}.accessBrand{align-content:end;min-height:250px;padding:28px 18px}.accessBrand img{width:min(150px,58%);height:58px}.accessBrand h1{font-size:clamp(2.15rem,11.5vw,3.25rem)}.accessModeTabs button,.googleAccessButton,.accessForm button{min-height:58px;font-size:.84rem}.accessForm{gap:14px}.accessForm label{gap:8px;font-size:.74rem}.accessForm input,.accessForm select{min-height:56px;padding:14px 16px;font-size:1rem}}.portalPhone{background:#f8f5ec;border:1px solid #ffffff52;border-radius:8px;width:min(100%,460px);min-height:calc(100vh - 36px);overflow:clip;box-shadow:0 24px 64px #0505054d}.portalHeader{min-height:188px;color:var(--paper);isolation:isolate;background:linear-gradient(#05050524,#050505eb),url(/assets/hero-ballerina-bw.png) 50% 30%/cover;align-items:flex-end;gap:12px;padding:18px;display:flex;position:relative}.portalHeader:after{background:var(--wine);content:"";opacity:.92;border:2px solid #ffffff80;border-radius:50%;width:54px;height:54px;position:absolute;bottom:18px;right:18px;box-shadow:0 10px 26px #05050552}.portalHeader img{object-fit:contain;background:#ffffffeb;border-radius:8px;width:44px;height:44px;padding:6px}.portalHeader div{gap:4px;padding-bottom:3px;display:grid}.portalHeader span{color:var(--ice);text-transform:uppercase;font-size:.72rem;font-weight:900}.portalHeader strong{text-transform:uppercase;font-size:1.24rem;font-weight:950;line-height:1}.portalTabs{background:#080808;border-bottom:0;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;padding:10px;display:grid}.portalTabs button{color:#ffffffc7;min-height:42px;font:inherit;text-transform:uppercase;background:#ffffff1f;border:0;border-radius:8px;padding:8px 4px;font-size:.62rem;font-weight:950}.portalTabs button.isActive{background:var(--paper);color:var(--wine)}.portalTabs button:focus-visible{outline:2px solid var(--ice);outline-offset:2px}.portalSection{gap:14px;padding:20px;display:grid}.portalSection h1,.portalTitle{color:var(--wine);font-family:var(--font-body);overflow-wrap:anywhere;text-transform:none;text-shadow:none;margin:0;font-size:clamp(1.55rem,6vw,2rem);font-weight:950;line-height:1.02}.portalFeed,.portalList{gap:12px;display:grid}.portalNotice,.portalList article,.slotPreview{border:1px solid #7210101f;border-radius:8px;padding:16px;position:relative;overflow:hidden;box-shadow:0 12px 28px #05050514}.portalNotice:before,.portalList article:before,.slotPreview:before{background:var(--wine);content:"";width:5px;position:absolute;inset:0 auto 0 0}.portalNotice.general{background:linear-gradient(135deg,#bde0ffdb,#ffffffbd)}.portalNotice.important{background:linear-gradient(135deg,#8fbde5,#d8ecff)}.portalNoticeLabel{color:var(--wine);text-transform:uppercase;margin-bottom:8px;font-size:.72rem;font-weight:950;display:block}.portalNotice h2,.portalList h2,.slotPreview h2{color:var(--wine);font-family:var(--font-body);text-transform:uppercase;margin:8px 0 4px;font-size:1.08rem;font-weight:950;line-height:1.18}.portalNotice p,.portalList p,.slotPreview p{color:#050505b8;margin:0;line-height:1.45}.portalList article,.slotPreview{background:#ffffffdb}.portalToast{background:#bde0ffeb;border:1px solid #72101024;border-radius:8px;margin:0;padding:12px 14px;font-size:.82rem;font-weight:850;color:var(--wine)!important}.chatPicker{gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.chatPicker button,.materialItem button{min-height:38px;color:var(--wine);font:inherit;text-transform:uppercase;background:#ffffffeb;border:1px solid #72101024;border-radius:8px;padding:8px 12px;font-size:.68rem;font-weight:950}.chatPicker button.isActive,.materialItem button{color:var(--paper);background:#080808}.materialItem button{width:100%;margin-top:12px}.portalField{color:var(--wine);text-transform:uppercase;gap:8px;font-size:.72rem;font-weight:950;display:grid}.portalField select{width:100%;min-height:46px;color:var(--ink);font:inherit;text-transform:none;background:#ffffffeb;border:1px solid #72101029;border-radius:8px;padding:12px}.portalMonthHead{grid-template-columns:74px minmax(0,1fr) 74px;align-items:center;gap:6px;display:grid}.portalMonthHead strong{color:var(--wine);text-align:center;text-transform:uppercase;font-size:.92rem;font-weight:950}.portalMonthHead button{min-height:34px;color:var(--paper);font:inherit;text-transform:uppercase;background:#080808;border:0;border-radius:8px;padding:7px 6px;font-size:.58rem;font-weight:950}.portalWeekdays,.portalMonthGrid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.portalWeekdays span{color:#05050594;text-transform:uppercase;place-items:center;min-height:24px;font-size:.56rem;font-weight:950;display:grid}.portalMonthDay{background:#fffc;border:1px solid #05050514;border-radius:6px;align-content:start;gap:3px;min-height:54px;padding:4px;display:grid}.portalMonthDay.emptyDay{background:0 0;border:0}.portalMonthDay.hasClass{border-color:#72101029}.portalMonthDay strong{color:var(--wine);font-size:.62rem;font-weight:950}.portalMonthDay button{min-height:22px;color:var(--wine);font:inherit;overflow-wrap:anywhere;text-align:left;text-transform:uppercase;background:#bde0ffc7;border:1px solid #7210101f;border-radius:5px;padding:3px 4px;font-size:.5rem;font-weight:950;line-height:1.05}.portalMonthDay button.isSelected{background:var(--wine);color:var(--paper)}.bulkRecoveryList{gap:8px;display:grid}.bulkRecoveryList label{background:#ffffffdb;border:1px solid #7210101f;border-radius:8px;gap:6px;padding:10px;display:grid}.bulkRecoveryList span{color:var(--wine);text-transform:uppercase;font-size:.68rem;font-weight:950}.bulkRecoveryList select{min-height:40px;font:inherit;background:#ffffffeb;border:1px solid #72101024;border-radius:8px;padding:10px;font-size:.72rem}.slotPreview button,.paymentUpload button{background:var(--wine);width:100%;min-height:46px;color:var(--paper);font:inherit;text-transform:uppercase;border:1px solid #0505051f;border-radius:8px;margin-top:14px;font-size:.76rem;font-weight:950;box-shadow:0 10px 22px #7210102e}.slotPreview button:disabled{opacity:.45;cursor:not-allowed}.paymentUpload{gap:8px;display:grid}.paymentUpload button{white-space:normal;min-width:0;padding-inline:10px}.paymentUpload button.stripeButton{color:var(--paper);background:#080808}@media (max-width:640px){.portalApp{place-items:stretch stretch;min-height:100svh;padding:0}.portalPhone{width:100%;min-height:100svh;box-shadow:none;border:0;border-radius:0}.portalHeader{min-height:190px;padding:max(18px, env(safe-area-inset-top)) 18px 18px}.portalTabs{z-index:10;position:sticky;top:0}.portalSection{padding:20px 18px 28px}}.paymentBoard{grid-template-columns:repeat(3,minmax(0,1fr))}.teacherSummary,.teacherAdminBoard{gap:10px;display:grid}.teacherSummary{grid-template-columns:repeat(2,minmax(0,1fr))}.teacherSummary article,.teacherAdminBoard article{background:#ffffffc7;border:1px solid #7210101f;border-radius:8px;padding:14px}.teacherSummary span,.teacherAdminStats span,.teacherRecordList span{color:#0505059e;text-transform:uppercase;font-size:.66rem;font-weight:950}.teacherSummary strong{color:var(--wine);margin-top:5px;font-size:1.45rem;font-weight:950;display:block}.teacherAttendanceForm{gap:10px;display:grid}.teacherAttendanceForm label,.teacherAdminControls label{color:var(--wine);text-transform:uppercase;gap:6px;font-size:.68rem;font-weight:950;display:grid}.teacherAttendanceForm input,.teacherAttendanceForm select,.teacherAttendanceForm textarea,.teacherAdminControls input{background:var(--paper);min-height:40px;font:inherit;padding:10px;font-size:.76rem}.teacherAttendanceForm textarea{resize:vertical;min-height:72px}.teacherAttendanceForm button,.teacherRecordList button{background:var(--wine);min-height:42px;color:var(--paper);font:inherit;text-transform:uppercase;cursor:pointer;border:1px solid #0505051f;border-radius:8px;font-size:.72rem;font-weight:950}.teacherRecordList{gap:8px;display:grid}.teacherRecordList article{background:#ffffffc7;border:1px solid #7210101f;border-radius:8px;gap:6px;padding:12px;display:grid}.teacherRecordList strong,.teacherAdminBoard h3,.teacherAdminBoard header strong{color:var(--wine);text-transform:uppercase;font-weight:950}.teacherRecordList p{color:#050505b8;margin:0}.teacherAdminControls{grid-template-columns:190px 96px;justify-content:end;gap:14px;display:grid}.teacherAdminControls input[type=month]{width:190px}.teacherAdminControls input[type=number]{width:96px}.teacherAdminBoard article{gap:12px;display:grid}.teacherAdminBoard header{justify-content:space-between;align-items:center;gap:10px;display:flex}.teacherAdminBoard h3{margin:0;font-size:1.1rem}.teacherAdminBoard header strong{font-size:1.2rem}.teacherAdminStats{flex-wrap:wrap;gap:8px;display:flex}.teacherAdminStats span{background:var(--ice);color:var(--wine);border:1px solid #7210101f;border-radius:999px;padding:7px 9px}.teacherAdminRows{gap:6px;display:grid}.teacherAdminRows p{border-top:1px solid #05050514;grid-template-columns:110px minmax(0,1fr);gap:8px;margin:0;padding:8px 0;display:grid}.teacherAdminRows span{color:#050505b8}.paymentBoard p{color:var(--ink);border-top:1px solid #0505051a;gap:4px;margin:0;padding:12px 0;font-weight:850;display:grid}.reservationPage{background:var(--smoke);grid-template-columns:minmax(0,.8fr) minmax(320px,.9fr);align-items:start;gap:clamp(28px,5vw,64px);display:grid}.reservationIntro h2{color:var(--wine)}.reservationIntro p{color:#050505b8;max-width:650px;line-height:1.65}.reservationForm{background:#ffffffc7;border:1px solid #0505051f;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:clamp(20px,3vw,34px);display:grid}.reservationForm label{color:var(--wine);text-transform:uppercase;gap:8px;font-size:.74rem;font-weight:950;display:grid}.reservationForm textarea{resize:vertical}.reservationFallbackFields{gap:10px;display:grid}.reservationForm button,.formSuccess,.formError{grid-column:1/-1}.formSuccess,.formError{color:var(--wine);border-radius:8px;margin:0;padding:12px;font-weight:900}.formSuccess{background:var(--ice)}.formError{background:#7a0f1214;border:1px solid #7a0f1233}.fees{background:var(--stone);grid-template-columns:1fr minmax(300px,500px);gap:42px;display:grid}.fees .sectionIntro,.rental .sectionIntro,.trial .sectionIntro{margin-bottom:0;display:block}.team{background:radial-gradient(circle at 12% 0%, #bde0ff47, transparent 28%), linear-gradient(180deg, var(--smoke), var(--fog));overflow:hidden}.teamIntro{margin-bottom:52px;display:block}.teamIntro h2{max-width:920px;color:var(--wine);font-family:var(--font-display);text-transform:uppercase;margin-bottom:18px;font-size:clamp(2.3rem,5.4vw,5.6rem);font-weight:950;line-height:.88}.teamIntro>p:last-child{color:#050505b8;max-width:680px;margin:0}.teamCarousel{width:100vw;margin-left:-50vw;padding:0 clamp(28px,10vw,150px);position:relative;left:50%;overflow:hidden}.teamCarousel:before,.teamCarousel:after{z-index:2;pointer-events:none;content:"";width:min(13vw,170px);height:100%;position:absolute;top:0}.teamCarousel:before{background:linear-gradient(90deg, var(--smoke) 10%, #e8e9e500);left:0}.teamCarousel:after{background:linear-gradient(270deg, var(--fog) 10%, #e8e9e500);right:0}.teamDetailGrid{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;justify-content:center;gap:20px;padding:2px 0 22px;display:flex;overflow-x:auto}.teamDetailGrid::-webkit-scrollbar{display:none}.teamDetailGrid::-webkit-scrollbar-track{background:0 0}.teamDetailGrid::-webkit-scrollbar-thumb{background:0 0}.teamDetailCard{scroll-snap-align:start;height:clamp(355px,35vw,475px);color:var(--ice);background:var(--charcoal);cursor:pointer;isolation:isolate;border:1px solid #0505051f;border-radius:8px;flex:0 0 clamp(245px,24vw,330px);padding:0;transition:border-color .22s,box-shadow .22s,transform .22s;position:relative;overflow:hidden;box-shadow:0 16px 34px #05050524}:is(.teamDetailCard:hover,.teamDetailCard:focus-visible,.teamDetailCard.is-selected){border-color:#800d11b8;transform:translateY(-6px);box-shadow:0 22px 46px #05050538}.teamDetailCard figure{width:100%;height:100%;margin:0;position:relative}.teamDetailCard img{object-fit:cover;filter:grayscale()contrast(1.06);width:100%;height:100%;transition:filter .28s,transform .28s}.teamDetailCard:hover img{filter:grayscale(0)contrast(1.04);transform:scale(1.035)}.teamDetailCard figcaption{z-index:1;color:var(--wine);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#e8e9e5db;border:1px solid #ffffffb8;border-radius:6px;gap:3px;padding:11px 12px;transition:opacity .24s,transform .24s;display:grid;position:absolute;bottom:12px;left:12px;right:12px}.teamDetailCard figcaption span{font-family:var(--font-body);text-transform:uppercase;font-size:.9rem;font-weight:900;line-height:1.1}.teamDetailCard figcaption small{color:#050505b8;font-size:.78rem;font-weight:800;line-height:1.2}:is(.teamDetailCard:hover figcaption,.teamDetailCard:focus-visible figcaption,.teamDetailCard.is-selected figcaption){opacity:0;transform:translateY(10px)}.teamDetailOverlay{z-index:1;opacity:0;background:linear-gradient(#0505050a 0%,#050505bd 42%,#050505f5 100%);align-content:end;gap:10px;max-height:100%;padding:84px 22px 24px;transition:opacity .28s,transform .28s;display:grid;position:absolute;inset:0;overflow-y:auto;transform:translateY(18%)}:is(.teamDetailCard:hover .teamDetailOverlay,.teamDetailCard:focus-visible .teamDetailOverlay,.teamDetailCard.is-selected .teamDetailOverlay){opacity:1;transform:translateY(0)}.teamDetailCard h3{color:var(--ice);font-family:var(--font-script);text-shadow:0 2px #800d11e0;margin-bottom:0;font-size:clamp(2rem,3.4vw,3.4rem);line-height:.92}.teamDetailCard strong,.teaches{color:var(--ice);font-weight:900}.teamDetailCard p{max-width:760px;margin:0;font-size:.92rem;line-height:1.48}.teamCarouselArrow{z-index:3;width:52px;height:52px;color:var(--ice);cursor:pointer;background:#800d11eb;border:1px solid #ffffffb8;border-radius:50%;place-items:center;transition:background .2s,transform .2s;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 14px 32px #05050538}:is(.teamCarouselArrow:hover,.teamCarouselArrow:focus-visible){background:var(--wine);transform:translateY(-50%)scale(1.06)}.teamCarouselArrow.prev{left:clamp(16px,6vw,88px)}.teamCarouselArrow.next{right:clamp(16px,6vw,88px)}.teamCarouselArrow span{font-family:var(--font-display);margin-top:-4px;font-size:3.2rem;line-height:1;display:block}.installations{background:var(--fog)}.pricesPage{background:radial-gradient(circle at 20% 0%, #bde0ff2e, transparent 28%), linear-gradient(180deg, #050505 0%, var(--wine) 58%, #050505 100%);color:var(--ice)}.pricingHeader{max-width:820px;margin-bottom:44px;display:block}.pricingHeader h2{color:var(--ice);font-family:var(--font-display);text-transform:uppercase;margin:0 0 18px;font-size:clamp(2.4rem,5vw,4.8rem);font-weight:950;line-height:.92}.pricingHeader p{color:#ffffffad;margin:0;font-size:clamp(1rem,1.2vw,1.12rem);font-weight:550;line-height:1.7}.pricingGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:760px;margin-bottom:68px;margin-left:auto;margin-right:auto;display:grid}.pricingCard{background:radial-gradient(circle 420px at var(--spot-x,-999px) var(--spot-y,-999px), #ffffff2e, transparent 60%), #161616eb;border:1px solid #ffffff24;border-radius:8px;flex-direction:column;min-height:360px;padding:clamp(18px,2.3vw,24px);transition:background .22s,border-color .22s,transform .22s;display:flex;position:relative;box-shadow:0 24px 70px #05050552}.pricingCard:before{content:"";pointer-events:none;border:1px solid #ffffff1a;border-radius:8px;position:absolute;inset:6px}.pricingCard:hover,.pricingCard:focus-within{border-color:#bde0ff7a;transform:translateY(-6px)}.pricingCard.featured{background:radial-gradient(circle 420px at var(--spot-x,-999px) var(--spot-y,-999px), #ffffff38, transparent 60%), linear-gradient(145deg, #800d11f5, #252525f5)}.pricingBadge{z-index:2;color:var(--wine);background:var(--ice);text-transform:uppercase;border:1px solid #ffffff47;border-radius:999px;padding:7px 13px;font-size:.75rem;font-weight:950;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.pricingCardTop{justify-content:space-between;gap:14px;display:flex}.pricingCardTop p{color:#ffffffbd;letter-spacing:0;text-transform:uppercase;margin:0;font-size:.68rem;font-weight:950}.pricingCardTop span{color:#ffffff85;text-align:right;font-size:.72rem;font-weight:750}.pricingDivider{border-top:1px solid #ffffff21;margin:14px 0 24px}.pricingPrice{color:var(--ice);font-family:var(--font-display);text-transform:uppercase;font-size:clamp(3.2rem,5.4vw,4.6rem);font-weight:950;line-height:.78}.pricingDescription{color:#ffffffa8;max-width:340px;margin:14px 0 20px;font-size:.88rem;font-weight:550;line-height:1.55}.pricingCard .button{width:fit-content;min-height:34px;margin-bottom:20px;padding:0 16px;font-size:.82rem}.pricingCard ul{gap:0;margin:auto 0 0;padding:0;list-style:none;display:grid}.pricingCard li{color:#ffffffc7;border-top:1px solid #ffffff1a;align-items:center;gap:12px;padding:11px 0;font-size:.82rem;font-weight:650;line-height:1.35;display:flex}.pricingCard li span{width:19px;height:19px;color:var(--ice);background:#ffffff14;border:1px solid #ffffff2e;border-radius:50%;flex:none;place-items:center;font-size:.8rem;font-weight:950;display:grid}.pricesPage h2,.pricesPage .softNote span{color:var(--ice)}.pricingFlexibility h2{max-width:760px;font-family:var(--font-display);text-transform:uppercase;font-size:clamp(2.6rem,5.2vw,5.2rem);font-weight:950;line-height:.9}.pricingFlexibility>div:first-child>p{font-size:clamp(1.08rem,1.35vw,1.26rem);font-weight:600}.pricesPage .softNote{background:radial-gradient(circle at var(--spot-x,20%) var(--spot-y,0%), #bde0ff2e, transparent 46%), #05050533;border-color:#bde0ff4d;animation:4.8s ease-in-out infinite recoveryFloat;position:relative;overflow:hidden;box-shadow:0 18px 48px #0505053d}.pricesPage .softNote:before{content:"";pointer-events:none;border:1px solid #bde0ff2e;border-radius:8px;position:absolute;inset:8px}.pricesPage .softNote:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff38,#0000);width:42%;animation:5.8s ease-in-out infinite recoveryShine;position:absolute;top:-40%;bottom:-40%;left:-60%;transform:rotate(18deg)}.pricesPage .softNote span,.pricesPage .softNote p{z-index:1;position:relative}.eventsPage{background:var(--ice);color:var(--wine)}.eventsGallery{flex-wrap:wrap;align-items:flex-start;gap:18px;margin-top:clamp(32px,5vw,68px);display:flex}.eventsGallery img{filter:contrast(1.03)saturate(.88);border:1px solid #7210102e;border-radius:8px;width:auto;max-width:min(100%,520px);height:auto;display:block}.eventsGallery img:first-child{max-width:min(100%,360px)}.eventsGallery img:nth-child(2){max-width:min(100%,560px)}.eventsGallery img:nth-child(3){max-width:min(100%,390px)}.featurePanel{background:#ffffff75;border:1px solid #7210102e;border-radius:8px;margin-top:54px;padding:clamp(24px,5vw,54px)}.featurePanel h2{color:var(--wine)}.featurePanel p{max-width:860px;font-size:clamp(1rem,1.4vw,1.22rem);line-height:1.68}.rentalPage{background:var(--smoke)}.rentalShowcase{gap:clamp(28px,4vw,46px);display:grid}.rentalIntro{align-content:start;gap:14px;max-width:960px;display:grid}.rentalIntro h2{max-width:940px;color:var(--wine);font-family:var(--font-display);font-size:clamp(3.8rem,8vw,7.6rem);font-weight:950;line-height:.9}.rentalIntro p{max-width:760px}.rentalIntro .button{width:fit-content}.rentalGallery{flex-wrap:wrap;align-items:flex-start;gap:18px;margin:0;display:flex}.rentalGallery img{filter:contrast(1.02)saturate(.92);border:1px solid #05050529;border-radius:8px;width:auto;max-width:min(100%,390px);height:auto;display:block}.rentalGallery img:first-child{max-width:min(100%,680px)}.teamMarquee{width:100vw;margin-left:-50vw;position:relative;left:50%;overflow:hidden}.teamMarquee:before,.teamMarquee:after{z-index:2;pointer-events:none;content:"";width:min(12vw,160px);height:100%;position:absolute;top:0}.teamMarquee:before{background:linear-gradient(90deg, var(--smoke), transparent);left:0}.teamMarquee:after{background:linear-gradient(270deg, var(--fog), transparent);right:0}.teamTrack{gap:22px;width:max-content;animation:46s linear infinite teamMarquee;display:flex}.teamMarquee:hover .teamTrack{animation-play-state:paused}.teamCard{background:#ffffff8f;border:1px solid #0505051f;border-radius:8px;flex:none;width:min(78vw,360px);overflow:hidden;box-shadow:0 18px 50px #05050514}.teamCard figure{aspect-ratio:4/5;background:var(--charcoal);margin:0;position:relative;overflow:hidden}.teamCard img{object-fit:cover;filter:grayscale()contrast(1.06);width:100%;height:100%;transition:filter .28s,transform .28s}.teamCard:hover img{filter:grayscale(0)contrast(1.05);transform:scale(1.03)}.teamCard figcaption{color:var(--wine);text-transform:uppercase;background:#ffffffc7;border:1px solid #ffffff9e;border-radius:6px;padding:10px 12px;font-size:.74rem;font-weight:950;line-height:1.15;position:absolute;bottom:12px;left:12px;right:12px}.teamCard>div{padding:22px}.teamCard h3{color:var(--wine);font-family:var(--font-body);letter-spacing:.04em;text-transform:uppercase;margin-bottom:12px;font-size:clamp(1.8rem,2.6vw,2.8rem);font-weight:300}.teamCard p{margin:0;font-size:.96rem;line-height:1.56}.teamStaticGrid,.miniTeamCard{display:none}@keyframes teamMarquee{0%{transform:translate(0)}to{transform:translate(calc(-50% - 11px))}}@keyframes buttonShine{0%{transform:translate(0)skew(-18deg)}to{transform:translate(360%)skew(-18deg)}}@keyframes ctaBreath{0%,to{transform:translateY(0)scale(1);box-shadow:0 14px 34px #00000029}50%{transform:translateY(-2px)scale(1.018);box-shadow:0 18px 42px #72101038}}@keyframes whatsappPulse{0%,to{box-shadow:0 18px 42px #00000038,0 0 #72101057}50%{box-shadow:0 18px 42px #00000038,0 0 0 10px #72101000}}@keyframes recoveryFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes recoveryShine{0%,42%{left:-60%}68%,to{left:120%}}.rental{color:var(--paper);background:linear-gradient(90deg,#050505db,#050505ad),url(/assets/editorial-dance-bw.png) 50%/cover;grid-template-columns:1fr minmax(320px,500px);gap:42px;display:grid}.rental .kicker{color:var(--ice)}.rentalPanel{background:#0505055c;border-color:#fff3;align-self:center}.trial{background:var(--wine);color:var(--paper);grid-template-columns:1fr minmax(320px,520px);gap:42px;display:grid}.trial .kicker{color:var(--ice)}.trialPanel{color:var(--ink);background:#ffffffe6;align-self:center}.contact{color:var(--paper);text-align:center;background:#050505;place-items:center;margin-top:clamp(64px,8vw,118px);padding-top:clamp(58px,7vw,86px);padding-bottom:clamp(54px,7vw,78px);display:grid}.contact .kicker,.contact h2{color:var(--wine)}address{align-content:center;justify-items:center;gap:18px;max-width:780px;font-size:clamp(.92rem,1.4vw,1.05rem);font-style:normal;font-weight:500;line-height:1.5;display:grid}address p{margin:0}address a{color:inherit;text-decoration:none}:is(address a:hover,address a:focus-visible){text-underline-offset:4px;text-decoration:underline}.footerSocial{justify-content:center;gap:14px;margin-top:2px;display:flex}.footerSocial a{background:var(--paper);color:#050505;border-radius:999px;justify-content:center;align-items:center;width:26px;min-height:26px;display:inline-flex}.footerCredit{margin-top:28px;font-size:.86rem}.footerSocial svg{fill:currentColor;width:16px;height:16px}.mobileSocial svg{fill:currentColor;width:22px;height:22px}@media (max-width:1040px){.topbar{grid-template-columns:auto 1fr auto;gap:16px;padding:12px 18px}.navlinks{gap:8px;font-size:.6rem}.navPanel{left:0;transform:translateY(8px)}.navItem:hover .navPanel,.navItem:focus-within .navPanel{transform:translateY(0)}.heroMonogram{display:none}.sectionIntro,.scheduleLayout,.teamLayout,.fees,.rental,.trial,.reservationPage,.adminApp{grid-template-columns:1fr}.adminSidebar{flex-direction:row;justify-content:space-between;align-items:center;height:auto;position:static}.adminTabs{grid-template-columns:repeat(8,minmax(0,1fr));width:min(100%,620px)}.adminTabs button{text-align:center}.adminStats{grid-template-columns:repeat(2,minmax(0,1fr))}.teacherAdminControls,.teacherAdminRows p,.announcementGrid,.adminChatLayout,.changeBoard,.resourceBoard{grid-template-columns:1fr}.changeBoard dl,.announcementCard dl{grid-template-columns:repeat(2,minmax(0,1fr))}.studentTable{overflow-x:auto}.contentColumns,.contentColumns.reverse,.homeIntro,.homeSteps,.homeContactBlock,.classArticle,.teamDetailCard{grid-template-columns:1fr}.contentColumns.reverse>div,.contentColumns.reverse>figure{grid-area:auto}.homeStepsCopy{overflow:visible}.homeSteps{padding-top:94px}.stepsList{display:none}.stepsCycle{aspect-ratio:1;isolation:isolate;width:min(100%,430px);height:auto;margin:30px auto 24px;display:block;position:relative;overflow:visible}.stepsCycle:before{content:"";border:1px solid #800d1147;border-radius:50%;position:absolute;inset:19%}.stepsFlow{border:0;width:100%;height:100%;margin:0;display:block;position:absolute;inset:0}.stepsFlow:before,.stepsFlow:after{content:none}.stepsFlow li{width:clamp(82px,25vw,106px);position:absolute;transform:translate(-50%,-50%)}.stepsFlow li:before{content:none}.stepsFlow li:first-child{top:13%;left:50%}.stepsFlow li:nth-child(2){top:30%;left:77%}.stepsFlow li:nth-child(3){top:67%;left:77%}.stepsFlow li:nth-child(4){top:86%;left:50%}.stepsFlow li:nth-child(5){top:67%;left:23%}.stepsFlow li:nth-child(6){top:30%;left:23%}.stepsFlow span{font-size:clamp(1.9rem,8vw,2.7rem)}.stepsFlow button{box-shadow:none;background:0 0;border:0;padding:6px 4px;font-size:clamp(.52rem,2.1vw,.66rem)}:is(.stepsFlow button:hover,.stepsFlow button:focus-visible,.stepsFlow button.is-active){box-shadow:none;background:0 0;border-color:#0000;transform:none}.stepsFlow strong{max-width:92px}.cycleArrow1{top:20%;left:62%;transform:rotate(32deg)}.cycleArrow2{top:48%;left:85%;transform:rotate(90deg)}.cycleArrow3{top:78%;left:63%;transform:rotate(145deg)}.cycleArrow4{top:78%;left:32%;transform:rotate(214deg)}.cycleArrow5{top:48%;left:11%;transform:rotate(270deg)}.cycleArrow6{top:20%;left:31%;transform:rotate(326deg)}.repeatNote{text-align:center;max-width:360px;margin:0 auto}.linkGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.aboutMasthead,.aboutFeature,.aboutValues,.aboutSignature,.teamIntro{grid-template-columns:1fr}.aboutStory{border-left:0;padding-left:0}.aboutValuesImage{justify-self:start}.classCard{flex:0 0 min(76vw,320px);min-height:430px}.classCard:hover,.classCard:focus-within{flex-basis:min(76vw,320px)}.youthPanel{margin-left:0}}@media (max-width:720px){.adminApp{min-height:100svh;display:block}.adminSidebar{z-index:50;height:auto;min-height:76px;padding:max(12px, env(safe-area-inset-top)) 18px 12px;background:#080808;flex-direction:row;gap:12px;position:sticky;top:0}.adminBrand{align-items:center;gap:10px;text-decoration:none;display:flex}.adminBrand img{width:44px;height:44px}.adminBrand span{width:auto;height:auto;color:var(--paper);background:0 0;border-radius:0;font-size:.7rem;line-height:1.05;overflow:visible}.adminMenuButton{cursor:pointer;background:#ffffff1a;border:1px solid #ffffff3d;border-radius:999px;place-items:center;gap:5px;width:46px;min-height:46px;margin-left:auto;padding:10px;display:inline-grid}.adminMenuButton span{background:var(--paper);border-radius:999px;width:20px;height:2px;display:block}.adminTabs{background:#fffffffa;border:1px solid #05050524;border-radius:8px;grid-template-columns:1fr;gap:8px;width:auto;max-height:calc(100svh - 104px);padding:12px;display:none;position:absolute;top:calc(100% + 8px);left:14px;right:14px;overflow-y:auto;box-shadow:0 18px 42px #05050538}.adminTabs.isOpen{display:grid}.adminTabs button{width:100%;min-height:48px;box-shadow:none;border-radius:8px;grid-template-columns:34px 1fr;justify-items:start;gap:10px;padding:0 14px}:is(.adminTabs button.isActive,.adminTabs button:hover,.adminTabs button:focus-visible){transform:none}.adminTabIcon{place-items:center;width:28px;display:grid}.adminTabLabel{display:block}.adminMobileActions{grid-template-columns:1fr;gap:8px;padding-top:6px;display:grid}.adminMain{padding:20px 14px 92px;overflow:visible}.adminHeader{gap:14px;display:grid}.adminHeader .kicker{display:none}.adminHeader h1{font-size:1.7rem}.adminActions{display:none}.adminStatsDisclosure{margin:12px 0 16px}.adminStatsDisclosure summary{justify-content:center;width:100%;min-height:46px}.adminStats{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px}.adminStats article{min-height:74px;padding:12px}.adminStats strong{font-size:1.75rem}.topbar{background:0 0;border-radius:0;grid-template-columns:1fr auto;gap:14px;min-height:72px;padding:10px 16px;top:0;left:0;right:0}.brand{margin-bottom:0}.brand img{width:82px;height:48px}.navlinks,.headerCta{display:none}.hamburgerButton{cursor:pointer;background:#ffffff24;border:1px solid #fff3;border-radius:999px;justify-self:end;place-items:center;gap:5px;width:44px;min-height:44px;padding:10px;display:inline-grid}.hamburgerButton span{background:var(--paper);border-radius:999px;width:20px;height:2px;display:block}.mobileScrim{z-index:998;opacity:0;pointer-events:none;background:#0505056b;transition:opacity .22s;display:block;position:fixed;inset:0}.mobileMenu{z-index:999;background:var(--paper);width:min(84vw,390px);height:100dvh;color:var(--ink);overscroll-behavior:contain;flex-direction:column;gap:20px;padding:22px 26px 28px;transition:transform .26s;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(105%);box-shadow:-28px 0 70px #0505053d}.menuToggle:checked~.mobileScrim{opacity:1;pointer-events:auto}.menuToggle:checked~.mobileMenu{transform:translate(0)}.mobileMenuTop{justify-content:space-between;align-items:center;gap:18px;display:flex}.mobileMenuTop img{object-fit:contain;width:82px;height:48px}.mobileClose{background:var(--wine);width:44px;min-height:44px;color:var(--paper);font-family:var(--font-body);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;font-size:2rem;line-height:1;display:inline-flex}.mobileNav{border-top:1px solid #0505051f;display:grid}.mobileNavItem{border-bottom:1px solid #0505051f}.mobileNavItem>a{padding:15px 0;font-size:clamp(1.18rem,6vw,1.55rem);font-weight:900;line-height:1.05;display:block}.mobileSubnav{flex-wrap:wrap;gap:8px;padding:0 0 16px;display:flex}.mobileSubnav a{color:var(--wine);text-transform:uppercase;background:#bde0ff85;border-radius:999px;padding:7px 10px;font-size:.72rem;font-weight:900;display:inline-flex}.mobileContact{color:#0505059e;gap:8px;margin-top:auto;font-weight:800;display:grid}.mobileContact a{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.mobileMenuButtons{gap:12px;display:grid}.mobileMenuButtons a{text-align:center;text-transform:uppercase;border-radius:2px;justify-content:center;align-items:center;min-height:52px;padding:13px 16px;font-size:.86rem;font-weight:950;display:inline-flex}.mobilePrimary{background:var(--wine);color:var(--paper)}.mobileSecondary{background:var(--ice);color:var(--wine)}.mobileSocial{gap:12px;display:flex}.mobileSocial a{background:var(--smoke);width:42px;min-height:42px;color:var(--wine);text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;font-size:.78rem;font-weight:950;display:inline-flex}.hero{min-height:86vh;padding-top:132px}.pageHero{min-height:420px;padding-top:132px}h1{font-size:clamp(4.2rem,27vw,7rem)}.heroNumber{width:clamp(145px,48vw,235px);margin:8px 0 6px}.heroPhrase{max-width:92vw;font-size:clamp(2rem,10vw,3.3rem)}.heroValues{font-size:.78rem}.pageHero h1{font-size:clamp(3.6rem,20vw,6rem)}.section,.contact{padding-top:70px;padding-bottom:70px}.aboutEditorial{border-top-left-radius:34px;border-top-right-radius:34px}.aboutMasthead{padding-bottom:32px}.aboutMasthead h2{font-size:clamp(3rem,18vw,5.6rem)}.aboutFeature{padding:36px 0}.aboutPortrait{justify-self:start;width:min(82vw,360px)}.valueRows.wide{margin-top:42px}.valueRows{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;border-top:0;gap:14px;padding:2px 18px 18px 0;scroll-padding-left:0;display:flex;overflow-x:auto}.valueRows div{scroll-snap-align:start;background:#ffffff94;border:1px solid #05050529;border-radius:8px;flex:0 0 min(78vw,340px);grid-template-columns:1fr;align-content:start;gap:16px;min-height:230px;padding:22px;display:grid;box-shadow:0 14px 30px #05050514}.valueRows span{font-size:1.08rem;line-height:1.18}.valueRows p{font-size:1rem;line-height:1.62}.eventsGallery img,.rentalGallery img,.rentalGallery img:first-child{width:100%;max-width:100%}.linkGrid{grid-template-columns:1fr}.homeFeatureImage,.homeStepsImage{aspect-ratio:4/5}.homeForm{grid-template-columns:1fr}.adminSidebar,.adminHeader,.adminSectionHead{flex-direction:column;align-items:stretch}.adminMain{padding:24px 16px 52px}.adminStats,.calendarGrid,.paymentBoard,.reservationForm,.calendarColumns,.waitlistLine{grid-template-columns:1fr}.monthCalendar{padding:10px}.monthCalendarHead{grid-template-columns:1fr}.monthDay,.monthDay.emptyDay{min-height:58px;padding:5px}.monthDay span,.monthDay small{padding:2px 4px;font-size:.48rem}.classGroup summary{grid-template-columns:1fr;gap:6px}.classGroup summary:after{grid-area:1/1}.classGroup summary small{padding-right:0}.classSlotsHeader{display:none}.classSlotRow{grid-template-columns:1fr}.classSlotRow>*{border-right:0;min-height:34px}.bookingRow{grid-template-columns:1fr}.studentTable{background:0 0;border:0;min-width:0;overflow:visible}.studentHeader{display:none}.studentRow{background:#ffffffb8;border:1px solid #0505051f;border-radius:8px;grid-template-columns:1fr;align-items:start;gap:8px;min-width:0;margin-bottom:12px;padding:12px}.studentRow>*{border-right:0;width:100%;padding:0}.studentNumber{justify-content:flex-start}.enrollmentRow{grid-template-columns:1fr}.payment{justify-self:start}.homeContactIntro{grid-column:auto}.homeMap iframe{min-height:360px}.classArticle{padding:18px}.classDetailGrid{grid-template-columns:1fr;gap:10px}.classDetailBox{min-height:auto;padding:16px}.trainingBlock{padding-top:78px;padding-bottom:78px}.trainingIntro{margin-bottom:30px}.trainingIntro h2{font-size:clamp(2.8rem,15vw,5rem)}.trainingStage{grid-template-columns:1fr;min-height:auto;padding:22px}.trainingContent h3{font-size:clamp(2.7rem,14vw,4.6rem)}.trainingReveal{opacity:1;transform:none}.trainingImageWrap,.trainingImageWrap img{min-height:260px}.trainingProgress{grid-template-columns:1fr 1fr}.trainingArrow{width:46px;height:46px}.trainingArrow.prev{left:2px}.trainingArrow.next{right:2px}.pricingHeader{margin-bottom:34px}.pricingHeader h2{font-size:clamp(2.4rem,12vw,4rem)}.pricingGrid{grid-template-columns:1fr;gap:16px;margin-bottom:52px}.pricingCard{min-height:auto}.pricingPrice{font-size:clamp(3.2rem,16vw,4.8rem)}.classDirectory{position:static}.aboutSignature{grid-template-columns:110px 1fr;gap:20px}.teamIntro{margin-bottom:34px}.teamDetailGrid{justify-content:flex-start;gap:16px;padding-bottom:18px}.teamDetailCard{flex-basis:min(84vw,350px)}.teamCard{width:min(82vw,330px)}.teamCard>div{padding:18px}.teamCard p{font-size:.9rem}.classGrid{scroll-snap-type:x mandatory;min-height:430px;padding-bottom:10px;overflow-x:auto}.classCard{scroll-snap-align:start}.classCard h4{font-size:clamp(1.8rem,9vw,3.1rem)}.widePhoto{border-radius:34px 34px 8px;width:100%;min-height:260px}.scheduleGrid{grid-template-columns:minmax(58px,.9fr) repeat(6,minmax(0,1fr));column-gap:4px}.scheduleGrid>*{min-height:48px;padding:2px;font-size:clamp(.42rem,1.85vw,.72rem)}.scheduleHeader strong{min-height:32px;margin-bottom:6px}.scheduleGrid time{white-space:normal;padding-right:4px;font-size:clamp(.42rem,1.8vw,.68rem)}.teamGrid{grid-template-columns:1fr}.bookingStrip{grid-template-columns:1fr;justify-items:start}.contact{display:block}address{margin-top:26px}}@media (prefers-reduced-motion:reduce){.heroMedia img,.heroMedia video,.heroContent,.heroMonogram{will-change:auto;transform:none}.teamTrack,.headerCta,.floatingActions a{animation:none}}
