.hero-subtitle, .hero-title {
  position: relative;
}

#hero-dots {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  top: -135px;
}

#hero-dots span {
  width: 11px;
  height: 11px;
  max-width: 11px;
  max-height: 11px;
  border-radius: 100%;
  border: 2px solid #FFF;
  margin-right: 30px;
  -webkit-transition: all 0.75s cubic-bezier(0.12, 0.84, 0.21, 0.99);
  transition: all 0.75s cubic-bezier(0.12, 0.84, 0.21, 0.99);
  background: rgba(255, 255, 255, 0);
  position: relative;
}

#hero-dots span:hover {
  cursor: pointer;
  background: rgba(255, 255, 255, 0.35);
}

#hero-dots span:hover:after {
  opacity: 1;
  -webkit-transform: translate(-50%, -180%);
          transform: translate(-50%, -180%);
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}

#hero-dots span.active {
  background: white;
}

#hero-dots span.active:after {
  opacity: 1;
  -webkit-transform: translate(-50%, -180%);
          transform: translate(-50%, -180%);
}

#hero-dots span:after {
  content: attr(title);
  display: block;
  position: absolute;
  font-size: 11px;
  color: #FFF;
  top: 50%;
  left: 50%;
  text-align: center;
  pointer-events: none;
  opacity: 0;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: all 0.75s cubic-bezier(0.12, 0.84, 0.21, 0.99);
  transition: all 0.75s cubic-bezier(0.12, 0.84, 0.21, 0.99);
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.8px;
}

#title-element {
  bottom: 0;
}

#subtitle-element {
  top: 0;
  -webkit-transition-delay: 0.1s !important;
          transition-delay: 0.1s !important;
}

#title-element, #subtitle-element {
  pointer-events: none;
  position: absolute;
  opacity: 0;
  -webkit-transform: translateY(24px);
          transform: translateY(24px);
  -webkit-transition: opacity 0.3s ease-in, -webkit-transform 0.75s cubic-bezier(0.44, 0, 0.37, 1);
  transition: opacity 0.3s ease-in, -webkit-transform 0.75s cubic-bezier(0.44, 0, 0.37, 1);
  transition: transform 0.75s cubic-bezier(0.44, 0, 0.37, 1), opacity 0.3s ease-in;
  transition: transform 0.75s cubic-bezier(0.44, 0, 0.37, 1), opacity 0.3s ease-in, -webkit-transform 0.75s cubic-bezier(0.44, 0, 0.37, 1);
}

#title-element.active, #subtitle-element.active {
  opacity: 1;
  -webkit-transform: translateY(0px);
          transform: translateY(0px);
  z-index: 20;
  pointer-events: visible;
}

.read-more {
  position: relative;
}

#carousel-element {
  background-size: auto 110%;
  width: 100%;
  overflow: hidden;
  position: absolute;
  opacity: 0;
  background-position-x: center;
  -webkit-transition: background-position 1s cubic-bezier(0.38, 0.01, 0.37, 1), opacity 1s cubic-bezier(0.38, 0.01, 0.37, 1);
  transition: background-position 1s cubic-bezier(0.38, 0.01, 0.37, 1), opacity 1s cubic-bezier(0.38, 0.01, 0.37, 1);
}

#carousel-element.active {
  opacity: 1;
  background-position-y: -50px;
}

#carousel-element.staging {
  background-position-y: -100px;
}

#carousel-element.complete {
  background-position-y: 0px;
}

#carousel-element[title="create"] {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#a4bbdb), color-stop(rgba(207, 204, 195, 0)), to(rgba(207, 204, 195, 0))), url("../../img/header_images/carousel-1.jpg");
  background-image: linear-gradient(#a4bbdb, rgba(207, 204, 195, 0), rgba(207, 204, 195, 0)), url("../../img/header_images/carousel-1.jpg");
  background-position-x: 60%;
}

