.timetable-page{max-width:1440px;padding-top:60px;padding-bottom:65px}.timetable-page>h1{font-size:clamp(59px,6.7vw,104px);line-height:.9;max-width:none;margin-top:22px;margin-bottom:30px}.timetable-intro{display:flex;align-items:center;justify-content:space-between;gap:45px;padding-bottom:34px;border-bottom:1px solid #c6cbbd}.timetable-intro>div{max-width:650px}.timetable-intro>div>p:first-child{font-size:16px;line-height:1.7}.class-access-note{font-size:11px;line-height:1.9;color:#58644b;margin-top:16px!important;max-width:590px}.timetable-intro>.button{flex-shrink:0;gap:25px;min-width:245px;font-size:11px}.timetable-intro .icon{width:18px;height:18px}.timetable-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:27px 0 19px}.timetable-toolbar>p{font-size:9px;letter-spacing:.13em;font-weight:700;color:#657354}.timetable-legend{display:flex;gap:23px;font-size:10px;color:#536047}.timetable-legend>span{display:flex;align-items:center;gap:9px}.timetable-legend i{width:9px;height:9px;display:block;box-shadow:0 0 0 1px #b6bea9}.legend-studio{background:var(--yellow)}.legend-boxing{background:#858d7e}.weekly-schedule{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;background:#4a5141;border:1px solid #4a5141}.schedule-day{background:var(--ink);min-width:0}.day-heading{background:var(--yellow);color:var(--ink);padding:18px 15px 16px;min-height:93px;border-bottom:1px solid #4a5141}.day-heading h2{font-family:var(--display);font-size:30px;line-height:1;font-weight:700;letter-spacing:-.01em;text-transform:uppercase}.day-heading>span{font-size:7px;font-weight:600;letter-spacing:.12em;display:block;margin-top:8px}.day-sessions{padding:11px 9px 18px;display:flex;flex-direction:column;gap:11px}.class-session{background:#262b23;color:var(--paper);border:1px solid #414a39;border-left:3px solid var(--yellow);padding:15px 11px 14px;display:flex;flex-direction:column;align-items:flex-start;min-height:182px;min-width:0}.session-boxing{border-left-color:#969f8c}.session-time{font-size:10px;font-weight:600;line-height:1.5;letter-spacing:.01em;color:var(--yellow);display:flex;align-items:center;gap:3px;white-space:nowrap}.class-session h3{font-family:var(--display);font-size:24px;line-height:1.06;letter-spacing:0;font-weight:600;margin:14px 0 12px;overflow-wrap:anywhere}.session-room{font-size:8px;line-height:1.5;color:#c5cfb8;margin-top:0!important;display:flex;align-items:center;gap:5px}.session-room>span{display:block;width:4px;height:4px;background:var(--yellow);flex-shrink:0}.session-boxing .session-room>span{background:#969f8c}.session-book{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:9px;font-weight:500;line-height:1.5;border-top:1px solid #48533c;color:#e0e7d7;width:100%;padding-top:10px;margin-top:18px}.session-book>span{font-size:15px;line-height:1}.session-book:hover{color:var(--yellow);border-color:var(--yellow)}.session-book:focus-visible{outline-color:var(--yellow)}.schedule-footnote{display:flex;gap:11px;align-items:flex-start;padding-top:21px;color:#59664d}.schedule-footnote>.icon{width:16px;height:16px;flex-shrink:0;margin-top:2px}.schedule-footnote>p{font-size:10px;line-height:1.8;max-width:760px}.timetable-page .poster-details{border-top:1px solid #cbd2bf;margin-top:25px}.timetable-page .poster-details summary{font-size:10px;color:#58664c;font-weight:500}.timetable-page .poster-details img{max-width:950px;margin:20px auto}.day-tabs{display:flex;gap:6px;margin-bottom:14px}.day-tab{min-width:0;flex:1;background:transparent;border:1px solid #bdc7ae;padding:12px 4px 10px;color:var(--ink);text-align:center}.day-tab>span{display:block;font-family:var(--display);font-size:23px;line-height:1;font-weight:700}.day-tab>small{display:block;font-size:8px;font-weight:500;margin-top:6px;line-height:1.4;white-space:nowrap}.day-tab[aria-selected=true]{background:var(--yellow);border-color:#a8a00a;box-shadow:inset 0 -3px 0 var(--ink)}.day-tab:hover{border-color:var(--ink)}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:900px) and (max-width:1099px){.day-heading{padding:16px 10px;min-height:87px}.day-heading h2{font-size:26px}.day-sessions{padding:10px 7px 16px;gap:10px}.class-session{padding:13px 9px 12px;min-height:186px}.class-session h3{font-size:20px}.session-time{font-size:9px;gap:2px}.session-room{font-size:8px}.session-book{font-size:8px}.timetable-intro>.button{min-width:220px;padding:14px 17px;gap:18px}}
@media(max-width:899px){.timetable-page{padding-top:45px}.timetable-page>h1{font-size:76px;margin-bottom:25px}.timetable-intro{gap:27px;align-items:flex-start}.timetable-intro>div>p:first-child{font-size:14px}.timetable-intro>.button{min-width:210px;padding:14px 16px;font-size:10px;gap:17px}.class-access-note{font-size:10px}.weekly-schedule{grid-template-columns:1fr;gap:15px;border:0;background:transparent}.schedule-day{border:1px solid #414a39}.day-heading{background:var(--ink);color:var(--yellow);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 24px;min-height:0;border-bottom:1px solid #4a5141}.day-heading h2{font-size:39px}.day-heading>span{font-size:8px;color:#c8d1bc;letter-spacing:.13em;margin:0}.day-sessions{display:grid;grid-template-columns:1fr 1fr;padding:18px;gap:16px}.class-session{padding:19px 17px 17px;min-height:180px}.session-time{font-size:12px;gap:4px}.class-session h3{font-size:30px;margin:15px 0 13px}.session-room{font-size:10px;gap:7px}.session-room>span{width:5px;height:5px}.session-book{font-size:10px;margin-top:20px;padding-top:12px}.day-tabs{margin-top:0}.timetable-toolbar{padding-top:23px}.timetable-toolbar>p{font-size:8px}.timetable-legend{font-size:10px}.schedule-footnote>p{font-size:10px}.timetable-page .poster-details{margin-top:22px}}
@media(max-width:700px){.timetable-page{padding-top:35px;padding-bottom:50px}.timetable-page>h1{font-size:clamp(52px,12.8vw,80px);margin:20px 0 23px;line-height:.92}.timetable-intro{flex-direction:column;gap:21px;padding-bottom:24px}.timetable-intro>div>p:first-child{font-size:13px}.class-access-note{font-size:10px;margin-top:13px!important}.timetable-intro>.button{width:100%;min-height:49px;font-size:11px;min-width:0;padding:13px 18px}.timetable-toolbar{padding:22px 0 17px;gap:12px}.timetable-toolbar>p{font-size:6px;letter-spacing:.09em}.timetable-legend{gap:17px;font-size:9px}.timetable-legend>span{gap:7px}.timetable-legend i{height:8px;width:8px}.day-tab{padding-top:11px;padding-bottom:10px}.day-tab>span{font-size:22px}.day-tab>small{font-size:6px;margin-top:5px}.day-heading{padding:21px 20px}.day-heading h2{font-size:37px}.day-heading>span{font-size:8px}.day-sessions{display:flex;flex-direction:column;padding:14px;gap:13px}.class-session{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:14px;row-gap:0;padding:17px 15px 17px 16px;min-height:137px;align-items:start}.session-time{grid-column:1;grid-row:1;font-size:11px;gap:4px}.class-session h3{grid-column:1;grid-row:2;font-size:28px;line-height:1.05;margin:12px 0 11px}.session-room{grid-column:1;grid-row:3;font-size:9px}.session-book{grid-column:2;grid-row:1/4;align-self:center;min-height:42px;min-width:66px;max-width:85px;flex-direction:column;justify-content:center;gap:5px;text-align:center;margin:0;padding:9px 8px;border:1px solid #667653;font-size:8px}.session-book>span{font-size:17px}.schedule-footnote{gap:9px;padding-top:19px}.schedule-footnote>p{font-size:9px}.timetable-page .poster-details summary{font-size:10px}}
@media(max-width:359px){.timetable-page>h1{font-size:12.8vw}.timetable-toolbar>p{display:none}.day-tabs{gap:4px}.day-tab>span{font-size:20px}.day-tab>small{font-size:5.5px}.day-heading{padding:19px 17px}.day-heading h2{font-size:34px}.day-sessions{padding:10px}.class-session{padding:15px 12px;column-gap:10px}.class-session h3{font-size:26px}.session-book{min-width:58px;padding:9px 6px;font-size:7px}.session-time{font-size:10px}}
@media print{.day-tabs,.timetable-intro>.button,.session-book,.poster-details{display:none!important}.weekly-schedule{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.schedule-day[hidden]{display:block!important}.day-sessions{display:flex;flex-direction:column}.schedule-day,.class-session,.day-heading{color:black;background:white;border-color:#777}.session-time,.session-room,.day-heading>span{color:black}.class-session{break-inside:avoid;min-height:0}.timetable-page{padding:20px}.day-heading h2{font-size:25px}.class-session h3{font-size:23px}}
