@media (prefers-reduced-motion: no-preference) {
  :root {
    --c3000-motion-out: cubic-bezier(.16, 1, .3, 1);
    --c3000-motion-quick: 150ms;
  }

  /* Let the main photograph stay painted while it settles into its frame. */
  .c3000-design .hero .hero-photo {
    animation: c3000-hero-frame 720ms var(--c3000-motion-out);
  }

  .c3000-design .hero .hero-content > div {
    animation: none;
  }

  .c3000-design .hero .hero-product {
    animation: c3000-hero-feature 520ms var(--c3000-motion-out) 95ms backwards;
  }

  .c3000-design .design-promotions .c3000-banner-slide:not([hidden]) .design-promotion-copy {
    animation: c3000-motion-content 290ms var(--c3000-motion-out);
  }

  .c3000-design .design-promotions .c3000-banner-slide:not([hidden]) :is(.design-promotion-art, picture) {
    animation: c3000-banner-art 390ms var(--c3000-motion-out);
  }

  .c3000-nav-ready .c3000-nav-sub:not([hidden]) {
    animation: c3000-menu-open 190ms var(--c3000-motion-out);
  }

  @media (max-width: 768px) {
    .c3000-nav-ready.c3000-nav-open > .c3000-nav-list {
      animation: c3000-menu-open 220ms var(--c3000-motion-out);
    }
  }

  :is(.c3000-nav .c3000-nav-row, .c3000-nav .c3000-nav-mobile, .c3000-design .care-options a, .c3000-design .brand-links a,
      .c3000-store-page .c3000-directory a, .c3000-design .product-filters button,
      .c3000-design .design-icon, .c3000-design .mini-buy, .c3000-design .c3000-banner-controls button,
      .c3000-catalog-design .wc-block-components-product-button__button,
      .c3000-catalog-design ul.products .button, .c3000-product-design .single_add_to_cart_button,
      .c3000-product-design .wc-block-components-product-button__button,
      .woocommerce-cart .wc-block-components-quantity-selector button,
      .woocommerce-cart .c3000-cart-empty__catalog, .woocommerce-cart .wc-block-cart__submit-button,
      .woocommerce-cart .wc-block-grid__product-add-to-cart .wp-block-button__link,
      .c3000-favorite) {
    transition: background-color var(--c3000-motion-quick) ease-out, color var(--c3000-motion-quick) ease-out,
      border-color var(--c3000-motion-quick) ease-out, scale var(--c3000-motion-quick) ease-out;
  }

  :is(.c3000-design .product-filters button, .c3000-design .design-icon, .c3000-design .mini-buy,
      .c3000-catalog-design .wc-block-components-product-button__button,
      .c3000-catalog-design ul.products .button, .c3000-product-design .single_add_to_cart_button,
      .c3000-product-design .wc-block-components-product-button__button,
      .woocommerce-cart .wc-block-components-quantity-selector button,
      .woocommerce-cart .c3000-cart-empty__catalog, .woocommerce-cart .wc-block-cart__submit-button,
      .woocommerce-cart .wc-block-grid__product-add-to-cart .wp-block-button__link,
      .c3000-favorite):active:not(:disabled):not([aria-disabled="true"]) {
    scale: .97;
  }

  @media (hover: hover) and (pointer: fine) {
    .c3000-design :is(.category, .hero-product, .button, .text-link) img[src$=".svg"] {
      transition: translate 230ms var(--c3000-motion-out);
    }

    .c3000-design :is(.category, .hero-product, .button, .text-link):is(:hover, :focus-visible) img[src$=".svg"] {
      translate: 3px 0;
    }

    .c3000-design .product-photo > a > img,
    :is(.c3000-catalog-design, .c3000-product-design) .wc-block-components-product-image a > img,
    .c3000-catalog-design ul.products .woocommerce-loop-product__link > img,
    .woocommerce-cart .wc-block-grid__product-image img {
      transition: scale 310ms var(--c3000-motion-out);
    }

    .c3000-design .product-photo > a:is(:hover, :focus-visible) > img,
    :is(.c3000-catalog-design, .c3000-product-design) .wc-block-components-product-image a:is(:hover, :focus-visible) > img,
    .c3000-catalog-design ul.products .woocommerce-loop-product__link:is(:hover, :focus-visible) > img,
    .woocommerce-cart .wc-block-grid__product-link:is(:hover, :focus-visible) .wc-block-grid__product-image img {
      scale: 1.04;
    }

    .c3000-design .product-photo,
    :is(.c3000-catalog-design, .c3000-product-design) .wc-block-components-product-image,
    .woocommerce-cart .wc-block-grid__product-image {
      overflow: clip;
    }
  }
}

@keyframes c3000-hero-frame {
  from { scale: 1.045; }
  to { scale: 1; }
}

@keyframes c3000-hero-feature {
  from { opacity: .72; translate: 0 10px; }
  to { opacity: 1; translate: 0 0; }
}

@keyframes c3000-menu-open {
  from { opacity: .8; translate: 0 -4px; }
  to { opacity: 1; translate: 0 0; }
}

@keyframes c3000-motion-content {
  from { opacity: .8; translate: 0 4px; }
  to { opacity: 1; translate: 0 0; }
}

@keyframes c3000-banner-art {
  from { opacity: .73; translate: 6px 0; }
  to { opacity: 1; translate: 0 0; }
}
