diff --git a/src/app/configure/page.tsx b/src/app/configure/page.tsx
new file mode 100644
index 0000000..83b66a7
--- /dev/null
+++ b/src/app/configure/page.tsx
@@ -0,0 +1,43 @@
+'use client';
+
+import Link from 'next/link';
+import { ConfiguratorSection } from '@/components/ConfiguratorSection';
+
+export default function ConfigurePage() {
+ return (
+ <>
+ {/* Back button */}
+
+
+ Back
+
+
+
+ >
+ );
+}
diff --git a/src/app/page.tsx b/src/app/page.tsx
index 375df35..f00e3e2 100644
--- a/src/app/page.tsx
+++ b/src/app/page.tsx
@@ -4,7 +4,6 @@ import { useRef } from "react";
import { ClientOnly } from "@/components/ClientOnly";
import { ScrollScene } from "@/components/ScrollScene";
import { ScrollOverlays } from "@/components/ScrollOverlays";
-import { ConfiguratorSection } from "@/components/ConfiguratorSection";
export default function HomePage() {
const scrollContainerRef = useRef(null);
@@ -29,11 +28,6 @@ export default function HomePage() {
-
- {/* Configurator section */}
-
-
-
>
);
}
diff --git a/src/components/ScrollOverlays.tsx b/src/components/ScrollOverlays.tsx
index 8b37455..665e860 100644
--- a/src/components/ScrollOverlays.tsx
+++ b/src/components/ScrollOverlays.tsx
@@ -2,6 +2,7 @@
import { useScroll, useTransform, motion } from 'framer-motion';
import { ReactNode } from 'react';
+import Link from 'next/link';
interface SectionProps {
children: ReactNode;
@@ -253,6 +254,51 @@ export function ScrollOverlays() {
+ {/* Configure CTA — appears at the very end of scroll */}
+
+
+ Configure Your G1
+
+
+
+ Build & Order Your Robot
+
+
+
{/* Scroll indicator mapped to vanish rapidly when scrolled */}
((set, get) => ({
// Merge: server wins for label/price, but keep local modelPath if server doesn't have one
const localItems = get().items;
const localMap = new Map(localItems.map((l) => [l.id, l]));
- const merged = serverItems.map((s) => {
+ const merged: PricingItem[] = serverItems.map((s) => {
const local = localMap.get(s.id);
return {
...s,