.premium-motion {
    --mf-motion-duration: 560ms;
    --mf-motion-fast: 240ms;
    --mf-motion-distance: 16px;
    --mf-motion-ease: cubic-bezier(.22, 1, .36, 1);
}

.premium-motion .hero .swiper-slide-active .hero__slide-text-head,
.premium-motion .hero .swiper-slide.is-active .hero__slide-text-head {
    animation: mf-motion-hero-copy 620ms var(--mf-motion-ease) 40ms backwards;
}

.premium-motion .hero .swiper-slide-active .hero__slide-text p,
.premium-motion .hero .swiper-slide.is-active .hero__slide-text p {
    animation: mf-motion-hero-copy 620ms var(--mf-motion-ease) 120ms backwards;
}

.premium-motion .hero .swiper-slide-active .hero__slide-text .btn,
.premium-motion .hero .swiper-slide.is-active .hero__slide-text .btn {
    animation: mf-motion-hero-copy 620ms var(--mf-motion-ease) 200ms backwards;
}

.premium-motion .hero .swiper-slide-active .hero__slide-image,
.premium-motion .hero .swiper-slide.is-active .hero__slide-image {
    animation: mf-motion-hero-image 650ms var(--mf-motion-ease) 80ms backwards;
}

.premium-motion .hero__information {
    animation: mf-motion-hero-information 580ms var(--mf-motion-ease) 300ms backwards;
}

.premium-motion:not(.home) .page__header .breadcrumbs,
.premium-motion:not(.home) .page__header .aioseo-breadcrumbs {
    animation: mf-motion-page-header 480ms var(--mf-motion-ease) 30ms backwards;
}

.premium-motion:not(.home) .page__header h1,
.premium-motion:not(.home) .page__header .h1 {
    animation: mf-motion-page-header 560ms var(--mf-motion-ease) 100ms backwards;
}

.premium-motion.motion-ready [data-motion-reveal] {
    opacity: 0;
    transform: translate3d(0, var(--mf-motion-distance), 0);
    transition:
        opacity var(--mf-motion-duration) var(--mf-motion-ease),
        transform var(--mf-motion-duration) var(--mf-motion-ease);
}

.premium-motion.motion-ready [data-motion-reveal].is-motion-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.premium-motion.motion-ready [data-motion-reveal] .motion-stagger {
    opacity: 0;
    transform: translate3d(0, 10px, 0);
    transition:
        opacity 480ms var(--mf-motion-ease),
        transform 480ms var(--mf-motion-ease);
}

