@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap";.cta-list{grid-template-columns:minmax(0,1fr) minmax(190px,.75fr);align-items:start;gap:24px;display:grid}.cta-section{border-radius:var(--radius);color:#fff;background:var(--accent);width:min(1120px,100% - 48px);box-shadow:var(--shadow);font-weight:var(--on-color-font-weight);margin:88px auto 0;padding:36px}.cta-section__title{color:#fff;letter-spacing:-.035em;margin:0;font-size:clamp(27px,3.5vw,38px);line-height:1}.cta-section--embedded,.cta-section--hero{width:100%;box-shadow:none;background:0 0;padding:0}.cta-section--embedded{margin:26px 0 0}.cta-section--hero{max-width:760px;min-height:182px;margin:34px 0 0}.cta-section--hero-placeholder{pointer-events:none}.cta-section--hero .cta-section__title{letter-spacing:0;font-size:20px;line-height:1.2}.cta-section--layout-copy-above .cta-list{grid-template-columns:1fr}.cta-list__copy{gap:16px;display:grid}.cta-list--buttons-only{grid-template-columns:1fr}.cta-list__copy p{color:#fffffff0;font-size:16px;font-weight:var(--on-color-font-weight);margin:0;line-height:1.5}.cta-list__buttons{grid-template-columns:1fr;justify-self:end;gap:12px;width:80%;display:grid}.cta-button{color:#fff;text-align:center;border:2px solid #0000;border-radius:16px;justify-content:center;align-items:center;min-height:56px;padding:0 24px;font-size:14px;font-weight:800;line-height:1.2;text-decoration:none;transition:filter .16s,transform .16s;display:inline-flex}.cta-button--filled{background:var(--cta-color)}.cta-button--outline{background:0 0;border-color:#fff}.cta-button--filled:hover{filter:brightness(.94);transform:translateY(-1px)}.cta-button--outline:hover{background:#ffffff1a;transform:translateY(-1px)}.cta-button:focus-visible{outline-offset:3px;outline:3px solid #ffffffb3}.cta-section--hero .cta-list__copy p{font-size:18px}.cta-section--layout-copy-above .cta-list__buttons{grid-template-columns:repeat(var(--cta-button-count), minmax(0, 1fr));justify-self:start;width:80%}.cta-section--hero .cta-button{min-height:64px;font-size:16px}@media (width<=760px){.cta-section{width:calc(100% - 32px);margin-top:64px;padding:28px 22px}.cta-section--embedded,.cta-section--hero{width:100%;padding:0}.cta-section--embedded{margin-top:22px}.cta-section--hero{min-height:254px;margin-top:28px}.cta-list{grid-template-columns:1fr;gap:20px;width:100%}.cta-list__buttons{grid-template-columns:1fr;width:100%;display:grid}.cta-section--layout-copy-above .cta-list__buttons{grid-template-columns:1fr;width:100%}.cta-button{width:100%}}@media (width<=360px){.cta-section--hero{min-height:281px}}.contacts-page{min-height:100vh;padding-bottom:96px}.contacts-page__hero{color:#fff;background:var(--accent-strong);font-weight:var(--on-color-font-weight);padding:72px 0 80px}.contacts-page__hero-inner{width:min(1180px,100%);margin:0 auto;padding:0 24px}.contacts-page__content{width:min(1120px,100%);margin:0 auto}.contacts-page h1{letter-spacing:-.055em;margin:0;font-size:clamp(40px,6vw,72px);line-height:.94}.contacts-page__content{padding:72px 24px 0}.contacts-socials{border-radius:var(--radius);background:var(--accent);box-shadow:var(--shadow);flex-direction:column;align-items:flex-start;gap:10px;padding:24px 28px;display:flex;overflow:hidden}.contacts-socials__text{color:#fff;max-width:420px;font-size:16px;font-weight:var(--on-color-font-weight);margin:0 0 8px;line-height:1.55}.contacts-social-card{color:#fff;align-items:center;gap:18px;width:fit-content;font-size:20px;font-weight:800;text-decoration:none;display:flex}.contacts-social-card__icon{flex:none;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.contacts-social-card__icon img{filter:brightness(0)invert();width:32px;height:32px;display:block}.contacts-socials__phone{color:#fff;font-weight:var(--on-color-font-weight);gap:6px;margin-top:12px;text-decoration:none;display:grid}.contacts-socials__phone strong{font-size:20px}.venue{grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);align-items:stretch;gap:22px;display:grid}.venue__details{grid-template-rows:auto 1fr;gap:22px;display:grid}.venue__info,.venue__map{border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.venue__info{color:#fff;font-weight:var(--on-color-font-weight);background:#f2a045;padding:36px}.venue__map{min-height:100%}.venue__info h2{letter-spacing:-.04em;margin:0;font-size:clamp(30px,4vw,44px);line-height:1}.venue-plan>h2{letter-spacing:-.04em;margin:0;font-size:clamp(28px,4vw,42px);line-height:1}.venue__studio{margin:26px 0 0;font-size:20px;font-weight:700;line-height:1.45}.venue__info address{gap:6px;margin-top:28px;font-style:normal;display:grid}.venue__info address strong{color:#ffffffb8;letter-spacing:.08em;text-transform:uppercase;font-size:12px}.venue__info address span,.venue__transport{font-size:17px;line-height:1.55}.venue__transport{margin:24px 0 0}.venue__map iframe{border:0;width:100%;height:100%;display:block}.venue-plan{padding-top:88px}.contacts-page__cta{width:100%}.venue-plan>h2{color:var(--text)}.venue-plan__content{grid-template-columns:minmax(260px,.8fr) minmax(0,560px);align-items:start;gap:32px;margin-top:32px;display:grid}.venue-plan__copy{border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);border:1px solid #1e1e1e14;padding:28px}.venue-plan__copy p{color:var(--text-muted);margin:0;font-size:17px;line-height:1.65}.venue-plan__copy p+p{color:var(--text);margin-top:12px;font-weight:700}.venue-plan figure{border-radius:var(--radius);width:100%;box-shadow:var(--shadow);margin:0;overflow:hidden}.venue-plan img{width:100%;height:auto;display:block}@media (width<=820px){.venue,.venue-plan__content{grid-template-columns:1fr}.venue__map{min-height:380px}}@media (width<=760px){.contacts-page__hero-inner{padding:0 16px}}@media (width<=640px){.contacts-page{padding-bottom:64px}.contacts-page__hero{padding:36px 0 56px}.contacts-page__content{padding:48px 16px 0}.contacts-socials{gap:8px;padding:20px 22px}.contacts-social-card{font-size:18px}.venue__info{min-height:auto;padding:28px 22px}.venue__map{min-height:360px}.venue-plan{padding-top:64px}.venue-plan__copy{padding:24px 22px}}.directions-page{min-height:100vh;padding-bottom:96px}.directions-page__hero{color:#fff;background:var(--accent);font-weight:var(--on-color-font-weight);padding:72px 0 80px}.directions-page__hero-inner{width:min(1180px,100%);margin:0 auto;padding:0 24px}.directions-page h1{letter-spacing:-.055em;max-width:920px;margin:0;font-size:clamp(40px,6vw,72px);line-height:.94}.directions-page__list{grid-auto-rows:1fr;gap:27px;width:min(1088px,100%);margin:0 auto;padding:61px 24px 0;display:grid}.direction-card{background:var(--surface);min-height:100%;box-shadow:var(--shadow);border:1px solid #1e1e1e14;grid-template-columns:minmax(0,1.25fr) minmax(272px,.75fr);padding:0;transition:transform .18s,box-shadow .18s;display:grid;overflow:hidden}.direction-card:nth-child(2n) .direction-card__media{order:2}.direction-card:nth-child(2n){grid-template-columns:minmax(272px,.75fr) minmax(0,1.25fr)}.direction-card__media{background:0 0;height:100%}.video-gallery,.video-gallery__frame{height:100%}.video-gallery__frame{position:relative}.video-gallery video{object-fit:cover;background:0 0;width:100%;height:100%;display:block}.video-gallery__arrow{z-index:2;color:#fff;background:var(--accent-strong);width:41px;height:41px;box-shadow:none;cursor:pointer;font:inherit;border:0;border-radius:999px;justify-content:center;align-items:center;font-size:20px;font-weight:800;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.video-gallery__arrow--previous{left:12px}.video-gallery__arrow--next{right:12px}.video-gallery__arrow:hover{background:#ff4f4f;transform:translateY(-50%)scale(1.06)}.video-gallery__arrow:focus-visible{outline-offset:2px;outline:3px solid #4c9faa66}.direction-card__content{align-content:start;padding:31px;display:grid}.direction-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px #1e1e1e1f}.direction-card h2{color:var(--accent-strong);margin:0;font-size:clamp(27px,3.4vw,39px);line-height:1}.direction-card:nth-child(2) h2{color:var(--accent)}.direction-card:nth-child(3) h2{color:#e88b1d}.direction-card p{color:var(--text-muted);margin:12px 0 0;font-size:14px;line-height:1.65}.direction-card__highlight{color:var(--accent-strong);font-weight:800}.direction-card:nth-child(2) .direction-card__highlight{color:var(--accent)}.direction-card:nth-child(3) .direction-card__highlight{color:#e88b1d}.directions-start{width:min(1280px,100%);margin:0 auto;padding:96px 24px 0}.directions-start>h2{color:var(--text);letter-spacing:-.045em;margin:0;font-size:clamp(36px,5vw,60px);line-height:1}.directions-start__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:32px;display:grid}.directions-start__card{border-radius:var(--radius);min-height:280px;box-shadow:var(--shadow);font-weight:var(--on-color-font-weight);flex-direction:column;justify-content:flex-start;padding:36px;display:flex}.directions-start__card--accent{color:#fff;background:var(--accent)}.directions-start__card--strong{color:#fff;background:var(--accent-strong)}.directions-start__card h3{margin:0;font-size:clamp(27px,3.5vw,38px);line-height:1}.directions-start__card p{max-width:560px;margin:18px 0 0;font-size:17px;line-height:1.65}.directions-start__card--accent p,.directions-start__card--strong p{color:#ffffffe6}.directions-start__cta .cta-list__buttons{width:100%}@media (width<=980px){.direction-card,.direction-card:nth-child(2n){grid-template-columns:1fr}.direction-card:nth-child(2n) .direction-card__media{order:0}.direction-card__media,.video-gallery,.video-gallery__frame{height:auto}.video-gallery video{aspect-ratio:16/9;height:auto}}@media (width<=760px){.directions-page{padding-bottom:64px}.directions-page__hero{padding:36px 0 56px}.directions-page__hero-inner{padding:0 16px}.directions-page__list{gap:19px;padding:41px 16px 0}.directions-start{padding:64px 16px 0}.directions-start__grid{grid-template-columns:1fr}.directions-start__card{min-height:240px;padding:28px 22px}.direction-card__content{padding:24px 19px}}.home-page{gap:0;padding-bottom:88px;display:grid}.hero{background:#4c9faa;grid-template-columns:minmax(0,1.2fr) minmax(280px,.82fr);align-items:stretch;gap:20px;width:100%;padding:72px 24px 64px;display:grid;position:relative;overflow:hidden}.hero__content,.hero__aside{z-index:1;position:relative}.hero__content{color:#fff;width:min(1180px,100%);max-width:860px;font-weight:var(--on-color-font-weight);margin-left:auto;margin-right:0;padding:0 0 0 36px}.hero__eyebrow{color:#ffffffd1;letter-spacing:.12em;text-transform:uppercase;margin:0 0 14px;font-size:13px;font-weight:800}.hero__logo{color:#fff;letter-spacing:-.05em;flex-wrap:wrap;align-items:baseline;gap:0;margin:0;font-size:clamp(56px,10vw,110px);font-weight:800;line-height:.9;display:flex}.hero__logo-ampersand{color:#ff4f4f}.hero__lead{color:#fffffff0;max-width:680px;margin:28px 0 0;font-size:22px;line-height:1.6}.hero__aside{z-index:0;aspect-ratio:1224/1092;pointer-events:none;width:min(50vw,760px);margin:0;position:absolute;bottom:0;right:24px;overflow:hidden}.hero__dancers{width:100%;height:auto;display:block}.section{width:min(1280px,100%);margin:0 auto;padding:88px 24px 0}.section__header{text-align:center;max-width:760px;margin:0 auto 40px}.section__eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;font-size:13px;font-weight:800}.section h2,.contacts h2{color:var(--text);margin:0;font-size:clamp(36px,5vw,58px);line-height:1}#schedule-title{letter-spacing:-.04em;white-space:nowrap;font-size:clamp(21px,5vw,58px)}.section__header p:not(.section__eyebrow){color:var(--text-muted);margin:18px 0 0;font-size:18px;line-height:1.65}.calendar-month,.contacts,.schedule-state,.about-card,.mobile-schedule__month{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #1e1e1e14}.calendar-month h3{color:var(--text);margin:0;font-size:24px}.about p,.contacts p{color:var(--text-muted);margin:14px 0 0}.about{width:100%;max-width:none;padding-top:88px}.about .section__header,.about__grid,.about-more{width:min(1280px,100%);margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px}.about__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.about-card{color:#fff;font-weight:var(--on-color-font-weight);padding:30px}.about-card h3{margin:0;font-size:24px;line-height:1.15}.about-card p{color:#ffffffeb;margin:16px 0 0;line-height:1.65}.about__title-accent{color:var(--accent)}.about__title-subline{margin-top:10px;font-size:.8em;line-height:1.15;display:block}.about-card:first-child{background:#4c9faa}.about-card:nth-child(2){background:#ff6f6f}.about-card:nth-child(3){background:#f2a045}.about-more{margin-top:72px}.about-more>h2{letter-spacing:-.035em;text-align:center;margin:0;font-size:clamp(32px,4vw,48px)}.about-links{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:10px;margin-top:28px;display:grid}.about-link{border-radius:var(--radius);color:var(--text);background:var(--surface);border:1px solid #1e1e1e14;justify-content:space-between;align-items:center;gap:22px;padding:20px 22px;text-decoration:none;transition:border-color .16s,background .16s;display:flex}.about-link:hover{background:var(--surface-strong);border-color:#1e1e1e29}.about-link:focus-visible{outline-offset:3px;outline:3px solid #1e1e1e2e}.about-link__copy{gap:8px;display:grid}.about-link__copy strong{font-size:clamp(22px,2.5vw,28px);line-height:1}.about-link--directions .about-link__copy strong{color:var(--accent)}.about-link--teachers .about-link__copy strong{color:var(--accent-strong)}.about-link__copy span{max-width:780px;color:var(--text-muted);font-size:15px;line-height:1.5}.about-link__arrow{color:#fff;border-radius:999px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-size:22px;font-weight:800;line-height:1;display:inline-flex}.about-link--directions .about-link__arrow{background:var(--accent)}.about-link--teachers .about-link__arrow{background:var(--accent-strong)}.schedule{padding-top:88px}.schedule-filters{flex-wrap:wrap;gap:10px;width:min(1180px,100%);margin:0 auto 20px;display:flex}.schedule-filter{min-height:42px;color:var(--text);cursor:pointer;background:#ece8e0;border:2px solid #0000;border-radius:999px;padding:0 18px;font-weight:700}.schedule-filter--all{background:#dff1f3}.schedule-filter--class{background:#ffe1a8}.schedule-filter--event{background:#ffd2d2}.schedule-filter--active{border-color:var(--text)}.schedule-state{max-width:1180px;color:var(--text);margin:0 auto;padding:18px 20px}.schedule-state--loading{place-items:center;min-height:84px;display:grid}.schedule-loader{background:conic-gradient(from 20deg, transparent 0 12%, var(--accent) 12% 42%, var(--accent-strong) 42% 72%, #f2a045 72% 100%);border-radius:50%;width:38px;height:38px;animation:.78s linear infinite schedule-loader-spin;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 5px),#000 0);mask:radial-gradient(farthest-side,#0000 calc(100% - 5px),#000 0)}@keyframes schedule-loader-spin{to{transform:rotate(1turn)}}.schedule-state--error{color:var(--accent-strong);background:#fff3f3;border-color:#ff6f6f3d}@media (prefers-reduced-motion:reduce){.schedule-loader{animation:none}}.calendar-controls{justify-content:space-between;align-items:center;gap:16px;width:min(1180px,100%);margin:0 auto 16px;display:flex}.calendar-controls>span{color:var(--text);text-align:center;font-size:28px;font-weight:800}.calendar-button{color:#fff;background:var(--accent);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;width:52px;height:52px;display:inline-flex;box-shadow:0 10px 24px #4c9faa3d}.calendar-button:last-child{background:var(--accent-strong);box-shadow:0 10px 24px #ff6f6f38}.calendar-button:disabled{cursor:default;opacity:.4;box-shadow:none}.calendar-button:focus-visible{outline-offset:2px;outline:3px solid #4c9faa3d}.calendar-button__arrow{color:#fff;justify-content:center;align-items:center;width:100%;height:100%;font-size:40px;font-weight:700;line-height:.8;display:inline-flex}.calendar{width:min(1180px,100%);margin:0 auto;display:block}.calendar-month{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0;animation:.42s cubic-bezier(.22,1,.36,1) both calendar-month-in}@keyframes calendar-month-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.calendar-month h3{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.calendar-month__title{display:none}.calendar-month__weekdays,.calendar-month__grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:0;display:grid}.calendar-month__weekdays{color:var(--text-muted);text-align:center;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:700}.calendar-month__grid{border-top:1px dashed #1e1e1e3d;border-left:1px dashed #1e1e1e3d}.calendar-day{background:0 0;border:1px dashed #1e1e1e3d;border-top:0;border-left:0;border-radius:0;min-height:68px;padding:7px 8px;position:relative}.calendar-day--empty{visibility:visible}.calendar-day--event{outline:none}.calendar-day--type-class{background:0 0}.calendar-day--type-event{background:0 0;outline:none}.calendar-day__event:focus-visible{outline-offset:2px;outline:3px solid #4c9faa3d}.calendar-day__number{color:var(--text);margin-bottom:4px;font-size:12px;font-weight:800;display:block}.calendar-day__event{--event-marker:var(--event-color);min-width:0;color:var(--text-muted);padding-left:7px;font-size:11px;line-height:1.2;display:block;position:relative}.calendar-day__event+.calendar-day__event{margin-top:4px}.calendar-day__event:before{content:"";background:var(--event-marker);border-radius:999px;width:3px;height:100%;position:absolute;top:0;left:0}.calendar-day__event:not(:last-child):before{border-bottom-right-radius:0;border-bottom-left-radius:0;height:calc(100% + 4px)}.calendar-day__event+.calendar-day__event:before{border-top-left-radius:0;border-top-right-radius:0}.calendar-day__event--class,.mobile-schedule__event--class{--event-color:#e88b1d}.calendar-day__event--event,.mobile-schedule__event--event{--event-color:var(--accent-strong)}.calendar-day__event--accent-lindy{--event-marker:var(--accent-strong)}.calendar-day__event--accent-blues{--event-marker:var(--accent)}.calendar-day__event--accent-balboa{--event-marker:#f2a045}.calendar-day__event--accent-event{--event-marker:linear-gradient(180deg, var(--accent) 0%, var(--accent-strong) 52%, #f2a045 100%)}.calendar-day__label{white-space:nowrap;align-items:baseline;gap:4px;min-width:0;display:flex}.mobile-schedule__event-summary::-webkit-details-marker{display:none}.calendar-day__label>strong{color:var(--text);flex:none;font-weight:800}.calendar-day__title{color:#1e1e1ec7;text-overflow:ellipsis;min-width:0;font-weight:700;overflow:hidden}.calendar-day__popover{z-index:5;width:min(320px,72vw);color:var(--text);background:var(--surface-strong);visibility:hidden;opacity:0;pointer-events:none;border:1px solid #1e1e1e14;border-radius:16px;padding:14px;transition:opacity .14s,visibility .14s,transform .14s;position:absolute;bottom:100%;left:10px;transform:translateY(6px);box-shadow:0 18px 36px #1e1e1e29}.calendar-day__popover--class{border-color:#ffb46f59}.calendar-day__popover--event{border-color:#ff6f6f52}.calendar-day:nth-child(7n) .calendar-day__popover,.calendar-day:nth-child(7n-1) .calendar-day__popover,.calendar-day:nth-child(7n-2) .calendar-day__popover{left:auto;right:10px}.event-details__datetime{color:var(--text);margin:0 0 8px;font-size:13px;line-height:1.4}.event-details__datetime strong{font-weight:800}.event-details__text{color:var(--text-muted);white-space:pre-line;margin:0;font-size:13px;line-height:1.5}.event-details__highlight{color:var(--event-color);font-weight:800}.event-details__actions{gap:8px;margin-top:12px;display:grid}.event-details__button{color:#fff;background:var(--event-button-color,var(--event-color));text-align:center;border-radius:12px;justify-content:center;align-items:center;min-height:42px;padding:8px 14px;font-size:12px;font-weight:800;line-height:1.3;text-decoration:none;transition:filter .16s,transform .16s;display:inline-flex}.event-details__button:hover{filter:brightness(.94);transform:translateY(-1px)}.event-details__button:focus-visible{outline:3px solid color-mix(in srgb, var(--event-color) 45%, transparent);outline-offset:2px}.calendar-day__event:hover>.calendar-day__popover,.calendar-day__event:focus-within>.calendar-day__popover{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0)}.mobile-schedule{width:min(1180px,100%);margin:0 auto;display:none}.mobile-schedule__month{box-shadow:none;background:0 0;border:0}.mobile-schedule__month+.mobile-schedule__month{margin-top:12px}.mobile-schedule__summary{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:0;font-size:22px;font-weight:800;display:flex}.mobile-schedule__arrow{color:var(--accent-strong);font-size:28px;font-weight:900;line-height:1;transition:transform .2s;display:inline-flex;transform:rotate(0)}.mobile-schedule__month--open .mobile-schedule__arrow{transform:rotate(90deg)}.mobile-schedule__events{opacity:0;gap:10px;max-height:0;padding-top:0;transition:max-height .26s,opacity .18s,padding-top .26s;display:grid;overflow:hidden}.mobile-schedule__month--open .mobile-schedule__events{opacity:1;max-height:10000px;padding-top:14px}.mobile-schedule__event{background:#faf8f4;border:1px solid #ece8e0;border-radius:18px;overflow:hidden}.mobile-schedule__event-summary{grid-template-columns:52px minmax(0,1fr);gap:12px;padding:14px;list-style:none;display:grid}summary.mobile-schedule__event-summary{cursor:pointer}.mobile-schedule__event--class{background:#fff4d2;border-color:#ffb46f73}.mobile-schedule__event--event{background:#ffe0e0;border-color:#ff6f6f59}.mobile-schedule__event time{color:var(--text);text-transform:lowercase;align-content:start;justify-items:center;gap:2px;display:grid}.mobile-schedule__event time strong{font-size:20px;line-height:1}.mobile-schedule__event time span{color:var(--text-muted);font-size:12px;font-weight:800}.mobile-schedule__event-copy{align-content:start;gap:5px;display:grid}.mobile-schedule__event-title{color:var(--text);line-height:1.3}.mobile-schedule__event-title strong{font-weight:800}.mobile-schedule__event-more{color:var(--event-color);font-size:12px;font-weight:800}.mobile-schedule__details{border-top:1px solid #1e1e1e14;padding:14px}.mobile-schedule__details .event-details__text{font-size:14px}.mobile-schedule__details .event-details__button{width:100%;min-height:46px;font-size:13px}.mobile-schedule__load-more{border:2px solid var(--accent-strong);width:100%;min-height:50px;color:var(--accent-strong);cursor:pointer;background:0 0;border-radius:999px;margin-top:24px;font-size:15px;font-weight:800}.mobile-schedule__load-more:focus-visible{outline-offset:3px;outline:3px solid #ff6f6f47}.contacts{grid-template-columns:minmax(240px,.55fr) minmax(360px,1fr);align-items:start;gap:24px;width:min(1180px,100% - 48px);margin:88px auto 0;padding:32px;display:grid}.contacts .section__eyebrow,.contacts h2,.contacts p{color:var(--text)}.contacts .section__eyebrow{letter-spacing:.02em;font-size:24px}.contacts__intro p:not(.section__eyebrow){color:var(--text-muted);margin-top:0}.contacts__cards{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:12px;display:grid}.contact-card{min-height:132px;color:var(--text);border:0;border-radius:18px;align-items:flex-start;gap:14px;padding:22px;text-decoration:none;display:flex}.contact-card--person{color:#fff;font-weight:var(--on-color-font-weight);background:#f2a045}.contact-card--socials{background:var(--accent);flex-direction:column;align-items:flex-start;gap:12px;min-height:132px;padding:22px;display:flex;overflow:hidden}.contact-card__social-link{color:#fff;width:fit-content;font-weight:var(--on-color-font-weight);justify-content:flex-start;align-items:center;gap:14px;padding:0;text-decoration:none;display:flex}.contact-card span:last-child{gap:8px;display:grid}.contact-card__handle{overflow-wrap:anywhere;max-width:100%}.contact-card strong{font-size:18px}.contact-card small,.contact-card a{color:#ffffffe6}.contact-card strong,.contact-card span,.contact-card--socials,.contact-card--person,.contact-card--person strong,.contact-card--person span,.contact-card--person small,.contact-card--person a{color:#fff}.contact-card--person a{font-weight:700}.contact-card a{text-underline-offset:4px;text-decoration-thickness:1px}.contact-card__icon{color:#fff;background:#1e1e1e;border-radius:999px;justify-content:center;align-items:center;min-width:48px;height:48px;font-weight:900;display:inline-flex}.contact-card--socials .contact-card__icon{background:0 0;border-radius:0;min-width:24px;height:24px}.contact-card--socials .contact-card__icon img{filter:brightness(0)invert();width:20px;height:20px;display:block}.contact-card--socials strong{font-size:16px}.scroll-top-button{z-index:20;color:#fff;cursor:pointer;background:#ff6f6f;border:0;border-radius:999px;justify-content:center;align-items:center;width:56px;height:56px;font-size:28px;font-weight:800;line-height:1;display:inline-flex;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 28px #1e1e1e38}.scroll-top-button:focus-visible{outline-offset:2px;outline:3px solid #ff6f6f47}@media (width<=980px){.hero,.about__grid,.contacts,.contacts__cards{grid-template-columns:1fr}.hero__content{max-width:none;margin:0}.hero__aside{width:min(115%,700px);margin:0 auto;position:relative;bottom:auto;right:auto;transform:translate(-44px,64px)}}@media (width<=760px){.home-page{padding-bottom:64px}.hero{grid-template-columns:1fr;row-gap:0;padding-top:36px;padding-bottom:0}.hero__content{width:100%;padding:0}.hero__lead{font-size:18px}.hero__aside{aspect-ratio:1224/900;width:min(125%,560px);margin-left:-12.5%;margin-right:-12.5%;transform:translate(-24px)}.section,.about .section__header,.about__grid,.about-more{padding-left:16px;padding-right:16px}.about-more{margin-top:56px}.about-links{grid-template-columns:1fr;margin-top:22px}.about-link{gap:14px;padding:18px}.about-link__arrow{width:34px;height:34px;font-size:20px}.section,.about{padding-top:64px}.calendar-controls,.calendar{display:none}.mobile-schedule{display:block}.scroll-top-button{width:52px;height:52px;bottom:16px;right:16px}.contacts{width:min(1180px,100% - 32px);margin-top:64px;padding:22px}}.price-page{min-height:100vh;padding-bottom:96px}.price-page__hero{color:#fff;font-weight:var(--on-color-font-weight);background:#f2a045;padding:72px 0 80px}.price-page__hero-inner{width:min(1180px,100%);margin:0 auto;padding:0 24px}.price-page__content{width:min(1120px,100%);margin:0 auto}.price-page h1{letter-spacing:-.055em;max-width:940px;margin:0;font-size:clamp(40px,6vw,72px);line-height:.94}.price-page__content{padding:72px 24px 0}.price-page__price-list{border-radius:var(--radius);width:min(520px,100%);box-shadow:var(--shadow);margin:0 auto;overflow:hidden}.price-page__price-list img{width:100%;height:auto;display:block}.price-rules{padding-top:88px}.price-rules>h2,.payment__details h2{color:var(--text);letter-spacing:-.04em;margin:0;font-size:clamp(36px,5vw,56px);line-height:1}.price-rules__grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:20px;margin-top:32px;display:grid}.price-rule-card{border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);border:1px solid #1e1e1e14;padding:28px}.price-rule-card h3{color:var(--accent);margin:0;font-size:24px;line-height:1.15}.price-rule-card:nth-child(2) h3,.price-rule-card:nth-child(4) h3{color:var(--accent-strong)}.price-rule-card p{color:var(--text-muted);margin:16px 0 0;font-size:16px;line-height:1.65}.price-page__free-note{border-radius:var(--radius);color:#fff;background:var(--accent);box-shadow:var(--shadow);margin-top:24px;padding:20px 24px;font-size:clamp(18px,2.5vw,24px);font-weight:800;line-height:1.1}.payment{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:22px;padding-top:88px;display:grid}.payment__details,.payment__cta{border-radius:var(--radius);box-shadow:var(--shadow);padding:36px}.payment__details{color:#fff;background:var(--accent-strong);font-weight:var(--on-color-font-weight)}.payment__details h2,.payment__details p{color:#fff}.payment__details p{margin:18px 0 0;font-size:17px;line-height:1.6}.payment__details h2,.payment__cta .cta-section__title{letter-spacing:-.025em;font-size:clamp(26px,3vw,34px)}.payment__cta .cta-section__title{color:#fff}.payment__phone{color:#fff;margin-top:32px;font-size:clamp(20px,3vw,26px);font-weight:800;text-decoration:none;display:inline-block}.payment__recipient{font-weight:700}.payment__cta{width:100%;height:100%;margin:0}.payment__cta .cta-list__buttons{width:100%}@media (width<=760px){.price-page{padding-bottom:64px}.price-page__hero{padding:36px 0 56px}.price-page__hero-inner{padding:0 16px}.price-page__content{padding:48px 16px 0}.price-rules{padding-top:64px}.price-rules__grid,.payment{grid-template-columns:1fr}.price-rule-card{padding:24px 22px}.price-page__free-note{padding:18px 20px}.payment{padding-top:64px}.payment__details,.payment__cta{padding:28px 22px}}.schedule-page{min-height:100vh;padding-bottom:96px}.schedule-page__hero{color:#fff;background:var(--accent);font-weight:var(--on-color-font-weight);padding:72px 0 80px}.schedule-page__hero-inner,.schedule-page__content{width:min(1180px,100%);margin:0 auto}.schedule-page__hero-inner{padding:0 24px}.schedule-page h1{letter-spacing:-.055em;margin:0;font-size:clamp(40px,6vw,72px);line-height:.94}.schedule-page__content{padding:72px 24px 0}.schedule-page__image{border-radius:var(--radius);box-shadow:var(--shadow);margin:0;overflow:hidden}.schedule-page__image img{width:100%;height:auto;display:block}.schedule-page__start{border-radius:var(--radius);color:#fff;background:var(--accent-strong);box-shadow:var(--shadow);font-size:16px;font-weight:var(--on-color-font-weight);margin-bottom:24px;padding:20px 24px;line-height:1.5}.schedule-page__start>:first-child{margin-top:0}.schedule-page__start>:last-child{margin-bottom:0}.schedule-page__start>p:first-child,.schedule-page__start h2,.schedule-page__start h3{font-size:clamp(18px,2.5vw,24px);font-weight:800;line-height:1.2}.schedule-page__start p,.schedule-page__start ul,.schedule-page__start ol{margin:14px 0 0}.schedule-page__start ul,.schedule-page__start ol{padding-left:24px}.schedule-page__start li+li{margin-top:8px}.schedule-page__start a{text-underline-offset:3px;font-weight:800}.schedule-teachers{padding-top:88px}.schedule-page__cta{width:100%}.schedule-teachers>h2{color:var(--text);letter-spacing:-.04em;margin:0;font-size:clamp(36px,5vw,56px);line-height:1}.schedule-teachers__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px;display:grid}.schedule-teacher-card{border-radius:var(--radius);color:#fff;min-height:330px;box-shadow:var(--shadow);font-weight:var(--on-color-font-weight);padding:30px}.schedule-teacher-card--lindy{background:var(--accent-strong)}.schedule-teacher-card--blues{background:var(--accent)}.schedule-teacher-card--balboa{background:#f2a045}.schedule-teacher-card h3{margin:0;font-size:28px;line-height:1.1}.schedule-teacher-card dl{gap:22px;margin:28px 0 0;display:grid}.schedule-teacher-card dl div{gap:5px;display:grid}.schedule-teacher-card dt{color:#ffffffb8;letter-spacing:.06em;text-transform:uppercase;font-size:13px;font-weight:700}.schedule-teacher-card dd{color:#fff;margin:0;font-size:17px;font-weight:700;line-height:1.45}@media (width<=900px){.schedule-teachers__grid{grid-template-columns:1fr}.schedule-teacher-card{min-height:auto}}@media (width<=760px){.schedule-page{padding-bottom:64px}.schedule-page__hero{padding:36px 0 56px}.schedule-page__hero-inner{padding:0 16px}.schedule-page__content{padding:48px 16px 0}.schedule-page__start{padding:18px 20px}.schedule-teachers{padding-top:64px}.schedule-teacher-card{padding:26px 22px}}.teachers-page{min-height:100vh;padding-bottom:96px}.teachers-page__hero{color:#fff;background:var(--accent-strong);font-weight:var(--on-color-font-weight);padding:72px 0 80px}.teachers-page__hero-inner{width:min(1180px,100%);margin:0 auto;padding:0 24px}.teachers-page h1{letter-spacing:-.055em;max-width:1000px;margin:0;font-size:clamp(40px,6vw,72px);line-height:.94}.teachers-page__grid{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:24px;width:min(1080px,100%);margin:0 auto;padding:72px 24px 0;display:flex}.teacher-card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #1e1e1e14;flex-direction:column;flex:0 calc(33.3333% - 16px);display:flex;overflow:hidden}.teacher-card__photo{aspect-ratio:5/4;color:#fff;background:var(--accent);place-items:center;display:grid;overflow:hidden}.teacher-card:nth-child(2n) .teacher-card__photo{background:var(--accent-strong)}.teacher-card:nth-child(3n) .teacher-card__photo{background:var(--accent-warm)}.teacher-card__photo img{object-fit:cover;width:100%;height:100%}.teacher-card__content{padding:24px}.teacher-card h2{color:var(--accent);margin:0;font-size:24px;line-height:1.08}.teacher-card:nth-child(2n) h2,.teacher-card:nth-child(2n) .teacher-card__highlight{color:var(--accent-strong)}.teacher-card:nth-child(3n) h2,.teacher-card:nth-child(3n) .teacher-card__highlight{color:#e88b1d}.teacher-card p{color:var(--text-muted);margin:16px 0 0;font-size:14px;line-height:1.65}.teacher-card__highlight{color:var(--accent);font-weight:800}@media (width<=980px){.teachers-page__grid{width:min(780px,100%)}.teacher-card{flex-basis:calc(50% - 12px)}}@media (width<=760px){.teachers-page__hero-inner{padding:0 16px}}@media (width<=640px){.teachers-page{padding-bottom:64px}.teachers-page__hero{padding:36px 0 56px}.teachers-page__grid{gap:22px;width:min(420px,100%);padding:48px 16px 0}.teacher-card{flex-basis:100%}.teacher-card__content{padding:22px 20px 24px}}.app-footer{color:#fff;background:var(--text);font-weight:var(--on-color-font-weight);padding:56px 24px 24px}.app-footer__inner,.app-footer__bottom{width:min(1180px,100%);margin:0 auto}.app-footer__inner{grid-template-columns:minmax(280px,1.5fr) 1fr auto;align-items:start;gap:48px;display:grid}.app-footer__brand{color:#fff;letter-spacing:-.05em;align-items:baseline;font-size:30px;font-weight:800;text-decoration:none;display:inline-flex}.app-footer__ampersand{color:var(--accent-strong)}.app-footer__intro p{color:#ffffff9e;margin:12px 0 0;font-size:14px}.app-footer__nav{gap:10px;font-size:14px;font-weight:700;display:grid}.app-footer__nav a,.app-footer__social{color:#ffffffc7;text-decoration:none}.app-footer__nav a{width:fit-content}.app-footer__nav a:hover,.app-footer__social:hover{color:#fff}.app-footer__social{align-items:center;gap:10px;font-size:12px;font-weight:700;display:flex}.app-footer__socials{border:1px solid #ffffff2e;border-radius:14px;min-width:190px;display:grid;overflow:hidden}.app-footer__social{padding:11px 12px}.app-footer__social-icon{flex:none;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.app-footer__social-icon img{filter:brightness(0)invert();width:15px;height:15px;display:block}.app-footer__bottom{color:#ffffff7a;border-top:1px solid #ffffff24;justify-content:space-between;gap:24px;margin-top:44px;padding-top:20px;font-size:12px;display:flex}@media (width<=760px){.app-footer{padding:40px 16px 20px}.app-footer__inner{grid-template-columns:1fr;gap:32px}.app-footer__bottom{flex-direction:column;gap:6px;margin-top:36px}}.app-header{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;border-bottom:1px solid #1e1e1e14;position:fixed;top:0;left:0;right:0}.app-header__inner{align-items:center;gap:24px;width:min(1180px,100%);min-height:72px;margin:0 auto;padding:0 24px;display:flex;position:relative}.app-header__menu-button{display:none}.app-header__brand{color:var(--text);letter-spacing:-.05em;align-items:baseline;gap:0;font-size:28px;font-weight:800;text-decoration:none;display:inline-flex}.app-header__ampersand{color:var(--accent-strong)}.app-header__nav{color:var(--text);gap:18px;margin-left:auto;font-size:14px;font-weight:700;display:flex}.app-header__nav a{text-decoration:none}.app-header__nav a:hover,.app-header__nav a[aria-current=page]{color:var(--accent-strong)}@media (width<=760px){.app-header__inner{justify-content:space-between;gap:16px;min-height:64px;padding:10px 16px}.app-header__brand{font-size:23px}.app-header__menu-button{width:44px;height:44px;color:var(--text);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin-left:auto;padding:8px;display:inline-flex}.app-header__menu-button img{width:28px;height:28px;display:block}.app-header__menu-button:focus-visible{outline-offset:1px;outline:3px solid #4c9faa4d}.app-header__nav{width:auto;color:var(--text);white-space:normal;background:#fffffffa;border:1px solid #1e1e1e14;border-top:0;border-radius:0 0 18px 18px;flex-direction:column;gap:0;margin:0;padding:10px 16px 14px;font-size:15px;display:none;position:absolute;top:100%;left:16px;right:16px;box-shadow:0 16px 32px #1e1e1e1f}.app-header__nav--open{display:flex}.app-header__nav a{padding:10px 0}}.app-shell{flex-direction:column;min-height:100vh;padding-top:73px;display:flex}.app-shell__main{flex:1;width:100%;margin:0 auto;padding:0}@media (width<=760px){.app-shell{padding-top:65px}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg:#f9f2e7;--surface:#fff;--surface-strong:#fffdf8;--text:#1e1e1e;--text-muted:#5c5c57;--border:#e4e1d9;--border-strong:#1e1e1e;--accent:#4c9faa;--accent-soft:#4c9faa;--accent-strong:#ff6f6f;--accent-warm:#ffb46f;--ink:#1e1e1e;--on-color-font-weight:500;--shadow:0 12px 36px #1e1e1e14;--radius:22px;font-family:Montserrat,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}html{background:var(--bg);scrollbar-color:var(--accent) #ece9e1;min-width:320px;overflow:hidden scroll}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:#ece9e1}::-webkit-scrollbar-thumb{background:var(--accent);border:3px solid #ece9e1}body{min-width:320px;min-height:100vh;color:var(--text);background:var(--bg);margin:0;overflow:hidden visible}button,input,textarea,select{font:inherit}a{color:inherit}#root{min-height:100vh}
