.atvi-carousel {
  width: auto;
}
.atvi-carousel .frame-container {
  position: relative;
  overflow: hidden;
  max-height: 410px;
  background-color: #000;
}
.atvi-carousel .frame {
  position: relative;
  margin: 0 auto;
}
.atvi-carousel .frame-inner {
  top: 0;
  bottom: 0;
  width: 100%;
  position: absolute;
  max-height: 410px;
}
.atvi-carousel .slide-container {
  width: 100%;
  height: 100%;
  position: absolute;
}
.atvi-carousel .slide-image {
  width: 100%;
  height: 100%;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.atvi-carousel .slide-container.layout-video {
  padding-bottom: 48px;
}
.atvi-carousel .atvi-video .player-wrapper {
  height: auto;
  padding: 0;
}
.atvi-carousel .nav-container {
  position: absolute;
  width: 100%;
  bottom: 0;
}
.atvi-carousel .layout-video.slide-container {
  margin-bottom: 48px;
}
.carousel-nav {
  position: relative;
  margin: 0 auto;
  bottom: 48px;
  height: 0;
  width: 100%;
  text-align: center;
}
.carousel-nav a {
  color: #000;
  text-decoration: none;
}
.carousel-nav .button,
.carousel-nav .dot-container,
.carousel-nav .dot {
  position: relative;
  vertical-align: top;
  display: inline-block;
  font-size: 0;
  color: rgba(0, 0, 0, 0);
}
.carousel-nav .button,
.carousel-nav .button {
  height: 32px;
  width: 32px;
  top: 8px;
  background-color: #888;
}
.carousel-nav .dot-container {
  margin: 0 40px;
}
.carousel-nav .dot {
  width: 16px;
  height: 16px;
  top: 16px;
  margin-right: 12px;
  border-radius: 100%;
  opacity: .75;
  background-color: #ddd;
}
.carousel-nav .dot.current {
  background-color: #ccf;
}
.carousel-nav .dot:hover {
  opacity: 1;
}
.carousel-nav .dot:last-child {
  margin-right: 0;
}

.atvi-carousel .frame-container {
  background-color: #fff;
}

