/* Visible without scripting. Replace the old blur reveal with clear, composited movement. */
body.v6 [data-reveal], body.v6 [data-reveal].is-revealed,
body.v6 .v6-plate[data-reveal] {
  opacity: 1; filter: none; transform: none; transition: none; will-change: auto;
}
body.v6.v6-motion-ready [data-motion] {
  --motion-x: 0px; --motion-y: 24px; --motion-scale: 1;
  opacity: 0; transform: translate3d(var(--motion-x),var(--motion-y),0) scale(var(--motion-scale));
}
body.v6.v6-motion-ready [data-motion="media"] { --motion-y: 40px; --motion-scale: .985; }
body.v6.v6-motion-ready [data-motion].motion-in {
  opacity: 1; transform: none;
  animation: v6-arrive 560ms ease-out var(--motion-delay,0ms) both;
}
body.v6.v6-motion-ready [data-motion="media"].motion-in { animation-duration: 720ms; }
body.v6.v6-motion-ready [data-motion].motion-instant { animation: none; }
@keyframes v6-arrive {
  from { opacity: 0; transform: translate3d(var(--motion-x),var(--motion-y),0) scale(var(--motion-scale)); }
  to { opacity: 1; transform: translate3d(0,0,0) scale(1); }
}
/* Hover feedback stays quick, separate from the longer page choreography. */
body.v6 .v6-cta, body.v6 .v6-cta__arr { transition-duration: 180ms; transition-timing-function: ease-out; }
@media (max-width:599px) {
  body.v6.v6-motion-ready [data-motion] { --motion-y: 16px; }
  body.v6.v6-motion-ready [data-motion="media"] { --motion-y: 24px; --motion-scale: 1; }
}
@media (prefers-reduced-motion:reduce) {
  body.v6 [data-motion], body.v6.v6-motion-ready [data-motion],
  body.v6.v6-motion-ready [data-motion].motion-in { opacity:1; transform:none; animation:none; transition:none; }
}
@media print {
  body.v6.v6-motion-ready [data-motion] { opacity:1; transform:none; animation:none; }
}