#carousel-element[title="pro"] {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(49, 66, 89, 0.8)), color-stop(rgba(49, 66, 89, 0)), to(rgba(49, 66, 89, 0))), url("../../img/header_images/carousel-2.jpg");
  background-image: linear-gradient(rgba(49, 66, 89, 0.8), rgba(49, 66, 89, 0), rgba(49, 66, 89, 0)), url("../../img/header_images/carousel-2.jpg");
}

#carousel-element[title="leads"] {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(220, 201, 168, 0.53)), to(rgba(228, 224, 213, 0))), url("../../img/header_images/carousel-3.jpg");
  background-image: linear-gradient(rgba(220, 201, 168, 0.53), rgba(228, 224, 213, 0)), url("../../img/header_images/carousel-3.jpg");
}

#carousel-element[title="emails"] {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(152, 137, 134, 0.66)), to(rgba(166, 157, 147, 0))), url("../../img/header_images/carousel-4.jpg");
  background-image: linear-gradient(rgba(152, 137, 134, 0.66), rgba(166, 157, 147, 0)), url("../../img/header_images/carousel-4.jpg");
}

#carousel-element[title="automation"] {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#bcd4de), color-stop(rgba(188, 212, 222, 0)), to(rgba(188, 212, 222, 0))), url("../../img/header_images/automation_station_header.jpg");
  background-image: linear-gradient(#bcd4de, rgba(188, 212, 222, 0), rgba(188, 212, 222, 0)), url("../../img/header_images/automation_station_header.jpg");
}

.section#solution .floating-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 50px 60px;
}

.section#solution .floating-box .checkpoints {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.section#solution .floating-box .text-std {
  font-size: 14px;
  margin-top: 15px;
  font-weight: 200;
}

.section#solution .floating-box .read-more {
  font-size: 14px;
  color: #217fc2;
  margin-top: 15px;
}

.section#solution .floating-box .underline {
  background: #edf3f8;
  min-height: 1px;
  max-height: 1px;
  margin-top: 10px;
}

.section#solution .floating-box .button {
  margin-top: 50px;
  text-transform: none;
  letter-spacing: 0.4px;
  font-weight: 500;
  font-size: 14px;
}

.section#solution:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  right: 40px;
  top: -290px;
}

.section#blog .floating-box {
  margin: 10px;
}

.section#blog .blog-secondary {
  margin-top: 25px;
}

.section#blog:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  left: 0px;
  top: 0px;
}

.logo-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  width: 100%;
}

.logo-container img {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}

.footer {
  margin-top: 50px;
}

@media screen and (max-width: 1200px) {
  #hero-dots {
    display: none !important;
  }
  #carousel-element {
    background-position-y: center !important;
    width: 100%;
  }
  #carousel-element.active {
    opacity: 1;
    background-position-x: -110%;
  }
  #carousel-element.staging {
    background-position-x: -120%;
  }
  #carousel-element.complete {
    background-position-x: -100%;
  }
  #title-element, #subtitle-element {
    -webkit-transform: translateX(24px);
            transform: translateX(24px);
  }
  #title-element.active, #subtitle-element.active {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
  #title-element #subtitle-element a, #title-element #subtitle-element, #subtitle-element #subtitle-element a, #subtitle-element #subtitle-element {
    -ms-touch-action: none;
        touch-action: none;
    pointer-events: none;
    z-index: 0;
  }
  #title-element #subtitle-element.active a, #title-element #subtitle-element.active, #subtitle-element #subtitle-element.active a, #subtitle-element #subtitle-element.active {
    z-index: 20;
    -ms-touch-action: auto;
        touch-action: auto;
    pointer-events: auto;
  }
  .section#solution .floating-box {
    padding: 14% !important;
  }
  .section#solution .floating-box:first-child {
    margin-bottom: 10%;
  }
  .section#solution:after {
    top: 15% !important;
    right: 0 !important;
    left: 25%;
  }
  .section#blog:after {
    top: 37% !important;
    left: 10% !important;
  }
  .section#testimonials .section-title {
    font-size: 32px !important;
    margin-bottom: 10% !important;
  }
  .section#testimonials #testimonial-helper {
    overflow: hidden;
  }
  .logo-container {
    display: none;
  }
}
