From a69b12642237844e60bef7cb8abac7cbd074b53b Mon Sep 17 00:00:00 2001
From: Fuwn <contact@fuwn.net>
Date: Fri, 8 May 2026 07:47:47 +0000
Subject: fix(scroll): route LandingHero scroll-down through Lenis

Lenis disables native CSS smooth scroll, so window.scrollTo({behavior:"smooth"}) jumps instantly. Expose the Lenis instance via a store and scroll through it, falling back to native when unavailable.
---
 src/routes/+layout.svelte | 5 +++++
 1 file changed, 5 insertions(+)

(limited to 'src/routes/+layout.svelte')

diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte
index 7f962884..fa0f4a25 100644
--- a/src/routes/+layout.svelte
+++ b/src/routes/+layout.svelte
@@ -41,6 +41,7 @@ import { dev } from "$app/environment";
 import { injectAnalytics } from "@vercel/analytics/sveltekit";
 import Lenis from "lenis";
 import "lenis/dist/lenis.css";
+import lenisStore from "$stores/lenis";
 import type { LayoutData } from "./$types";
 
 injectSpeedInsights();
@@ -99,6 +100,8 @@ onMount(async () => {
 	if (browser) {
 		lenis = new Lenis({ autoRaf: true });
 
+		lenisStore.set(lenis);
+
 		if (await localforage.getItem("redirect")) {
 			window.location.href = (await localforage.getItem("redirect")) ?? "/";
 
@@ -169,6 +172,8 @@ onDestroy(() => {
 	if (notificationInterval) clearInterval(notificationInterval);
 
 	lenis?.destroy();
+
+	lenisStore.set(undefined);
 });
 
 $: {
-- 
cgit v1.2.3

