@charset "UTF-8";
@import "normalize.css";
@import "foundation.min.css";
@import "focuspoint.css";
@import "owl.carousel.css";
@import "lightbox.css";
@import "selectordie.css";
* {
  box-sizing: border-box;
}
html {
  height: 100%;
}
body {
  height: 100%;
  font-family: 'Avenir LT W01 65 Medium', Helvetica, Arial, sans-serif;
  color: #444;
}
.clearfix {
  *zoom: 1;
}
.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}
.clearfix:after {
  clear: both;
}
a {
  text-decoration: none;
}
.radius {
  border-radius: 3px;
}
:focus {
  outline: none;
}
.light {
  font-family: 'Avenir LT W01 45 Book', Helvetica, Arial, sans-serif;
}
.medium {
  font-family: 'Avenir LT W01 65 Medium', Helvetica, Arial, sans-serif;
}
.bold {
  font-family: 'Avenir LT W01 85 Heavy', Helvetica, Arial, sans-serif;
}
strong {
  font-family: 'Avenir LT W01 85 Heavy', Helvetica, Arial, sans-serif;
  font-weight: normal;
}
h1 {
  font-size: 30px;
}
h2 {
  font-size: 24px;
}
h3 {
  font-size: 18px;
}
h4 {
  font-size: 16px;
}
h5 {
  font-size: 14px;
}
h6 {
  font-size: 12px;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Avenir LT W01 85 Heavy', Helvetica, Arial, sans-serif;
  color: #444;
  margin-bottom: 1.25rem;
}
a {
  color: #1EB1EF;
}
.green p a {
  color: #82BC00;
}
.blue p a {
  color: #1EB1EF;
}
.pink p a {
  color: #E9168C;
}
.pink .working p a {
  color: #ffffff !important;
}
.yellow p a {
  color: #FADA41;
}
.grey p a {
  color: #292929;
}
.neutral p a {
  color: #12529F;
}
p a:hover {
  color: #D4D4D4;
}
.center {
  text-align: center;
}
blockquote {
  font-family: "georgia";
  font-style: italic;
  padding: 0 20px;
  margin: 40px 0;
  border-left: 3px solid #1EB1EF;
}
blockquote:before {
  content: "";
  background-image: url('../images/icons/quote.png');
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #1EB1EF;
  border-radius: 25px;
  background-size: 30px;
  width: 50px;
  height: 50px;
  display: block;
  margin: 0 0 20px 20px;
  float: right;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  blockquote:before {
    background-image: url("../images/icons/quote@2x.png");
    background-size: 25px 25px;
  }
}
blockquote p {
  line-height: 1.8;
}
.green blockquote {
  border-color: #82BC00;
}
.green blockquote:before {
  background-color: #82BC00;
}
.pink blockquote {
  border-color: #E9168C;
}
.pink blockquote:before {
  background-color: #E9168C;
}
.yellow blockquote {
  border-color: #FADA41;
}
.yellow blockquote:before {
  background-color: #FADA41;
}
.neutral blockquote {
  border-color: #12529F;
}
.neutral blockquote:before {
  background-color: #12529F;
}
.ie8 img {
  width: auto;
}
/* Prevent height distortion in IE8. */
.alignleft {
  float: left;
  margin: 0 20px 20px 0;
}
.alignright {
  float: right;
  margin: 0 0 20px 20px;
}
.vertical {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  display: block;
}
.divider {
  text-align: center;
  background: #ffffff;
  margin-top: 10px;
}
.divider img {
  width: 60px;
  margin-top: -30px;
}
.marina .divider img,
.marina-lite .divider img,
.stingray .divider img,
.dolphin .divider img {
  margin-bottom: 40px;
}
.stingray .divider img {
  width: 60px;
  height: 41px;
  margin-top: -20px;
}
.dolphin .divider img {
  width: 60px;
  height: 50px;
  margin-top: -25px;
}
.block .divider {
  margin: 40px 0;
}
.divider.icon {
  margin: 30px 0 20px 0;
}
hr {
  border: none;
  border-top: 1px dashed #D4D4D4;
  height: 1px;
  background: #ffffff;
  margin: 0;
}
@media only screen and (max-width: 40.063em) {
  .divider {
    margin: 0;
  }
  .divider img {
    width: 30px;
    height: 30px;
    margin-top: -15px;
  }
  .stingray .divider img {
    width: 30px;
    height: 21px;
    margin-top: -7px;
  }
  .dolphin .divider img {
    width: 30px;
    height: 25px;
    margin-top: -10px;
  }
  .divider hr {
    margin-top: 5px;
  }
}
.popup {
  background: #ffffff;
  padding: 23px 0;
  width: 100%;
  color: #292929;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 2000;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.1);
}
.popup p,
.popup ul {
  color: #292929;
  margin-bottom: 0;
}
.popup p a,
.popup ul a {
  color: #12529F;
  text-decoration: underline;
}
.popup p strong,
.popup ul strong {
  color: #12529F;
}
.popup p.close,
.popup ul.close {
  cursor: pointer;
  display: inline-block;
  text-decoration: underline;
  color: #12529F;
}
.popup p.read-more {
  text-decoration: underline;
  cursor: pointer;
  float: right;
}
.popup .expand {
  display: none;
}
.popup .expand p,
.popup .expand ul {
  margin-bottom: 20px;
}
.popup .expand p:first-child {
  margin-top: 20px;
}
#container {
  position: relative;
}
header {
  width: 100%;
  height: 70px;
  background: #292929;
  padding: 0;
  z-index: 100;
  position: absolute;
  top: 0;
}
.admin-bar.goingdown header {
  top: 32px;
}
.goingdown header {
  position: fixed;
}
@media only screen and (max-width: 40.063em) {
  header {
    height: 70px;
  }
  header .button {
    display: none;
  }
}
.menu-button {
  position: absolute;
  top: 0;
  left: 0;
  width: 70px;
  height: 70px;
  background: #1EB1EF;
  color: #ffffff;
  font-size: 10px;
  cursor: pointer;
  text-transform: uppercase;
}
.menu-button:hover,
.menu-button.active {
  color: #ffffff;
  background: #12529F;
}
.menu-button img {
  position: absolute;
  top: 16px;
  left: 50%;
  margin: 0 0 0 -10px;
  width: 20px;
  height: 18px;
}
.menu-button span {
  position: absolute;
  bottom: 12px;
  left: 50%;
  margin-left: -15px;
}
nav {
  position: fixed;
  top: 70px;
  z-index: 90;
  width: 100%;
  height: 70px;
  background: #1EB1EF;
  z-index: 1;
  display: none;
}
nav.active {
  display: block;
  z-index: 95;
}
.admin-bar nav {
  top: 102px;
}
.ie8 nav {
  display: none;
}
.ie8 nav.active {
  display: block;
}
nav ul {
  padding: 0;
  margin: 0;
  width: 50%;
  height: 100%;
  position: absolute;
  transition: 0.5s;
}
nav .menu.mleft {
  left: 0;
  padding-right: 90px;
}
.goingdown .menu.mleft {
  padding-right: 0;
}
nav .menu.mright {
  right: 0;
  padding-left: 90px;
}
.goingdown .menu.mright {
  padding-left: 0;
}
nav ul li {
  list-style: none;
  float: left;
  width: 33.3333333%;
  height: 100%;
  text-align: center;
  border-left: 2px solid #1E769B;
  position: relative;
}
nav ul li:first-child {
  border: none;
}
.goingdown nav ul.menu.mright li:first-child {
  border-left: 2px solid #1E769B;
}
nav ul li:before {
  background-size: cover;
  position: absolute;
  top: 8px;
  left: 50%;
  margin-left: -15px;
  display: block;
  content: "";
  width: 25px;
  height: 25px;
  background-size: 25px !important;
  background-repeat: no-repeat;
  background-position: left center;
}
nav ul li.products:before {
  background-image: url('../images/icons/products.png');
  background-repeat: no-repeat;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  nav ul li.products:before {
    background-image: url("../images/icons/products@2x.png");
    background-size: 25px 25px;
  }
}
nav ul li.solutions:before {
  background-image: url('../images/icons/solutions.png');
  background-repeat: no-repeat;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  nav ul li.solutions:before {
    background-image: url("../images/icons/solutions@2x.png");
    background-size: 25px 25px;
  }
}
nav ul li.company:before {
  background-image: url('../images/icons/company.png');
  background-repeat: no-repeat;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  nav ul li.company:before {
    background-image: url("../images/icons/company@2x.png");
    background-size: 25px 25px;
  }
}
nav ul li.news:before {
  background-image: url('../images/icons/news.png');
  background-repeat: no-repeat;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  nav ul li.news:before {
    background-image: url("../images/icons/news@2x.png");
    background-size: 25px 25px;
  }
}
nav ul li.support:before {
  background-image: url('../images/icons/support.png');
  background-repeat: no-repeat;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  nav ul li.support:before {
    background-image: url("../images/icons/support@2x.png");
    background-size: 25px 25px;
  }
}
nav ul li.contact:before {
  background-image: url('../images/icons/contact.png');
  background-repeat: no-repeat;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  nav ul li.contact:before {
    background-image: url("../images/icons/contact@2x.png");
    background-size: 25px 25px;
  }
}
nav ul li a {
  color: #ffffff;
  line-height: 95px;
  display: block;
  font-size: 13px;
  white-space: nowrap;
  text-overflow: ellipsis;
}
nav ul li a:hover {
  color: #12529F;
}
@media only screen and (max-width: 64.063em) {
  nav ul li a {
    font-size: 12px;
  }
}
@media only screen and (max-width: 40.063em) {
  nav {
    height: 140px;
  }
  nav ul {
    width: 100%;
    padding: 0;
    height: 70px;
  }
  nav .menu.mleft {
    padding: 0;
    border-bottom: 2px solid #1E769B;
  }
  nav .menu.mright {
    top: 70px;
    padding: 0;
  }
  nav ul.menu.mright li:first-child {
    border-left: none;
  }
}
.logo {
  width: 180px;
  height: 140px;
  display: block;
  position: absolute !important;
  left: 50%;
  top: 0;
  margin-left: -90px;
  z-index: 95;
  position: relative;
  background: #1D1D1D;
  padding: 15px 20px;
}
.logo img {
  width: 140px;
  height: 109px;
}
.logo.short {
  background: #1D1D1D;
  width: 180px;
  height: 70px;
  z-index: 90;
  display: none;
  padding: 10px 20px;
}
.logo.short img {
  width: 140px;
  height: 50px;
}
.goingdown .logo {
  display: none;
}
.goingdown .logo.short {
  display: block;
}
@media only screen and (max-width: 40.063em) {
  .logo {
    display: none;
  }
  .logo.short {
    background: #292929;
    width: 140px;
    height: 70px;
    margin-left: -70px;
    display: block;
    padding: 10px 0;
  }
}
.search-button {
  position: absolute;
  top: 0;
  right: 0;
  width: 70px;
  height: 70px;
  background: #82BC00;
  cursor: pointer;
}
.search-button:hover,
.search-button.active {
  background: #557a01;
}
.search-button img {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -10px 0 0 -10px;
  width: 20px;
  height: 18px;
}
#searchform {
  position: fixed;
  top: 70px;
  right: 0;
  width: 50%;
  height: 70px;
  padding: 10px;
  padding-left: 100px;
  background: #82BC00;
  z-index: 0;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
  display: none;
}
.admin-bar #searchform {
  top: 102px;
}
.goingdown #searchform {
  padding-left: 10px;
}
#searchform.active {
  display: block;
  z-index: 90;
}
#searchform input {
  border: none;
  width: 100%;
  height: 100%;
  padding: 20px;
  color: #acacac;
  border-radius: 0;
}
@media only screen and (max-width: 40.063em) {
  #searchform {
    width: 100%;
    padding: 10px;
  }
}
.vSwitcher {
  position: absolute;
  top: 0;
  right: 90px;
  height: 70px;
  background: #292929;
}
.vSwitcher a {
  width: 80px;
  height: 30px;
  padding: 9px 0 0 40px;
  display: inline-block;
  color: #D4D4D4;
  font-family: 'Avenir LT W01 45 Book', Helvetica, Arial, sans-serif;
  font-size: 14px;
  background-size: 30px;
  margin-right: 10px;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
}
.ie8 .vSwitcher a {
  top: 25%;
}
.vSwitcher a img {
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
}
.vSwitcher a:hover {
  color: #ffffff;
}
@media only screen and (max-width: 40.063em) {
  .vSwitcher {
    display: none;
  }
}
#banner {
  width: 100%;
  min-height: 466px;
  overflow: hidden;
  position: relative;
}
#banner .overlay {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
  border-radius: 3px;
  padding: 170px 0;
  position: absolute;
  top: 0px;
  left: 0;
  width: 100%;
  height: 100%;
}
#banner .overlay h1 {
  font-family: 'Avenir LT W01 65 Medium', Helvetica, Arial, sans-serif;
  margin: 0 0 30px 0;
  color: #ffffff;
  font-size: 30px;
  text-align: center;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.4);
}
.goingdown #banner .overlay h1 {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
  -webkit-animation-delay: 0.2s !important;
          animation-delay: 0.2s !important;
}
#banner .overlay .button {
  width: 100%;
  display: block;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-delay: 0.2s !important;
          animation-delay: 0.2s !important;
}
.goingdown #banner .overlay .button {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
  -webkit-animation-delay: 0 !important;
          animation-delay: 0 !important;
}
@media only screen and (max-width: 40.063em) {
  #banner .overlay {
    padding: 170px 10px 20px 10px;
  }
  #banner .overlay h1 {
    font-size: 20px;
  }
  #banner .overlay .button {
    margin-bottom: 20px;
  }
  #banner .overlay .button.pink {
    margin: 0;
  }
}
#inner {
  background: #1D1D1D;
  width: 100%;
  height: 400px;
  overflow: hidden;
  position: relative;
}
#inner .overlay {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 100%);
  border-radius: 3px;
  position: absolute;
  top: 0px;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  padding-top: 100px;
}
#inner .overlay .text {
  position: relative;
  top: 50%;
  transform: translateY(-60%);
}
.ie8 #inner .overlay .text {
  position: relative;
  top: 30%;
  transform: translateY(-60%);
}
#inner .overlay h1 {
  font-family: 'Avenir LT W01 85 Heavy', Helvetica, Arial, sans-serif;
  color: #ffffff;
  font-size: 50px;
  text-align: center;
  text-transform: uppercase;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  margin: 0;
  text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.4);
}
.goingdown #inner .overlay h1 {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
  -webkit-animation-delay: 0.2s !important;
          animation-delay: 0.2s !important;
}
#inner .overlay p {
  font-family: 'Avenir LT W01 65 Medium', Helvetica, Arial, sans-serif;
  margin: 0;
  font-size: 36px;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-delay: 0.2s !important;
          animation-delay: 0.2s !important;
  color: #ffffff;
  padding: 0 20%;
  line-height: 1;
  text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.4);
}
.goingdown #inner .overlay p {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
  -webkit-animation-delay: 0s !important;
          animation-delay: 0s !important;
}
.down {
  position: absolute;
  z-index: 10;
  left: 50%;
  bottom: 30px;
  width: 36px;
  height: 36px;
  display: none;
  margin-left: -18px;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-name: pulse;
  animation-name: pulse;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
}
.down img {
  width: 36px !important;
  height: 36px !important;
  position: static !important;
}
@media only screen and (min-width: 85em) {
  #inner {
    height: 400px;
  }
}
@media only screen and (max-width: 64.063em) {
  .down {
    display: block;
  }
}
@media only screen and (max-width: 40.063em) {
  #inner {
    min-height: 100%;
  }
  #inner .overlay {
    max-height: 100%;
    padding: 0;
  }
  #inner .overlay h1 {
    font-size: 30px;
    padding: 0 20px;
  }
  #inner .overlay p {
    font-size: 30px;
    padding: 0 20px;
  }
  .down {
    bottom: 70px;
  }
}
#instagram {
  position: relative;
  max-width: 1600px;
  margin: 0 auto;
  padding-bottom: 96px;
}
#career-list {
  width: 100%;
  height: 40px;
  background: #82BC00;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 50;
  text-align: left;
  padding: 13px 20px;
}
#career-list a {
  color: #ffffff;
  display: block;
  height: 20px;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
