/* @import url('http://example.com/example_style.css'); */
/***********************************************/
/* CSS @imports must be at the top of the file */
/* Add them above this section                 */
/***********************************************/

/****************************************/
/* HubSpot Style Boilerplate            */
/****************************************/
@charset "UTF-8";

/*!
 * animate.css -http://daneden.me/animate
 * Version - 3.7.0
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2018 Daniel Eden
 */

@-webkit-keyframes bounce {
  from,
  20%,
  53%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}

@keyframes bounce {
  from,
  20%,
  53%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}

.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
}

@-webkit-keyframes flash {
  from,
  50%,
  to {
    opacity: 1;
  }

  25%,
  75% {
    opacity: 0;
  }
}

@keyframes flash {
  from,
  50%,
  to {
    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 {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

@-webkit-keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }

  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }

  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }

  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}

@-webkit-keyframes shake {
  from,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}

@keyframes shake {
  from,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}

.shake {
  -webkit-animation-name: shake;
  animation-name: shake;
}

@-webkit-keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }

  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }

  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.headShake {
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: headShake;
  animation-name: headShake;
}

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }

  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }

  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }

  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }

  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }

  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }

  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }

  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }

  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

.swing {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}

@-webkit-keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  10%,
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }

  30%,
  50%,
  70%,
  90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%,
  60%,
  80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }

  10%,
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }

  30%,
  50%,
  70%,
  90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }

  40%,
  60%,
  80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }

  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes wobble {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes wobble {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }

  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }

  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }

  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }

  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

@-webkit-keyframes jello {
  from,
  11.1%,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

@keyframes jello {
  from,
  11.1%,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }

  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }

  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }

  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }

  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }

  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

.jello {
  -webkit-animation-name: jello;
  animation-name: jello;
  -webkit-transform-origin: center;
  transform-origin: center;
}

@-webkit-keyframes heartBeat {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  14% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  28% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  42% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  70% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes heartBeat {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  14% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  28% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  42% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }

  70% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

.heartBeat {
  -webkit-animation-name: heartBeat;
  animation-name: heartBeat;
  -webkit-animation-duration: 1.3s;
  animation-duration: 1.3s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}

@-webkit-keyframes bounceIn {
  from,
  20%,
  40%,
  60%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes bounceIn {
  from,
  20%,
  40%,
  60%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.bounceIn {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}

@-webkit-keyframes bounceInDown {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInDown {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInLeft {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInRight {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }

  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }

  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes bounceInUp {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }

  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}

@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  50%,
  55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}

@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  50%,
  55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}

.bounceOut {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
}

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }

  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }

  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes fadeOutDown {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

@keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}

.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}

.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes fadeOutRight {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}

.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes fadeOutUp {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}

.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  to {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

@keyframes flip {
  from {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  to {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -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 {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}

@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }

  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}

.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

.flipOutX {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}

@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }

  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }

  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}

.flipOutY {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
}

@-webkit-keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOut {
  from {
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}

@keyframes lightSpeedOut {
  from {
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) 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 {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

@-webkit-keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}

@-webkit-keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}

@-webkit-keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}

@-webkit-keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}

@keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}

.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}

.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}

.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }

  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}

.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}

@-webkit-keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  20%,
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40%,
  80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}

@keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  20%,
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40%,
  80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }

  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}

.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-name: hinge;
  animation-name: hinge;
}

@-webkit-keyframes jackInTheBox {
  from {
    opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
    transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
  }

  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }

  70% {
    -webkit-transform: rotate(3deg);
    transform: rotate(3deg);
  }

  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes jackInTheBox {
  from {
    opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
    transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
  }

  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }

  70% {
    -webkit-transform: rotate(3deg);
    transform: rotate(3deg);
  }

  to {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

.jackInTheBox {
  -webkit-animation-name: jackInTheBox;
  animation-name: jackInTheBox;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

@keyframes rollOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}

.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  50% {
    opacity: 1;
  }
}

@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  50% {
    opacity: 1;
  }
}

.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  to {
    opacity: 0;
  }
}

@keyframes zoomOut {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  to {
    opacity: 0;
  }
}

.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
}

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
}

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
}

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}

.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}

@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }

  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}

.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}

.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}

.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animated.delay-1s {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}

.animated.delay-2s {
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
}

.animated.delay-3s {
  -webkit-animation-delay: 3s;
  animation-delay: 3s;
}

.animated.delay-4s {
  -webkit-animation-delay: 4s;
  animation-delay: 4s;
}

.animated.delay-5s {
  -webkit-animation-delay: 5s;
  animation-delay: 5s;
}

.animated.fast {
  -webkit-animation-duration: 800ms;
  animation-duration: 800ms;
}

.animated.faster {
  -webkit-animation-duration: 500ms;
  animation-duration: 500ms;
}

