/* October 2026 programme additions only. Source theme and dividers stay intact. */
.season-agenda, .season-summary {
  font-family: Rajdhani, Arial, sans-serif;
  color: #3e3e3e;
  font-size: 20px;
  line-height: 1.5;
}
.season-inner { width: calc(100% - 48px); max-width: 1100px; margin: 0 auto; }
.season-intro { display: flex; align-items: baseline; justify-content: space-between; gap: 24px; padding-top: 32px; padding-bottom: 24px; }
.season-agenda { background: #f0f3bd; }
.season-agenda h2, .season-summary h2 { font: 400 clamp(27px, 3vw, 36px)/1.2 'Hammersmith One', Arial, sans-serif; margin: 0 0 16px; }
.season-agenda a, .season-summary a { color: #b8312f; text-decoration: underline; }
.season-agenda a:hover, .season-summary a:hover { color: #2969b0; }
.season-event { float: none; padding: 28px 0 56px; scroll-margin-top: 32px; }
.season-event + .season-event { background: #fff; padding-top: 56px; }
.season-event > .season-inner { display: grid; grid-template-columns: 36% 1fr; gap: 40px; align-items: center; }
.season-poster { display: block; text-align: center; font-size: 17px; }
.season-poster img { display: block; width: 100%; height: auto; }
.season-poster span { display: inline-block; margin-top: 10px; }
.season-event h3 { font: 400 clamp(32px, 4vw, 42px)/1.15 'Hammersmith One', Arial, sans-serif; color: #2a7bc3; margin: 6px 0 22px; }
.season-event h4 { font: 700 clamp(23px, 2.5vw, 28px)/1.25 Rajdhani, Arial, sans-serif; margin: 4px 0 20px; }
.season-event p { margin: 0 0 14px; }
.season-event .season-cycle { color: #0b662d; font-size: 20px; font-weight: 700; }
.season-event .season-date { font-size: 23px; font-weight: 700; margin-bottom: 4px; }
.season-event .season-admission { color: #0b662d; font-weight: 700; margin-top: 24px; margin-bottom: 0; }
.season-event .season-note { font-size: 18px; }
.season-agenda a.season-button { display: inline-block; margin-top: 10px; padding: 18px 28px; border: 0; border-radius: 0; background: #b8312f; color: #fff; font: 400 17px/1.4 'Hammersmith One', Arial, sans-serif; text-decoration: none; }
.season-history { background: #1c1c1c; color: #eeeeee; padding: 48px 0 60px; scroll-margin-top: 24px; }
.season-history h2 { color: #f0f3bd; }
.season-agenda + .site-footer .divider-box-top svg path { fill: #1c1c1c; }
.season-summary + .site-footer .divider-box-top svg path { fill: #1c1c1c; }
.season-history-list { list-style: none; margin: 26px 0 0; padding: 0; }
.season-history-list li { display: grid; grid-template-columns: 230px 1fr; gap: 32px; padding: 24px 0; border-bottom: 1px solid #484848; }
.season-history-list time { font-weight: 700; }
.season-history-list h3 { font: 400 26px/1.2 'Hammersmith One', Arial, sans-serif; margin: 0 0 8px; }
.season-history-list h3 a { color: #f0f3bd; text-decoration: none; }
.season-history-list h3 a:hover { color: #ffffff; text-decoration: underline; }
.season-history-list p { margin: 0; }
.season-summary { padding: 48px 0; background: #1c1c1c; color: #eeeeee; }
.season-summary h2 { color: #f0f3bd; }
.season-summary a { color: #f0f3bd; }
.season-summary a:hover { color: #ffffff; }
.season-summary ul { list-style: none; padding: 0; margin: 24px 0; display: flex; flex-wrap: wrap; gap: 24px 56px; }
.season-summary li { flex: 1 1 300px; }
.season-summary p { margin: 12px 0; }
.season-home-dates { margin-top: 18px !important; }
#container-widget-1768568587566:has(.season-home-dates) > .grid-content { padding-bottom: 28px; }
.season-agenda a:focus-visible, .season-summary a:focus-visible { outline: 3px solid #0b662d; outline-offset: 5px; }
@media (max-width: 768px) {
  .season-inner { width: calc(100% - 40px); }
  .season-intro { flex-direction: column; gap: 0; }
  .season-event > .season-inner { grid-template-columns: 1fr; gap: 28px; }
  .season-poster { width: 100%; max-width: 396px; margin: 0 auto; }
  .season-event-copy { max-width: 580px; margin: 0 auto; width: 100%; }
  .season-history-list li { grid-template-columns: 1fr; gap: 10px; }
  .season-event, .season-event + .season-event { padding-top: 24px; padding-bottom: 40px; }
  .season-agenda a.season-button { max-width: 100%; box-sizing: border-box; text-align: center; }
}
@media (prefers-reduced-motion: reduce) {
  .season-button, .season-button::before { transition: none !important; }
}
