.elementor-widget-dsn_arrow_nav {
  pointer-events: none;
}
.dsn-nav-arrow {
  --dsn-icon-size: 25px;
  pointer-events: none;



  .dsn-nav-left, .dsn-nav-right {
    padding: 15px;
    border-radius: 50%;
    cursor: pointer;
    pointer-events: auto;
  }

  .dsn-nav-left {
    margin-right: 15px;
  }

  .dsn-nav-right .dsn-icon {
    transform: rotate(180deg);

  }

}

.next-container,
.prev-container {
  cursor: pointer;
  $width-arrow: 3px;
  $wh_svg: 45px;

  .triangle {
    width: 0;
    height: 0;
    border-top: $width-arrow solid transparent;
    border-bottom: $width-arrow solid transparent;
    transition: all 0.6s cubic-bezier(0.77, 0, 0.175, 1);
  }

  &.next-container {
    .container-inner:before {
      content: "";
      margin-right: 7px;
    }

    .triangle {
      border-left: #{$width-arrow * 2} solid $heading-color;
      margin-right: #{($wh_svg / 2) - $width-arrow};
    }

    svg {
      right: 0;
    }
  }

  &.prev-container {
    .container-inner:after {
      content: "";
      margin-left: 7px;
    }

    .triangle {
      border-right: #{$width-arrow * 2} solid $heading-color;
      margin-left: #{($wh_svg / 2) - $width-arrow};
    }

    svg {
      left: 0;
    }
  }

  .container-inner {
    position: relative;
    height: $wh_svg;
    display: flex;
    align-items: center;

    &:after,
    &:before {
      position: relative;
      width: 55px;
      height: 1px;
      background-color: $border-color;
      transition: width 0.6s cubic-bezier(0.77, 0, 0.175, 1), opacity 0.5s cubic-bezier(0.77, 0, 0.175, 1);
      transform-origin: right;
    }

    svg {
      position: absolute;
      width: $wh_svg;
      height: $wh_svg;

      circle {
        stroke: $border-color;
        stroke-dasharray: 1px;
      }
    }
  }

  svg circle {
    transition: all 0.6s ease-in;
  }

  &:hover {
    .container-inner {

      &:before,
      &:after {
        width: 15px;
        opacity: 0;
        transition: width 0.6s cubic-bezier(0.77, 0, 0.175, 1), opacity 0.5s cubic-bezier(0.77, 0, 0.175, 1) 0.3s;

      }

      svg circle {
        stroke-dashoffset: 95;
      }
    }
  }
}

.swiper-pagination-bullets, .swiper-pagination-fraction, .swiper-pagination-progressbar {
  position: relative;
  --swiper-pagination-color: var(--theme-color);
  --swiper-pagination-bullet-inactive-color: var(--theme-color);

  @include media_575() {
    display: none;
  }
}

.swiper-pagination-fraction {
  bottom: 0;
  width: auto;
  display: block;
}

.dsn-swiper .swiper-pagination-progressbar {
  position: relative;
  width: 30% !important;
  height: 1px !important;
  background-color: $border-color;

  --swiper-pagination-color: var(--theme-color);

  span {
    transition-property: transform;
  }
}


.dsn-swiper-circle .swiper-pagination-bullet {
  position: relative;
  background-color: transparent;
  --swiper-pagination-bullet-width: 20px;
  --swiper-pagination-bullet-height: 20px;
  opacity: 1;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
  z-index: 2;
  margin: 5px;
  bottom: 0 !important;

  &:not(.swiper-pagination-bullet-active , .swiper-pagination-bullet-active-prev , .swiper-pagination-bullet-active-next) {
    transform: scale(0.33);
  }


  &::before,
  &::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    transition: all 0.3s ease-in-out;
  }

  &::before {
    background-color: $theme-color;
    transform: scale(0.7);
  }

  &::after {
    border: 1.5px solid $theme-color;
    transform: scale(0.7);
  }

  &.swiper-pagination-bullet-active {
    &::before {
      transform: scale(0.4);
    }

    &::after {
      transform: scale(1);
    }
  }
}


.dsn-swiper .swiper-container-vertical {
  height: 70vh;
}

.swiper-pagination-bullet {
  width: 20px;
  height: 2px;
  border-radius: 0;
  margin-right: 5px;
  cursor: pointer;
  background: $theme-color;
  transition: transform 0.3s ease-in-out;
}

.swiper-pagination-bullets.swiper-pagination-horizontal {
  width: auto;
  bottom: 0;
}

.swiper-pagination-fraction {
  width: auto !important;
  position: relative !important;
  bottom: auto !important;
}

.dsn-swiper-paginate {
  align-items: center;
}

.e-container > .elementor-element.elementor-absolute, .elementor-widget-wrap > .elementor-element.elementor-absolute {
  &.elementor-widget-dsn_arrow_nav.container {
    left: 0;
    right: 0;
  }
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{
  left: 0;
  transform: none;
}