/* Agenda only: the cover shares the title/description rows to retain card height. */
.service-grid .service-card:has(.pe-agenda-service-cover) {
  grid-template-columns: 44px minmax(0, 1fr);
  column-gap: 9px;
}
.service-grid .service-card:has(.pe-agenda-service-cover) .service-head {
  display: contents;
}
.service-grid .service-card:has(.pe-agenda-service-cover) .service-head > strong {
  grid-column: 2;
  grid-row: 1;
  align-self: end;
}
.service-grid .service-card:has(.pe-agenda-service-cover) .service-description {
  grid-column: 2;
  grid-row: 2;
}
.service-grid .service-card:has(.pe-agenda-service-cover) .service-duration {
  grid-column: 1 / -1;
  grid-row: 3;
}
.service-grid .service-icon.pe-agenda-service-cover {
  position: relative;
  grid-column: 1;
  grid-row: 1 / 3;
  align-self: center;
  width: 44px;
  height: 44px;
  flex-basis: 44px;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 6px rgb(5 28 40 / 7%);
}
.service-grid .pe-agenda-service-cover > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
}
.service-grid .pe-agenda-service-cover > img[hidden] { display: none; }
