.event-page {overflow-wrap:anywhere}
.event-page .shell {padding-top:2rem;padding-bottom:3rem}
.event-page h1 {font-size:clamp(2.2rem,5.2vw,4.8rem);line-height:1.07;max-width:24ch}
.event-page h2 {font-size:1.65rem;line-height:1.2}
.event-page h3 {font-size:1.12rem;line-height:1.3}
.event-page p,.event-page li,.event-page dd {line-height:1.7}
.event-page .event-lead {font-size:1.24rem;max-width:70ch;line-height:1.7}
.event-detail {max-width:1100px}
.event-detail>section {padding-block:1.7rem;border-bottom:1px solid currentColor}
.event-detail section>p {max-width:80ch}
.event-page a {text-underline-offset:.2em}
.event-page :focus-visible {outline:3px solid currentColor;outline-offset:5px}
.event-page figure {margin:0}
.event-page img {display:block;max-width:100%;height:auto}
.event-page figcaption {font-size:.92rem;line-height:1.6;margin-block:.75rem}
.event-jump {display:flex;flex-wrap:wrap;gap:.7rem 1.5rem;padding-block:1.5rem}
.event-facts {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1.2rem 2rem}
.event-facts>div {border-top:1px solid currentColor;padding-top:.8rem;min-width:0}
.event-facts dt {font-size:.9rem;font-weight:700}
.event-facts dd {margin:.4rem 0 0}
.event-gallery,.event-context-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:2rem;margin-block:1.8rem}
.event-gallery img {max-height:620px;object-fit:contain;object-position:left top}
.event-sketch {max-width:660px;margin-block:2rem!important}
.event-sketch>a {display:block;margin-bottom:.5rem}
.event-note {border-left:3px solid currentColor;padding:.2rem 1rem;margin-block:1.5rem}
.event-source {margin-block:1rem;padding:1rem 0;border-top:1px solid currentColor}
.event-source summary {font-weight:700;cursor:pointer;line-height:1.5}
.event-source .source-content {padding:1rem 0;max-width:100%;overflow-wrap:anywhere}
.event-source iframe,.event-source object,.event-source embed {max-width:100%}
.event-source img {height:auto!important;max-width:100%!important}
.event-verbatim {white-space:pre-line;border-left:3px solid currentColor;padding-left:1rem;margin-inline:0}
.event-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:3rem 2rem;margin-top:2rem;align-items:start}
.event-card {border-top:1px solid currentColor;padding-top:1.2rem;min-width:0}
.event-card>a {display:block;color:inherit;text-decoration:none}
.event-card>a:hover h2 {text-decoration:underline}
.event-card img {height:220px;width:100%;object-fit:contain;object-position:left top;margin-bottom:1rem}
.event-image-label {display:block;font-size:.85rem;line-height:1.5}
.event-filters {display:flex;flex-wrap:wrap;align-items:end;gap:1rem;margin-block:2rem;border-block:1px solid currentColor;padding-block:1.5rem}
.event-filters label {display:flex;flex-direction:column;gap:.5rem;flex:1 1 14rem}
.event-filters input,.event-filters select,.event-filters button {font:inherit;color:inherit;background:transparent;border:1px solid currentColor;border-radius:0;padding:.7rem;min-width:0;max-width:100%}
.event-filters button {cursor:pointer;min-height:44px}
.event-filters p {flex-basis:100%;margin:0}
.event-page [hidden] {display:none!important}
.event-table-scroll {overflow-x:auto}
.event-page table {border-collapse:collapse;width:100%;text-align:left;font-size:.95rem}
.event-page th,.event-page td {border-bottom:1px solid currentColor;padding:.7rem;vertical-align:top}
.event-page caption {text-align:left;font-weight:700;margin-bottom:1rem}
@media(max-width:600px){.event-page .shell{padding-top:1rem}.event-page h1{font-size:2.3rem}.event-gallery,.event-context-grid,.event-grid{grid-template-columns:1fr}.event-card img{height:auto;max-height:380px}}
@media print{.event-filters{display:none}.event-grid,.event-context-grid{display:block}.event-card{break-inside:avoid}.event-detail details>div{display:block}}
