.wp-block-cbi-features__container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--wp--style--block-gap);
}
@media only screen and (max-width: 781px) {
  .wp-block-cbi-features__container {
    grid-template-columns: 1fr;
  }
}

.wp-block-cbi-features__item {
  display: flex;
  flex-direction: column;
}

div.wp-block-cbi-features__image-container {
  margin-top: -2rem;
  margin-bottom: 2rem;
  margin-left: calc(-1 * var(--wp--style--root--padding-left));
  margin-right: calc(-1 * var(--wp--style--root--padding-right));
  max-width: calc(100% + var(--wp--style--root--padding-left) + var(--wp--style--root--padding-right));
  width: calc(100% + var(--wp--style--root--padding-left) + var(--wp--style--root--padding-right));
  border-radius: var(--radius-large);
}
div.wp-block-cbi-features__image-container.has-image-padding {
  padding: var(--wp--style--root--padding-left);
  position: relative;
  background: var(--wp--preset--color--primary-pale);
}
div.wp-block-cbi-features__image-container.has-image-padding::before {
  content: "";
  position: absolute;
  width: 100%;
  height: calc(100% - 2 * var(--wp--style--root--padding-left));
  bottom: 0;
  left: 0;
  border-radius: inherit;
  background: var(--wp--preset--gradient--primary);
  background-attachment: fixed;
}
div.wp-block-cbi-features__image-container.has-image-padding .wp-block-cbi-features__image {
  isolation: isolate;
  border-radius: var(--radius);
  box-shadow: 0 0rem 0.375rem rgba(0, 0, 0, 0.15), 0 0.25rem 1.5rem rgba(0, 0, 0, 0.15);
  transition: transform var(--cubic-bezier) var(--transition-time);
}
@media (hover: hover) {
  div.wp-block-cbi-features__image-container.has-image-padding:hover .wp-block-cbi-features__image {
    transform: translateY(-0.25rem);
  }
}

.wp-block-cbi-features__image {
  width: 100%;
  height: auto;
  border-radius: var(--radius-large);
}

.wp-block-cbi-features__pretitle {
  margin-top: 0;
  margin-bottom: 0;
}

.wp-block-cbi-features__heading {
  margin-top: 1rem;
  margin-bottom: 0;
}

.wp-block-cbi-features__subtext {
  margin-top: 0;
  margin-bottom: 0;
}

.wp-block-cbi-features__preview-buttons {
  margin-top: 1.5rem;
}

.wp-block-cbi-features__container.has-large-grid-gap {
  gap: 5rem;
}
@media only screen and (max-width: 999px) {
  .wp-block-cbi-features__container.has-large-grid-gap {
    gap: var(--wp--style--block-gap);
  }
}

.wp-block-cbi-features__container.has-alternated-images .wp-block-cbi-features__item:nth-of-type(2n) div.wp-block-cbi-features__image-container {
  order: 10;
  margin-top: auto;
  margin-bottom: -2rem;
}
@media only screen and (max-width: 781px) {
  .wp-block-cbi-features__container.has-alternated-images .wp-block-cbi-features__item:nth-of-type(2n) div.wp-block-cbi-features__image-container {
    order: unset;
    margin-top: -2rem;
    margin-bottom: 2rem;
  }
}

.wp-block-cbi-features__container.is-style-infinity-slider {
  --gap: var( --wp--style--block-gap );
  --base-duration: 12.5s;
  --duration: calc( var( --base-duration ) * var( --item-count ) );
  --item-width: 50%;
  display: flex;
  overflow: visible;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  cursor: default;
  gap: var(--gap);
  transform: translateX(calc(-0.5 * var(--item-width) * var(--item-count)));
}
@media only screen and (max-width: 999px) {
  .wp-block-cbi-features__container.is-style-infinity-slider {
    --item-width: 60%;
  }
}
@media only screen and (max-width: 781px) {
  .wp-block-cbi-features__container.is-style-infinity-slider {
    --item-width: 80%;
  }
}
@media only screen and (max-width: 599px) {
  .wp-block-cbi-features__container.is-style-infinity-slider {
    --item-width: 100%;
  }
}
.wp-block-cbi-features__container.is-style-infinity-slider .wp-block-cbi-features__item {
  width: calc(var(--item-width) - var(--gap));
  flex-shrink: 0;
  -webkit-animation: infinitySlide var(--duration) linear infinite;
          animation: infinitySlide var(--duration) linear infinite;
}
@media only screen and (max-width: 599px) {
  .wp-block-cbi-features__container.is-style-infinity-slider .wp-block-cbi-features__item {
    width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .wp-block-cbi-features__container.is-style-infinity-slider .wp-block-cbi-features__item {
    -webkit-animation-play-state: paused;
            animation-play-state: paused;
  }
}
.wp-block-cbi-features__container.is-style-infinity-slider.is-reverse-slider .wp-block-cbi-features__item {
  animation-direction: reverse;
}

@-webkit-keyframes infinitySlide {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(-100% * var(--item-count) - var(--item-count) * var(--gap)));
  }
}

