/* Event page layer on top of sens.css + afisha.css */

.event-page { padding-top: calc(var(--header-h) + 1.5rem); }
.event-back { margin-bottom: 1.5rem; }

.event-hero { display: grid; gap: 2rem; padding-bottom: clamp(2.5rem, 2rem + 3vw, 4.5rem); }
.event-hero__copy { display: grid; gap: 1.25rem; align-content: start; }
.event-title {
  margin: 0; font-family: var(--font-display); font-weight: 900; font-size: clamp(2.6rem, 1.8rem + 4vw, 5.5rem);
  line-height: 0.9; letter-spacing: 0.02em; text-transform: uppercase; font-kerning: none; text-wrap: balance; overflow-wrap: anywhere;
}
.event-facts { display: grid; margin: 0; border-top: 1px solid var(--line); }
.event-facts div { display: grid; grid-template-columns: 8.5rem 1fr; gap: 1rem; padding: 0.75rem 0; border-bottom: 1px solid var(--line); }
.event-facts dt { font-size: var(--t-meta); font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; color: var(--muted); padding-top: 0.2rem; }
.event-facts dd { margin: 0; font-weight: 700; }
.event-facts a { color: var(--signal); }
.event-actions { display: flex; flex-wrap: wrap; gap: 0.6rem; }

.event-gallery { position: relative; margin: 0; aspect-ratio: 4 / 5; overflow: hidden; background: var(--graphite); touch-action: pan-y; }
.event-gallery img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 0.5s ease; }
.event-gallery img.is-on { opacity: 1; }
.event-gallery__nav {
  position: absolute; inset: auto 0 0; display: flex; align-items: center; justify-content: space-between; gap: 1rem;
  padding: 2rem 0.75rem 0.75rem; background: linear-gradient(transparent, #0b0b0cd0); font-size: var(--t-meta); font-weight: 800; letter-spacing: 0.1em;
}
.event-gallery__nav button { width: 2.75rem; height: 2.75rem; border: 1px solid #ffffff66; background: #0b0b0c80; font-size: 1.1rem; cursor: pointer; }
.event-gallery__nav button:hover { border-color: var(--paper); }

@media (min-width: 60rem) {
  .event-hero { grid-template-columns: 1.1fr 0.9fr; column-gap: clamp(2rem, 4vw, 5rem); align-items: start; }
  .event-gallery { position: sticky; top: calc(var(--header-h) + 1.5rem); }
}

.event-about { padding-bottom: clamp(3rem, 2rem + 4vw, 6rem); }
.event-prose { font-size: 1.1rem; max-width: 66ch; }

.event-register { background: var(--signal); color: var(--ink); }
.event-register .meta { color: var(--signal-ink); }
.event-register__inner { display: grid; gap: 2rem; }
.event-register__card { padding: clamp(1.25rem, 1rem + 2vw, 2.5rem); background: var(--ink); color: var(--paper); }
.register-form { display: grid; gap: 1rem; }
.register-form__wide { grid-column: 1 / -1; }
.register-form .btn { justify-self: start; }
.register-form [data-slot-choice] select { width: 100%; min-height: 3.25rem; padding: 0.8rem 0.9rem; background: var(--graphite); border: 1px solid var(--line); color: var(--paper); }
.register-done { display: grid; gap: 0.75rem; }
.register-done[hidden] { display: none; }
.register-done p { margin: 0; color: var(--paper-dim); }
.register-done .title { color: var(--paper); }
@media (min-width: 40rem) { .register-form { grid-template-columns: 1fr 1fr; } }
@media (min-width: 60rem) { .event-register__inner { grid-template-columns: 0.8fr 1.2fr; align-items: start; column-gap: 4rem; } }

.event-past .wrap { display: grid; gap: 1.25rem; justify-items: start; }
.event-past .lead { color: var(--paper-dim); }

.event-missing { display: grid; gap: 1.25rem; justify-items: start; padding-block: 3rem 6rem; }
.event-missing .lead { color: var(--paper-dim); }
