.carousel-indicators [data-bs-target]{
  opacity: .3;
  width: 1rem;
  height: 0.375rem;
  margin: 0 0.3rem;
  padding: 0;
  transition: width .2s ease-in-out,background-color .2s ease-in-out;
  border: 0;
  border-radius: 50rem;
}

.carousel-indicators{
  .active{
    width: 2rem;
    opacity: .7;
  }
}

.bs-carousel {
  margin: 0 12% 0 12% !important;
}
.bs-carousel .carousel-inner {
  transform: translate3d(-10%, 0px, 0px);

  width: calc(1000%);
  transition-duration: 0.5s;

  display: flex !important;
  opacity: 1;
  position: relative;
  overflow: hidden;
  touch-action: manipulation;
  white-space: nowrap;
}
.bs-carousel .carousel-inner .carousel-item {
  padding-left: 0.5rem;
  padding-right: 0.5rem;

  width: calc(10%);

  display: inline-block !important;
  white-space: normal;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;

  margin-right: 0;
  float: none;
  transition: opacity .15s ease-in-out;
  opacity: .6;
}
.bs-carousel .carousel-inner .carousel-item.active {
  opacity: 1;
}
.bs-carousel-wrapper .bs-carousel .carousel-item {
  -webkit-transform: none !important;
  -moz-transform: none !important;
  -ms-transform: none !important;
  -o-transform: none !important;
  transform: none !important;
}

//
.carousel-item > .ratio {
  display: block;
  padding: 0;
  overflow: hidden;
}