/* Entrance and interaction animations. */
.quick-action,.qty-button{transition:transform .16s ease,background .2s ease,border-color .2s ease}
.quick-action:active,.button:active{transform:scale(.96)}
.qty-button:active{transform:scale(.88)}
@media(prefers-reduced-motion:no-preference){
  .hero h1{animation:hero-enter 1s cubic-bezier(.22,.61,.36,1) both}
  .hero-sub{animation:hero-enter 1s .18s cubic-bezier(.22,.61,.36,1) both}
  .quick-action{animation:hero-enter 1s .3s cubic-bezier(.22,.61,.36,1) backwards}
  .quick-action:nth-child(2){animation-delay:.5s}.quick-action:nth-child(3){animation-delay:.7s}.quick-action:nth-child(4){animation-delay:.9s}
  .hero-visual{animation:food-enter 1.2s .1s cubic-bezier(.22,.61,.36,1) both}
  .reveal-on-scroll{opacity:0;transform:translateY(16px);transition:opacity .65s ease,transform .65s cubic-bezier(.22,.61,.36,1)}
  .reveal-on-scroll.is-revealed{opacity:1;transform:translateY(0)}
  .contact-grid>div:nth-child(2){transition-delay:.1s}
}
@keyframes hero-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes food-enter{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){
  .hero h1,.hero-sub,.quick-action,.hero-visual{animation:none!important}
  .reveal-on-scroll{opacity:1;transform:none;transition:none}
  .quick-action,.qty-button,.button{transition:none!important}
  .quick-action:active,.qty-button:active,.button:active{transform:none}
}
