.calendar-actions{display:flex;gap:22px;flex-wrap:wrap;align-items:center;margin:30px 0 38px}.calendar-toolbar{padding:26px;border:1px solid #dde3d9;background:#f7f8f4}.calendar-views{display:inline-flex;gap:4px;border:1px solid #becab5;border-radius:5px;padding:4px;background:#fff}.calendar-views button{padding:10px 20px;min-height:44px;border:0;border-radius:3px;background:transparent;font-size:16px;color:#304b3a}.calendar-views button[aria-pressed=true]{background:#244c38;color:white}.calendar-navigation{display:flex;align-items:center;gap:20px;margin:25px 0}.calendar-navigation h2{font-size:30px;margin:0;min-width:220px}.calendar-navigation button{border:1px solid #b8c5ab;background:white;width:44px;height:44px;border-radius:50%;font-size:21px;color:#214a34}.calendar-filters{display:flex;flex-wrap:wrap;gap:16px;margin:0}.calendar-filters label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:700;flex:1 1 135px}.calendar-filters select,.calendar-filters input{max-width:100%;width:100%;min-height:46px;padding:10px 12px;border:1px solid #b9c4af;border-radius:3px;background:white;font-size:16px;box-sizing:border-box}.calendar-filters .calendar-query{flex:2 1 240px}#calendar-count{font-size:15px;margin:22px 0}.calendar-month-grid{border:1px solid #dce4d4;background:#fff}.calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekday{padding:13px;text-align:center;background:#edf2e6;font-size:14px;font-weight:700}.calendar-day{min-height:130px;border-right:1px solid #e1e7da;border-top:1px solid #e1e7da;padding:9px;min-width:0}.calendar-day.outside{background:#fafbf8}.calendar-day-number{display:inline-grid;place-items:center;min-width:27px;height:27px;font-size:14px;margin-bottom:7px;font-weight:700}.calendar-day.today .calendar-day-number{border-radius:50%;background:#244c38;color:white}.calendar-day-event{display:block;background:#f0f3e9;border-left:3px solid #a4b578;padding:8px;font-size:14px;line-height:1.4;text-decoration:none;color:#263f2e;margin-bottom:7px;overflow-wrap:anywhere}.calendar-day-event.confirmed{background:#e8f0de;border-color:#6b8f17}.calendar-day-event small{display:block;font-size:14px;margin-top:5px;color:#516246}.calendar-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.calendar-mobile-agenda{display:none}.calendar-event{padding:26px;background:white;border:1px solid #dfe5d8;border-radius:4px}.calendar-event h3{font-size:24px;margin:17px 0 12px;line-height:1.3}.calendar-event h3 a{text-decoration:none}.calendar-event p{font-size:16px;line-height:1.6;margin:8px 0}.calendar-event-top{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center}.calendar-date{font-size:15px;font-weight:700;color:#3a582d}.calendar-state{font-size:14px;padding:3px 9px;background:#f1f1eb;border-radius:3px}.calendar-state.upcoming,.calendar-state.in-progress{background:#e7efda;color:#355314}.calendar-state.completed{background:#ecefed;color:#526259}.calendar-category-label{color:#53654b}.calendar-card-actions{display:flex;justify-content:space-between;gap:20px;margin-top:24px;border-top:1px solid #e0e6d9;padding-top:16px}.calendar-year-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.calendar-month-card{display:grid;gap:12px;text-align:left;padding:26px;background:#fff;border:1px solid #d4dfc9;min-height:160px;border-radius:4px;color:#25432f;cursor:pointer}.calendar-month-card:hover{background:#f0f4e8;border-color:#6b8f17}.calendar-month-card strong{font:600 25px/1.3 Manrope,Arial,sans-serif}.calendar-month-card span{font-size:17px}.calendar-month-card small{font-size:14px;color:#607251}.calendar-empty{padding:35px;background:#f4f6ef}.calendar-empty h3{font-size:27px}.calendar-empty p{font-size:17px}.programme-dates .calendar-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr))}
.eden-promotion-banner{background:#f0f4e6;border-bottom:1px solid #d8e2c8}.promotion-band-inner{display:flex;align-items:center;gap:28px;padding:24px 0}.promotion-band-inner>.eyebrow{flex:0 0 120px;margin:0;font-size:14px;line-height:1.5}.promotion-band-inner>a{font:600 17px/1.4 Manrope,Arial,sans-serif;flex:1;text-decoration:none;border-left:1px solid #c7d5b0;padding-left:25px}.promotion-band-inner>a span{display:block;font:700 14px/1.5 Arial,sans-serif;margin-top:7px;color:#506c1b}#eden-training-promotion{border:0;border-radius:9px;padding:0;width:min(990px,calc(100vw - 40px));max-width:none;max-height:92dvh;overflow:auto;background:#fff;color:#243f32;box-shadow:0 20px 90px #061a1466}#eden-training-promotion::backdrop{background:#0c211cc9;backdrop-filter:blur(4px)}.promotion-open{overflow:hidden}.promotion-close{position:absolute;right:14px;top:14px;z-index:4;width:44px;height:44px;border:1px solid #c3ceb9;background:#fff;border-radius:50%;font-size:28px;color:#264735;cursor:pointer;box-shadow:0 3px 10px #19352520}.promotion-layout{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(340px,1.1fr)}.promotion-artwork{background:#f4f4ec;display:flex;align-items:center;padding:20px}.promotion-artwork img{width:100%;height:auto;object-fit:contain;max-height:78dvh}.promotion-copy{padding:58px 38px 35px}.promotion-copy .eyebrow{font-size:14px}.promotion-copy h2{font-size:31px;line-height:1.18;margin:14px 0 20px;max-width:19ch}.promotion-copy p{font-size:16px;line-height:1.65}.promotion-copy .button{margin-top:12px}.promotion-other{margin-top:27px;border-top:1px solid #d7e0cd;padding-top:25px}.promotion-other h3{font-size:24px;margin:10px 0}.promotion-other h3 a{text-decoration:none}.promotion-other p{font-size:15px;margin:12px 0}.eden-managed-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 25px}.eden-gallery-photo{display:flex;flex-direction:column;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.eden-gallery-photo img{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;border-radius:4px}.eden-gallery-photo span{font-size:16px;line-height:1.5;margin-top:13px;color:#38523e}.eden-gallery-photo:hover img{filter:brightness(.95)}#eden-photo-dialog{padding:55px 24px 22px;border:0;border-radius:8px;max-width:calc(100vw - 30px);max-height:95dvh;background:white}#eden-photo-dialog::backdrop{background:#132a20ce}#eden-photo-dialog img{max-width:85vw;max-height:72dvh;object-fit:contain}#eden-photo-dialog>button{position:absolute;right:10px;top:8px}#eden-photo-dialog p{font-size:16px;margin:15px 0 0}
@media(max-width:1000px){.calendar-year-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.promotion-layout{grid-template-columns:.9fr 1.1fr}.promotion-copy{padding:60px 26px 28px}.promotion-copy h2{font-size:28px}.eden-managed-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.promotion-band-inner{gap:20px;flex-wrap:wrap}.promotion-band-inner>.eyebrow{flex-basis:100%}.promotion-band-inner>a:first-of-type{padding-left:0;border-left:0}}
@media(max-width:760px){.calendar-toolbar{padding:20px}.calendar-actions{align-items:flex-start;gap:15px;flex-direction:column}.calendar-navigation{gap:14px;justify-content:space-between}.calendar-navigation h2{font-size:24px;min-width:0}.calendar-month-grid{display:none}.calendar-mobile-agenda{display:grid}.calendar-list{grid-template-columns:1fr}.calendar-event{padding:22px}.calendar-event h3{font-size:23px}.calendar-event p{font-size:16px}.calendar-year-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.calendar-month-card{padding:20px;min-height:145px}.calendar-month-card strong{font-size:22px}.calendar-filters label{flex:1 1 125px}.calendar-filters .calendar-query{flex-basis:100%}.promotion-layout{display:block}.promotion-artwork{padding:22px 48px 15px}.promotion-artwork img{max-height:42dvh}.promotion-copy{padding:24px}.promotion-copy h2{font-size:28px}.promotion-other{margin-top:22px;padding-top:22px}#eden-training-promotion{width:calc(100% - 24px);max-height:94dvh}.promotion-band-inner{display:block;padding:24px 0}.promotion-band-inner>.eyebrow{display:block;margin-bottom:12px}.promotion-band-inner>a{display:block;font-size:17px;margin-top:18px;border:0;padding:0}.promotion-band-inner>a+a{border-top:1px solid #d7e1cb;padding-top:18px}.eden-managed-gallery{grid-template-columns:1fr}.eden-gallery-photo img{max-height:400px}.calendar-views{display:flex}.calendar-views button{flex:1;padding:10px 12px}.calendar-count{font-size:14px}}
