/* Homepage motion — only active when JS adds .motion to <html> and user allows motion */
@media (prefers-reduced-motion:no-preference){
  html.motion .rv{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0ms);will-change:opacity,transform}
  html.motion .rv.rv-scale{transform:scale(.94)}
  html.motion .rv.rv-pop{transform:translateY(10px) scale(.85)}
  html.motion .rv.in{opacity:1;transform:none}
  html.motion .hero-ring{opacity:0;transform:rotate(-40deg);transition:opacity .9s ease,transform 1.2s cubic-bezier(.2,.7,.2,1) .15s}
  html.motion .hero-ring.in{opacity:1;transform:none}
  .float-a{animation:floatA 14s ease-in-out infinite}
  .float-b{animation:floatB 18s ease-in-out infinite}
  @keyframes floatA{0%,100%{transform:translate(0,0)}50%{transform:translate(-18px,14px)}}
  @keyframes floatB{0%,100%{transform:translate(0,0)}50%{transform:translate(14px,-12px)}}
  .lift{transition:transform .25s ease,box-shadow .25s ease}
  .lift:hover{transform:translateY(-4px);box-shadow:0 18px 36px rgba(19,41,75,.14)}
  .site-header a,.site-header button{transition:color .2s,background .2s}
}
