/* JN Premium Effects — Frontend CSS | by J Nayeem */
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}
.lenis.lenis-stopped{overflow:hidden}
.lenis.lenis-scrolling iframe{pointer-events:none}

/* BTT */
#jnpe-btt{
  position:fixed;display:flex;align-items:center;justify-content:center;
  cursor:pointer;z-index:99990;opacity:0;visibility:hidden;
  border-radius:var(--btt-r,50%);background:var(--btt-bg,#111827);
  color:var(--btt-ic,#fff);
  width:52px;height:52px;bottom:30px;right:30px;
}
.jnpe-btt-icon{display:flex;align-items:center;justify-content:center;width:42%;height:42%;position:relative;z-index:2}
.jnpe-btt-icon svg{width:100%;height:100%}
.jnpe-ring-svg{position:absolute;top:0;left:0;width:100%;height:100%;transform:rotate(-90deg);pointer-events:none}

/* Cursor */
#jnpe-cursor{position:fixed;top:0;left:0;pointer-events:none;z-index:999999}
#jnpe-c-dot,#jnpe-c-ring{
  position:fixed;border-radius:50%;pointer-events:none;
  transform:translate(-50%,-50%);will-change:transform;top:0;left:0;
}
#jnpe-c-text{
  position:fixed;pointer-events:none;
  transform:translate(-50%,-50%);top:0;left:0;
  font-size:9px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;opacity:0;transition:opacity .3s;white-space:nowrap;
  font-family:-apple-system,sans-serif;
}

/* Transition overlay */
#jnpe-transition{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:999997}

/* Scroll reveal base */
[data-jnpe-reveal]{will-change:opacity,transform}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){
  #jnpe-btt,#jnpe-c-dot,#jnpe-c-ring,[data-jnpe-reveal]{transition:none!important;animation:none!important}
}
