/* ── Base ───────────────────────────────────────────────── */
html, body {
  margin: 0;
  padding: 0;
  background: #050505;
  color: #F5F2EA;
  font-family: 'Space Grotesk', sans-serif;
  -webkit-font-smoothing: antialiased;
}
html { overflow-x: clip; scroll-behavior: smooth; }
body { overflow-x: clip; }
a { color: #E9C46A; text-decoration: none; }
a:hover { color: #F5DFA0; }
::selection { background: #E9C46A; color: #050505; }
* { box-sizing: border-box; }

/* ── Keyframes (from the original design) ───────────────── */
@keyframes arcDraw   { 0%{stroke-dashoffset:1400} 55%{stroke-dashoffset:0} 100%{stroke-dashoffset:0} }
@keyframes floatP    { 0%{transform:translateY(0);opacity:0} 12%{opacity:.7} 88%{opacity:.5} 100%{transform:translateY(-46vh);opacity:0} }
@keyframes heroArc   { 0%{stroke-dashoffset:900;opacity:0} 12%{opacity:.9} 70%{stroke-dashoffset:0;opacity:.9} 100%{stroke-dashoffset:0;opacity:0} }
@keyframes glowPulse { 0%,100%{opacity:.35} 50%{opacity:.7} }
@keyframes tickerUp  { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-2px)} }

/* ── Responsive ─────────────────────────────────────────── */
@media (max-width: 860px) {
  nav { padding: 18px 22px !important; }
  .nav-right { gap: 16px !important; }
  .nav-right a[href="#analysis"],
  .nav-right a[href="#community"] { display: none !important; }

  section { padding-left: 22px !important; padding-right: 22px !important; }

  #heroCopy { padding: 0 22px 12vh !important; }

  .cycle-grid { grid-template-columns: 1fr !important; }

  .meme-grid {
    grid-template-columns: 1fr !important;
    gap: 8vh !important;
  }
  .meme-grid > div:first-child {
    max-width: 320px;
    margin: 0 auto;
    width: 100%;
  }

  .ta-stats { grid-template-columns: repeat(2, 1fr) !important; }
  .ta-stats > div:nth-child(2) { border-right: none !important; }
}

@media (max-width: 480px) {
  .ta-stats { grid-template-columns: 1fr !important; }
  .ta-stats > div { border-right: none !important; }
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
    scroll-behavior: auto !important;
  }
}
