/* Solid editorial surfaces extend the flat web system; real covers stay intact. */
.operation-card {
  --operation-surface: var(--operation-bg-indigo);
  background: var(--operation-surface);
}
.operation-card[data-operation-tone="lilac"] { --operation-surface: var(--operation-bg-lilac); }
.operation-card[data-operation-tone="blue"] { --operation-surface: var(--operation-bg-blue); }
.operation-card[data-operation-tone="amber"] { --operation-surface: var(--operation-bg-amber); }
.operation-card[data-operation-tone="mint"] { --operation-surface: var(--operation-bg-mint); }

.operation-art {
  position: relative;
  background: transparent;
  color: var(--brand);
}
.operation-art.has-image { background: var(--card); }
.operation-geometry {
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
  color: var(--brand);
  pointer-events: none;
}
.operation-geometry-orbit {
  transform-origin: 170px 158px;
  animation: operation-orbit var(--operation-motion-orbit) linear infinite;
  animation-play-state: paused;
}
.operation-geometry-tile, .operation-geometry-arch {
  animation: operation-drift var(--operation-motion-drift) ease-in-out infinite alternate;
  animation-play-state: paused;
}
.operation-geometry-arch { animation-delay: -4s; }
.operation-geometry.is-motion-visible > g { animation-play-state: running; }
.home-banner:hover .operation-geometry > g,
.home-banner:focus-within .operation-geometry > g,
.operation-card:hover .operation-geometry > g,
.operation-card:focus-within .operation-geometry > g,
.operation-motion-paused .operation-geometry > g { animation-play-state: paused; }

.operations-side .operation-card {
  background: var(--operation-surface);
  padding: var(--space-16);
  overflow: hidden;
}
.operations-side .operations-cards { gap: var(--space-12); }
.operations-side .operation-card + .operation-card {
  border-top: 0;
  margin-top: 0;
  padding-top: var(--space-16);
}
.operations-side .operation-art:not(.has-image) {
  border-radius: 0;
  width: var(--space-44);
  height: var(--space-56);
}
.operations-side .operation-copy p {
  display: block;
  overflow: visible;
}
.operations-side .operation-link { margin-top: var(--space-8); }
.operation-tags span { background: var(--card); }
.operation-link:hover { background: var(--card); }
.operations-band .operation-card { border-bottom: 0; }
.operations-band .operation-feature .operation-art {
  width: calc(var(--space-96) + var(--space-24));
  padding: var(--space-12);
}
.operations-band .operation-compact .operation-art:not(.has-image) { border-radius: 0; }

@keyframes operation-orbit {
  to { transform: rotate(360deg); }
}
@keyframes operation-drift {
  from { transform: translateY(calc(var(--operation-motion-travel) * -1)); }
  to { transform: translateY(var(--operation-motion-travel)); }
}
@media (max-width: 640px) {
  .operations-band .operation-feature .operation-art {
    width: var(--space-80);
    padding: var(--space-8);
  }
}
@media (prefers-reduced-motion: reduce) {
  .operation-geometry-orbit, .operation-geometry-tile, .operation-geometry-arch {
    animation: none;
    transform: none;
  }
}
