/* Adopted LIME SIGNAL. Stationary circular mounts, independently rotating artwork. */
.hero-lime-art {
  --disc-size: min(67vw, 1040px);
  --orbit-size: min(76vw, 1180px);
  --circle-x: calc(45% + var(--disc-size) / 2);
  --circle-y: 50%;
}
.lime-disc, .lime-orbit {
  position: absolute;
  /* Use layout offsets: WebKit rounds percentage translations differently for
     the two diameters, shifting otherwise concentric marks by fractions of a px. */
  left: calc(var(--circle-x) - var(--circle-size) / 2);
  top: calc(var(--circle-y) - var(--circle-size) / 2);
  width: var(--circle-size);
  aspect-ratio: 1;
}
.lime-disc { --circle-size: var(--disc-size); border-radius: 50%; overflow: hidden; background: #e7ff5b; }
.lime-orbit { --circle-size: var(--orbit-size); }
.lime-disc-rotor, .lime-orbit-rotor { display: block; width: 100%; height: 100%; transform-origin: 50% 50%; }
.lime-disc-rotor svg, .lime-orbit-rotor svg { display: block; width: 100%; height: 100%; }
.lime-orbit-rotor svg { overflow: visible; }
.lime-light-sector { fill: #fff; opacity: .2; }
.lime-index { fill: #5a681e; opacity: .5; }
.lime-orbit-track { stroke: #69732c; stroke-opacity: .32; stroke-width: 1; }
.lime-orbit-marker { fill: #5d682a; opacity: .7; }
.hero-lime-art svg * { vector-effect: non-scaling-stroke; }
@media (max-width: 900px) and (min-width: 601px) {
  .hero-lime-art { --disc-size: 80vw; --orbit-size: 90vw; --circle-x: 88vw; }
}
@media (max-width: 600px) {
  .hero-lime-art { --disc-size: 116vw; --orbit-size: 136vw; --circle-x: 74vw; --circle-y: calc(47% + 58vw); }
}
