.events-page{padding-top:40px}
.events-page__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);flex-wrap:wrap}
.events-page__head h1{font-size:1.4rem;margin:0}
.events-page__results{margin:var(--space-8) 0 0;font-size:15px;font-weight:700}

.events-search{position:relative;width:min(100%,560px)}
.events-search input{width:100%;padding:14px 56px 14px 22px;border:1px solid var(--line);border-radius:var(--radius-pill);font-family:inherit;font-size:15px;background:var(--surface)}
.events-search input::placeholder{color:var(--muted-500)}
.events-search input:focus{outline:none;border-color:var(--brand-600)}
.events-search button{position:absolute;top:50%;right:8px;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:0;border-radius:var(--radius-pill);background:none;color:var(--muted-500);cursor:pointer}
.events-search button:hover{color:var(--brand-600)}

.events-section{margin-top:var(--space-8)}
.events-section__title{margin:0 0 var(--space-4);font-size:1rem;font-weight:700}

.events-hero{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:#111;aspect-ratio:4/1}
.events-hero__slide{position:absolute;inset:0;display:block;color:#fff;text-decoration:none;opacity:0;visibility:hidden;transition:opacity .6s ease}
.events-hero__slide.is-active{opacity:1;visibility:visible}
.events-hero__bg{position:absolute;inset:-24px;width:calc(100% + 48px);height:calc(100% + 48px);object-fit:cover;filter:blur(28px) brightness(.6)}
.events-hero__poster{position:relative;display:block;width:100%;height:100%;object-fit:contain;padding-block:34px}
.events-hero__info{position:absolute;left:24px;bottom:20px;display:flex;flex-direction:column;gap:2px;text-shadow:0 1px 12px rgba(0,0,0,.6)}
.events-hero__title{font-size:1.25rem;font-weight:800}
.events-hero__sub{font-size:.8rem;color:rgba(255,255,255,.85)}
.events-hero__nav{position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;border-radius:var(--radius-pill);background:rgba(0,0,0,.32);color:#fff;cursor:pointer}
.events-hero__nav:hover{background:rgba(0,0,0,.55)}
.events-hero__nav--prev{left:12px}
.events-hero__nav--next{right:12px}
.events-hero__dots{position:absolute;right:20px;bottom:20px;display:flex;align-items:center;gap:6px}
.events-hero__dot{width:8px;height:8px;padding:0;border:0;border-radius:var(--radius-pill);background:rgba(255,255,255,.5);cursor:pointer}
.events-hero__dot[aria-current="true"]{width:28px;background:#fff}

.events-hero__tickets,.events-hero__likes{position:absolute;top:16px;display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px;border-radius:var(--radius-pill);background:rgba(0,0,0,.6);color:#fff;font-size:12px;font-weight:700}
.events-hero__tickets{left:20px}
.events-hero__likes{right:20px}
.events-rail{overflow:hidden;padding:6px 0}
.events-rail__track{display:flex;width:max-content;animation:events-rail-marquee 50s linear infinite}
.events-rail__group{display:flex;gap:22px;padding-right:22px}
.events-rail .rail-card{width:208px;flex:none}
.events-rail:hover .events-rail__track,.events-rail:focus-within .events-rail__track{animation-play-state:paused}
@keyframes events-rail-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.rail-card{position:relative}
.rail-card__link{display:block;color:inherit;text-decoration:none}
.rail-card__media{aspect-ratio:2/3;border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-soft)}
.rail-card__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.rail-card__link:hover .rail-card__media img{transform:scale(1.04)}
.rail-card__body{padding:12px 2px 0}
.rail-card__title{margin:0;font-size:14px;font-weight:700;line-height:1.25}
.rail-card__meta{margin:4px 0 0;font-size:12px;color:var(--muted-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rail-card__price{margin:6px 0 0;font-size:13px;font-weight:700}
.rail-card__like{position:absolute;top:10px;right:10px;z-index:1;display:inline-flex;align-items:center;gap:5px;min-width:32px;height:32px;padding:0 8px;border:0;border-radius:var(--radius-pill);background:rgba(255,255,255,.92);color:var(--ink-900);font-family:inherit;font-size:12px;font-weight:700;cursor:pointer}
.rail-card__like:hover{background:#fff}
.rail-card__like[aria-pressed="true"]{color:var(--brand-600)}
.rail-card__like[aria-pressed="true"] svg path{fill:currentColor}

.events-cols{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:var(--space-8);align-items:start}

.week-list{list-style:none;margin:0;padding:0 0 0 22px;position:relative}
.week-list::before{content:"";position:absolute;left:5px;top:10px;bottom:10px;width:2px;background:var(--line)}
.week-day{position:relative}
.week-day+.week-day{margin-top:var(--space-6)}
.week-day__head{position:relative;display:flex;align-items:center;gap:8px;margin:0 0 10px}
.week-day__head::before{content:"";position:absolute;left:-22px;top:50%;transform:translateY(-50%);width:12px;height:12px;border-radius:var(--radius-pill);background:var(--brand-600);border:3px solid var(--bg)}
.week-day__today{padding:3px 10px;border-radius:var(--radius-pill);background:var(--brand-600);color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.02em}
.week-day__label{padding:3px 12px;border-radius:var(--radius-pill);background:var(--bg-soft);font-size:12px;font-weight:700}
.week-day__rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.week-row__link{display:flex;align-items:center;gap:14px;padding:10px 14px;border-radius:var(--radius-md);background:var(--bg-soft);color:inherit;text-decoration:none;transition:background .2s ease}
.week-row__link:hover{background:var(--trust-bg)}
.week-row__thumb{flex:none;width:56px;height:56px;border-radius:var(--radius-sm);object-fit:cover;background:var(--surface)}
.week-row__body{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.week-row__title{font-size:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.week-row__venue{font-size:12px;color:var(--muted-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.week-row__foot{display:flex;align-items:center;gap:14px;margin-top:4px;font-size:12px;font-weight:700}
.week-row__offers{display:inline-flex;align-items:center;gap:5px;color:var(--muted-500)}
.week-row__price{color:var(--brand-600)}
.week-row__chevron{flex:none;color:var(--muted-500)}

.price-list{display:flex;flex-direction:column;gap:12px}
.price-card__link{display:flex;align-items:center;gap:16px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);color:inherit;text-decoration:none;transition:border-color .2s ease,box-shadow .2s ease}
.price-card__link:hover{border-color:var(--brand-600);box-shadow:var(--shadow-card)}
.price-card__thumb{flex:none;width:120px;height:120px;border-radius:var(--radius-md);object-fit:cover;background:var(--bg-soft)}
.price-card__body{flex:1;min-width:0}
.price-card__title{margin:0;font-size:1.05rem;font-weight:800;line-height:1.2}
.price-card__venue{margin:4px 0 0;font-size:12px;color:var(--muted-500)}
.price-card__date{margin:10px 0 0;font-size:13px;font-weight:700}
.price-card__sector{margin:2px 0 0;font-size:12px;color:var(--muted-500)}
.price-card__prices{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}
.price-card__qty{display:inline-flex;align-items:center;gap:4px;margin:0 0 6px;font-size:12px;font-weight:700;color:var(--muted-500)}
.price-card__off{margin:0;padding:3px 10px;border-radius:var(--radius-pill);background:var(--success-bg);color:var(--success);font-size:12px;font-weight:800}
.price-card__list{margin:6px 0 0;font-size:13px;color:var(--muted-500)}
.price-card__now{margin:0;font-size:1.25rem;font-weight:800;color:var(--brand-600)}

@media(max-width:900px){
  .events-cols{grid-template-columns:minmax(0,1fr)}
  .events-hero{aspect-ratio:3/1}
  .events-search{width:100%}
}
@media(max-width:640px){
  .events-page{padding-top:24px}
  .events-hero{aspect-ratio:1/1}
  .events-hero__poster{padding-block:20px}
  .events-hero__nav{width:34px;height:34px}
  .events-rail__group{gap:16px;padding-right:16px}
  .events-rail .rail-card{width:160px}
  .week-row__link{gap:12px;padding:10px 12px}
  .week-row__thumb{width:48px;height:48px}
  .price-card__link{gap:12px;padding:12px}
  .price-card__thumb{width:84px;height:84px}
  .price-card__title{font-size:.95rem}
  .price-card__now{font-size:1.05rem}
}
@media(prefers-reduced-motion:reduce){
  .events-hero__slide{transition:none}
  .events-rail{overflow-x:auto}
  .events-rail__track{animation:none}
  .events-rail__group[aria-hidden="true"]{display:none}
}
