@charset "UTF-8";
/* ==========================================================================
   Block: Animated Waterfall
   Scoped styles only — shared dot-link styles live in sass/base/elements.
   ========================================================================== */
@keyframes spektrix-animated-waterfall-marquee-down {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(0, -50%, 0);
  }
}
@keyframes spektrix-animated-waterfall-marquee-up {
  from {
    transform: translate3d(0, -50%, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}
.spektrix-animated-waterfall {
  --spektrix-animated-waterfall-gap: var(--wp--style--block-gap, 1.5rem);
  --spektrix-animated-waterfall-wide-size: var(--wp--style--global--wide-size, 1280px);
  --spektrix-animated-waterfall-content-size: 34rem;
  --spektrix-animated-waterfall-image-width: 220px;
  --spektrix-animated-waterfall-image-height: calc(var(--spektrix-animated-waterfall-image-width) * 344 / 220);
  --spektrix-animated-waterfall-column-gap: 24px;
  --spektrix-animated-waterfall-radius: var(--spektrix-radius-lg, 16px);
  --spektrix-animated-waterfall-checklist-icon-size: 40px;
  --spektrix-animated-waterfall-marquee-duration: 120s;
  --spektrix-animated-waterfall-edge-fade-size: calc(var(--spektrix-animated-waterfall-image-height) * 0.35);
  --spektrix-animated-waterfall-scroller-rows: 3;
  --spektrix-animated-waterfall-scroller-height: calc(
  	(var(--spektrix-animated-waterfall-image-height) * 3) +
  		(var(--spektrix-animated-waterfall-column-gap) * (3 - 1))
  );
  background-color: var(--wp--preset--color--white);
  padding: calc(var(--spektrix-animated-waterfall-gap) * 2.75) var(--spektrix-animated-waterfall-gap);
}
.spektrix-animated-waterfall.spektrix-block-spacing--pt-compact {
  padding-top: calc(var(--spektrix-animated-waterfall-gap) * 1.5);
}
.spektrix-animated-waterfall.spektrix-block-spacing--pt-comfortable {
  padding-top: calc(var(--spektrix-animated-waterfall-gap) * 2);
}
.spektrix-animated-waterfall.spektrix-block-spacing--pt-spacious {
  padding-top: calc(var(--spektrix-animated-waterfall-gap) * 4);
}
.spektrix-animated-waterfall.spektrix-block-spacing--pt-extra-spacious {
  padding-top: calc(var(--spektrix-animated-waterfall-gap) * 5);
}
.spektrix-animated-waterfall.spektrix-block-spacing--pt-maximum {
  padding-top: calc(var(--spektrix-animated-waterfall-gap) * 6);
}
.spektrix-animated-waterfall.spektrix-block-spacing--pt-none {
  padding-top: 0;
}
.spektrix-animated-waterfall.spektrix-block-spacing--pb-compact {
  padding-bottom: calc(var(--spektrix-animated-waterfall-gap) * 1.5);
}
.spektrix-animated-waterfall.spektrix-block-spacing--pb-comfortable {
  padding-bottom: calc(var(--spektrix-animated-waterfall-gap) * 2);
}
.spektrix-animated-waterfall.spektrix-block-spacing--pb-spacious {
  padding-bottom: calc(var(--spektrix-animated-waterfall-gap) * 4);
}
.spektrix-animated-waterfall.spektrix-block-spacing--pb-extra-spacious {
  padding-bottom: calc(var(--spektrix-animated-waterfall-gap) * 5);
}
.spektrix-animated-waterfall.spektrix-block-spacing--pb-maximum {
  padding-bottom: calc(var(--spektrix-animated-waterfall-gap) * 6);
}
.spektrix-animated-waterfall.spektrix-block-spacing--pb-none {
  padding-bottom: 0;
}
.spektrix-animated-waterfall__container {
  width: 100%;
  max-width: min(100%, var(--spektrix-animated-waterfall-wide-size));
  margin: 0 auto;
}
.spektrix-animated-waterfall__layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(2.5rem, 7vw, 5rem);
  align-items: center;
}
.spektrix-animated-waterfall__media-wrap {
  min-width: 0;
  overflow: hidden;
}
.spektrix-animated-waterfall__media {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  justify-content: center;
  gap: var(--spektrix-animated-waterfall-column-gap);
  width: min(100%, var(--spektrix-animated-waterfall-image-width) * 3 + var(--spektrix-animated-waterfall-column-gap) * 2);
  margin: 0 auto;
  overflow: hidden;
}
.spektrix-animated-waterfall__column {
  min-width: 0;
}
.spektrix-animated-waterfall__scroller {
  overflow: hidden;
  height: var(--spektrix-animated-waterfall-scroller-height);
}
.spektrix-animated-waterfall__scroller:not(.spektrix-animated-waterfall__scroller--placeholder) {
  overflow: hidden;
  height: var(--spektrix-animated-waterfall-scroller-height);
}
.spektrix-animated-waterfall__scroller--placeholder {
  display: flex;
  flex-direction: column;
  gap: var(--spektrix-animated-waterfall-column-gap);
  height: auto;
  overflow: visible;
}
.spektrix-animated-waterfall--edge-fade .spektrix-animated-waterfall__scroller:not(.spektrix-animated-waterfall__scroller--placeholder) {
  -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 var(--spektrix-animated-waterfall-edge-fade-size), #000 calc(100% - var(--spektrix-animated-waterfall-edge-fade-size)), transparent 100%);
  mask-image: linear-gradient(to bottom, transparent 0, #000 var(--spektrix-animated-waterfall-edge-fade-size), #000 calc(100% - var(--spektrix-animated-waterfall-edge-fade-size)), transparent 100%);
}
.spektrix-animated-waterfall__track {
  display: flex;
  flex-direction: column;
  height: max-content;
}
.spektrix-animated-waterfall__list {
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  gap: var(--spektrix-animated-waterfall-column-gap);
  margin: 0;
  padding: 0;
  list-style: none;
}
.spektrix-animated-waterfall__item {
  flex: 0 0 auto;
  width: 100%;
}
.spektrix-animated-waterfall__image-card {
  position: relative;
  display: block;
  width: 100%;
  max-width: 100%;
  aspect-ratio: 220/344;
  height: auto;
  margin: 0;
  overflow: hidden;
  background-color: var(--wp--preset--color--border);
  border-radius: var(--spektrix-animated-waterfall-radius);
  box-sizing: border-box;
}
.spektrix-animated-waterfall__image-card--placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--wp--preset--color--text-dark);
  font-family: var(--wp--preset--font-family--satoshi);
  font-size: var(--wp--preset--font-size--small);
  text-align: center;
}
.spektrix-animated-waterfall__image {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.spektrix-animated-waterfall__content {
  width: min(100%, var(--spektrix-animated-waterfall-content-size));
  margin: 0 auto;
}
.spektrix-animated-waterfall__header {
  margin-bottom: calc(var(--spektrix-animated-waterfall-gap) * 1.5);
}
.spektrix-animated-waterfall__heading {
  margin: 0 0 var(--spektrix-animated-waterfall-gap);
  color: var(--wp--preset--color--text-dark);
}
.spektrix-animated-waterfall__subtitle {
  margin: 0 0 calc(var(--spektrix-animated-waterfall-gap) * 2.5);
  color: var(--wp--preset--color--text-dark);
  opacity: 0.8;
}
.spektrix-animated-waterfall__checklist-wrap {
  margin-bottom: calc(var(--spektrix-animated-waterfall-gap) * 1.5);
}
.spektrix-animated-waterfall__checklist {
  display: grid;
  gap: calc(var(--spektrix-animated-waterfall-gap) * 0.85);
  margin: 0;
  padding: 0;
  list-style: none;
}
.spektrix-animated-waterfall__checklist-item {
  display: grid;
  grid-template-columns: var(--spektrix-animated-waterfall-checklist-icon-size) minmax(0, 1fr);
  gap: 1rem;
  align-items: flex-start;
}
.spektrix-animated-waterfall__checklist-icon {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: var(--spektrix-animated-waterfall-checklist-icon-size);
  height: var(--spektrix-animated-waterfall-checklist-icon-size);
  margin-top: 0;
  border-radius: var(--spektrix-radius-full);
  background-color: var(--wp--preset--color--pink);
  color: var(--wp--preset--color--white);
}
.spektrix-animated-waterfall__checklist-icon svg {
  display: block;
  width: 16px;
  height: auto;
}
.spektrix-animated-waterfall__checklist-text {
  margin: 0;
  color: var(--wp--preset--color--text-dark);
}
.spektrix-animated-waterfall__body {
  margin: 0 0 calc(var(--spektrix-animated-waterfall-gap) * 1.5);
  color: var(--wp--preset--color--text-dark);
}
.spektrix-animated-waterfall__link-wrap {
  margin-top: 0;
}
.spektrix-animated-waterfall__link {
  margin-top: 0;
}
.spektrix-animated-waterfall__placeholder {
  margin: 0;
  padding: var(--spektrix-animated-waterfall-gap);
  border: 1px dashed var(--wp--preset--color--border);
  border-radius: var(--spektrix-animated-waterfall-radius);
  color: var(--wp--preset--color--text-dark);
  font-family: var(--wp--preset--font-family--satoshi);
  font-size: var(--wp--preset--font-size--small);
  font-weight: 500;
  line-height: 1.4;
  opacity: 0.55;
  text-align: center;
}
.spektrix-animated-waterfall--animated .spektrix-animated-waterfall__column--animated .spektrix-animated-waterfall__track {
  animation: spektrix-animated-waterfall-marquee-down var(--spektrix-animated-waterfall-marquee-duration) linear infinite;
  will-change: transform;
}
.spektrix-animated-waterfall--animated .spektrix-animated-waterfall__column--up .spektrix-animated-waterfall__track {
  animation-name: spektrix-animated-waterfall-marquee-up;
}
.spektrix-animated-waterfall--animated .spektrix-animated-waterfall__column--2 .spektrix-animated-waterfall__track {
  animation-delay: calc(var(--spektrix-animated-waterfall-marquee-duration) / -3);
}
.spektrix-animated-waterfall--animated .spektrix-animated-waterfall__column--3 .spektrix-animated-waterfall__track {
  animation-delay: calc(var(--spektrix-animated-waterfall-marquee-duration) / -1.5);
}
.spektrix-animated-waterfall--animated .spektrix-animated-waterfall__column--animated .spektrix-animated-waterfall__track:hover, .spektrix-animated-waterfall--animated .spektrix-animated-waterfall__column--animated .spektrix-animated-waterfall__track:focus-within {
  animation-play-state: paused;
}
.spektrix-animated-waterfall--static .spektrix-animated-waterfall__track, .spektrix-animated-waterfall--animated .spektrix-animated-waterfall__column:not(.spektrix-animated-waterfall__column--animated) .spektrix-animated-waterfall__track {
  animation: none;
}
@media (max-width: 1099px) {
  .spektrix-animated-waterfall {
    --spektrix-animated-waterfall-image-width: clamp(8rem, 28vw, 12rem);
    --spektrix-animated-waterfall-image-height: calc(var(--spektrix-animated-waterfall-image-width) * 344 / 220);
    --spektrix-animated-waterfall-column-gap: clamp(0.625rem, 2.5vw, 1rem);
    --spektrix-animated-waterfall-edge-fade-size: calc(var(--spektrix-animated-waterfall-image-height) * 0.28);
    --spektrix-animated-waterfall-scroller-rows: 1.75;
    --spektrix-animated-waterfall-scroller-height: calc(
    	(var(--spektrix-animated-waterfall-image-height) * 1.75) +
    		(var(--spektrix-animated-waterfall-column-gap) * (1.75 - 1))
    );
    padding-inline: clamp(1rem, 5vw, var(--spektrix-animated-waterfall-gap));
  }
  .spektrix-animated-waterfall__layout {
    gap: calc(var(--spektrix-animated-waterfall-gap) * 2);
  }
  .spektrix-animated-waterfall__content {
    order: 1;
    padding-inline-start: 0;
  }
  .spektrix-animated-waterfall__media-wrap {
    order: 2;
  }
  .spektrix-animated-waterfall--mobile-images-first .spektrix-animated-waterfall__content {
    order: 2;
  }
  .spektrix-animated-waterfall--mobile-images-first .spektrix-animated-waterfall__media-wrap {
    order: 1;
  }
  .spektrix-animated-waterfall__media {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: 100%;
    max-width: calc(var(--spektrix-animated-waterfall-image-width) * 3 + var(--spektrix-animated-waterfall-column-gap) * 2);
  }
  .spektrix-animated-waterfall__image-card {
    width: 100%;
    aspect-ratio: 220/344;
    height: auto;
  }
  .spektrix-animated-waterfall--static .spektrix-animated-waterfall__scroller {
    height: var(--spektrix-animated-waterfall-scroller-height);
    overflow: hidden;
  }
  .spektrix-animated-waterfall--mobile-static .spektrix-animated-waterfall__column--animated .spektrix-animated-waterfall__track {
    animation: none;
  }
  .spektrix-animated-waterfall--mobile-static .spektrix-animated-waterfall__item--loop-duplicate {
    display: none;
  }
}
@media (min-width: 1100px) {
  .spektrix-animated-waterfall {
    --spektrix-animated-waterfall-scroller-rows: 2.5;
    --spektrix-animated-waterfall-scroller-height: calc(
    	(var(--spektrix-animated-waterfall-image-height) * 2.5) +
    		(var(--spektrix-animated-waterfall-column-gap) * (2.5 - 1))
    );
  }
  .spektrix-animated-waterfall__layout {
    /* Media needs ~708px for three 220px cards; bias width toward the image column. */
    grid-template-columns: minmax(0, 1.2fr) minmax(20rem, 0.7fr);
    align-items: center;
  }
  .spektrix-animated-waterfall__media-wrap, .spektrix-animated-waterfall__content {
    order: initial;
  }
  .spektrix-animated-waterfall__media-wrap {
    align-self: center;
  }
  .spektrix-animated-waterfall__content {
    margin: 0;
    padding-inline-start: clamp(1.5rem, 3vw, 2.5rem);
  }
}
@media (max-width: 1099px) {
  .spektrix-animated-waterfall--vertical-bleed {
    overflow: visible;
  }
}
@media (min-width: 1100px) {
  .spektrix-animated-waterfall--vertical-bleed {
    --spektrix-animated-waterfall-scroller-rows: 3.5;
    --spektrix-animated-waterfall-scroller-height: calc(
    	(var(--spektrix-animated-waterfall-image-height) * 3.5) +
    		(var(--spektrix-animated-waterfall-column-gap) * (3.5 - 1))
    );
    overflow: hidden;
    padding-block: 0;
  }
  .spektrix-animated-waterfall--vertical-bleed.spektrix-animated-waterfall--edge-fade .spektrix-animated-waterfall__scroller:not(.spektrix-animated-waterfall__scroller--placeholder) {
    -webkit-mask-image: none;
    mask-image: none;
  }
  .spektrix-animated-waterfall--vertical-bleed .spektrix-animated-waterfall__content {
    padding-block: calc(var(--spektrix-animated-waterfall-gap) * 2.75);
  }
  .spektrix-animated-waterfall--vertical-bleed.spektrix-block-spacing--pt-compact .spektrix-animated-waterfall__content {
    padding-block-start: calc(var(--spektrix-animated-waterfall-gap) * 1.5);
  }
  .spektrix-animated-waterfall--vertical-bleed.spektrix-block-spacing--pt-spacious .spektrix-animated-waterfall__content {
    padding-block-start: calc(var(--spektrix-animated-waterfall-gap) * 4);
  }
  .spektrix-animated-waterfall--vertical-bleed.spektrix-block-spacing--pt-extra-spacious .spektrix-animated-waterfall__content {
    padding-block-start: calc(var(--spektrix-animated-waterfall-gap) * 5);
  }
  .spektrix-animated-waterfall--vertical-bleed.spektrix-block-spacing--pt-maximum .spektrix-animated-waterfall__content {
    padding-block-start: calc(var(--spektrix-animated-waterfall-gap) * 6);
  }
  .spektrix-animated-waterfall--vertical-bleed.spektrix-block-spacing--pt-none .spektrix-animated-waterfall__content {
    padding-block-start: 0;
  }
  .spektrix-animated-waterfall--vertical-bleed.spektrix-block-spacing--pb-compact .spektrix-animated-waterfall__content {
    padding-block-end: calc(var(--spektrix-animated-waterfall-gap) * 1.5);
  }
  .spektrix-animated-waterfall--vertical-bleed.spektrix-block-spacing--pb-spacious .spektrix-animated-waterfall__content {
    padding-block-end: calc(var(--spektrix-animated-waterfall-gap) * 4);
  }
  .spektrix-animated-waterfall--vertical-bleed.spektrix-block-spacing--pb-extra-spacious .spektrix-animated-waterfall__content {
    padding-block-end: calc(var(--spektrix-animated-waterfall-gap) * 5);
  }
  .spektrix-animated-waterfall--vertical-bleed.spektrix-block-spacing--pb-maximum .spektrix-animated-waterfall__content {
    padding-block-end: calc(var(--spektrix-animated-waterfall-gap) * 6);
  }
  .spektrix-animated-waterfall--vertical-bleed.spektrix-block-spacing--pb-none .spektrix-animated-waterfall__content {
    padding-block-end: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .spektrix-animated-waterfall--animated .spektrix-animated-waterfall__column--animated .spektrix-animated-waterfall__track {
    animation: none;
    will-change: auto;
  }
  .spektrix-animated-waterfall--animated .spektrix-animated-waterfall__item--loop-duplicate {
    display: none;
  }
}
@media (prefers-reduced-motion: reduce) and (max-width: 1099px) {
  .spektrix-animated-waterfall--animated .spektrix-animated-waterfall__scroller:not(.spektrix-animated-waterfall__scroller--placeholder) {
    height: var(--spektrix-animated-waterfall-scroller-height);
    overflow: hidden;
  }
}

/*# sourceMappingURL=style.css.map */
