/* Variables */
/* Bootstrap Overrides */
.carousel__container { position: relative; }

.carousel__container h1 { margin-bottom: 1em; }

.carousel__container .carousel-inner { height: 100%; }

.carousel__container .carousel-caption { display: block; position: relative; left: auto; right: auto; text-align: center; text-shadow: none; color: #657786; }

.carousel__container .carousel-caption .btn-container { margin: 2em auto; }

.carousel__container .carousel-indicators { z-index: 2; position: relative; left: auto; top: auto; bottom: auto; margin-left: 0; width: 100%; }

.carousel__container .carousel-indicators li { background-color: #AAB8C2; border-color: #CCD6DD; width: 1em; height: 1em; margin: 0; }

.carousel__container .carousel-indicators li.active { background-color: #005FD1; width: 1em; height: 1em; margin: 0; }

.carousel__container .carousel-control { font-size: 3em; text-shadow: none; top: 30%; color: #657786; background: none; text-decoration: none; }

.carousel__container .carousel-control span { color: inherit; text-decoration: none; }

.carousel__container .carousel-control span:hover { text-decoration: none; }

@media (max-width: 768px) { .carousel__container .carousel-control { font-size: 3em; }
  .carousel__container .carousel-control > span { margin-left: -0.25em; } }

.carousel__container.full .carousel-inner { max-width: 1170px; margin: 0 auto; }

.carousel__container.full .carousel-image { height: 30vh; margin: 0 auto 2em auto; overflow: hidden; text-align: center; }

.carousel__container.full .carousel-image img { height: 100%; width: auto; max-width: 100%; }

@media (max-width: 768px) { .carousel__container.full .item { max-height: none; }
  .carousel__container.full .carousel-image img { width: auto; height: auto; max-height: 100%; max-width: 100%; } }

.carousel__container.testimonial { padding: 2em 0; background-size: cover; background-position: center center; }

.carousel__container.testimonial .carousel { background-color: #fff; border: 1px solid #CCD6DD; border-radius: 5px; width: 80%; max-width: 600px; margin: 0 auto; }

@media (max-width: 768px) { .carousel__container.testimonial .carousel { width: 100%; } }

.carousel__container.testimonial .carousel-inner { width: 70%; margin: 0 auto; background-color: #fff; }

.carousel__container.testimonial .carousel-image { position: relative; height: 100px; margin: 2em auto; overflow: hidden; text-align: center; }

.carousel__container.testimonial .carousel-image img { max-height: 100%; max-width: 100%; width: auto; }

.carousel__container.testimonial .carousel-caption { font-size: 1.5em; color: #14171A; line-height: 1.3em; }

.carousel__container.testimonial .carousel-caption span { font-size: 0.8em; display: block; margin-top: 2em; }

.carousel__container.testimonial .carousel-caption span:last-child { margin: 0; }

@media (max-width: 768px) { .carousel__container.testimonial .carousel-caption { font-size: 2rem; } }

.carousel__container.testimonial .carousel-control { top: 5vh; }

@media (max-width: 768px) { .carousel__container.testimonial .carousel-inner { height: auto; }
  .carousel__container.testimonial .carousel-image { height: auto; }
  .carousel__container.testimonial .carousel-caption { font-size: 1.5em; } }

.carousel__container.masthead > .container-fluid { padding: 0; }

.carousel__container.masthead .carousel-inner { height: auto; }

.carousel__container.masthead .item { background-color: #1DA1F2; background-size: cover; background-repeat: no-repeat; background-position: center center; height: 100%; }

.carousel__container.masthead .carousel-caption { padding: 20vh 5vw; }

.carousel__container.masthead .carousel-caption * { color: #fff; }

.carousel__container.masthead .carousel-caption span { font-size: 1em; font-weight: 200; letter-spacing: 0.2em; text-transform: uppercase; margin: 1em 0; }

.carousel__container.masthead .carousel-indicators { position: absolute; bottom: 1em; }

.carousel__container.masthead .carousel-indicators li { background-color: #fff; border: none; }

.carousel__container.masthead .carousel-indicators li.active { background-color: #005FD1; }

.carousel__container.masthead .carousel-control { display: none; }

.carousel__container.masthead .masthead__categories { list-style: none; padding: 0; }

.carousel__container.masthead .masthead__categories li { display: inline-block; }

.carousel__container.masthead .masthead__categories li:not(:last-child):after { content: ','; }

.carousel__container.masthead span, .carousel__container.masthead .category { font-size: 0.8em; font-weight: 200; color: #AAB8C2; letter-spacing: 0.2em; text-transform: uppercase; margin: 1em 0; }

.carousel__container.masthead.home .item { height: 100vh; width: 100vw; }

.carousel__container.masthead.home .carousel-caption { padding: 0; position: absolute; bottom: 5vh; text-align: left; }

.carousel__container.masthead.home .carousel-caption h1 { margin-bottom: 0.5em; }

@media (max-width: 768px) { .carousel__container.masthead.home .carousel-caption { padding: 2em; } }