.animated.slow {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

.animated.slower {
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
}

@media (prefers-reduced-motion) {
  .animated {
    -webkit-animation: unset !important;
    animation: unset !important;
    -webkit-transition: none !important;
    transition: none !important;
  }
}
/* These includes are optional, but helpful. */
/* Images */

img {
    max-width: 100%;
    border: 0;
    -ms-interpolation-mode: bicubic;
    vertical-align: bottom; /* Suppress the space beneath the baseline */
}

/* Videos */

video {
    max-width: 100%;
    height: auto;
}

/* Embed Container (iFrame, Object, Embed) */

.hs-responsive-embed {
    position: relative;
    height: auto;
    overflow: hidden;
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
}

.hs-responsive-embed iframe, .hs-responsive-embed object, .hs-responsive-embed embed {
    width: 100%;
    height: 100%;
    border: 0;
}

.hs-responsive-embed,
.hs-responsive-embed.hs-responsive-embed-youtube,
.hs-responsive-embed.hs-responsive-embed-wistia,
.hs-responsive-embed.hs-responsive-embed-vimeo {
    padding-bottom: 2%;
}

.hs-responsive-embed.hs-responsive-embed-instagram {
    padding-bottom: 116.01%;
}

.hs-responsive-embed.hs-responsive-embed-pinterest {
    height: auto;
    overflow: visible;
    padding: 0;
}

.hs-responsive-embed.hs-responsive-embed-pinterest iframe {
    position: static;
    width: auto;
    height: auto;
}

iframe[src^="http://www.slideshare.net/slideshow/embed_code/"] {
    width: 100%;
    max-width: 100%;
}

@media (max-width: 568px) {
    iframe {
        max-width: 100%;
    }
}

/* Forms */

textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
select {
    padding: 6px;
    display: inline-block;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/* Menus */

.hs-menu-wrapper ul {
    padding: 0;
}

.hs-menu-wrapper.hs-menu-flow-horizontal ul {
    list-style: none;
    margin: 0;
}

.hs-menu-wrapper.hs-menu-flow-horizontal > ul {
    display: inline-block;
    margin-bottom: 20px;
}

.hs-menu-wrapper.hs-menu-flow-horizontal > ul:before {
    content: " ";
    display: table;
}

.hs-menu-wrapper.hs-menu-flow-horizontal > ul:after {
    content: " ";
    display: table;
    clear: both;
}

.hs-menu-wrapper.hs-menu-flow-horizontal > ul li.hs-menu-depth-1 {
    float: left;
}

.hs-menu-wrapper.hs-menu-flow-horizontal > ul li a {
    display: inline-block;
    padding: 10px 20px;
    white-space: nowrap;
    max-width: 140px;
    overflow: hidden;
    text-overflow: ellipsis;
    text-decoration: none;
}

.hs-menu-wrapper.hs-menu-flow-horizontal > ul li.hs-item-has-children {
    position: relative;
}

.hs-menu-wrapper.hs-menu-flow-horizontal > ul li.hs-item-has-children ul.hs-menu-children-wrapper {
    visibility: hidden;
    opacity: 0;
    -webkit-transition: opacity 0.4s;
    position: absolute;
    z-index: 10;
    left: 0;
}

.hs-menu-wrapper.hs-menu-flow-horizontal > ul li.hs-item-has-children ul.hs-menu-children-wrapper li a {
    display: block;
    white-space: nowrap;
    width: 140px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.hs-menu-wrapper.hs-menu-flow-horizontal > ul li.hs-item-has-children ul.hs-menu-children-wrapper li.hs-item-has-children ul.hs-menu-children-wrapper {
    left: 180px;
    top: 0;
}

.hs-menu-wrapper.hs-menu-flow-horizontal > ul li.hs-item-has-children:hover > ul.hs-menu-children-wrapper {
    opacity: 1;
    visibility: visible;
}

.row-fluid-wrapper:last-child .hs-menu-wrapper.hs-menu-flow-horizontal > ul {
    margin-bottom: 0;
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch {
    position: relative;
    margin-bottom: 20px;
    min-height: 7em;
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch > ul {
    margin-bottom: 0;
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch > ul li.hs-item-has-children {
    position: static;
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch > ul li.hs-item-has-children ul.hs-menu-children-wrapper {
    display: none;
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch > ul li.hs-item-has-children.active-branch > ul.hs-menu-children-wrapper {
    display: block;
    visibility: visible;
    opacity: 1;
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch > ul li.hs-item-has-children.active-branch > ul.hs-menu-children-wrapper:before {
    content: " ";
    display: table;
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch > ul li.hs-item-has-children.active-branch > ul.hs-menu-children-wrapper:after {
    content: " ";
    display: table;
    clear: both;
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch > ul li.hs-item-has-children.active-branch > ul.hs-menu-children-wrapper > li {
    float: left;
}

.hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch > ul li.hs-item-has-children.active-branch > ul.hs-menu-children-wrapper > li a {
    display: inline-block;
    padding: 10px 20px;
    white-space: nowrap;
    max-width: 140px;
    width: auto;
    overflow: hidden;
    text-overflow: ellipsis;
    text-decoration: none;
}

.hs-menu-wrapper.hs-menu-flow-vertical {
    width: 100%;
}

.hs-menu-wrapper.hs-menu-flow-vertical ul {
    list-style: none;
    margin: 0;
}

.hs-menu-wrapper.hs-menu-flow-vertical li a {
    display: block;
    white-space: nowrap;
    width: 140px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.hs-menu-wrapper.hs-menu-flow-vertical > ul {
    margin-bottom: 20px;
}

.hs-menu-wrapper.hs-menu-flow-vertical > ul li.hs-menu-depth-1 > a {
    width: auto;
}

.hs-menu-wrapper.hs-menu-flow-vertical > ul li a {
    padding: 10px 20px;
    text-decoration: none;
}

.hs-menu-wrapper.hs-menu-flow-vertical > ul li.hs-item-has-children {
    position: relative;
}

.hs-menu-wrapper.hs-menu-flow-vertical > ul li.hs-item-has-children ul.hs-menu-children-wrapper {
    visibility: hidden;
    opacity: 0;
    -webkit-transition: opacity 0.4s;
    position: absolute;
    z-index: 10;
    top: 0;
    left: 180px;
}

.hs-menu-wrapper.hs-menu-flow-vertical > ul li.hs-item-has-children:hover > ul.hs-menu-children-wrapper {
    opacity: 1;
    visibility: visible;
}

.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch li a {
    min-width: 140px;
    width: auto;
}

.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch > ul {
    max-width: 100%;
    overflow: hidden;
}

.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch > ul li.hs-item-has-children ul.hs-menu-children-wrapper {
    display: none;
}

.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch > ul li.hs-item-has-children.active-branch > ul.hs-menu-children-wrapper,
.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch > ul li.hs-item-has-children.active-branch > ul.hs-menu-children-wrapper > li.hs-item-has-children > ul.hs-menu-children-wrapper {
    display: block;
    visibility: visible;
    opacity: 1;
    position: static;
}

.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch li.hs-menu-depth-2 > a {
    padding-left: 4em;
}

.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch li.hs-menu-depth-3 > a {
    padding-left: 6em;
}

.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch li.hs-menu-depth-4 > a {
    padding-left: 8em;
}

.hs-menu-wrapper.hs-menu-flow-vertical.hs-menu-show-active-branch li.hs-menu-depth-5 > a {
    padding-left: 140px;
}

.hs-menu-wrapper.hs-menu-not-show-active-branch li.hs-menu-depth-1 ul {
    box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.18);
    -webkit-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.18);
    -moz-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.18);
}

@media (max-width: 568px) {
    .hs-menu-wrapper, .hs-menu-wrapper * {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
        width: 100%;
    }

    .hs-menu-wrapper.hs-menu-flow-horizontal ul {
        list-style: none;
        margin: 0;
        display: block;
    }

    .hs-menu-wrapper.hs-menu-flow-horizontal > ul {
        display: block;
    }

    .hs-menu-wrapper.hs-menu-flow-horizontal > ul li.hs-menu-depth-1 {
        float: none;
    }

    .hs-menu-wrapper.hs-menu-flow-horizontal > ul li a,
    .hs-menu-wrapper.hs-menu-flow-horizontal > ul li.hs-item-has-children ul.hs-menu-children-wrapper li a,
    .hs-menu-wrapper.hs-menu-flow-horizontal.hs-menu-show-active-branch > ul li.hs-item-has-children.active-branch > ul.hs-menu-children-wrapper > li a {
        display: block;
        max-width: 100%;
        width: 100%;
    }
}

.hs-menu-wrapper.hs-menu-flow-vertical.no-flyouts > ul li.hs-item-has-children ul.hs-menu-children-wrapper,
.hs-menu-wrapper.hs-menu-flow-horizontal.no-flyouts > ul li.hs-item-has-children ul.hs-menu-children-wrapper {
    visibility: visible;
    opacity: 1;
}

/* Space Module */

.widget-type-space {
    visibility: hidden;
}

/* Blog Author Section */

.hs-author-listing-header {
    margin: 0 0 .75em 0;
}

.hs-author-social-links {
    display: inline-block;
}

.hs-author-social-links a.hs-author-social-link {
    width: 24px;
    height: 24px;
    border-width: 0px;
    border: 0px;
    line-height: 24px;
    background-size: 24px 24px;
    background-repeat: no-repeat;
    display: inline-block;
    text-indent: -99999px;
}

.hs-author-social-links a.hs-author-social-link.hs-social-facebook {
    background-image: url("//static.hubspot.com/final/img/common/icons/social/facebook-24x24.png");
}

.hs-author-social-links a.hs-author-social-link.hs-social-linkedin {
    background-image: url("//static.hubspot.com/final/img/common/icons/social/linkedin-24x24.png");
}

.hs-author-social-links a.hs-author-social-link.hs-social-twitter {
    background-image: url("//static.hubspot.com/final/img/common/icons/social/twitter-24x24.png");
}

.hs-author-social-links a.hs-author-social-link.hs-social-google-plus {
    background-image: url("//static.hubspot.com/final/img/common/icons/social/googleplus-24x24.png");
}

/*
 * jQuery FlexSlider v2.0
 * http://www.woothemes.com/flexslider/
 *
 * Copyright 2012 WooThemes
 * Free to use under the GPLv2 license.
 * http://www.gnu.org/licenses/gpl-2.0.html
 *
 * Contributing author: Tyler Smith (@mbmufffin)
 */

/* Wrapper */
.hs_cos_wrapper_type_image_slider {
    display: block;
    overflow: hidden
}

/* Browser Resets */
.hs_cos_flex-container a:active,
.hs_cos_flex-slider a:active,
.hs_cos_flex-container a:focus,
.hs_cos_flex-slider a:focus  {outline: none;}
.hs_cos_flex-slides,
.hs_cos_flex-control-nav,
.hs_cos_flex-direction-nav {margin: 0; padding: 0; list-style: none;}

/* FlexSlider Necessary Styles
*********************************/
.hs_cos_flex-slider {margin: 0; padding: 0;}
.hs_cos_flex-slider .hs_cos_flex-slides > li {display: none; -webkit-backface-visibility: hidden; position: relative;} /* Hide the slides before the JS is loaded. Avoids image jumping */
.hs_cos_flex-slider .hs_cos_flex-slides img {width: 100%; display: block; border-radius: 0px;}
.hs_cos_flex-pauseplay span {text-transform: capitalize;}

/* Clearfix for the .hs_cos_flex-slides element */
.hs_cos_flex-slides:after {content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;}
html[xmlns] .hs_cos_flex-slides {display: block;}
* html .hs_cos_flex-slides {height: 1%;}

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
 * include js that eliminates this class on page load */

/* FlexSlider Default Theme
*********************************/
.hs_cos_flex-slider {margin: 0 0 60px; background: #fff; border: 0; position: relative; -webkit-border-radius: 4px; -moz-border-radius: 4px; -o-border-radius: 4px; border-radius: 4px; zoom: 1;}
.hs_cos_flex-viewport {max-height: 2000px; -webkit-transition: all 1s ease; -moz-transition: all 1s ease; transition: all 1s ease;}
.loading .hs_cos_flex-viewport {max-height: 300px;}
.hs_cos_flex-slider .hs_cos_flex-slides {zoom: 1;}

.carousel li {margin-right: 5px}


/* Direction Nav */
.hs_cos_flex-direction-nav {*height: 0;}
.hs_cos_flex-direction-nav a {width: 30px; height: 30px; margin: -20px 0 0; display: block; background: url(//static.hsappstatic.net/content_shared_assets/static-1.3935/img/bg_direction_nav.png) no-repeat 0 0; position: absolute; top: 50%; z-index: 10; cursor: pointer; text-indent: -9999px; opacity: 0; -webkit-transition: all .3s ease;}
.hs_cos_flex-direction-nav .hs_cos_flex-next {background-position: 100% 0; right: -36px; }
.hs_cos_flex-direction-nav .hs_cos_flex-prev {left: -36px;}
.hs_cos_flex-slider:hover .hs_cos_flex-next {opacity: 0.8; right: 5px;}
.hs_cos_flex-slider:hover .hs_cos_flex-prev {opacity: 0.8; left: 5px;}
.hs_cos_flex-slider:hover .hs_cos_flex-next:hover, .hs_cos_flex-slider:hover .hs_cos_flex-prev:hover {opacity: 1;}
.hs_cos_flex-direction-nav .hs_cos_flex-disabled {opacity: .3!important; filter:alpha(opacity=30); cursor: default;}

/* Direction Nav for the Thumbnail Carousel */
.hs_cos_flex_thumbnavs-direction-nav {
    margin: 0px;
    padding: 0px;
    list-style: none;
    }
.hs_cos_flex_thumbnavs-direction-nav {*height: 0;}
.hs_cos_flex_thumbnavs-direction-nav a {width: 30px; height: 140px; margin: -60px 0 0; display: block; background: url(//static.hsappstatic.net/content_shared_assets/static-1.3935/img/bg_direction_nav.png) no-repeat 0 40%; position: absolute; top: 50%; z-index: 10; cursor: pointer; text-indent: -9999px; opacity: 1; -webkit-transition: all .3s ease;}
.hs_cos_flex_thumbnavs-direction-nav .hs_cos_flex_thumbnavs-next {background-position: 100% 40%; right: 0px; }
.hs_cos_flex_thumbnavs-direction-nav .hs_cos_flex_thumbnavs-prev {left: 0px;}
.hs-cos-flex-slider-control-panel img { cursor: pointer; }
.hs-cos-flex-slider-control-panel img:hover { opacity:.8; }
.hs-cos-flex-slider-control-panel { margin-top: -30px; }



/* Control Nav */
.hs_cos_flex-control-nav {width: 100%; position: absolute; bottom: -40px; text-align: center;}
.hs_cos_flex-control-nav li {margin: 0 6px; display: inline-block; zoom: 1; *display: inline;}
.hs_cos_flex-control-paging li a {width: 11px; height: 11px; display: block; background: #666; background: rgba(0,0,0,0.5); cursor: pointer; text-indent: -9999px; -webkit-border-radius: 20px; -moz-border-radius: 20px; -o-border-radius: 20px; border-radius: 20px; box-shadow: inset 0 0 3px rgba(0,0,0,0.3);}
.hs_cos_flex-control-paging li a:hover { background: #333; background: rgba(0,0,0,0.7); }
.hs_cos_flex-control-paging li a.hs_cos_flex-active { background: #000; background: rgba(0,0,0,0.9); cursor: default; }

.hs_cos_flex-control-thumbs {margin: 5px 0 0; position: static; overflow: hidden;}
.hs_cos_flex-control-thumbs li {width: 25%; float: left; margin: 0;}
.hs_cos_flex-control-thumbs img {width: 100%; display: block; opacity: .7; cursor: pointer;}
.hs_cos_flex-control-thumbs img:hover {opacity: 1;}
.hs_cos_flex-control-thumbs .hs_cos_flex-active {opacity: 1; cursor: default;}

@media screen and (max-width: 860px) {
  .hs_cos_flex-direction-nav .hs_cos_flex-prev {opacity: 1; left: 0;}
  .hs_cos_flex-direction-nav .hs_cos_flex-next {opacity: 1; right: 0;}
}

.hs_cos_flex-slider .caption {
    background-color: rgba(0,0,0,0.5);
    position: absolute;
    font-size: 2em;
    line-height: 1.1em;
    color: white;
    padding: 0px 5% 0px 5%;
    width: 100%;
    bottom: 0;
    text-align: center;
}

.hs_cos_flex-slider .superimpose .caption {
    color: white;
    font-size: 3em;
    line-height: 1.1em;
    position: absolute;
    padding: 0px 5% 0px 5%;
    width: 90%;
    top: 40%;
    text-align: center;
    background-color: transparent;
}

@media all and (max-width: 400px) {
    .hs_cos_flex-slider .superimpose .caption {
        background-color: black;
        position: static;
        font-size: 2em;
        line-height: 1.1em;
        color: white;
        width: 90%;
        padding: 0px 5% 0px 5%;
        top: 40%;
        text-align: center;
    }

    /* beat recaptcha into being responsive, !importants and specificity are necessary */
    #recaptcha_area table#recaptcha_table {width: 300px !important;}
    #recaptcha_area table#recaptcha_table .recaptcha_r1_c1 {width: 300px !important;}
    #recaptcha_area table#recaptcha_table .recaptcha_r4_c4 { width: 67px !important;}
    #recaptcha_area table#recaptcha_table #recaptcha_image {width:280px !important;}
}

.hs_cos_flex-slider h1,
.hs_cos_flex-slider h2,
.hs_cos_flex-slider h3,
.hs_cos_flex-slider h4,
.hs_cos_flex-slider h5,
.hs_cos_flex-slider h6,
.hs_cos_flex-slider p {
    color: white;
}

/* Thumbnail only version of the gallery */
.hs-gallery-thumbnails li {
    display: inline-block;
    margin: 0px;
    padding: 0px;
    margin-right:-4px;
}
.hs-gallery-thumbnails.fixed-height li img {
    max-height: 150px;
    margin: 0px;
    padding: 0px;
    border-width: 0px;
}


/* responsive pre elements */

pre {
    overflow-x: auto;
}

/* responsive pre tables */

table pre {
    white-space: pre-wrap;
}

/* adding minimal spacing for blog comments */
.comment {
    margin: 10px 0 10px 0;
}

/* make sure lines with no whitespace don't interefere with layout */
.hs_cos_wrapper_type_rich_text,
.hs_cos_wrapper_type_text,
.hs_cos_wrapper_type_header,
.hs_cos_wrapper_type_section_header,
.hs_cos_wrapper_type_raw_html,
.hs_cos_wrapper_type_raw_jinja,
.hs_cos_wrapper_type_page_footer {
    word-wrap: break-word;
}
/* HTML 5 Reset */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
    display: block;
}

audio, canvas, video {
    display: inline-block;
    *display: inline;
    *zoom: 1;
}

audio:not([controls]) {
    display: none;
}

/* Support migrations from wordpress */

.wp-float-left {
    float: left;
    margin: 0 20px 20px 0;
}

.wp-float-right {
    float: right;
    margin: 0 0 20px 20px;
}

/* Responsive Google Maps */

#map_canvas img, .google-maps img {
    max-width: none;
}

/* line height fix for reCaptcha theme */
#recaptcha_table td {line-height: 0;}
.recaptchatable #recaptcha_response_field {min-height: 0;line-height: 12px;}


/* ==========================================================================
   Index:         
  1. BASE STYLES   
    - Variables
    - Macros
    - Base
    - Typography
  2. COS STRUCTURE
    - Structure
    - Header
    - Content
    - Footer
  3. MAIN NAVIGATION
    - Custom Menu Primary
    - Mobile Menu
  4. TEMPLATE MODULE CLASSES
    - Common Template Classes
    - Site Pages
    - Landing Pages
    - System Pages
  5. COS COMPONENTS
    - Blog
    - Forms
    - Buttons
  6. MISCELLANOUS
  7. MOBILE MEDIA QUERIES
   ========================================================================== */



/* ==========================================================================
   1. BASE STYLES                                             
   ========================================================================== */


/* Animation keyframes */
@-webkit-keyframes rotating /* Safari and Chrome */ {
  from {
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes rotating {
  from {
    -ms-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -ms-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.rotating {
  -webkit-animation: rotating 1s linear infinite;
  -moz-animation: rotating 1s linear infinite;
  -ms-animation: rotating 1s linear infinite;
  -o-animation: rotating 1s linear infinite;
  animation: rotating 1s linear infinite;
}



/* ==========================================================================
   Variables                                               
   ========================================================================== */


/**
 * Find the most consistently used font styles, colors, and container widths 
 * for your site and assign them to the jinja variables below for easy use 
 * and reference. 
 *
 * Apply the variable as shown below.  Ignore the jingja comment tags.
 *
 * 
 */

/* Colors */
    /*  */
    /*  */
    /*  */
    /*  */
    /*  */
    /*  */









/* Typography */
            /*  */
                         /*  */
                          /*  */
 /*  */

/* Containers */
 /* Used on '.page-center' in 'Base' and in the 'Portrait tablet to landscape and desktop' media query */




/* ==========================================================================
   Macros                                                  
   ========================================================================== */


/** 
  * Create jinja macros for CSS3 properties that need browser prefixes.
  *
  * Apply the style as shown below on it's own CSS property line.  
  * Ignore the jinja comment tags. 
  *
  * 
  */

 

/* Animation Delay */


/* Box Shadow */


/* Background Size */


/* Border Radius */


/* User Select */


/* Opacity*/



/* Delays */
.delayp1 { animation-delay: .1s;
    -moz-animation-delay: .1s;
    -webkit-animation-delay: .1s;
    -o-animation-delay: .1s;
    transition-delay: .1s;
    -webkit-transition-delay: .1s;
    -moz-transition-delay: .1s;
    -o-transition-delay: .1s; }
.delayp2 { animation-delay: .2s;
    -moz-animation-delay: .2s;
    -webkit-animation-delay: .2s;
    -o-animation-delay: .2s;
    transition-delay: .2s;
    -webkit-transition-delay: .2s;
    -moz-transition-delay: .2s;
    -o-transition-delay: .2s; }
.delayp3 { animation-delay: .3s;
    -moz-animation-delay: .3s;
    -webkit-animation-delay: .3s;
    -o-animation-delay: .3s;
    transition-delay: .3s;
    -webkit-transition-delay: .3s;
    -moz-transition-delay: .3s;
    -o-transition-delay: .3s; }
.delayp4 { animation-delay: .4s;
    -moz-animation-delay: .4s;
    -webkit-animation-delay: .4s;
    -o-animation-delay: .4s;
    transition-delay: .4s;
    -webkit-transition-delay: .4s;
    -moz-transition-delay: .4s;
    -o-transition-delay: .4s; }
.delayp5 { animation-delay: .5s;
    -moz-animation-delay: .5s;
    -webkit-animation-delay: .5s;
    -o-animation-delay: .5s;
    transition-delay: .5s;
    -webkit-transition-delay: .5s;
    -moz-transition-delay: .5s;
    -o-transition-delay: .5s; }
.delayp6 { animation-delay: .6s;
    -moz-animation-delay: .6s;
    -webkit-animation-delay: .6s;
    -o-animation-delay: .6s;
    transition-delay: .6s;
    -webkit-transition-delay: .6s;
    -moz-transition-delay: .6s;
    -o-transition-delay: .6s; }
.delayp7 { animation-delay: .7s;
    -moz-animation-delay: .7s;
    -webkit-animation-delay: .7s;
    -o-animation-delay: .7s;
    transition-delay: .7s;
    -webkit-transition-delay: .7s;
    -moz-transition-delay: .7s;
    -o-transition-delay: .7s; }
.delayp8 { animation-delay: .8s;
    -moz-animation-delay: .8s;
    -webkit-animation-delay: .8s;
    -o-animation-delay: .8s;
    transition-delay: .8s;
    -webkit-transition-delay: .8s;
    -moz-transition-delay: .8s;
    -o-transition-delay: .8s; }
.delayp9 { animation-delay: .9s;
    -moz-animation-delay: .9s;
    -webkit-animation-delay: .9s;
    -o-animation-delay: .9s;
    transition-delay: .9s;
    -webkit-transition-delay: .9s;
    -moz-transition-delay: .9s;
    -o-transition-delay: .9s; }
.delay1s { animation-delay: 1s;
    -moz-animation-delay: 1s;
    -webkit-animation-delay: 1s;
    -o-animation-delay: 1s;
    transition-delay: 1s;
    -webkit-transition-delay: 1s;
    -moz-transition-delay: 1s;
    -o-transition-delay: 1s; }
.delay2s { animation-delay: 2s;
    -moz-animation-delay: 2s;
    -webkit-animation-delay: 2s;
    -o-animation-delay: 2s;
    transition-delay: 2s;
    -webkit-transition-delay: 2s;
    -moz-transition-delay: 2s;
    -o-transition-delay: 2s; }
/** 
  * Example of how to apply the above macro (ignore the jinja comment tags):
  *
  * a {
  *   color: red;
  *   font-size: 12px;
  *    
  * }
  */




/* ==========================================================================
   Base                                                    
   ========================================================================== */


/** 
 * Box Sizing
 * 
 * Applies a natural box layout model to all elements so that width and padding 
 * are essentially combined, making responsive styles easier to manage.
 */

*, *:before, *:after {
  -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
}



html, body {
  min-height: 100%;
  margin: 0;
  padding: 0;
} 

/* Website background color and default font styles */
body {
    overflow-x: hidden;

  background: #e8e8e8;
  color: #222222;
  font-family: 'P22', Arial, Sans-Serif;
  font-size: 18px;
  line-height: 1.5;
}

.page-container {
  max-width: 1720px;
  background-color: #fff;
  min-height: 100% !important;
  float: none !important;
  margin: 0 auto !important;
  position:relative;
}
/**
 * Page Center
 *
 * Apply .page-center to full-width modules.
 */

.container-fluid .row-fluid .page-center {
  float: none;
  max-width: 1080px;
  margin: 0 auto;
}

.container-fluid .row-fluid .page-center-large {
  float: none;
  max-width: 1620px;
  margin: 0 auto;  
}

a { color: #222222; text-decoration:none; border-bottom:2px solid #d51616;}
a:hover, a:focus { color: #d51616; }

hr {
  color: #ccc;
  background-color: #ccc;
  height: 1px;
  border: none;
}

img {
  height:auto;
}

/* Highlighted Text */
::-moz-selection {
  color: #fff;
  background: #222222;
  text-shadow: none;
}
::selection {
  color: #fff;
  background: #222222;
  text-shadow: none;
}

/* Corrects width issues in table elements created via the wysiwyg editor */
table tr td img {
  max-width: initial;
}

.content-section {
  padding:50px 0;
}

.small-padding {
  padding:40px 0;
}


/* ==========================================================================
   Typography 
   ========================================================================== */
@font-face {
font-family: 'P22';
src: url('https://www.thebritagency.com/hubfs/Fonts%202019/P22%20Underground%20Book.otf') format('opentype');
font-weight: 400;
font-style: normal;
  font-display: auto;
}

@font-face {
font-family: 'P22';
src: url('https://www.thebritagency.com/hubfs/Fonts%202019/P22UndergroundMedium.otf') format('opentype');
font-weight: 500;
font-style: normal;
  font-display: auto;
}

@font-face {
font-family: 'P22';
src: url('https://www.thebritagency.com/hubfs/Fonts%202019/P22UndergroundDemiBold.otf') format('opentype');
font-weight: 600;
font-style: normal;
  font-display: auto;
}

@font-face {
font-family: 'P22';
src: url('https://www.thebritagency.com/hubfs/Fonts%202019/P22UndergroundLight.otf') format('opentype');
font-weight: 300;
font-style: normal;
  font-display: auto;
}

@font-face {
font-family: 'Caslon';
src: url('https://www.thebritagency.com/hubfs/Fonts%202019/Adobe%20Caslon%20Pro%20Regular.ttf') format('truetype');
font-weight: 400;
font-style: normal;
  font-display: auto;
}

@font-face {
font-family: 'Caslon';
src: url('https://www.thebritagency.com/hubfs/Fonts%202019/Adobe-Caslon-Pro-Italic_2003-1.ttf') format('truetype');
font-weight: 400;
font-style: italic;
  font-display: auto;
}


/* Basic text */
p {
font-size: 18px;
} 
small {}
strong {}
em {}
cite {}
code {}
pre {}

sup, sub {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sup { top: -0.5em; }
sub { bottom: -0.25em; }

/* Headings */
h1, h2, h3, h4, h5, h6 {}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {}

h1 {
  font-size: 48px;
  font-family: 'P22',Arial, Sans-Serif;
  font-weight: 500;
}
h2 {
  font-size: 32px;
    font-family: 'P22',Arial, Sans-Serif;
  font-weight: 500;
}
h3 {
  font-size: 24px;
      font-family: 'P22',Arial, Sans-Serif;
  font-weight: 400;
}
h4 {

}
h5 {

}
h6 {

}

/* Lists */
ul, ol {}
ul ul, ul ol, ol ol, ol ul {}
li {}

ul.unstyled, ol.unstyled {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Quotes */
blockquote {}
blockquote p {}
blockquote small {}
blockquote small:before {}

q:before, q:after, blockquote:before, blockquote:after {}

.logo-slider-section {
  padding:100px 0 50px;
}

.logo-container img {
  max-width:280px;
  height:81px;
}

/* ==========================================================================
   Animations                                            
   ========================================================================== */


@keyframes float {
  
	0% {
		transform: translatey(0);
	}
	50% {
		transform: translatey(-20px);
	}
	100% {
		transform: translatey(0);
	}
}

@keyframes dash {

  to {
    stroke-dashoffset: 0;
  }
}

@keyframes float-in {
  from {
    transform: translate(20vw, 3vw);
  }
  to {
    transform: translate(0px, 0px)

}
}


/* ==========================================================================
   Buttons                                            
   ========================================================================== */

.red-btn {
  padding: 10px 30px;
  background: #d51616;
  color: #fff;
  box-shadow: 5px 10px 15px rgba(0,0,0,0.2) !important;
  text-decoration: none;
  border:none;
  display:inline-block;
}

.red-btn:hover {
  color: #fff; 
  cursor:pointer;
}

.blue-btn {
  padding: 10px 30px;
  background: #294879;
  color: #fff;
  box-shadow: 5px 10px 15px rgba(0,0,0,0.2) !important;
  border:none;
  display:inline-block;
}

.blue-btn:hover {
  color: #fff; 
  cursor:pointer; 
}

.orange-btn {
  padding: 10px 30px;
  background: #e56228;
  color: #fff;
  box-shadow: 5px 10px 15px rgba(0,0,0,0.2) !important;
  border:none;
}

.orange-btn:hover {
  color: #fff; 
}

/* Grow Shadow */
.hvr-grow-shadow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: box-shadow, transform;
  transition-property: box-shadow, transform;
}
.hvr-grow-shadow:hover, .hvr-grow-shadow:focus, .hvr-grow-shadow:active {
  box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.5);
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

/* Bounce To Bottom */
.hvr-bounce-to-bottom {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
}
.hvr-bounce-to-bottom:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0; 
  left: 0;
  right: 0;
  bottom: 0;
  background: #fff;
  border: solid 3px #d51616;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transform-origin: 50% 0;
  transform-origin: 50% 0;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-bounce-to-bottom:hover, .hvr-bounce-to-bottom:focus, .hvr-bounce-to-bottom:active {
  color: #d51616;
}
.hvr-bounce-to-bottom:hover:before, .hvr-bounce-to-bottom:focus:before, .hvr-bounce-to-bottom:active:before {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
  -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}


/* Animation classes */

.hide {
  opacity:0;
  display:block;
  -webkit-transition: opacity .15s ease-in-out;
  -moz-transition: opacity .15s ease-in-out;
  -ms-transition: opacity .15s ease-in-out;
  -o-transition: opacity .15s ease-in-out;
  transition: opacity .15s ease-in-out;  
}

.animated.fade-in-animation,
.animated.zoom-in-animation{
  -webkit-animation-duration: 1.2s;
  -moz-animation-duration: 1.2s;
  -o-animation-duration: 1.2s;
  animation-duration: 1.2s;
}

.animated.fade-animation {
  -webkit-animation-duration: 1s;
  -moz-animation-duration: 1s;
  -o-animation-duration: 1s;
  animation-duration: 1s; 
}


/* ==========================================================================
   2. COS STRUCTURE                                            
   ========================================================================== */


.no-dots ul {
  list-style-type:none;
  margin-left:0px;
  padding-left:0px;
}

.password-form input {
    height: auto!Important;
    padding: 10px;
}

.password-form .hs-button.primary.large {
      margin: 20px auto;
    display: block;
}


/* ==========================================================================
   Structure                                               
   ========================================================================== */


/* The outer wrappers of your website */
.header-container-wrapper, 
.body-container-wrapper, 
.footer-container-wrapper {}

/* The inner wrappers of your website */
.header-container, 
.body-container, 
.footer-container {}

.footer-container .row-fluid {

  display: flex;
  flex-direction: row-reverse;
}

.password-page .header-container-wrapper {
  padding-bottom:0px;
}

@media (max-width: 768px) and (min-width: 475px) {

.footer-container .row-fluid {
flex-direction: row;
flex-wrap: wrap;
}



.footer-container .span3.connect-section {
width: 100% !important;
margin-top: 25px;
}
  
}

@media (max-width: 475px) {

  .footer-container .row-fluid {
    display: block !important;
  }

  .footer-container .span3 {
    width: 100% !important;
  }

}

.foot-container-wrapper .hs-menu-wrapper.hs-menu-flow-vertical > ul li a:hover {
  color: #d51616 
}


div#custom-header.fix-header {
  position: fixed;
  top: 0;
  max-width:1720px;
  background-color: #01467B;
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: 9999;
  padding: 10px 50px;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; 
  -webkit-transition: background-color 0.2s;
  -moz-transition: background-color 0.2s;
  -ms-transition: background-color 0.2s;
  -o-transition: background-color 0.2s;
  transition: background-color 0.2s; 
}

div#custom-header.fix-header .custom-menu-primary .hs-menu-wrapper > ul {
  background:transparent;
}

div#custom-header.fix-header .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a {
  color:#fff;
}

div#custom-header.fix-header #fixed-header-wrapper {
  max-width:1080px;
  margin:0 auto;
  float:none;
  display:block;
}

.blog-heading .topic-selector{
margin-top: -30px;
  
}

.blog-heading h1{
  margin-top: -50px;
  font-family: 'Caslon' !important;
  font-style: italic;
}

/* ==========================================================================
   Header
   ========================================================================== */


.header-container-wrapper {
  max-width: 1720px;
  margin: 0 auto;
  background: #fff;
  padding-bottom: 100px;
}

.header-container svg {
  stroke: #d51616;
 margin-left: 140px; 
  max-width: 100%;

}

#header-line {
  stroke: #d51616; 
}

@media (max-width: 769px) {
  .hbspt-line {
    display: none !important;
  }
}

.counter-grey-header p {
  white-space: nowrap;
}

.hbspt-quote svg #line-1 {
    stroke: #d51616;
    stroke-dasharray: 1200;
  stroke-dashoffset: 1200;
    animation: dash 10s 1s linear forwards;

}

.hbspt-quote svg #line-2 {
    stroke: #d51616;
    stroke-dasharray: 1200;
  stroke-dashoffset: 1200;
       animation: dash 10s  linear forwards;
     animation-delay: 2.3s; 
}

.top-bar {
 float: right; 
  margin-top: 40px;
}

.inbound-image img
.top-bar a {
 font-size: 16px;
 color: #000;
 text-decoration: none;
}

.phone {
 margin-right: 5px;
 border-bottom:none;
}

.cta {
  margin-left: 5px;
  border-bottom: 2px solid #d51616; 
}

.office-deets {
  border-top: 1px solid #d1d1d1;
padding: 25px;
background: #f1f1f1;
}

.office-deets a {
  border-bottom:none;
}

.no-margin-bottom h1,
.no-margin-bottom h2{
  margin-bottom:0px;
}

/* Logo styling */
.header-container .hs_cos_wrapper_type_logo {}
.header-container .hs_cos_wrapper_type_logo a {}
.header-container .hs_cos_wrapper_type_logo a img {}



/* ==========================================================================
   Content                                                 
   ========================================================================== */
.home-hero {
 position: relative; 
}

/*.home-hero:after {
  content: url(https://www.thebritagency.com/hubfs/brit_bars_gradients_isometric_v2.png);
  position: absolute;
  top: 460px;
  left: 85px;
} */

@media (max-width: 1400px) {
  .home-hero:after {
    display:none !important;
  }
}

@media (max-width: 768px) {
.inbound-image {
  text-align: center
}
}

@media (max-width: 600px) {
  .hero-container-wrapper svg{
    display: none;
  }

  .inbound-image {
    margin-top: 70px !important;
  }
}

.inbound-image img {
  /* width: 200px !important; */
  /* margin-top: -100px; */
}

.services-hero {
  position:relative;
}

.expertise-intro:before {
    content: url(https://www.thebritagency.com/hubfs/2019_Website/Images/speed_dial_2.png);
    width: 400px;
    position: absolute;
    left: -150px;
    top: 200px;
}

@media (max-width:1400px) {
  .expertise-intro:before {
    width: 300px;
    left: -90px;
    top: 200px;
  }
}

@media (max-width:1280px) {
  .expertise-intro:before {
    left:-20px;
  }
}

@media (max-width:1140px) {
  .expertise-intro:before {
    display:none; 
  }
}



.industries {
  position:relative;
}


@media (max-width: 1200px) {
  
 .industries:after {
   content: '';
  }
}


.intro-paragraph {
  padding-right:15px;
}

.intro-paragraph p:first-child {
  margin-top:40px;
}

.full-width a {
  width:100%;
}

.intro-module {
 margin-top: -50px !important; 
  padding-bottom: 100px;
}

.intro-module.hubspot-intro {
  padding-bottom:0px;
}

.intro-rich h2{
  font-weight: 400;
}

.intro-buttons .blue-btn {
 margin-right: 15px !important; 
}

@media (max-width: 375px) {
  .intro-buttons .blue-btn {
    margin-bottom: 15px !important; 
   }
}

.body-container-wrapper {}
.body-container {}


/* Unique Pages
   ========================================================================== */

/* Homepage */

.hubspot-section {
  padding: 115px 0px 0px 0px;
  background-color: #fff;
  background: url('https://www.thebritagency.com/hubfs/2019_Website/Images/hubspot%20bg.png') no-repeat;
  background-size: auto;
  position: relative;
}

.blue-wrapper {
  padding: 115px 0px 0px 0px;
  background-color: #fff;
  background: url('https://www.thebritagency.com/hubfs/2019_Website/Images/hubspot%20bg.png') no-repeat;
  background-size: auto;
  position: relative;
}


.hubspot-section:after {
 content: url('https://www.thebritagency.com/hubfs/2019_Website/Images/computer.png'); 
 position: absolute;
  right: 80px;
  bottom: 50px;
  z-index:-1;
}

.hubspot-section.no-bg:after {
  content:" ";
}


.cert-float svg{
  position: absolute;
  right: 0px;
  top: 250px;
  height: 600px;
  overflow: hidden
}

@media (max-width: 1600px) {
  .cert-float svg {
    max-width: 450px;
  }

  .hubspot-section:after {
    display: none !important;
  }
}

@media (max-width: 1500px) {
  .cert-float svg {
    display: none;
  }
}

.cert-float svg #image {
   animation:  float 11s 8s ease-in-out infinite, float-in 9s ease-in-out ;


}

.cert-float svg #image-2 {
  	animation: float 8s 8s ease-in-out infinite , float-in 8s ease-in-out ;

}

.cert-float svg #image-3 {
 animation: float 9s 7.5s ease-in-out infinite , float-in 8s ease-in-out ;


}

.cert-float svg #image-4 {
  animation: float 9s 8.5s ease-in-out infinite , float-in 9s ease-in-out ;

}

.cert-float svg #image-5 {
    animation: float 9.5s 9.5s ease-in-out infinite , float-in 10s ease-in-out ;

}

.cert-float svg #image-6 {
   animation: float 10s 9.2s ease-in-out infinite , float-in 9s ease-in-out ;

}

.cert-float svg #image-7 {
  animation: float 10.5s 9.2s ease-in-out infinite , float-in 8s ease-in-out ;
}

.cert-float svg #image-8 {
  animation: float 10.5s 9.2s ease-in-out infinite , float-in 7.5s ease-in-out ;
}


.hbspt-cert h3{
  margin-bottom: 0px;
  font-weight: 500;
}

.hbspt-cert h2{
  margin-top: 0px;
  color: #d51616;
  font-family: 'Caslon';
  font-style: italic;
}

.rich-quote {
 font-family: 'Caslon';
  font-style: normal;
    position: relative;
}

.rich-quote p {
 margin-left: 35px; 

}

.rich-quote p:before {
 content: url('https://www.thebritagency.com/hubfs/2019_Website/Images/quote1-1.png'); 
  margin-left: -30px;
      top: 10px;
  left: 30px;
    position: absolute;
}

.rich-quote p:after {
 content: url('https://www.thebritagency.com/hubfs/2019_Website/Images/quote2.png'); 
  margin-left: 5px;
  position: absolute;
  bottom: 5px;
}

@media (max-width: 769px) {

  .rich-quote p{
    text-align: center;
    margin-right: 35px;
  }
  .rich-quote p:before {
  top: 0px !important
  }
  .rich-quote p:after {
    top: 0px;
    right: 0px;
  }

  .hbspt-image {
    text-align: center;
  }

  .brian-section {
    text-align: center;
  }
}

.brian-section h2{
  color: #d51616;
  margin-bottom: 0px;
  font-weight: 400;
}

.brian-section p {
 margin-top: 0px; 
}

.hubspot-logo {
 margin-top: 40px; 
  text-align: center;
}
.hbspt-services {
 margin-top: 50px; 
}

.hbspt-services-header {
 text-align: center; 
}



.testimonials-section {
  padding: 130px 0px 100px 0px;
  background-color: #fff;
  background: url('https://www.thebritagency.com/hubfs/testimonials-bg.jpg') no-repeat;
  background-size: auto;
  position: relative;
}

.test-header {
  text-align: center; 
  padding-bottom: 30px;
}

.test-header img {
 padding-bottom: 20px; 
 padding-left: 5px;
  padding-right: 5px;
}

.testimonial-header {
  text-align:center;
  padding-bottom: 30px;
  padding-top:50px;
}

.testimonial-header img {
  padding-bottom: 10px; 
  padding-left: 5px;
  padding-right: 5px;  
}

.project-section {
 padding-top: 100px; 
}


.project-header h4{
  margin-bottom: 0px;
  margin-top: 0px;
  font-size: 24px;
  font-weight: 400;
}

.project-header h1 {
 font-family: 'Caslon';
  font-style: italic;
  margin-top: 0px;
  color: #294879
}

.ebook-section {
margin-bottom: 100px;
}

.ebook-header h2 {
margin-bottom: 0px;
}

.blog-link {
  border-bottom:none;
}

.blog-section {
  padding: 130px 0px 100px 0px;
  background-color: #fff;
  background: url('https://www.thebritagency.com/hubfs/2019_Website/Images/Group%209.png') no-repeat;
  background-size: auto;
  position: relative;
}

.blog-section .blog-header {
  text-align: center;
}

.blog-post-overlay {
  position: absolute;
      background-color: rgba(0,0,0,0.55);
      width: 100%;
      opacity:0;
      height: 100%;
      text-align: center;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-transition: opacity 0.3s ease;
      -o-transition: opacity 0.3s ease;
      transition: opacity 0.3s ease;
  }
  
  .post-item:hover .blog-post-overlay {
    opacity:1;
  }

@media (max-width: 767px) {
 .blog-section .post-item {
   margin-bottom: 25px;
  }
  
  .full-banner {
   display: none !important; 
  }
}

 .post-social-links a {
      width: 40px;
      height: 40px;
      display: inline-block;
      text-align: center !important;
      font-size: 18px;
    color:#fff;
    border-radius:50%;
    border:none;
  }
  
  .post-social-links i {
    line-height:40px;
  }
  
 .post-social-links #facebook,
  #hubspot-author_data #social-sharing-post a#facebook{
    background-color:#3b5998;
    color:#fff;
  }
  
 .post-social-links #twitter,
  #hubspot-author_data #social-sharing-post a#twitter{ 
  background-color:#1da1f2;
  }
  
  .post-social-links #linkedin,
  #hubspot-author_data #social-sharing-post a#linkedin{ 
  background-color:#0077B5;
  }
  
 .post-social-links #google,
  #hubspot-author_data #social-sharing-post a#google{ 
  background-color:#dc4a38;
  }

  .post-social-links .svg-inline--fa {
    height:40px;
  }

.post-social-links {
 margin-bottom: 15px; 
}

.post-social-links a {
 border-bottom: none !important; 
}
  
  #social-sharing-listing a {
      width: 40px;
      height: 40px;
      display: inline-block;
      text-align: center !important;
      font-size: 18px;
    color:#fff;
    border-radius:50%;
    border:none;
  }
  
  #social-sharing-listing i {
    line-height:40px;
  }
  
  #social-sharing-listing #facebook,
  #hubspot-author_data #social-sharing-post a#facebook{
    background-color:#3b5998;
    color:#fff;
  }
  
  #social-sharing-listing #twitter,
  #hubspot-author_data #social-sharing-post a#twitter{ 
  background-color:#1da1f2;
  }
  
  #social-sharing-listing #linkedin,
  #hubspot-author_data #social-sharing-post a#linkedin{ 
  background-color:#0077B5;
  }
  
  #social-sharing-listing #google,
  #hubspot-author_data #social-sharing-post a#google{ 
  background-color:#dc4a38;
  }

  #social-sharing-listing .svg-inline--fa {
    height:40px;
  }
  
  .blog-post-overlay a.read-link {
    color:#fff;
    margin-bottom:15px;
    text-decoration:none;
    font-size:22px;
    font-weight:600;
    border:none;
  }
  
  .blog-post-overlay a.read-link:hover {
    text-decoration:underline;
  }


