.events-section{margin:32px 0;padding:26px;border:2px solid #8e7652;background:#eee7d4;color:#302419;box-shadow:4px 4px #211d17}.events-section h2,.events-section h3,.events-section p{color:#302419}.events-section .eyebrow{color:#783900}.events-section a{color:#844000;text-decoration:underline;text-underline-offset:3px}.events-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:20px 0}.event-card{padding:22px;background:#faf4e6;border:1px solid #ad9978;min-width:0;overflow-wrap:anywhere;display:flex;flex-direction:column}.event-card h3{font-size:28px;line-height:1.15}.event-card .event-date{font-weight:700;border-bottom:3px solid #ff9933;padding-bottom:12px}.event-official{margin-top:auto;min-height:44px;display:flex;align-items:center;font-weight:bold}.event-card .small-note{font-size:13px}.events-empty{padding:12px}.events-section [hidden]{display:none!important}.ride-event{border-left:4px solid #ff9933;padding:12px 16px;margin:16px 0;background:#eee7d4}.ride-event strong{font:700 23px/1.2 "Barlow Condensed",Arial,sans-serif}.ride-event p{margin:10px 0}.event-card a:focus-visible,.events-section a:focus-visible{outline:3px solid #844000;outline-offset:4px}@media(max-width:1000px){.events-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.events-section{padding:18px}.events-grid{grid-template-columns:minmax(0,1fr)}.event-card{padding:18px}.events-section .section-heading{display:block}.events-section .section-heading>a{display:inline-block;padding:10px 0}}

.events-page .page-intro{background:#ff9933;color:#211d17;border:2px solid #211d17;box-shadow:4px 4px #100f0b;padding:30px;margin:28px 0}.events-page .page-intro h1,.events-page .page-intro p{color:#211d17}.events-page .page-intro .eyebrow{color:#533111}@media(max-width:650px){.events-page .page-intro{padding:22px}}

.events-filters{display:grid;grid-template-columns:1fr 1fr auto;gap:16px;align-items:end;margin:20px 0}.events-filters label{display:grid;gap:8px;font-weight:bold}.events-filters select{font:16px Arial,sans-serif;min-height:46px;background:#fffdf5;color:#302419;border:1px solid #9d8b6c;padding:10px;width:100%;box-sizing:border-box}.events-filters button{min-height:46px}.events-count{font-weight:bold;border-bottom:1px solid #ad9978;padding-bottom:12px}.events-section .event-card[hidden]{display:none!important}.events-section .button.secondary{color:#302419}.events-section h2{margin-top:0}@media(max-width:650px){.events-filters{grid-template-columns:1fr;gap:14px}.events-filters button{justify-self:start}.events-page .page-intro{padding:20px}.events-page .page-intro h1{font-size:44px}.events-section .event-official{padding:8px 0}}

.event-visual{margin:0 0 18px;min-width:0}.event-visual img{display:block;width:100%;height:auto;aspect-ratio:40/21;object-fit:cover;border:1px solid #9d8b6c;background:#e9dfc6;box-sizing:border-box}.event-visual figcaption{font:12px/1.5 Arial,sans-serif;color:#594b37;margin-top:8px}.event-visual figcaption a{color:#783900}.event-visual figcaption a:focus-visible{outline:2px solid #783900;outline-offset:2px}@media(max-width:650px){.event-visual{margin-bottom:14px}.event-visual img{max-height:220px}.event-visual figcaption{font-size:12px}}

@media(min-width:651px){.event-visual figcaption{min-height:36px}}

/* Short artwork strips keep home and park event summaries compact. */
.event-image-link{display:block}
.events-section a.event-title-link{color:inherit;text-decoration:none}
.events-section a.event-title-link:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.event-image-link:hover img{outline:2px solid #844000;outline-offset:2px}
.event-card-compact{padding:16px}
.event-card-compact p{margin:8px 0}
.event-card-compact h3{font-size:25px;margin:4px 0 8px}
.event-card-compact .event-visual{margin-bottom:12px}
.event-card-compact .event-visual img{height:104px;aspect-ratio:auto;object-fit:cover;object-position:center 55%}
.event-card-compact .event-visual figcaption{font-size:12px;line-height:1.4;min-height:0;margin-top:6px}
.detail-section.events-section .events-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:650px){.event-card-compact .event-visual img{height:100px}.detail-section.events-section .events-grid{grid-template-columns:minmax(0,1fr)}}
