/* Desktop pointer feedback. */
@media(min-width:801px) and (hover:hover) and (pointer:fine){
 html body .button:not(.floating-cart):not(:disabled){transform-origin:center;transition:scale 320ms cubic-bezier(.22,.61,.36,1),background-position 420ms ease,background-color 180ms ease,border-color 180ms ease,color 180ms ease,filter 180ms ease,box-shadow 180ms ease!important}
 html body .button:not(.secondary):not(.floating-cart):not(:disabled){background-image:linear-gradient(110deg,#ff641f 0%,#ff7b35 32%,#ff641f 65%,#ed5418 100%);background-size:190% 100%;background-position:100% 50%}
 html body .button:not(.floating-cart):not(:disabled):hover{scale:1.008}
 html body .button:not(.secondary):not(.floating-cart):not(:disabled):hover{background-position:0% 50%;filter:brightness(1.025)}
 html body .button.secondary:not(.floating-cart):not(:disabled):hover{background-color:rgba(255,100,31,.09);border-color:#ed8e57}
 html body .button:not(.floating-cart):not(:disabled):active{scale:.992;filter:brightness(.97);transition-duration:140ms!important}
 html body .poster-hero .poster-catalog-action>span{background-image:linear-gradient(110deg,#ff641f 0%,#ff7b35 32%,#ff641f 65%,#ed5418 100%);background-size:190% 100%;background-position:100% 50%;transition:background-position 420ms ease!important}
 html body .poster-hero .poster-catalog-action:hover{scale:1.008}
 html body .poster-hero .poster-catalog-action:hover>span{background-position:0% 50%}
}
@media(min-width:801px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:reduce){
 html body .button:not(.floating-cart):not(:disabled){transition:background-color 120ms ease,border-color 120ms ease,filter 120ms ease!important}
 html body .button:not(.floating-cart):not(:disabled):hover,html body .button:not(.floating-cart):not(:disabled):active,html body .poster-hero .poster-catalog-action:hover{scale:1}
 html body .poster-hero .poster-catalog-action>span{transition:none!important}
}

/* Keep the hover highlight flowing until activation or pointer exit. */
@keyframes stp-hover-flow{0%,100%{background-position:100% 50%}50%{background-position:0% 50%}}
@media(min-width:801px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 html body .button:not(.floating-cart):not(:disabled):not(.hover-consumed):hover{animation:stp-hover-flow 3600ms ease-in-out infinite}
 html body .button.secondary:not(.floating-cart):not(:disabled):hover{background-image:linear-gradient(110deg,rgba(255,100,31,0),rgba(255,133,62,.14),rgba(255,100,31,0));background-size:190% 100%}
 html body .poster-hero .poster-catalog-action:not(.hover-consumed):hover>span{animation:stp-hover-flow 3600ms ease-in-out infinite}
 html body .button:not(.floating-cart):active,html body .poster-hero .poster-catalog-action:active>span{animation:none!important}
}

@media(min-width:801px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 html body .poster-hero .poster-catalog-action{transition:scale 320ms cubic-bezier(.22,.61,.36,1),filter 280ms ease!important}
 html body .poster-hero .poster-catalog-action:active{scale:.992;transition-duration:140ms!important}
}