.premium-motion.motion-ready [data-motion-reveal].is-motion-visible .motion-stagger {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.premium-motion.motion-ready [data-motion-reveal].is-motion-visible .motion-delay-1 {
    transition-delay: 60ms;
}

.premium-motion.motion-ready [data-motion-reveal].is-motion-visible .motion-delay-2 {
    transition-delay: 120ms;
}

.premium-motion.motion-ready [data-motion-reveal].is-motion-visible .motion-delay-3 {
    transition-delay: 180ms;
}

.premium-motion.motion-ready [data-motion-reveal].is-motion-visible .motion-delay-4 {
    transition-delay: 240ms;
}

.premium-motion.motion-ready [data-motion-reveal].is-motion-visible .heading-title::before {
    animation: mf-motion-fiber-mark 440ms var(--mf-motion-ease) 100ms both;
}

.premium-motion .btn,
.premium-motion .wp-block-button__link,
.premium-motion input[type="submit"] {
    transition-duration: var(--mf-motion-fast);
    transition-timing-function: var(--mf-motion-ease);
}

.premium-motion :where(.btn, .wp-block-button__link, input[type="submit"]):active {
    transform: translateY(0) scale(.985);
}

.premium-motion :where(
    .offer__list-item,
    .services__list-item,
    .pricing-table,
    .blog-listing,
    .promocje-entry,
    .offer-extras__block
) {
    transition:
        border-color var(--mf-motion-fast) var(--mf-motion-ease),
        box-shadow var(--mf-motion-fast) var(--mf-motion-ease),
        transform var(--mf-motion-fast) var(--mf-motion-ease);
}

.premium-motion .services__list-item img {
    transition: transform 320ms var(--mf-motion-ease);
}

.premium-motion .faq__list-item-button::after,
.premium-motion .coverage-explorer__filter,
.premium-motion .coverage-explorer__actions button {
    transition-duration: var(--mf-motion-fast);
    transition-timing-function: var(--mf-motion-ease);
}

.premium-motion .faq .accordion-collapse.show .accordion-body,
.premium-motion .faq [data-accordion-panel].is-open .accordion-body,
.premium-motion .form-status:not(:empty) {
    animation: mf-motion-feedback 260ms var(--mf-motion-ease) both;
}

.premium-motion .coverage-explorer.is-ready .coverage-explorer__panel {
    animation: mf-motion-map-ready 420ms var(--mf-motion-ease) both;
}

.premium-motion .coverage-explorer.is-ready .coverage-explorer__map-shell {
    animation: mf-motion-map-ready 520ms var(--mf-motion-ease) 70ms both;
}

@media (hover: hover) and (pointer: fine) {
    .premium-motion :where(
        .services__list-item,
        .pricing-table,
        .promocje-entry,
        .offer-extras__block
    ):hover {
        box-shadow: var(--mf-shadow);
        transform: translateY(-3px);
    }

    .premium-motion .services__list-item:hover img {
        transform: scale(1.035);
    }

    .premium-motion .coverage-explorer__filter:hover,
    .premium-motion .coverage-explorer__actions button:hover {
        transform: translateY(-1px);
    }
}

@keyframes mf-motion-hero-copy {
    from {
        opacity: 0;
        transform: translate3d(0, 14px, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes mf-motion-hero-image {
    from {
        opacity: 0;
        transform: translate3d(14px, 0, 0) scale(.985);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0) scale(1);
    }
}

@keyframes mf-motion-hero-information {
    from {
        opacity: 0;
        transform: translate3d(0, 12px, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes mf-motion-page-header {
    from {
        opacity: 0;
        transform: translate3d(0, 10px, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes mf-motion-fiber-mark {
    from {
        opacity: 0;
        transform: scale(.86) rotate(-4deg);
    }
    to {
        opacity: 1;
        transform: scale(1) rotate(0);
    }
}

@keyframes mf-motion-feedback {
    from {
        opacity: 0;
        transform: translate3d(0, -5px, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes mf-motion-map-ready {
    from {
        opacity: 0;
        transform: translate3d(0, 8px, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@media (max-width: 767.98px) {
    .premium-motion {
        --mf-motion-duration: 440ms;
        --mf-motion-distance: 9px;
    }

    .premium-motion.motion-ready [data-motion-reveal].is-motion-visible .motion-delay-1 {
        transition-delay: 40ms;
    }

    .premium-motion.motion-ready [data-motion-reveal].is-motion-visible .motion-delay-2,
    .premium-motion.motion-ready [data-motion-reveal].is-motion-visible .motion-delay-3,
    .premium-motion.motion-ready [data-motion-reveal].is-motion-visible .motion-delay-4 {
        transition-delay: 80ms;
    }

    .premium-motion .hero .swiper-slide-active .hero__slide-image,
    .premium-motion .hero .swiper-slide.is-active .hero__slide-image {
        animation-duration: 520ms;
        transform-origin: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .premium-motion *,
    .premium-motion *::before,
    .premium-motion *::after {
        animation: none !important;
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        transition-delay: 0ms !important;
    }

    .premium-motion.motion-ready [data-motion-reveal],
    .premium-motion.motion-ready [data-motion-reveal] .motion-stagger {
        opacity: 1 !important;
        transform: none !important;
    }
}
