/* ── E9: Lenis smooth scroll + scroll-velocity effects ── */

/* Lenis base — let it manage overflow */
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;
}

/* Scroll-velocity card tilt */
.pick-card,
.ev-card {
  --skew: 0deg;
  transition: transform 300ms cubic-bezier(0.23, 1, 0.32, 1),
              box-shadow 300ms cubic-bezier(0.23, 1, 0.32, 1);
}
.pick-card.velocity-tilt {
  transform: skewY(var(--skew)) translateY(-6px);
}

/* Nav auto-hide on scroll down */
.site-nav {
  transform: translateY(0);
  transition: transform 380ms cubic-bezier(0.23, 1, 0.32, 1),
              background 320ms ease,
              backdrop-filter 320ms ease;
  will-change: transform;
}
.site-nav.nav-hidden {
  transform: translateY(-100%);
}
.site-nav.nav-visible {
  transform: translateY(0);
}

/* Scroll progress ring on hero */
#scroll-hint {
  position: absolute;
  bottom: 36px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  opacity: 1;
  transition: opacity 400ms ease;
  pointer-events: none;
  z-index: 4;
}
#scroll-hint.hidden { opacity: 0; }
#scroll-hint svg {
  animation: scroll-hint-bob 1.8s ease-in-out infinite;
}
#scroll-hint span {
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  color: oklch(93% 0.27 122 / 0.55);
  text-transform: uppercase;
}
@keyframes scroll-hint-bob {
  0%,100% { transform: translateY(0); }
  50%      { transform: translateY(5px); }
}

/* Horizontal section parallax stripe */
.section-stripe {
  overflow: hidden;
}
.section-stripe-inner {
  will-change: transform;
}
