.wp-block-query.is-style-carousel-2 .carousel {
  position: relative;
}

.wp-block-query.is-style-carousel-2 .carousel.pointer-event {
  touch-action: pan-y;
}

.wp-block-query.is-style-carousel-2 .carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.wp-block-query.is-style-carousel-2 .carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.wp-block-query.is-style-carousel-2 .carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  transition: transform 1s ease-in-out;
  gap: var(--gap, 16px);
}

.wp-block-query.is-style-carousel-2 .carousel-item .wp-block-post {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 0;
  background-color: #FFF;
  border: 1px solid #000;
}

.wp-block-query.is-style-carousel-2 .carousel-item .wp-block-post .wp-block-post-featured-image {
  margin: 0;
}

.wp-block-query.is-style-carousel-2 .carousel-item .wp-block-post .wp-block-post-date {
  font-size: 0.85em !important;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}

.wp-block-query.is-style-carousel-2 .carousel-item .wp-block-post .wp-block-post-title {
  font-size: 1.5em !important;
  margin-top: 0em;
  margin-bottom: 1em;
  border: 0 !important;
}

.wp-block-query.is-style-carousel-2 .carousel-item-next:not(.carousel-item-start),
.wp-block-query.is-style-carousel-2 .active.carousel-item-end {
  transform: translateX(100%);
}

.wp-block-query.is-style-carousel-2 .carousel-item-prev:not(.carousel-item-end),
.wp-block-query.is-style-carousel-2 .active.carousel-item-start {
  transform: translateX(-100%);
}

.wp-block-query.is-style-carousel-2 .carousel-item.active,
.wp-block-query.is-style-carousel-2 .carousel-item-next,
.wp-block-query.is-style-carousel-2 .carousel-item-prev {
  display: flex;
}

@media (max-width: 599px) {
  .wp-block-query.is-style-carousel-2 .carousel .carousel-item > div {
    display: none;
  }
  .wp-block-query.is-style-carousel-2 .carousel .carousel-item > div:first-child {
    display: block;
    width: 100%;
  }
}

@media (min-width: 600px) {
  .wp-block-query.is-style-carousel-2 .carousel .carousel-item-end.active,
  .wp-block-query.is-style-carousel-2 .carousel .carousel-item-next {
    transform: translateX(50%);
  }
  .wp-block-query.is-style-carousel-2 .carousel .carousel-item-start.active,
  .wp-block-query.is-style-carousel-2 .carousel .carousel-item-prev {
    transform: translateX(-50%);
  }
  .wp-block-query.is-style-carousel-2 .carousel .carousel-item-end,
  .wp-block-query.is-style-carousel-2 .carousel .carousel-item-start {
    transform: translateX(0);
  }
}
