@media(min-width:768px) and (hover:hover) and (pointer:fine) {
  body [data-av-button-motion][data-av-motion-ready] {
    /* The supplied 2x reference moves the arrow and line end by 26 px. */
    --av-motion-shift:calc(13 * 100vw / 1440);
  }
  body [data-av-button-motion][data-av-motion-ready] :is([data-av-motion-label],[data-av-motion-arrow]) {
    transition:opacity 250ms ease,translate 250ms ease;
  }
  body [data-av-button-motion][data-av-motion-ready][data-av-motion-static] {
    position:relative;
  }
  /* Keep the original border's size in layout. Its replacement occupies the
     exact same pixels at rest and can extend without resizing the button. */
  body [data-av-button-motion][data-av-motion-ready][data-av-motion-underline="border"] {
    border-bottom-color:transparent!important;
  }
  body [data-av-button-motion][data-av-motion-ready][data-av-motion-underline="border"]::after {
    content:"";position:absolute;left:0;right:0;top:auto;bottom:0;
    width:auto;height:0;margin:0;padding:0;box-sizing:content-box;
    border:0;border-bottom-width:inherit;border-bottom-style:inherit;
    border-bottom-color:var(--av-motion-border);
    background:none;transform:translateY(100%);pointer-events:none;
  }
  body [data-av-button-motion][data-av-motion-ready][data-av-motion-underline]::after {
    transition:opacity 250ms ease,right 250ms ease;
  }
  body [data-av-button-motion][data-av-motion-ready]:hover {
    background-color:var(--av-motion-bg)!important;
    background-image:var(--av-motion-image)!important;
    opacity:var(--av-motion-opacity)!important;
    filter:var(--av-motion-filter)!important;
    transform:var(--av-motion-transform)!important;
    color:var(--av-motion-color)!important;
  }
  /* Fade the original artwork over its unchanged background, as in the PNG. */
  body [data-av-button-motion][data-av-motion-ready]:hover :is([data-av-motion-label],[data-av-motion-arrow]) {
    opacity:calc(var(--av-motion-part-opacity,1) * .7)!important;
    filter:var(--av-motion-part-filter,none)!important;
    color:var(--av-motion-part-color)!important;
  }
  body [data-av-button-motion][data-av-motion-ready]:hover [data-av-motion-arrow] {
    transform:var(--av-motion-arrow-transform)!important;
    translate:var(--av-motion-shift) 0;
  }
  body [data-av-button-motion][data-av-motion-ready][data-av-motion-underline]:hover::after {
    opacity:.7;
    right:calc(-1 * var(--av-motion-shift));
  }
}
@media(prefers-reduced-motion:reduce) {
  body [data-av-button-motion][data-av-motion-ready],
  body [data-av-button-motion][data-av-motion-ready] :is([data-av-motion-label],[data-av-motion-arrow]),
  body [data-av-button-motion][data-av-motion-ready][data-av-motion-underline]::after {transition:none}
  body [data-av-button-motion][data-av-motion-ready]:hover [data-av-motion-arrow] {translate:none}
  body [data-av-button-motion][data-av-motion-ready][data-av-motion-underline]:hover::after {right:0}
}
