diff --git a/src/components/LoveFusion.tsx b/src/components/LoveFusion.tsx index dc63b01..7f151cf 100644 --- a/src/components/LoveFusion.tsx +++ b/src/components/LoveFusion.tsx @@ -6,47 +6,48 @@ import { Hachi_Maru_Pop } from 'next/font/google'; const logoFont = Hachi_Maru_Pop({ weight: '400', subsets: ['latin'] }); // 💕 + ✉️ = 💌, "love" + "envelope" = "lovelope.app": the two slide in from -// opposite sides, and the instant they'd overlap they hand off to a white -// flash (bigger + brighter than the glyphs so neither is ever visibly "in -// front of" the other) which then blooms back out into the merged result. -// Plays once, on mount, then holds its final state (no loop). -const times = [0, 0.22, 0.42, 0.52, 0.62, 0.74, 0.88, 1]; -const transition = { duration: 2.4, times, ease: 'easeInOut' as const }; +// opposite sides and fade out AS they approach center, so opacity hits zero +// right when they'd otherwise overlap - neither ever renders "in front of" +// the other. The flash on the icon row is a bonus bloom on top of that, not +// the only thing hiding the seam. Plays once, on mount, then holds. +const times = [0, 0.25, 0.45, 0.58, 0.7, 0.85, 1]; +const transition = { duration: 1.8, times, ease: 'easeInOut' as const }; +const willChange = { willChange: 'transform, opacity' } as const; export default function LoveFusion({ className = '' }: { className?: string }) { return (