.schedule-page{padding-block:var(--space-xl) var(--section-gap-s)}.schedule-page .schedule-page__title{font-size:var(--text-section-soft);line-height:1.15}.studio-tabs{margin-top:var(--space-md)}.studio-tabs__list{gap:var(--space-2xl);border-bottom:var(--rule-hair) solid var(--color-rule);margin:0;padding:0;list-style:none;display:flex}.studio-tabs__tab{min-height:56px;padding:var(--space-xs) 0;font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-ink-2);white-space:nowrap;border-radius:var(--radius-pill) var(--radius-pill) 0 0;transition:color var(--dur-short) var(--ease-out), box-shadow var(--dur-short) var(--ease-out);justify-content:center;align-items:center;margin-bottom:-1px;line-height:1.2;text-decoration:none;display:flex;box-shadow:inset 0 -2px #0000}.studio-tabs__tab:hover{color:var(--color-ink);box-shadow:inset 0 -2px 0 var(--color-sage)}.studio-tabs__tab:active{background:var(--color-paper-2)}.studio-tabs__tab:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.studio-tabs__tab.is-current{color:var(--color-ink);box-shadow:inset 0 -2px 0 var(--color-ink)}.sch-choose__line{margin-top:var(--space-lg);font-size:var(--text-lead);color:var(--color-ink-2)}.sch-choose{gap:0 var(--gap-columns);margin:var(--space-2xl) 0 0;border-top:var(--rule-head) solid var(--color-ink);grid-template-columns:repeat(2,minmax(0,1fr));padding:0;list-style:none;display:grid}.sch-choose>li{border-bottom:var(--rule-hair) solid var(--color-rule)}.sch-choose__link{min-height:96px;padding-block:var(--space-lg);font-family:var(--font-display);font-size:var(--text-section-soft);color:var(--color-ink);transition:color var(--dur-short) var(--ease-out);align-items:center;line-height:1.2;text-decoration:none;display:flex}.sch-choose__link:hover{color:var(--color-ink-2)}.sch-choose__link:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-pill)}.sched{margin-top:var(--space-lg)}html.js [data-schedule]:not([data-ready]) [data-week]{display:none}.sch-draft,.sch-notices{margin-bottom:var(--space-lg)}.sch-notice{margin-bottom:var(--space-lg);padding:var(--space-sm) var(--space-md);border-left:var(--slot-rule) solid var(--color-ink);background:var(--color-paper-2);border-radius:0 var(--radius-card) var(--radius-card) 0;color:var(--color-ink)}.sch-pending{align-items:flex-start;gap:var(--space-sm);padding-block:var(--space-xl);border-top:var(--rule-head) solid var(--color-ink);border-bottom:var(--rule-hair) solid var(--color-rule);flex-direction:column;display:flex}.sch-pending__text{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-ink);line-height:1.4}.sch-pending .textlink{min-height:44px}html:not(.js) .sch-week+.sch-week{margin-top:var(--space-3xl)}.weeknav{align-items:center;gap:var(--space-sm) var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.weeknav__range{font-size:var(--text-title);color:var(--color-ink);font-variant-numeric:tabular-nums;order:-1;margin-right:auto;line-height:1.3}.weeknav__range:focus-visible{outline:2px solid var(--color-focus);outline-offset:4px;border-radius:2px}.weeknav__view{min-height:44px;margin-left:var(--space-xs);font-size:var(--text-sm);order:3}.weeknav__step{min-height:44px;padding:0 var(--space-md);font-size:var(--text-sm)}.weeknav__step[aria-disabled=true]{opacity:.55;cursor:not-allowed}.weeknav__step[aria-disabled=true]:hover{background:0 0}.sched__narrow{display:none}@media (width<=60rem){.sched__wide{display:none}.sched__narrow{display:block}}.slot{align-items:flex-start;gap:var(--space-3xs);padding:var(--space-2xs) var(--space-2xs) var(--space-2xs) var(--space-sm);border-left:var(--slot-rule) solid var(--color-rule);font-size:var(--text-sm);color:var(--color-ink-2);overflow-wrap:break-word;border-radius:2px;flex-direction:column;min-width:0;line-height:1.45;display:flex}.slot--relax{border-left-color:var(--level-relax)}.slot--foundation{border-left-color:var(--level-foundation)}.slot--balance{border-left-color:var(--level-balance)}.slot--advanced{border-left-color:var(--level-advanced)}.slot__when{align-items:baseline;gap:var(--space-xs);flex-wrap:wrap;display:flex}.slot__time{font-size:var(--text-md);color:var(--color-ink);font-variant-numeric:tabular-nums;font-weight:500}.slot__length{color:var(--color-ink-2);font-variant-numeric:tabular-nums}.slot__name{font-size:var(--text-md);color:var(--color-ink);font-weight:500}.slot__level{color:var(--color-muted)}.slot__before{color:var(--color-ink-2)}.slot__booking{align-items:baseline;gap:var(--space-2xs) var(--space-xs);flex-wrap:wrap;display:flex}.slot__book{padding:0 var(--space-xs);border:var(--rule-hair) solid var(--color-ink);border-radius:var(--radius-pill);font-size:var(--text-sm);color:var(--color-ink);line-height:1.5}.slot__condition,.slot__note{color:var(--color-ink-2)}.slot__changes{gap:var(--space-2xs);flex-wrap:wrap;display:flex}.slot__flag{padding:0 var(--space-xs);border-radius:var(--radius-pill);background:var(--color-paper-3);font-size:var(--text-sm);color:var(--color-ink);font-weight:500;line-height:1.5;display:inline-block}.slot.is-cancelled{border-left-style:dashed}.slot.is-cancelled .slot__name,.slot.is-cancelled .slot__time,.slot.is-cancelled .slot__teacher,.slot.is-cancelled .slot__level,.slot.is-past,.slot.is-past .slot__time,.slot.is-past .slot__name,.slot.is-past .slot__length{color:var(--color-muted)}.slot.is-past{border-left-color:var(--color-rule)}.slot.is-past .slot__book{border-color:var(--color-muted);color:var(--color-muted)}.slot[role=button]{cursor:pointer;min-height:44px;transition:background-color var(--dur-short) var(--ease-out)}.slot[role=button]:hover,.slot[role=button]:active{background:var(--color-paper-3)}.slot[role=button]:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.week{table-layout:fixed;border-collapse:collapse;border-top:var(--rule-head) solid var(--color-ink);width:100%}.week__timecol{width:4.5rem}.week th,.week td{padding:var(--space-sm) var(--space-xs);vertical-align:top;text-align:left;font-weight:400}.week thead th,.week thead td{border-bottom:var(--rule-hair) solid var(--color-ink)}.week tbody tr{border-bottom:var(--rule-hair) solid var(--color-rule)}.week__day{padding-block:var(--space-md)}.week__dayname{font-size:var(--text-sm);color:var(--color-ink-2);display:block}.week__date{margin-top:var(--space-3xs);font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-ink);font-variant-numeric:tabular-nums;line-height:1.1;display:inline-block}.week__today{margin-left:var(--space-xs);font-size:var(--text-sm);color:var(--color-ink);font-weight:500}.week__state{margin-top:var(--space-2xs);font-size:var(--text-sm);color:var(--color-ink);display:block}.week__time{font-size:var(--text-md);color:var(--color-ink);font-variant-numeric:tabular-nums;white-space:nowrap;padding-left:0}.week th.week__time{font-weight:500}.week__cell .slot+.slot{margin-top:var(--space-sm)}.week .slot>*{order:3}.week .slot>.slot__changes{order:0}.week .slot>.slot__name{order:1}.week .slot>.slot__when{order:2}.sch-today{display:none}[data-today] .sch-today{display:inline-block}.week [data-today]{background:var(--color-paper-2)}.strip{gap:var(--space-2xs);padding:0 0 var(--space-md);border-top:var(--rule-head) solid var(--color-ink);grid-template-columns:repeat(7,minmax(0,1fr));margin:0;list-style:none;display:grid}.strip__day{align-items:center;gap:var(--space-3xs);min-height:64px;padding:var(--space-xs) 0;margin-top:var(--space-sm);border-radius:var(--radius-pill) var(--radius-pill) 0 0;color:var(--color-ink-2);text-align:center;transition:background-color var(--dur-short) var(--ease-out);flex-direction:column;text-decoration:none;display:flex}.strip__day:hover{background:var(--color-paper-2)}.strip__day:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.strip__name{font-size:var(--text-sm)}.strip__date{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-ink);font-variant-numeric:tabular-nums;line-height:1.1}.strip__state{font-size:var(--text-sm);color:var(--color-ink);white-space:nowrap}.strip__day.is-empty .strip__date{color:var(--color-muted)}.strip__day[data-today] .strip__name{color:var(--color-ink);font-weight:500}.strip__day[aria-current=date]{background:var(--color-paper-3);color:var(--color-ink);box-shadow:inset 0 -2px 0 var(--color-ink)}.daylist__day+.daylist__day{margin-top:var(--space-xl)}.daylist__title{font-family:var(--font-display);font-weight:var(--serif-small);color:var(--color-ink);align-items:baseline;gap:var(--space-xs) var(--space-sm);margin-top:var(--space-lg);font-size:var(--text-title);flex-wrap:wrap;line-height:1.3;display:flex}.daylist__title:focus-visible{outline:2px solid var(--color-focus);outline-offset:4px;border-radius:2px}.daylist__today{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-ink);font-weight:500}.daylist__state{margin-top:var(--space-sm);padding-block:var(--space-md);border-top:var(--rule-hair) solid var(--color-rule);color:var(--color-ink)}.daylist__state--empty{color:var(--color-ink-2)}.daylist__items{margin:var(--space-md) 0 0;border-top:var(--rule-hair) solid var(--color-rule);padding:0;list-style:none}.daylist__items>li{padding-block:var(--space-sm);border-bottom:var(--rule-hair) solid var(--color-rule)}.daylist__items .slot{column-gap:var(--space-md);row-gap:var(--space-3xs);font-size:var(--text-md);grid-template-columns:4.25rem minmax(0,1fr);align-items:baseline;display:grid}.daylist__items .slot>*{grid-column:2}.daylist__items .slot>.slot__when{flex-direction:column;grid-area:1/1/span 6;align-items:flex-start;gap:0}.daylist__items .slot__teacher,.daylist__items .slot__level,.daylist__items .slot__booking,.daylist__items .slot__note,.daylist__items .slot__before{font-size:var(--text-sm)}.sch-after{gap:var(--space-xl);margin-top:var(--space-xl);flex-direction:column;display:flex}.sch-after__length{font-size:var(--text-sm);color:var(--color-ink-2)}.sch-after__block{padding-top:var(--space-lg);border-top:var(--rule-hair) solid var(--color-rule)}.sch-after__title{font-size:var(--text-xl);font-weight:var(--serif-small);line-height:1.3}.sch-booking{gap:var(--space-2xs);margin-top:var(--space-sm);max-width:46em;color:var(--color-ink-2);flex-direction:column;display:flex}.sch-after__month .textlink{min-height:44px}.legend{gap:var(--space-lg) var(--gap-columns);margin:var(--space-md) 0 0;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.legend__item{padding-left:var(--space-sm);border-left:var(--slot-rule) solid var(--color-rule)}.legend__label{font-size:var(--text-sm);color:var(--color-ink);font-weight:500}.legend__text{margin:var(--space-2xs) 0 0;font-size:var(--text-sm);color:var(--color-ink-2)}.sch-bundle{margin-top:var(--space-3xl);padding-top:var(--space-lg);border-top:var(--rule-head) solid var(--color-ink)}.sch-bundle .bundle{margin-top:var(--space-lg)}html.js .cd{border-radius:var(--radius-card) 0 0 var(--radius-card);background:var(--color-paper);width:min(30rem,100%);max-width:none;height:100dvh;max-height:none;color:var(--color-ink-2);box-shadow:var(--shadow-card);border:0;margin:0;padding:0;position:fixed;inset:0 0 0 auto;overflow:clip}html.js .cd[open]{flex-direction:column;display:flex}html.js .cd::backdrop{background:var(--color-scrim)}html:has(.cd[open]){overflow-y:clip}.cd__inner{flex-direction:column;flex:auto;min-height:0;display:flex}.cd__head{justify-content:space-between;align-items:flex-start;gap:var(--space-md);padding:var(--space-lg) var(--space-xl);border-bottom:var(--rule-hair) solid var(--color-rule);display:flex}.cd__title{font-size:var(--text-2xl);line-height:1.25}.cd__close{min-height:44px;padding:0 var(--space-md);font-size:var(--text-sm);flex-shrink:0}.cd__scroll{overscroll-behavior:contain;min-height:0;padding:var(--space-lg) var(--space-xl) var(--space-2xl);flex:auto;overflow-y:auto}.cd__flags{gap:var(--space-2xs);flex-wrap:wrap;display:flex}.cd__flags:has(>:not([hidden])){margin-bottom:var(--space-md)}.cd__rows{border-top:var(--rule-head) solid var(--color-ink);margin:0}.cd__row{gap:var(--space-md);padding-block:var(--space-sm);border-bottom:var(--rule-hair) solid var(--color-rule);grid-template-columns:7rem minmax(0,1fr);display:grid}.cd__row dt{font-size:var(--text-sm);color:var(--color-muted);padding-top:var(--space-3xs)}.cd__row dd{color:var(--color-ink);font-variant-numeric:tabular-nums;min-width:0;margin:0}.cd__level-text{margin-top:var(--space-2xs);font-size:var(--text-sm);color:var(--color-ink-2);display:block}.cd__list{margin:0;padding:0;list-style:none}.cd__fixed{margin-top:var(--space-xl)}.cd__sub{font-size:var(--text-xl);font-weight:var(--serif-small);line-height:1.3}.cd__trial-line{margin-top:var(--space-sm);font-size:var(--text-sm);color:var(--color-ink-2)}.cd__fixed .bundle{margin-top:var(--space-md)}.mo-when{align-items:center;gap:var(--space-xs) var(--space-md);flex-wrap:wrap;display:flex}.mo-when[hidden]{display:none}.mo-when .textlink{min-height:44px}.mo-when__line{font-size:var(--text-sm);color:var(--color-ink-2);flex-basis:100%}.mo-block{margin-top:var(--space-2xl)}.mo-block__title{margin-bottom:var(--space-md);font-size:var(--text-xl);font-weight:var(--serif-small);line-height:1.3}.mo-day+.mo-day{margin-top:var(--space-lg)}.mo-day__title{font-family:var(--font-display);font-weight:var(--serif-small);font-size:var(--text-title);color:var(--color-ink);line-height:1.3}.mo-day__none{margin-top:var(--space-sm);padding-block:var(--space-sm);border-top:var(--rule-hair) solid var(--color-rule);color:var(--color-ink-2)}.mo-rows{border-top:var(--rule-head) solid var(--color-ink);margin:0;padding:0;list-style:none}.mo-row{gap:var(--space-sm) var(--space-lg);padding-block:var(--space-md);border-bottom:var(--rule-hair) solid var(--color-rule);grid-template-columns:16rem minmax(0,1fr);align-items:baseline;display:grid}.mo-row__when{color:var(--color-ink);font-variant-numeric:tabular-nums}.mo-row__slots{gap:var(--space-sm) var(--space-xl);flex-wrap:wrap;display:flex}.mo-row__slots .slot{min-width:10rem}.mo-row__what{align-items:baseline;gap:var(--space-2xs) var(--space-sm);color:var(--color-ink-2);flex-wrap:wrap;display:flex}@media (width<=60rem){.legend{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=40rem){.studio-tabs{margin-top:var(--space-lg)}.studio-tabs__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;display:grid}.studio-tabs__tab{min-height:52px;font-size:var(--text-lg)}.sch-choose{grid-template-columns:minmax(0,1fr)}.weeknav__range{flex-basis:100%}.weeknav__step{flex:1 1 0}.weeknav__view{flex-basis:100%;margin-left:0}.legend{grid-template-columns:minmax(0,1fr)}html.js .cd{border-radius:0;width:100%}.cd__head{padding:var(--space-md) var(--gutter)}.cd__scroll{padding:var(--space-md) var(--gutter) var(--space-2xl)}.cd__row{grid-template-columns:6rem minmax(0,1fr)}.mo-row{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.studio-tabs__tab,.sch-choose__link,.slot[role=button],.strip__day{transition:none}}
