.syl-schedule-page { --syl-paper:#faf9f5; --syl-ink:#191914; --syl-muted:#626159; background:var(--syl-paper); }
.syl-schedule-page #qodef-page-outer,.syl-schedule-page #qodef-page-inner { background:var(--syl-paper); }
.syl-schedule-page #qodef-page-inner { padding-top:0; padding-bottom:0; }
.syl-schedule-page .qodef-page-title { display:none; }
.syl-schedule-page #qodef-page-content { padding-top:0; }
.syl-schedule-page .syl-schedule-intro { padding:80px 0 44px; max-width:900px; }
.syl-schedule-page .syl-schedule-eyebrow { font-size:12px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; margin:0 0 22px; color:var(--syl-muted); }
.syl-schedule-page .syl-schedule-intro h1 { font-family:inherit; font-size:clamp(46px,7.2vw,100px); font-weight:600; line-height:1.03; letter-spacing:-.055em; margin:0 0 26px; color:var(--syl-ink); }
.syl-schedule-page .syl-schedule-intro>p:last-child { max-width:620px; font-size:18px; line-height:1.7; margin:0; color:var(--syl-muted); }
.syl-weekly { --syl-ink:#191914; --syl-muted:#626159; font-family:inherit; color:var(--syl-ink); padding:0 0 42px; }
.syl-weekly * { box-sizing:border-box; }
.syl-weekly__days { display:grid; grid-template-columns:repeat(var(--syl-day-count,5),minmax(0,1fr)); gap:14px; align-items:start; }
.syl-weekly .syl-weekly__day-name { border-bottom:2px solid var(--syl-ink); font-family:inherit; font-size:12px; font-weight:700; letter-spacing:.065em; line-height:1.4; text-transform:uppercase; padding:0 0 10px; margin:0 0 14px; }
.syl-weekly__classes { display:grid; gap:12px; }
.syl-weekly__class { position:relative; display:grid; grid-template-columns:84px minmax(0,1fr); gap:10px; align-items:center; min-height:92px; padding:15px 12px; border:2.5px solid var(--syl-ink); border-radius:19px; background:#fff; }
.syl-weekly__time { display:flex; align-items:center; gap:0; font-size:13px; font-weight:700; font-variant-numeric:tabular-nums; letter-spacing:-.045em; line-height:1.3; white-space:nowrap; }
.syl-weekly__time:has(small) { flex-wrap:wrap; }
.syl-weekly__time small { flex-basis:100%; font-size:10px; font-weight:400; white-space:normal; }
.syl-weekly .syl-weekly__detail h3 { font-family:inherit; font-size:14px; font-weight:700; line-height:1.35; letter-spacing:-.025em; overflow-wrap:normal; margin:0 0 3px; }
.syl-weekly .syl-weekly__detail p { font-size:13px; line-height:1.5; margin:0; color:var(--syl-muted); overflow-wrap:anywhere; }
.syl-weekly__marker { position:absolute; right:12px; bottom:20px; font-size:19px; line-height:1; }
.syl-weekly__class:has(.syl-weekly__marker) .syl-weekly__detail p { padding-right:18px; }
.syl-weekly__time:has(.syl-weekly__status) { flex-wrap:wrap; }
.syl-weekly__time .syl-weekly__status { flex-basis:100%; white-space:normal; letter-spacing:0; }
.syl-weekly__marker--star { color:#ff9c27; }
.syl-weekly__marker--sprout { color:#69a744; }
.syl-weekly__marker--heart { color:#e32b49; }
.syl-weekly__status { display:inline-block; font-size:10px; line-height:1.6; letter-spacing:0; font-weight:600; margin-top:7px; color:#626159; }
.syl-weekly .syl-weekly__legend { display:flex; flex-wrap:wrap; gap:16px 24px; list-style:none; padding:0; margin:28px 0 0; }
.syl-weekly__legend li { display:flex; align-items:center; gap:8px; font-size:12px; line-height:1.5; color:var(--syl-muted); }
.syl-weekly__legend li span { font-size:17px; }
.syl-weekly .syl-weekly__note { font-size:12px; line-height:1.6; color:var(--syl-muted); border-top:1px solid #deddd4; margin:26px 0 0; padding-top:18px; }
.syl-weekly__empty { font-size:12px; font-style:italic; color:var(--syl-muted); padding-top:9px; }
.syl-weekly__message { padding:36px; border:2px solid var(--syl-ink); border-radius:20px; background:#fff; }
.syl-weekly__message h2 { font-size:26px; letter-spacing:-.035em; margin:0 0 12px; }
.syl-weekly__message p { font-size:16px; line-height:1.7; margin:0; }
.syl-weekly__message button,.syl-schedule-page .syl-schedule-cta a { display:inline-flex; align-items:center; justify-content:center; padding:16px 26px; font-family:inherit; font-size:14px; font-weight:700; line-height:1.3; border:2px solid var(--syl-ink); border-radius:50px; background:var(--syl-ink); color:#fff; text-decoration:none; cursor:pointer; transition:background .15s,color .15s; }
.syl-weekly__message button { margin-top:22px; }
.syl-weekly__message button:hover,.syl-schedule-page .syl-schedule-cta a:hover { background:#e4edc6; color:var(--syl-ink); }
.syl-weekly__message button:focus-visible,.syl-schedule-page .syl-schedule-cta a:focus-visible { outline:3px solid #416a91; outline-offset:5px; }
.syl-schedule-page .syl-schedule-cta { display:flex; align-items:center; justify-content:space-between; gap:30px; border-top:2px solid var(--syl-ink); padding:38px 0 70px; }
.syl-schedule-page .syl-schedule-cta h2 { font-family:inherit; font-size:clamp(26px,3vw,38px); line-height:1.15; letter-spacing:-.04em; margin:0 0 12px; }
.syl-schedule-page .syl-schedule-cta p { max-width:570px; font-size:16px; line-height:1.7; margin:0; color:var(--syl-muted); }
.syl-schedule-page .syl-schedule-cta a { flex-shrink:0; }
@media (max-width:1150px) { .syl-weekly__class { grid-template-columns:92px minmax(0,1fr); } .syl-weekly__days { grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px 18px; } .syl-weekly__time { font-size:14px; } .syl-weekly .syl-weekly__detail h3 { font-size:16px; } .syl-weekly .syl-weekly__detail p { font-size:14px; } }
@media (max-width:800px) { .syl-weekly__days { grid-template-columns:repeat(2,minmax(0,1fr)); } .syl-schedule-page .syl-schedule-intro { padding-top:52px; } .syl-schedule-page .syl-schedule-cta { align-items:flex-start; flex-direction:column; } }
@media (max-width:520px) { .syl-weekly__days { grid-template-columns:minmax(0,1fr); gap:30px; } .syl-weekly__class { padding:20px; gap:18px; min-height:92px; } .syl-weekly__time { font-size:15px; } .syl-weekly .syl-weekly__detail h3 { font-size:17px; } .syl-weekly .syl-weekly__detail p { font-size:14px; } .syl-weekly .syl-weekly__day-name { font-size:13px; } .syl-weekly__status { font-size:12px; } .syl-schedule-page .syl-schedule-intro>p:last-child { font-size:16px; } .syl-schedule-page .syl-schedule-cta a { width:100%; } .syl-weekly__message { padding:24px; } }

/* T50: visible label for groups pending opening. */
.syl-weekly__class:has(.syl-weekly__status--new) { margin-top:9px; }
.syl-weekly__time .syl-weekly__status--new { position:absolute; top:-12px; right:12px; margin:0; padding:5px 9px; border:1px solid #191914; border-radius:7px; background:#e4edc6; color:#191914; font-size:10px; font-weight:800; line-height:1.25; letter-spacing:.045em; white-space:nowrap; }
