.events-app{--bg:var(--app-bg);--text:var(--app-text);--muted:var(--app-muted);--cyan:var(--app-accent)}
.events-app .events-hero{margin:100px 24px 24px;border-radius:28px;overflow:hidden;min-height:620px;color:#fff}
.events-app .hero-title{font-size:clamp(48px,7vw,90px);font-weight:600;letter-spacing:-.04em;text-transform:none}
.events-app .hero-desc{font-size:17px;line-height:1.65;max-width:680px}
.events-app :is(.btn-primary,.btn-secondary,.event-link,.hero-rail){border-radius:14px}
.events-app .events-section{background:var(--app-bg);color:var(--app-text);padding:60px 5vw}
.events-app .section-title{font-weight:600;letter-spacing:-.04em;font-size:clamp(32px,4vw,52px)}
.events-app .timeline-event{border:1px solid var(--app-line);border-radius:22px;background:var(--app-surface);padding:24px;margin-top:18px;color:var(--app-text)}
.events-app :is(.event-date span,.event-category,.event-location,.event-description,.section-copy){color:var(--app-muted)}
.events-app .event-info h3{font-weight:600;font-size:28px;letter-spacing:-.025em}
.events-app .event-date strong{color:var(--app-accent)}
@media(max-width:600px){.events-app .events-hero{margin:84px 14px 14px}.events-app .hero-content{padding:28px}.events-app .events-section{padding:40px 20px}.events-app .timeline-event{padding:20px}}

.events-app .month-empty{color:var(--app-muted)}.events-app .month-row,.events-app .timeline{border-color:var(--app-line)}

.events-app .event-artwork{display:block;width:100%;max-width:480px;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:16px;margin-bottom:22px;background:#081b23}
