.hero-v23 {
  position: relative;
}
/* .hero-v23.hero-subpage .item ,
.hero-v23.hero-subpage .item .slide-bg,
.hero-v23.hero-subpage {
  height: 600px;
} */

.hero-v23 .item .hero-scale-bg {
    transition: transform 0.4s ease-out;
    will-change: transform;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.hero-v23.hero-lemke .item {
  padding-top: 140px;
}
.hero-v23.hero-lemke .item::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #000;
    opacity: 0.5;
    z-index: 1;
}

/* Slider Zoom Effect */
@-webkit-keyframes zoom {
  from {
    -webkit-transform: scale(1, 1);
  }

  to {
    -webkit-transform: scale(1.2, 1.2);
  }
}

@-moz-keyframes zoom {
  from {
    -moz-transform: scale(1, 1);
  }

  to {
    -moz-transform: scale(1.2, 1.2);
  }
}

@-o-keyframes zoom {
  from {
    -o-transform: scale(1, 1);
  }

  to {
    -o-transform: scale(1.2, 1.2);
  }
}

@keyframes zoom {
  from {
    transform: scale(1, 1);
  }

  to {
    transform: scale(1.2, 1.2);
  }
}
.hero-v23 .item .slide-bg,
.hero-v23.hero-subpage .item .slide-bg {
  -webkit-animation: none;
  animation: none;
}
.hero-v23 .item .caption-holder {
  position: relative;
  padding: 80px 0;
}
.hero-v23 .item .caption-holder .caption-holder-text{
  position: relative;
  background: rgba(15, 64, 126, 0.9);
  padding: 40px 30px 80px;
  max-width: 650px;
  border-radius: 40px;
  margin: auto;
}
.hero-v23 .item .caption-holder .caption-holder-text .wrapper-hidden {
  overflow: hidden;
  position: relative;
}

/* .hero-v23 .item .caption-holder .caption-holder-text .caption-holder-content {
  position: relative;
  z-index: 2;
  background: rgba(15, 64, 126, 0.9);
} */
.hero-v23 .item .caption-holder h1,
.hero-v23 .item .caption-holder h2 {
  text-transform: inherit;
  font-weight: 400;
  font-size: 36px;
  margin-top: 0;
  margin-bottom: 25px;
  color: #fff;
}
.hero-v23 .item .caption-holder h2 span.over {
  font-size: 30px;
  color: #ffffff;
  font-weight: 100;
  text-transform: uppercase;
}

.hero-v23.hero-subpage.banner h1{
  font-size: 36px;
}
.hero-v23 .item .caption-holder p {
  font-size: 18px;
  line-height: 28px;
  color: #d5c8c2;
}
@media (min-width: 768px){
  .hero-v23 .item .caption-holder h1,
  .hero-v23 .item .caption-holder h2 {
    font-size: 62px;
  }
  .hero-v23.hero-subpage.banner h1{
    font-size: 54px;
  } 
}
.hero-v23 .table-cell {
  position: relative;
  z-index: 1;
}

.hero-v23 .carousel .carousel-indicator {
  position: absolute;
  top: auto;
  left: 50%;
  right: auto;
  width: 100%;
  bottom: 100px;
  max-width: 100%;
  transform: translateX(-50%);
}

.hero-v23 .carousel .carousel-control.left, .hero-v23 .carousel .carousel-control.right {
  position: absolute;
  z-index: 2;
  top: auto;
  bottom: 30px;
  left: 56%;
  transform: translateX(-50%);
  text-align: center;
  width: 38px;
  height: 38px;
  line-height: 38px;
  background-color: #0f407e;
  opacity: 1;
  text-shadow: none;
  background-image: none;
  border-radius: 50%;
    transition: 0.4s;
}
.hero-v23 .carousel .carousel-control.left {
    left: 44%;
}
.hero-v23 .carousel .carousel-control:hover {
   background-color: #C82027;
    transition: 0.4s;
}
@media only screen and (min-width: 600px) {
  .hero-v23 .carousel .carousel-control.left {
    left: 46%;
  }
  .hero-v23 .carousel .carousel-control.right {
    left: 54%;
  }
}
@media (min-width: 768px) {
  .hero-v23 .carousel .carousel-indicator {
    width: 750px;
  }
    .hero-v23 .carousel .carousel-control.left {
      left: 47%;
  }
}

