/* Entrance motion, measured from the live Wix page on 2026-10-20 (headed Chromium, 1440x1000): live
   runs every entrance for 1.2s with a 1ms delay, once, when the element enters the viewport, sliding
   text up from a line below its own box. At that length a heading read as blank for most of a second
   while scrolling, and the slide made copy look empty while it travelled. Every block now fades in
   place, over 0.5s, starting half a viewport early (motion.js), so at a reading pace the text has
   finished appearing before it is in sight and nothing on the page moves vertically on scroll.
   Elements are hidden only while html.motion-armed is set, which motion.js does only when it can also
   reveal them. */
@keyframes motion-fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.motion-armed [data-motion]:not(.motion-in) {
  opacity: 0;
}
.motion-in[data-motion="fade"] {
  animation: motion-fadeIn 0.5s cubic-bezier(0.445, 0.05, 0.55, 0.95) 1ms both;
}