.upto-header h2 {
margin-top: 0px;
}


.social-footer svg {
  font-size:30px;
  margin-right: 12px;
}

svg.svg-inline--fa.fa-facebook-square.fa-w-14 {
  color:#3B579D;
}

svg.svg-inline--fa.fa-twitter-square.fa-w-14 {
  color:#1DA1F2;
}

svg.svg-inline--fa.fa-linkedin.fa-w-14 {
  color:#0379b3;
}

svg.svg-inline--fa.fa-youtube-square.fa-w-14 {
  color:#CE1A19;
}

svg.svg-inline--fa.fa-instagram.fa-w-14 {
  color:#01467B;
}

.social-footer a {
  text-decoration:none;
  border:none;
}


/* Case Study Page */

.case-study-section-wrapper {
  padding: 115px 0px 0px 0px;
  background-color: #fff;
  background: url('https://www.thebritagency.com/hubfs/2019_Website/Images/hubspot%20bg.png') no-repeat;
  background-size: auto;
  position: relative;
}

.our-team-section {
  position:relative;
}

.team-gallery-section {
  border-top:1px solid #D3DBE5;
}

/* Services Page */

.services-intro h2 {
  margin-top:0px;
}

.hubspot-100{
  padding: 115px 0px 0px 0px;
  background-color: #fff;
  background: url('https://www.thebritagency.com/hubfs/2019_Website/Images/hubspot%20bg.png') no-repeat;
  background-size: auto;
  position: relative;
}

