/*!
* MotionFlow v1.0.0
* Lightweight motion library for scroll animations, parallax, text effects, counters, and tickers
* https://motionflow.dev
*
* Copyright (c) 2026 Deepak Verma
*
* Released under the MIT License
*/
.mf-init[data-mf-animation], [data-mf-animation]:not(.mf-animate) { opacity: 0 }
[data-mf-animation=fade].mf-animate { animation: mf-fade var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-fade {
0% { opacity: 0 }
to { opacity: 1 }
}
[data-mf-animation=fade-up].mf-animate { animation: mf-fade-up var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-fade-up {
0% { opacity: 0; transform: translateY(var(--mf-distance)) }
to { opacity: 1; transform: translateY(0) }
}
[data-mf-animation=fade-down].mf-animate { animation: mf-fade-down var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-fade-down {
0% { opacity: 0; transform: translateY(calc(var(--mf-distance)*-1)) }
to { opacity: 1; transform: translateY(0) }
}
[data-mf-animation=fade-left].mf-animate { animation: mf-fade-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-fade-left {
0% { opacity: 0; transform: translateX(calc(var(--mf-distance)*-1)) }
to { opacity: 1; transform: translateX(0) }
}
[data-mf-animation=fade-right].mf-animate { animation: mf-fade-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-fade-right {
0% { opacity: 0; transform: translateX(var(--mf-distance)) }
to { opacity: 1; transform: translateX(0) }
}
[data-mf-animation=fade-up-left].mf-animate { animation: mf-fade-up-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-fade-up-left {
0% { opacity: 0; transform: translate(calc(var(--mf-distance)*-1), var(--mf-distance)) }
to { opacity: 1; transform: translate(0) }
}
[data-mf-animation=fade-up-right].mf-animate { animation: mf-fade-up-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-fade-up-right {
0% { opacity: 0; transform: translate(var(--mf-distance), var(--mf-distance)) }
to { opacity: 1; transform: translate(0) }
}
[data-mf-animation=fade-down-left].mf-animate { animation: mf-fade-down-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-fade-down-left {
0% { opacity: 0; transform: translate(calc(var(--mf-distance)*-1), calc(var(--mf-distance)*-1)) }
to { opacity: 1; transform: translate(0) }
}
[data-mf-animation=fade-down-right].mf-animate { animation: mf-fade-down-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-fade-down-right {
0% { opacity: 0; transform: translate(var(--mf-distance), calc(var(--mf-distance)*-1)) }
to { opacity: 1; transform: translate(0) }
}
[data-mf-animation=slide-up].mf-animate { animation: mf-slide-up var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-slide-up {
0% { opacity: 0; transform: translateY(var(--mf-distance)) }
to { opacity: 1; transform: translateY(0) }
}
[data-mf-animation=slide-down].mf-animate { animation: mf-slide-down var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-slide-down {
0% { opacity: 0; transform: translateY(calc(var(--mf-distance)*-1)) }
to { opacity: 1; transform: translateY(0) }
}
[data-mf-animation=slide-left].mf-animate { animation: mf-slide-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-slide-left {
0% { opacity: 0; transform: translateX(calc(var(--mf-distance)*-1)) }
to { opacity: 1; transform: translateX(0) }
}
[data-mf-animation=slide-right].mf-animate { animation: mf-slide-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-slide-right {
0% { opacity: 0; transform: translateX(var(--mf-distance)) }
to { opacity: 1; transform: translateX(0) }
}
[data-mf-animation=zoom-in].mf-animate { animation: mf-zoom-in var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-zoom-in {
0% { opacity: 0; transform: scale(.8) }
to { opacity: 1; transform: scale(1) }
}
[data-mf-animation=zoom-out].mf-animate { animation: mf-zoom-out var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-zoom-out {
0% { opacity: 0; transform: scale(1.2) }
to { opacity: 1; transform: scale(1) }
}
[data-mf-animation=zoom-in-up].mf-animate { animation: mf-zoom-in-up var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-zoom-in-up {
0% { opacity: 0; transform: translateY(var(--mf-distance)) scale(.8) }
to { opacity: 1; transform: translateY(0) scale(1) }
}
[data-mf-animation=zoom-in-down].mf-animate { animation: mf-zoom-in-down var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-zoom-in-down {
0% { opacity: 0; transform: translateY(calc(var(--mf-distance)*-1)) scale(.8) }
to { opacity: 1; transform: translateY(0) scale(1) }
}
[data-mf-animation=zoom-in-left].mf-animate { animation: mf-zoom-in-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-zoom-in-left {
0% { opacity: 0; transform: translateX(calc(var(--mf-distance)*-1)) scale(.8) }
to { opacity: 1; transform: translateX(0) scale(1) }
}
[data-mf-animation=zoom-in-right].mf-animate { animation: mf-zoom-in-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-zoom-in-right {
0% { opacity: 0; transform: translateX(var(--mf-distance)) scale(.8) }
to { opacity: 1; transform: translateX(0) scale(1) }
}
[data-mf-animation=zoom-out-up].mf-animate { animation: mf-zoom-out-up var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-zoom-out-up {
0% { opacity: 0; transform: translateY(var(--mf-distance)) scale(1.2) }
to { opacity: 1; transform: translateY(0) scale(1) }
}
[data-mf-animation=zoom-out-down].mf-animate { animation: mf-zoom-out-down var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-zoom-out-down {
0% { opacity: 0; transform: translateY(calc(var(--mf-distance)*-1)) scale(1.2) }
to { opacity: 1; transform: translateY(0) scale(1) }
}
[data-mf-animation=zoom-out-left].mf-animate { animation: mf-zoom-out-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-zoom-out-left {
0% { opacity: 0; transform: translateX(calc(var(--mf-distance)*-1)) scale(1.2) }
to { opacity: 1; transform: translateX(0) scale(1) }
}
[data-mf-animation=zoom-out-right].mf-animate { animation: mf-zoom-out-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-zoom-out-right {
0% { opacity: 0; transform: translateX(var(--mf-distance)) scale(1.2) }
to { opacity: 1; transform: translateX(0) scale(1) }
}
[data-mf-animation^=flip] { backface-visibility: hidden; transform-style: preserve-3d }
[data-mf-animation=flip-up].mf-animate { animation: mf-flip-up var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-flip-up {
0% { opacity: 0; transform: perspective(2500px) rotateX(-100deg) }
to { opacity: 1; transform: perspective(2500px) rotateX(0) }
}
[data-mf-animation=flip-down].mf-animate { animation: mf-flip-down var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-flip-down {
0% { opacity: 0; transform: perspective(2500px) rotateX(100deg) }
to { opacity: 1; transform: perspective(2500px) rotateX(0) }
}
[data-mf-animation=flip-left].mf-animate { animation: mf-flip-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-flip-left {
0% { opacity: 0; transform: perspective(2500px) rotateY(-100deg) }
to { opacity: 1; transform: perspective(2500px) rotateY(0) }
}
[data-mf-animation=flip-right].mf-animate { animation: mf-flip-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-flip-right {
0% { opacity: 0; transform: perspective(2500px) rotateY(100deg) }
to { opacity: 1; transform: perspective(2500px) rotateY(0) }
}
[data-mf-animation=rotate].mf-animate { animation: mf-rotate var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-rotate {
0% { opacity: 0; transform: rotate(45deg) }
to { opacity: 1; transform: rotate(0) }
}
[data-mf-animation=rotate-up-left].mf-animate { animation: mf-rotate-up-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-rotate-up-left {
0% { opacity: 0; transform: rotate(-45deg) translateY(var(--mf-distance)) }
to { opacity: 1; transform: rotate(0) translateY(0) }
}
[data-mf-animation=rotate-up-right].mf-animate { animation: mf-rotate-up-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-rotate-up-right {
0% { opacity: 0; transform: rotate(45deg) translateY(var(--mf-distance)) }
to { opacity: 1; transform: rotate(0) translateY(0) }
}
[data-mf-animation=rotate-down-left].mf-animate { animation: mf-rotate-down-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-rotate-down-left {
0% { opacity: 0; transform: rotate(45deg) translateY(calc(var(--mf-distance)*-1)) }
to { opacity: 1; transform: rotate(0) translateY(0) }
}
[data-mf-animation=rotate-down-right].mf-animate { animation: mf-rotate-down-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-rotate-down-right {
0% { opacity: 0; transform: rotate(-45deg) translateY(calc(var(--mf-distance)*-1)) }
to { opacity: 1; transform: rotate(0) translateY(0) }
}
[data-mf-animation=lightspeed-left].mf-animate { animation: mf-lightspeed-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-lightspeed-left {
0% { opacity: 0; transform: translateX(calc(-100% - var(--mf-distance))) skewX(20deg) }
to { opacity: 1; transform: translateX(0) skewX(0) }
}
[data-mf-animation=lightspeed-right].mf-animate { animation: mf-lightspeed-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-lightspeed-right {
0% { opacity: 0; transform: translateX(calc(100% + var(--mf-distance))) skewX(-20deg) }
to { opacity: 1; transform: translateX(0) skewX(0) }
}
[data-mf-animation=roll-left].mf-animate { animation: mf-roll-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-roll-left {
0% { opacity: 0; transform: translateX(calc(var(--mf-distance)*-1)) rotate(-180deg) }
to { opacity: 1; transform: translateX(0) rotate(0) }
}
[data-mf-animation=roll-right].mf-animate { animation: mf-roll-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-roll-right {
0% { opacity: 0; transform: translateX(var(--mf-distance)) rotate(180deg) }
to { opacity: 1; transform: translateX(0) rotate(0) }
}
[data-mf-animation=back-in-up].mf-animate { animation: mf-back-in-up var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-back-in-up {
0% { opacity: 0; transform: translateY(var(--mf-distance)) scale(.7) }
70% { opacity: 1; transform: translateY(0) scale(.7) }
to { opacity: 1; transform: translateY(0) scale(1) }
}
[data-mf-animation=back-in-down].mf-animate { animation: mf-back-in-down var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-back-in-down {
0% { opacity: 0; transform: translateY(calc(var(--mf-distance)*-1)) scale(.7) }
70% { opacity: 1; transform: translateY(0) scale(.7) }
to { opacity: 1; transform: translateY(0) scale(1) }
}
[data-mf-animation=back-in-left].mf-animate { animation: mf-back-in-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-back-in-left {
0% { opacity: 0; transform: translateX(calc(var(--mf-distance)*-1)) scale(.7) }
70% { opacity: 1; transform: translateX(0) scale(.7) }
to { opacity: 1; transform: translateX(0) scale(1) }
}
[data-mf-animation=back-in-right].mf-animate { animation: mf-back-in-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-back-in-right {
0% { opacity: 0; transform: translateX(var(--mf-distance)) scale(.7) }
70% { opacity: 1; transform: translateX(0) scale(.7) }
to { opacity: 1; transform: translateX(0) scale(1) }
}
[data-mf-animation^=blur] { will-change: transform, opacity, filter }
[data-mf-animation=blur].mf-animate { animation: mf-blur var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-blur {
0% { filter: blur(12px); opacity: 0 }
to { filter: blur(0); opacity: 1 }
}
[data-mf-animation=blur-up].mf-animate { animation: mf-blur-up var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-blur-up {
0% { filter: blur(12px); opacity: 0; transform: translateY(var(--mf-distance)) }
to { filter: blur(0); opacity: 1; transform: translateY(0) }
}
[data-mf-animation=blur-down].mf-animate { animation: mf-blur-down var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-blur-down {
0% { filter: blur(12px); opacity: 0; transform: translateY(calc(var(--mf-distance)*-1)) }
to { filter: blur(0); opacity: 1; transform: translateY(0) }
}
[data-mf-animation=blur-left].mf-animate { animation: mf-blur-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-blur-left {
0% { filter: blur(12px); opacity: 0; transform: translateX(calc(var(--mf-distance)*-1)) }
to { filter: blur(0); opacity: 1; transform: translateX(0) }
}
[data-mf-animation=blur-right].mf-animate { animation: mf-blur-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-blur-right {
0% { filter: blur(12px); opacity: 0; transform: translateX(var(--mf-distance)) }
to { filter: blur(0); opacity: 1; transform: translateX(0) }
}
[data-mf-animation=hinge] { transform-origin: top center }
[data-mf-animation=hinge].mf-animate { animation: mf-hinge var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-hinge {
0% { opacity: 0; transform: rotate(70deg) }
18% { opacity: 1; transform: rotate(-20deg) }
35% { opacity: 1; transform: rotate(22deg) }
52% { opacity: 1; transform: rotate(-12deg) }
68% { opacity: 1; transform: rotate(6deg) }
82% { opacity: 1; transform: rotate(-3deg) }
to { opacity: 1; transform: rotate(0deg) }
}
[data-mf-animation=hinge-left] { transform-origin: left top }
[data-mf-animation=hinge-left].mf-animate { animation: mf-hinge-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-hinge-left {
0% { opacity: 0; transform: rotate(70deg) }
18% { opacity: 1; transform: rotate(-20deg) }
35% { opacity: 1; transform: rotate(22deg) }
52% { opacity: 1; transform: rotate(-12deg) }
68% { opacity: 1; transform: rotate(6deg) }
82% { opacity: 1; transform: rotate(-3deg) }
to { opacity: 1; transform: rotate(0deg) }
}
[data-mf-animation=hinge-right] { transform-origin: right top }
[data-mf-animation=hinge-right].mf-animate { animation: mf-hinge-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-hinge-right {
0% { opacity: 0; transform: rotate(-70deg) }
18% { opacity: 1; transform: rotate(20deg) }
35% { opacity: 1; transform: rotate(-22deg) }
52% { opacity: 1; transform: rotate(12deg) }
68% { opacity: 1; transform: rotate(-6deg) }
82% { opacity: 1; transform: rotate(3deg) }
to { opacity: 1; transform: rotate(0deg) }
}
[data-mf-animation=bounce].mf-animate { animation: mf-bounce var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-bounce {
0% { opacity: 0; transform: translateY(calc(var(--mf-distance)*-1)) }
55% { opacity: 1; transform: translateY(0) }
70% { opacity: 1; transform: translateY(calc(var(--mf-distance)*-.18)) }
82% { opacity: 1; transform: translateY(0) }
92% { opacity: 1; transform: translateY(calc(var(--mf-distance)*-.06)) }
to { opacity: 1; transform: translateY(0) }
}
[data-mf-animation=bounce-up].mf-animate { animation: mf-bounce-up var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-bounce-up {
0% { opacity: 0; transform: translateY(calc(var(--mf-distance)*1)) }
55% { opacity: 1; transform: translateY(0) }
70% { opacity: 1; transform: translateY(calc(var(--mf-distance)*.18)) }
82% { opacity: 1; transform: translateY(0) }
92% { opacity: 1; transform: translateY(calc(var(--mf-distance)*.06)) }
to { opacity: 1; transform: translateY(0) }
}
[data-mf-animation=bounce-down].mf-animate { animation: mf-bounce-down var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-bounce-down {
0% { opacity: 0; transform: translateY(calc(var(--mf-distance)*-1)) }
55% { opacity: 1; transform: translateY(0) }
70% { opacity: 1; transform: translateY(calc(var(--mf-distance)*-.18)) }
82% { opacity: 1; transform: translateY(0) }
92% { opacity: 1; transform: translateY(calc(var(--mf-distance)*-.06)) }
to { opacity: 1; transform: translateY(0) }
}
[data-mf-animation=bounce-left].mf-animate { animation: mf-bounce-left var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-bounce-left {
0% { opacity: 0; transform: translateX(calc(var(--mf-distance)*-1)) }
55% { opacity: 1; transform: translateX(0) }
70% { opacity: 1; transform: translateX(calc(var(--mf-distance)*-.18)) }
82% { opacity: 1; transform: translateX(0) }
92% { opacity: 1; transform: translateX(calc(var(--mf-distance)*-.06)) }
to { opacity: 1; transform: translateX(0) }
}
[data-mf-animation=bounce-right].mf-animate { animation: mf-bounce-right var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-bounce-right {
0% { opacity: 0; transform: translateX(calc(var(--mf-distance)*1)) }
55% { opacity: 1; transform: translateX(0) }
70% { opacity: 1; transform: translateX(calc(var(--mf-distance)*.18)) }
82% { opacity: 1; transform: translateX(0) }
92% { opacity: 1; transform: translateX(calc(var(--mf-distance)*.06)) }
to { opacity: 1; transform: translateX(0) }
}
[data-mf-animation=bounce-scale].mf-animate { animation: mf-bounce-scale var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-bounce-scale {
0% { opacity: 0; transform: scale(.7) }
55% { opacity: 1; transform: scale(1.1) }
70% { opacity: 1; transform: scale(.95) }
85% { opacity: 1; transform: scale(1.03) }
to { opacity: 1; transform: scale(1) }
}
[data-mf-animation=bounce-rotate].mf-animate { animation: mf-bounce-rotate var(--mf-duration) var(--mf-easing) var(--mf-delay) forwards }
@keyframes mf-bounce-rotate {
0% { opacity: 0; transform: translateY(calc(var(--mf-distance)*-1.4)) rotate(-12deg) }
55% { opacity: 1; transform: translateY(0) rotate(6deg) }
72% { opacity: 1; transform: translateY(calc(var(--mf-distance)*-.18)) rotate(-4deg) }
85% { opacity: 1; transform: translateY(0) rotate(3deg) }
to { opacity: 1; transform: translateY(0) rotate(0) }
}
.mf-roller { display: inline-flex; line-height: 1 }
.mf-roller-digit { height: 1em; overflow: hidden; position: relative }
.mf-roller-digit-inner { transform: translateY(0); transition: transform .5s cubic-bezier(.175, .885, .32, 1.275); will-change: transform }
.mf-roller-digit-inner span { display: block; height: 1em; text-align: center }
.mf-ticker-viewport { overflow: hidden; width: 100% }
.mf-ticker-track { backface-visibility: hidden; display: flex; flex-wrap: nowrap; transform-style: preserve-3d; will-change: transform }
.mf-ticker-content { display: flex; flex-shrink: 0 }
.mf-ticker-content img { display: block; max-width: none }
.mf-typing-cursor { animation: mf-blink 1s steps(1) infinite; display: inline-block; margin-left: 2px }
.mf-typing-cursor-static { animation: none }
@keyframes mf-blink {
0%, 50%, to { opacity: 1 }
25%, 75% { opacity: 0 }
}
.mf-sr-only { clip: rect(0, 0, 0, 0); border: 0; height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; white-space: nowrap; width: 1px }
@media (prefers-reduced-motion:reduce) {
[data-mf-animation], [data-mf-animation].mf-animate { animation: none !important; filter: none !important; opacity: 1 !important; transform: none !important; transition: none !important }
[data-mf-parallax] { transform: none !important; will-change: auto !important }
[data-mf-text-type=loop] > span { display: none !important }
[data-mf-text-type=loop] > span:first-child { display: inline-block !important }
[data-mf-text-type=typing] { animation: none !important }
[data-mf-text-type=typing] .mf-typing-cursor { display: none !important }
.mf-ticker-track, [data-mf-ticker] { animation: none !important; transform: none !important }
[data-mf-count-to], [data-mf-roller-to] { animation: none !important; transition: none !important }
}
/* ================= Swiper css start here================= */
/**
* Swiper 12.0.3
* Most modern mobile touch slider and framework with hardware accelerated transitions
* https://swiperjs.com
*
* Copyright 2014-2025 Vladimir Kharlampidi
*
* Released under the MIT License
*
* Released on: October 21, 2025
*/:root { --swiper-theme-color: #007aff }
:host { display: block; margin-left: auto; margin-right: auto; position: relative; z-index: 1 }
.swiper { display: block; list-style: none; margin-left: auto; margin-right: auto; overflow: hidden; padding: 0; position: relative; z-index: 1 }
.swiper-vertical > .swiper-wrapper { flex-direction: column }
.swiper-wrapper { box-sizing: initial; display: flex; height: 100%; position: relative; transition-property: transform; transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial); width: 100%; z-index: 1 }
.swiper-android .swiper-slide, .swiper-ios .swiper-slide, .swiper-wrapper { transform: translateZ(0) }
.swiper-horizontal { touch-action: pan-y }
.swiper-vertical { touch-action: pan-x }
.swiper-slide { display: block; flex-shrink: 0; height: 100%; position: relative; transition-property: transform; width: 100% }
.swiper-slide-invisible-blank { visibility: hidden }
.swiper-autoheight, .swiper-autoheight .swiper-slide { height: auto }
.swiper-autoheight .swiper-wrapper { align-items: flex-start; transition-property: transform, height }
.swiper-backface-hidden .swiper-slide { backface-visibility: hidden; transform: translateZ(0) }
.swiper-3d.swiper-css-mode .swiper-wrapper { perspective: 1200px }
.swiper-3d .swiper-wrapper { transform-style: preserve-3d }
.swiper-3d { perspective: 1200px;
.swiper-cube-shadow, .swiper-slide { transform-style: preserve-3d }
}
.swiper-css-mode { > .swiper-wrapper { overflow: auto; scrollbar-width: none; -ms-overflow-style: none; &::-webkit-scrollbar { display: none }
}
> .swiper-wrapper > .swiper-slide { scroll-snap-align: start start }
&.swiper-horizontal { > .swiper-wrapper { scroll-snap-type: x mandatory }
}
&.swiper-vertical { > .swiper-wrapper { scroll-snap-type: y mandatory }
}
&.swiper-free-mode { > .swiper-wrapper { scroll-snap-type: none }
> .swiper-wrapper > .swiper-slide { scroll-snap-align: none }
}
&.swiper-centered { > .swiper-wrapper:before { content: ""; flex-shrink: 0; order: 9999 }
> .swiper-wrapper > .swiper-slide { scroll-snap-align: center center; scroll-snap-stop: always }
}
&.swiper-centered.swiper-horizontal { > .swiper-wrapper > .swiper-slide:first-child { margin-inline-start: var(--swiper-centered-offset-before) }
> .swiper-wrapper:before { height: 100%; min-height: 1px; width: var(--swiper-centered-offset-after) }
}
&.swiper-centered.swiper-vertical { > .swiper-wrapper > .swiper-slide:first-child { margin-block-start: var(--swiper-centered-offset-before) }
> .swiper-wrapper:before { height: var(--swiper-centered-offset-after); min-width: 1px; width: 100% }
}
}
.swiper-3d { .swiper-slide-shadow, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left, .swiper-slide-shadow-right, .swiper-slide-shadow-top { height: 100%; left: 0; pointer-events: none; position: absolute; top: 0; width: 100%; z-index: 10 }
.swiper-slide-shadow { background: #00000026 }
.swiper-slide-shadow-left { background-image: linear-gradient(270deg, #00000080, #0000) }
.swiper-slide-shadow-right { background-image: linear-gradient(90deg, #00000080, #0000) }
.swiper-slide-shadow-top { background-image: linear-gradient(0deg, #00000080, #0000) }
.swiper-slide-shadow-bottom { background-image: linear-gradient(180deg, #00000080, #0000) }
}
.swiper-lazy-preloader { border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color)); border-radius: 50%; border-top: 4px solid #0000; box-sizing: border-box; height: 42px; left: 50%; margin-left: -21px; margin-top: -21px; position: absolute; top: 50%; transform-origin: 50%; width: 42px; z-index: 10 }
.swiper-watch-progress .swiper-slide-visible, .swiper:not(.swiper-watch-progress) { .swiper-lazy-preloader { animation: swiper-preloader-spin 1s linear infinite }
}
.swiper-lazy-preloader-white { --swiper-preloader-color: #fff }
.swiper-lazy-preloader-black { --swiper-preloader-color: #000 }
@keyframes swiper-preloader-spin {
0% { transform: rotate(0deg) }
to { transform: rotate(1turn) }
}
.swiper-virtual .swiper-slide { -webkit-backface-visibility: hidden; transform: translateZ(0) }
.swiper-virtual.swiper-css-mode { .swiper-wrapper:after { content: ""; left: 0; pointer-events: none; position: absolute; top: 0 }
}
.swiper-virtual.swiper-css-mode.swiper-horizontal { .swiper-wrapper:after { height: 1px; width: var(--swiper-virtual-size) }
}
.swiper-virtual.swiper-css-mode.swiper-vertical { .swiper-wrapper:after { height: var(--swiper-virtual-size); width: 1px }
}
:root { --swiper-navigation-size: 44px }
.swiper-button-next, .swiper-button-prev { align-items: center; color: var(--swiper-navigation-color, var(--swiper-theme-color)); cursor: pointer; display: flex; height: var(--swiper-navigation-size); justify-content: center; position: absolute; width: var(--swiper-navigation-size); z-index: 10; &.swiper-button-disabled { cursor: auto; opacity: .35; pointer-events: none }
&.swiper-button-hidden { cursor: auto; opacity: 0; pointer-events: none }
.swiper-navigation-disabled & { display: none !important }
svg { height: 100%; object-fit: contain; transform-origin: center; width: 100%; fill: currentColor; pointer-events: none }
}
.swiper-button-lock { display: none }
.swiper-button-next, .swiper-button-prev { margin-top: calc(0px - var(--swiper-navigation-size)/2); top: var(--swiper-navigation-top-offset, 50%) }
.swiper-button-prev { left: var(--swiper-navigation-sides-offset, 4px); right: auto; .swiper-navigation-icon { transform: rotate(180deg) }
}
.swiper-button-next { left: auto; right: var(--swiper-navigation-sides-offset, 4px) }
.swiper-horizontal { .swiper-button-next, .swiper-button-prev, ~ .swiper-button-next, ~ .swiper-button-prev { margin-left: 0; margin-top: calc(0px - var(--swiper-navigation-size)/2); top: var(--swiper-navigation-top-offset, 50%) }
&.swiper-rtl .swiper-button-next, &.swiper-rtl ~ .swiper-button-next, & ~ .swiper-button-prev, .swiper-button-prev { left: var(--swiper-navigation-sides-offset, 4px); right: auto }
&.swiper-rtl .swiper-button-prev, &.swiper-rtl ~ .swiper-button-prev, & ~ .swiper-button-next, .swiper-button-next { left: auto; right: var(--swiper-navigation-sides-offset, 4px) }
&.swiper-rtl .swiper-button-next, &.swiper-rtl ~ .swiper-button-next, & ~ .swiper-button-prev, .swiper-button-prev { .swiper-navigation-icon { transform: rotate(180deg) }
}
&.swiper-rtl .swiper-button-prev, &.swiper-rtl ~ .swiper-button-prev { .swiper-navigation-icon { transform: rotate(0deg) }
}
}
.swiper-vertical { .swiper-button-next, .swiper-button-prev, ~ .swiper-button-next, ~ .swiper-button-prev { left: var(--swiper-navigation-top-offset, 50%); margin-left: calc(0px - var(--swiper-navigation-size)/2); margin-top: 0; right: auto }
.swiper-button-prev, ~ .swiper-button-prev { bottom: auto; top: var(--swiper-navigation-sides-offset, 4px); .swiper-navigation-icon { transform: rotate(-90deg) }
}
.swiper-button-next, ~ .swiper-button-next { bottom: var(--swiper-navigation-sides-offset, 4px); top: auto; .swiper-navigation-icon { transform: rotate(90deg) }
}
}
.swiper-pagination { position: absolute; text-align: center; transform: translateZ(0); transition: opacity .3s; z-index: 10; &.swiper-pagination-hidden { opacity: 0 }
&.swiper-pagination-disabled, .swiper-pagination-disabled > & { display: none !important }
}
.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction { bottom: var(--swiper-pagination-bottom, 8px); left: 0; top: var(--swiper-pagination-top, auto); width: 100% }
.swiper-pagination-bullets-dynamic { font-size: 0; overflow: hidden; .swiper-pagination-bullet { position: relative; transform: scale(.33) }
.swiper-pagination-bullet-active, .swiper-pagination-bullet-active-main { transform: scale(1) }
.swiper-pagination-bullet-active-prev { transform: scale(.66) }
.swiper-pagination-bullet-active-prev-prev { transform: scale(.33) }
.swiper-pagination-bullet-active-next { transform: scale(.66) }
.swiper-pagination-bullet-active-next-next { transform: scale(.33) }
}
.swiper-pagination-bullet { background: var(--swiper-pagination-bullet-inactive-color, #000); border-radius: var(--swiper-pagination-bullet-border-radius, 50%); display: inline-block; height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px)); opacity: var(--swiper-pagination-bullet-inactive-opacity, .2); width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px)); button& { appearance: none; border: none; box-shadow: none; margin: 0; padding: 0 }
.swiper-pagination-clickable & { cursor: pointer }
&:only-child { display: none !important }
}
.swiper-pagination-bullet-active { background: var(--swiper-pagination-color, var(--swiper-theme-color)); opacity: var(--swiper-pagination-bullet-opacity, 1) }
.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical > .swiper-pagination-bullets { left: var(--swiper-pagination-left, auto); right: var(--swiper-pagination-right, 8px); top: 50%; transform: translate3d(0, -50%, 0); .swiper-pagination-bullet { display: block; margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0 }
&.swiper-pagination-bullets-dynamic { top: 50%; transform: translateY(-50%); width: 8px; .swiper-pagination-bullet { display: inline-block; transition: transform .2s, top .2s }
}
}
.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-horizontal.swiper-pagination-bullets { .swiper-pagination-bullet { margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px) }
&.swiper-pagination-bullets-dynamic { left: 50%; transform: translateX(-50%); white-space: nowrap; .swiper-pagination-bullet { transition: transform .2s, left .2s }
}
}
.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet { transition: transform .2s, right .2s }
.swiper-pagination-fraction { color: var(--swiper-pagination-fraction-color, inherit) }
.swiper-pagination-progressbar { background: var(--swiper-pagination-progressbar-bg-color, #00000040); position: absolute; .swiper-pagination-progressbar-fill { background: var(--swiper-pagination-color, var(--swiper-theme-color)); height: 100%; left: 0; position: absolute; top: 0; transform: scale(0); transform-origin: left top; width: 100% }
.swiper-rtl & .swiper-pagination-progressbar-fill { transform-origin: right top }
&.swiper-pagination-horizontal, &.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-horizontal > &, .swiper-vertical > &.swiper-pagination-progressbar-opposite { height: var(--swiper-pagination-progressbar-size, 4px); left: 0; top: 0; width: 100% }
&.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite, &.swiper-pagination-vertical, .swiper-horizontal > &.swiper-pagination-progressbar-opposite, .swiper-vertical > & { height: 100%; left: 0; top: 0; width: var(--swiper-pagination-progressbar-size, 4px) }
}
.swiper-pagination-lock { display: none }
.swiper-scrollbar { background: var(--swiper-scrollbar-bg-color, #0000001a); border-radius: var(--swiper-scrollbar-border-radius, 10px); position: relative; touch-action: none; &.swiper-scrollbar-disabled, .swiper-scrollbar-disabled > & { display: none !important }
&.swiper-scrollbar-horizontal, .swiper-horizontal > & { bottom: var(--swiper-scrollbar-bottom, 4px); height: var(--swiper-scrollbar-size, 4px); left: var(--swiper-scrollbar-sides-offset, 1%); position: absolute; top: var(--swiper-scrollbar-top, auto); width: calc(100% - var(--swiper-scrollbar-sides-offset, 1%)*2); z-index: 50 }
&.swiper-scrollbar-vertical, .swiper-vertical > & { height: calc(100% - var(--swiper-scrollbar-sides-offset, 1%)*2); left: var(--swiper-scrollbar-left, auto); position: absolute; right: var(--swiper-scrollbar-right, 4px); top: var(--swiper-scrollbar-sides-offset, 1%); width: var(--swiper-scrollbar-size, 4px); z-index: 50 }
}
.swiper-scrollbar-drag { background: var(--swiper-scrollbar-drag-bg-color, #00000080); border-radius: var(--swiper-scrollbar-border-radius, 10px); height: 100%; left: 0; position: relative; top: 0; width: 100% }
.swiper-scrollbar-cursor-drag { cursor: move }
.swiper-scrollbar-lock { display: none }
.swiper-zoom-container { align-items: center; display: flex; height: 100%; justify-content: center; text-align: center; width: 100%; > canvas, > img, > svg { max-height: 100%; max-width: 100%; object-fit: contain }
}
.swiper-slide-zoomed { cursor: move; touch-action: none }
.swiper .swiper-notification { left: 0; opacity: 0; pointer-events: none; position: absolute; top: 0; z-index: -1000 }
.swiper-free-mode > .swiper-wrapper { margin: 0 auto; transition-timing-function: ease-out }
.swiper-grid > .swiper-wrapper { flex-wrap: wrap }
.swiper-grid-column > .swiper-wrapper { flex-direction: column; flex-wrap: wrap }
.swiper-fade { &.swiper-free-mode { .swiper-slide { transition-timing-function: ease-out }
}
.swiper-slide { pointer-events: none; transition-property: opacity; .swiper-slide { pointer-events: none }
}
.swiper-slide-active { pointer-events: auto; & .swiper-slide-active { pointer-events: auto }
}
}
.swiper.swiper-cube { overflow: visible }
.swiper-cube { .swiper-slide { backface-visibility: hidden; height: 100%; pointer-events: none; transform-origin: 0 0; visibility: hidden; width: 100%; z-index: 1; .swiper-slide { pointer-events: none }
}
&.swiper-rtl .swiper-slide { transform-origin: 100% 0 }
.swiper-slide-active { &, & .swiper-slide-active { pointer-events: auto }
}
.swiper-slide-active, .swiper-slide-next, .swiper-slide-prev { pointer-events: auto; visibility: visible }
.swiper-cube-shadow { bottom: 0; height: 100%; left: 0; opacity: .6; position: absolute; width: 100%; z-index: 0; &:before { background: #000; bottom: 0; content: ""; filter: blur(50px); left: 0; position: absolute; right: 0; top: 0 }
}
}
.swiper-cube { .swiper-slide-next + .swiper-slide { pointer-events: auto; visibility: visible }
}
.swiper-cube { .swiper-slide-shadow-cube.swiper-slide-shadow-bottom, .swiper-slide-shadow-cube.swiper-slide-shadow-left, .swiper-slide-shadow-cube.swiper-slide-shadow-right, .swiper-slide-shadow-cube.swiper-slide-shadow-top { backface-visibility: hidden; z-index: 0 }
}
.swiper.swiper-flip { overflow: visible }
.swiper-flip { .swiper-slide { backface-visibility: hidden; pointer-events: none; z-index: 1; .swiper-slide { pointer-events: none }
}
.swiper-slide-active { &, & .swiper-slide-active { pointer-events: auto }
}
}
.swiper-flip { .swiper-slide-shadow-flip.swiper-slide-shadow-bottom, .swiper-slide-shadow-flip.swiper-slide-shadow-left, .swiper-slide-shadow-flip.swiper-slide-shadow-right, .swiper-slide-shadow-flip.swiper-slide-shadow-top { backface-visibility: hidden; z-index: 0 }
}
.swiper-creative { .swiper-slide { backface-visibility: hidden; overflow: hidden; transition-property: transform, opacity, height }
}
.swiper.swiper-cards { overflow: visible }
.swiper-cards { .swiper-slide { backface-visibility: hidden; overflow: hidden; transform-origin: center bottom }
}
/* ================= Swiper css end here================= */
