11"use client"
22
3- import { useRouter } from "next/navigation"
43import { useState , useCallback , useRef , useEffect } from "react"
5- import { useAuth } from "@/context/AuthContext"
4+
5+ const DEMO_IN_PROGRESS_URL = "https://web-production-859f6b.up.railway.app/"
66
77/* ——— Feature data ——— */
88const FEATURES = [
@@ -253,24 +253,13 @@ function ShootingStars() {
253253}
254254
255255export function FundamentalBlocks ( ) {
256- const router = useRouter ( )
257- const { user, loading, openLoginModal } = useAuth ( )
258256 const [ activeIdx , setActiveIdx ] = useState < number | null > ( null )
259257 const [ paused , setPaused ] = useState ( false )
260258 const [ locked , setLocked ] = useState ( false )
261259 const sectionRef = useRef < HTMLElement > ( null )
262260 const featureVideoRef = useRef < HTMLVideoElement > ( null )
263261 const [ visible , setVisible ] = useState ( false )
264262
265- const handleExplore = useCallback ( ( ) => {
266- if ( loading ) return
267- if ( ! user ) {
268- openLoginModal ( "Sign in to explore First Principle." , "/app" )
269- return
270- }
271- router . push ( "/app" )
272- } , [ loading , user , openLoginModal , router ] )
273-
274263 useEffect ( ( ) => {
275264 const el = sectionRef . current
276265 if ( ! el ) return
@@ -445,28 +434,33 @@ export function FundamentalBlocks() {
445434 } }
446435 />
447436
448- { /* EXPLORE button — centered on logo */ }
437+ { /* Demo link — centered on logo */ }
449438 { activeIdx === null && (
450- < button
451- onClick = { handleExplore }
439+ < a
440+ href = { DEMO_IN_PROGRESS_URL }
441+ target = "_blank"
442+ rel = "noopener noreferrer"
452443 style = { {
453444 position : "absolute" ,
454445 left : "50%" ,
455446 top : "50%" ,
456447 transform : "translate(-50%, -50%)" ,
457448 fontFamily : "var(--font-source-sans), 'Source Sans 3', sans-serif" ,
458- fontSize : "50px " ,
449+ fontSize : "clamp(22px, 4.2vw, 36px) " ,
459450 fontWeight : 400 ,
460- lineHeight : "63px" ,
451+ lineHeight : 1.2 ,
461452 textAlign : "center" ,
462453 color : "#FFFFFF" ,
454+ textDecoration : "none" ,
463455 textShadow : "0px 4px 4px rgba(0, 0, 0, 0.25)" ,
464456 filter : "blur(2px)" ,
465457 transition : "filter 0.3s ease-out" ,
466458 cursor : "pointer" ,
467459 background : "transparent" ,
468460 border : "none" ,
469- padding : 0 ,
461+ padding : "0 12px" ,
462+ maxWidth : "min(300px, 86vw)" ,
463+ boxSizing : "border-box" ,
470464 } }
471465 onMouseEnter = { ( e ) => {
472466 e . currentTarget . style . filter = "blur(0px)"
@@ -479,7 +473,7 @@ export function FundamentalBlocks() {
479473 if ( line ) line . style . opacity = "0"
480474 } }
481475 >
482- EXPLORE
476+ demo in progress
483477 < span
484478 style = { {
485479 display : "block" ,
@@ -491,7 +485,7 @@ export function FundamentalBlocks() {
491485 transition : "opacity 0.3s ease-out" ,
492486 } }
493487 />
494- </ button >
488+ </ a >
495489 ) }
496490 </ div >
497491
0 commit comments