:root {
  --crsl-bg: transparent;
  --box-bg: #1e272e;
  --box-shadow: #0000001c;
  --box-shadow-border: #0000000f;
  --box-border: #fff;
}

html>.carousel, body>.carousel {
  padding-top: 125px;
}

.carousel {
  position: relative;
  display: block;
  width: 100%;
  box-sizing: border-box;
}

.carousel__prev, .carousel__next {
  position: absolute;
  bottom: -2.5rem;
  transition: transform 0.25s ease;
  z-index: 100
}

.carousel__prev i, .carousel__next i {
  font-size: 60px;
  color: var(--box-border);
  cursor: pointer;
  filter: drop-shadow(4px 4px 5px rgba(0, 0, 0, 0.25));
}

.carousel__prev:hover, .carousel__next:hover {
  transform: scale(1.25);
}

.carousel__prev {
  left: 40%;
}

.carousel__next {
  right: 40%;
}

.carousel__body {
  width: 100%;
  padding: 3rem 0 2rem 0;
  overflow: hidden;
  height: 65vh;
}

.carousel__body .carousel__slider {
  position: relative;
  transition: transform 1s ease-in-out;
  background: var(--crsl-bg);
}

.carousel__body .carousel__slider__item {
  position: relative;
  display: block;
  float: left;
  box-sizing: border-box;
  margin-left: 20px;
  margin-right: 20px;
}

.carousel__body .carousel__slider__item .item__3d-frame {
  position: relative;
  width: 100%;
  height: 100%;
  transition: transform 1s ease-in-out;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.carousel__body .carousel__slider__item .item__3d-frame:after {
  content: "";
  position: absolute;
  bottom: -15%;
  width: 100%;
  height: 40px;
  background: var(--box-shadow);
  box-shadow: 0px 0px 5px 5px var(--box-shadow);
  transform: rotateX(90deg) translate3d(0px, -20px, 0px);
  opacity: 0.85;
}

.carousel__body .carousel__slider__item .item__3d-frame__box {
  display: flex;
  align-items: center;
  vertical-align: middle;
  text-align: center;
  position: absolute;
  width: 100%;
  height: auto;
  background: var(--box-bg);
  border-style: solid;
}

.carousel__body .carousel__slider__item .item__3d-frame__box h1 {
  font-size: 7em;
  width: 100%;
  color: var(--box-border);
}

.carousel__body .carousel__slider__item .item__3d-frame__box--right, .carousel__body .carousel__slider__item .item__3d-frame__box--left {
  top: 0;
  width: 1px;
  backface-visibility: hidden;
}

.carousel__body .carousel__slider__item .item__3d-frame__box--left {
  left: 0;
  border-left-width: 2.5px;
  transform: translate3d(0px, 0, -1px) rotateY(-90deg);
  transform-origin: 0%;
}

.carousel__body .carousel__slider__item .item__3d-frame__box--right {
  right: 0;
  border-right-width: 2.5px;
  transform: translate3d(0px, 0, -1px) rotateY(90deg);
  transform-origin: 100%;
}

.sliderCard {
  display: flex;
  justify-content: center;
  height: 100vh;
  align-items: center;
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: transparent;
  background-clip: border-box;
  border: none;
  border-radius: 0;
}

@media (max-width: 767px) {
  .carousel__body {
    padding: 3rem 0 2rem 0;
    height: 50vh;
  }

  .carousel__prev {
    left: 30%;
  }

  .carousel__next {
    right: 30%;
  }
}

@media (min-width:1600px) {
  .carousel__body {
    padding: 7.5rem 0 2rem 0;
    height: 77.5vh;
  }

  .carousel__prev, .carousel__next {
    bottom: -1.5rem;
  }
}
