/* The animation layer intentionally defines no resting sizes, colors or type. */
html.sm-motion { --sm-ease: cubic-bezier(.22,1,.36,1); }
html.sm-motion .reveal,
html.sm-motion .reveal.in,
html.sm-motion .stagger > *,
html.sm-motion .pw-reveal,
html.sm-motion .pa-about-reveal {
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
  transition: none !important;
}
html.sm-motion .su-enter { animation: none; }
.sm-word { display: inline; }
html.sm-motion .su-loading > div > i { transform-origin: left center; }
html.sm-motion #page-transition {
  background: var(--bg, #faf9f6);
  clip-path: inset(100% 0 0);
  transition: clip-path 350ms var(--sm-ease), opacity 120ms, visibility 120ms;
}
html.sm-motion .transitioning #page-transition { clip-path: inset(0); }
html.sm-motion .nav a { transition-timing-function: var(--sm-ease); }
html.sm-motion .motion-paused #page-transition { transition: none !important; }
@media (prefers-reduced-motion: reduce) {
  html.sm-motion { scroll-behavior: auto !important; }
  html.sm-motion #page-transition { transition: none !important; }
}
html.sm-motion:has(.motion-paused) { scroll-behavior: auto !important; }
