body {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100vw;
  height: 100dvh;
  background-color: #000;
  margin: 0;
  overflow: hidden;
}

svg {
  width: 90vw;
  max-width: 1280px;
  height: auto;
  overflow: visible;
  transform: translate3d(0, 0, 0);
}

svg text {
  fill: #fff;
  opacity: 0.9;
  text-shadow: 
    0 0 8px rgba(255,255,255,0.3),
    0 0 12px rgba(255,255,255,0.2),
    0.5px 0.5px 1px rgba(255,0,0,0.1),
    -0.5px -0.5px 1px rgba(0,255,255,0.1);
}

@keyframes grain {
  0%, 100% { transform: translate(0, 0) }
  10% { transform: translate(-5%, -5%) }
  20% { transform: translate(5%, 5%) }
  30% { transform: translate(-7%, -7%) }
  40% { transform: translate(7%, 7%) }
  50% { transform: translate(-5%, 5%) }
  60% { transform: translate(5%, -5%) }
  70% { transform: translate(7%, -7%) }
  80% { transform: translate(-7%, 7%) }
  90% { transform: translate(5%, -5%) }
}

#grain {
  animation: grain 4s steps(8) infinite;
}