.shows-page main {
  width: min(1100px, 88vw);
  padding: 110px 0 70px;
  justify-content: flex-start;
}

.shows-page header {
  width: 100%;
  border-bottom: 1px solid rgba(158, 11, 11, 0.65);
  margin-bottom: 24px;
}

.shows-page h1 { font-size: clamp(5rem, 14vw, 11rem); }
.shows-page header p { margin: 0 0 24px; color: #b7ff00; }

.dates {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 48px;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.date-row {
  display: grid;
  grid-template-columns: 68px minmax(130px, 1fr) minmax(105px, 0.75fr);
  gap: 18px;
  padding: 17px 8px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  color: #d7dbd2;
  font: 700 0.78rem/1.2 "Space Mono", monospace;
  letter-spacing: 0.1em;
}

.date-row b,
.date-row em {
  filter: blur(4px);
  opacity: 0.48;
  user-select: none;
}

.date-row span {
  color: #b7ff00;
  text-shadow: 0 0 12px rgba(183, 255, 0, 0.3);
}
.date-row em { font-style: normal; text-align: right; }

@media (max-width: 850px) {
  .shows-page main { padding-top: 96px; }
  .dates { grid-template-columns: 1fr; column-gap: 0; }
}

@media (max-width: 650px) {
  .date-row { grid-template-columns: 58px 1fr; gap: 14px; }
  .date-row em { display: none; }
}
