/* NTV Scroll Boost — Aggressif (0.2.1) */

html.ntv-scroll-boost-aggressive{
  scroll-behavior: auto !important;
  -webkit-text-size-adjust: 100%;
}

/* Coupe transitions/animations lourdes (sans casser la logique) */
html.ntv-scroll-boost-aggressive *,
html.ntv-scroll-boost-aggressive *::before,
html.ntv-scroll-boost-aggressive *::after{
  animation-duration: 0.001ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: 0.001ms !important;
  scroll-behavior: auto !important;
}

/* Neutralise les effets blur/backdrop-filter */
html.ntv-scroll-boost-aggressive [style*="backdrop-filter"],
html.ntv-scroll-boost-aggressive [style*="-webkit-backdrop-filter"],
html.ntv-scroll-boost-aggressive .ntv-glass,
html.ntv-scroll-boost-aggressive .ntv-sticky-cta,
html.ntv-scroll-boost-aggressive .ntv-funnel-sticky,
html.ntv-scroll-boost-aggressive .ntvf-sticky-cta,
html.ntv-scroll-boost-aggressive .ntvf-sticky{
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

/* Reveal animations : visible immédiatement */
html.ntv-scroll-boost-aggressive .ntv-reveal,
html.ntv-scroll-boost-aggressive .ntv-reveal.is-in,
html.ntv-scroll-boost-aggressive .ntvfx-reveal,
html.ntv-scroll-boost-aggressive [data-aos],
html.ntv-scroll-boost-aggressive .aos-init,
html.ntv-scroll-boost-aggressive .wow{
  opacity: 1 !important;
  transform: none !important;
}

/* Réduit coût des petites anims CTA */
html.ntv-scroll-boost-aggressive .ntv-shine,
html.ntv-scroll-boost-aggressive .ntv-pulse,
html.ntv-scroll-boost-aggressive .ntv-glow{
  animation: none !important;
}

/* Optimise le rendu des sections longues (Chrome/Edge only) */
@supports (content-visibility: auto){
  html.ntv-scroll-boost-aggressive section,
  html.ntv-scroll-boost-aggressive .ntv-section,
  html.ntv-scroll-boost-aggressive .ntv-funnel-section{
	content-visibility: auto;
	contain-intrinsic-size: 900px;
  }
}

/* Sticky CTA mobile : plus compacte + safe-area */
html.ntv-scroll-boost-aggressive .ntv-sticky-cta,
html.ntv-scroll-boost-aggressive .ntvf-sticky-cta{
  padding-bottom: max(10px, env(safe-area-inset-bottom)) !important;
}

/* Preuve sociale (remplacement “800 personnes ont rejoint…”) */
.ntv-sb-social-proof{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255,138,58,.10);
  border: 1px solid rgba(255,138,58,.25);
  color: #0f172a;
  font-weight: 700;
  line-height: 1;
}
.ntv-sb-social-proof strong{ font-weight: 800; }
.ntv-sb-dot{
  width: 10px; height: 10px;
  border-radius: 999px;
  background: #ff8a3a;
  box-shadow: 0 0 0 6px rgba(255,138,58,.18);
}

/* Dark mode */
body.ntv-theme-dark .ntv-sb-social-proof,
body.ntv-dark .ntv-sb-social-proof,
html[data-theme="dark"] .ntv-sb-social-proof{
  color: #e5e7eb;
  background: rgba(255,138,58,.12);
  border-color: rgba(255,138,58,.28);
}

/* Nettoie les puces vides restantes */
html.ntv-scroll-boost-aggressive li:empty{ display:none !important; }
