.slider {
  min-height: 420px;
  outline: 0;
}
.slider,
.slide {
  width: 100%;
  position: relative;
}
.flickity-slider,
.slide {
  height: 100%;
}
.slide img,
.slide video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.slide .text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  padding: 2rem 0;
  color: #fff;
}
.slide .text.font-black {
  color: #000;
}
.slide .text .words,
.slide .text .button {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 2rem;
}
.slide .text .words {
  display: flex;
  flex-direction: column-reverse;
}
.slide .text.h-pos-center {
  text-align: center;
}
.slide .text.h-pos-center .words {
  align-items: center;
}
.slide .text.h-pos-right {
  text-align: right;
}
.slide .text.h-pos-right .words {
  align-items: end;
}
.slide .text.v-pos-top {
  justify-content: start;
  padding-top: 8rem;
}
.slide .text.v-pos-bottom {
  justify-content: end;
  padding-bottom: 8rem;
}

.slide .text.gradient-light.v-pos-top.h-pos-left {
  background-image: linear-gradient(to bottom right, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.3));
}
.slide .text.gradient-light.v-pos-middle.h-pos-left {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.3));
}
.slide .text.gradient-light.v-pos-bottom.h-pos-left {
  background-image: linear-gradient(to top right, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.3));
}
.slide .text.gradient-light.v-pos-top.h-pos-center {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.3));
}
.slide .text.gradient-light.v-pos-middle.h-pos-center {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.45) 20%, rgba(0, 0, 0, 0.6) 50%, rgba(0, 0, 0, 0.45) 80%, rgba(0, 0, 0, 0.3));
}
.slide .text.gradient-light.v-pos-bottom.h-pos-center {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.3));
}
.slide .text.gradient-light.v-pos-top.h-pos-right {
  background-image: linear-gradient(to bottom left, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.3));
}
.slide .text.gradient-light.v-pos-middle.h-pos-right {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.3));
}
.slide .text.gradient-light.v-pos-bottom.h-pos-right {
  background-image: linear-gradient(to top left, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.3));
}

.slide .text.gradient-medium.v-pos-top.h-pos-left {
  background-image: linear-gradient(to bottom right, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.4));
}
.slide .text.gradient-medium.v-pos-middle.h-pos-left {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.4));
}
.slide .text.gradient-medium.v-pos-bottom.h-pos-left {
  background-image: linear-gradient(to top right, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.4));
}
.slide .text.gradient-medium.v-pos-top.h-pos-center {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.4));
}
.slide .text.gradient-medium.v-pos-middle.h-pos-center {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.55) 20%, rgba(0, 0, 0, 0.7) 50%, rgba(0, 0, 0, 0.55) 80%, rgba(0, 0, 0, 0.4));
}
.slide .text.gradient-medium.v-pos-bottom.h-pos-center {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.4));
}
.slide .text.gradient-medium.v-pos-top.h-pos-right {
  background-image: linear-gradient(to bottom left, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.4));
}
.slide .text.gradient-medium.v-pos-middle.h-pos-right {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.4));
}
.slide .text.gradient-medium.v-pos-bottom.h-pos-right {
  background-image: linear-gradient(to top left, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.4));
}

.slide .text.gradient-heavy.v-pos-top.h-pos-left {
  background-image: linear-gradient(to bottom right, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5));
}
.slide .text.gradient-heavy.v-pos-middle.h-pos-left {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5));
}
.slide .text.gradient-heavy.v-pos-bottom.h-pos-left {
  background-image: linear-gradient(to top right, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5));
}
.slide .text.gradient-heavy.v-pos-top.h-pos-center {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5));
}
.slide .text.gradient-heavy.v-pos-middle.h-pos-center {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.65) 20%, rgba(0, 0, 0, 0.8) 50%, rgba(0, 0, 0, 0.65) 80%, rgba(0, 0, 0, 0.5));
}
.slide .text.gradient-heavy.v-pos-bottom.h-pos-center {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5));
}
.slide .text.gradient-heavy.v-pos-top.h-pos-right {
  background-image: linear-gradient(to bottom left, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5));
}
.slide .text.gradient-heavy.v-pos-middle.h-pos-right {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5));
}
.slide .text.gradient-heavy.v-pos-bottom.h-pos-right {
  background-image: linear-gradient(to top left, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5));
}

.slide .text.gradient-none {
  background-image: none;
}

