.events{
  position:relative;max-width:1180px;margin:0 auto;
  padding:clamp(7rem,15vh,11rem) clamp(1.4rem,5vw,4rem) clamp(4rem,10vh,7rem);
  padding-left:clamp(2.5rem,7vw,4.5rem);
}
.events__head{max-width:820px;margin-bottom:clamp(2.5rem,7vh,4rem)}
.events__eyebrow{margin-bottom:1.5rem}
.events__title{
  font-size:clamp(2.2rem,6.2vw,4.8rem);
  font-weight:700;line-height:1;letter-spacing:-.01em;
  text-transform:uppercase;color:#fff;margin-bottom:1.35rem;
  text-shadow:
    0 0 2px #fff, 0 0 10px rgba(255,255,255,.85),
    0 0 26px var(--neon), 0 0 60px rgba(255,43,214,.55);
}
.events__title em{
  font-style:normal;font-weight:300;color:#eaf6ff;
  text-shadow:
    0 0 2px #fff, 0 0 12px rgba(255,255,255,.8),
    0 0 32px var(--neon-2), 0 0 72px rgba(0,229,255,.55);
}
.events__intro{
  font-size:clamp(.9rem,1.2vw,1.02rem);
  line-height:1.85;color:rgba(244,244,246,.9);max-width:64ch;
}
.events__stamp{
  display:inline-flex;align-items:center;gap:.55rem;
  margin-top:1.5rem;
  font-size:.6rem;letter-spacing:.3em;text-transform:uppercase;
  color:var(--muted);
}
.events__stamp::before{
  content:'';width:6px;height:6px;border-radius:50%;
  background:var(--neon-2);
  box-shadow:0 0 8px var(--neon-2), 0 0 16px rgba(0,229,255,.6);
  animation:pulseDot 2s ease-in-out infinite;
}
@keyframes pulseDot{
  0%,100%{transform:scale(1);opacity:1}
  50%    {transform:scale(1.4);opacity:.7}
}

.next-event{
  position:relative;
  margin-bottom:clamp(3rem,7vh,4.5rem);
  padding:clamp(1.6rem,4vw,2.5rem);
  border:1px solid rgba(255,43,214,.4);
  background:linear-gradient(135deg, rgba(255,43,214,.1) 0%, rgba(0,229,255,.05) 100%);
  display:grid;grid-template-columns:auto 1fr;
  gap:clamp(1.5rem,4vw,3rem);align-items:center;
  box-shadow:
    0 0 40px rgba(255,43,214,.22),
    inset 0 0 40px rgba(255,43,214,.06);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}
