.floow-spotlight-yes,
[data-floow-spotlight="1"]{
  --floow-spot-color:#000000;
  --floow-spot-opacity:72;
  --floow-spot-size:440px;
  --floow-spot-follow:16;
  --floow-spot-softness:24;
  position:relative;
}

/* VIDEO MODE
   The canvas is a child of Elementor's own background-video host. It therefore
   shares the exact media geometry and can never resize or reflow the video. */
.elementor-background-video-container > .floow-reveal-canvas--video{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  pointer-events:none!important;
  z-index:5!important;
  max-width:none!important;
  max-height:none!important;
}

/* IMAGE MODE
   For Elementor background images there is no media node, so the canvas lives
   on the container itself and normal Elementor content is raised above it. */
.floow-spotlight-yes > .floow-reveal-canvas--image,
[data-floow-spotlight="1"] > .floow-reveal-canvas--image{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  pointer-events:none!important;
  z-index:1!important;
  max-width:none!important;
  max-height:none!important;
}

.floow-reveal-image-mode > .e-con-inner,
.floow-reveal-image-mode > .elementor-container{
  position:relative;
  z-index:2;
}
.floow-reveal-image-mode > .elementor-element{
  position:relative;
  z-index:2;
}

@media (hover:none) and (pointer:coarse){
  .floow-spotlight-mobile-off .floow-reveal-canvas{display:none!important}
}

@media (prefers-reduced-motion:reduce){
  .floow-reveal-canvas{will-change:auto}
}

/* v3.5.1: keep Elementor content definitively above the reveal surface without
   changing layout geometry. This prevents headings/buttons from being visually
   affected when the pointer crosses them. */
.floow-spotlight-yes > .e-con-inner,
[data-floow-spotlight="1"] > .e-con-inner,
.floow-spotlight-yes > .elementor-container,
[data-floow-spotlight="1"] > .elementor-container{
  position:relative;
  z-index:20;
}
.floow-spotlight-yes > .elementor-element:not(.elementor-background-video-container),
[data-floow-spotlight="1"] > .elementor-element:not(.elementor-background-video-container){
  position:relative;
  z-index:20;
}

/* v3.8.1 — embeds remain fully interactive. Legacy tracking shields are
   disabled defensively in case cached/old markup is still present. */
.floow-spotlight-embed-shield{
  display:none!important;
  pointer-events:none!important;
}
[data-floow-spotlight="1"] iframe,
[data-floow-spotlight="1"] embed,
[data-floow-spotlight="1"] object{
  pointer-events:auto!important;
}
