@@ -18,6 +18,62 @@ export default function Download() {
1818 </ p >
1919 </ div >
2020
21+ { /* TestFlight Early Access Banner */ }
22+ < motion . div
23+ initial = { { opacity : 0 , y : 30 } }
24+ whileInView = { { opacity : 1 , y : 0 } }
25+ viewport = { { once : true } }
26+ className = "mb-12"
27+ >
28+ < div className = "relative overflow-hidden rounded-2xl" >
29+ { /* Animated gradient border */ }
30+ < div className = "absolute inset-0 bg-gradient-to-r from-omni-olive via-omni-teal to-omni-olive bg-[length:200%_100%] animate-gradient-x rounded-2xl" />
31+ < div className = "relative m-[2px] bg-omni-black rounded-2xl p-8" >
32+ < div className = "flex flex-col md:flex-row items-center justify-between gap-6" >
33+ < div className = "flex items-center gap-4" >
34+ < div className = "relative" >
35+ < motion . div
36+ animate = { {
37+ boxShadow : [
38+ '0 0 20px rgba(95,171,165,0.5)' ,
39+ '0 0 40px rgba(95,171,165,0.8)' ,
40+ '0 0 20px rgba(95,171,165,0.5)' ,
41+ ] ,
42+ } }
43+ transition = { { duration : 2 , repeat : Infinity } }
44+ className = "w-16 h-16 bg-gradient-to-br from-omni-teal to-omni-olive rounded-xl flex items-center justify-center"
45+ >
46+ < svg className = "w-10 h-10 text-white" fill = "currentColor" viewBox = "0 0 24 24" >
47+ < path d = "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z" />
48+ </ svg >
49+ </ motion . div >
50+ < span className = "absolute -top-1 -right-1 px-2 py-0.5 bg-omni-teal text-xs font-bold rounded-full text-white" > BETA</ span >
51+ </ div >
52+ < div className = "text-left" >
53+ < h3 className = "text-2xl font-bold text-white mb-1" > Get Early Access via TestFlight</ h3 >
54+ < p className = "text-gray-400" >
55+ Test new features < span className = "text-omni-teal font-semibold" > 48 hours before</ span > they hit the App Store
56+ </ p >
57+ </ div >
58+ </ div >
59+ < motion . a
60+ href = "https://testflight.apple.com/join/SzxQGmMM"
61+ target = "_blank"
62+ rel = "noopener noreferrer"
63+ whileHover = { { scale : 1.05 } }
64+ whileTap = { { scale : 0.95 } }
65+ className = "px-8 py-4 bg-gradient-to-r from-omni-teal to-omni-olive text-white font-bold rounded-full hover:shadow-2xl transition-all duration-300 glow-teal whitespace-nowrap flex items-center gap-2"
66+ >
67+ < svg className = "w-5 h-5" fill = "currentColor" viewBox = "0 0 24 24" >
68+ < path d = "M18.71 19.5c-.83 1.24-1.71 2.45-3.05 2.47-1.34.03-1.77-.79-3.29-.79-1.53 0-2 .77-3.27.82-1.31.05-2.3-1.32-3.14-2.53C4.25 17 2.94 12.45 4.7 9.39c.87-1.52 2.43-2.48 4.12-2.51 1.28-.02 2.5.87 3.29.87.78 0 2.26-1.07 3.81-.91.65.03 2.47.26 3.64 1.98-.09.06-2.17 1.28-2.15 3.81.03 3.02 2.65 4.03 2.68 4.04-.03.07-.42 1.44-1.38 2.83M13 3.5c.73-.83 1.94-1.46 2.94-1.5.13 1.17-.34 2.35-1.04 3.19-.69.85-1.83 1.51-2.95 1.42-.15-1.15.41-2.35 1.05-3.11z" />
69+ </ svg >
70+ Join TestFlight
71+ </ motion . a >
72+ </ div >
73+ </ div >
74+ </ div >
75+ </ motion . div >
76+
2177 < div className = "grid md:grid-cols-2 gap-8 mb-16" >
2278 < motion . div
2379 initial = { { opacity : 0 , x : - 50 } }
0 commit comments