/* HubSpot Page */

.hubspot-faq h2 {
  text-align:center;
}


/* Our work page */

.our-work-message {
  margin-top:-75px;
}

.our-work-message h1,
.our-work-message h2 {
  margin-top:0px;
}

.our-work-wrapper {
    background-color: #fff;
    background-size: auto;
    position: relative;
  
}

.branding-section {
 background: #F9F9F9; 
}

/* About Page */

.be-brilliant h1{
  margin-top: 0px; 
  color: #d51616;
  font-family: 'Caslon';
  font-style: italic;
  text-align:right;
  font-size:37px;
}

.about-us-slider {
  background:url(https://www.thebritagency.com/hubfs/about-us-slider-bg_v3.png);
  background-size:cover;
  background-repeat:no-repeat;
  background-position:top center;
}

.flex-row > .row-fluid-wrapper > .row-fluid {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.hearts img {
  display: inline-block;
  float: right;  
}

.page-break img {
  width:100%!Important;
}

.right-align {
  text-align:right;
}

.gray-quote {
  padding-left:40px;
  position:relative;
}

.gray-quote p:before {
  content: url(https://www.thebritagency.com/hubfs/gray-quote-start.png);
  margin-left: -30px;
  top: 10px;
  left: 30px;
  position: absolute;
}

.gray-quote p:after {
  content: url(https://www.thebritagency.com/hubfs/gray-quote-finish.png);
  margin-left: -30px;
  bottom:0;
  right:0;
  position: absolute;  
}

/* lets talk */
.lets-talk-head {
  margin-top: -80px;
  margin-bottom: 50px;
} 

.lets-talk-head h1 { 
  font-family: "Caslon";
  font-style: italic;
  margin-bottom:0px;
}

.how-to-contact-wrapper {
  margin-top: -55px;
  white-space: nowrap;

}

/* Landing Page */

.lp-1 {
  padding-top: 0px !important;
}

.lp-1 .header {
  text-align: center;
}

.lp-1 .two-column-wrapper {
  padding-top: 0px !important;
}


.lp-1 #header-line {
  stroke: #294879; 
}

.lp-form {
 z-index: 100;
 background-color: #fff;
}

.lp-2 {
  padding-bottom: 120px;
  text-align: center !important;
}

.lp-form small {
  margin-bottom: 25px;
  display: block;
}

.lp-2.hubspot-section:after {
 content: url('https://www.thebritagency.com/hubfs/2019_Website/Images/shapes.png') !important; 
}

.lp-3 {
 margin-top: -130px;
    height: 200px; 
}

.lp-3.hubspot-section:after {
 content: none; 
}

.lp-btn {
  margin-top: 25px;
}

.contact-number-container {
 display: inline-block;
  margin-right: 25px;
}

/* Blog Listing */

.post-listing {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.post-item.grid {
  width: 32%;
}
.post-item {
  width: 32%;
  margin-bottom: 2%;
}
.post-item {
  background-color: #fff;
  -webkit-box-shadow: 1px 1px 25px 0 rgba(0,0,0,0.15);
  box-shadow: 1px 1px 25px 0 rgba(0,0,0,0.15);
  border-radius: 3px;
}

.post-item.grid .post-image {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.post-item .post-image {
  width: 100%;
  height: 225px;
  background-size: cover !important;
  background-position: center!Important;
  position: relative;
}

.blog-post-overlay {
  position: absolute;
  background-color: rgba(0,0,0,0.55);
  width: 100%;
  opacity: 0;
  height: 100%;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-transition: opacity .3s ease;
  -o-transition: opacity .3s ease;
  transition: opacity .3s ease;
}

.post-content {
  padding: 30px 20px;
}

.post-item .blog-date {
  color: #979999;
  font-size: 14px;
  position: relative;
}

.topic-link {
  text-transform: uppercase;
  border: 1px solid #d9d9d9;
  color: gray;
  border-radius: 3px;
  padding: 5px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
  display:inline-block;
  margin-bottom:5px;
}

.subscribe-box {
  border-top:5px solid #d51616;
  padding: 30px 20px;
  background-size: cover !important;
  background-position: center;
}

.subscribe-box h2 {
  font-size:24px;
}

.subscribe-box input[type="submit"] {
  background-color: #294879 !Important;
  width: 100%;
  margin-top: 10px;
}

.cta-box {
  background: #fff;
  padding: 30px 20px;
  background-size: cover !important;
  background-position: center;
  text-align: center;
  border-top:5px solid #d51616;
}

.cta-box .button-box {
 padding: 0px 40px; 
}

.cta-bot .btn-box {
    border: 2px solid white !important;
    color: white !important;
}

.cta-box .button-container a{
  color: #fff;
  text-decoration: none;
}

@media (max-width: 768px){
.post-item.subscribe-box, .post-item.cta-box, .post-item.grid {
    width: 49%;
}

.post-item.featued {
  display: block;
  width: 100%;
}

}

@media (max-width: 767px) {

  .blog-heading h1 {
    margin-bottom: 50px !important;
  }

  .post-item.featured {
    display: block !important;
    margin-top: 45px;
  }

  .post-item.featured .post-image {
    width: 100% !important;
    min-height: 225px !important;
    height: 225px !important; 
  }

 .post-item.featured .post-content{
    width: 100% !important;
    height: auto !important;
  }
  .post-item.subscribe-box, .post-item.cta-box, .post-item.grid {
    width: 100%;
}

.post-item.featured p {
  display: none;
}
}

.blog-post-item:nth-child(3n+1):nth-last-child(-n+3) ~ .blog-post-item{
  margin-left:calc(12.08% * .176);
  margin-right: auto;
}

#load-more{
    padding: 10px 30px;
    background: #d51616;
    color: #fff;
    box-shadow: 5px 10px 15px rgba(0,0,0,0.2) !important;
    text-decoration: none;
    border:none;
    display:inline-block;
    margin: 25px auto 45px auto;
    float: none;
    max-width: 230px;
    display: block;
    line-height: 1.3;
    text-align: center;
}

#load-more:hover {
  color:#262628;
  cursor:pointer;
}

#loading-icon {
  margin:0 auto;
  float:none;
  display:none;
}

.post-content .post-header a {
color: #000;
text-decoration: none;
border-bottom:none;
}

.post-item.featured {
  width: 100%;
  display: flex;
  border-radius: 3px;
}

.post-item.featured .post-image {
  width: 68%;
  height: 100%;
  position: relative;
  min-height: 480px;
  background-size: cover!important;
  background-position: center right!Important;
}

.post-item.featured .post-content {
  width: 35%;
}

h1.blog-title {
  font-size:32px;
  line-height:1.3;
}

/* Modular & Reusable Components
   ========================================================================== */

/* Callouts */

/* Social Media Custom Icons */

/* Additional Menus aside from the Main Nav */




/* ==========================================================================
   Footer
   ========================================================================== */


.foot-container-wrapper {
  padding-top: 50px;
  margin-bottom: 50px; 
  background: #fff; 
  border-top: 1px solid #e8e8e8;
  position: relative;
}

.footer-container {}

.connect-header h3 {
 margin-bottom: 5px; 
}

.footer-social {
 padding-left: 0px;
  margin-top: 0px;
}

.footer-social a {
 border-bottom: 0px; 
}

.footer-social li{
  display: inline-block;
  text-decoration: none;
}

.footer-social li img {
width: 25px;
  margin-right: 10px;
}


.foot-container-wrapper .rocket-ship svg{
  position: absolute;
  top: -150px;
  right: 70px;
}

@media (max-width: 1350px) {
  .back-to-top {
    display:none;
  }
  
  .lp-btn-back.back-to-top {
    display:inline-block;
  }
}

.footer-container-wrapper h3 {
  margin-top: 15px !important;
}

.foot-container-wrapper .hs-menu-wrapper.hs-menu-flow-vertical > ul li a{
padding: 0px;
font-size: 18px;
color: #585858;
border:none;
}

.foot-container-wrapper .hs-menu-wrapper.hs-menu-flow-vertical > ul li a:before {
  content: '\f105';
  margin-right:10px;
  font-family: 'Font Awesome 5 Pro';
}

.copyright {
  width:100%!important;
  background: #a7a7a7;
  color: #fff;
}

.copyright p {
  text-align:center;
  margin-top: 5px;
  margin-bottom: 5px;
}

.foot-contact {
  color: #585858;
}

.foot-contact a {
  color: #585858;
  border:none;
}

.foot-contact a:hover {
  color:#d51616;
}

.foot-contact a:before {
  content: '\f095';
  margin-right: 10px;
  font-family: 'Font Awesome 5 Pro';
}

.foot-contact h4 {
  font-size: 18px;
  margin: 10px 0;
  font-weight: 300;
}

/* ==========================================================================
   Contact Page                                        
   ========================================================================== */

   .contact-form {
     margin-top: -35px;
     margin-bottom: 50px;
     padding: 30px;

    position: relative;
   }

    .contact-form form fieldset, .contact-form form {
      padding-bottom: 15px;
    }
    
    .contact-form form fieldset input, .contact-form form input {
      border: 0px ;
      border-bottom: 2px solid #c7c7c765;
      padding: 10px;  
  }

    .contact-form form fieldset input:focus , .contact-form form input:focus{
      outline:none;
      border-bottom: 2px solid #d51616
    }

    .lp-form {
      -webkit-box-shadow: 3px 4px 18px 2px rgba(0,0,0,0.15);
      box-shadow: 3px 4px 18px 2px rgba(0,0,0,0.15);
      margin-top: 15px;
      border-top: 7px solid #d51616;
    }

    .lp-form form input{
        margin-bottom: 15px;
        }

.main-lp-intro ul {
  padding-left:0px;
  list-style-type: none;
}

.main-lp-intro ul li {
  position:relative;
  padding-left:25px;
}

.main-lp-intro ul li:before {
  content: "\f058";
  font-family: fontAwesome;
  position: absolute;
  left: 0;
  color:#d51616;
}

.lp-form h3 {
  font-size: 38px;
  margin-top: 0px !important;
  margin-bottom: 20px !important;
  text-align: center;
}
    

    .contact-form form fieldset textarea, .contact-form form textarea {
      border: 0px ;
      border-bottom: 2px solid #c7c7c765;
      padding: 10px;  
  
    }

  .contact-form form fieldset textarea, .contact-form form textarea{ 
    outline:none;
      border-bottom: 2px solid #d51616
  }

    body .hs-button.primary, body input[type="submit"], body input[type="button"],
.filter-expand-link{
      font-family: 'P22',Arial, Sans-Serif !important;
      font-size: 18px !important;
      padding: 10px 60px !important;
      background: #d51616;
      margin-top: 25px;
      color: #fff;
      text-decoration: none;
      display: inline-block;
      vertical-align: middle;
      -webkit-transform: perspective(1px) translateZ(0);
      transform: perspective(1px) translateZ(0);
      box-shadow: 0 0 1px rgba(0, 0, 0, 0);
      -webkit-transition-duration: 0.3s;
      transition-duration: 0.3s;
      -webkit-transition-property: box-shadow, transform;
      transition-property: box-shadow, transform;
      border: none;
    }

     input.hs-button.primary.large:hover,
    .filter-expand-link:hover{
      box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.5);
      -webkit-transform: scale(1.1);
      transform: scale(1.1);
    color:#fff;
    }

    .contact-background {
      background-image: url('https://www.thebritagency.com/hubfs/map-idea.png');
      background-size: cover;

    }


    /* .contact-section {
      position: relative;
      margin-bottom: 65px;
    } */

    /* .contact-section:before {
      content: url('https://www.thebritagency.com/hubfs/2019_Website/Images/Asset%201.svg');
      width: 200px;
      position: absolute;
      bottom: 50px;
      left: -80px;
      opacity: .4;
    } */


/* ==========================================================================
   3. MAIN NAVIGATION                                            
   ========================================================================== */





/* ==========================================================================
   Custom Menu Primary
   ========================================================================== */


 /* Set ul background color */
 /* Set li background Color */
 /* Set link Color */
 /* Set link Hover Color */

/* Parent List */
.custom-menu-primary .hs-menu-wrapper > ul{ 
  background:#fff;
  float:right;
}
.custom-menu-primary .hs-menu-wrapper > ul > li{
  background:;
}
.custom-menu-primary .hs-menu-wrapper > ul > li > a{
  color:#262628;
}
.custom-menu-primary .hs-menu-wrapper > ul > li > a:hover{
  color:;
}

/* Child List */
.custom-menu-primary .hs-menu-wrapper > ul ul{}
.custom-menu-primary .hs-menu-wrapper > ul ul li{
  background:;
}

.custom-menu-primary .hs-menu-wrapper > ul ul li a{
  color:#262628;
}

.custom-menu-primary .hs-menu-wrapper > ul ul li a:hover{
  color:;
}

/* Override max width on menu links */
.custom-menu-primary .hs-menu-wrapper > ul li a, 
.hs-menu-wrapper.hs-menu-flow-horizontal > ul li.hs-item-has-children ul.hs-menu-children-wrapper li a {
  overflow: visible !important;
  max-width: none !important;
  width: auto !important;
}


.hs-menu-wrapper.hs-menu-flow-horizontal>ul li {
  padding:10px 12px;
}

.copyright a {
  font-size:14px;
  color:#fff;
  text-decoration:none;  
  border:none;
}

.copyright a:hover {
  color:#d51616;
}

.hs-menu-wrapper.hs-menu-flow-horizontal>ul li a {
  display: inline-block;
  color: #000;
  padding:0px;
  font-size: 17px;
  white-space: nowrap;
  max-width: 140px;
  overflow: hidden;
  text-overflow: ellipsis;
  text-decoration: none; 
  border:none;
}

.hs-menu-wrapper.hs-menu-flow-horizontal>ul li a:hover {
  color:#d51616;
}

.hs-menu-wrapper.hs-menu-flow-horizontal>ul li.hs-menu-item.hs-menu-depth-1.active a {
  border-bottom:2px solid #d51616;
  color:#d51616;
}



/* Fix menu disappearing on desktop after toggling mobile menu */
@media screen and (min-width:1080px) {
      .custom-menu-primary .hs-menu-wrapper { 
          display:block !important;
      }

      .hs-menu-wrapper.hs-menu-flow-horizontal>ul li:last-child {
        padding-right:0px;
      }

      
      .hs-menu-wrapper.hs-menu-flow-horizontal>ul {
        margin-top: 15px; 
        background-color:#fff;
        
       }
  
      /* dropdown menus */
  li.hs-item-has-children ul.hs-menu-children-wrapper {
    left:10px!important;
    background-color:#fff;
    -webkit-box-shadow: 3px 4px 18px 2px rgba(0,0,0,0.15);
    box-shadow: 3px 4px 18px 2px rgba(0,0,0,0.15);
  }

  li.hs-item-has-children ul.hs-menu-children-wrapper li {
    padding:10px 20px!Important;
  }

  li.hs-item-has-children ul.hs-menu-children-wrapper li a {
    color:#262628!Important;  
  }

  li.hs-item-has-children ul.hs-menu-children-wrapper li a:hover  {
    color:#d51616!important;
  }
  
  .hs-menu-wrapper.hs-menu-flow-horizontal > ul li.hs-item-has-children {
    position:relative;
    padding-right: 22px;
  }
  
  .hs-menu-wrapper.hs-menu-flow-horizontal > ul li.hs-item-has-children:after {
    content: "\f107";
    font-family: FontAwesome;
    font-weight: normal;
    font-style: normal;
    position: absolute;
    right: 2px;
    color: #262628;
    top:11px;
  }
  
  div#custom-header.fix-header .hs-menu-wrapper.hs-menu-flow-horizontal > ul li.hs-item-has-children:after {
    color:#f9f9f9; 
  }

}


  .menu-container {
    position: relative;
  }



