:root {
  --anim-easing: cubic-bezier(0.215, 0.61, 0.355, 1);
  --anim-offset: 6px;
}

[data-anim] {
  min-height: 1px;
  will-change: opacity, transform, filter;
  opacity: 0;
  filter: blur(4px);
  transform: translateY(var(--anim-offset));
  transform-origin: center;
}

/* Lenis scroll optimizations */
html.lenis {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden !important;
}

.lenis.lenis-smooth iframe {
  pointer-events: none;
}
