.schedule-hero{position:relative;min-height:350px;overflow:hidden;background:#070a0c;color:#fff}.schedule-hero__image{position:absolute;inset:0;background:url('/dist/images/gym/classes-hero.png') center/cover}.schedule-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,8,10,.98),rgba(5,8,10,.75) 45%,rgba(5,8,10,.28))}.schedule-hero__inner{position:relative;z-index:1;padding-top:45px}.schedule-hero nav{display:flex;gap:12px;align-items:center;font-size:13px}.schedule-hero nav a,.schedule-hero nav strong{color:#fff}.schedule-hero nav span{color:var(--gym-yellow);font-size:20px}.schedule-hero h1{position:relative;margin:48px 0 26px;padding-bottom:17px;color:#fff;font-size:clamp(38px,5vw,54px);font-weight:900;text-transform:uppercase}.schedule-hero h1:after{content:"";position:absolute;bottom:0;left:0;width:44px;height:3px;background:var(--gym-yellow)}.schedule-hero p{max-width:560px;margin:0;color:#e2e3e4;font-size:16px;line-height:1.8}
.schedule-main{padding:48px 0 65px;background:#fff;color:#202326}.schedule-titlebar{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:25px}.schedule-titlebar h2{margin:0 0 6px;color:#111;font-size:23px;font-weight:900;text-transform:uppercase}.schedule-titlebar p{margin:0;color:#777}.schedule-week-nav{display:flex;gap:8px}.schedule-week-nav a{min-width:42px;height:42px;padding:0 14px;display:grid;place-items:center;border:1px solid #ddd;border-radius:4px;color:#111;font-weight:800;text-decoration:none}.schedule-week-nav a:hover{border-color:var(--gym-yellow)}
.schedule-days{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:22px;border:1px solid #ddd;border-radius:6px;overflow:hidden}.schedule-days button{min-width:0;padding:17px 8px;border:0;border-right:1px solid #ddd;background:#fafafa;color:#222;cursor:pointer}.schedule-days button:last-child{border:0}.schedule-days strong,.schedule-days span,.schedule-days small{display:block}.schedule-days strong{font-size:12px;text-transform:uppercase}.schedule-days span{margin-top:5px;font-size:12px}.schedule-days small{margin-top:5px;color:#888;font-size:10px}.schedule-days button.is-active{background:linear-gradient(135deg,var(--gym-yellow-bright),#ff6600);color:#080a0b}.schedule-days button.is-active small{color:#4c3900}
.schedule-panels{overflow:hidden;border:1px solid #ddd;border-radius:6px}.schedule-panel[hidden]{display:none}.schedule-table-head,.schedule-row{display:grid;grid-template-columns:120px minmax(260px,2fr) minmax(170px,1fr) 110px 110px;align-items:center}.schedule-table-head{min-height:58px;background:#0b0e10;color:#fff;font-size:12px;font-weight:900;text-transform:uppercase}.schedule-table-head span,.schedule-row>div{padding:15px 18px;border-right:1px solid rgba(127,127,127,.2)}.schedule-table-head span:last-child,.schedule-row>div:last-child{border:0}.schedule-row{min-height:90px;border-top:1px solid #ddd}.schedule-row:first-of-type{border-top:0}.schedule-row:hover{background:#fffaf0}.schedule-time strong,.schedule-time span{display:block}.schedule-time strong{font-size:17px}.schedule-time span{margin-top:4px;color:#888;font-size:12px}.schedule-class{display:flex;align-items:center;gap:15px}.schedule-class i{color:var(--gym-yellow);font-size:29px;font-style:normal}.schedule-class span,.schedule-class a,.schedule-class small{display:block}.schedule-class a{color:#111;font-weight:900;text-transform:uppercase;text-decoration:none}.schedule-class small{margin-top:5px;color:#777}.schedule-trainer a{color:#222;text-decoration:none}.schedule-duration,.schedule-capacity{text-align:center}.schedule-capacity strong{font-size:18px}.schedule-capacity span{color:#777;font-size:11px}.schedule-no-classes{padding:70px 20px;text-align:center}.schedule-no-classes i{color:var(--gym-yellow);font-size:45px;font-style:normal}.schedule-no-classes h3{margin:13px 0 7px;font-size:19px}.schedule-no-classes p{margin:0;color:#777}.schedule-note{margin:28px 0;text-align:center;color:#555;font-size:13px}.schedule-benefits{padding:24px 28px;display:grid;grid-template-columns:repeat(3,1fr) auto;align-items:center;gap:25px;border-radius:7px;background:#f5f5f5}.schedule-benefits>div{display:flex;align-items:center;gap:14px}.schedule-benefits i{color:var(--gym-yellow);font-size:31px;font-style:normal}.schedule-benefits span{display:flex;flex-direction:column}.schedule-benefits strong{font-size:12px;text-transform:uppercase}.schedule-benefits small{margin-top:5px;color:#666}body.schedule-page .gym-navigation a[href="/programma"]{color:var(--gym-yellow)}body.schedule-page .gym-navigation a[href="/programma"]:after{transform:scaleX(1)}
@media(max-width:1000px){.schedule-days{overflow-x:auto;grid-template-columns:repeat(7,minmax(115px,1fr))}.schedule-panels{overflow-x:auto}.schedule-table-head,.schedule-row{min-width:850px}.schedule-benefits{grid-template-columns:1fr 1fr}.schedule-benefits .gym-button{justify-self:start}}
@media(max-width:620px){.schedule-hero{min-height:380px}.schedule-main{padding-top:35px}.schedule-titlebar{align-items:flex-start;flex-direction:column}.schedule-days{margin-right:-16px}.schedule-table-head{display:none}.schedule-panels{border:0;overflow:visible}.schedule-row{min-width:0;margin-bottom:12px;padding:18px;grid-template-columns:80px 1fr;border:1px solid #ddd!important;border-radius:6px}.schedule-row>div{padding:8px;border:0}.schedule-class{grid-column:2}.schedule-trainer{grid-column:2}.schedule-duration,.schedule-capacity{grid-column:auto;text-align:left}.schedule-benefits{grid-template-columns:1fr}.schedule-benefits .gym-button{width:100%}}

.schedule-week-grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    border: 1px solid #dcdcdc;
    border-radius: 7px;
    overflow: hidden;
    background: #f4f4f4;
}
.schedule-day-column { min-width: 0; border-right: 1px solid #dcdcdc; background: #fff; }
.schedule-day-column:last-child { border-right: 0; }
.schedule-day-column > header { min-height: 91px; padding: 16px 8px; display: flex; flex-direction: column; align-items: center; justify-content: center; background: #0c0f11; color: #fff; text-align: center; }
.schedule-day-column > header strong { font-size: 12px; text-transform: uppercase; }
.schedule-day-column > header span { margin-top: 5px; font-size: 12px; }
.schedule-day-column > header small { margin-top: 5px; color: #aeb2b5; font-size: 10px; }
.schedule-day-column.is-today > header { background: linear-gradient(135deg, var(--gym-yellow-bright), #f5a900); color: #090b0c; }
.schedule-day-column.is-today > header small { color: #604300; }
.schedule-day-column__items { min-height: 330px; padding: 10px; }
.schedule-grid-card { margin-bottom: 10px; padding: 14px 12px; border: 1px solid #e0e0e0; border-left: 3px solid var(--gym-yellow); border-radius: 5px; background: #fff; }
.schedule-grid-card:last-child { margin-bottom: 0; }
.schedule-grid-card__time { display: flex; align-items: baseline; justify-content: space-between; gap: 5px; }
.schedule-grid-card__time strong { color: #111; font-size: 15px; }
.schedule-grid-card__time span { color: #888; font-size: 10px; }
.schedule-grid-card__class { margin-top: 11px; display: block; color: #111; font-size: 12px; font-weight: 900; line-height: 1.35; text-transform: uppercase; text-decoration: none; }
.schedule-grid-card__class:hover { color: #b77b00; text-decoration: none; }
.schedule-grid-card__trainer { margin-top: 6px; display: block; color: #656a6d; font-size: 11px; text-decoration: none; }
.schedule-grid-card__meta { margin-top: 12px; padding-top: 9px; display: flex; justify-content: space-between; gap: 5px; border-top: 1px solid #ececec; color: #777; font-size: 10px; }
.schedule-grid-empty { min-height: 130px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; color: #aaa; text-align: center; font-size: 11px; }
.schedule-grid-empty i { color: var(--gym-yellow); font-size: 24px; font-style: normal; }

@media(max-width:1100px) {
    .schedule-week-grid { grid-template-columns: repeat(7, 180px); overflow-x: auto; }
}
@media(max-width:620px) {
    .schedule-week-grid { margin-right: -16px; grid-template-columns: repeat(7, 78vw); border-radius: 6px 0 0 6px; }
    .schedule-day-column__items { min-height: 220px; }
}

.schedule-timetable-scroll { overflow-x: auto; border: 1px solid #d9d9d9; border-radius: 7px; background: #fff; }
.schedule-timetable { min-width: 1160px; display: grid; grid-template-columns: 82px repeat(7, minmax(150px, 1fr)); grid-template-rows: 82px calc(var(--calendar-hours) * var(--hour-height)); }
.schedule-time-heading,.schedule-day-heading { position: sticky; top: 0; z-index: 5; display: flex; flex-direction: column; align-items: center; justify-content: center; border-right: 1px solid #292d30; background: #0c0f11; color: #fff; }
.schedule-time-heading { left: 0; z-index: 7; font-size: 11px; font-weight: 900; text-transform: uppercase; }
.schedule-day-heading strong { font-size: 12px; text-transform: uppercase; }.schedule-day-heading span{margin-top:5px;font-size:11px}.schedule-day-heading small{margin-top:4px;color:#aeb2b5;font-size:9px}.schedule-day-heading.is-today{background:linear-gradient(135deg,var(--gym-yellow-bright),#f5a900);color:#090b0c}.schedule-day-heading.is-today small{color:#604300}
.schedule-time-axis { position: relative; z-index: 3; height: calc(var(--calendar-hours) * var(--hour-height)); border-right: 1px solid #d7d7d7; background:#fafafa; }
.schedule-time-axis span { position: absolute; right: 12px; transform: translateY(-50%); color:#555; font-size:11px; font-weight:700; }
.schedule-time-axis span:first-child { transform:none; top:8px!important }.schedule-time-axis span:last-child{transform:translateY(-100%)}
.schedule-timeline-day { position:relative; height:calc(var(--calendar-hours) * var(--hour-height)); border-right:1px solid #ddd; background:repeating-linear-gradient(to bottom,#fff 0,#fff calc(var(--hour-height) - 1px),#dedede calc(var(--hour-height) - 1px),#dedede var(--hour-height)); }
.schedule-timeline-day:last-child{border-right:0}.schedule-timeline-day.is-today{background:repeating-linear-gradient(to bottom,#fffdf5 0,#fffdf5 calc(var(--hour-height) - 1px),#e5d8b6 calc(var(--hour-height) - 1px),#e5d8b6 var(--hour-height))}
.schedule-event { position:absolute; z-index:2; right:7px; left:7px; min-height:42px; padding:7px 8px; overflow:hidden; border:1px solid #efb21c; border-left:4px solid var(--gym-yellow); border-radius:5px; background:#fff8e6; box-shadow:0 3px 10px rgba(0,0,0,.07); }
.schedule-event__time{color:#765100;font-size:9px;font-weight:900}.schedule-event__class{margin-top:3px;display:block;color:#111;font-size:10px;font-weight:900;line-height:1.2;text-transform:uppercase;text-decoration:none}.schedule-event__trainer{margin-top:3px;display:block;color:#666;font-size:9px;line-height:1.2;text-decoration:none}.schedule-event__meta{position:absolute;right:7px;bottom:4px;color:#866216;font-size:8px}.schedule-event a:hover{color:#a56f00;text-decoration:none}
.schedule-timeline-empty{position:absolute;top:20px;right:10px;left:10px;color:#aaa;font-size:10px;line-height:1.4;text-align:center}
@media(max-width:620px){.schedule-timetable-scroll{margin-right:-16px;border-radius:6px 0 0 6px}.schedule-timetable{min-width:1090px;grid-template-columns:70px repeat(7,145px)}}
