/* =========================================================
   PÁGINA AGENDA
   Layout 50/50: izq título + subhead "sticky", der grid de
   conciertos numerados.
   ========================================================= */

.agenda-page {
  padding-block: clamp(7rem, 12vw, 12rem) clamp(4rem, 8vw, 8rem);
}
.agenda-page__inner {
  max-width: 1320px;
  margin-inline: auto;
  padding-inline: var(--gutter);
  display: grid;
  grid-template-columns: 35fr 65fr;
  gap: clamp(2rem, 6vw, 6rem);
  align-items: start;
}

/* Columna izquierda — texto sticky (queda fijo mientras se hace scroll) */
.agenda-page__intro {
  position: sticky;
  top: clamp(6rem, 10vw, 8rem);
}
.agenda-page__title {
  font-family: var(--font-display);
  font-weight: var(--fw-medium);
  font-size: var(--fs-800);
  line-height: var(--lh-tight);
  letter-spacing: var(--tracking-tight);
  color: var(--color-display);
  margin-top: var(--space-3);
}
.agenda-page__lead {
  margin-top: var(--space-4);
  font-size: var(--fs-400);
  color: var(--color-muted);
  max-width: 28ch;
  line-height: 1.2;
}

/* Columna derecha — lista de conciertos */
.agenda-page__list {
  display: flex;
  flex-direction: column;
}
.agenda-page__item {
  position: relative;
  display: grid;
  grid-template-columns: 56px 1fr;
  gap: var(--space-5);
  padding-block: var(--space-6);
  border-top: 1px solid var(--color-line);
  transition: background var(--dur-fast) var(--ease-out);
}
.agenda-page__item:last-child { border-bottom: 1px solid var(--color-line); }
.agenda-page__item:hover { background: rgba(208,80,88,0.04); }

.agenda-page__num {
  font-family: var(--font-display);
  font-size: var(--fs-300);
  font-weight: var(--fw-regular);
  color: var(--color-coral-soft);
  letter-spacing: var(--tracking-wide);
  padding-top: var(--space-1);
}
.agenda-page__body {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: var(--space-5);
  align-items: center;
}
.agenda-page__date {
  font-family: var(--font-display);
  font-weight: var(--fw-medium);
  font-size: var(--fs-500);
  line-height: 0.95;
  color: var(--color-display);
  min-width: 110px;
}
.agenda-page__date-sub {
  display: block;
  font-size: var(--fs-200);
  color: var(--color-muted);
  text-transform: uppercase;
  letter-spacing: var(--tracking-wide);
  margin-top: var(--space-2);
}
.agenda-page__venue {
  font-family: var(--font-display);
  font-weight: var(--fw-medium);
  font-size: var(--fs-400);
  color: var(--color-display);
  line-height: 1.2;
}
.agenda-page__loc {
  margin-top: var(--space-1);
  color: var(--color-muted);
  font-size: var(--fs-200);
}
.agenda-page__time {
  font-size: var(--fs-200);
  color: var(--color-muted);
  letter-spacing: var(--tracking-wide);
  white-space: nowrap;
  text-align: right;
}
.agenda-page__time::after {
  content: " →";
  color: var(--color-display);
}

@media (max-width: 900px) {
  .agenda-page__inner { grid-template-columns: 1fr; gap: var(--space-7); }
  .agenda-page__intro { position: static; }
  .agenda-page__body {
    grid-template-columns: 1fr;
    gap: var(--space-2);
  }
  .agenda-page__time { text-align: left; }
}