/* ==========================================================================
   Mobile Menu - Hubspot Standard Toggle Menu
   ========================================================================== */


/**
 * Special Note
 *
 * When the menu is open, a class of .mobile-open is applied to the body. You can 
 * use this for custom styling on any element when the menu is in the open position.                     
 */

.mobile-trigger, .child-trigger{
    display: none; /* Hide button on Desktop */
}

@media (max-width: 1079px){

  /* Variables
     ========================================================================== */

     /* Set Mobile Menu Background Color */
        /* Set Link Color */
   /* Set Link Hover Color */


  /* Menu Reset - Remove styling from desktop version of custom-menu-primary */
  /* Place any additional CSS you want removed from the mobile menu in this reset */
  .custom-menu-primary, .custom-menu-primary *{
        display: block;
        float: none;
        position: static;
        top: auto;
        right: auto;
        left: auto;
        bottom: auto;
        padding: 0px;
        margin: 0px;
        background-image: none;
        background-color: transparent;
        border: 0px;
        -webkit-border-radius: 0px;
        -moz-border-radius: 0px;
        border-radius: 0px;
        -webkit-box-shadow: none;
        -moz-box-shadow:    none;
        box-shadow:         none; 
        max-width: none;
        width: 100%;
        height: auto;
        line-height: 1;  
        font-weight: normal;
        text-decoration: none;
        text-indent: 0px;
        text-align: left;
        color: #ffffff;
    }


  /* Toggle Button
     ========================================================================== */

  a.mobile-trigger {
      display: inline-block !important; /* Hide button on Desktop */
      cursor: pointer; /* Mouse pointer type on hover */
      position: absolute; /*******************************************/
      top: 22px;          /* Position Button at top right of screen  */
      /*right: 10px; */ /*******************************************/
      right: 50px;
      /*width: auto;*/ /* Button width */
      width: 36px;
      height: auto; /* Button height */      
      padding: 12px 10px;
      background: transparent; /* Background color */
      z-index: 99999999999; /* Z-index to keep button on top of other layers */
      -webkit-transition: background-color 0.2s linear; /* Button color transition effect */
      font-size: 16px;
      font-weight: normal;
     /* text-align: left; */
      text-transform: uppercase;
     /* -webkit-border-bottom-right-radius: 6px;
      -webkit-border-bottom-left-radius: 6px;
      -moz-border-radius-bottomright: 6px;
      -moz-border-radius-bottomleft: 6px;
      border-bottom-right-radius: 6px;
      border-bottom-left-radius: 6px; */
      -webkit-transition:color .2s ease-in; 
      -moz-transition:color .2s ease-in;
      transition:color .2s ease-in;
      text-align: right;
      padding-right: 2%;
      color:#262628;
  }

  a.mobile-trigger:hover {
      text-decoration: none; /* Removes link text underline on button */
      color: #d51616;
  }

  a.mobile-trigger span{
      display: inline;
  }

  a.mobile-trigger span:before{
      position: absolute;

      color:#262628;
  }

  a.mobile-trigger span:after{
      position: relative;
      right: 2px;
      background-color: #000000;
      color:#262628;
      opacity: 0;
      transition: opacity .4s ease-in-out;
      -moz-transition: opacity .4s ease-in-out;
      -webkit-transition: opacity .4s ease-in-out; 
  }

  /* Change button when menu is open */
  .mobile-open a.mobile-trigger{
      -webkit-transition:background-color 0.2s linear; /* Button color transition effect */
      -moz-transition:background-color 0.2s linear; /* Button color transition effect */
      transition:background-color 0.2s linear; /* Button color transition effect */
      /* background: transparent; Changes button background to be slightly darker than open menu color */  
  }

  .mobile-open a.mobile-trigger span:after{
     opacity: 1; 
  }


  /* Toggle Button Icon & Animations
     ========================================================================== */

  a.mobile-trigger i {
      display: inline;
      position: relative;
      top: -5px;
      margin-left: 5px;
     
    /*  -webkit-transition-duration: 0s;
      -webkit-transition-delay: .2s;
      -moz-transition-duration: 0s;
      -moz-transition-delay: .2s;
      transition-duration: 0s;
      transition-delay: .2s; */

  }
  
  a.mobile-trigger  i:before, a.mobile-trigger i:after {
      position: absolute;
      content: '';
      color:#d51616;
  }
  
  a.mobile-trigger  i, a.mobile-trigger  i:before, a.mobile-trigger  i:after {
      width: 35px; /* Icon line width */
      height: 3px; /* Icon line height */
      background-color: #262628; /* Icon color */
      display: inline-block;
  }
  
  a.mobile-trigger  i:before {
      margin-top: -8px; /* Position top line */
      -webkit-transition-property: margin, -webkit-transform;
      -webkit-transition-duration: .2s;
      -webkit-transition-delay: .2s, 0;
  }
  
  a.mobile-trigger  i:after {
      margin-top: 8px; /* Position bottom line */
      -webkit-transition-property: margin, -webkit-transform;
      -webkit-transition-duration: .2s;
      -webkit-transition-delay: .2s, 0;
  }
  
  .mobile-open a.mobile-trigger i {
     
      background-color: rgba(0,0,0,0.0);
      
  }
  
  .mobile-open a.mobile-trigger i:before {
   
  
      margin-top: 0;
      -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      transform: rotate(45deg);
      -webkit-transition-delay: 0, .2s;
      -webkit-box-shadow: 0px 1px 1px rgba(0, 0, 0, 0);
      -moz-box-shadow:    0px 1px 1px rgba(0, 0, 0, 0);
      box-shadow:         0px 1px 1px rgba(0, 0, 0, 0);
  }
  
  .mobile-open a.mobile-trigger i:after {
   
   
      margin-top: 0;
      -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
      transform: rotate(-45deg);
      -webkit-transition-delay: 0, .2s;
      -webkit-box-shadow: 0px 1px 1px rgba(0, 0, 0, 0);
      -moz-box-shadow:    0px 1px 1px rgba(0, 0, 0, 0);
      box-shadow:         0px 1px 1px rgba(0, 0, 0, 0);
  }

  /* Child Toggle Button
     ========================================================================== */

  a.child-trigger {
      display: block !important; /* Hide button on Desktop */
      cursor: pointer; /* Mouse pointer type on hover */
      position: absolute;
      top: 0px;
      right: 0px;
      width: 55px !important; /* Button width */
      min-width: 55px !important;
      height: 45px !important; /* Button height */  
      padding: 0 !important;
      border-left: 1px dotted rgba(255, 255, 255, .20);
  }
  a.child-trigger:hover {
      text-decoration: none;
  }


  /* Child Toggle Button Icon & Animations
     ========================================================================== */

  a.child-trigger span {
      position: relative;
      top: 50%; /* Centers icon inside button */
      margin: 0 auto !important;
      -webkit-transition-duration: .2s;
      -moz-transition-duration: .2s;
      transition-duration: .2s;
  }
  a.child-trigger span:after {
      position: absolute;
      content: '';
  }
  a.child-trigger span, a.child-trigger span:after {
      width: 10px; /* Icon line width */
      height: 1px; /* Icon line height */
      background-color: #ffffff; /* Icon color */
      display: block;
  }
  a.child-trigger span:after {
      -webkit-transform: rotate(-90deg);
       -ms-transform: rotate(-90deg);
      transform: rotate(-90deg);
       -webkit-transition-duration: .2s;
       -moz-transition-duration: .2s;
      transition-duration: .2s;
  }
  a.child-trigger.child-open span:after {
      -webkit-transform: rotate(-180deg);
       -ms-transform: rotate(-180deg);
      transform: rotate(-180deg);
       -webkit-transition-duration: .2s;
       -moz-transition-duration: .2s;
      transition-duration: .2s;
  }
  a.child-trigger.child-open span {
      -webkit-transform: rotate(180deg);
       -ms-transform: rotate(180deg);
      transform: rotate(180deg);
       -webkit-transition-duration: .2s;
       -moz-transition-duration: .2s;
      transition-duration: .2s;
  }

    
  /* Menu Styles on Mobile Devices
     ========================================================================== */  


  /* Hide menu on mobile */
  .custom-menu-primary.js-enabled .hs-menu-flow-horizontal,
  .custom-menu-primary.js-enabled .hs-menu-children-wrapper{
      display: none;
  }  

  /* Make child lists appear below parent items */
  .custom-menu-primary ul.hs-menu-children-wrapper {
      visibility: visible !important;
      opacity: 1 !important;
      position: static !important;
  }

  /* Mobile Menu Styles */
  .custom-menu-primary .js-enabled .hs-menu-flow-horizontal{
      position: absolute; /**************************************************************/
      top: 0;             /* Positions the menu to drop from the very top of the screen */
      left: 0px;          /**************************************************************/                                              
      width: 100%;   
      background-color:#E66C2D !important;
      -webkit-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.65);
      -moz-box-shadow:    0px 5px 5px 0px rgba(0, 0, 0, 0.65);
      box-shadow:         0px 5px 5px 0px rgba(0, 0, 0, 0.65); 
  }

  .custom-menu-primary .hs-menu-flow-horizontal{
      padding: 90px 0 0 0; /* Padding to add room for close button */
      
      width: 100%; /* Full screen width */
      z-index: 99999;
  }

   /* Level 1 Menu List Styles */
  .custom-menu-primary .hs-menu-flow-horizontal > ul > li{
   }
  .custom-menu-primary .hs-menu-flow-horizontal > ul > li a{
      font-size: 18px; /* Font size of top level list items */
      line-height: 28px;
      overflow: visible;
  } 

  /* Level 1 and Higher Menu List Styles */
  .custom-menu-primary .hs-menu-flow-horizontal ul li{

  }
  .custom-menu-primary .hs-menu-flow-horizontal ul li a{
      padding: 0 10px;
      font-size:16px;
  }
  .custom-menu-primary .hs-menu-flow-horizontal ul li a:hover{
      color: #d51616; /* link hover color set by global mobile-aColorHover variable */
  }

  /* Level 2 and Higher Menu List Styles */
  .custom-menu-primary .hs-menu-flow-horizontal > ul ul li{
     background-color: rgba(255, 255, 255, .08);
  }
  .custom-menu-primary .hs-menu-flow-horizontal > ul ul li a{
      text-indent: 10px; /* Indent Child lists */
      font-size: 16px; /* Font size of child lists */
  }

  /* Level 3 and Higher Menu List Styles */
  .custom-menu-primary .hs-menu-flow-horizontal > ul ul ul li a{
      text-indent: 30px; /* Indent Child lists */
  }
  .custom-menu-primary .hs-menu-flow-horizontal > ul ul ul ul li a{
      text-indent: 50px; /* Indent Child lists */
  }
}


