/*!****************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[4].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./blocks/container/style.scss ***!
  \****************************************************************************************************************************************************************************************************************************************************/
.wp-block-zentibuilder-container {
  box-sizing: border-box;
  position: var(--zb-position-type, relative);
  top: auto;
  left: auto;
  translate: calc(var(--zb-position-x, 0px) + var(--zb-parallax-x, 0px)) calc(var(--zb-position-y, 0px) + var(--zb-parallax-y, 0px));
  z-index: var(--zb-position-z, auto);
  width: var(--zb-position-width, auto);
  height: var(--zb-position-height, auto);
  display: var(--zb-layout-type, flex);
  flex-direction: var(--zb-flex-direction, row);
  gap: var(--zb-gap, 0px);
  justify-content: var(--zb-justify-content, flex-start);
  align-items: var(--zb-align-items, stretch);
  align-content: var(--zb-align-content, normal);
  flex-wrap: var(--zb-flex-wrap, nowrap);
  padding-top: var(--zb-padding-top, 0px);
  padding-right: var(--zb-padding-right, 0px);
  padding-bottom: var(--zb-padding-bottom, 0px);
  padding-left: var(--zb-padding-left, 0px);
  margin-top: var(--zb-margin-top, 0px);
  margin-right: var(--zb-margin-right, 0px);
  margin-bottom: var(--zb-margin-bottom, 0px);
  margin-left: var(--zb-margin-left, 0px);
  min-height: var(--zb-min-height, auto);
  background-color: var(--zb-bg-color, transparent);
  background-image: var(--zb-bg-image, none), var(--zb-bg-gradient, none);
  background-size: var(--zb-bg-image-size, cover);
  background-position: var(--zb-bg-image-position, center center);
  background-repeat: no-repeat;
  background-attachment: var(--zb-bg-attachment, scroll);
  border-style: var(--zb-border-style, solid);
  border-color: var(--zb-border-color, transparent);
  border-width: var(--zb-border-width-top, 0px) var(--zb-border-width-right, 0px) var(--zb-border-width-bottom, 0px) var(--zb-border-width-left, 0px);
  border-radius: var(--zb-radius-tl, 0px) var(--zb-radius-tr, 0px) var(--zb-radius-br, 0px) var(--zb-radius-bl, 0px);
  box-shadow: var(--zb-box-shadow, none);
}
.wp-block-zentibuilder-container.is-layout-grid {
  display: grid;
  grid-template-columns: repeat(var(--zb-grid-cols, 2), 1fr);
}
.wp-block-zentibuilder-container.is-layout-grid > * {
  min-width: 0; /* stop long content from blowing out grid tracks */
}
.wp-block-zentibuilder-container::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: inherit;
  background-color: var(--zb-overlay-bg, transparent);
  background-image: var(--zb-overlay-image, none);
  background-size: var(--zb-overlay-image-size, cover);
  background-position: var(--zb-overlay-image-position, center center);
  background-repeat: no-repeat;
  opacity: var(--zb-overlay-opacity, 1);
  z-index: 0;
  pointer-events: none;
}
.wp-block-zentibuilder-container::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: inherit;
  background-image: var(--zb-overlay-gradient, none);
  background-repeat: no-repeat;
  opacity: 1;
  z-index: 0;
  pointer-events: none;
}
.wp-block-zentibuilder-container > .block-editor-inner-blocks,
.wp-block-zentibuilder-container > .zb-inner-blocks,
.wp-block-zentibuilder-container > * {
  position: relative;
  z-index: 1;
  max-width: 100%;
}

/* --- FLOW CONTAINERS FILL THEIR PARENT (matches the editor preview) ---
   On the frontend InnerBlocks.Content drops the container DIRECTLY into the
   parent (often a flex column/row), where width:auto collapses to content
   width. Saved markup stores --zb-position-width:auto for normal-flow
   containers, so treat exactly that case as 100%. Fixed layers keep the
   content-sized auto unless Width is explicitly set. */
.wp-block-zentibuilder-container[style*="--zb-position-width:auto"]:not([style*="--zb-position-type:fixed"]):not([style*="--zb-position-type: fixed"]) {
  width: 100%;
}