.next-event__cal{
  position:relative;
  width:clamp(140px,18vw,200px);
  aspect-ratio:1;
  border:1px solid var(--neon);
  background:rgba(5,5,7,.75);
  display:flex;flex-direction:column;
  box-shadow:
    0 0 24px rgba(255,43,214,.55), inset 0 0 24px rgba(255,43,214,.08);
  animation:calGlow 4s ease-in-out infinite alternate;
  flex-shrink:0;
}
@keyframes calGlow{
  from{box-shadow:0 0 20px rgba(255,43,214,.45), inset 0 0 20px rgba(255,43,214,.06)}
  to  {box-shadow:0 0 36px rgba(255,43,214,.75), inset 0 0 28px rgba(255,43,214,.14)}
}
.next-event__cal-month{
  padding:.55rem 0;
  text-align:center;
  font-size:.72rem;font-weight:700;
  letter-spacing:.35em;text-transform:uppercase;color:#fff;
  background:rgba(255,43,214,.18);
  border-bottom:1px solid rgba(255,43,214,.5);
  text-shadow:0 0 2px #fff, 0 0 10px var(--neon), 0 0 22px rgba(255,43,214,.7);
  animation:neonFlickerText 6s infinite;
}
.next-event__cal-day{
  flex:1;display:flex;align-items:center;justify-content:center;
  font-size:clamp(2.6rem,7vw,4.4rem);
  font-weight:200;line-height:1;color:#fff;letter-spacing:.02em;
  text-shadow:
    0 0 2px #fff, 0 0 14px rgba(255,255,255,.85),
    0 0 32px var(--neon), 0 0 72px var(--neon),
    0 0 130px rgba(255,43,214,.5);
}
.next-event__cal-year{
  padding:.45rem 0;
  text-align:center;
  font-size:.7rem;font-weight:400;
  letter-spacing:.4em;text-transform:uppercase;
  color:#eaf6ff;
  border-top:1px solid rgba(0,229,255,.4);
  background:rgba(0,229,255,.06);
  text-shadow:0 0 2px #fff, 0 0 10px var(--neon-2), 0 0 22px rgba(0,229,255,.6);
}
.next-event__info{display:flex;flex-direction:column;gap:.85rem;min-width:0}
.next-event__tag{
  align-self:flex-start;
  display:inline-flex;align-items:center;gap:.5rem;
  padding:.35rem .75rem;
  border:1px solid var(--neon-2);
  font-size:.58rem;font-weight:500;
  letter-spacing:.3em;text-transform:uppercase;
  color:#eaf6ff;
  text-shadow:0 0 8px rgba(0,229,255,.6);
  box-shadow:0 0 12px rgba(0,229,255,.4), inset 0 0 12px rgba(0,229,255,.08);
  animation:neonFlickerText 7s infinite;
}
.next-event__name{
  font-size:clamp(1.6rem,3.6vw,2.75rem);
  font-weight:700;line-height:1.05;
  letter-spacing:-.005em;text-transform:uppercase;color:#fff;
  text-shadow:
    0 0 2px #fff, 0 0 10px rgba(255,255,255,.85),
    0 0 26px var(--neon), 0 0 60px rgba(255,43,214,.55);
}
.next-event__meta{
  display:flex;flex-wrap:wrap;gap:.6rem 1.5rem;
  font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;
  color:rgba(244,244,246,.85);
}
.next-event__meta span{display:inline-flex;align-items:center;gap:.55rem}
.next-event__meta span::before{
  content:'';width:5px;height:5px;border-radius:50%;
  background:var(--neon);
  box-shadow:0 0 8px var(--neon), 0 0 16px rgba(255,43,214,.7);
}
.countdown{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.4rem}
.countdown__cell{
  min-width:4.4rem;
  padding:.55rem .7rem .5rem;
  border:1px solid rgba(0,229,255,.4);
  background:rgba(0,229,255,.05);
  display:flex;flex-direction:column;align-items:center;gap:.15rem;
  box-shadow:inset 0 0 14px rgba(0,229,255,.05);
}
.countdown__num{
  font-size:clamp(1.05rem,1.8vw,1.45rem);
  font-weight:500;line-height:1;color:#fff;
  text-shadow:
    0 0 2px #fff, 0 0 10px rgba(255,255,255,.8),
    0 0 20px var(--neon-2), 0 0 44px rgba(0,229,255,.5);
  font-variant-numeric:tabular-nums;
}
.countdown__lbl{
  font-size:.5rem;letter-spacing:.3em;text-transform:uppercase;color:var(--muted);
}
.events__legend{
  display:flex;align-items:center;gap:1rem;
  margin:clamp(2.25rem,5vh,3rem) 0 clamp(1.25rem,3vh,1.75rem);
  font-size:.62rem;letter-spacing:.34em;text-transform:uppercase;color:var(--muted);
}
.events__legend::before,
.events__legend::after{
  content:'';height:1px;flex:1;
  background:linear-gradient(90deg,transparent,var(--neon),transparent);
  box-shadow:0 0 8px rgba(255,43,214,.55);
}
.events__legend::before{background:linear-gradient(90deg,transparent,var(--neon))}
.events__legend::after{background:linear-gradient(270deg,transparent,var(--neon))}
.events__grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));
  gap:clamp(1rem,2vw,1.35rem);
}
.event-card{
  position:relative;
  padding:1.35rem 1.35rem 1.25rem;
  border:1px solid var(--line);
  background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.015));
  display:flex;flex-direction:column;gap:.85rem;
  overflow:hidden;
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  transition:border-color .45s var(--ease), transform .45s var(--ease), box-shadow .45s var(--ease);
}
.event-card::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(120% 85% at 50% 0%,rgba(255,43,214,.18),transparent 62%);
  opacity:0;transition:opacity .45s var(--ease);pointer-events:none;
}
.event-card:hover{
  border-color:rgba(255,43,214,.55);
  transform:translateY(-5px);
  box-shadow:0 0 26px rgba(255,43,214,.22), inset 0 0 26px rgba(255,43,214,.06);
}
.event-card:hover::before{opacity:1}
.event-card__row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}
.event-card__date{
  display:flex;align-items:center;gap:.65rem;
  font-size:.6rem;letter-spacing:.3em;text-transform:uppercase;
  color:#eaf6ff;text-shadow:0 0 8px rgba(0,229,255,.5);
}
.event-card__date b{
  font-weight:700;color:#fff;font-size:.9rem;letter-spacing:.06em;
  text-shadow:0 0 2px #fff, 0 0 10px var(--neon-2), 0 0 22px rgba(0,229,255,.6);
}
.event-card__city{
  display:inline-flex;align-items:center;gap:.4rem;
  font-size:.56rem;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);
}
.event-card__city::before{
  content:'';width:5px;height:5px;border-radius:50%;
  background:var(--neon);
  box-shadow:0 0 8px var(--neon), 0 0 14px rgba(255,43,214,.7);
}
.event-card__name{
  font-size:clamp(1rem,1.5vw,1.2rem);
  font-weight:700;letter-spacing:.02em;
  text-transform:uppercase;color:#fff;line-height:1.15;
  text-shadow:
    0 0 2px #fff, 0 0 8px rgba(255,255,255,.7),
    0 0 18px var(--neon), 0 0 40px rgba(255,43,214,.35);
}
.event-card__desc{font-size:.78rem;line-height:1.7;color:rgba(244,244,246,.8)}
.event-card__bar{
  position:absolute;left:0;right:0;bottom:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--neon),var(--neon-2),transparent);
  opacity:.55;
}
.event-card__badge{
  position:absolute;top:1rem;right:1rem;
  font-size:.5rem;letter-spacing:.28em;text-transform:uppercase;
  padding:.28rem .55rem;border:1px solid currentColor;
}
.event-card__badge--soon{
  color:var(--neon-2);
  text-shadow:0 0 8px rgba(0,229,255,.6);
  box-shadow:0 0 12px rgba(0,229,255,.35), inset 0 0 10px rgba(0,229,255,.08);
  animation:neonFlickerText 5s infinite;
}