/* Events listing and detail. All values come from the public event view model. */
.events-page{background:var(--color-canvas);color:var(--color-primary-text)}
.events-page .ev-hero{background:var(--color-inverse-surface);color:var(--color-text-inverse)}
.events-page .ev-hero-inner{padding-top:18px;padding-bottom:30px}
.events-page .ev-crumb{display:flex;align-items:center;gap:10px;min-height:44px;margin-bottom:18px;font-size:14px}
.events-page .ev-crumb a{display:inline-flex;align-items:center;min-height:44px;color:var(--color-text-inverse);text-underline-offset:4px}
.events-page .ev-crumb span{color:var(--color-inverse-text-soft)}
.events-page .ev-eyebrow{color:var(--color-action-gold);font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.events-page .ev-hero h1{max-width:26ch;margin-top:10px;color:var(--color-text-inverse);font:600 clamp(34px,4vw,52px)/1.12 var(--display);overflow-wrap:anywhere}
.events-page .ev-lede{max-width:60ch;margin-top:18px;color:var(--color-inverse-text-soft);font-size:19px;line-height:1.55}
.events-page .ev-index{padding-top:34px;padding-bottom:64px}
.events-page .ev-section-head{margin-bottom:25px}
.events-page .ev-section-head .ev-eyebrow{color:var(--color-accent-teal)}
.events-page .ev-section-head h2{margin-top:6px;color:var(--color-inverse-surface);font:600 clamp(32px,3.5vw,46px)/1.16 var(--display)}
.events-page .ev-section-head>p:last-child:not(.ev-eyebrow){margin-top:7px;color:var(--color-secondary-text);font-size:15px}
.events-page .ev-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.events-page .ev-entry{display:flex;flex-direction:column;min-width:0}
.events-page .ev-card{display:flex;flex:1;border:1px solid var(--color-border-subtle);background:var(--color-white-surface)}
.events-page .ev-card-link{display:flex;flex:1;align-items:flex-start;gap:20px;min-width:0;min-height:142px;padding:23px;color:var(--color-primary-text);text-decoration:none}
.events-page .ev-card-link:hover,.events-page .ev-card-link:focus-visible{background:var(--color-section-soft);text-decoration:none}
.events-page .ev-card-link:focus-visible{outline:3px solid var(--color-accent-teal);outline-offset:3px}
.events-page .date-badge{display:flex;flex:0 0 82px;min-height:91px;flex-direction:column;align-items:center;justify-content:center;padding:7px;background:var(--color-section-soft);color:var(--color-inverse-surface);text-align:center}
.events-page .ev-date-day{font:600 31px/1 var(--display)}
.events-page .ev-date-month{margin-top:4px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.events-page .ev-date-year{font-size:12px;font-weight:700}
.events-page .ev-card-copy{display:grid;align-content:start;gap:5px;min-width:0}
.events-page .ev-card-title{color:var(--color-inverse-surface);font:600 24px/1.25 var(--display);overflow-wrap:anywhere}
.events-page .ev-card-link:hover .ev-card-title,.events-page .ev-card-link:focus-visible .ev-card-title{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.events-page .ev-card-date,.events-page .ev-card-venue{color:var(--color-secondary-text);font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.events-page .ev-upcoming{padding-bottom:28px}
.events-page .ev-past{padding-top:28px;border-top:1px solid var(--color-border-subtle)}
.events-page .ev-empty{max-width:760px;padding:26px 30px;border-left:4px solid var(--color-action-gold);background:var(--color-section-soft)}
.events-page .ev-empty-title{color:var(--color-inverse-surface);font:600 24px/1.28 var(--display)}
.events-page .ev-empty p+p{margin-top:8px;color:var(--color-secondary-text)}
.events-page .ev-empty-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:17px}
.events-page .ev-empty-actions a{display:inline-flex;align-items:center;min-height:44px;padding:9px 16px;border:1px solid var(--color-action);color:var(--color-action);font-weight:700;text-underline-offset:3px}
.events-page .ev-empty-actions a:first-child{background:var(--color-action);color:var(--color-text-inverse)}
.events-page .ev-past .pagination{margin-top:32px}
.events-page .pagination-list{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none}
.events-page .pagination-link{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 13px;border:1px solid var(--color-border-subtle);color:var(--color-action);font-weight:700;text-decoration:none}
.events-page a.pagination-link:hover,.events-page a.pagination-link:focus-visible{border-color:var(--color-action);text-decoration:underline}
.events-page .pagination-link.is-current{border-color:var(--color-inverse-surface);background:var(--color-inverse-surface);color:var(--color-text-inverse)}
.events-page .pagination-link.is-disabled{color:var(--color-secondary-text)}
.events-page .event-detail{padding-top:56px;padding-bottom:88px}
.events-page .event-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:45px;border:1px solid var(--color-border-subtle);border-top:4px solid var(--color-action-gold);background:var(--color-section-soft)}
.events-page .event-facts>div{min-width:0;padding:23px 25px}
.events-page .event-facts>div+div{border-left:1px solid var(--color-border-subtle)}
.events-page .event-facts dt{margin-bottom:7px;color:var(--color-accent-teal);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.events-page .event-facts dd{color:var(--color-primary-text);font-size:16px;font-weight:600;overflow-wrap:anywhere}
.events-page .event-facts dd span,.events-page .event-facts dd a{display:flex;align-items:center;min-height:44px;color:var(--color-secondary-text);font-size:14px;font-weight:500;overflow-wrap:anywhere}
.events-page .event-facts dd a{color:var(--color-action);text-underline-offset:4px}
.events-page .event-detail-body{max-width:var(--measure);color:var(--color-primary-text);font-size:17px;line-height:1.78;overflow-wrap:anywhere}
.events-page .event-detail-body>*+*{margin-top:1.15em}
.events-page .event-detail-body :is(h2,h3){margin-top:1.5em;color:var(--color-inverse-surface);line-height:1.25}
.events-page .event-detail-body h2{font-size:clamp(28px,3vw,36px)}
.events-page .event-detail-body h3{font-size:clamp(22px,2vw,27px)}
.events-page .event-detail-body :is(ul,ol){padding-left:1.5em}
.events-page .event-detail-body a{display:inline-flex;align-items:center;min-height:44px;color:var(--color-action);text-underline-offset:4px;overflow-wrap:anywhere}
.events-page .event-detail-body img{max-width:100%;height:auto}
.events-page .event-detail-body .editorial-figure{max-width:100%;margin:24px 0}
.events-page .event-detail-body .editorial-figure figcaption{margin-top:7px;color:var(--color-secondary-text);font-size:14px}
.events-page .event-detail-body .editorial-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.events-page .event-detail-body .editorial-gallery .editorial-figure{min-width:0;margin:0}
.events-page .event-detail-body .embedded-document-link{padding:8px 12px;border:1px solid var(--color-border-subtle);background:var(--color-section-soft);font-weight:700}
.events-page .event-detail-body iframe{width:100%;max-width:100%;border:0}
@media (max-width:760px){
  .events-page .ev-grid{grid-template-columns:1fr}
  .events-page .event-facts{grid-template-columns:1fr}
  .events-page .event-facts>div+div{border-top:1px solid var(--color-border-subtle);border-left:0}
  .events-page .event-detail-body .editorial-gallery{grid-template-columns:1fr}
}
@media (max-width:520px){
  .events-page .ev-hero-inner{padding-bottom:28px}
  .events-page .ev-crumb{margin-bottom:16px}
  .events-page .ev-index{padding-top:28px;padding-bottom:58px}
  .events-page .ev-card-link{gap:15px;min-height:116px;padding:17px}
  .events-page .date-badge{flex-basis:68px;min-height:80px}
  .events-page .ev-date-day{font-size:26px}
  .events-page .ev-card-title{font-size:21px}
  .events-page .ev-empty{padding:21px}
  .events-page .event-detail{padding-top:40px;padding-bottom:62px}
}
