.wp-block-jw-zoom-slider.jwzs{
  position:relative;
  width:100%;
  min-height:var(--jwzs-min-h,60vh);
  overflow:hidden;

  /* defaults (you can override in theme CSS) */
  --jwzs-stagger-start: 60ms;
  --jwzs-stagger-step: 90ms;
}

.jwzs__viewport{position:relative;width:100%;height:100%;}
.jwzs__track{
  display:flex;
  width:100%;
  height:100%;
  transition:transform var(--jwzs-speed,700ms) ease;
  will-change:transform;
}
.jwzs__track>*{
  flex:0 0 100%;
  max-width:100%;
  min-height:var(--jwzs-min-h,60vh);
}

/* Fade effect: prevent "all slides flash" by defaulting to only showing first slide
   until JS adds .is-active to the correct one. */
.wp-block-jw-zoom-slider.jwzs[data-effect="fade"] .jwzs__track{
  position:relative;
  display:block;
  transition:none;
}
.wp-block-jw-zoom-slider.jwzs[data-effect="fade"] .jwzs__track>*{
  position:absolute;
  inset:0;
  opacity:0;
  pointer-events:none;
  transition:opacity var(--jwzs-speed,700ms) ease;
}
.wp-block-jw-zoom-slider.jwzs[data-effect="fade"] .jwzs__track>*:first-child{
  opacity:1;
  pointer-events:auto;
}
.wp-block-jw-zoom-slider.jwzs[data-effect="fade"] .jwzs__track>*.is-active{
  opacity:1;
  pointer-events:auto;
}
.wp-block-jw-zoom-slider.jwzs[data-effect="fade"] .jwzs__track>*.is-outgoing{
  opacity:0;
  pointer-events:none;
}

/* Controls */
.jwzs__ui{position:absolute;inset:0;pointer-events:none;}
.jwzs__prev,.jwzs__next{
  pointer-events:auto;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:44px;height:44px;border-radius:999px;
  border:1px solid rgba(255,255,255,.55);
  background:rgba(0,0,0,.25);
  backdrop-filter:blur(6px);
}
.jwzs__prev{left:14px;}
.jwzs__next{right:14px;}
.jwzs__prev:before,.jwzs__next:before{
  content:"";
  display:block;
  width:10px;height:10px;
  border-right:2px solid rgba(255,255,255,.9);
  border-bottom:2px solid rgba(255,255,255,.9);
  position:absolute;top:50%;left:50%;
}
.jwzs__prev:before{ transform:translate(-40%,-50%) rotate(135deg); }
.jwzs__next:before{ transform:translate(-60%,-50%) rotate(-45deg); }

.jwzs__dots{
  pointer-events:auto;
  position:absolute;
  left:0;right:0;bottom:14px;
  display:flex;justify-content:center;gap:8px;
}
.jwzs__dot{
  width:10px;height:10px;border-radius:999px;
  border:1px solid rgba(255,255,255,.6);
  background:rgba(0,0,0,.2);
  padding:0;
}
.jwzs__dot.is-active{background:rgba(255,255,255,.85);}

/* Ken Burns / Zoom on active slide background image (Cover block + NMCM spotlight) */
.wp-block-jw-zoom-slider.jwzs[data-zoom="1"] .jwzs__slide .wp-block-cover__image-background,
.wp-block-jw-zoom-slider.jwzs[data-zoom="1"] .jwzs__slide .wp-block-cover__background,
.wp-block-jw-zoom-slider.jwzs[data-zoom="1"] .jwzs__slide .nmcm-church-spotlight__media{
  transform:scale(1);
  transform-origin:center center;
  will-change:transform;
}

@keyframes jwzs-kenburns{
  from{transform:scale(1);}
  to{transform:scale(var(--jwzs-zoom,1.12));}
}

.wp-block-jw-zoom-slider.jwzs[data-zoom="1"] .jwzs__slide.is-active .wp-block-cover__image-background,
.wp-block-jw-zoom-slider.jwzs[data-zoom="1"] .jwzs__slide.is-active .wp-block-cover__background,
.wp-block-jw-zoom-slider.jwzs[data-zoom="1"] .jwzs__slide.is-active .nmcm-church-spotlight__media{
  animation:jwzs-kenburns var(--jwzs-delay,6000ms) linear forwards;
}

/* Text entrance effects */
@keyframes jwzs-fade-up{
  from{opacity:0;transform:translate3d(0,18px,0);}
  to{opacity:1;transform:translate3d(0,0,0);}
}
@keyframes jwzs-fade{from{opacity:0;}to{opacity:1;}}
@keyframes jwzs-slide-left{
  from{opacity:0;transform:translate3d(18px,0,0);}
  to{opacity:1;transform:translate3d(0,0,0);}
}

/* If text anim is "none", don't force-hide anything */
.wp-block-jw-zoom-slider.jwzs[data-text="none"] .jwzs__slide.is-active .jwzs-anim-target{
  animation:none !important;
  opacity:1 !important;
  transform:none !important;
}

/* Default: stagger delays are computed in JS and stored in --jwzs-ad */
.wp-block-jw-zoom-slider.jwzs:not([data-text="none"]) .jwzs__slide.is-active .jwzs-anim-target{
  opacity:0;
  animation-delay: var(--jwzs-ad, 0ms);
}

.wp-block-jw-zoom-slider.jwzs[data-text="fade-up"] .jwzs__slide.is-active .jwzs-anim-target{
  animation:jwzs-fade-up 700ms ease both;
}
.wp-block-jw-zoom-slider.jwzs[data-text="fade"] .jwzs__slide.is-active .jwzs-anim-target{
  animation:jwzs-fade 650ms ease both;
}
.wp-block-jw-zoom-slider.jwzs[data-text="slide-left"] .jwzs__slide.is-active .jwzs-anim-target{
  animation:jwzs-slide-left 700ms ease both;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .jwzs__track{transition:none !important;}
  .wp-block-jw-zoom-slider.jwzs[data-zoom="1"] .jwzs__slide.is-active .wp-block-cover__image-background,
  .wp-block-jw-zoom-slider.jwzs[data-zoom="1"] .jwzs__slide.is-active .wp-block-cover__background,
  .wp-block-jw-zoom-slider.jwzs[data-zoom="1"] .jwzs__slide.is-active .nmcm-church-spotlight__media{
    animation:none !important;
    transform:none !important;
  }
  .wp-block-jw-zoom-slider.jwzs .jwzs__slide.is-active .jwzs-anim-target{
    animation:none !important;
    opacity:1 !important;
    transform:none !important;
  }
}