.cta.js-category-target {
  transition: all 0.3s ease-out;
}

.cta .img .img-overlay:after, .cta {
  transition: all 1s cubic-bezier(0.59, 0, 0.06, 1);
}

.cta-blocks {
  position: relative;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15rem, calc(33.3333333333% - 1.5rem)));
  gap: var(--gutter-standard);
  justify-content: space-between;
}
@media only screen and (max-width: 48rem) {
  .cta-blocks {
    grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
  }
}

.cta {
  min-height: var(--size-2xl-4);
  height: 100%;
  flex-grow: 1;
  overflow: hidden;
  aspect-ratio: 4/5;
  position: relative;
  text-align: center;
  will-change: transform;
  padding: var(--space-s);
  border: 1px solid var(--color-body-a25);
}
.cta .cta-inner {
  position: relative;
  z-index: 3;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  padding: var(--space-m);
  border-radius: 0.25rem;
  background-color: var(--card-color-background);
}
.cta .cta-inner p:last-child {
  margin-bottom: 0;
}
.cta h2,
.cta h3,
.cta h4,
.cta h5 {
  width: 100%;
}
.cta header,
.cta div {
  width: 100%;
}
.cta p {
  max-width: 36rem;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.cta .buttons {
  padding-top: var(--space-m);
}
@media only screen and (max-width: 64rem) {
  .cta .buttons {
    margin-top: 0;
  }
}
@media only screen and (max-width: 48rem) {
  .cta .buttons {
    margin-top: var(--space-s);
  }
}
.cta .media-container {
  position: absolute;
  inset: 0;
  height: 100%;
  width: 100%;
}
.cta .img {
  border-radius: 0.25rem;
  z-index: 1;
  padding: var(--space-s);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.cta .img img {
  width: 100%;
  height: 100%;
  border-radius: 0.25rem;
}
.cta .img .img-overlay {
  height: 100%;
  position: relative;
}
.cta .img .img-overlay:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background: var(--color-black);
  mix-blend-mode: multiply;
  opacity: 0.6;
  border-radius: 0.25rem;
}
.cta.not-square {
  padding: 0;
  height: auto;
  min-height: 0;
}
.cta.not-square .cta-inner {
  position: static;
}
@media only screen and (max-width: 40rem) {
  .cta.xs\:not-square {
    padding: 0;
    height: auto;
    min-height: 0;
  }
  .cta.xs\:not-square .cta-inner {
    position: static;
  }
}
.cta:hover {
  transform: translateY(-0.25rem);
}
.cta.no-hover:hover {
  transform: translateY(0);
}

.cta-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media only screen and (max-width: 40rem) {
  .cta-grid {
    margin-left: 0;
    margin-right: 0;
  }
}
.cta-grid .cta {
  flex-grow: 0;
}
@media only screen and (max-width: 64rem) {
  .cta-grid .cta {
    min-height: 22em;
  }
}
.cta-grid .cta .cta-inner {
  width: 100%;
}

.events-grid .cta {
  flex-grow: 0;
}

@media only screen and (max-width: 48rem) {
  .mobile-scroll .cta {
    width: var(--width-content);
  }
}
/*# sourceMappingURL=cta_blocks.css.map */
