.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.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 {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}
.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none; /* For Firefox */
  -ms-overflow-style: none; /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-theme-color);
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}
.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}
.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-fade .swiper-slide-active {
  pointer-events: auto;
}
.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}

.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}

/* Slide styles end */
.swiper-button-prev,
.swiper-button-next {
  width: var(--swiper-navigation-size);
  height: var(--swiper-navigation-size);
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  color: var(--swiper-color);
  transition-property: color, transform;
}
.swiper-button-prev:hover, .swiper-button-prev:focus,
.swiper-button-next:hover,
.swiper-button-next:focus {
  color: var(--swiper-color-active);
}
.swiper-button-prev:focus, .swiper-button-prev:focus-visible,
.swiper-button-next:focus,
.swiper-button-next:focus-visible {
  outline: 1px solid currentcolor;
}
.swiper-button-prev svg.icon,
.swiper-button-next svg.icon {
  width: var(--swiper-navigation-icon-size);
  height: var(--swiper-navigation-icon-size);
  pointer-events: none;
}
.swiper-button-prev.swiper-button-lock, .swiper-button-prev.swiper-button-hidden, .swiper-button-hidden .swiper-button-prev,
.swiper-button-next.swiper-button-lock,
.swiper-button-next.swiper-button-hidden,
.swiper-button-hidden .swiper-button-next {
  display: none;
}
.swiper-button-prev.swiper-button-disabled, .swiper-button-disabled .swiper-button-prev,
.swiper-button-next.swiper-button-disabled,
.swiper-button-disabled .swiper-button-next {
  color: var(--swiper-color-inactive);
  cursor: default;
  pointer-events: none;
  opacity: 0;
}

.swiper-pagination-bullet {
  position: relative;
  display: block;
  font-size: 0;
  width: var(--swiper-pagination-bullet-full);
  height: var(--swiper-pagination-bullet-full);
  border-radius: var(--swiper-pagination-radius);
}
.swiper-pagination-bullet::before {
  position: absolute;
  top: calc(50% - 0.5 * var(--swiper-pagination-bullet));
  left: calc(50% - 0.5 * var(--swiper-pagination-bullet));
  content: "";
  display: block;
  width: var(--swiper-pagination-bullet);
  height: var(--swiper-pagination-bullet);
  border-radius: var(--swiper-pagination-radius);
  background-color: var(--swiper-color-inactive);
  transition-property: background-color;
}
.swiper-pagination-bullet:only-child {
  display: none;
}
.swiper-pagination-bullet:hover::before, .swiper-pagination-bullet:focus::before {
  background-color: var(--swiper-color);
}
.swiper-pagination-bullet:focus-visible {
  outline: 1px solid currentcolor;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-bullet:active::before, .swiper-pagination-bullet.swiper-pagination-bullet-active::before {
  background-color: var(--swiper-color-active);
}

.swiper-pagination {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--swiper-pagination-gap);
  width: 100%;
  z-index: 5;
  margin-top: var(--spacing);
}
.swiper-pagination.swiper-pagination-lock, .swiper-pagination.swiper-pagination-hidden, .swiper-pagination-hidden .swiper-pagination, .swiper-pagination.swiper-pagination-disabled, .swiper-pagination-disabled .swiper-pagination, .swiper-pagination:empty {
  display: none;
}

.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-button:not([class*=bullet-active]) {
  display: none;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
}

.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0, -50%, 0);
}
.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0;
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  height: var(--swiper-pagination-bullet-full);
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

.swiper-pagination-progressbar {
  position: relative;
  background: var(--swiper-scrollbar-bg-color) !important;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-pagination-progressbar.swiper-pagination-horizontal {
  width: 100%;
  height: var(--swiper-scrollbar-size);
}
.swiper-pagination-progressbar.swiper-pagination-vertical {
  height: 100%;
  width: var(--swiper-scrollbar-size);
}

.swiper-shell.has-normal-navigation {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  -moz-column-gap: var(--swiper-navigation-gap);
       column-gap: var(--swiper-navigation-gap);
  align-items: center;
}
.swiper-shell.has-normal-navigation .swiper-button-prev {
  order: -1;
}
.swiper-shell.has-normal-navigation .swiper-navigation-disabled ~ .swiper-button-prev,
.swiper-shell.has-normal-navigation .swiper-navigation-disabled ~ .swiper-button-next {
  display: none;
}
.swiper-shell.has-normal-navigation .swiper:not(.swiper-navigation-disabled) {
  width: calc(100% - 2 * var(--swiper-navigation-size) - 2 * var(--swiper-navigation-gap));
}

.swiper-shell.has-overlay-navigation {
  --swiper-color: rgba(255, 255, 255, 0.5);
  --swiper-color-active: rgba(255, 255, 255, 0.9);
  --swiper-color-inactive: rgba(255, 255, 255, 0.2);
  position: relative;
}
.swiper-shell.has-overlay-navigation .swiper-button-prev,
.swiper-shell.has-overlay-navigation .swiper-button-next,
.swiper-shell.has-overlay-navigation .swiper-pagination {
  position: absolute;
  z-index: 20;
}
.swiper-shell.has-overlay-navigation .swiper-button-prev svg:not(.swiper-button-disabled svg),
.swiper-shell.has-overlay-navigation .swiper-button-prev .swiper-pagination-bullet,
.swiper-shell.has-overlay-navigation .swiper-button-next svg:not(.swiper-button-disabled svg),
.swiper-shell.has-overlay-navigation .swiper-button-next .swiper-pagination-bullet,
.swiper-shell.has-overlay-navigation .swiper-pagination svg:not(.swiper-button-disabled svg),
.swiper-shell.has-overlay-navigation .swiper-pagination .swiper-pagination-bullet {
  filter: var(--drop-shadow);
}
.swiper-shell.has-overlay-navigation .swiper-button-prev {
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.swiper-shell.has-overlay-navigation .swiper-button-next {
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.swiper-shell.has-overlay-navigation .swiper-pagination {
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  margin: 0;
  padding-block-end: 1em;
}
.swiper-shell.has-overlay-navigation .swiper {
  width: 100%;
}

.swiper-grid .swiper-wrapper {
  flex-wrap: wrap;
}
.swiper-grid .swiper-wrapper .swiper-slide {
  height: auto !important;
}

.swiper-free-mode .swiper-slide {
  width: auto;
}