@@ -659,7 +330,7 @@ Happy hacking!
className="font-bold"
style={{
fontSize: "clamp(24px, 6vw, 80px)",
- color: "#000080",
+ color: "#ffffff",
}}
initial={{ scaleY: 0 }}
animate={{ scaleY: 1 }}
@@ -670,8 +341,8 @@ Happy hacking!
className="font-semibold"
style={{
fontSize: "clamp(10px, 1.5vw, 18px)",
- color: "#000080",
- fontFamily: "Monomaniac One, monospace",
+ color: "#ffffff",
+ fontFamily: "Orbitron, monospace",
}}
>
{days === 1 ? "Day" : "Days"}
@@ -683,7 +354,7 @@ Happy hacking!
className="font-bold mb-[2vw]"
style={{
fontSize: "clamp(24px, 6vw, 80px)",
- color: "#000080",
+ color: "#ffffff",
}}
>
:
@@ -695,7 +366,7 @@ Happy hacking!
className="font-bold"
style={{
fontSize: "clamp(24px, 6vw, 80px)",
- color: "#000080",
+ color: "#ffffffff",
}}
initial={{ scaleY: 0 }}
animate={{ scaleY: 1 }}
@@ -706,8 +377,8 @@ Happy hacking!
className="font-semibold"
style={{
fontSize: "clamp(10px, 1.5vw, 18px)",
- color: "#000080",
- fontFamily: "Monomaniac One, monospace",
+ color: "#ffffffff",
+ fontFamily: "Orbitron, monospace",
}}
>
{hours === 1 ? "Hour" : "Hours"}
@@ -719,7 +390,7 @@ Happy hacking!
className="font-bold mb-[2vw]"
style={{
fontSize: "clamp(24px, 6vw, 80px)",
- color: "#000080",
+ color: "#ffffffff",
}}
>
:
@@ -731,7 +402,7 @@ Happy hacking!
className="font-bold"
style={{
fontSize: "clamp(24px, 6vw, 80px)",
- color: "#000080",
+ color: "#ffffff",
}}
initial={{ scaleY: 0 }}
animate={{ scaleY: 1 }}
@@ -742,8 +413,8 @@ Happy hacking!
className="font-semibold"
style={{
fontSize: "clamp(10px, 1.5vw, 18px)",
- color: "#000080",
- fontFamily: "Monomaniac One, monospace",
+ color: "#ffffff",
+ fontFamily: "Orbitron, monospace",
}}
>
{minutes === 1 ? "Minute" : "Minutes"}
@@ -755,7 +426,7 @@ Happy hacking!
className="font-bold mb-[2vw]"
style={{
fontSize: "clamp(24px, 6vw, 80px)",
- color: "#000080",
+ color: "#ffffff",
}}
>
:
@@ -767,7 +438,7 @@ Happy hacking!
className="font-bold"
style={{
fontSize: "clamp(24px, 6vw, 80px)",
- color: "#000080",
+ color: "#ffffff",
}}
animate={secondsControls}
initial={{ scaleY: 1 }}
@@ -778,8 +449,8 @@ Happy hacking!
className="font-semibold"
style={{
fontSize: "clamp(10px, 1.5vw, 18px)",
- color: "#000080",
- fontFamily: "Monomaniac One, monospace",
+ color: "#ffffff",
+ fontFamily: "Orbitron, monospace",
}}
>
{seconds === 1 ? "Second" : "Seconds"}
@@ -793,8 +464,8 @@ Happy hacking!
className="text-center font-bold mb-[1.5vw]"
style={{
fontSize: "clamp(14px, 2.5vw, 32px)",
- color: "#000080",
- fontFamily: "Monomaniac One, monospace",
+ color: "#ffffff",
+ fontFamily: "Orbitron, monospace",
}}
>
{bannerMessage}
@@ -806,8 +477,8 @@ Happy hacking!
className="text-center font-semibold"
style={{
fontSize: "clamp(16px, 3vw, 24px)",
- color: "#000080",
- fontFamily: "Monomaniac One, monospace",
+ color: "#ffffff",
+ fontFamily: "Orbitron, monospace",
}}
initial={{ opacity: 0, y: -30 }}
animate={{ opacity: 1, y: 0 }}
@@ -823,8 +494,8 @@ Happy hacking!
className="text-center font-bold mb-[2vw] relative z-10"
style={{
fontSize: "clamp(14px, 2.5vw, 32px)",
- color: "#000080",
- fontFamily: "Monomaniac One, monospace",
+ color: "#ffffff",
+ fontFamily: "Orbitron, monospace",
}}
>
{bannerMessage}
@@ -835,7 +506,7 @@ Happy hacking!
{/* Register & Discord Buttons - kept at original size */}
Register now
@@ -874,16 +544,16 @@ Happy hacking!
{/* Discord Button */}
window.open("http://discord.hackpsu.org", "_blank")}
- className="relative overflow-hidden rounded-full hover:scale-105 transition-transform duration-300 flex items-center justify-center mt-[-60px] md:mt-0"
+ className="relative overflow-hidden rounded-full hover:scale-105 transition-transform duration-300 flex items-center justify-center"
style={{
width: "clamp(400px, 50vw, 700px)",
- height: "clamp(160px, 20vw, 280px)",
+ height: "clamp(80px, 20vw, 280px)",
}}
whileHover={{ scale: 1.05 }}
whileTap={{ scale: 0.95 }}
>
@@ -924,59 +593,6 @@ Happy hacking!
- {/* Crab Army Easter Egg */}
- {showCrabArmy &&
- crabArmy.map((crab) => (
-
-
-
- ))}
-
{/* Memory Game Modal */}
{
const [order, setOrder] = useState(SECTIONS);
+ const [graffittiKey, setGraffittiKey] = useState(0);
+ const graffittiRef = useRef(null);
const { data: statsSectionFlag } = useFlagState("StatsSectionEnabled");
- // Easter egg; spinning the floaties
- const [clicked1, setClicked1] = useState(false);
- const [clicked2, setClicked2] = useState(false);
- const [clicked3, setClicked3] = useState(false);
+ useEffect(() => {
+ const observer = new IntersectionObserver(
+ (entries) => {
+ entries.forEach((entry) => {
+ if (entry.isIntersecting) {
+ setGraffittiKey((prev) => prev + 1);
+ }
+ });
+ },
+ { threshold: 0.1 }
+ );
+
+ if (graffittiRef.current) {
+ observer.observe(graffittiRef.current);
+ }
+
+ return () => {
+ if (graffittiRef.current) {
+ observer.unobserve(graffittiRef.current);
+ }
+ };
+ }, []);
function rotateLeft(steps: number) {
setOrder((prev) => {
@@ -70,242 +94,15 @@ const InfoSections: React.FC = () => {
return (
- {/* Animated Float Elements */}
- {
- setClicked1(true);
- setTimeout(() => setClicked1(false), 1000);
- }}
- >
-
-
-
- {
- setClicked2(true);
- setTimeout(() => setClicked2(false), 1000);
- }}
- >
-
-
-
- {
- setClicked3(true);
- setTimeout(() => setClicked3(false), 1000);
- }}
- >
-
-
-
{/* Header */}
{
className="text-center"
>
Info
-
+ {/* Graffiti Image - Bottom Right (Desktop Only) */}
+
+
+
+
+ {/* Cyber Hacky Image - Bottom Left (Desktop Only) with Oscillation */}
+
+
+
+
{/* Main Content Container */}
-
+
{/* Hexagon Section + Info Panel */}
-
+
{/* Hexagon Container */}
{
{/* Info Panel */}
{order[0].label}
{order[0].content}
@@ -401,7 +245,7 @@ const InfoSections: React.FC = () => {
style={{
fontSize: "clamp(24px, 5vw, 48px)",
color: colors[i % colors.length],
- fontFamily: "Monomaniac One, monospace",
+ fontFamily: "Orbitron, monospace",
}}
>
{s.value}
@@ -484,23 +328,29 @@ function Hex({ section, slot, containerRotation, onClick }: HexProps) {
duration: 0.8,
}}
>
-