.echo-wall__dots{opacity:.04;color:hsl(var(--foreground));background-image:radial-gradient(circle,currentColor 1px,transparent 0);background-size:22px 22px}.echo-wall__rings{height:340px;background:radial-gradient(closest-side,transparent 58%,hsl(var(--primary)/.1) 59%,transparent 62%),radial-gradient(closest-side,transparent 72%,hsl(var(--secondary)/.08) 73%,transparent 76%),radial-gradient(closest-side,transparent 86%,hsl(var(--accent)/.06) 87%,transparent 90%);background-repeat:no-repeat;background-position:top;background-size:420px 420px,620px 620px,860px 860px;mask-image:linear-gradient(180deg,#000,transparent 85%);-webkit-mask-image:linear-gradient(180deg,#000,transparent 85%)}.echo-wall__pulse{animation:echo-pulse 1.8s ease-in-out infinite}.echo-marquee{display:flex;flex-direction:column;gap:1rem;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}.echo-row{overflow:hidden;padding:.75rem 0}.echo-track{display:flex;gap:1rem;width:max-content;animation:echo-scroll 64s linear infinite;will-change:transform}.echo-track--reverse{animation-duration:82s;animation-direction:reverse}.echo-row:hover .echo-track{animation-play-state:paused}@keyframes echo-scroll{0%{transform:translateX(0)}to{transform:translateX(calc(-50% - .5rem))}}@keyframes echo-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.6);opacity:.5}}@media (prefers-reduced-motion:reduce){.echo-track,.echo-wall__pulse{animation:none}}