#career-list .owl-controls {
  position: absolute;
  top: -13px;
  right: -20px;
  height: 40px;
  z-index: 50;
  text-align: right;
  background: #82BC00;
  padding: 12px 20px;
}
#career-list .owl-controls .owl-page {
  width: 10px;
  height: 10px;
  background: #1D1D1D;
  display: inline-block;
  border-radius: 50%;
  margin: 0 2px;
}
#career-list .owl-controls .owl-page:hover,
#career-list .owl-controls .owl-page.active {
  background: #ffffff;
}
@media only screen and (max-width: 40.063em) {
  #career-list .owl-controls {
    display: none !important;
  }
}
#intro:before {
  content: "";
  background: #ffffff;
  width: 40px;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0px;
  display: block;
  box-shadow: -6px -10px 10px -1px rgba(0, 0, 0, 0.05);
}
#intro {
  background: #ffffff;
  margin: 0 auto;
  max-width: 1120px;
  margin-top: -40px;
  position: relative;
  padding: 70px 15px 30px 15px;
  text-align: center;
}
#intro:after {
  content: "";
  background: #ffffff;
  width: 40px;
  height: 100%;
  position: absolute;
  bottom: 0;
  right: 0px;
  display: block;
  box-shadow: 6px -10px 10px -1px rgba(0, 0, 0, 0.05);
}
#intro ul {
  padding: 0;
}
#intro ul li {
  text-align: center;
}
#intro h1,
#intro h2,
#intro h3,
#intro h4,
#intro h5,
#intro h6 {
  font-family: 'Avenir LT W01 65 Medium', Helvetica, Arial, sans-serif;
}
#intro ul li h3 {
  text-transform: uppercase;
}
#intro ul li h3 a {
  color: #1D1D1D;
}
#intro ul li p {
  margin: 0;
  padding: 0 15px;
  color: #323232;
  font-size: 14px;
}
#intro ul li a.icon {
  height: 100px;
  display: block;
  margin-bottom: 20px;
}
#intro ul li img {
  width: 100px;
}
@media only screen and (max-width: 64.063em) {
  #intro {
    margin: 0;
    padding: 70px 0 30px 0;
  }
  #intro:before,
  #intro:after {
    display: none;
  }
}
@media only screen and (max-width: 40.063em) {
  #intro h1 {
    font-size: 20px;
  }
  #intro ul li p {
    padding: 0;
  }
}
.block {
  position: relative;
  padding: 40px 0;
}
.block article ul {
  padding-left: 20px;
}
@media only screen and (max-width: 40.063em) {
  .block {
    padding: 20px 0;
  }
}
.button {
  font-size: 13px;
  width: auto;
  height: auto;
  padding: 10px;
  color: #ffffff;
  background: #1EB1EF;
  text-align: center;
  border-radius: 3px;
  border-bottom: 2px solid #12529F;
  line-height: 1.6em;
  display: inline-block;
}
.button:hover {
  color: #ffffff;
}
.button:active {
  margin-top: 2px;
  border-bottom-width: 0;
}
.button.upper {
  text-transform: uppercase;
}
.button.green,
.green .button {
  background: #82BC00;
  border-color: #557a01;
}
.button.blue,
.blue .button {
  background: #1EB1EF;
  border-color: #12529F;
}
.button.pink,
.pink .button {
  background: #E9168C;
  border-color: #9c005d;
}
.button.yellow,
.yellow .button {
  background: #FADA41;
  border-color: #917b12;
  color: #917b12;
}
.button.grey,
.grey .button {
  background: #292929;
  border-color: #1D1D1D;
}
.button.neutral,
.neutral .button {
  background: #12529F;
  border-color: #0f3a6f;
  color: #ffffff;
}
#downloads {
  padding: 0;
  margin-top: 60px;
  background: #292929;
}
.simpleTabs {
  margin-top: -62px;
}
ul.simpleTabsNavigation {
  margin: 0;
  padding: 0;
}
ul.simpleTabsNavigation li {
  display: inline-block;
  margin: 0;
  padding: 0;
  float: left;
  width: 33.3333333%;
  border-left: 3px solid #ffffff;
}
ul.simpleTabsNavigation li:first-child {
  border: none;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
ul.simpleTabsNavigation li a {
  background: #557a01;
  display: block;
  color: #ffffff;
  padding: 20px;
  text-transform: uppercase;
  font-size: 14px;
}
ul.simpleTabsNavigation li a:hover,
ul.simpleTabsNavigation li a.current {
  background: #82BC00;
}
.blue ul.simpleTabsNavigation li a {
  background: #12529F;
}
.blue ul.simpleTabsNavigation li a:hover,
.blue ul.simpleTabsNavigation li a.current {
  background: #1EB1EF;
}
.pink ul.simpleTabsNavigation li a {
  background: #9c005d;
}
.pink ul.simpleTabsNavigation li a:hover,
.pink ul.simpleTabsNavigation li a.current {
  background: #E9168C;
}
.yellow ul.simpleTabsNavigation li a {
  background: #917b12;
}
.yellow ul.simpleTabsNavigation li a:hover,
.yellow ul.simpleTabsNavigation li a.current {
  background: #FADA41;
  color: #917b12;
}
.grey ul.simpleTabsNavigation li a {
  background: #1D1D1D;
}
.grey ul.simpleTabsNavigation li a:hover,
.grey ul.simpleTabsNavigation li a.current {
  background: #292929;
}
.neutral ul.simpleTabsNavigation li a {
  background: #12529F;
}
.neutral ul.simpleTabsNavigation li a:hover,
.neutral ul.simpleTabsNavigation li a.current {
  background: #0f3a6f;
  color: #ffffff;
}
.simpleTabsContent {
  display: none;
  clear: left;
}
.simpleTabsContent ul {
  list-style: none;
  margin: 0;
  padding: 40px 0;
}
.simpleTabsContent li {
  height: 60px;
  background: #323232;
  margin-bottom: 3px;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}
.simpleTabsContent li:nth-child(2) {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s;
}
.simpleTabsContent li:nth-child(3) {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}
.simpleTabsContent li:nth-child(4) {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}
.simpleTabsContent li:nth-child(5) {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}
.simpleTabsContent li:nth-child(6) {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}
.simpleTabsContent li:nth-child(7) {
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s;
}
.simpleTabsContent li:nth-child(8) {
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}
.simpleTabsContent li:nth-child(9) {
  -webkit-animation-delay: 0.8s;
          animation-delay: 0.8s;
}
.simpleTabsContent li:nth-child(10) {
  -webkit-animation-delay: 0.9s;
          animation-delay: 0.9s;
}
.simpleTabsContent li:last-child {
  margin-bottom: 0;
}
.simpleTabsContent li a:before {
  content: "";
  width: 60px;
  height: 60px;
  padding: 20px;
  display: block;
  transition: 0.3s;
  position: absolute;
  top: 0;
  left: 0;
}
.simpleTabsContent li.download a:before {
  background-image: url('../images/icons/download.png');
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #1D1D1D;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .simpleTabsContent li.download a:before {
    background-image: url("../images/icons/download@2x.png");
    background-size: 25px 25px;
  }
}
.simpleTabsContent li.solution a:before {
  background-image: url('../images/icons/solutions-white.png');
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #1D1D1D;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  .simpleTabsContent li.solution a:before {
    background-image: url("../images/icons/solutions-white@2x.png");
    background-size: 25px 25px;
  }
}
.simpleTabsContent li a {
  color: #EBEBEB;
  padding: 20px 18px 18px 80px;
  display: block;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  transition: 0.3s;
  position: relative;
}
.simpleTabsContent li a:hover {
  padding-left: 30px;
}
.simpleTabsContent #gallery li a {
  padding: 0;
}
.simpleTabsContent.currentTab {
  display: block;
}
#gallery {
  padding: 40px 0;
}
#gallery li {
  background: none;
  height: inherit;
  margin: 0;
}
#downloads li img {
  border: 5px solid #ffffff;
}
@media only screen and (max-width: 40.063em) {
  .simpleTabs {
    margin-top: -59px;
  }
  ul.simpleTabsNavigation li {
    width: auto;
    margin: 0;
  }
  ul.simpleTabsNavigation li a {
    padding: 20px 10px;
    text-transform: uppercase;
    font-size: 12px;
  }
  .simpleTabsContent li {
    font-size: 14px;
  }
}
#products {
  text-align: center;
  padding: 30px 0;
}
#products h1,
#products h2,
#products h3,
#products h4,
#products h5,
#products h6 {
  font-family: 'Avenir LT W01 65 Medium', Helvetica, Arial, sans-serif;
}
#products ul li h3 {
  text-transform: uppercase;
}
#products ul li p {
  margin: 0;
  padding: 0 15px;
  color: #323232;
  font-size: 14px;
}
#products ul li a {
  height: 100px;
  display: block;
  margin-bottom: 20px;
}
#products ul li img {
  width: 100px;
}
.single-products .productLogo {
  max-width: 250px;
  margin: 0 0 20px 0;
}
#product {
  padding-top: 0;
}
#product h3 {
  color: #1EB1EF;
  padding-bottom: 5px;
  border-bottom: 1px solid #EBEBEB;
}
.pink #product h3,
.pink #product a {
  color: #E9168C;
}
.blue #product h3,
.blue #product a {
  color: #1EB1EF;
}
.green #product h3,
.green #product a {
  color: #82BC00;
}
.yellow #product h3,
.yellow #product a {
  color: #FADA41;
}
.grey #product h3,
.grey #product a {
  color: #292929;
}
.neutral #product h3,
.neutral #product a {
  color: #12529F;
}
#product .key h3 {
  color: #ffffff;
  background: #292929;
  padding: 20px;
  font-family: 'Avenir LT W01 45 Book', Helvetica, Arial, sans-serif;
  font-size: 16px;
  text-transform: uppercase;
}
.green #product .key h3 {
  background: #82BC00;
}
.blue #product .key h3 {
  background: #1eb1ef;
}
.pink #product .key h3 {
  background: #e9168c;
}
.yellow #product .key h3 {
  background: #fada41;
  color: #917b12;
}
.yellow #product .key h3 {
  background: #292929;
  color: #1D1D1D;
}
.neutral #product .key h3 {
  background: #12529F;
  color: #ffffff;
}
.key {
  background: #ebebeb;
  margin-bottom: 30px;
}
.key ul {
  font-size: 15px;
  padding: 20px 40px;
  margin: 0;
}
#solutions {
  padding-bottom: 0;
}
#solutions ul li {
  margin-bottom: 30px;
}
#solutions ul li h2 {
  font-size: 18px;
  margin: 10px 0;
}
#solutions ul li h2 a {
  color: #292929;
}
#solutions ul li p {
  font-size: 15px;
}
#intro h1 {
  margin-bottom: 0;
}
#intro h3.channels {
  font-size: 20px;
  margin: 0;
  color: #acacac;
}
#children h3 a {
  color: #444;
  font-family: 'Avenir LT W01 45 Book', Helvetica, Arial, sans-serif;
  font-size: 20px;
}
#careers ul li {
  margin-bottom: 20px;
}
#careers ul li h2 {
  font-size: 18px;
  margin: 10px 0;
}
#careers ul li h2 a {
  color: #292929;
}
#careers ul li p {
  font-size: 15px;
}
#careers ul li .button {
  float: none;
}
#career hr {
  margin: 40px 0;
}
#careers .working p a {
  color: #ffffff !important;
}
#working time {
  display: none;
}
#team ul li {
  text-align: center;
  margin-bottom: 20px;
}
#team ul li h2 {
  margin-bottom: 0;
}
#team ul li h2 a {
  color: #323232;
}
#team ul li h3 {
  font-size: 16px;
  font-family: 'Avenir LT W01 65 Medium', Helvetica, Arial, sans-serif;
  color: #1EB1EF;
}
#team ul li p {
  font-size: 15px;
}
#team ul li a.thumb {
  background: #ffffff;
  display: block;
}
#team ul li h2 {
  font-size: 18px;
}
#team ul li article {
  background: #ffffff;
  padding: 20px;
  position: relative;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
}
#team ul li .button {
  position: absolute;
  left: 50%;
  margin-left: -43px;
  bottom: -21px;
  background: #E9168C;
  border-color: #9c005d;
}
#map {
  padding: 40px 0;
  background: #FADA41;
  text-align: center;
}
.green p .button {
  color: #ffffff;
}
#contact hr {
  margin: 30px 0 20px 0;
}
#video-carousel .owl-controls {
  z-index: 50;
}
#video-carousel .owl-controls .owl-page {
  height: 10px;
  background: transparent;
  display: inline-block;
  border-radius: 50%;
  margin: 0 5px;
  font-size: 14px;
}
#video-carousel .owl-controls .owl-page:first-child:before {
  content: "English";
  color: #ffffff;
}
#video-carousel .owl-controls .owl-page:nth-child(2):before {
  content: "Português";
  color: #ffffff;
}
#video-carousel .owl-controls .owl-page:nth-child(3):before {
  content: "Español";
  color: #ffffff;
}
#video-carousel .owl-controls .owl-page:hover:before,
#video-carousel .owl-controls .owl-page.active:before {
  color: #12529F;
}
iframe {
  border: none;
}
#video {
  padding: 40px 0;
  background: #1EB1EF;
  text-align: center;
}
#video h2,
#video p {
  color: #ffffff;
}
#video h2 {
  font-size: 30px;
  font-family: 'Avenir LT W01 65 Medium', Helvetica, Arial, sans-serif;
}
.flex-video {
  margin-bottom: 0;
}
.block .flex-video {
  margin: 0 0 2.2em 0;
}
@media only screen and (max-width: 40.063em) {
  #video {
    padding: 20px 0;
  }
}
#testimonial {
  padding: 40px 0;
  text-align: center;
}
#testimonial span.quote {
  background: #82BC00;
  border-radius: 25px;
  background-size: 30px;
  width: 50px;
  height: 50px;
  display: block;
  padding: 10px;
  margin: 0 auto 20px auto;
}
#testimonial p {
  margin-top: 20px;
  font-style: italic;
  font-size: 18px;
}
#testimonial h4 {
  color: #82BC00;
}
@media only screen and (max-width: 40.063em) {
  #testimonial {
    padding: 20px 0;
  }
}
#latest {
  background: #1EB1EF;
  padding-bottom: 0;
}
#latest h2 {
  font-size: 30px;
  text-align: center;
  margin-bottom: 20px;
  font-family: 'Avenir LT W01 65 Medium', Helvetica, Arial, sans-serif;
  color: #ffffff;
}
#latest ul li img {
  border-radius: 3px;
  margin-bottom: 20px;
}
#latest ul li time {
  font-size: 13px;
  color: #ffffff;
  display: inline-block;
  background: #EBEBEB;
  padding: 10px;
  border-radius: 3px;
  border-bottom: 2px solid #D4D4D4;
}
#latest ul li a {
  color: #ffffff;
}
#latest ul li p {
  font-size: 14px;
}
.source {
  font-size: 12px;
}
.source a {
  color: red;
  font-size: 12px;
}
#blog {
  padding-bottom: 0;
}
#blog ol {
  list-style: none;
}
#blog ol li h2 {
  font-size: 18px;
  margin: 0 0 15px 0;
}
#blog.events ol li h2 {
  margin: 15px 0;
}
#blog ol li h2 a {
  color: #1D1D1D;
}
#blog ol li {
  margin-bottom: 60px;
}
#blog ol li article {
  border-top: 1px solid #EBEBEB;
  border-bottom: 1px solid #EBEBEB;
  padding: 20px 0;
}
#blog ol li article p {
  margin: 0;
}
#blog time {
  font-size: 13px;
  color: #acacac;
  display: inline-block;
  margin: 10px 0;
  background: #EBEBEB;
  padding: 10px;
  border-radius: 3px;
  border-bottom: 2px solid #D4D4D4;
}
#blog time.single {
  margin-bottom: 30px;
}
#blog hr {
  margin: 20px 0;
}
#blog .button {
  margin: 0px 0;
  display: inline;
}
#blog .button:active {
  margin-top: 12px;
}
#blog ul,
#blog ol {
  margin: 0;
}
#blog article h3:first-child {
  margin-top: 0;
}
#blog aside ul {
  font-size: 14px;
  list-style: none;
  margin-bottom: 30px;
}
#blog aside ul li,
#blog aside .tagcloud {
  margin-bottom: 20px;
}
#blog aside ul.sidebar li {
  margin-bottom: 5px;
}
#blog aside h2 {
  font-size: 18px;
}
#blog img.alignleft {
  float: left;
  margin: 5px 30px 30px 0;
}
#blog img.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}
@media only screen and (max-width: 40.063em) {
  #blog li img {
    margin-bottom: 20px;
  }
}
#event p.meta span {
  color: #1EB1EF;
}
#event p.meta a {
  color: #82BC00;
}
table {
  font-size: 14px;
  width: 100%;
}
table th {
  background: #1EB1EF;
  padding: 15px;
  text-align: left;
  color: #ffffff;
  font-size: 14px;
  border: 1px solid #1EB1EF;
}
table td {
  border: 1px solid #D4D4D4;
  padding: 15px;
}
table tr:nth-child(even) {
  background: #EBEBEB;
}
#support .number {
  background: #EBEBEB;
  padding: 20px;
  text-align: center;
  color: #444;
  border-radius: 3px;
  margin-bottom: 20px;
}
#support .number p {
  font-size: 18px;
  margin: 0;
}
#support .number h1 {
  color: #1EB1EF;
  margin: 0;
  font-size: 40px;
}
#support .number .button {
  display: inline-block;
  font-size: 18px;
  margin-top: 15px;
}
#pagination {
  background: #ffffff;
  padding: 0;
}
#pagination .page-numbers {
  background: #EBEBEB;
  border-bottom: 2px solid #D4D4D4;
  display: inline-block;
  padding: 7px 10px;
  border-radius: 3px;
  color: #acacac;
  font-size: 14px;
}
#pagination .pagination {
  border-top: 1px solid #EBEBEB;
  padding: 30px 0;
  text-align: center;
}
#pagination.single {
  padding: 0;
}
#pagination.single span {
  padding: 30px 0;
  width: 50%;
  float: left;
  display: block;
  border-top: 1px solid #EBEBEB;
  text-align: center;
}
#pagination.single span a:before {
  content: "";
  display: block;
  width: 50px;
  height: 50px;
  background-image: url('../images/icons/arrow.png');
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #EBEBEB;
  margin: 0 auto 20px auto;
  border-radius: 25px;
  transition: 0.3s;
}
@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {
  #pagination.single span a:before {
    background-image: url("../images/icons/arrow@2x.png");
    background-size: 25px 25px;
  }
}
#pagination.single span.next {
  border-left: 1px solid #EBEBEB;
}
#pagination.single span.prev a:before {
  transform: rotate(180deg);
}
#pagination.single span a {
  color: #444;
  display: block;
  color: #acacac;
}
#pagination.single span a:hover:before {
  background-color: #D4D4D4;
}
#breadcrumbs p {
  border-top: 1px solid #EBEBEB;
}
#breadcrumbs p {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  margin: 0;
  color: #444;
  font-size: 14px;
  padding: 20px 0;
}
#breadcrumbs p span.here {
  color: #acacac;
}
#partners {
  background: #EBEBEB;
  padding: 30px 0;
}
#partners a {
  background: #ffffff;
  display: block;
  text-align: center;
  border-radius: 3px;
  padding: 10px 0;
  margin: 0 5px;
}
footer {
  background: #ffffff;
  padding: 40px 0;
  color: #D4D4D4;
  position: relative;
}
footer h4 {
  margin: 0 0 10px 0;
  color: #444;
}
footer p {
  color: #444;
  font-size: 14px;
}
footer p strong {
  font-family: 'Avenir LT W01 65 Medium', Helvetica, Arial, sans-serif;
  color: #acacac;
}
footer p span {
  color: #acacac;
  margin: 0 5px;
}
footer img {
  height: 115px;
}
footer hr {
  margin-bottom: 20px;
}
footer .button {
  display: none;
}
.social a {
  display: inline-block;
  width: 20px;
  height: 20px;
}
.social img {
  width: 20px;
  height: 20px;
}
.social a span {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  display: block;
}
.switcher {
  float: right;
}
.switcher a {
  display: inline-block;
  width: 80px;
  height: 30px;
  background-size: 40px;
  font-size: 13px;
  color: #292929;
  padding: 10px 0 0 40px;
  margin-left: 10px;
  position: relative;
}
.switcher a img {
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 30px;
}
p.copy {
  color: #444;
  font-size: 12px;
  margin: 0;
}
footer img {
  max-width: 100%;
}
@media only screen and (max-width: 40.063em) {
  footer {
    padding: 20px 0 15px 0;
  }
  footer p {
    font-size: 12px;
  }
  .social {
    margin-bottom: 20px;
  }
  .switcher {
    margin-bottom: 20px;
    float: none;
  }
  .switcher a {
    margin: 10px 10px 0 0;
  }
  .copy {
    text-align: left;
  }
}
#contact form .vfb-col-4,
#contact form .vfb-col-6,
#contact form .vfb-col-12 {
  margin: 0 0 1rem 0;
}
#contact form .btn {
  background: #1EB1EF;
  color: #ffffff;
}
#content .vfb-wizard {
  margin-bottom: 2rem;
}
#content .vfb-wizard ul li {
  width: auto;
}
#content .vfb-wizard ul li div {
  font-size: 14px;
}
#content .vfb-wizard ul li.current div {
  background: #1EB1EF;
}
#content .btn {
  background: #1EB1EF;
  border-color: #1EB1EF;
}
#content .vfb-col-4,
#content .vfb-col-6,
#content .vfb-col-12 {
  margin: 0 0 1rem 0;
}
/* ------ Retina ------ */
/*!
Animate.css - http://daneden.me/animate
Licensed under the MIT license

Copyright (c) 2013 Daniel Eden

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}
.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}
@-webkit-keyframes bounce {
  0%,
  20%,
  50%,
  80%,
  100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-30px);
  }
  60% {
    transform: translateY(-15px);
  }
}
@keyframes bounce {
  0%,
  20%,
  50%,
  80%,
  100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-30px);
  }
  60% {
    transform: translateY(-15px);
  }
}
.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
}
@-webkit-keyframes flash {
  0%,
  50%,
  100% {
    opacity: 1;
  }
  25%,
  75% {
    opacity: 0;
  }
}
@keyframes flash {
  0%,
  50%,
  100% {
    opacity: 1;
  }
  25%,
  75% {
    opacity: 0;
  }
}
.flash {
  -webkit-animation-name: flash;
  animation-name: flash;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}
@-webkit-keyframes rubberBand {
  0% {
    transform: scale(1);
  }
  30% {
    transform: scaleX(1.25) scaleY(0.75);
  }
  40% {
    transform: scaleX(0.75) scaleY(1.25);
  }
  60% {
    transform: scaleX(1.15) scaleY(0.85);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes rubberBand {
  0% {
    transform: scale(1);
  }
  30% {
    transform: scaleX(1.25) scaleY(0.75);
  }
  40% {
    transform: scaleX(0.75) scaleY(1.25);
  }
  60% {
    transform: scaleX(1.15) scaleY(0.85);
  }
  100% {
    transform: scale(1);
  }
}
.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}
@-webkit-keyframes shake {
  0%,
  100% {
    transform: translateX(0);
  }
  10%,
  30%,
  50%,
  70%,
  90% {
    transform: translateX(-10px);
  }
  20%,
  40%,
  60%,
  80% {
    transform: translateX(10px);
  }
}
@keyframes shake {
  0%,
  100% {
    transform: translateX(0);
  }
  10%,
  30%,
  50%,
  70%,
  90% {
    transform: translateX(-10px);
  }
  20%,
  40%,
  60%,
  80% {
    transform: translateX(10px);
  }
}
.shake {
  -webkit-animation-name: shake;
  animation-name: shake;
}
@-webkit-keyframes swing {
  20% {
    transform: rotate(15deg);
  }
  40% {
    transform: rotate(-10deg);
  }
  60% {
    transform: rotate(5deg);
  }
  80% {
    transform: rotate(-5deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
@keyframes swing {
  20% {
    transform: rotate(15deg);
  }
  40% {
    transform: rotate(-10deg);
  }
  60% {
    transform: rotate(5deg);
  }
  80% {
    transform: rotate(-5deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
.swing {
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}
@-webkit-keyframes tada {
  0% {
    transform: scale(1);
  }
  10%,
  20% {
    transform: scale(0.9) rotate(-3deg);
  }
  30%,
  50%,
  70%,
  90% {
    transform: scale(1.1) rotate(3deg);
  }
  40%,
  60%,
  80% {
    transform: scale(1.1) rotate(-3deg);
  }
  100% {
    transform: scale(1) rotate(0);
  }
}
@keyframes tada {
  0% {
    transform: scale(1);
  }
  10%,
  20% {
    transform: scale(0.9) rotate(-3deg);
  }
  30%,
  50%,
  70%,
  90% {
    transform: scale(1.1) rotate(3deg);
  }
  40%,
  60%,
  80% {
    transform: scale(1.1) rotate(-3deg);
  }
  100% {
    transform: scale(1) rotate(0);
  }
}
.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes wobble {
  0% {
    transform: translateX(0%);
  }
  15% {
    transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    transform: translateX(20%) rotate(3deg);
  }
  45% {
    transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    transform: translateX(10%) rotate(2deg);
  }
  75% {
    transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    transform: translateX(0%);
  }
}
@keyframes wobble {
  0% {
    transform: translateX(0%);
  }
  15% {
    transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    transform: translateX(20%) rotate(3deg);
  }
  45% {
    transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    transform: translateX(10%) rotate(2deg);
  }
  75% {
    transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    transform: translateX(0%);
  }
}
.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}
@-webkit-keyframes bounceIn {
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  50% {
    opacity: 1;
    transform: scale(1.05);
  }
  70% {
    transform: scale(0.9);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes bounceIn {
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  50% {
    opacity: 1;
    transform: scale(1.05);
  }
  70% {
    transform: scale(0.9);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}
@-webkit-keyframes bounceInDown {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    transform: translateY(30px);
  }
  80% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes bounceInDown {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    transform: translateY(30px);
  }
  80% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}
.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}
@-webkit-keyframes bounceInLeft {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    transform: translateX(30px);
  }
  80% {
    transform: translateX(-10px);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes bounceInLeft {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    transform: translateX(30px);
  }
  80% {
    transform: translateX(-10px);
  }
  100% {
    transform: translateX(0);
  }
}
.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}
@-webkit-keyframes bounceInRight {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    transform: translateX(-30px);
  }
  80% {
    transform: translateX(10px);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes bounceInRight {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    transform: translateX(-30px);
  }
  80% {
    transform: translateX(10px);
  }
  100% {
    transform: translateX(0);
  }
}
.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}
@-webkit-keyframes bounceInUp {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    transform: translateY(-30px);
  }
  80% {
    transform: translateY(10px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes bounceInUp {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    transform: translateY(-30px);
  }
  80% {
    transform: translateY(10px);
  }
  100% {
    transform: translateY(0);
  }
}
.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}
@-webkit-keyframes bounceOut {
  0% {
    transform: scale(1);
  }
  25% {
    transform: scale(0.95);
  }
  50% {
    opacity: 1;
    transform: scale(1.1);
  }
  100% {
    opacity: 0;
    transform: scale(0.3);
  }
}
@keyframes bounceOut {
  0% {
    transform: scale(1);
  }
  25% {
    transform: scale(0.95);
  }
  50% {
    opacity: 1;
    transform: scale(1.1);
  }
  100% {
    opacity: 0;
    transform: scale(0.3);
  }
}
.bounceOut {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
}
@-webkit-keyframes bounceOutDown {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
@keyframes bounceOutDown {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}
@-webkit-keyframes bounceOutLeft {
  0% {
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    transform: translateX(20px);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
@keyframes bounceOutLeft {
  0% {
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    transform: translateX(20px);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}
@-webkit-keyframes bounceOutRight {
  0% {
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
@keyframes bounceOutRight {
  0% {
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}
@-webkit-keyframes bounceOutUp {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(20px);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
@keyframes bounceOutUp {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(20px);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}
@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}
@-webkit-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeInDownBig {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}
@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}
@-webkit-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}
@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translateX(20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translateX(20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}
@-webkit-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}
@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}
@-webkit-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}
@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}
@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(20px);
  }
}
@keyframes fadeOutDown {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(20px);
  }
}
.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}
@-webkit-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
@keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}
@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-20px);
  }
}
@keyframes fadeOutLeft {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-20px);
  }
}
.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}
@-webkit-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
@keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}
@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(20px);
  }
}
@keyframes fadeOutRight {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(20px);
  }
}
.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}
@-webkit-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
@keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}
@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-20px);
  }
}
@keyframes fadeOutUp {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-20px);
  }
}
.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}
@-webkit-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
@keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}
@-webkit-keyframes flip {
  0% {
    transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  40% {
    transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  50% {
    transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  80% {
    transform: perspective(400px) translateZ(0) rotateY(360deg) scale(0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  100% {
    transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}
@keyframes flip {
  0% {
    transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  40% {
    transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  50% {
    transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  80% {
    transform: perspective(400px) translateZ(0) rotateY(360deg) scale(0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  100% {
    transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}
.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip;
}
@-webkit-keyframes flipInX {
  0% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    transform: perspective(400px) rotateX(10deg);
  }
  100% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
@keyframes flipInX {
  0% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    transform: perspective(400px) rotateX(10deg);
  }
  100% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}
@-webkit-keyframes flipInY {
  0% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    transform: perspective(400px) rotateY(10deg);
  }
  100% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
@keyframes flipInY {
  0% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    transform: perspective(400px) rotateY(10deg);
  }
  100% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}
@-webkit-keyframes flipOutX {
  0% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
@keyframes flipOutX {
  0% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
.flipOutX {
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}
@-webkit-keyframes flipOutY {
  0% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
@keyframes flipOutY {
  0% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
.flipOutY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
}
@-webkit-keyframes lightSpeedIn {
  0% {
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
@keyframes lightSpeedIn {
  0% {
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}
@-webkit-keyframes lightSpeedOut {
  0% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
@keyframes lightSpeedOut {
  0% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}
@-webkit-keyframes rotateIn {
  0% {
    transform-origin: center center;
    transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateIn {
  0% {
    transform-origin: center center;
    transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}
@-webkit-keyframes rotateInDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}
@-webkit-keyframes rotateInDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}
@-webkit-keyframes rotateInUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}
@-webkit-keyframes rotateInUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}
@-webkit-keyframes rotateOut {
  0% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: center center;
    transform: rotate(200deg);
    opacity: 0;
  }
}
@keyframes rotateOut {
  0% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: center center;
    transform: rotate(200deg);
    opacity: 0;
  }
}
.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}
@-webkit-keyframes rotateOutDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
}
.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}
@-webkit-keyframes rotateOutDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
}
.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}
@-webkit-keyframes rotateOutUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
}
.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}
@-webkit-keyframes rotateOutUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
}
.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}
@-webkit-keyframes slideInDown {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes slideInDown {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  100% {
    transform: translateY(0);
  }
}
.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}
@-webkit-keyframes slideInLeft {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes slideInLeft {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  100% {
    transform: translateX(0);
  }
}
.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}
@-webkit-keyframes slideInRight {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes slideInRight {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  100% {
    transform: translateX(0);
  }
}
.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}
@-webkit-keyframes slideOutLeft {
  0% {
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
@keyframes slideOutLeft {
  0% {
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}
@-webkit-keyframes slideOutRight {
  0% {
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
@keyframes slideOutRight {
  0% {
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}
@-webkit-keyframes slideOutUp {
  0% {
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
@keyframes slideOutUp {
  0% {
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}
@-webkit-keyframes slideInUp {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes slideInUp {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}
@-webkit-keyframes slideOutDown {
  0% {
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
@keyframes slideOutDown {
  0% {
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}
@-webkit-keyframes hinge {
  0% {
    transform: rotate(0);
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  20%,
  60% {
    transform: rotate(80deg);
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  40% {
    transform: rotate(60deg);
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  80% {
    transform: rotate(60deg) translateY(0);
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }
  100% {
    transform: translateY(700px);
    opacity: 0;
  }
}
@keyframes hinge {
  0% {
    transform: rotate(0);
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  20%,
  60% {
    transform: rotate(80deg);
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  40% {
    transform: rotate(60deg);
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  80% {
    transform: rotate(60deg) translateY(0);
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }
  100% {
    transform: translateY(700px);
    opacity: 0;
  }
}
.hinge {
  -webkit-animation-name: hinge;
  animation-name: hinge;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollIn {
  0% {
    opacity: 0;
    transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg);
  }
}
@keyframes rollIn {
  0% {
    opacity: 0;
    transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg);
  }
}
.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollOut {
  0% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    transform: translateX(100%) rotate(120deg);
  }
}
@keyframes rollOut {
  0% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    transform: translateX(100%) rotate(120deg);
  }
}
.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}
@-webkit-keyframes zoomIn {
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  50% {
    opacity: 1;
  }
}
@keyframes zoomIn {
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  50% {
    opacity: 1;
  }
}
.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}
@-webkit-keyframes zoomInDown {
  0% {
    opacity: 0;
    transform: scale(0.1) translateY(-2000px);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  60% {
    opacity: 1;
    transform: scale(0.475) translateY(60px);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}
@keyframes zoomInDown {
  0% {
    opacity: 0;
    transform: scale(0.1) translateY(-2000px);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  60% {
    opacity: 1;
    transform: scale(0.475) translateY(60px);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}
.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}
@-webkit-keyframes zoomInLeft {
  0% {
    opacity: 0;
    transform: scale(0.1) translateX(-2000px);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  60% {
    opacity: 1;
    transform: scale(0.475) translateX(48px);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}
@keyframes zoomInLeft {
  0% {
    opacity: 0;
    transform: scale(0.1) translateX(-2000px);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  60% {
    opacity: 1;
    transform: scale(0.475) translateX(48px);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}
.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}
@-webkit-keyframes zoomInRight {
  0% {
    opacity: 0;
    transform: scale(0.1) translateX(2000px);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  60% {
    opacity: 1;
    transform: scale(0.475) translateX(-48px);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}
@keyframes zoomInRight {
  0% {
    opacity: 0;
    transform: scale(0.1) translateX(2000px);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  60% {
    opacity: 1;
    transform: scale(0.475) translateX(-48px);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}
.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}
@-webkit-keyframes zoomInUp {
  0% {
    opacity: 0;
    transform: scale(0.1) translateY(2000px);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  60% {
    opacity: 1;
    transform: scale(0.475) translateY(-60px);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}
@keyframes zoomInUp {
  0% {
    opacity: 0;
    transform: scale(0.1) translateY(2000px);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  60% {
    opacity: 1;
    transform: scale(0.475) translateY(-60px);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}
.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}
@-webkit-keyframes zoomOut {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0;
    transform: scale(0.3);
  }
  100% {
    opacity: 0;
  }
}
@keyframes zoomOut {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0;
    transform: scale(0.3);
  }
  100% {
    opacity: 0;
  }
}
.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}
@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    transform: scale(0.475) translateY(-60px);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  100% {
    opacity: 0;
    transform: scale(0.1) translateY(2000px);
    transform-origin: center bottom;
  }
}
@keyframes zoomOutDown {
  40% {
    opacity: 1;
    transform: scale(0.475) translateY(-60px);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  100% {
    opacity: 0;
    transform: scale(0.1) translateY(2000px);
    transform-origin: center bottom;
  }
}
.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
}
@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    transform: scale(0.475) translateX(42px);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  100% {
    opacity: 0;
    transform: scale(0.1) translateX(-2000px);
    transform-origin: left center;
  }
}
@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    transform: scale(0.475) translateX(42px);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  100% {
    opacity: 0;
    transform: scale(0.1) translateX(-2000px);
    transform-origin: left center;
  }
}
.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
}
@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    transform: scale(0.475) translateX(-42px);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  100% {
    opacity: 0;
    transform: scale(0.1) translateX(2000px);
    transform-origin: right center;
  }
}
@keyframes zoomOutRight {
  40% {
    opacity: 1;
    transform: scale(0.475) translateX(-42px);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  100% {
    opacity: 0;
    transform: scale(0.1) translateX(2000px);
    transform-origin: right center;
  }
}
.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
}
@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    transform: scale(0.475) translateY(60px);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  100% {
    opacity: 0;
    transform: scale(0.1) translateY(-2000px);
    transform-origin: center top;
  }
}
@keyframes zoomOutUp {
  40% {
    opacity: 1;
    transform: scale(0.475) translateY(60px);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
  }
  100% {
    opacity: 0;
    transform: scale(0.1) translateY(-2000px);
    transform-origin: center top;
  }
}
.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}