@keyframes infinitySlide {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(-100% * var(--item-count) - var(--item-count) * var(--gap)));
  }
}
.wp-block-cbi-features__preview__container {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 900;
  background-color: var(--wp--preset--color--primary);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: opacity var(--cubic-bezier) var(--transition-time), visibility var(--cubic-bezier) var(--transition-time);
  visibility: hidden;
  opacity: 0;
}
.wp-block-cbi-features__preview__container.--visible {
  visibility: visible;
  opacity: 100;
}

.wp-block-cbi-features__preview__content-container {
  aspect-ratio: 16/9;
  width: 100%;
  max-height: calc(100% - var(--wp--style--root--padding-left) - var(--wp--style--root--padding-right));
  max-width: min(var(--wp--style--global--wide-size), 100% - var(--wp--style--root--padding-left) - var(--wp--style--root--padding-right));
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-radius: var(--radius-large);
  outline: 0.125rem solid var(--wp--preset--color--primary-pale);
  box-shadow: 0 0.5rem 2rem rgba(0, 0, 0, 0.33);
  cursor: initial;
  transition: transform var(--cubic-bezier) var(--transition-time);
  transform: translateY(2rem);
}
.wp-block-cbi-features__preview__container.--visible .wp-block-cbi-features__preview__content-container {
  transform: translateY(0rem);
}
.wp-block-cbi-features__preview__content-container .wp-block-cbi-youtube-embed__placeholder {
  width: 100%;
  height: 100%;
}
.wp-block-cbi-features__preview__content-container .wp-block-embed {
  margin: 0;
  width: 100%;
  height: 100%;
  overflow: clip;
  border-radius: var(--radius-large);
}

.wp-block-cbi-features__preview__image-container {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--wp--preset--color--primary-pale);
  border-radius: var(--radius-large);
}

.wp-block-cbi-features__preview__image {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center top;
     object-position: center top;
  width: 100%;
  height: 100%;
  border-radius: var(--radius-large);
}

.wp-block-cbi-features__preview__access-button-container {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  padding-bottom: 2rem;
  border-radius: var(--radius-large);
  background: linear-gradient(rgba(243, 245, 249, 0), rgb(243, 245, 249));
  height: 12.5rem;
  max-height: 100%;
}
@media only screen and (max-width: 781px) and (min-height: 580px) {
  .wp-block-cbi-features__preview__access-button-container {
    height: auto;
    background: none;
    transform: translateY(5rem);
    padding: 0;
  }
}

.wp-block-cbi-features__preview__access-button-link {
  position: relative;
  -webkit-animation: accessButtonPulse 3s infinite;
          animation: accessButtonPulse 3s infinite;
}
.wp-block-cbi-features__preview__access-button-link::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  z-index: -1;
  -webkit-animation: accessButtonGlow 3s infinite;
          animation: accessButtonGlow 3s infinite;
}

@-webkit-keyframes accessButtonPulse {
  0% {
    transform: scale(0.95);
  }
  66% {
    transform: scale(1);
  }
  100% {
    transform: scale(0.95);
  }
}

@keyframes accessButtonPulse {
  0% {
    transform: scale(0.95);
  }
  66% {
    transform: scale(1);
  }
  100% {
    transform: scale(0.95);
  }
}
@-webkit-keyframes accessButtonGlow {
  0% {
    transform: scale(1);
    background: rgba(77, 67, 255, 0.5);
  }
  66% {
    transform: scale(1.2, 2);
    background: rgba(77, 67, 255, 0);
  }
  100% {
    transform: scale(1);
    background: rgba(77, 67, 255, 0);
  }
}
@keyframes accessButtonGlow {
  0% {
    transform: scale(1);
    background: rgba(77, 67, 255, 0.5);
  }
  66% {
    transform: scale(1.2, 2);
    background: rgba(77, 67, 255, 0);
  }
  100% {
    transform: scale(1);
    background: rgba(77, 67, 255, 0);
  }
}
.wp-block-cbi-features__preview__close-button {
  position: absolute;
  top: -1.25rem;
  right: 1.25rem;
  width: 3rem;
  height: 3rem;
  font-size: 2rem;
  padding-bottom: 0.25rem;
  border-radius: var(--radius-large);
  box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.33);
  background-color: var(--wp--preset--color--primary-pale);
  color: var(--wp--preset--color--primary-dark);
  cursor: pointer;
  z-index: 920;
  display: flex;
  justify-content: center;
  align-items: center;
}