@media (min-width: 992px) {
  .hero-v23 .carousel .carousel-indicator {
    width: 970px;
  }
}

@media (min-width: 1200px) {
  .hero-v23 .carousel .carousel-indicator {
    width: 1140px;
  }
  .hero-v23 .item .caption-holder .caption-holder-text {
      padding: 40px 40px 80px;
  }
  .hero-v23 .carousel .carousel-control.left {
    left: 48%;
  }
}
.hero-v23 .carousel .carousel-indicator .carousel-indicators {
  position: relative;
  display: table;
  margin: 0 auto;
  left: 0;
  width: auto;
  bottom: 0;
  z-index: 2;
}
.hero-v23 .carousel .carousel-indicators li {
  display: inline-block;
  height: 14px;
  width: 14px;
  margin: 0 5px;
  border: 0;
  background: #fff;
  position: relative;
  z-index: 1;
  opacity: 1;
  border-radius: 50%;
}
.hero-v23 .carousel .carousel-indicators li.active {
  opacity: 1;
  background: #c82027;
}
.slide-down {
  opacity: 0;
  animation: slide-down 1s cubic-bezier(0.4, 0, 0.2, 1) 500ms forwards;
  -webkit-animation: slide-down 1s cubic-bezier(0.4, 0, 0.2, 1) 500ms forwards;
}
.slide-up {
  opacity: 0;
  animation: slide-down 1s cubic-bezier(0.4, 0, 0.2, 1) 500ms forwards;
  -webkit-animation: slide-up 1s cubic-bezier(0.4, 0, 0.2, 1) 500ms forwards;
}
.slide-in {
  opacity: 0;
  animation: slide-in 2s cubic-bezier(0.4, 0, 0.2, 1) 500ms forwards;
  -webkit-animation: slide-in 2s cubic-bezier(0.4, 0, 0.2, 1) 500ms forwards;
  animation-delay: var(--delay, 0s);
  -webkit-animation-delay: var(--delay, 0s);
}
@-webkit-keyframes slide-down {
    0% { -webkit-transform: translateY(-200%); opacity: 1 }
    100% { -webkit-transform: translateY(0); opacity: 1  }
}
@keyframes slide-down {
    0% { transform: translateY(-200%); opacity: 1 }
    100% { transform: translateY(0); opacity: 1  }
}
@-webkit-keyframes slide-up {
    0% { -webkit-transform: translateY(100%); opacity: 1 }
    100% { -webkit-transform: translateY(0); opacity: 1  }
}
@keyframes slide-up {
    0% { transform: translateY(100%); opacity: 1 }
    100% { transform: translateY(0); opacity: 1  }
}
@-webkit-keyframes slide-in {
    0% { -webkit-transform: translateX(100%); opacity: 0 }
    100% { -webkit-transform: translateX(0); opacity: 1  }
}
@keyframes slide-in {
    0% { transform: translateX(100%); opacity: 0 }
    100% { transform: translateX(0); opacity: 1  }
}
.hero-v23.hero-subpage .caption-holder .slide-up .btn-theme{
  margin: 10px;
}
.hero-v23.hero-subpage .caption-holder .slide-up .btn-white.btn-theme{
  margin: 10px;
}
@media (min-width:576px){
  .hero-v23.hero-subpage .caption-holder .slide-up .btn-white.btn-theme{
    margin-left: 20px;
  }
}
.hero-v23 .spacer {
	position: absolute;
  z-index: 1;
  left: 0;
  right: 0;
  bottom: 0;
}
.hero-v23 .spacer .spacer-inner{
	height: 40px;
}
@media (min-width: 768px) {
	.hero-v23 .spacer .spacer-inner{
		height: 100px;
	}	
}
@media (min-width: 1200px) {
	.hero-v23 .spacer .spacer-inner{
		height: 125px;
	}	
}
@media (min-width: 1800px) {
	.hero-v23 .spacer .spacer-inner{
		height: 185px;
	}	
}

