/* Lenis keeps the document as the scroll surface; touch remains native. */
html.lenis,html.lenis body{height:auto}
html.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}

/* Ambient coins sit behind the glass cards (2) and foreground clouds (3). */
.hero-coins{--coin-horizon:598px;position:absolute;inset:0;z-index:1;opacity:.84;pointer-events:none;perspective:1000px;mask-image:url(#hero-cloud-depth)}
.hero-coin-field{position:absolute;inset:0;mask-image:linear-gradient(to bottom,#000 calc(var(--coin-horizon) - 110px),transparent var(--coin-horizon))}
.cloud-depth-definitions{position:absolute;width:0;height:0;pointer-events:none;overflow:hidden}
.hero-copy{z-index:5}
.hero-coin-position{position:absolute;width:var(--size);height:var(--size);transform:translate3d(0,var(--coin-scroll,0px),0);will-change:transform}
.hero-coin-entrance,.hero-coin-float{width:100%;height:100%;transform-style:preserve-3d}
.hero-coin-entrance{animation:hero-coin-enter 1.5s cubic-bezier(.16,.6,.25,1) var(--enter-delay) both}
.hero-coin-float{animation:hero-coin-drift var(--duration) ease-in-out var(--phase) infinite}
.hero-coins .coin-disc{inset:0;width:100%;height:100%;padding:19%;animation:none;pointer-events:none;transform:rotateX(var(--rx,12deg)) rotateY(var(--ry,0deg)) rotateZ(var(--rz,0deg));box-shadow:3px 7px #9bbfaf,7px 14px 25px #165b3d1c,inset 0 0 0 3px #fff}
.hero-coins .coin-disc img{width:100%;height:100%;object-fit:contain;pointer-events:none}
.hero-coin-0{--size:112px;left:8%;top:220px;--ry:22deg;--rz:-16deg}
.hero-coin-1{--size:78px;left:25%;top:115px;--ry:15deg;--rz:19deg}
.hero-coin-2{--size:132px;left:15%;top:438px;--ry:12deg;--rz:-9deg}
.hero-coin-3{--size:88px;right:25%;top:118px;--ry:-12deg;--rz:8deg}
.hero-coin-4{--size:138px;right:17%;top:265px;--ry:-23deg;--rz:16deg}
.hero-coin-5{--size:80px;right:19%;top:470px;--ry:-16deg;--rz:-14deg}
.hero-coin-6{--size:72px;right:2%;top:465px;--ry:-25deg;--rz:22deg}
@keyframes hero-coin-enter{from{opacity:0;transform:translate3d(0,20px,-35px) scale(.94)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}
@keyframes hero-coin-drift{0%,100%{transform:translate3d(-1px,0,0) rotateZ(-1.2deg)}50%{transform:translate3d(2px,-10px,0) rotateZ(1.2deg)}}
.hero-coin-4 .hero-coin-float{animation:coin-through-right-cloud 16s ease-in-out 2.5s both infinite}
.hero-coin-2 .hero-coin-float{animation:coin-through-left-cloud 19s ease-in-out -5s infinite}
.hero-coin-5 .hero-coin-float{animation:coin-through-lower-wisp 17s ease-in-out -7s infinite}
@keyframes coin-through-right-cloud{0%,100%{transform:translate3d(-48px,-7px,0) rotateZ(-2deg)}50%{transform:translate3d(42px,12px,0) rotateZ(2deg)}}
@keyframes coin-through-left-cloud{0%,100%{transform:translate3d(10px,0,0) rotateZ(-1deg)}50%{transform:translate3d(-55px,-24px,0) rotateZ(2deg)}}
@keyframes coin-through-lower-wisp{0%,100%{transform:translate3d(-8px,5px,0) rotateZ(-2deg)}50%{transform:translate3d(18px,-55px,0) rotateZ(2deg)}}
@media(min-width:1500px){.hero-coins{--coin-horizon:670px}.hero-coin-0{left:13%;top:235px}.hero-coin-1{left:29%;top:132px}.hero-coin-2{left:19%;top:478px}.hero-coin-3{right:29%;top:130px}.hero-coin-4{right:13%;top:290px}.hero-coin-5{right:22%;top:515px}.hero-coin-6{right:5%;top:560px}}
@media(max-width:1000px){.hero-coin-0{--size:84px;left:1%;top:218px}.hero-coin-1,.hero-coin-3,.hero-coin-6{display:none}.hero-coin-2{--size:90px;left:3%;top:445px}.hero-coin-4{--size:100px;right:1%;top:270px}.hero-coin-5{--size:70px;right:3%;top:500px}}
@media(max-width:700px){.hero-coins{--coin-horizon:560px}.hero-coin-0{--size:52px;left:5%;top:100px}.hero-coin-1{display:block;--size:68px;left:-28px;top:425px}.hero-coin-2,.hero-coin-5{display:none}.hero-coin-3{display:block;--size:61px;right:6%;top:110px}.hero-coin-4{--size:83px;right:-30px;top:420px}.hero-coins .coin-disc{border-width:3px;box-shadow:2px 4px #9bbfaf,4px 7px 15px #165b3d17,inset 0 0 0 2px #fff}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.hero-coin-position{transform:none;will-change:auto}.hero-coin-entrance,.hero-coins .hero-coin-float{animation:none}}
