/*!
 * Bootstrap v4.0.0-alpha.6 (https://getbootstrap.com)
 * Copyright 2011-2017 The Bootstrap Authors
 * Copyright 2011-2017 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! Carousel Only */
.bannercarousel {
  position: relative; }

.bannercarousel-inner {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden; }

.bannercarousel-item {
  background: black;
  position: relative;
  display: none;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  transition: -webkit-transform 0.6s ease;
  transition: transform 0.6s ease;
  transition: transform 0.6s ease, -webkit-transform 0.6s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-perspective: 1000px;
  perspective: 1000px; }

.bannercarousel-item.active,
.bannercarousel-item-next,
.bannercarousel-item-prev {
  display: block; }

.bannercarousel-item-next,
.bannercarousel-item-prev {
  position: absolute;
  top: 0; }

.bannercarousel-item-next.bannercarousel-item-left,
.bannercarousel-item-prev.bannercarousel-item-right {
  -webkit-transform: translateX(0);
  transform: translateX(0); }
  @supports (-webkit-transform-style: preserve-3d) or (transform-style: preserve-3d) {
    .bannercarousel-item-next.bannercarousel-item-left,
    .bannercarousel-item-prev.bannercarousel-item-right {
      -webkit-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0); } }

.bannercarousel-item-next,
.active.bannercarousel-item-right {
  -webkit-transform: translateX(100%);
  transform: translateX(100%); }
  @supports (-webkit-transform-style: preserve-3d) or (transform-style: preserve-3d) {
    .bannercarousel-item-next,
    .active.bannercarousel-item-right {
      -webkit-transform: translate3d(100%, 0, 0);
      transform: translate3d(100%, 0, 0); } }

.bannercarousel-item-prev,
.active.bannercarousel-item-left {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%); }
  @supports (-webkit-transform-style: preserve-3d) or (transform-style: preserve-3d) {
    .bannercarousel-item-prev,
    .active.bannercarousel-item-left {
      -webkit-transform: translate3d(-100%, 0, 0);
      transform: translate3d(-100%, 0, 0); } }

.bannercarousel-control-prev,
.bannercarousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 10%;
  color: #fff;
  opacity: 0.5; }

.bannercarousel-control-prev:hover,
.bannercarousel-control-prev:focus,
.bannercarousel-control-next:hover,
.bannercarousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 1.0; }

.bannercarousel-control-prev {
  left: 0; }

.bannercarousel-control-next {
  right: 0; }

.bannercarousel-control-prev-icon,
.bannercarousel-control-next-icon {
  display: inline-block;
  width: 20px;
  height: 40px;
  background: transparent no-repeat center center;
  background-size: 100% 100%; }

.bannercarousel-control-prev-icon {
  background: url("../images/sprites.svg") 0 -500px no-repeat; }

.bannercarousel-control-next-icon {
  background: url("../images/sprites.svg") -20px -500px no-repeat; }

.bannercarousel-indicators {
  position: absolute;
  right: 0;
  bottom: 10px;
  left: 0;
  z-index: 15;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none; }

.bannercarousel-indicators li {
  position: relative;
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  background-color: rgba(255, 255, 255, 0.5); }

.bannercarousel-indicators li::before {
  position: absolute;
  top: -10px;
  left: 0;
  display: inline-block;
  width: 100%;
  height: 10px;
  content: ""; }

.bannercarousel-indicators li::after {
  position: absolute;
  bottom: -10px;
  left: 0;
  display: inline-block;
  width: 100%;
  height: 10px;
  content: ""; }

.bannercarousel-indicators .active {
  background-color: #fff; }

.bannercarousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center; }

/* Used with carousel */
.d-block {
  display: block !important; }

.d-none {
  display: none !important; }

.w-100 {
  width: 100% !important; }

.img-fluid {
  max-width: 100%;
  height: auto; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto; }

@media (min-width: 768px) {
  .d-md-block {
    display: block !important; } }
