
      /* Additional states only. Original typography, fonts and assets are unchanged. */
body:not([data-event-status="active"]) .event-cta--active,
body[data-event-status="active"] .event-cta--inactive {
  display: none !important;
}

.button--news .button__label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  max-width: 100%;
}
.button--news .button__label > span { min-width: 0; }
.button__news-icon { width: 18px; height: 18px; fill: currentColor; flex-shrink: 0; }
.event-card__follow-copy { margin-top: 16px; color: var(--muted); font-size: .875rem; line-height: 1.55; }
.detail-follow-note { flex-basis: 100%; order: -1; color: var(--muted); font-size: .875rem; line-height: 1.55; }
.season-news { display: flex; flex-wrap: wrap; gap: 4px 8px; margin: -18px 0 28px; font-size: .875rem; color: var(--muted); line-height: 1.6; }
.season-news a { display: inline-flex; align-items: center; gap: 6px; color: #087c53; font-weight: 750; border-bottom: 1px solid #087c5359; }
.season-news a:hover { color: var(--ink); border-color: currentColor; }
.event-status {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  line-height: 1.35;
}
.event-status:before {
  content: "";
  width: 6px;
  height: 6px;
  flex-shrink: 0;
  border-radius: 50%;
  background: #8c9a92;
}
.event-status--open:before { background: var(--accent); }
.archive-label.event-status--open { border-color: #73eab378; color: var(--accent-light); }
.event-card__status.event-status {
  padding: 6px 9px;
  border: 1px solid #dce4df;
  border-radius: 3px;
  background: #f2f5f3;
  color: #5b6b61;
}
.event-card__status.event-status--open {
  color: #087c53;
  border-color: #a7ddc3;
  background: #eaf8f0;
}
.event-card__top { flex-wrap: wrap; }
.event-card__bottom { flex-wrap: wrap; }
.event-card__actions { display: flex; flex-wrap: wrap; gap: 10px; }

/* A season with no published events is visible, but not interactive. */
.season-tabs .season-tab .season-tab__availability {
  width: fit-content;
  max-width: 100%;
  padding: 3px 6px;
  border: 1px dashed color-mix(in srgb, var(--season-tone) 45%, transparent);
  border-radius: 2px;
  color: var(--season-tone);
  font-size: .625rem;
  font-weight: 750;
  line-height: 1.35;
  letter-spacing: .01em;
}
.season-tabs .season-tab[aria-selected="true"] .season-tab__availability {
  color: var(--season-active);
  border-color: color-mix(in srgb, var(--season-active) 45%, transparent);
  border-style: solid;
  background: #ffffff08;
}
.season-tabs .season-tab.is-unavailable {
  cursor: not-allowed;
  background: linear-gradient(130deg, color-mix(in srgb, var(--season-tint) 55%, #f4f6f4), #f9faf9 85%);
  border-style: dashed;
  border-color: color-mix(in srgb, var(--season-tone) 28%, #cfd8d1);
  color: #65736b;
  filter: saturate(.55);
  opacity: 1;
}
.season-tabs .season-tab.is-unavailable:hover {
  background: linear-gradient(130deg, color-mix(in srgb, var(--season-tint) 55%, #f4f6f4), #f9faf9 85%);
  border-color: color-mix(in srgb, var(--season-tone) 28%, #cfd8d1);
  transform: none;
  box-shadow: none;
}
.season-tabs .season-tab.is-unavailable:before {
  content: "";
  position: absolute;
  top: 10px;
  right: 10px;
  width: 16px;
  height: 16px;
  border: 1px solid var(--season-tone);
  border-radius: 50%;
  background: linear-gradient(135deg, transparent 43%, var(--season-tone) 45% 55%, transparent 57%);
  opacity: .45;
}
.season-tabs .season-tab.is-unavailable .season-tab__index { display: none; }
.season-tabs .season-tab.is-unavailable .season-tab__icon { opacity: .64; }
.season-tabs .season-tab.is-unavailable .season-tab__period { color: #7a867f; }

@media (max-width: 700px) {
  .event-card__actions { width: 100%; }
  .event-card__actions .button { width: 100%; }
  .header__registration.button--news {
    width: 140px;
    min-height: 46px;
    padding: 9px 32px 9px 11px;
    font-size: .75rem;
    line-height: 1.15;
  }
  .header__registration.button--news .button__label { gap: 6px; }
  .header__registration.button--news .button__news-icon { width: 15px; height: 15px; }
  .season-news { margin-top: -12px; }
  .season-tabs .season-tab {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 6px 10px;
    padding: 20px 13px 16px;
    min-height: 128px;
  }
  .season-tabs .season-tab .season-tab__copy { display: contents; }
  .season-tabs .season-tab .season-tab__icon { grid-row: 1; grid-column: 1; width: 34px; height: 34px; }
  .season-tabs .season-tab .season-tab__name { grid-row: 1; grid-column: 2; }
  .season-tabs .season-tab .season-tab__period {
    grid-row: 2;
    grid-column: 1 / -1;
    max-width: none;
  }
  .season-tabs .season-tab .season-tab__availability {
    grid-row: 3;
    grid-column: 1 / -1;
    font-size: .625rem;
  }
}
@media (max-width: 380px) {
  .header__registration.button--news {
    width: 124px;
    padding: 9px 29px 9px 9px;
    font-size: .6875rem;
  }
  .season-tabs .season-tab { padding-inline: 10px; gap: 5px 7px; }
}

    