/* hero-rotation-v1 — cast time-swap on rising-v9b slots (motion-preview only) */

.ensemble-stage.ik {
  position: relative;
}

.ik-rotation-pause {
  position: absolute;
  z-index: 35;
  right: var(--page-gutter, 40px);
  bottom: calc(32 * var(--ik-rotation-u, 1px));
  box-sizing: border-box;
  width: 44px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: rgba(243, 236, 220, 0.78);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.ik-rotation-pause svg {
  width: 20px;
  height: 20px;
  display: block;
  fill: currentColor;
}

.ik-rotation-pause:focus {
  outline: none;
}

.ik-rotation-pause:focus-visible {
  outline: 2px solid rgba(184, 156, 255, 0.85);
  outline-offset: 4px;
}

.ik-rotation-pause[hidden] {
  display: none !important;
}

.ensemble-stage.ik[data-ik-rotation="transition"] .pf .tag {
  transition: none;
}

@media (prefers-reduced-motion: reduce) {
  .ik-rotation-pause {
    display: none !important;
  }
}

/* Orchestrator (gate c8bea445): on phones/tablets the diving cast passes behind the copy band, and the art under the
   letters made the lead and the actions unreadable. During a rotation only, a soft night scrim rises under the copy
   (full-bleed, fading in from its top) so the text stays legible; it clears when the cast is back. No line, no box edge. */
@container (max-width: 999px) {
  .ensemble-stage.ik .copy::before {
    content: "";
    position: absolute;
    z-index: -1;
    left: -20px;
    right: -20px;
    top: -48px;
    bottom: -32px;
    background: linear-gradient(to bottom, rgb(18 8 40 / 0), rgb(18 8 40 / 0.85) 48px);
    opacity: 0;
    transition: opacity 240ms ease;
    pointer-events: none;
  }
  .ensemble-stage.ik[data-ik-rotation="transition"] .copy::before {
    opacity: 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ensemble-stage.ik .copy::before { transition: none; }
}
