/* ═══════════════════════════════════════════════════════════════
   DJ SAM – Motion-Layer (Premium Smooth-Scroll + Scroll-Reveals)
   Rein additiv. Aendert kein Layout, keine Farben, keine Schrift.
   Nur Bewegung. Respektiert prefers-reduced-motion.
   Intro-Film (samloop) bleibt unangetastet.
   ═══════════════════════════════════════════════════════════════ */

/* Wenn Lenis aktiv ist (nur Desktop): natives smooth-scroll aus,
   damit es sich nicht mit der Traegheit ueberlagert. */
html.lenis, html.lenis body{ scroll-behavior: auto; }
html.lenis{ height: auto; }
html.lenis.lenis-smooth{ scroll-behavior: auto; }
html.lenis.lenis-smooth iframe{ pointer-events: none; }
html.lenis.lenis-stopped{ overflow: hidden; }

/* Verwaltete Reveal-Elemente: bestehende .7s-Transition abschalten,
   die Werte setzt motion.js pro Frame inline (echtes Scrubbing).
   Gilt NUR wenn der Motion-Layer laeuft (html.mo-on). */
html.mo-on .rv,
html.mo-on .nbr,
html.mo-on .nb-mask{
  transition: none !important;
  animation: none !important;   /* rvSafe-Fallback nicht noetig, JS steuert */
}

/* Sicherheits-Netz: bei reduzierter Bewegung ist der Layer ohnehin aus,
   aber falls mo-on je gesetzt sein sollte -> alles sichtbar. */
@media (prefers-reduced-motion: reduce){
  html.mo-on .rv,
  html.mo-on .nbr,
  html.mo-on .nb-mask{
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
}
