/* Static recovery layer: keeps the mirrored site functional without WordPress runtime chunks. */
html.mx-effects-enabled .mx-reveal {
  opacity: 0;
  transform: translate3d(0, 22px, 0);
  transition: opacity .62s ease, transform .62s cubic-bezier(.2,.65,.3,1);
  will-change: opacity, transform;
}
html.mx-effects-enabled .mx-reveal.mx-visible {
  opacity: 1;
  transform: none;
}
@media (prefers-reduced-motion: reduce) {
  html.mx-effects-enabled .mx-reveal { opacity: 1; transform: none; transition: none; }
  .stk-block-carousel__slider { scroll-behavior: auto !important; }
}
/* Restore sticky header behavior that Blocksy normally loads as a dynamic JS chunk. */
#header:has([data-sticky]) {
  position: sticky;
  top: 0;
  z-index: 9999;
}
/* Make the recovered Stackable carousel usable even when its frontend runtime was not mirrored. */
.mx-carousel-ready { --slides-to-show: 1; }
.mx-carousel-ready .stk-block-carousel__slider { scroll-behavior: smooth; }
.mx-carousel-ready .stk-block-carousel__dot { display:flex !important; }
/* Small polish, close to the original interactive feel without changing layout. */
@media (hover:hover) {
  .site-main .stk-button { transition: transform .22s ease, box-shadow .22s ease, filter .22s ease; }
  .site-main .stk-button:hover { transform: translateY(-2px); }
  .site-main .stk-img-wrapper img { transition: transform .45s cubic-bezier(.2,.65,.3,1); }
  .site-main .stk-img-wrapper:hover img { transform: scale(1.025); }
}