@media (min-width:768px) and (max-width:1079px) {

  .menu-container {
    width:100%!important;
    min-height:100px!important;
  }

  .header-container-wrapper {
    padding-bottom:20px;
  }

  .span4.widget-span.widget-type-cell.logo-container {
    position: absolute;
    z-index: 20;
}
  
}








/* ==========================================================================
   4. TEMPLATE MODULE SELECTORS                                         
   ========================================================================== */





/* Common Template Selectors                                             
   ========================================================================== */

body.one-column {}
body.two-column {}
body.three-column {}
.content-wrapper {}
.main-content {}
.sidebar{}
.sidebar.right{}
.sidebar.left{}

/* Common One Column Selectors */
body.site-page.one-column, 
body.landing-page.one-column, 
body.error-template.one-column, 
body.password-template.one-column, 
body.subscription-template.one-column {}

body.site-page.one-column .main-content, 
body.landing-page.one-column .main-content, 
body.error-template .main-content, 
body.password-template .main-content, 
body.subscription-template .main-content {}

/* Common Two Column Selectors */
body.site-page.two-column, 
body.landing-page.two-column, 
body.blog {}  

body.site-page.two-column .main-content, 
body.landing-page.two-column .main-content, 
body.blog .blog-content {}

/* Common Three Column Selectors */
body.site-page.three-column, 
body.landing-page.three-column {}

