.agenda {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
  gap: 1rem clamp(1.5rem, 4.5vw, 4rem);
  margin-top: clamp(3rem, 6vw, 5.5rem);
  padding-top: clamp(2rem, 4vw, 3rem);
  border-top: 1px solid var(--line);
  scroll-margin-top: 1.5rem;
}

.agenda-caption {
  margin-top: .45rem;
  color: var(--muted);
}

.agenda-list {
  margin: .25rem 0 0;
  padding: 0;
  border-top: 1px solid var(--line);
  list-style: none;
}

.agenda-list li {
  display: grid;
  grid-template-columns: minmax(7.6rem, 1fr) minmax(0, 2.2fr);
  align-items: baseline;
  gap: .5rem 1rem;
  padding: .85rem 0;
  border-bottom: 1px solid var(--line);
}

.agenda-list time {
  display: grid;
  gap: .12rem;
  color: var(--muted);
  font-variant-numeric: tabular-nums;
}

.agenda-list time span:first-child {
  color: var(--ink);
  font-weight: 650;
}

.agenda-list h3 {
  font-size: clamp(1.45rem, 2.4vw, 2rem);
}

.site-footer {
  border-top: 1px solid var(--line);
}

.site-footer .site-shell {
  display: flex;
  justify-content: flex-end;
  padding-block: .55rem;
}

.site-footer a {
  display: inline-flex;
  align-items: center;
  min-height: 2.75rem;
  color: var(--muted);
  font-size: .87rem;
}

.site-footer a:hover {
  color: var(--rust-dark);
}

@media (max-width: 730px) {
  .agenda { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 370px) {
  .agenda-list li { grid-template-columns: minmax(6.2rem, 1fr) minmax(0, 1.7fr); }
}
