.events { background: var(--bg2); }
.ev-rail-wrap { overflow: hidden; cursor: grab; padding: 0 2rem 4rem; }
.ev-rail-wrap:active { cursor: grabbing; }
.ev-rail { display: flex; gap: 1.5rem; width: max-content; transition: transform 0.1s linear; user-select: none; }
.ev-card {
  position: relative; flex-shrink: 0; width: 280px;
  background: var(--bg3); border: 1px solid var(--border);
  padding: 2rem; display: flex; flex-direction: column; gap: 0.6rem;
  transition: border-color 0.3s, transform 0.3s var(--ease);
}
.ev-card::before {
  content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 2px;
  background: var(--accent); transform: scaleY(0); transform-origin: bottom; transition: transform 0.4s var(--ease);
}
.ev-card:hover { border-color: rgba(0,255,209,0.2); transform: translateY(-6px); }
.ev-card:hover::before { transform: scaleY(1); }
.ev-card--big { width: 380px; background: linear-gradient(135deg, rgba(0,255,209,0.04), rgba(3,3,3,0)); border-color: rgba(0,255,209,0.15); }
.ev-card--big::before { transform: scaleY(1); }
.ev-card__i { font-family: var(--f-mono); font-size: 0.6rem; letter-spacing: 0.2em; color: var(--accent); opacity: 0.6; }
.ev-card__country { font-family: var(--f-mono); font-size: 0.62rem; letter-spacing: 0.1em; color: var(--dim); }
.ev-card__venue { font-family: var(--f-cond); font-size: 1.4rem; font-weight: 700; letter-spacing: 0.03em; color: var(--white); line-height: 1.1; }
.ev-card__loc { font-family: var(--f-mono); font-size: 0.62rem; letter-spacing: 0.1em; color: var(--dimmer); text-transform: uppercase; }
.ev-card__desc { font-size: 0.82rem; color: var(--dim); line-height: 1.6; margin-top: 0.5rem; }
.ev-badge { position: absolute; top: 1.5rem; right: 1.5rem; font-family: var(--f-mono); font-size: 0.55rem; letter-spacing: 0.12em; background: var(--accent); color: #000; padding: 0.2rem 0.6rem; font-weight: 700; }
.ev-badge--ibiza { background: linear-gradient(135deg, var(--accent), #00aaff); font-size: 0.55rem; }
.ev-card--cta { width: 260px; align-items: center; justify-content: center; background: transparent; border-style: dashed; border-color: var(--border2); gap: 1.5rem; }
.ev-card--cta p { font-family: var(--f-cond); font-size: 1rem; font-weight: 600; color: var(--dim); text-align: center; line-height: 1.4; }