body.site-page.three-column .main-content, 
body.landing-page.three-column .main-content {}


/* Site Pages                                            
   ========================================================================== */

/* One Column Template */
body.site-page.one-column {}
body.site-page.one-column .content-wrapper {}
body.site-page.one-column .main-content {}

/* Two Column Template */
body.site-page.two-column {}
body.site-page.two-column .content-wrapper {}
body.site-page.two-column .main-content {}
body.site-page.two-column .sidebar.right {}

/* Three Column Template */
body.site-page.three-column {}
body.site-page.three-column .content-wrapper {}
body.site-page.three-column .main-content {}


/* Landing Pages                                           
   ========================================================================== */

/* One Column Template */
body.landing-page.one-column {}
body.landing-page.one-column .content-wrapper {}
body.landing-page.one-column .main-content {}

/* Two Column Template */
body.landing-page.two-column {}
body.landing-page.two-column .content-wrapper {}
body.landing-page.two-column .main-content {}
body.landing-page.two-column .sidebar.right {}

/* Three Column Template */
body.landing-page.three-column {}
body.landing-page.three-column .content-wrapper {}
body.landing-page.three-column .main-content {}


/* System Pages                                          
   ========================================================================== */

/* Error Templates 404, 500 */
body.error-template.one-column {}
body.error-template.one-column .content-wrapper {}
body.error-template.one-column .main-content {}

/* Password template */
body.password-template.one-column {}
body.password-template.one-column .content-wrapper {}
body.password-template.one-column .main-content {}

/* Email Subscribition templates */
body.subscription-template.one-column {}
body.subscription-template.one-column .content-wrapper {}
body.subscription-template.one-column .main-content {}



.sidebar  ul {
  list-style-type:none;
  padding-left:0px;
}

.sidebar ul li {
  padding-left:20px;
  position:relative;
  margin-bottom:10px;
  font-size:18px;
}

.sidebar ul li:before {
  font-family: fontAwesome;
  content:"\f054";
  display:inline-block;
  margin-right:10px;
  color:#d51616;
  position:absolute;
  left:0;
}

.sidebar ul li a {
  text-decoration:none;
  border:none;
}

/* ==========================================================================
   5. COS COMPONENTS                                        
   ========================================================================== */





/* ==========================================================================
   Blog                                         
   ========================================================================== */


/* Blog Post and Listing Body Class */
body.blog {}

/* Blog Post */
body.hs-blog-post {}

/* Blog Listing */
body.hs-blog-listing {}

/* Blog Columns Wrapper */
.blog .content-wrapper {}


/* Blog Content Column
   ========================================================================== */

.blog .blog-content {}

/* Use this to style the main wrapper for the blog listing pages */
.blog-listing-wrapper {}

/* Use this to style the main wrapper for the blog post pages */
.blog-post-wrapper {}

/* Blog Title */
.hs-blog-header h1 {}
.hs-blog-header h1 a{}

/* Blog Post Title */
.post-header h2 { font-size:24px; line-height:1.4;}
.post-header h2 a {}

/* Blog Author and Avatar */
#hubspot-author_data {}
#hubspot-author_data a.author-link {}
#hubspot-author_data .hs-author-avatar {}
#hubspot-author_data .hs-author-avatar img {}

/* Use this to set up different styling for your blog posts */
.blog-listing-wrapper .post-listing .post-item {}
.blog-listing-wrapper .post-listing .post-item .post-body {}
.blog-post-wrapper .post-body {}

/* Post Featured Image on Listings Page */
.hs-featured-image-wrapper {}
.hs-featured-image-wrapper .hs-featured-image-link {}
.hs-featured-image-wrapper .hs-featured-image-link img.hs-featured-image{
  border-width: 0;
  max-height: 170px;
  max-width: 210px;
  height: auto;
  width: auto;
  display: inline-block !important;
  float: right;
  margin: 20px 0 20px 20px;
}

/* Read More Link */
a.more-link {}

/* Blog Topics List */
#hubspot-topic_data {}
#hubspot-topic_data a.topic-link {}

/** 
 * Blog Social Sharing icons
 *
 * Overrides defaults to better align icons and prevent overlapping 
 */

.hs-blog-social-share {
  padding: 10px 0 0 0;
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
  height: auto;
}

/** 
 * Blog Commments 
 *
 * Custom styles are listed below, as the COS does not provide default styles.
 */

#comments-listing {
  border-bottom: 1px solid #ccc;
  margin-bottom: 30px;
  margin-top: 30px;
}
.comment {
  margin: 10px 0;
  border-top: 1px solid #ccc;
  padding: 15px 0;
}
.comment-date { font-size: 13px; text-align: right; }
.comment-from { font-weight: bold; }
.comment-body { padding: 10px 0; }

/* Pagination */
.blog-pagination {}
.blog-pagination a {}
.blog-pagination a.previous-posts-link {}
.blog-pagination a.all-posts-link {}
.blog-pagination a.next-posts-link {}

/** 
 * Blog Author Page 
 *
 * ALWAYS be sure to set styles to these selectors, as the COS does not provide default styles
 */

.hs-author-profile {}
.hs-author-profile h2.hs-author-name {}
.hs-author-profile .hs-author-bio {}
.hs-author-profile .hs-author-avatar {}
.hs-author-profile .hs-author-avatar img {}
h3.hs-author-listing-header {}

/** 
 * Blog All Posts Page
 *
 * ALWAYS be sure to set styles to these selectors, as the COS does not provide default styles
 */

body.hs-content-path-blog-all {}
div.post-listing-simple {}
div.post-listing-simple .post-item {}
h2.post-listing-simple {}
h2.post-listing-simple a {}


/* Blog Sidebar
   ========================================================================== */

.blog .blog-sidebar {}

/* Blog Modules */
.blog .blog-sidebar .widget-span {}




/* ==========================================================================
   Forms
   ========================================================================== */


/* All Global Forms
   ========================================================================== */

/* Form Field */
body .hs-form-field {}

/* Descriptions */
body .hs-field-desc {}

/* Labels */
body label {}
body .hs-form-field > label {}

/* One Line Inputs */
body input[type="text"],
body input[type="password"], 
body input[type="datetime"], 
body input[type="datetime-local"], 
body input[type="date"], 
body input[type="month"], 
body input[type="time"], 
body input[type="week"], 
body input[type="number"], 
body input[type="email"], 
body input[type="url"], 
body input[type="search"], 
body input[type="tel"], 
body input[type="color"],
body input[type="file"],
body textarea,
body select {
  width: 100%;
  font-family: Arial, Sans-Serif;
  font-size: 18px;
}

body input[type="text"]:focus,
body input[type="password"]:focus, 
body input[type="datetime"]:focus, 
body input[type="datetime-local"]:focus, 
body input[type="date"]:focus, 
body input[type="month"]:focus, 
body input[type="time"]:focus, 
body input[type="week"]:focus, 
body input[type="number"]:focus, 
body input[type="email"]:focus, 
body input[type="url"]:focus, 
body input[type="search"]:focus, 
body input[type="tel"]:focus, 
body input[type="color"]:focus,
body input[type="file"]:focus,
body textarea:focus,
body select:focus {}

/* Separate Styles for Multiple Line Inputs */
body textarea {}
body textarea:focus {}

/* Separate Styles for Drop Downs */
body select {}
body select:focus {}

/* Multiple Selection Inputs */
body form.hs-form .hs-form-field ul.inputs-list {
  list-style: none;
  padding: 0;
}
body form.hs-form .hs-form-field ul.inputs-list li input {}
body input[type="radio"] {}
body input[type="checkbox"] {}

/* Required */
body input:focus:required:invalid, 
body textarea:focus:required:invalid, 
body select:focus:required:invalid {}

body input:focus:required:invalid:focus, 
body textarea:focus:required:invalid:focus, 
body select:focus:required:invalid:focus {}

/* Placeholder Text */
::-webkit-input-placeholder { /* Webkit Browsers */
   /* color: #555;
   opacity: 1; */
}
:-moz-placeholder { /* Firefox 18- */
   /* color: #555;
   opacity: 1; */
}
::-moz-placeholder { /* Firefox 19+ */
   /* color: #555;
   opacity: 1; */
}
:-ms-input-placeholder { /* IE10 */
   /* color: #555;
   opacity: 1; */
}


/* Form Module
   ========================================================================== */

/* Form Field */
.hs_cos_wrapper_type_form .hs-form-field {}

/* Descriptions */
.hs_cos_wrapper_type_form .hs-field-desc {}

/* Labels */
.hs_cos_wrapper_type_form label {}
.hs_cos_wrapper_type_form .hs-form-field > label {}

