/**
 * Events Listing Block Styles
 * Matches the original lvl/card + lvl/cards-wrapper design
 */
.events-listing__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(var(--wp--style--block-gap, 20px) + 20px);
}

.events-listing__card {
  flex-basis: calc((100% - 2 * (var(--wp--style--block-gap, 20px) + 20px)) / 3);
  flex-grow: 0;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
}

.events-listing__card .event-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  background-color: var(--bs-white, #fff);
  overflow: clip;
  backface-visibility: hidden;
  transition: transform 0.25s ease;
  box-shadow: var(--wp--preset--shadow--small, 0px 4px 15px rgba(38, 38, 43, 0.15));
}

.events-listing__card .event-card:hover {
  transform: scale(1.025) translateZ(0);
}

.events-listing__card .event-card__image {
  margin: 0;
  line-height: 0;
  aspect-ratio: 432/559;
  overflow: hidden;
}

.events-listing__card .event-card__image img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top;
     object-position: top;
  border-radius: 0 !important;
}

.events-listing__card .event-card__content {
  padding: 2rem 1.5rem 1.5rem 2rem;
  flex: 1;
}

.events-listing__card .event-card__content h4 {
  margin: 0 0 var(--wp--style--block-gap, 20px);
}

.events-listing__card .event-card__content h4 a {
  text-decoration: underline;
  color: var(--wp--preset--color--dark-blue);
}

.events-listing__card .event-card__content h4 a:hover {
  text-decoration: none;
}

.events-listing__card .event-card__content p {
  margin: 0;
}

@media (max-width: 991.98px) {
  .events-listing__card {
    flex-basis: calc((100% - (var(--wp--style--block-gap, 20px) + 20px)) / 2);
  }
}
@media (max-width: 767.98px) {
  .events-listing__list {
    flex-direction: column;
  }
  .events-listing__card {
    flex-basis: 100%;
  }
}
