@font-face { font-family: 'Pixelify Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url('/fonts/pixelify-sans-latin.woff2') format('woff2'); }
:root, .dark {
  color-scheme: dark;
  --font-pixel: 'Pixelify Sans';
  --background: #020807;
  --foreground: #41ff7b;
  --muted: #081b13;
  --muted-foreground: #82b79b;
  --primary: #24ff69;
  --primary-foreground: #020807;
  --border: #123524;
  --ring: #41ff7b;
  --radius: 0;
}
* { box-sizing: border-box; }
html, body { margin: 0; min-width: 280px; background: var(--background); }
body { color: var(--foreground); font-family: var(--font-pixel), 'Courier New', monospace; }
::selection { background: #41ff7b; color: #020807; }
.landing {
  min-height: 100svh;
  display: grid;
  grid-template-rows: 2rem 1fr 2rem;
  padding: clamp(1.5rem, 4vw, 3.5rem);
  isolation: isolate;
  background: radial-gradient(ellipse at 50% 47%, #092117 0%, #040d09 36%, #020807 68%);
}
.wordmark { font-size: 1.5rem; line-height: 1; letter-spacing: 0.015em; }
.wordmark span { color: #78a68a; }
.announcement { align-self: center; justify-self: center; position: relative; padding: 2rem 0 3rem; }
.floating { animation: float 6s ease-in-out infinite; }
h1 { margin: 0; font-size: clamp(2.25rem, 8.2vw, 7.5rem); font-weight: 400; line-height: 1.1; letter-spacing: -0.035em; text-align: center; text-shadow: 0 0 28px #00ff552a; }
.period { color: #0bcf55; }
.shadow { position: absolute; left: 20%; right: 20%; bottom: 0; height: 0.8rem; border-radius: 50%; background: #0bff5d; filter: blur(20px); opacity: 0.13; animation: drift-shadow 6s ease-in-out infinite; pointer-events: none; }
@keyframes float { 0%, 100% { transform: translateY(6px); } 50% { transform: translateY(-10px); } }
@keyframes drift-shadow { 0%, 100% { transform: scaleX(1); opacity: 0.13; } 50% { transform: scaleX(0.8); opacity: 0.06; } }
@media (prefers-reduced-motion: reduce) { .floating, .shadow { animation: none; transform: none; } }
