/* ─── Brass diegetic lamp glow ─────────────────────────────────────────────────
   Single source of truth for the warm-gold lamp blooms painted on the Brass
   board. Both the landing page (.landing__map) and the in-game board surfaces
   (#board-viewport) pull this module in and host three lamp elements with the
   --a / --b / --c modifiers. The lamp positions are fractions of the host box,
   so they overlay the same painted lamps wherever the same crop of the board
   art is shown. Visual treatment — radial-gradient fill, screen blend, the
   3s pulse, the 0s/1s/2s stagger — lives here so a future art or animation
   tweak lands once and every surface inherits it.

   The class name keeps the .landing__lamp prefix it was born with so the
   landing page references it unchanged; the in-game surfaces reuse the same
   class rather than introducing a parallel copy. */

.landing__lamp {
  position: absolute;
  width: 20%;
  height: 20%;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  background: radial-gradient(
    circle,
    rgba(255, 170, 70, 1) 0%,
    rgba(250, 140, 45, 0.72) 30%,
    rgba(235, 105, 25, 0.34) 55%,
    transparent 72%
  );
  mix-blend-mode: screen;
  animation: landing-lamp-pulse 3s ease-in-out infinite;
}

/* Fractional positions from the operator's marked image (temp/brass-board-glow.jpg).
   Identical inside landing's .landing__map crop and the in-game board image. */
.landing__lamp--a {
  left: 91.3%;
  top: 61.7%;
  animation-delay: 0s;
}

.landing__lamp--b {
  left: 22.1%;
  top: 91.0%;
  animation-delay: 1s;
}

.landing__lamp--c {
  left: 67.8%;
  top: 92.9%;
  animation-delay: 2s;
}

@keyframes landing-lamp-pulse {
  0%,
  100% {
    opacity: 0.57;
    transform: translate(-50%, -50%) scale(1);
  }
  50% {
    opacity: 0.64;
    transform: translate(-50%, -50%) scale(1.16);
  }
}

/* Honour reduced-motion: hold the lamps at their mid-bloom appearance
   without the pulse so the glow stays diegetic but never animates. */
@media (prefers-reduced-motion: reduce) {
  .landing__lamp {
    animation: none;
    opacity: 0.61;
  }
}
