.event-page .event-hero,
.event-page .event-body { max-width: 880px; }
.event-hero { padding-top: clamp(1.5rem, 4vw, 3rem); padding-bottom: 2rem; }
.event-hero h1 { font-size: clamp(1.85rem, 4vw, 3.2rem); line-height: 1.15; margin-bottom: 1rem; }
.event-facts { font-weight: 600; line-height: 1.7; margin-bottom: .85rem; }
.event-outcome { font-size: 1.1rem; margin-bottom: .65rem; }
.event-audience { font-size: .95rem; margin-bottom: .8rem; }
.event-status { margin-bottom: .75rem; }
.event-host-line { color: var(--color-text-muted); font-size: .85rem; margin-top: .85rem; }
.event-body section { border-top: 1px solid var(--color-border); padding: 2rem 0; }
.event-body h2 { font-size: clamp(1.45rem, 3vw, 1.9rem); margin-bottom: 1rem; }
.event-body p { margin-bottom: .85rem; }
.event-list { list-style: disc; padding-left: 1.3rem; }
.event-list li { margin-bottom: .6rem; }
.event-roles { counter-reset: roles; list-style: none; }
.event-roles li { position: relative; padding: .85rem 0 .85rem 2.5rem; }
.event-roles li::before { counter-increment: roles; content: counter(roles, decimal-leading-zero); position: absolute; left: 0; color: var(--color-signal); font-weight: 600; }
.event-roles h3 { font-family: var(--font-sans); font-size: 1.1rem; margin-bottom: .35rem; }
.event-roles p { margin: 0; }
.event-tools { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem; }
.event-tools li { border: 1px solid var(--color-border); padding: .3rem .65rem; }
.event-final { margin-top: 2rem; margin-bottom: 2rem; }
.event-page .btn { min-height: 48px; white-space: normal; }
.event-registration-message { border-left: 3px solid var(--color-signal); padding-left: 1rem; }
.event-page .event-registration-note { color: var(--color-text-muted); font-size: .85rem; margin: .65rem 0 0; }
.event-skip { position: absolute; top: -100px; left: 1rem; z-index: 100; background: var(--color-bg); padding: .75rem; }
.event-skip:focus { top: .5rem; }
@media (max-width: 480px) {
  .event-page .event-action .btn, .event-final .btn { display: flex; width: 100%; justify-content: center; }
  .event-hero { padding-top: 1.25rem; }
}