.hero-v23.hero-subpage {
  border-bottom: 10px solid #E96520;
}

/* Bootstrap Fade In out Animation */
/* YOUR CSS simplified */  
.carousel-inner > .item > img, .carousel-inner > .item > a > img {
        display: block;
        height: auto;
        width: 100%;
        line-height: 1;
    }

/*Bootstrap Carousel Fade Transition (for Bootstrap 3.3.x)
  CSS from:       http://codepen.io/transportedman/pen/NPWRGq
  and:            http://stackoverflow.com/questions/18548731/bootstrap-3-carousel-fading-to-new-slide-instead-of-sliding-to-new-slide
  Inspired from:  http://codepen.io/Rowno/pen/Afykb*/
.carousel-fade .carousel-inner .item {
  opacity: 0;
  transition-property: opacity;
}    
.carousel-fade .carousel-inner .active {
  opacity: 1;
}    
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
  left: 0;
  opacity: 0;
  z-index: 1;
}    
.carousel-fade .carousel-inner .next.left,
.carousel-fade .carousel-inner .prev.right {
  opacity: 1;
}    
.carousel-fade .carousel-control {
  z-index: 2;
}

/*WHAT IS NEW IN 3.3: "Added transforms to improve carousel performance in modern browsers."
  Need to override the 3.3 new styles for modern browsers & apply opacity*/
@media all and (transform-3d), (-webkit-transform-3d) {
    .carousel-fade .carousel-inner > .item.next,
    .carousel-fade .carousel-inner > .item.active.right {
      opacity: 0;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
    .carousel-fade .carousel-inner > .item.prev,
    .carousel-fade .carousel-inner > .item.active.left {
      opacity: 0;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
    .carousel-fade .carousel-inner > .item.next.left,
    .carousel-fade .carousel-inner > .item.prev.right,
    .carousel-fade .carousel-inner > .item.active {
      opacity: 1;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
}


.hero-v23 .animate-shapes {
  position: absolute;
  left: -60px;
  top: 0;
  z-index: -1;
  opacity: 0.7;
  max-width: 100px;
}
.hero-v23 .animate-shapes img,
.hero-v23 .animate-shapes-rt img{
  max-width: 100%;
}
.hero-v23 .animate-shapes-rt {
  position: absolute;
  right: -60px;
  bottom: -40px;
  z-index: -1;
  opacity: 0.7;
  max-width: 100px;
}
.hero-v23 .bounce-y {
  -webkit-animation: bounce-y 10s infinite linear;
          animation: bounce-y 10s infinite linear;
  -webkit-transition-delay: 900ms;
          transition-delay: 900ms;
}
.hero-v23 .bounce-x {
  -webkit-animation: bounce-x 10s infinite linear;
          animation: bounce-x 10s infinite linear;
  -webkit-transition-delay: 1200ms;
          transition-delay: 1200ms;
}
@-webkit-keyframes bounce-y {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-30px);
            transform: translateY(-30px);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes bounce-y {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-30px);
            transform: translateY(-30px);
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes bounce-x {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  50% {
    -webkit-transform: translateX(30px);
            transform: translateX(30px);
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@keyframes bounce-x {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  50% {
    -webkit-transform: translateX(30px);
            transform: translateX(30px);
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
/* @media only screen and (max-width: 768px) {
  .hero-v23 .carousel .carousel-control.right {
    left: 53%;
  }
} */
/* @media only screen and (min-width: 1024px) {
  .hero-v23 .carousel .carousel-control.right {
    left: 53%;
  }
} */
@media only screen and (min-width: 1200px) {
  .hero-v23.hero-lemke .item {
    margin-block-start: 200px;
    padding-block-start: 120px;
  }
  .hero-v23 .carousel .carousel-control.right {
    left: 52%;
  }
  
}