/* Motion only. Existing dimensions, order, images and responsive rules stay in style.css. */
.avn-motion-ready [data-avn-enter="pending"] { opacity: 0; }
.avn-motion-ready .button { position: relative; overflow: hidden; }
.avn-motion-ready .button::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  background: linear-gradient(105deg, transparent 30%, rgb(255 248 241 / .48) 50%, transparent 70%);
  transform: translateX(-150%) skewX(-18deg);
  animation: avn-button-shine 3.6s ease-in-out infinite;
  animation-play-state: paused;
}
.avn-motion-ready .button--cream::after { background: linear-gradient(105deg, transparent 30%, rgb(253 131 166 / .22) 50%, transparent 70%); }
.avn-motion-ready .avn-motion-in-view .button::after { animation-play-state: running; }
.avn-motion-ready .hero-badges .badge { animation: avn-badge-bob 3.2s ease-in-out infinite paused; }
.avn-motion-ready .hero-badges .badge:nth-child(2) { animation-delay: .4s; }
.avn-motion-ready .hero-badges .badge:nth-child(3) { animation-delay: .8s; }
.avn-motion-ready .avn-motion-in-view .hero-badges .badge { animation-play-state: running; }
.avn-motion-ready .app-visual img { animation: avn-phone-float 4s ease-in-out infinite paused; }
.avn-motion-ready .app-dots { animation: avn-dots-blink 2.4s ease-in-out infinite paused; }
.avn-motion-ready .cta-avatars i { animation: avn-avatar-hop 2.4s ease-in-out infinite paused; }
.avn-motion-ready .cta-avatars i:nth-child(2) { animation-delay: .15s; }
.avn-motion-ready .cta-avatars i:nth-child(3) { animation-delay: .3s; }
.avn-motion-ready .cta-avatars i:nth-child(4) { animation-delay: .45s; }
.avn-motion-ready .avn-motion-in-view :is(.app-visual img, .app-dots, .cta-avatars i) { animation-play-state: running; }
.avn-motion-ready .avn-motion-in-view :is(.hero-main, .cta-copy) > .button { animation: avn-button-pulse 2.4s ease-in-out 3; }
.avn-motion-ready .round-link { transition: rotate .4s cubic-bezier(.22,1,.36,1), scale .4s cubic-bezier(.22,1,.36,1); }
.avn-motion-ready :is(.media-card, .image-card) img { transition: scale .8s cubic-bezier(.22,1,.36,1); }
.avn-motion-ready .button:active { scale: .97; }
.avn-motion-ready .button { transition: transform .25s var(--ease), filter .25s var(--ease), scale .15s var(--ease); }
@media (hover: hover) and (pointer: fine) {
  .avn-motion-ready :is(.format-card, .safety-card, .feature, .review, .post-card, .blog-card, .tariff-card, .inner-cards > article, .service-facts > article, .vacancy-step, .vacancy-review) {
    transition: translate .35s cubic-bezier(.22,1,.36,1), rotate .35s cubic-bezier(.22,1,.36,1), box-shadow .35s ease;
  }
  .avn-motion-ready :is(.format-card, .safety-card, .feature, .review, .post-card, .blog-card, .inner-cards > article, .service-facts > article, .vacancy-step, .vacancy-review):hover { translate: 0 -8px; box-shadow: 0 18px 36px rgb(72 72 72 / .12); }
  .avn-motion-ready .tariff-card:hover { translate: 0 -8px; rotate: -1deg; }
  .avn-motion-ready :is(.media-card, .image-card):hover img { scale: 1.07; }
  /* Individual rotate keeps the theme's existing arrow orientation intact. */
  .avn-motion-ready :is(.round-link:hover, .promo-card:hover .round-link, .format-card:hover .round-link) { rotate: 45deg; scale: 1.1; }
}
@keyframes avn-button-shine { 0%,55% { transform: translateX(-150%) skewX(-18deg); } 100% { transform: translateX(150%) skewX(-18deg); } }
@keyframes avn-badge-bob { 0%,100% { translate: 0 0; } 50% { translate: 0 -6px; } }
@keyframes avn-phone-float { 0%,100% { translate: 0 0; } 50% { translate: 0 -10px; } }
@keyframes avn-dots-blink { 0%,100% { opacity: 1; } 50% { opacity: .55; } }
@keyframes avn-avatar-hop { 0%,60%,100% { translate: 0 0; } 30% { translate: 0 -8px; } }
@keyframes avn-button-pulse { 0% { box-shadow: 0 0 0 0 rgb(255 248 241 / .6); } 70%,100% { box-shadow: 0 0 0 16px rgb(255 248 241 / 0); } }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .avn-motion-ready [data-avn-enter="pending"] { opacity: 1; }
  .avn-motion-ready :is(.button, .button::after, .hero-badges .badge, .app-visual img, .app-dots, .cta-avatars i) { animation: none !important; }
  .avn-motion-ready .button::after { opacity: 0; }
  .avn-motion-ready :is(.button, .round-link, .media-card img, .image-card img, .format-card, .safety-card, .feature, .review, .post-card, .blog-card, .tariff-card, .inner-cards > article, .service-facts > article, .vacancy-step, .vacancy-review) { transition: none; translate: none; rotate: none; scale: none; }
}
@media print {
  [data-avn-enter="pending"] { opacity: 1 !important; }
  .avn-motion-ready *, .avn-motion-ready *::after { animation: none !important; }
}
