fix home page
This commit is contained in:
@@ -31,113 +31,62 @@ export function Hero() {
|
||||
{/* ─── Base Dark Background Panel (Clipped diagonally) ─── */}
|
||||
<div className="hero-dark-panel select-none pointer-events-none">
|
||||
|
||||
{/* Flat Dotted World Map Layer */}
|
||||
<div className="hero-map-layer select-none mix-blend-screen">
|
||||
{/* Subtle Background Dot Texture (Minimal, barely visible) */}
|
||||
<div className="hero-map-layer select-none">
|
||||
<Image
|
||||
src="/images/slider-glob.png"
|
||||
alt="Dotted World Map"
|
||||
alt="Subtle Background"
|
||||
fill
|
||||
sizes="(max-width: 768px) 100vw, 75vw"
|
||||
className="object-contain object-left"
|
||||
sizes="(max-width: 768px) 100vw, 40vw"
|
||||
className="object-contain object-left-top"
|
||||
priority
|
||||
/>
|
||||
|
||||
{/* Animated Route Lines & Glowing Location Nodes */}
|
||||
<svg
|
||||
className="absolute inset-0 w-full h-full opacity-85 pointer-events-none"
|
||||
viewBox="0 0 1000 800"
|
||||
preserveAspectRatio="none"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
>
|
||||
<defs>
|
||||
<filter id="heroRouteGlow" x="-50%" y="-50%" width="200%" height="200%">
|
||||
<feGaussianBlur stdDeviation="5" result="blur" />
|
||||
<feMerge>
|
||||
<feMergeNode in="blur" />
|
||||
<feMergeNode in="SourceGraphic" />
|
||||
</feMerge>
|
||||
</filter>
|
||||
</defs>
|
||||
{/* Glowing nodes */}
|
||||
<circle cx="150" cy="180" r="8" className="fill-[#bd34fe] opacity-70 animate-pulse" filter="url(#heroRouteGlow)" />
|
||||
<circle cx="150" cy="180" r="2.5" className="fill-white" />
|
||||
|
||||
<circle cx="350" cy="110" r="8" className="fill-[#bd34fe] opacity-70 animate-pulse" filter="url(#heroRouteGlow)" />
|
||||
<circle cx="350" cy="110" r="2.5" className="fill-white" />
|
||||
|
||||
<circle cx="280" cy="300" r="8" className="fill-[#bd34fe] opacity-70 animate-pulse" filter="url(#heroRouteGlow)" />
|
||||
<circle cx="280" cy="300" r="2.5" className="fill-white" />
|
||||
|
||||
<circle cx="480" cy="220" r="8" className="fill-[#bd34fe] opacity-70 animate-pulse" filter="url(#heroRouteGlow)" />
|
||||
<circle cx="480" cy="220" r="2.5" className="fill-white" />
|
||||
|
||||
<circle cx="650" cy="165" r="8" className="fill-[#bd34fe] opacity-70 animate-pulse" filter="url(#heroRouteGlow)" />
|
||||
<circle cx="650" cy="165" r="2.5" className="fill-white" />
|
||||
|
||||
<circle cx="780" cy="250" r="8" className="fill-[#bd34fe] opacity-70 animate-pulse" filter="url(#heroRouteGlow)" />
|
||||
<circle cx="780" cy="250" r="2.5" className="fill-white" />
|
||||
|
||||
<circle cx="580" cy="140" r="8" className="fill-[#bd34fe] opacity-70 animate-pulse" filter="url(#heroRouteGlow)" />
|
||||
<circle cx="580" cy="140" r="2.5" className="fill-white" />
|
||||
|
||||
{/* Arc dashed lines with moving stroke-dash animation */}
|
||||
<path
|
||||
d="M150,180 Q250,120 350,110"
|
||||
fill="none"
|
||||
stroke="#c02cff"
|
||||
strokeWidth="2"
|
||||
strokeDasharray="6,6"
|
||||
className="animate-route opacity-70"
|
||||
filter="url(#heroRouteGlow)"
|
||||
/>
|
||||
<path
|
||||
d="M150,180 Q200,240 280,300"
|
||||
fill="none"
|
||||
stroke="#c02cff"
|
||||
strokeWidth="2"
|
||||
strokeDasharray="6,6"
|
||||
className="animate-route opacity-70"
|
||||
filter="url(#heroRouteGlow)"
|
||||
/>
|
||||
<path
|
||||
d="M350,110 Q420,165 480,220"
|
||||
fill="none"
|
||||
stroke="#c02cff"
|
||||
strokeWidth="2"
|
||||
strokeDasharray="6,6"
|
||||
className="animate-route opacity-70"
|
||||
filter="url(#heroRouteGlow)"
|
||||
/>
|
||||
<path
|
||||
d="M280,300 Q380,250 480,220"
|
||||
fill="none"
|
||||
stroke="#c02cff"
|
||||
strokeWidth="2"
|
||||
strokeDasharray="6,6"
|
||||
className="animate-route opacity-70"
|
||||
filter="url(#heroRouteGlow)"
|
||||
/>
|
||||
<path
|
||||
d="M480,220 Q520,180 580,140 Q630,120 650,165"
|
||||
fill="none"
|
||||
stroke="#c02cff"
|
||||
strokeWidth="2"
|
||||
strokeDasharray="6,6"
|
||||
className="animate-route opacity-70"
|
||||
filter="url(#heroRouteGlow)"
|
||||
/>
|
||||
<path
|
||||
d="M480,220 Q620,250 780,250"
|
||||
fill="none"
|
||||
stroke="#c02cff"
|
||||
strokeWidth="2"
|
||||
strokeDasharray="6,6"
|
||||
className="animate-route opacity-70"
|
||||
filter="url(#heroRouteGlow)"
|
||||
/>
|
||||
</svg>
|
||||
</div>
|
||||
|
||||
{/* Minimal Route Animation (2-3 thin lines only, very subtle) */}
|
||||
<svg
|
||||
className="absolute inset-0 w-full h-full pointer-events-none"
|
||||
viewBox="0 0 1000 800"
|
||||
preserveAspectRatio="none"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
>
|
||||
<defs>
|
||||
<filter id="heroRouteGlow" x="-50%" y="-50%" width="200%" height="200%">
|
||||
<feGaussianBlur stdDeviation="3" result="blur" />
|
||||
<feMerge>
|
||||
<feMergeNode in="blur" />
|
||||
<feMergeNode in="SourceGraphic" />
|
||||
</feMerge>
|
||||
</filter>
|
||||
</defs>
|
||||
{/* Minimal glow nodes - only 2 small ones at top */}
|
||||
<circle cx="140" cy="100" r="5" className="fill-[#bd34fe] opacity-20 animate-pulse" filter="url(#heroRouteGlow)" />
|
||||
<circle cx="140" cy="100" r="1.5" className="fill-white" />
|
||||
|
||||
<circle cx="300" cy="80" r="5" className="fill-[#bd34fe] opacity-20 animate-pulse" filter="url(#heroRouteGlow)" />
|
||||
<circle cx="300" cy="80" r="1.5" className="fill-white" />
|
||||
|
||||
{/* Only 2 very thin route lines at top - staying clear of text area */}
|
||||
<path
|
||||
d="M140,100 Q220,85 300,80"
|
||||
fill="none"
|
||||
stroke="#c02cff"
|
||||
strokeWidth="1"
|
||||
strokeDasharray="4,4"
|
||||
className="animate-route opacity-15"
|
||||
filter="url(#heroRouteGlow)"
|
||||
/>
|
||||
<path
|
||||
d="M300,80 Q370,110 420,140"
|
||||
fill="none"
|
||||
stroke="#c02cff"
|
||||
strokeWidth="1"
|
||||
strokeDasharray="4,4"
|
||||
className="animate-route opacity-12"
|
||||
filter="url(#heroRouteGlow)"
|
||||
/>
|
||||
</svg>
|
||||
|
||||
{/* Soft purple radial glow behind the bike near the diagonal edge (clipped) */}
|
||||
<div className="absolute right-0 top-1/4 z-0 h-[60%] w-[45%] rounded-full bg-primary/45 blur-[120px] opacity-50 pointer-events-none" />
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user