/* Scroll, not a second automatic ticker, is the ribbon's sole motion source. */
.ribbon > div {
  animation: none !important;
  transform: translate3d(calc(-1 * var(--scroll-offset, 0px)), 0, 0);
}

.experience-word { display: inline-block; }
html[data-experience] .experience-lines {
  animation: none !important;
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  clip-path: none;
}
html[data-experience='active'] .experience-lines:not(.visible) .experience-word { opacity: 0; }
html[data-experience='active'] .experience-lines.visible .experience-word {
  animation: hero-line-in .55s calc(var(--line, 0) * .1s) both cubic-bezier(.2,.8,.2,1);
}
html:has(.experience-intro:not(.is-complete)) .hero-copy .experience-word { animation-play-state: paused; }

html:lang(en) .contact-success::after { content: 'ENQUIRY RECEIVED'; }

html[data-experience='static'] { scroll-behavior: auto; }
html[data-experience='static'] :is(.hero-copy > *, .experience-word, .reveal, .ribbon > div, .button, .header-cta, .button span, .header-cta span, .text-link span, .project-card, .project-image img, .attachment-progress i),
html[data-experience='static'] .attachment-field::before,
html[data-experience='static'] .contact-success::after,
html[data-experience='static'] :where(a,button,.project-card):active {
  animation: none !important;
  transition: none !important;
  transform: none !important;
  filter: none !important;
}
html[data-experience='static'] :is(.reveal, .experience-word) { opacity: 1 !important; }
html[data-experience='static'] :is(.experience-intro, .experience-cursor) { display: none !important; }
html[data-experience='static'] .contact-success.experience-stamped::after { opacity: 1; }
html[data-experience='static']::view-transition-group(*),
html[data-experience='static']::view-transition-old(*),
html[data-experience='static']::view-transition-new(*) { animation: none !important; }

@media (prefers-reduced-motion: reduce) {
  @view-transition { navigation: none; }
  ::view-transition-group(*), ::view-transition-old(*), ::view-transition-new(*) { animation: none !important; }
  .experience-word, .hero-copy > *, .reveal, .ribbon > div, .contact-success::after {
    animation: none !important;
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
  }
}
