
.motion-ready .reveal {
  overflow-x: clip;
  opacity: 0;
  filter: blur(12px);
  transform: var(--reveal-transform, translate3d(0, 28px, 0) scale(0.985));
  transition:
    opacity 0.8s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.8s cubic-bezier(0.22, 1, 0.36, 1),
    filter 0.8s ease;
  transition-delay: var(--reveal-delay, 0ms);
  will-change: opacity, transform, filter;
}

.motion-ready .reveal.reveal--visible {
  opacity: 1 !important;
  filter: blur(0) !important;
  transform: translate3d(0, 0, 0) scale(1) !important;
}

.motion-ready .reveal.reveal--visible.reveal--settled {
  transform: none !important;
  filter: none !important;
  will-change: auto;
}

.about__stats .about__stat:nth-of-type(2n - 1):hover {
  transform: translateX(-8px) !important;
}

.about__stats .about__stat:nth-of-type(2n):hover {
  transform: translateX(8px) !important;
}

@media (prefers-reduced-motion: reduce) {
  .about__stats .about__stat:hover {
    transform: none !important;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .certificates-page .cert-grid .cert-card:hover {
    transform: translateY(-2px) !important;
  }

  .contacts-page .contacts-info .contacts-info__card:hover {
    transform: translateY(-2px) !important;
  }

  .cart-page .cart-list .cart-item:hover {
    transform: translateY(-2px) !important;
  }

  .faq__container .faq__list .faq-item:hover {
    transform: translateY(-2px) !important;
  }

  .pdp-page .pdp-docs__grid .pdp-doc-tile:hover {
    transform: translateY(-2px) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .motion-ready .reveal {
    opacity: 1;
    filter: none;
    transform: none;
    transition: none;
  }
}

.motion-ready .product-card.reveal:not(.product-card--horizontal):not(.product-card--compact) {
  transition:
    opacity 0.8s cubic-bezier(0.22, 1, 0.36, 1) var(--reveal-delay, 0ms),
    transform 0.8s cubic-bezier(0.22, 1, 0.36, 1) var(--reveal-delay, 0ms),
    filter 0.8s ease var(--reveal-delay, 0ms),
    border-radius 0.25s ease;
}

@media (prefers-reduced-motion: reduce) {
  .motion-ready .product-card.reveal:not(.product-card--horizontal):not(.product-card--compact) {
    transition: border-radius 0.25s ease;
  }
}
