body.editorial.schedule-page .night-intro {
  min-height: 0;
  margin: 0;
  padding: 0;
  background: none;
}
body.editorial.schedule-page .night-intro h1 {
  font-size: clamp(30px, 5vw, 52px);
  margin-block: 6px 8px;
}
body.editorial.schedule-page .night-intro .lead { margin: 0 0 12px; }
.schedule-compact { display: grid; gap: 12px; }
.schedule-day { border: 1px solid var(--line); border-radius: 14px; background: var(--surface); }
.schedule-day h2 {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 10px;
  margin: 0;
  padding: 10px 14px;
  font: 700 17px/1.2 var(--text);
}
.schedule-day h2 span { color: var(--muted); font-size: 13px; }
.schedule-day ul { list-style: none; margin: 0; padding: 0; }
.schedule-day li { border-top: 1px solid var(--line); }
.schedule-day a {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px 12px;
  min-height: 48px;
  padding: 8px 14px;
  color: var(--ink);
  text-decoration: none;
  line-height: 1.3;
}
.schedule-day a:hover strong { text-decoration: underline; }
.schedule-day a small { display: block; margin-top: 3px; color: var(--muted); }
.schedule-day-price { color: var(--accent); font-weight: 700; white-space: nowrap; }
@media (max-width: 420px) {
  .schedule-day a { font-size: 14px; padding-inline: 10px; }
  .schedule-day h2 { padding-inline: 10px; }
}
.schedule-day-thumb {
  display: block;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: 8px;
  background: var(--bg);
}
.schedule-day-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 420px) {
  .schedule-day a { grid-template-columns: 36px minmax(0, 1fr) auto; gap: 8px; }
}