/* --- Effective margins: fallback chains resolved OUTSIDE calc() so postcss-calc stays quiet --- */
.wp-block-zentibuilder-container {
  --zb-ml-eff: var(--zb-margin-left, 0px);
  --zb-mr-eff: var(--zb-margin-right, 0px);
}

@media (max-width: 1024px) {
  .wp-block-zentibuilder-container {
    --zb-ml-eff: var(--zb-margin-left-tablet, var(--zb-margin-left, 0px));
    --zb-mr-eff: var(--zb-margin-right-tablet, var(--zb-margin-right, 0px));
  }
}
@media (max-width: 768px) {
  .wp-block-zentibuilder-container {
    --zb-ml-eff: var(--zb-margin-left-mobile, var(--zb-margin-left-tablet, var(--zb-margin-left, 0px)));
    --zb-mr-eff: var(--zb-margin-right-mobile, var(--zb-margin-right-tablet, var(--zb-margin-right, 0px)));
  }
}
/* --- Full Width Breakout (all devices) --- */
.wp-block-zentibuilder-container.alignfull {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw + var(--zb-ml-eff)) !important;
  margin-right: calc(50% - 50vw + var(--zb-mr-eff)) !important;
}

/* Wide alignment */
.wp-block-zentibuilder-container.alignwide {
  width: 100% !important;
  max-width: var(--wp--style--global--wide-size, 1200px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* --- RESPONSIVE: TABLET (max-width: 1024px) --- */
@media (max-width: 1024px) {
  .wp-block-zentibuilder-container {
    flex-direction: var(--zb-flex-direction-tablet, var(--zb-flex-direction, row)) !important;
    gap: var(--zb-gap-tablet, var(--zb-gap, 0px)) !important;
    padding-top: var(--zb-padding-top-tablet, var(--zb-padding-top, 0px)) !important;
    padding-right: var(--zb-padding-right-tablet, var(--zb-padding-right, 0px)) !important;
    padding-bottom: var(--zb-padding-bottom-tablet, var(--zb-padding-bottom, 0px)) !important;
    padding-left: var(--zb-padding-left-tablet, var(--zb-padding-left, 0px)) !important;
    margin-top: var(--zb-margin-top-tablet, var(--zb-margin-top, 0px)) !important;
    margin-right: var(--zb-margin-right-tablet, var(--zb-margin-right, 0px)) !important;
    margin-bottom: var(--zb-margin-bottom-tablet, var(--zb-margin-bottom, 0px)) !important;
    margin-left: var(--zb-margin-left-tablet, var(--zb-margin-left, 0px)) !important;
    min-height: var(--zb-min-height-tablet, var(--zb-min-height, auto)) !important;
    justify-content: var(--zb-justify-content-tablet, var(--zb-justify-content, flex-start)) !important;
    align-items: var(--zb-align-items-tablet, var(--zb-align-items, stretch)) !important;
    align-content: var(--zb-align-content-tablet, var(--zb-align-content, normal)) !important;
    flex-wrap: var(--zb-flex-wrap-tablet, var(--zb-flex-wrap, nowrap)) !important;
    background-size: var(--zb-bg-image-size-tablet, var(--zb-bg-image-size, cover)) !important;
    border-width: var(--zb-border-width-top-tablet, var(--zb-border-width-top, 0px)) var(--zb-border-width-right-tablet, var(--zb-border-width-right, 0px)) var(--zb-border-width-bottom-tablet, var(--zb-border-width-bottom, 0px)) var(--zb-border-width-left-tablet, var(--zb-border-width-left, 0px)) !important;
    border-color: var(--zb-border-color-tablet, var(--zb-border-color, transparent)) !important;
  }
  .wp-block-zentibuilder-container.is-layout-grid {
    grid-template-columns: repeat(var(--zb-grid-cols-tablet, var(--zb-grid-cols, 2)), 1fr) !important;
  }
}
/* --- RESPONSIVE: MOBILE (max-width: 768px) --- */
@media (max-width: 768px) {
  .wp-block-zentibuilder-container {
    flex-direction: var(--zb-flex-direction-mobile, var(--zb-flex-direction-tablet, var(--zb-flex-direction, row))) !important;
    gap: var(--zb-gap-mobile, var(--zb-gap-tablet, var(--zb-gap, 0px))) !important;
    padding-top: var(--zb-padding-top-mobile, var(--zb-padding-top-tablet, var(--zb-padding-top, 0px))) !important;
    padding-right: var(--zb-padding-right-mobile, var(--zb-padding-right-tablet, var(--zb-padding-right, 0px))) !important;
    padding-bottom: var(--zb-padding-bottom-mobile, var(--zb-padding-bottom-tablet, var(--zb-padding-bottom, 0px))) !important;
    padding-left: var(--zb-padding-left-mobile, var(--zb-padding-left-tablet, var(--zb-padding-left, 0px))) !important;
    margin-top: var(--zb-margin-top-mobile, var(--zb-margin-top-tablet, var(--zb-margin-top, 0px))) !important;
    margin-right: var(--zb-margin-right-mobile, var(--zb-margin-right-tablet, var(--zb-margin-right, 0px))) !important;
    margin-bottom: var(--zb-margin-bottom-mobile, var(--zb-margin-bottom-tablet, var(--zb-margin-bottom, 0px))) !important;
    margin-left: var(--zb-margin-left-mobile, var(--zb-margin-left-tablet, var(--zb-margin-left, 0px))) !important;
    min-height: var(--zb-min-height-mobile, var(--zb-min-height-tablet, var(--zb-min-height, auto))) !important;
    justify-content: var(--zb-justify-content-mobile, var(--zb-justify-content-tablet, var(--zb-justify-content, flex-start))) !important;
    align-items: var(--zb-align-items-mobile, var(--zb-align-items-tablet, var(--zb-align-items, stretch))) !important;
    align-content: var(--zb-align-content-mobile, var(--zb-align-content-tablet, var(--zb-align-content, normal))) !important;
    flex-wrap: var(--zb-flex-wrap-mobile, var(--zb-flex-wrap-tablet, var(--zb-flex-wrap, nowrap))) !important;
    background-size: var(--zb-bg-image-size-mobile, var(--zb-bg-image-size-tablet, var(--zb-bg-image-size, cover))) !important;
    border-width: var(--zb-border-width-top-mobile, var(--zb-border-width-top-tablet, var(--zb-border-width-top, 0px))) var(--zb-border-width-right-mobile, var(--zb-border-width-right-tablet, var(--zb-border-width-right, 0px))) var(--zb-border-width-bottom-mobile, var(--zb-border-width-bottom-tablet, var(--zb-border-width-bottom, 0px))) var(--zb-border-width-left-mobile, var(--zb-border-width-left-tablet, var(--zb-border-width-left, 0px))) !important;
    border-color: var(--zb-border-color-mobile, var(--zb-border-color-tablet, var(--zb-border-color, transparent))) !important;
  }
  .wp-block-zentibuilder-container.is-layout-grid {
    grid-template-columns: repeat(var(--zb-grid-cols-mobile, var(--zb-grid-cols-tablet, var(--zb-grid-cols, 2))), 1fr) !important;
  }
}
.wp-block-zentibuilder-container.zb-container {
  background-color: var(--zb-bg-color, transparent);
}

/* =========================================
   VISIBILITY, HOVER, ANIMATION
   ========================================= */
/* --- CONDITIONAL VISIBILITY (Frontend Only) --- */
@media (min-width: 1025px) {
  .wp-block-zentibuilder-container.zb-hide-desktop {
    display: none !important;
  }
}
@media (min-width: 769px) and (max-width: 1024px) {
  .wp-block-zentibuilder-container.zb-hide-tablet {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .wp-block-zentibuilder-container.zb-hide-mobile {
    display: none !important;
  }
}
/* --- ADVANCED HOVER EFFECTS --- */
@media (hover: hover) {
  .wp-block-zentibuilder-container.zb-has-hover {
    transition: transform var(--zb-hover-duration, 300ms) var(--zb-hover-easing, ease);
    will-change: transform;
  }
  .wp-block-zentibuilder-container.zb-has-hover:hover {
    transform: translateY(var(--zb-hover-lift, 0px)) scale(var(--zb-hover-scale, 1));
  }
}
/* --- ENTRANCE ANIMATIONS --- */
.wp-block-zentibuilder-container.zb-has-animation {
  opacity: 0;
  transition-property: opacity, transform;
  transition-duration: var(--zb-animation-duration, 800ms);
  transition-delay: var(--zb-animation-delay, 0ms);
  transition-timing-function: ease-out;
}

.wp-block-zentibuilder-container.zb-anim-fadeUp {
  transform: translateY(30px);
}

.wp-block-zentibuilder-container.zb-anim-fadeDown {
  transform: translateY(-30px);
}

.wp-block-zentibuilder-container.zb-anim-fadeLeft {
  transform: translateX(-30px);
}

.wp-block-zentibuilder-container.zb-anim-fadeRight {
  transform: translateX(30px);
}

.wp-block-zentibuilder-container.zb-anim-zoomIn {
  transform: scale(0.9);
}

.wp-block-zentibuilder-container.zb-has-animation.zb-is-visible {
  opacity: 1 !important;
  transform: none !important;
}

@media (prefers-reduced-motion: reduce) {
  .wp-block-zentibuilder-container.zb-has-animation {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}
/* --- STICKY POSITIONING --- */
.wp-block-zentibuilder-container.zb-is-sticky {
  position: sticky;
  top: var(--zb-sticky-offset, 0px);
  z-index: var(--zb-position-z, var(--zb-sticky-zindex, 10));
}

@media (min-width: 1025px) {
  .wp-block-zentibuilder-container.zb-is-sticky.zb-sticky-off-desktop {
    position: relative;
    top: auto;
  }
}
@media (min-width: 769px) and (max-width: 1024px) {
  .wp-block-zentibuilder-container.zb-is-sticky.zb-sticky-off-tablet {
    position: relative;
    top: auto;
  }
}
@media (max-width: 768px) {
  .wp-block-zentibuilder-container.zb-is-sticky.zb-sticky-off-mobile {
    position: relative;
    top: auto;
  }
}
/* --- FIXED LAYERS: stacking override --- */
.wp-block-zentibuilder-container[style*="--zb-position-type:fixed"][style*="--zb-position-z:auto"],
.wp-block-zentibuilder-container[style*="--zb-position-type: fixed"][style*="--zb-position-z: auto"] {
  z-index: 10;
}

/* --- BACKGROUND VIDEO LAYER --- */
.wp-block-zentibuilder-container.zb-has-bg-video {
  z-index: var(--zb-position-z, 0);
}

.wp-block-zentibuilder-container .zb-bg-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
  pointer-events: none;
}

/* =========================================
   ATTENTION ANIMATIONS (Hover / Loop / Click)
   ========================================= */
@keyframes zb-attention-pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes zb-attention-shake {
  0%, 100% {
    transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    transform: translateX(-5px);
  }
  20%, 40%, 60%, 80% {
    transform: translateX(5px);
  }
}
@keyframes zb-attention-bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-15px);
  }
  60% {
    transform: translateY(-7px);
  }
}
@keyframes zb-attention-rubberBand {
  0% {
    transform: scale(1);
  }
  30% {
    transform: scaleX(1.25) scaleY(0.75);
  }
  40% {
    transform: scaleX(0.75) scaleY(1.25);
  }
  50% {
    transform: scaleX(1.15) scaleY(0.85);
  }
  65% {
    transform: scaleX(0.95) scaleY(1.05);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes zb-attention-tada {
  0% {
    transform: scale(1);
  }
  10%, 20% {
    transform: scale(0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    transform: scale(1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    transform: scale(1.1) rotate(-3deg);
  }
  100% {
    transform: scale(1) rotate(0);
  }
}
@keyframes zb-attention-swing {
  20% {
    transform: rotate(15deg);
  }
  40% {
    transform: rotate(-10deg);
  }
  60% {
    transform: rotate(5deg);
  }
  80% {
    transform: rotate(-5deg);
  }
  100% {
    transform: rotate(0);
  }
}
.wp-block-zentibuilder-container.zb-has-attention {
  transform-origin: center center;
}

/* Hover Trigger */
@media (hover: hover) {
  .wp-block-zentibuilder-container.zb-has-attention.zb-attention-hover:hover {
    animation-duration: var(--zb-attention-duration, 1000ms);
    animation-delay: var(--zb-attention-delay, 0ms);
    animation-timing-function: ease-in-out;
    animation-fill-mode: both;
  }
  .wp-block-zentibuilder-container.zb-has-attention.zb-attention-hover.zb-anim-pulse:hover {
    animation-name: zb-attention-pulse;
  }
  .wp-block-zentibuilder-container.zb-has-attention.zb-attention-hover.zb-anim-shake:hover {
    animation-name: zb-attention-shake;
  }
  .wp-block-zentibuilder-container.zb-has-attention.zb-attention-hover.zb-anim-bounce:hover {
    animation-name: zb-attention-bounce;
  }
  .wp-block-zentibuilder-container.zb-has-attention.zb-attention-hover.zb-anim-rubberBand:hover {
    animation-name: zb-attention-rubberBand;
  }
  .wp-block-zentibuilder-container.zb-has-attention.zb-attention-hover.zb-anim-tada:hover {
    animation-name: zb-attention-tada;
  }
  .wp-block-zentibuilder-container.zb-has-attention.zb-attention-hover.zb-anim-swing:hover {
    animation-name: zb-attention-swing;
  }
}
/* Loop Trigger */
.wp-block-zentibuilder-container.zb-has-attention.zb-attention-loop {
  animation-iteration-count: var(--zb-attention-iteration, infinite);
  animation-duration: var(--zb-attention-duration, 1000ms);
  animation-delay: var(--zb-attention-delay, 0ms);
  animation-timing-function: ease-in-out;
}

.wp-block-zentibuilder-container.zb-has-attention.zb-attention-loop.zb-anim-pulse {
  animation-name: zb-attention-pulse;
}

.wp-block-zentibuilder-container.zb-has-attention.zb-attention-loop.zb-anim-shake {
  animation-name: zb-attention-shake;
}

.wp-block-zentibuilder-container.zb-has-attention.zb-attention-loop.zb-anim-bounce {
  animation-name: zb-attention-bounce;
}

.wp-block-zentibuilder-container.zb-has-attention.zb-attention-loop.zb-anim-rubberBand {
  animation-name: zb-attention-rubberBand;
}

.wp-block-zentibuilder-container.zb-has-attention.zb-attention-loop.zb-anim-tada {
  animation-name: zb-attention-tada;
}

.wp-block-zentibuilder-container.zb-has-attention.zb-attention-loop.zb-anim-swing {
  animation-name: zb-attention-swing;
}

/* Click Trigger (Class added via JS) */
.wp-block-zentibuilder-container.zb-has-attention.zb-attention-click.zb-is-animating {
  animation-duration: var(--zb-attention-duration, 1000ms);
  animation-timing-function: ease-in-out;
}

.wp-block-zentibuilder-container.zb-has-attention.zb-attention-click.zb-anim-pulse.zb-is-animating {
  animation-name: zb-attention-pulse;
}

.wp-block-zentibuilder-container.zb-has-attention.zb-attention-click.zb-anim-shake.zb-is-animating {
  animation-name: zb-attention-shake;
}

.wp-block-zentibuilder-container.zb-has-attention.zb-attention-click.zb-anim-bounce.zb-is-animating {
  animation-name: zb-attention-bounce;
}

.wp-block-zentibuilder-container.zb-has-attention.zb-attention-click.zb-anim-rubberBand.zb-is-animating {
  animation-name: zb-attention-rubberBand;
}

.wp-block-zentibuilder-container.zb-has-attention.zb-attention-click.zb-anim-tada.zb-is-animating {
  animation-name: zb-attention-tada;
}

.wp-block-zentibuilder-container.zb-has-attention.zb-attention-click.zb-anim-swing.zb-is-animating {
  animation-name: zb-attention-swing;
}

/* =========================================
   EXIT ANIMATIONS (Scroll out of view)
   ========================================= */
.wp-block-zentibuilder-container.zb-has-exit {
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.wp-block-zentibuilder-container.zb-has-exit.zb-exit-triggered.zb-exit-fadeOut {
  opacity: 0;
}

.wp-block-zentibuilder-container.zb-has-exit.zb-exit-triggered.zb-exit-slideOutDown {
  transform: translateY(50px);
  opacity: 0;
}

.wp-block-zentibuilder-container.zb-has-exit.zb-exit-triggered.zb-exit-slideOutUp {
  transform: translateY(-50px);
  opacity: 0;
}

.wp-block-zentibuilder-container.zb-has-exit.zb-exit-triggered.zb-exit-zoomOut {
  transform: scale(0.8);
  opacity: 0;
}

/* =========================================
   SHAPE DIVIDERS
   ========================================= */
.zb-divider {
  position: absolute;
  left: 0;
  right: 0;
  pointer-events: none;
  z-index: 1;
  mask-repeat: no-repeat;
  mask-size: 100% 100%;
  mask-position: center;
}

.zb-divider-top {
  top: var(--zb-div-top-offset, 0px);
  height: var(--zb-div-top-h, 60px);
  mask-image: var(--zb-div-top-mask, none);
  background: var(--zb-div-top-bg, transparent);
  transform: var(--zb-div-top-transform, none);
}

.zb-divider-bottom {
  bottom: var(--zb-div-bottom-offset, 0px);
  height: var(--zb-div-bottom-h, 60px);
  mask-image: var(--zb-div-bottom-mask, none);
  background: var(--zb-div-bottom-bg, transparent);
  transform: var(--zb-div-bottom-transform, none);
}

.zb-divider.is-front {
  z-index: 3;
}

.zb-divider-ghost {
  opacity: 0.5;
}

.zb-divider-top.zb-divider-ghost {
  translate: 0 35%;
}

.zb-divider-bottom.zb-divider-ghost {
  translate: 0 -35%;
}

@media (max-width: 1024px) {
  .zb-divider-top {
    height: var(--zb-div-top-h-tablet, 60px);
    top: var(--zb-div-top-offset-tablet, 0px);
  }
  .zb-divider-bottom {
    height: var(--zb-div-bottom-h-tablet, 60px);
    bottom: var(--zb-div-bottom-offset-tablet, 0px);
  }
}
@media (max-width: 768px) {
  .zb-divider-top {
    height: var(--zb-div-top-h-mobile, 60px);
    top: var(--zb-div-top-offset-mobile, 0px);
  }
  .zb-divider-bottom {
    height: var(--zb-div-bottom-h-mobile, 60px);
    bottom: var(--zb-div-bottom-offset-mobile, 0px);
  }
}
/* Animate on view */
.zb-divider.zb-divider-animate {
  opacity: 0;
}

.zb-divider.zb-divider-animate.zb-is-visible {
  animation: zb-div-in 0.8s ease-out both;
}

.zb-divider-ghost.zb-divider-animate.zb-is-visible {
  animation-name: zb-div-in-ghost;
}

@keyframes zb-div-in {
  from {
    opacity: 0;
    scale: 1 0.4;
  }
  to {
    opacity: 1;
    scale: 1 1;
  }
}
@keyframes zb-div-in-ghost {
  from {
    opacity: 0;
    scale: 1 0.4;
  }
  to {
    opacity: 0.5;
    scale: 1 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .zb-divider.zb-divider-animate {
    opacity: 1;
    animation: none;
  }
  .zb-divider-ghost.zb-divider-animate {
    opacity: 0.5;
  }
}
/* =========================================
   BACKGROUND IMAGE PARALLAX (JS-driven drift)
   The image stays on the element; only its Y position shifts via calc(),
   so radius, overlay, dividers and children are unaffected.
   ========================================= */
.wp-block-zentibuilder-container.zb-has-bg-img-parallax {
  background-position: var(--zb-bg-pos-x, center) calc(50% + var(--zb-bg-parallax-y, 0px)) !important;
}

/* =========================================
   ALIGNMENT SUPPORT
   ========================================= */
.zb-container.alignwide {
  max-width: var(--wp--style--global--wide-size, 1200px);
  margin-left: auto;
  margin-right: auto;
}

.zb-container.alignfull {
  max-width: 100vw;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

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