/* WOPD: DESIGN — BUILD FROM: deploy/_shared/commons/patterns/parallax + deploy/_shared/css-scroll/scroll-t.mjs + deploy/_shared/ss-motion/ss-motion.css + DESIGN.md GOLD 1.4 + RING.md
 * REF: deploy/_shared/commons/patterns/parallax/parallax.css (law #3, still-first poster)
 * BRAIN: proof-required — headless 320+1440 stills + reduced.css stillFallback0 TIME0 preserveMeaning
 * ring: commons
 * seed: inherit (parallax is scrub, not personality — the door seed still owns transitions)
 * still: ./still.md
 * reduced: replace (planes stack as designed still — reduced.css)
 * when-not: login, vs-card, receipt, RCS, email, dense product tables, theserails, weshipads
 *
 * C-PARALLAX — three planes max: near / mid / far. Far moves least.
 * t from the raf-scroll-t contract (--c-t via ../../css-scroll/scroll-t.mjs), or the
 * native scroll-timeline tier (../../css-scroll/scroll-timeline.css). Never both on one subtree.
 * LAW #3: payload numbers never ride a plane. First paint: hero already in place (t=0 → zero offset).
 * WCAG: decorative, non-essential, disableable. Z-travel is vestibular — replace on reduce, never slow down.
 * PERFECTED 2026-09-06 muse-spark-1.2 scaffold — precedent field-grid HARNESS-6-6, ss-motion Law 6
 */

[data-c-parallax] {
  position: relative;
  overflow: clip;
}

[data-c-parallax] [data-plane] {
  will-change: transform;
}

[data-c-driver="js"] [data-c-parallax] [data-plane="near"],
[data-c-parallax][data-c-driver="js"] [data-plane="near"] {
  transform: translate3d(0, calc(var(--c-t, 0) * var(--c-travel-near, 96px) * -1), 0);
}
[data-c-driver="js"] [data-c-parallax] [data-plane="mid"],
[data-c-parallax][data-c-driver="js"] [data-plane="mid"] {
  transform: translate3d(0, calc(var(--c-t, 0) * var(--c-travel-mid, 48px) * -1), 0);
}
[data-c-driver="js"] [data-c-parallax] [data-plane="far"],
[data-c-parallax][data-c-driver="js"] [data-plane="far"] {
  transform: translate3d(0, calc(var(--c-t, 0) * var(--c-travel-far, 16px) * -1), 0);
}

[data-c-parallax] [data-payload] {
  transform: none !important;
}

/* BRAIN still proof: reduced-motion stacks planes at composed positions — poster readable without travel */
@media (prefers-reduced-motion: reduce) {
  [data-c-parallax] [data-plane="near"],
  [data-c-parallax] [data-plane="mid"],
  [data-c-parallax] [data-plane="far"] {
    transform: none !important;
  }
}
