.planning-page{z-index:3;background:var(--d);color:#fff;position:relative}.planning-hero{background:var(--d);justify-content:center;align-items:center;min-height:78vh;padding:clamp(6rem,12vw,10rem) clamp(1.25rem,3vw,2.5rem);display:flex;position:relative}.planning-hero__bg{opacity:.35;background-image:url(/images/disciplines/training.jpeg);background-position:50%;background-size:cover;position:absolute;inset:0}.planning-hero__bg:after{content:"";background:linear-gradient(to top, var(--d) 0%, transparent 100%);position:absolute;inset:0}.planning-hero__content{z-index:2;text-align:center;width:100%;max-width:72rem;margin:0 auto;position:relative}.planning-hero__eyebrow{justify-content:center;width:100%;margin-bottom:1.1rem}.planning-hero__title{font-family:var(--f-h);text-transform:uppercase;color:#fff;margin:0;font-size:clamp(4.5rem,13vw,10rem);font-weight:900;line-height:.85}.planning-hero__lead{max-width:28rem;font-family:var(--f-nm);color:#ffffffb8;margin:1.15rem auto 0;font-size:clamp(.9rem,1.15vw,1.05rem);font-weight:500;line-height:1.55}.planning-hero__cta{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.75rem;display:flex}.planning-body{font-family:var(--f-nm);padding:clamp(2rem,5vw,3.5rem) clamp(1.25rem,3vw,2.5rem) clamp(3rem,6vw,4.5rem)}.planning-toolbar{z-index:10;background:linear-gradient(to bottom, var(--d) 70%, transparent);flex-direction:column;gap:1rem;max-width:90rem;margin:0 auto;padding:1rem 0 1.25rem;display:flex;position:sticky;top:0}.planning-filters{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.planning-filter{color:#ffffffa6;font-family:var(--f-nm);text-transform:uppercase;letter-spacing:.03em;cursor:pointer;background:0 0;border:1px solid #ffffff2e;padding:.6rem 1.1rem;font-size:.85rem;font-weight:600;transition:border-color .2s,color .2s,background .2s}.planning-filter:hover{color:#fff;border-color:#fff6}.planning-filter.is-active{border-color:var(--l);background:var(--l);color:var(--d)}.planning-filters__detail{text-align:center;min-height:1.1em;font-family:var(--f-nm);letter-spacing:.02em;color:#ffffff73;margin:0 0 .15rem;font-size:.72rem;font-weight:500;line-height:1.35}.planning-filters__detail:empty{visibility:hidden}.planning-week-nav{justify-content:space-between;align-items:center;gap:1rem;display:flex}.planning-week-nav__label{font-family:var(--f-nm);color:#ffffffe6;text-align:center;flex:1;font-size:clamp(.9rem,1.1vw,1.05rem);font-weight:600}.planning-week-nav__btn{color:#fff;cursor:pointer;background:#ffffff0a;border:1px solid #fff3;flex-shrink:0;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;transition:border-color .2s,background .2s;display:flex}.planning-week-nav__btn:hover{border-color:var(--l);background:#fcf10014}.planning-week-nav__btn svg{width:.9rem;height:.9rem}.planning-day-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.4rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.planning-day-tabs::-webkit-scrollbar{display:none}.planning-day-tab{color:#ffffff8c;min-width:3.6rem;font-family:var(--f-nm);cursor:pointer;background:#ffffff08;border:1px solid #ffffff1f;flex-direction:column;flex-shrink:0;align-items:center;gap:.15rem;padding:.55rem .65rem;transition:border-color .2s,background .2s,color .2s;display:flex}.planning-day-tab.is-active{border-color:var(--l);color:#fff;background:#fcf1001a}.planning-day-tab.is-today .planning-day-tab__label{color:var(--l)}.planning-day-tab__label{text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:700}.planning-day-tab__date{opacity:.7;font-size:.7rem;font-weight:500}.planning-day-tab__count{color:var(--l);font-size:.65rem;font-weight:700}@media (width>=900px){.planning-day-tabs{display:none}}.planning-board{max-width:90rem;margin:0 auto}.planning-grid{background:#ffffff05;border:1px solid #ffffff1a;flex-direction:column;gap:0;height:clamp(360px,62vh,680px);min-height:360px;display:flex;overflow:hidden}@media (width>=900px){.planning-grid{grid-template-rows:minmax(0,1fr);grid-template-columns:repeat(7,minmax(0,1fr));gap:0;height:clamp(400px,68vh,720px);display:grid}}.planning-day{border-bottom:1px solid #ffffff14;flex-direction:column;height:100%;min-height:0;display:none;overflow:hidden}.planning-day.is-active{flex:auto;min-height:0;display:flex}@media (width>=900px){.planning-day{border-bottom:none;border-right:1px solid #ffffff14;display:flex}.planning-day:last-child{border-right:none}}.planning-day__head{background:#00000059;border-bottom:1px solid #ffffff1a;flex-shrink:0;padding:.85rem .9rem .7rem}@media (width<=899px){.planning-day__head{display:none}}.planning-day__head.is-today .planning-day__label{color:var(--l)}.planning-day__label{font-family:var(--f-nm);text-transform:uppercase;letter-spacing:.05em;color:#fff;font-size:.85rem;font-weight:700;line-height:1.2;display:block}.planning-day__date{font-family:var(--f-nm);color:#ffffff73;margin-top:.15rem;font-size:.75rem;font-weight:500;display:block}.planning-day__slots{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;flex-direction:column;flex:auto;gap:.5rem;min-height:0;max-height:100%;padding:.65rem;display:flex;overflow:hidden auto}.planning-day__empty{font-family:var(--f-nm);color:#ffffff40;flex:1;justify-content:center;align-items:center;padding:2rem 0;font-size:.9rem;font-weight:500;display:flex}.planning-slot{color:inherit;background:#ffffff0a;border:1px solid #ffffff1a;flex-direction:column;flex-shrink:0;gap:.4rem;padding:.85rem .9rem;text-decoration:none;transition:border-color .2s,background .2s;display:flex}.planning-slot:hover{background:#ffffff12;border-color:#ffffff47}.planning-slot--boxe{border-left:3px solid var(--l)}.planning-slot--hyrox{border-left:3px solid #fff}.planning-slot--training{border-left:3px solid #ffffff59}.planning-slot__time{font-family:var(--f-nm);color:var(--l);font-size:1rem;font-weight:700;line-height:1.2}.planning-slot__title{font-family:var(--f-nm);color:#fff;font-size:.95rem;font-weight:600;line-height:1.35}.planning-slot__meta{font-family:var(--f-nm);color:#ffffff80;font-size:.8rem;font-weight:500;line-height:1.4}.planning-slot__places{font-family:var(--f-nm);text-transform:uppercase;letter-spacing:.04em;color:#ffffff8c;margin-top:.15rem;font-size:.75rem;font-weight:700}.planning-slot__places.is-full{color:#ff6464d9}.planning-slot__places.is-low{color:var(--l)}.planning-error{text-align:center;max-width:90rem;font-family:var(--f-nm);color:#ff7878cc;margin:1rem auto 0;font-size:.95rem}.planning-body.is-loading .planning-grid{opacity:.4;pointer-events:none}.planning-cta-bar{justify-content:center;margin-top:1.75rem;display:flex}
