.events-page .primary-nav { font-size: 13px; }
.events-page .primary-nav a[aria-current="page"] { color: var(--teal); border-bottom: 2px solid var(--teal); }
.events-page a:focus-visible { outline-color: var(--teal); }
.events-wrap { width: min(1080px, calc(100% - 48px)); margin: 0 auto; }
.events-intro { padding: clamp(40px, 6vw, 64px) 0 28px; max-width: 830px; }
.events-intro h1 { margin: 0; color: var(--navy); font: 500 clamp(36px, 5vw, 58px)/1.08 var(--serif); letter-spacing: -.04em; }
.events-intro h1 span { display: block; margin-top: 12px; color: var(--teal); font-size: .65em; letter-spacing: -.02em; }
.events-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--line); }
.event { display: flex; flex-direction: column; align-items: flex-start; padding: 34px 36px 34px 0; border-bottom: 1px solid var(--line); }
.event:nth-child(even) { padding-right: 0; padding-left: 36px; border-left: 1px solid var(--line); }
.event-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin: 0 0 20px; color: #526575; font-size: 12px; font-weight: 600; }
.event-number { margin-right: 4px; color: var(--teal); font-variant-numeric: tabular-nums; }
.event-meta > span:not(.event-number) { color: #7a878b; }
.event h2 { margin: 0 0 15px; color: var(--navy); font: 500 clamp(26px, 2.8vw, 33px)/1.16 var(--serif); letter-spacing: -.02em; }
.event h2 a { text-decoration: none; }
.event h2 a:hover { color: var(--teal); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.event > p:not(.event-meta):not(.event-date) { margin: 0 0 25px; max-width: 445px; color: #526575; font-size: 15px; line-height: 1.7; }
.event .event-date { margin: -2px 0 12px; color: var(--teal); font-size: 14px; font-weight: 700; }
.event-links { display: flex; flex-wrap: wrap; gap: 8px 24px; margin-top: auto; }
.event-links a, .events-more a { padding: 6px 0; color: var(--teal); font-size: 13px; font-weight: 700; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.event-links a:hover, .events-more a:hover { color: var(--navy); }
.event-links span, .events-more span { display: inline-block; margin-left: 4px; }
.events-more { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 24px; padding: 28px 0 48px; }
.events-more p { margin: 0; color: #526575; font-size: 14px; }
.events-page .footer nav { font-size: 12px; }
.events-page .footer span { font-size: 10px; }
@media (max-width: 920px) {
  .events-page .topbar-inner { gap: 12px; }
  .events-page .primary-nav { width: auto; }
}
@media (max-width: 650px) {
  .events-wrap { width: calc(100% - 36px); }
  .events-page .topbar { position: relative; }
  .events-page .topbar-inner, .events-page .footer-inner { width: calc(100% - 36px); }
  .events-page .brand > span:last-child { display: inline; white-space: normal; }
  .events-page .primary-nav { gap: 4px 18px; }
  .events-intro { padding: 40px 0 32px; }
  .events-grid { grid-template-columns: minmax(0, 1fr); }
  .event, .event:nth-child(even) { padding: 28px 0; border-left: 0; }
  .event-meta { margin-bottom: 16px; }
  .event h2 { font-size: 29px; }
  .desktop-break { display: none; }
  .events-more { padding: 24px 0 36px; }
}
@media print {
  .events-page { background: white; }
  .events-page .topbar { position: static; box-shadow: none; }
  .events-page .primary-nav, .skip-link { display: none; }
  .events-wrap { width: 100%; }
  .events-intro { padding: 24px 0; }
  .events-intro h1 { font-size: 40px; }
  .event { break-inside: avoid; }
  .events-page .footer { background: white; color: var(--navy); border-top: 1px solid var(--line); }
  .events-page .footer a, .events-page .footer span { color: var(--navy); }
}

.year-navigation { display: flex; flex-wrap: wrap; gap: 8px; padding: 0 0 28px; }
.year-navigation a { display: inline-flex; align-items: center; justify-content: center; min-width: 55px; min-height: 40px; padding: 6px 12px; border: 1px solid var(--line); border-radius: 3px; color: var(--teal); background: rgba(255,255,255,.45); font-size: 14px; font-weight: 650; text-decoration: none; }
.year-navigation a:hover { border-color: var(--teal); background: var(--teal-light); }
.year-navigation a[aria-current="page"] { border-color: var(--navy); background: var(--navy); color: var(--white); }
.event-role { color: var(--navy) !important; }
.event .event-subtitle { margin: -4px 0 15px !important; color: var(--navy) !important; font: 18px/1.45 var(--serif) !important; }
.event-links { padding-top: 6px; }
.event h2 + .event-links { margin-top: 22px; }
.events-grid--single { grid-template-columns: minmax(0, 1fr); }
.events-grid--single .event { padding-right: 0; }
.events-grid--single .event h2 { max-width: 760px; }
.events-grid--single .event > p:not(.event-meta) { max-width: 680px; }
@media (max-width: 650px) {
  .year-navigation { gap: 7px; padding-bottom: 24px; }
  .year-navigation a { min-width: 52px; }
}
