.e-con.yalla-calm-wave-yes,.yc-contact.yalla-calm-wave-yes{isolation:isolate;position:relative}
.e-con.yalla-calm-wave-yes>.ycw-layer,.yc-contact.yalla-calm-wave-yes>.ycw-layer{position:absolute;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none!important;z-index:0;contain:paint;display:block}
.ycw-layer .ycw-band{position:absolute;top:var(--ycw-position,50%);left:0;width:100%;height:var(--ycw-height,55%);transform:translateY(-50%);opacity:var(--ycw-opacity,.22);color:var(--ycw-color,#92949a);pointer-events:none}
.ycw-layer .ycw-track{display:block;width:300%;height:100%;max-width:none;overflow:visible;animation:ycw-flow var(--ycw-speed,32s) linear infinite;will-change:transform}
.ycw-layer path{fill:none;stroke:currentColor;stroke-width:var(--ycw-line,.8px);vector-effect:non-scaling-stroke}
.ycw-layer.ycw-paused .ycw-track{animation-play-state:paused}
@keyframes ycw-flow{from{transform:translateX(-33.3333333333%)}to{transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.ycw-layer .ycw-track{animation:none;will-change:auto}}

/* Independent timelines, phases and opposite flow directions. */
.ycw-layer:not(.ycw-mode-calm):not(.ycw-mode-harmonic):not(.ycw-mode-flowing) .ycw-band{opacity:calc(var(--ycw-opacity,.22) * .65)}
.ycw-layer .ycw-band-1{color:var(--ycw-color-second,#a6a8ae)}
.ycw-layer .ycw-band-2{color:var(--ycw-color-third,#b7b5bd)}
.ycw-layer .ycw-band-1 .ycw-track{animation-duration:calc(var(--ycw-speed,32s) * 1.37);animation-direction:reverse;animation-delay:calc(var(--ycw-speed,32s) * -.41)}
.ycw-layer .ycw-band-2 .ycw-track{animation-duration:calc(var(--ycw-speed,32s) * .83);animation-delay:calc(var(--ycw-speed,32s) * -.68)}
.ycw-mode-ribbons .ycw-band{animation:ycw-sway calc(var(--ycw-speed,32s) * .8) ease-in-out infinite}
.ycw-mode-ribbons .ycw-band-1{animation-duration:calc(var(--ycw-speed,32s) * 1.1);animation-delay:calc(var(--ycw-speed,32s) * -.4)}
.ycw-mode-ribbons .ycw-band-2{animation-duration:calc(var(--ycw-speed,32s) * .7);animation-delay:calc(var(--ycw-speed,32s) * -.6)}
@keyframes ycw-sway{0%,100%{transform:translateY(-58%)}50%{transform:translateY(-42%)}}
.ycw-layer.ycw-paused .ycw-band{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.ycw-layer .ycw-band{animation:none!important}}

/* Opt-in background; content width is controlled by Elementor's container layout. */
.elementor .elementor-element.e-con.yalla-wave-bg-yes{
 background-color:var(--yalla-bg-base,#100c19)!important;
 background-image:radial-gradient(ellipse at 85% 10%,var(--yalla-bg-glow,#39224d),transparent 55%)!important;
}
.elementor .elementor-element.e-con.yalla-wave-bg-yes.yalla-bg-style-linear{
 background-image:linear-gradient(var(--yalla-bg-angle,135deg),var(--yalla-bg-base,#100c19),var(--yalla-bg-glow,#39224d))!important;
}

/* DS compatibility: when Yalla background is enabled, keep Elementor's own background overlay from hiding it. */
.elementor .elementor-element.e-con.yalla-wave-bg-yes>.elementor-background-overlay{background:transparent!important;opacity:0!important;}


/* DS/Blocksy stacking compatibility: wave stays above the container background,
   while actual Elementor content stays above the wave. */
.e-con.yalla-calm-wave-yes > .ycw-layer,
.yc-contact.yalla-calm-wave-yes > .ycw-layer{
  z-index:0!important;
}
.e-con.yalla-calm-wave-yes > :not(.ycw-layer),
.yc-contact.yalla-calm-wave-yes > :not(.ycw-layer){
  position:relative;
  z-index:1;
}
/* Elementor sometimes paints its overlay as a direct child; keep it below the SVG lines. */
.e-con.yalla-calm-wave-yes > .elementor-background-overlay{
  z-index:-1!important;
}
/* Make Yalla background deterministic even when Blocksy/Elementor injects background declarations. */
.elementor .elementor-element.e-con.yalla-wave-bg-yes{
  background-color:var(--yalla-bg-base,#100c19)!important;
}
.elementor .elementor-element.e-con.yalla-wave-bg-yes:not(.yalla-bg-style-linear){
  background-image:radial-gradient(ellipse at 85% 10%,var(--yalla-bg-glow,#39224d),transparent 55%)!important;
}
.elementor .elementor-element.e-con.yalla-wave-bg-yes.yalla-bg-style-linear{
  background-image:linear-gradient(var(--yalla-bg-angle,135deg),var(--yalla-bg-base,#100c19),var(--yalla-bg-glow,#39224d))!important;
}