.slide .text h1,
.slide .text h2,
.slide .text p {
  max-width: 85rem;
  font-family: 'Museo Slab W01';
  font-weight: normal;
  line-height: 1.25;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.75);
}
.slide .text.font-black h1,
.slide .text.font-black h2,
.slide .text.font-black p {
  text-shadow: 0 0 20px rgba(255, 255, 255, 1);
}
.slide .text h1,
.slide .text h2 {
  font-size: 4rem;
}
.slide .text.headline-small h1,
.slide .text.headline-small h2 {
  font-size: 3rem;
}
.slide .text.headline-large h1,
.slide .text.headline-large h2 {
  font-size: 5rem;
}
.slide .text p {
  margin-bottom: 2rem;
  font-size: 2rem;
}
.slide .text.body-small p {
  font-size: 1.6rem;
}
.slide .text.body-large p {
  font-size: 2.4rem;
}
.slide .text a {
  display: inline-block;
  padding: 1.5rem 2.5rem;
  border-radius: 999rem;
  background-color: #00a1e1;
  color: #fff;
  line-height: 1;
  font-size: 1.6rem;
  font-weight: bold;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
  transition: background-color 300ms ease;
}
.slide .text a:hover,
.slide .text a:focus,
.slide .text a:active {
  text-decoration: none;
  background-color: #0087c6;
}
.slide .text.button-blue-dark a {
  background-color: #0a548b;
}
.slide .text.button-blue-dark a:hover,
.slide .text.button-blue-dark a:focus,
.slide .text.button-blue-dark a:active {
  background-color: #003d71;
}
.slide .text.button-green a {
  background-color: #58b7b3;
}
.slide .text.button-green a:hover,
.slide .text.button-green a:focus,
.slide .text.button-green a:active {
  background-color: #3c9d99;
}

.slider + .controls {
  display: flex;
  justify-content: center;
  position: absolute;
  left: 2rem;
  right: 2rem;
  bottom: 2rem;
  z-index: 40;
}
.slider + .controls .select {
  display: flex;
  position: relative;
}
.slider + .controls .select .bg {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 1.75rem;
  right: 1.75rem;
  z-index: 1;
  background-image: linear-gradient(to bottom, transparent, transparent 48%, #e5e5e5 48%, #e5e5e5 52%, transparent 52%, transparent);
}
.slider + .controls span {
  min-width: 4rem;
  height: 4rem;
  background-size: cover;
  cursor: pointer;
  z-index: 2;
  transition: all 300ms ease;
}
.slider + .controls span:hover,
.slider + .controls span:focus,
.slider + .controls span:active {
  transform: scale(150%);
}
.slider + .controls .control-previous {
  background: url('/_themes/_images/icons/slide-control-previous.svg') center center no-repeat;
}
.slider + .controls .control-next {
  background: url('/_themes/_images/icons/slide-control-next.svg') center center no-repeat;
}
.slider + .controls .control-slide {
  background: url('/_themes/_images/icons/slide-control-select.svg') center center no-repeat;
}
.slider + .controls .control-slide.on {
  background: url('/_themes/_images/icons/slide-control-select-on.svg') center center no-repeat;
}
.slider.count-1 + .controls {
  display: none;
}
@media screen and (max-width: 639px) {
  .slider.count-7 + .controls .select,
  .slider.count-8 + .controls .select,
  .slider.count-9 + .controls .select,
  .slider.count-10 + .controls .select,
  .slider.count-11 + .controls .select,
  .slider.count-12 + .controls .select,
  .slider.count-13 + .controls .select,
  .slider.count-14 + .controls .select,
  .slider.count-15 + .controls .select,
  .slider.count-16 + .controls .select,
  .slider.count-17 + .controls .select,
  .slider.count-18 + .controls .select,
  .slider.count-19 + .controls .select,
  .slider.count-20 + .controls .select {
    display: none;
  }
}
@media screen and (min-width: 640px) {
  .slide .text h1,
  .slide .text h2 {
    font-size: 5rem;
  }
  .slide .text.headline-small h1,
  .slide .text.headline-small h2 {
    font-size: 4rem;
  }
  .slide .text.headline-large h1,
  .slide .text.headline-large h2 {
    font-size: 6rem;
  }
  .slide .text p {
    font-size: 2.4rem;
  }
  .slide .text.body-small p {
    font-size: 2rem;
  }
  .slide .text.body-large p {
    font-size: 3rem;
  }
  .slide .text a {
    font-size: 2rem;
  }
  .slider + .controls {
    justify-content: end;
  }
}