/* One Line Inputs */
.hs_cos_wrapper_type_form input[type="text"],
.hs_cos_wrapper_type_form input[type="password"], 
.hs_cos_wrapper_type_form input[type="datetime"], 
.hs_cos_wrapper_type_form input[type="datetime-local"], 
.hs_cos_wrapper_type_form input[type="date"], 
.hs_cos_wrapper_type_form input[type="month"], 
.hs_cos_wrapper_type_form input[type="time"], 
.hs_cos_wrapper_type_form input[type="week"], 
.hs_cos_wrapper_type_form input[type="number"], 
.hs_cos_wrapper_type_form input[type="email"], 
.hs_cos_wrapper_type_form input[type="url"], 
.hs_cos_wrapper_type_form input[type="search"], 
.hs_cos_wrapper_type_form input[type="tel"], 
.hs_cos_wrapper_type_form input[type="color"],
.hs_cos_wrapper_type_form input[type="file"],
.hs_cos_wrapper_type_form textarea,
.hs_cos_wrapper_type_form select {}

.hs_cos_wrapper_type_form input[type="text"]:focus,
.hs_cos_wrapper_type_form input[type="password"]:focus, 
.hs_cos_wrapper_type_form input[type="datetime"]:focus, 
.hs_cos_wrapper_type_form input[type="datetime-local"]:focus, 
.hs_cos_wrapper_type_form input[type="date"]:focus, 
.hs_cos_wrapper_type_form input[type="month"]:focus, 
.hs_cos_wrapper_type_form input[type="time"]:focus, 
.hs_cos_wrapper_type_form input[type="week"]:focus, 
.hs_cos_wrapper_type_form input[type="number"]:focus, 
.hs_cos_wrapper_type_form input[type="email"]:focus, 
.hs_cos_wrapper_type_form input[type="url"]:focus, 
.hs_cos_wrapper_type_form input[type="search"]:focus, 
.hs_cos_wrapper_type_form input[type="tel"]:focus, 
.hs_cos_wrapper_type_form input[type="color"]:focus,
.hs_cos_wrapper_type_form input[type="file"]:focus,
.hs_cos_wrapper_type_form textarea:focus,
.hs_cos_wrapper_type_form select:focus {}

/* Separate Styles for Multiple Line Inputs */
.hs_cos_wrapper_type_form textarea {}
.hs_cos_wrapper_type_form textarea:focus {}

/* Separate Styles for Drop Downs */
.hs_cos_wrapper_type_form select {}
.hs_cos_wrapper_type_form select:focus {}

/* Multiple Selection Inputs */
.hs_cos_wrapper_type_form form.hs-form .hs-form-field ul.inputs-list li input {}
.hs_cos_wrapper_type_form input[type="radio"] {}
.hs_cos_wrapper_type_form input[type="checkbox"] {}


/* Blog Comment Form
   ========================================================================== */

/* Label */
#comment-form .hs-form-field > label {}
#comment-form label {}

/* Inputs */
#comment-form input[type="text"] {}
#comment-form input[type="text"]:focus {}

#comment-form textarea {}
#comment-form textarea:focus {}

#comment-form input[type="checkbox"] {}

/* Error */
body .hs-common-error-message {}


/* Blog Subscription Form
   ========================================================================== */

/* Label */
#hs_form_target_blog_subscription .hs-form-field > label {}
#hs_form_target_blog_subscription label {}

/* Inputs */
#hs_form_target_blog_subscription input[type="email"] {}
#hs_form_target_blog_subscription input[type="email"]:focus {}

#hs_form_target_blog_subscription input[type="radio"], #hs_form_target_blog_subscription input[type="checkbox"] {
width: auto;
margin-right: 10px;
}


/* Google Search Form
   ========================================================================== */

/* Label */
.widget-type-google_search label {}

/* Input */
.widget-type-google_search input[type="text"] {}
.widget-type-google_search input[type="focus"] {}


/* Multi Column Form
   ========================================================================== */

body .hs-form fieldset.form-columns-1 {}
body .hs-form fieldset.form-columns-1 .hs-form-field {}

body .hs-form fieldset.form-columns-2 {}
body .hs-form fieldset.form-columns-2 .hs-form-field {}

body .hs-form fieldset.form-columns-3 {}
body .hs-form fieldset.form-columns-3 .hs-form-field {}

/* Multiple Selection Inputs */
body form.hs-form .hs-form-field ul.inputs-list li input {}
body input[type="radio"] {}
body input[type="checkbox"] {}
body form.hs-form fieldset { max-width: none; }
body form.hs-form fieldset .hs-form-field { padding: 0 10px 0 0; }
body form.hs-form fieldset[class*="form-columns"] .input { margin-right: 0; }
body form.hs-form fieldset[class*="form-columns"] .hs-input { width: 100%; }
body form.hs-form fieldset[class*="form-columns"] .hs-input[type="checkbox"] { width: auto; }
body form.hs-form fieldset.form-columns-3 .hs-form-field { width: 33.33%; }

@media (max-width: 400px) {
  body form.hs-form fieldset .hs-form-field { padding: 0; }
  body form.hs-form fieldset.form-columns-3 .hs-form-field,
  body form.hs-form .form-columns-2 .hs-form-field .hs-input, 
  body form.hs-form .form-columns-3 .hs-form-field .hs-input { width: 100%; }
  body form.hs-form .form-columns-3 .hs-form-field .hs-input[type="checkbox"] { width: auto; }
}




/* ==========================================================================
   Buttons                                              
   ========================================================================== */


/* All Global Buttons (Excluding CTAs)
   ========================================================================== */

body .hs-button.primary,
body input[type="submit"],
body input[type="button"] {
  cursor: pointer;
  -webkit-appearance: none;
  font-family: Arial, Sans-Serif;
  font-size: 18px;
  text-decoration: none !important;
}

body .hs-button.primary:hover,
body input[type="submit"]:hover,
body input[type="button"]:hover {}

body .hs-button.primary:focus,
body input[type="submit"]:focus,
body input[type="button"]:focus {}


/* Form Module Button
   ========================================================================== */

.hs_cos_wrapper_type_form .hs-button.primary.large {}
.hs_cos_wrapper_type_form .hs-button.primary.large:hover {}
.hs_cos_wrapper_type_form .hs-button.primary.large:focus {}


/* Blog Comment Button
   ========================================================================== */
#add-comment-button.hs-button.primary {}
#add-comment-button.hs-button.primary:hover {}
#add-comment-button.hs-button.primary:focus {}


/* Blog Subscription Button
   ========================================================================== */
#hs_form_target_blog_subscription .hs-button.primary.large {}
#hs_form_target_blog_subscription .hs-button.primary.large:hover {}
#hs_form_target_blog_subscription .hs-button.primary.large:focus {}


/* Google Search Button
   ========================================================================== */
.widget-type-google_search .hs-button.primary {}
.widget-type-google_search .hs-button.primary:hover {}
.widget-type-google_search .hs-button.primary:focus {}


/* CTA Buttons
   ========================================================================== */

/** 
 * Override global CTA styles by wrapping the CTA module in a module group 
 * that has an ID, and use that ID to prefix your CTA selector. Example shown below.
 *
 * All overriding properties require !important tags. 
*/
#module-group-ID .cta_button {}
#module-group-ID .cta_button:hover {}
#module-group-ID .cta_button:focus {}








/* ==========================================================================
   6. MISCELLANOUS                                        
   ========================================================================== */

.phone-cta {
 white-space: nowrap; 
}

.slick-slider {
touch-action: auto;
-ms-touch-action: auto;
}



/** 
 * Styles that do not fit into available sections above can go here.
 * For example, one would place 3rd party plugin overriding styles here.
 *
 * This section is NOT for 'Custom' styles.  All custom styles must go in the
 * proper sections above.
 *
 * For instance, custom header and footer styles must go in the HEADER and 
 * FOOTER sections.  Custom styles for anything in-between the header and footer 
 * (such as, styles that are unique to the HOMEPAGE only), must go in the 
 * CONTENT section.
*/ 


.desktop-only {
  display:block!important;
}


.mobile-only {
  display:none!Important;
}

  
a.cta_button {
  border:none;
}


/* ==========================================================================
   7. MOBILE MEDIA QUERIES                              
   ========================================================================== */


@media (max-width:1620px) {
  .responsive-padding-large {
    padding-left:20px;
    padding-right:20px;
  }
}
   

/* Screen sizes smaller than site maxWidth (.page-center)
   ========================================================================== */

@media (max-width:1200px) {
  .hs-menu-wrapper.hs-menu-flow-horizontal>ul li a {
    font-size:16px;
  }

}


@media (max-width: 1080px) {
.responsive-padding {
  padding-left:20px;
  padding-right:20px;
}

}


@media (max-width:1000px) {


  
  .fw-item {
    width:100%!important;
  }

}


/* Tablet Portrait */
@media (max-width: 768px) { 
  
  
  
  .span5.widget-span.widget-type-cell.connect-section {
    width:100%;
  }
  
  .spacer {
    display:none!Important;
  }
  
  .span6.widget-span.widget-type-custom_widget.phone-cta {
    width:100%;
  }
  
  .intro-module .span3 {
    margin-top: 0px !important;
   margin-bottom: 45px; 
  }
  
.intro-module .span3, .intro-module .span7, .intro-module .span9{
  width: 100%;
  margin-left: 0px !important;
  }

  
  .hubspot-section .span7, .hubspot-section .span4, .hubspot-section .span6, .hubspot-section .span3, .hubspot-section .span9 {
   width: 100%; 
    text-align: center;
    margin-left: 0px !important;
  }
  
  .intro-module {
  padding-bottom: 0px !important;
  }
  
  .intro-buttons {
   text-align: center; 
  }
  

  
  .project-section {
   padding-top: 0px !important; 
  }
  
}



/* Landscape tablet and smaller devices
   ========================================================================== */

@media (max-width: 768px) {
  
  .hearts img {
    float:left;
  }

  .reverse-row-mobile > .row-fluid-wrapper > .row-fluid,
  .reverse-row-mobile {
    display: -webkit-box;   
    display: -moz-box;      
    display: -ms-flexbox;   
    display: -webkit-flex;  
    display: flex;
    -webkit-flex-flow: row wrap;
    -moz-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}
  
  .flex-row > .row-fluid-wrapper > .row-fluid {
    display: -webkit-box;      
    display: -ms-flexbox;  
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-flow: row wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    flex-flow: row wrap; 
}

  .third {
    order: 3;
    -webkit-order: 3;
    -moz-order: 3;
    -ms-order: 3;
    width: 100%;
  }
  
  .second {
    order: 2;
    -webkit-order: 2;
    -moz-order: 2;
    -ms-order: 2;
    width: 100%;
  }

  .first {
    order: 1;
    -webkit-order: 1;
    -moz-order: 1;
    -ms-order: 1;
    width: 100%;
  }


  .hero-container-wrapper svg {
    display:none;
  }

  .hbspt-quote svg {
    display:none;
  }

  .hubspot-section.no-bg img {
    margin:0 auto;
    display:block;
    float:none;
  }

  .hbspt-quote img {
    margin:0 auto;
    display:block;
    float:none;
  }

  h1 {
    font-size: 32px;
    font-family: 'P22',Arial, Sans-Serif;
    font-weight: 500;
  }
  h2 {
    font-size: 26px;
      font-family: 'P22',Arial, Sans-Serif;
    font-weight: 500;
  }
  h3 {
    font-size: 20px;
        font-family: 'P22',Arial, Sans-Serif;
    font-weight: 400;
  }

  .our-work-message,
  .lets-talk-head {
    margin-top:0px;
  }
  
  .lets-talk-head {
    margin-bottom:0px;
  }
  .testimonials-section {
    background-position:top center;
  }
  
  @media (max-width: 767px) {
    
    .right-align,
    .be-brilliant h1{
      text-align:left;
    }
    
    .footer-fw {
      width:100%!important;
    }
    
    a.mobile-trigger {
      right:25px;
    }
    
      .intro-buttons .blue-btn {
   margin-right: 0px !important;
    margin-bottom: 15px !important;
  }
    
    .testimonial-slide {
     padding: 25px 0px !important; 
    }
  }

  .desktop-only {
    display:none!important;
  }

  .header-container-wrapper {
    padding-bottom:15px;

  }

  .logo-container{
    width:50%!important;
    float:left!important;
    display:block!important;
    z-index: 50;
    position:relative;
  }

  .logo-container img{
    max-width:280px;
    height:81px;
  }

  .top-bar {
    width:100%;
    margin:15px 0;
    text-align:center;
  }

  .top-bar a {
    font-size:17px;

  }
  .intro-module {
    margin-top:0!Important;
  }


}
     

/* Landscape phones and smaller devices
   ========================================================================== */

@media (max-width: 479px) {

  .top-bar a {
    font-size:14px;
  }


  .logo-container img {
    max-width:200px;
  }

}

.our-work-intro {
  padding-bottom:0;
}