/* ═══ MOTION ═══ scroll reveals, word-by-word headings, card tilt, path draw, smooth scroll (Lenis) */
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-stopped{overflow:hidden}
.reveal{opacity:0;transform:translateY(18px)}
.reveal.in{opacity:1;transform:none;transition:opacity .7s,transform .7s cubic-bezier(.2,.7,.2,1)}
[data-words] .word{display:inline-block;opacity:0;transform:translateY(.5em)}
[data-words].in .word{opacity:1;transform:none;transition:opacity .55s,transform .55s cubic-bezier(.2,.7,.2,1)}
.draw{stroke-dasharray:1;stroke-dashoffset:1px}
.draw.in{stroke-dashoffset:0;transition:stroke-dashoffset 1.5s cubic-bezier(.35,0,.15,1)}
.tilt{perspective:900px}
.tilt>.tilt-inner{transform-style:preserve-3d;transition:transform .4s cubic-bezier(.2,.7,.2,1);will-change:transform}
.tilt:hover>.tilt-inner{transition:transform 80ms linear}
@media (prefers-reduced-motion:reduce){.reveal,.reveal.in,[data-words] .word,[data-words].in .word{opacity:1;transform:none;transition:none}.draw,.draw.in{stroke-dasharray:none;stroke-dashoffset:0;transition:none}.tilt>.tilt-inner{transform:none!important;transition:none}}
