/*!
 * corporate.css — production-root additions on top of css/d12.css.
 * 1. .motion-toggle — the WCAG 2.2.2 pause/play control (visible, fixed,
 *    ≥24×24 target, focus-visible ring, icon swap on engaged state).
 * 2. html.ge-motion-paused — kills every decorative animation loop:
 *    band subtree (band-drift-live + all ge-cycle-*), home stars drift,
 *    scroll cue. `animation:none` (not paused) so getAnimations() on the
 *    band/motion layer returns [] — 0 running on the T3-2 instrument —
 *    and the d12.js band controller's play() resume loop has nothing to
 *    fight (it iterates an empty list). Essential UI transitions are
 *    NOT touched.
 * 3. html.no-js — the same decorative loops must not auto-start when no
 *    pause mechanism can exist (no JS ⇒ no control); mirrors the
 *    reduced-motion static presentation. ge-cycle-* are already no-js
 *    gated by d12.css; this closes band-drift-live, stars and cue.
 * 4. .site-footer__ubn — the Unified Business Number line, all pages.
 */

/* ── 1. the control ─────────────────────────────────────────────────── */
.motion-toggle {
  position: fixed;
  z-index: 90;
  left: clamp(0.8rem, 2vw, 1.6rem);
  bottom: max(clamp(0.8rem, 2vw, 1.4rem), env(safe-area-inset-bottom, 0px));
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  min-width: 24px;
  min-height: 32px;
  padding: 0.5rem 0.85rem;
  background: rgba(7, 7, 9, 0.85);
  border: 1px solid rgba(192, 138, 62, 0.6);
  border-radius: 999px;
  color: #f2e8d5;
  font: 500 0.66rem/1 var(--font-mono, ui-monospace, monospace);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  cursor: pointer;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}
.motion-toggle:hover {
  border-color: #c08a3e;
  background: rgba(12, 16, 20, 0.94);
}
.motion-toggle:focus-visible {
  outline: 2px solid #2e8c8c;
  outline-offset: 2px;
}
.motion-toggle__icon {
  width: 12px;
  height: 12px;
  flex: none;
  fill: currentColor;
}
.motion-toggle__play {
  display: none;
}
html.ge-motion-paused .motion-toggle__pause {
  display: none;
}
html.ge-motion-paused .motion-toggle__play {
  display: block;
}
/* no JS ⇒ no working control (and, below, no auto-motion needing one) */
html.no-js .motion-toggle {
  display: none;
}
/* Home: the hero entity index owns the lower-left; park the control lower-right
   (scroll cue ends ~110px above it at ≥1101px; cue is hidden below 1101px). */
.ge--home .motion-toggle {
  left: auto;
  right: clamp(0.8rem, 2vw, 1.6rem);
}
/* Reserve a rest lane for the fixed control at full scroll (footer) and, on
   small screens, under the hero index — so it never sits ON text at rest. */
.site-footer {
  padding-bottom: calc(var(--s7, 2.5rem) + 3rem);
}
@media (max-width: 860px) {
  .ge--home .hero__index {
    padding-bottom: 3.2rem;
  }
}

/* ── 2. engaged state: zero decorative animations ───────────────────── */
html.ge-motion-paused .band--live .band__stage {
  animation: none !important;
  transform: scale(1.06);
}
html.ge-motion-paused .band--live *,
html.ge-motion-paused .band--live *::before,
html.ge-motion-paused .band--live *::after {
  animation: none !important;
}
html.ge-motion-paused .ge--home .stars {
  animation: none !important;
}
html.ge-motion-paused .ge--home .hero__cue,
html.ge-motion-paused .ge--home .hero__cue::after {
  animation: none !important;
}

/* ── 3. no-JS arm: decorative loops do not auto-start ───────────────── */
html.no-js .band--live .band__stage {
  animation: none;
  transform: scale(1.06);
}
html.no-js .ge--home .stars {
  animation: none;
}
html.no-js .ge--home .hero__cue,
html.no-js .ge--home .hero__cue::after {
  animation: none;
}

/* ── 4. footer Unified Business Number ──────────────────────────────── */
/* No color declaration — INTENTIONAL (F-5 fix, 2026-08-06). The line
   inherits the footer's own per-context muted colour: --slate #47585c on
   the paper inner pages (6.84:1 on #f7f5f0) and --ivory-dim
   rgba(242,232,213,.62) on the dark home footer (renders rgb(153,147,135)
   on #070709 — 6.59:1). The previously pinned var(--slate) measured
   2.70:1 on the home footer's #070709 — a WCAG AA fail at 12px. Do not
   re-pin a colour here without checking BOTH backdrops. */
.site-footer__ubn {
  margin-block: 0;
  flex-basis: 100%;
  font-size: 0.85em;
  letter-spacing: 0.02em;
}
