/* NOVVIA Slider Advanced CSS v5.0 — neue Effekte + Layer-Features */

/* Reduced-Motion respektieren */
body.nv-slider-reduced-motion [data-nvs-parallax],
body.nv-slider-reduced-motion [data-nvs-tilt],
body.nv-slider-reduced-motion [data-nvs-mouse-follow],
body.nv-slider-reduced-motion .ns-slide canvas { display: none !important; }
body.nv-slider-reduced-motion .swiper-wrapper { transition: none !important; }

/* Lottie-Container default */
[data-nvs-lottie] { display: inline-block; min-width: 60px; min-height: 60px; }

/* Hover-State-Transition default */
[data-nvs-hover] { transition: all .3s cubic-bezier(.4,0,.2,1); cursor: pointer; }

/* Tilt: GPU-Beschleunigung erzwingen */
[data-nvs-tilt] { transform-style: preserve-3d; will-change: transform; }

/* Parallax-Layer brauchen position relative oder absolute */
[data-nvs-parallax] { will-change: transform; }

/* Hotspot-Verbesserungen (animierter Puls bei aktivem Tooltip) */
.ns-hotspot.is-active .ns-hotspot-dot { animation: nvs-hotspot-pulse 1.5s ease-in-out infinite; }
@keyframes nvs-hotspot-pulse {
  0%, 100% { box-shadow: 0 0 0 0 var(--ns-hs-color, #6366f1); }
  50%      { box-shadow: 0 0 0 10px transparent; }
}

/* Swiper-Effects-spezifische CSS-Hooks */
.swiper.swiper-cube .swiper-cube-shadow { display: none; } /* sauberer */
.swiper.swiper-coverflow .swiper-slide { background-color: rgba(255,255,255,.04); }

/* Cards-Effect-Schatten verstaerken */
.swiper.swiper-cards .swiper-slide {
  box-shadow: 0 12px 32px rgba(15,23,42,.18), 0 4px 12px rgba(15,23,42,.08);
  border-radius: 16px;
}

/* A/B-Variant-Badge im Admin (visuell sichtbar) */
.ns-ab-badge {
  position: absolute; top: 12px; right: 12px; z-index: 10;
  background: rgba(99,102,241,.85); color: #fff;
  padding: 4px 10px; border-radius: 99px;
  font-size: 11px; font-weight: 600;
  letter-spacing: .04em;
}

/* Pause-on-Hover Indicator (subtil) */
.swiper:hover .swiper-pagination-bullet { background: rgba(255,255,255,.5); }

/* Lazy-Load Placeholder Shimmer */
.ns-lazy-placeholder {
  background: linear-gradient(90deg, #f1f5f9 0px, #e2e8f0 40px, #f1f5f9 80px);
  background-size: 200px 100%;
  animation: nvs-shimmer 1.4s linear infinite;
}
@keyframes nvs-shimmer {
  0% { background-position: -200px 0; }
  100% { background-position: calc(200px + 100%) 0; }
}
