/* ===================================================================
 * Vacuum Sealer Expert — cinematic.css
 * Reveal-on-scroll, parallax, depth, atmospheric backdrops.
 * =================================================================== */

[data-vse-reveal]{opacity:0;transform:translateY(20px);transition:opacity .8s ease, transform .8s ease;}
[data-vse-reveal].is-in{opacity:1;transform:none;}

[data-vse-reveal-stagger] > *{opacity:0;transform:translateY(14px);transition:opacity .6s ease, transform .6s ease;}
[data-vse-reveal-stagger].is-in > *{opacity:1;transform:none;}
[data-vse-reveal-stagger].is-in > *:nth-child(2){transition-delay:.08s;}
[data-vse-reveal-stagger].is-in > *:nth-child(3){transition-delay:.16s;}
[data-vse-reveal-stagger].is-in > *:nth-child(4){transition-delay:.24s;}
[data-vse-reveal-stagger].is-in > *:nth-child(5){transition-delay:.32s;}

/* Hero parallax: layers translated by JS */
.vse-hero__layer{will-change:transform;transition:transform .6s ease-out;}

/* Ambient halos on dark sections */
.vse-dash::before,
.vse-news__inner::before{
  content:"";position:absolute;left:50%;top:-20%;transform:translateX(-50%);
  width:120%;height:60%;background:radial-gradient(closest-side, rgba(16,185,129,.18), transparent 70%);
  pointer-events:none;z-index:1;
}

/* Card depth */
.vse-product,
.vse-kit,
.vse-card,
.vse-setups__card{position:relative;}
.vse-product::before,
.vse-kit::before,
.vse-card::before,
.vse-setups__card::before{
  content:"";position:absolute;inset:0;border-radius:inherit;
  background:linear-gradient(180deg, rgba(255,255,255,.08), transparent 30%);
  pointer-events:none;mix-blend-mode:overlay;
}
.vse-product::after,
.vse-kit::after,
.vse-setups__card::after{
  content:"";position:absolute;inset:0 0 70% 0;border-radius:inherit;
  background:linear-gradient(180deg, rgba(255,255,255,.05), transparent);
  pointer-events:none;
}

/* Aurora pulses on live elements */
.vse-pulse-dot,
.vse-hero__pulse{position:relative;}

/* Hero word reveal */
.vse-word{transition:opacity .5s ease, transform .5s ease;display:inline-block;}
.vse-word.is-in{opacity:1;transform:none;}

/* SVG strokes */
.vse-icon{display:inline-block;vertical-align:middle;}
