/******/
/*** RESET ***/
/******/

* {
	scroll-behavior: smooth;
}

html,body {
    overflow-x: clip;
	scroll-behavior: smooth;
}

body {
	position: relative;
	-moz-osx-font-smoothing: grayscale;
  	-webkit-font-smoothing: antialiased;
}

img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

ul, ol {
	padding-inline-start: 1.375rem;
	margin-block-start: 0;
}/******/
/*** GLOBAL ***/
/******/

.main {
	background-color: var(--color-white);
}

nav a, li {
	text-decoration: none;
  	font-optical-sizing: auto;
}

nav ul, footer ul {
	padding-inline-start: 0;
	list-style-type: none;
	float: left;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
}

nav ul li {
	padding: 0 .5rem;
}

footer ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: .75rem;
	padding-inline-start: 0!important;
}

footer ul li {
	padding-right: 0;
	margin-block-start: .625rem;
}

html { scroll-behavior: auto; 

}/******/
/*** LAYOUT ***/
/******/

@media (max-width: 25rem) {
  @-ms-viewport {
    width: 20rem;
  }
}
.clear {
  clear: both;
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

.grid-container:before, .grid-container-full:before, .mobile-grid-5:before, .mobile-grid-10:before, .mobile-grid-15:before, .mobile-grid-20:before, .mobile-grid-25:before, .mobile-grid-30:before, .mobile-grid-35:before, .mobile-grid-40:before, .mobile-grid-45:before, .mobile-grid-50:before, .mobile-grid-55:before, .mobile-grid-60:before, .mobile-grid-65:before, .mobile-grid-70:before, .mobile-grid-75:before, .mobile-grid-80:before, .mobile-grid-85:before, .mobile-grid-90:before, .mobile-grid-95:before, .mobile-grid-100:before, .mobile-grid-33:before, .mobile-grid-66:before, .tablet-grid-5:before, .tablet-grid-10:before, .tablet-grid-15:before, .tablet-grid-16:before, .tablet-grid-20:before, .tablet-grid-25:before, .tablet-grid-30:before, .tablet-grid-35:before, .tablet-grid-40:before, .tablet-grid-45:before, .tablet-grid-50:before, .tablet-grid-55:before, .tablet-grid-60:before, .tablet-grid-65:before, .tablet-grid-70:before, .tablet-grid-75:before, .tablet-grid-80:before, .tablet-grid-85:before, .tablet-grid-90:before, .tablet-grid-95:before, .tablet-grid-100:before, .tablet-grid-33:before, .tablet-grid-66:before, .grid-5:before, .grid-10:before, .grid-15:before, .grid-16:before, .grid-20:before, .grid-25:before, .grid-30:before, .grid-35:before, .grid-40:before, .grid-45:before, .grid-50:before, .grid-55:before, .grid-60:before, .grid-65:before, .grid-70:before, .grid-75:before, .grid-80:before, .grid-85:before, .grid-90:before, .grid-95:before, .grid-100:before, .grid-33:before, .grid-66:before, .grid-offset:before, .clearfix:before,
.grid-container:after,
.grid-container-full:after,
.mobile-grid-5:after,
.mobile-grid-10:after,
.mobile-grid-15:after,
.mobile-grid-20:after,
.mobile-grid-25:after,
.mobile-grid-30:after,
.mobile-grid-35:after,
.mobile-grid-40:after,
.mobile-grid-45:after,
.mobile-grid-50:after,
.mobile-grid-55:after,
.mobile-grid-60:after,
.mobile-grid-65:after,
.mobile-grid-70:after,
.mobile-grid-75:after,
.mobile-grid-80:after,
.mobile-grid-85:after,
.mobile-grid-90:after,
.mobile-grid-95:after,
.mobile-grid-100:after,
.mobile-grid-33:after,
.mobile-grid-66:after,
.tablet-grid-5:after,
.tablet-grid-10:after,
.tablet-grid-15:after,
.tablet-grid-16:after,
.tablet-grid-20:after,
.tablet-grid-25:after,
.tablet-grid-30:after,
.tablet-grid-35:after,
.tablet-grid-40:after,
.tablet-grid-45:after,
.tablet-grid-50:after,
.tablet-grid-55:after,
.tablet-grid-60:after,
.tablet-grid-65:after,
.tablet-grid-70:after,
.tablet-grid-75:after,
.tablet-grid-80:after,
.tablet-grid-85:after,
.tablet-grid-90:after,
.tablet-grid-95:after,
.tablet-grid-100:after,
.tablet-grid-33:after,
.tablet-grid-66:after,
.grid-5:after,
.grid-10:after,
.grid-15:after,
.grid-16:after,
.grid-20:after,
.grid-25:after,
.grid-30:after,
.grid-35:after,
.grid-40:after,
.grid-45:after,
.grid-50:after,
.grid-55:after,
.grid-60:after,
.grid-65:after,
.grid-70:after,
.grid-75:after,
.grid-80:after,
.grid-85:after,
.grid-90:after,
.grid-95:after,
.grid-100:after,
.grid-33:after,
.grid-66:after,
.grid-offset:after,
.clearfix:after {
  content: ".";
  display: block;
  overflow: hidden;
  visibility: hidden;
  font-size: 0;
  line-height: 0;
  width: 0;
  height: 0;
}

.grid-container:after, .grid-container-full:after,.mobile-grid-5:after, .mobile-grid-10:after, .mobile-grid-15:after, .mobile-grid-20:after, .mobile-grid-25:after, .mobile-grid-30:after, .mobile-grid-35:after, .mobile-grid-40:after, .mobile-grid-45:after, .mobile-grid-50:after, .mobile-grid-55:after, .mobile-grid-60:after, .mobile-grid-65:after, .mobile-grid-70:after, .mobile-grid-75:after, .mobile-grid-80:after, .mobile-grid-85:after, .mobile-grid-90:after, .mobile-grid-95:after, .mobile-grid-100:after, .mobile-grid-33:after, .mobile-grid-66:after, .tablet-grid-5:after, .tablet-grid-10:after, .tablet-grid-15:after, .tablet-grid-16:after, .tablet-grid-20:after, .tablet-grid-25:after, .tablet-grid-30:after, .tablet-grid-35:after, .tablet-grid-40:after, .tablet-grid-45:after, .tablet-grid-50:after, .tablet-grid-55:after, .tablet-grid-60:after, .tablet-grid-65:after, .tablet-grid-70:after, .tablet-grid-75:after, .tablet-grid-80:after, .tablet-grid-85:after, .tablet-grid-90:after, .tablet-grid-95:after, .tablet-grid-100:after, .tablet-grid-33:after, .tablet-grid-66:after, .grid-5:after, .grid-10:after, .grid-15:after, .grid-16:after, .grid-20:after, .grid-25:after, .grid-30:after, .grid-35:after, .grid-40:after, .grid-45:after, .grid-50:after, .grid-55:after, .grid-60:after, .grid-65:after, .grid-70:after, .grid-75:after, .grid-80:after, .grid-85:after, .grid-90:after, .grid-95:after, .grid-100:after, .grid-33:after, .grid-66:after, .grid-offset:after, .clearfix:after {
  clear: both;
}

.grid-container, .grid-container-full, .mobile-grid-5, .mobile-grid-10, .mobile-grid-15, .mobile-grid-20, .mobile-grid-25, .mobile-grid-30, .mobile-grid-35, .mobile-grid-40, .mobile-grid-45, .mobile-grid-50, .mobile-grid-55, .mobile-grid-60, .mobile-grid-65, .mobile-grid-70, .mobile-grid-75, .mobile-grid-80, .mobile-grid-85, .mobile-grid-90, .mobile-grid-95, .mobile-grid-100, .mobile-grid-33, .mobile-grid-66, .tablet-grid-5, .tablet-grid-10, .tablet-grid-15, .tablet-grid-16, .tablet-grid-20, .tablet-grid-25, .tablet-grid-30, .tablet-grid-35, .tablet-grid-40, .tablet-grid-45, .tablet-grid-50, .tablet-grid-55, .tablet-grid-60, .tablet-grid-65, .tablet-grid-70, .tablet-grid-75, .tablet-grid-80, .tablet-grid-85, .tablet-grid-90, .tablet-grid-95, .tablet-grid-100, .tablet-grid-33, .tablet-grid-66, .grid-5, .grid-10, .grid-15, .grid-16, .grid-20, .grid-25, .grid-30, .grid-35, .grid-40, .grid-45, .grid-50, .grid-55, .grid-60, .grid-65, .grid-70, .grid-75, .grid-80, .grid-85, .grid-90, .grid-95, .grid-100, .grid-33, .grid-66, .grid-offset, .clearfix {
  /* <IE7> */
  *zoom: 1;
  /* </IE7> */
}

.grid-container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 80rem;
  position: relative;
  z-index: 2;
}

.grid-container-full {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  position: relative;
  z-index: 2;
}

.mobile-grid-5, .mobile-grid-10, .mobile-grid-15, .mobile-grid-20, .mobile-grid-25, .mobile-grid-30, .mobile-grid-35, .mobile-grid-40, .mobile-grid-45, .mobile-grid-50, .mobile-grid-55, .mobile-grid-60, .mobile-grid-65, .mobile-grid-70, .mobile-grid-75, .mobile-grid-80, .mobile-grid-85, .mobile-grid-90, .mobile-grid-95, .mobile-grid-100, .mobile-grid-33, .mobile-grid-66, .tablet-grid-5, .tablet-grid-10, .tablet-grid-15, .tablet-grid-16, .tablet-grid-20, .tablet-grid-25, .tablet-grid-30, .tablet-grid-35, .tablet-grid-40, .tablet-grid-45, .tablet-grid-50, .tablet-grid-55, .tablet-grid-60, .tablet-grid-65, .tablet-grid-70, .tablet-grid-75, .tablet-grid-80, .tablet-grid-85, .tablet-grid-90, .tablet-grid-95, .tablet-grid-100, .tablet-grid-33, .tablet-grid-66, .grid-5, .grid-10, .grid-15, .grid-16, .grid-20, .grid-25, .grid-30, .grid-35, .grid-40, .grid-45, .grid-50, .grid-55, .grid-60, .grid-65, .grid-70, .grid-75, .grid-80, .grid-85, .grid-90, .grid-95, .grid-100, .grid-33, .grid-66 {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.mobile-grid-5 > *, .mobile-grid-10 > *, .mobile-grid-15 > *, .mobile-grid-20 > *, .mobile-grid-25 > *, .mobile-grid-30 > *, .mobile-grid-35 > *, .mobile-grid-40 > *, .mobile-grid-45 > *, .mobile-grid-50 > *, .mobile-grid-55 > *, .mobile-grid-60 > *, .mobile-grid-65 > *, .mobile-grid-70 > *, .mobile-grid-75 > *, .mobile-grid-80 > *, .mobile-grid-85 > *, .mobile-grid-90 > *, .mobile-grid-95 > *, .mobile-grid-100 > *, .mobile-grid-33 > *, .mobile-grid-66 > *, .tablet-grid-5 > *, .tablet-grid-10 > *, .tablet-grid-15 > *, .tablet-grid-16 > *, .tablet-grid-20 > *, .tablet-grid-25 > *, .tablet-grid-30 > *, .tablet-grid-35 > *, .tablet-grid-40 > *, .tablet-grid-45 > *, .tablet-grid-50 > *, .tablet-grid-55 > *, .tablet-grid-60 > *, .tablet-grid-65 > *, .tablet-grid-70 > *, .tablet-grid-75 > *, .tablet-grid-80 > *, .tablet-grid-85 > *, .tablet-grid-90 > *, .tablet-grid-95 > *, .tablet-grid-100 > *, .tablet-grid-33 > *, .tablet-grid-66 > *, .grid-5 > *, .grid-10 > *, .grid-15 > *, .grid-16 > *, .grid-20 > *, .grid-25 > *, .grid-30 > *, .grid-35 > *, .grid-40 > *, .grid-45 > *, .grid-50 > *, .grid-55 > *, .grid-60 > *, .grid-65 > *, .grid-70 > *, .grid-75 > *, .grid-80 > *, .grid-85 > *, .grid-90 > *, .grid-95 > *, .grid-100 > *, .grid-33 > *, .grid-66 > * {
  /* <IE7> */
  *margin-left: expression((!this.className.match(/grid-[1-9]/) && this.currentStyle.display === 'block' && this.currentStyle.width === 'auto') && '10px');
  *margin-right: expression((!this.className.match(/grid-[1-9]/) && this.currentStyle.display === 'block' && this.currentStyle.width === 'auto') && '10px');
  /* </IE7> */
}

.grid-offset {
  clear: both;
  margin-left: -.625rem;
  margin-right: -.625rem;
}

@media (max-width: 47.9375rem) {
  
  .mobile-push-5, .mobile-pull-5, .mobile-push-10, .mobile-pull-10, .mobile-push-15, .mobile-pull-15, .mobile-push-20, .mobile-pull-20, .mobile-push-25, .mobile-pull-25, .mobile-push-30, .mobile-pull-30, .mobile-push-35, .mobile-pull-35, .mobile-push-40, .mobile-pull-40, .mobile-push-45, .mobile-pull-45, .mobile-push-50, .mobile-pull-50, .mobile-push-55, .mobile-pull-55, .mobile-push-60, .mobile-pull-60, .mobile-push-65, .mobile-pull-65, .mobile-push-70, .mobile-pull-70, .mobile-push-75, .mobile-pull-75, .mobile-push-80, .mobile-pull-80, .mobile-push-85, .mobile-pull-85, .mobile-push-90, .mobile-pull-90, .mobile-push-95, .mobile-pull-95, .mobile-push-33, .mobile-pull-33, .mobile-push-66, .mobile-pull-66 {
    position: relative;
  }

  .hide-on-mobile {
    display: none !important;
  }

  .mobile-grid-5 {
    float: left;
    width: 5%;
    /* <IE7> */
    *width: expression(Math.floor(0.05 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-5 {
    margin-left: 5%;
  }

  .mobile-suffix-5 {
    margin-right: 5%;
  }

  .mobile-push-5 {
    left: 5%;
    /* <IE7> */
    *left: expression(Math.floor(0.05 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-5 {
    left: -5%;
    /* <IE7> */
    *left: expression(Math.floor(-0.05 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-10 {
    float: left;
    width: 10%;
    /* <IE7> */
    *width: expression(Math.floor(0.1 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-10 {
    margin-left: 10%;
  }

  .mobile-suffix-10 {
    margin-right: 10%;
  }

  .mobile-push-10 {
    left: 10%;
    /* <IE7> */
    *left: expression(Math.floor(0.1 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-10 {
    left: -10%;
    /* <IE7> */
    *left: expression(Math.floor(-0.1 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-15 {
    float: left;
    width: 15%;
    /* <IE7> */
    *width: expression(Math.floor(0.15 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-15 {
    margin-left: 15%;
  }

  .mobile-suffix-15 {
    margin-right: 15%;
  }

  .mobile-push-15 {
    left: 15%;
    /* <IE7> */
    *left: expression(Math.floor(0.15 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-15 {
    left: -15%;
    /* <IE7> */
    *left: expression(Math.floor(-0.15 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-20 {
    float: left;
    width: 20%;
    /* <IE7> */
    *width: expression(Math.floor(0.2 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-20 {
    margin-left: 20%;
  }

  .mobile-suffix-20 {
    margin-right: 20%;
  }

  .mobile-push-20 {
    left: 20%;
    /* <IE7> */
    *left: expression(Math.floor(0.2 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-20 {
    left: -20%;
    /* <IE7> */
    *left: expression(Math.floor(-0.2 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-25 {
    float: left;
    width: 25%;
    /* <IE7> */
    *width: expression(Math.floor(0.25 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-25 {
    margin-left: 25%;
  }

  .mobile-suffix-25 {
    margin-right: 25%;
  }

  .mobile-push-25 {
    left: 25%;
    /* <IE7> */
    *left: expression(Math.floor(0.25 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-25 {
    left: -25%;
    /* <IE7> */
    *left: expression(Math.floor(-0.25 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-30 {
    float: left;
    width: 30%;
    /* <IE7> */
    *width: expression(Math.floor(0.3 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-30 {
    margin-left: 30%;
  }

  .mobile-suffix-30 {
    margin-right: 30%;
  }

  .mobile-push-30 {
    left: 30%;
    /* <IE7> */
    *left: expression(Math.floor(0.3 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-30 {
    left: -30%;
    /* <IE7> */
    *left: expression(Math.floor(-0.3 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-35 {
    float: left;
    width: 35%;
    /* <IE7> */
    *width: expression(Math.floor(0.35 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-35 {
    margin-left: 35%;
  }

  .mobile-suffix-35 {
    margin-right: 35%;
  }

  .mobile-push-35 {
    left: 35%;
    /* <IE7> */
    *left: expression(Math.floor(0.35 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-35 {
    left: -35%;
    /* <IE7> */
    *left: expression(Math.floor(-0.35 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-40 {
    float: left;
    width: 40%;
    /* <IE7> */
    *width: expression(Math.floor(0.4 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-40 {
    margin-left: 40%;
  }

  .mobile-suffix-40 {
    margin-right: 40%;
  }

  .mobile-push-40 {
    left: 40%;
    /* <IE7> */
    *left: expression(Math.floor(0.4 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-40 {
    left: -40%;
    /* <IE7> */
    *left: expression(Math.floor(-0.4 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-45 {
    float: left;
    width: 45%;
    /* <IE7> */
    *width: expression(Math.floor(0.45 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-45 {
    margin-left: 45%;
  }

  .mobile-suffix-45 {
    margin-right: 45%;
  }

  .mobile-push-45 {
    left: 45%;
    /* <IE7> */
    *left: expression(Math.floor(0.45 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-45 {
    left: -45%;
    /* <IE7> */
    *left: expression(Math.floor(-0.45 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-50 {
    float: left;
    width: 50%;
    /* <IE7> */
    *width: expression(Math.floor(0.5 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-50 {
    margin-left: 50%;
  }

  .mobile-suffix-50 {
    margin-right: 50%;
  }

  .mobile-push-50 {
    left: 50%;
    /* <IE7> */
    *left: expression(Math.floor(0.5 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-50 {
    left: -50%;
    /* <IE7> */
    *left: expression(Math.floor(-0.5 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-55 {
    float: left;
    width: 55%;
    /* <IE7> */
    *width: expression(Math.floor(0.55 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-55 {
    margin-left: 55%;
  }

  .mobile-suffix-55 {
    margin-right: 55%;
  }

  .mobile-push-55 {
    left: 55%;
    /* <IE7> */
    *left: expression(Math.floor(0.55 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-55 {
    left: -55%;
    /* <IE7> */
    *left: expression(Math.floor(-0.55 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-60 {
    float: left;
    width: 60%;
    /* <IE7> */
    *width: expression(Math.floor(0.6 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-60 {
    margin-left: 60%;
  }

  .mobile-suffix-60 {
    margin-right: 60%;
  }

  .mobile-push-60 {
    left: 60%;
    /* <IE7> */
    *left: expression(Math.floor(0.6 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-60 {
    left: -60%;
    /* <IE7> */
    *left: expression(Math.floor(-0.6 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-65 {
    float: left;
    width: 65%;
    /* <IE7> */
    *width: expression(Math.floor(0.65 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-65 {
    margin-left: 65%;
  }

  .mobile-suffix-65 {
    margin-right: 65%;
  }

  .mobile-push-65 {
    left: 65%;
    /* <IE7> */
    *left: expression(Math.floor(0.65 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-65 {
    left: -65%;
    /* <IE7> */
    *left: expression(Math.floor(-0.65 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-70 {
    float: left;
    width: 70%;
    /* <IE7> */
    *width: expression(Math.floor(0.7 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-70 {
    margin-left: 70%;
  }

  .mobile-suffix-70 {
    margin-right: 70%;
  }

  .mobile-push-70 {
    left: 70%;
    /* <IE7> */
    *left: expression(Math.floor(0.7 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-70 {
    left: -70%;
    /* <IE7> */
    *left: expression(Math.floor(-0.7 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-75 {
    float: left;
    width: 75%;
    /* <IE7> */
    *width: expression(Math.floor(0.75 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-75 {
    margin-left: 75%;
  }

  .mobile-suffix-75 {
    margin-right: 75%;
  }

  .mobile-push-75 {
    left: 75%;
    /* <IE7> */
    *left: expression(Math.floor(0.75 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-75 {
    left: -75%;
    /* <IE7> */
    *left: expression(Math.floor(-0.75 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-80 {
    float: left;
    width: 80%;
    /* <IE7> */
    *width: expression(Math.floor(0.8 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-80 {
    margin-left: 80%;
  }

  .mobile-suffix-80 {
    margin-right: 80%;
  }

  .mobile-push-80 {
    left: 80%;
    /* <IE7> */
    *left: expression(Math.floor(0.8 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-80 {
    left: -80%;
    /* <IE7> */
    *left: expression(Math.floor(-0.8 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-85 {
    float: left;
    width: 85%;
    /* <IE7> */
    *width: expression(Math.floor(0.85 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-85 {
    margin-left: 85%;
  }

  .mobile-suffix-85 {
    margin-right: 85%;
  }

  .mobile-push-85 {
    left: 85%;
    /* <IE7> */
    *left: expression(Math.floor(0.85 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-85 {
    left: -85%;
    /* <IE7> */
    *left: expression(Math.floor(-0.85 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-90 {
    float: left;
    width: 90%;
    /* <IE7> */
    *width: expression(Math.floor(0.9 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-90 {
    margin-left: 90%;
  }

  .mobile-suffix-90 {
    margin-right: 90%;
  }

  .mobile-push-90 {
    left: 90%;
    /* <IE7> */
    *left: expression(Math.floor(0.9 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-90 {
    left: -90%;
    /* <IE7> */
    *left: expression(Math.floor(-0.9 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-95 {
    float: left;
    width: 95%;
    /* <IE7> */
    *width: expression(Math.floor(0.95 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-95 {
    margin-left: 95%;
  }

  .mobile-suffix-95 {
    margin-right: 95%;
  }

  .mobile-push-95 {
    left: 95%;
    /* <IE7> */
    *left: expression(Math.floor(0.95 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-95 {
    left: -95%;
    /* <IE7> */
    *left: expression(Math.floor(-0.95 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-33 {
    float: left;
    width: 33.33333%;
    /* <IE7> */
    *width: expression(Math.floor(0.33333 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-33 {
    margin-left: 33.33333%;
  }

  .mobile-suffix-33 {
    margin-right: 33.33333%;
  }

  .mobile-push-33 {
    left: 33.33333%;
    /* <IE7> */
    *left: expression(Math.floor(0.33333 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-33 {
    left: -33.33333%;
    /* <IE7> */
    *left: expression(Math.floor(-0.33333 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-66 {
    float: left;
    width: 66.66667%;
    /* <IE7> */
    *width: expression(Math.floor(0.66667 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-prefix-66 {
    margin-left: 66.66667%;
  }

  .mobile-suffix-66 {
    margin-right: 66.66667%;
  }

  .mobile-push-66 {
    left: 66.66667%;
    /* <IE7> */
    *left: expression(Math.floor(0.66667 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-pull-66 {
    left: -66.66667%;
    /* <IE7> */
    *left: expression(Math.floor(-0.66667 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .mobile-grid-100 {
    clear: both;
    width: 100%;
  }
}
@media (min-width: 48rem) and (max-width: 64rem) {
  
  .tablet-push-5, .tablet-pull-5, .tablet-push-10, .tablet-pull-10, .tablet-push-15, .tablet-pull-15, .tablet-push-20, .tablet-pull-20, .tablet-push-25, .tablet-pull-25, .tablet-push-30, .tablet-pull-30, .tablet-push-35, .tablet-pull-35, .tablet-push-40, .tablet-pull-40, .tablet-push-45, .tablet-pull-45, .tablet-push-50, .tablet-pull-50, .tablet-push-55, .tablet-pull-55, .tablet-push-60, .tablet-pull-60, .tablet-push-65, .tablet-pull-65, .tablet-push-70, .tablet-pull-70, .tablet-push-75, .tablet-pull-75, .tablet-push-80, .tablet-pull-80, .tablet-push-85, .tablet-pull-85, .tablet-push-90, .tablet-pull-90, .tablet-push-95, .tablet-pull-95, .tablet-push-33, .tablet-pull-33, .tablet-push-66, .tablet-pull-66 {
    position: relative;
  }

  .hide-on-tablet {
    display: none !important;
  }

  .tablet-grid-5 {
    float: left;
    width: 5%;
    /* <IE7> */
    *width: expression(Math.floor(0.05 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-5 {
    margin-left: 5%;
  }

  .tablet-suffix-5 {
    margin-right: 5%;
  }

  .tablet-push-5 {
    left: 5%;
    /* <IE7> */
    *left: expression(Math.floor(0.05 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-5 {
    left: -5%;
    /* <IE7> */
    *left: expression(Math.floor(-0.05 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-10 {
    float: left;
    width: 10%;
    /* <IE7> */
    *width: expression(Math.floor(0.1 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-10 {
    margin-left: 10%;
  }

  .tablet-suffix-10 {
    margin-right: 10%;
  }

  .tablet-push-10 {
    left: 10%;
    /* <IE7> */
    *left: expression(Math.floor(0.1 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-10 {
    left: -10%;
    /* <IE7> */
    *left: expression(Math.floor(-0.1 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-15 {
    float: left;
    width: 15%;
    /* <IE7> */
    *width: expression(Math.floor(0.15 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-15 {
    margin-left: 15%;
  }

  .tablet-suffix-15 {
    margin-right: 15%;
  }

  .tablet-push-15 {
    left: 15%;
    /* <IE7> */
    *left: expression(Math.floor(0.15 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-15 {
    left: -15%;
    /* <IE7> */
    *left: expression(Math.floor(-0.15 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }
  
  .tablet-grid-16 {
    float: left;
    width: 16.66666%;
    /* <IE7> */
    *width: expression(Math.floor(0.15 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-20 {
    float: left;
    width: 20%;
    /* <IE7> */
    *width: expression(Math.floor(0.2 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-20 {
    margin-left: 20%;
  }

  .tablet-suffix-20 {
    margin-right: 20%;
  }

  .tablet-push-20 {
    left: 20%;
    /* <IE7> */
    *left: expression(Math.floor(0.2 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-20 {
    left: -20%;
    /* <IE7> */
    *left: expression(Math.floor(-0.2 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-25 {
    float: left;
    width: 25%;
    /* <IE7> */
    *width: expression(Math.floor(0.25 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-25 {
    margin-left: 25%;
  }

  .tablet-suffix-25 {
    margin-right: 25%;
  }

  .tablet-push-25 {
    left: 25%;
    /* <IE7> */
    *left: expression(Math.floor(0.25 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-25 {
    left: -25%;
    /* <IE7> */
    *left: expression(Math.floor(-0.25 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-30 {
    float: left;
    width: 30%;
    /* <IE7> */
    *width: expression(Math.floor(0.3 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-30 {
    margin-left: 30%;
  }

  .tablet-suffix-30 {
    margin-right: 30%;
  }

  .tablet-push-30 {
    left: 30%;
    /* <IE7> */
    *left: expression(Math.floor(0.3 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-30 {
    left: -30%;
    /* <IE7> */
    *left: expression(Math.floor(-0.3 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-35 {
    float: left;
    width: 35%;
    /* <IE7> */
    *width: expression(Math.floor(0.35 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-35 {
    margin-left: 35%;
  }

  .tablet-suffix-35 {
    margin-right: 35%;
  }

  .tablet-push-35 {
    left: 35%;
    /* <IE7> */
    *left: expression(Math.floor(0.35 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-35 {
    left: -35%;
    /* <IE7> */
    *left: expression(Math.floor(-0.35 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-40 {
    float: left;
    width: 40%;
    /* <IE7> */
    *width: expression(Math.floor(0.4 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-40 {
    margin-left: 40%;
  }

  .tablet-suffix-40 {
    margin-right: 40%;
  }

  .tablet-push-40 {
    left: 40%;
    /* <IE7> */
    *left: expression(Math.floor(0.4 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-40 {
    left: -40%;
    /* <IE7> */
    *left: expression(Math.floor(-0.4 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-45 {
    float: left;
    width: 45%;
    /* <IE7> */
    *width: expression(Math.floor(0.45 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-45 {
    margin-left: 45%;
  }

  .tablet-suffix-45 {
    margin-right: 45%;
  }

  .tablet-push-45 {
    left: 45%;
    /* <IE7> */
    *left: expression(Math.floor(0.45 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-45 {
    left: -45%;
    /* <IE7> */
    *left: expression(Math.floor(-0.45 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-50 {
    float: left;
    width: 50%;
    /* <IE7> */
    *width: expression(Math.floor(0.5 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-50 {
    margin-left: 50%;
  }

  .tablet-suffix-50 {
    margin-right: 50%;
  }

  .tablet-push-50 {
    left: 50%;
    /* <IE7> */
    *left: expression(Math.floor(0.5 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-50 {
    left: -50%;
    /* <IE7> */
    *left: expression(Math.floor(-0.5 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-55 {
    float: left;
    width: 55%;
    /* <IE7> */
    *width: expression(Math.floor(0.55 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-55 {
    margin-left: 55%;
  }

  .tablet-suffix-55 {
    margin-right: 55%;
  }

  .tablet-push-55 {
    left: 55%;
    /* <IE7> */
    *left: expression(Math.floor(0.55 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-55 {
    left: -55%;
    /* <IE7> */
    *left: expression(Math.floor(-0.55 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-60 {
    float: left;
    width: 60%;
    /* <IE7> */
    *width: expression(Math.floor(0.6 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-60 {
    margin-left: 60%;
  }

  .tablet-suffix-60 {
    margin-right: 60%;
  }

  .tablet-push-60 {
    left: 60%;
    /* <IE7> */
    *left: expression(Math.floor(0.6 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-60 {
    left: -60%;
    /* <IE7> */
    *left: expression(Math.floor(-0.6 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-65 {
    float: left;
    width: 65%;
    /* <IE7> */
    *width: expression(Math.floor(0.65 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-65 {
    margin-left: 65%;
  }

  .tablet-suffix-65 {
    margin-right: 65%;
  }

  .tablet-push-65 {
    left: 65%;
    /* <IE7> */
    *left: expression(Math.floor(0.65 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-65 {
    left: -65%;
    /* <IE7> */
    *left: expression(Math.floor(-0.65 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-70 {
    float: left;
    width: 70%;
    /* <IE7> */
    *width: expression(Math.floor(0.7 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-70 {
    margin-left: 70%;
  }

  .tablet-suffix-70 {
    margin-right: 70%;
  }

  .tablet-push-70 {
    left: 70%;
    /* <IE7> */
    *left: expression(Math.floor(0.7 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-70 {
    left: -70%;
    /* <IE7> */
    *left: expression(Math.floor(-0.7 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-75 {
    float: left;
    width: 75%;
    /* <IE7> */
    *width: expression(Math.floor(0.75 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-75 {
    margin-left: 75%;
  }

  .tablet-suffix-75 {
    margin-right: 75%;
  }

  .tablet-push-75 {
    left: 75%;
    /* <IE7> */
    *left: expression(Math.floor(0.75 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-75 {
    left: -75%;
    /* <IE7> */
    *left: expression(Math.floor(-0.75 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-80 {
    float: left;
    width: 80%;
    /* <IE7> */
    *width: expression(Math.floor(0.8 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-80 {
    margin-left: 80%;
  }

  .tablet-suffix-80 {
    margin-right: 80%;
  }

  .tablet-push-80 {
    left: 80%;
    /* <IE7> */
    *left: expression(Math.floor(0.8 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-80 {
    left: -80%;
    /* <IE7> */
    *left: expression(Math.floor(-0.8 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-85 {
    float: left;
    width: 85%;
    /* <IE7> */
    *width: expression(Math.floor(0.85 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-85 {
    margin-left: 85%;
  }

  .tablet-suffix-85 {
    margin-right: 85%;
  }

  .tablet-push-85 {
    left: 85%;
    /* <IE7> */
    *left: expression(Math.floor(0.85 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-85 {
    left: -85%;
    /* <IE7> */
    *left: expression(Math.floor(-0.85 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-90 {
    float: left;
    width: 90%;
    /* <IE7> */
    *width: expression(Math.floor(0.9 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-90 {
    margin-left: 90%;
  }

  .tablet-suffix-90 {
    margin-right: 90%;
  }

  .tablet-push-90 {
    left: 90%;
    /* <IE7> */
    *left: expression(Math.floor(0.9 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-90 {
    left: -90%;
    /* <IE7> */
    *left: expression(Math.floor(-0.9 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-95 {
    float: left;
    width: 95%;
    /* <IE7> */
    *width: expression(Math.floor(0.95 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-95 {
    margin-left: 95%;
  }

  .tablet-suffix-95 {
    margin-right: 95%;
  }

  .tablet-push-95 {
    left: 95%;
    /* <IE7> */
    *left: expression(Math.floor(0.95 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-95 {
    left: -95%;
    /* <IE7> */
    *left: expression(Math.floor(-0.95 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-33 {
    float: left;
    width: 33.33333%;
    /* <IE7> */
    *width: expression(Math.floor(0.33333 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-33 {
    margin-left: 33.33333%;
  }

  .tablet-suffix-33 {
    margin-right: 33.33333%;
  }

  .tablet-push-33 {
    left: 33.33333%;
    /* <IE7> */
    *left: expression(Math.floor(0.33333 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-33 {
    left: -33.33333%;
    /* <IE7> */
    *left: expression(Math.floor(-0.33333 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-66 {
    float: left;
    width: 66.66667%;
    /* <IE7> */
    *width: expression(Math.floor(0.66667 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-prefix-66 {
    margin-left: 66.66667%;
  }

  .tablet-suffix-66 {
    margin-right: 66.66667%;
  }

  .tablet-push-66 {
    left: 66.66667%;
    /* <IE7> */
    *left: expression(Math.floor(0.66667 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-pull-66 {
    left: -66.66667%;
    /* <IE7> */
    *left: expression(Math.floor(-0.66667 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .tablet-grid-100 {
    clear: both;
    width: 100%;
  }
}
@media (min-width: 64.0625rem) {
  .push-5, .pull-5, .push-10, .pull-10, .push-15, .pull-15, .push-20, .pull-20, .push-25, .pull-25, .push-30, .pull-30, .push-35, .pull-35, .push-40, .pull-40, .push-45, .pull-45, .push-50, .pull-50, .push-55, .pull-55, .push-60, .pull-60, .push-65, .pull-65, .push-70, .pull-70, .push-75, .pull-75, .push-80, .pull-80, .push-85, .pull-85, .push-90, .pull-90, .push-95, .pull-95, .push-33, .pull-33, .push-66, .pull-66 {
    position: relative;
  }

  .hide-on-desktop {
    display: none !important;
  }

  .grid-5 {
    float: left;
    width: 5%;
    /* <IE7> */
    *width: expression(Math.floor(0.05 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-5 {
    margin-left: 5%;
  }

  .suffix-5 {
    margin-right: 5%;
  }

  .push-5 {
    left: 5%;
    /* <IE7> */
    *left: expression(Math.floor(0.05 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-5 {
    left: -5%;
    /* <IE7> */
    *left: expression(Math.floor(-0.05 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-10 {
    float: left;
    width: 10%;
    /* <IE7> */
    *width: expression(Math.floor(0.1 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-10 {
    margin-left: 10%;
  }

  .suffix-10 {
    margin-right: 10%;
  }

  .push-10 {
    left: 10%;
    /* <IE7> */
    *left: expression(Math.floor(0.1 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-10 {
    left: -10%;
    /* <IE7> */
    *left: expression(Math.floor(-0.1 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-15 {
    float: left;
    width: 15%;
    /* <IE7> */
    *width: expression(Math.floor(0.15 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-15 {
    margin-left: 15%;
  }

  .suffix-15 {
    margin-right: 15%;
  }

  .push-15 {
    left: 15%;
    /* <IE7> */
    *left: expression(Math.floor(0.15 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-15 {
    left: -15%;
    /* <IE7> */
    *left: expression(Math.floor(-0.15 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }
  
  .grid-16 {
    float: left;
    width: 16.66666%;
    /* <IE7> */
    *width: expression(Math.floor(0.15 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-20 {
    float: left;
    width: 20%;
    /* <IE7> */
    *width: expression(Math.floor(0.2 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-20 {
    margin-left: 20%;
  }

  .suffix-20 {
    margin-right: 20%;
  }

  .push-20 {
    left: 20%;
    /* <IE7> */
    *left: expression(Math.floor(0.2 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-20 {
    left: -20%;
    /* <IE7> */
    *left: expression(Math.floor(-0.2 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-25 {
    float: left;
    width: 25%;
    /* <IE7> */
    *width: expression(Math.floor(0.25 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-25 {
    margin-left: 25%;
  }

  .suffix-25 {
    margin-right: 25%;
  }

  .push-25 {
    left: 25%;
    /* <IE7> */
    *left: expression(Math.floor(0.25 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-25 {
    left: -25%;
    /* <IE7> */
    *left: expression(Math.floor(-0.25 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-30 {
    float: left;
    width: 30%;
    /* <IE7> */
    *width: expression(Math.floor(0.3 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-30 {
    margin-left: 30%;
  }

  .suffix-30 {
    margin-right: 30%;
  }

  .push-30 {
    left: 30%;
    /* <IE7> */
    *left: expression(Math.floor(0.3 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-30 {
    left: -30%;
    /* <IE7> */
    *left: expression(Math.floor(-0.3 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-35 {
    float: left;
    width: 35%;
    /* <IE7> */
    *width: expression(Math.floor(0.35 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-35 {
    margin-left: 35%;
  }

  .suffix-35 {
    margin-right: 35%;
  }

  .push-35 {
    left: 35%;
    /* <IE7> */
    *left: expression(Math.floor(0.35 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-35 {
    left: -35%;
    /* <IE7> */
    *left: expression(Math.floor(-0.35 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-40 {
    float: left;
    width: 40%;
    /* <IE7> */
    *width: expression(Math.floor(0.4 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-40 {
    margin-left: 40%;
  }

  .suffix-40 {
    margin-right: 40%;
  }

  .push-40 {
    left: 40%;
    /* <IE7> */
    *left: expression(Math.floor(0.4 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-40 {
    left: -40%;
    /* <IE7> */
    *left: expression(Math.floor(-0.4 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-45 {
    float: left;
    width: 45%;
    /* <IE7> */
    *width: expression(Math.floor(0.45 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-45 {
    margin-left: 45%;
  }

  .suffix-45 {
    margin-right: 45%;
  }

  .push-45 {
    left: 45%;
    /* <IE7> */
    *left: expression(Math.floor(0.45 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-45 {
    left: -45%;
    /* <IE7> */
    *left: expression(Math.floor(-0.45 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-50 {
    float: left;
    width: 50%;
    /* <IE7> */
    *width: expression(Math.floor(0.5 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-50 {
    margin-left: 50%;
  }

  .suffix-50 {
    margin-right: 50%;
  }

  .push-50 {
    left: 50%;
    /* <IE7> */
    *left: expression(Math.floor(0.5 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-50 {
    left: -50%;
    /* <IE7> */
    *left: expression(Math.floor(-0.5 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-55 {
    float: left;
    width: 55%;
    /* <IE7> */
    *width: expression(Math.floor(0.55 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-55 {
    margin-left: 55%;
  }

  .suffix-55 {
    margin-right: 55%;
  }

  .push-55 {
    left: 55%;
    /* <IE7> */
    *left: expression(Math.floor(0.55 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-55 {
    left: -55%;
    /* <IE7> */
    *left: expression(Math.floor(-0.55 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-60 {
    float: left;
    width: 60%;
    /* <IE7> */
    *width: expression(Math.floor(0.6 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-60 {
    margin-left: 60%;
  }

  .suffix-60 {
    margin-right: 60%;
  }

  .push-60 {
    left: 60%;
    /* <IE7> */
    *left: expression(Math.floor(0.6 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-60 {
    left: -60%;
    /* <IE7> */
    *left: expression(Math.floor(-0.6 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-65 {
    float: left;
    width: 65%;
    /* <IE7> */
    *width: expression(Math.floor(0.65 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-65 {
    margin-left: 65%;
  }

  .suffix-65 {
    margin-right: 65%;
  }

  .push-65 {
    left: 65%;
    /* <IE7> */
    *left: expression(Math.floor(0.65 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-65 {
    left: -65%;
    /* <IE7> */
    *left: expression(Math.floor(-0.65 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-70 {
    float: left;
    width: 70%;
    /* <IE7> */
    *width: expression(Math.floor(0.7 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-70 {
    margin-left: 70%;
  }

  .suffix-70 {
    margin-right: 70%;
  }

  .push-70 {
    left: 70%;
    /* <IE7> */
    *left: expression(Math.floor(0.7 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-70 {
    left: -70%;
    /* <IE7> */
    *left: expression(Math.floor(-0.7 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-75 {
    float: left;
    width: 75%;
    /* <IE7> */
    *width: expression(Math.floor(0.75 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-75 {
    margin-left: 75%;
  }

  .suffix-75 {
    margin-right: 75%;
  }

  .push-75 {
    left: 75%;
    /* <IE7> */
    *left: expression(Math.floor(0.75 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-75 {
    left: -75%;
    /* <IE7> */
    *left: expression(Math.floor(-0.75 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-80 {
    float: left;
    width: 80%;
    /* <IE7> */
    *width: expression(Math.floor(0.8 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-80 {
    margin-left: 80%;
  }

  .suffix-80 {
    margin-right: 80%;
  }

  .push-80 {
    left: 80%;
    /* <IE7> */
    *left: expression(Math.floor(0.8 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-80 {
    left: -80%;
    /* <IE7> */
    *left: expression(Math.floor(-0.8 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-85 {
    float: left;
    width: 85%;
    /* <IE7> */
    *width: expression(Math.floor(0.85 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-85 {
    margin-left: 85%;
  }

  .suffix-85 {
    margin-right: 85%;
  }

  .push-85 {
    left: 85%;
    /* <IE7> */
    *left: expression(Math.floor(0.85 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-85 {
    left: -85%;
    /* <IE7> */
    *left: expression(Math.floor(-0.85 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-90 {
    float: left;
    width: 90%;
    /* <IE7> */
    *width: expression(Math.floor(0.9 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-90 {
    margin-left: 90%;
  }

  .suffix-90 {
    margin-right: 90%;
  }

  .push-90 {
    left: 90%;
    /* <IE7> */
    *left: expression(Math.floor(0.9 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-90 {
    left: -90%;
    /* <IE7> */
    *left: expression(Math.floor(-0.9 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-95 {
    float: left;
    width: 95%;
    /* <IE7> */
    *width: expression(Math.floor(0.95 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-95 {
    margin-left: 95%;
  }

  .suffix-95 {
    margin-right: 95%;
  }

  .push-95 {
    left: 95%;
    /* <IE7> */
    *left: expression(Math.floor(0.95 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-95 {
    left: -95%;
    /* <IE7> */
    *left: expression(Math.floor(-0.95 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-33 {
    float: left;
    width: 33.33333%;
    /* <IE7> */
    *width: expression(Math.floor(0.33333 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-33 {
    margin-left: 33.33333%;
  }

  .suffix-33 {
    margin-right: 33.33333%;
  }

  .push-33 {
    left: 33.33333%;
    /* <IE7> */
    *left: expression(Math.floor(0.33333 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-33 {
    left: -33.33333%;
    /* <IE7> */
    *left: expression(Math.floor(-0.33333 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-66 {
    float: left;
    width: 66.66667%;
    /* <IE7> */
    *width: expression(Math.floor(0.66667 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .prefix-66 {
    margin-left: 66.66667%;
  }

  .suffix-66 {
    margin-right: 66.66667%;
  }

  .push-66 {
    left: 66.66667%;
    /* <IE7> */
    *left: expression(Math.floor(0.66667 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .pull-66 {
    left: -66.66667%;
    /* <IE7> */
    *left: expression(Math.floor(-0.66667 * (this.parentNode.offsetWidth - parseFloat(this.parentNode.currentStyle.paddingLeft) - parseFloat(this.parentNode.currentStyle.paddingRight))) + 'px');
    /* </IE7> */
  }

  .grid-100 {
    clear: both;
    width: 100%;
  }
}

/* ALIGNMENT */

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

.text-align-left {
  text-align: left;
}

.text-align-right {
  text-align: right;
}

.margin-0-auto {
  margin: 0 auto;
}

.float-left {
  float: left;
}

.float-right {
  float: right;
}

/* POSITION */

.position-relative {
  position: relative;
}

.position-absolute {
  position: absolute;
}

.position-fixed {
	position: fixed;
}

.top-0 {
  top: 0;
}

.right-0 {
  right: 0;
}

.bottom-0 {
  bottom: 0;
}

.left-0 {
  left: 0;
}

/* DISPLAY NONE */

.display-none {
  display: none;
}

/* Z-INDEX */

.z-index--1 {
	z-index: -1;
}

.z-index-0 {
  z-index: 0;
}

.z-index-1 {
  z-index: 1;
}

.z-index-2 {
  z-index: 2;
}

.z-index-3 {
  z-index: 3;
}

.z-index-4 {
  z-index: 4;
}

.z-index-5 {
  z-index: 5;
}

.z-index-6 {
  z-index: 6;
}

.z-index-7 {
  z-index: 7;
}

.z-index-8 {
  z-index: 8;
}

.z-index-9 {
  z-index: 9;
}

.z-index-10 {
  z-index: 10;
}/******/
/*** FLEX BOX ***/
/******/

.display-flex {
	display: -webkit-box;
  	display: -webkit-flex;
  	display: -ms-flexbox;
  	display: flex;
  	align-items: center;
  	justify-content: center;
}

.flex-wrap-wrap {
	flex-wrap: wrap;
}

.align-items-flex-start {
	align-items: flex-start;
}

.align-items-flex-end {
	align-items: flex-end;
}

.align-items-stretch {
	align-items: stretch;
}

.justify-content-center {
	justify-content: center!important;
}

.justify-content-flex-start {
	justify-content: flex-start;
}

.justify-content-flex-end {
	justify-content: flex-end;
}

.justify-content-space-between {
	justify-content: space-between;
}

.flex-direction-column {
	flex-direction: column;
}

.flex-direction-column-reverse {
	flex-direction: column-reverse;
}

.flex-direction-row {
	flex-direction: row;
}

.flex-direction-row-reverse {
	flex-direction: row-reverse;
}

.flex-grow-1 {
	flex-grow: 1;
}

/******/
/* MEDIA QUERIES */
/******/

@media screen and (max-width: 47.9375rem) {
	
	.mobile-align-items-center {
		align-items: center!important;
	}
	
	.mobile-align-items-flex-start {
		align-items: flex-start!important;
	}
	
	.mobile-align-items-flex-end {
		align-items: flex-end!important;
	}
	
	.mobile-justify-content-center {
		justify-content: center!important;
	}

	.mobile-justify-content-flex-start {
		justify-content: flex-start!important;
	}

	.mobile-justify-content-flex-end {
		justify-content: flex-end!important;
	}

	.mobile-flex-wrap-wrap {
		flex-wrap: wrap!important;
	}
	
	.mobile-flex-direction-column {
		flex-direction: column!important;
	}
	
	.mobile-flex-direction-column-reverse {
		flex-direction: column-reverse!important;
	}
	
	.mobile-flex-direction-row-reverse {
		flex-direction: row-reverse!important;
	}

}/******/
/*** PADDING ***/
/******/

.padding-equalize {
	padding-left: .5rem;
	padding-right: .5rem;
}

.padding-equalize > * {
	padding-left: .5rem;
	padding-right: .5rem;
}

/* PADDING MODIFIERS */

.padding-global {
	padding-top: 1.25rem;
	padding-bottom: 1.25rem;
}

.padding-top {
	padding-top: 1.25rem;
}

.padding-bottom {
	padding-bottom: 1.25rem;
}

.padding-global-2x {
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
}

.padding-top-2x {
	padding-top: 2.5rem;
}

.padding-bottom-2x {
	padding-bottom: 2.5rem;
}

.padding-global-3x {
	padding-top: 3.75rem;
	padding-bottom: 3.75rem;
}

.padding-top-3x {
	padding-top: 3.75rem;
}

.padding-bottom-3x {
	padding-bottom: 3.75rem;
}

.padding-global-half {
	padding-top: .75rem;
	padding-bottom: .75rem;
}

.padding-top-half {
	padding-top: .75rem;
}

.padding-bottom-half {
	padding-bottom: .75rem;
}

.padding-top-0 {
	padding-top: 0;
}

.padding-right-0 {
	padding-right: 0;
}

.padding-bottom-0 {
	padding-bottom: 0;
}

.padding-left-0 {
	padding-left: 0;
}

/* SUB-GRIDS */

.grid-parent .grid-33 {
	padding-left: .33rem;
	padding-right: .33rem;
}
	
.grid-parent .grid-33:nth-child(3n+1) {
	padding-left: 0;
	padding-right: .66rem;
}
	
.grid-parent .grid-33:nth-child(3n+3) {
	padding-left: .66rem;
	padding-right: 0;
}

@media screen and (min-width: 48rem) {
	
	.padding-equalize {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}

	.padding-equalize > * {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
	
}

@media (max-width: 47.9375rem) {
	
	.padding-global-3x {
		padding-top: 2.25rem;
		padding-bottom: 2.25rem;
	}

	.padding-top-3x {
		padding-top: 2.25rem;
	}

	.padding-bottom-3x {
		padding-bottom: 2.25rem;
	}
	
	.padding-global-2x {
		padding-top: 1.5rem;
		padding-bottom: 1.5rem;
	}

	.padding-top-2x {
		padding-top: 1.5rem;
	}

	.padding-bottom-2x {
		padding-bottom: 1.5rem;
	}
	
	/* SUB-GRIDS */
	
	.grid-parent .mobile-grid-50:nth-child(2n+1) {
		padding-left: 0;
		padding-right: .5rem;
	}
	
	.grid-parent .grid-33:nth-child(2n+2) {
		padding-left: .5rem;
		padding-right: 0;
	}
	
}/******/
/*** VARIABLES ***/
/******/

:root, :host {
    --color-blue: #040825;
	--color-light-blue: #3498db;
    --color-white: #FFFFFF;
    --color-black: #000;
    --font-weight-thin: 100;
    --font-weight-extralight: 200;
    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --font-weight-black: 900;
    --tracking-tighter: -.05em;
    --tracking-tight: -.025em;
    --tracking-normal: 0em;
    --tracking-wide: .025em;
    --tracking-wider: .05em;
    --tracking-widest: .1em;
    --leading-tight: 1;
	--leading-snug: 1.25;
    --leading-base: 1.375;
    --leading-normal: 1.5;
    --leading-relaxed: 1.625;
    --leading-loose: 2;
    --radius-xs: .125rem;
    --radius-sm: .25rem;
    --radius-md: .375rem;
    --radius-lg: .5rem;
    --radius-xl: .75rem;
    --radius-2xl: 1rem;
    --radius-3xl: 1.5rem;
    --radius-4xl: 2rem;
    --shadow-2xs: 0 0.0625rem #0000000d;
    --shadow-xs: 0 0.0625rem 0.125rem 0 #0000000d;
    --shadow-sm: 0 0.0625rem 0.1875rem 0 #0000001a, 0 0.0625rem 0.125rem -0.0625rem #0000001a;
    --shadow-md: 0 0.25rem 0.375rem -0.0625rem #0000001a, 0 0.125rem 0.25rem -0.125rem #0000001a;
    --shadow-lg: 0 0.625rem 0.9375rem -0.1875rem #0000001a, 0 0.25rem 0.375rem -0.25rem #0000001a;
    --shadow-xl: 0 1.25rem 1.5625rem -0.3125rem #0000001a, 0 0.5rem 0.625rem -0.375rem #0000001a;
    --shadow-2xl: 0 1.5625rem 3.125rem -0.75rem #00000040;
	--space: 2rem;
  	--space-xs: calc(var(--space) / 3);
  	--space-sm: calc(var(--space) / 2);
  	--space-md: calc(var(--space) * 2);
	--spacing: .25rem;
	--text-xs: .75rem;
    --text-sm: .875rem;
    --text-base: 1rem;
    --text-lg: 1.125rem;
    --text-xl: 1.25rem;
    --text-2xl: 1.5rem;
    --text-3xl: 1.875rem;
    --text-4xl: 2.25rem;
    --text-5xl: 3rem;
    --text-6xl: 3.75rem;
    --text-7xl: 4.5rem;
    --text-8xl: 6rem;
    --text-9xl: 8rem;
    --padding-base: 1.25rem;
    --padding-2xl: 2.5rem;
    --padding-3xl: 3.75rem;
    --padding-4xl: 5rem;
    --padding-5xl: 6.25rem;
    --padding-6xl: 7.5rem;
    --padding-7xl: 8.75rem;
    --padding-8xl: 10rem;
    --padding-9xl: 11.25rem;
    --inset-shadow-2xs: inset 0 0.0625rem #0000000d;
    --inset-shadow-xs: inset 0 0.0625rem 0.0625rem #0000000d;
    --inset-shadow-sm: inset 0 0.125rem 0.25rem #0000000d;
    --drop-shadow-xs: 0 0.0625rem 0.0625rem #0000000d;
    --drop-shadow-sm: 0 0.0625rem 0.125rem #00000026;
    --drop-shadow-md: 0 0.1875rem 0.1875rem #0000001f;
    --drop-shadow-lg: 0 0.25rem 0.25rem #00000026;
    --drop-shadow-xl: 0 0.5625rem 0.4375rem #0000001a;
    --drop-shadow-2xl: 0 1.5625rem 1.5625rem #00000026;
    --text-shadow-2xs: 0rem 0.0625rem 0rem #00000026;
    --text-shadow-xs: 0rem 0.0625rem 0.0625rem #0003;
    --text-shadow-sm: 0rem 0.0625rem 0rem #00000013, 0rem 0.0625rem 0.0625rem #00000013, 0rem 0.125rem 0.125rem #00000013;
    --text-shadow-md: 0rem 0.0625rem 0.0625rem #0000001a, 0rem 0.0625rem 0.125rem #0000001a, 0rem 0.125rem 0.25rem #0000001a;
    --text-shadow-lg: 0rem 0.0625rem 0.125rem #0000001a, 0rem 0.1875rem 0.125rem #0000001a, 0rem 0.25rem 0.5rem #0000001a;
    --ease-in: cubic-bezier(.4, 0, 1, 1);
    --ease-out: cubic-bezier(0, 0, .2, 1);
    --ease-in-out: cubic-bezier(.4, 0, .2, 1);
    --animate-spin: spin 1s linear infinite;
    --animate-ping: ping 1s cubic-bezier(0, 0, .2, 1) infinite;
    --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;
    --animate-bounce: bounce 1s infinite;
    --blur-xs: 0.25rem;
    --blur-sm: 0.5rem;
    --blur-md: 0.75rem;
    --blur-lg: 1rem;
    --blur-xl: 1.5rem;
    --blur-2xl: 2.5rem;
    --blur-3xl: 4rem;
    --perspective-dramatic: 6.25rem;
    --perspective-near: 18.75rem;
    --perspective-normal: 31.25rem;
    --perspective-midrange: 50rem;
    --perspective-distant: 75rem;
    --aspect-video: 16/9;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}/******/
/*** COLOR ***/
/******/

/** BACKGROUNDS + TEXT **/

.background-black {
	background-color: var(--color-black);
	color: var(--color-white);
}

.background-blue {
	background-color: var(--color-blue);
	color: var(--color-white);
}

.background-white {
	background-color: var(--color-white);
	color: var(--color-blue);
}

/** LINKS **/

nav li a {
	color: var(--color-white);
}

.background-black a, .background-blue a {
	color: var(--color-white);
}

.background-white a {
	color: var(--color-blue);
}

/** BUTTONS **/

/* BLUE */

a.button.primary, #menu-cta-menu li a, .gloversubmit {
	background-color: var(--color-white);
	color: var(--color-blue);
	border: solid .0625rem var(--color-white);
}

a.button.secondary {
	background-color: transparent;
	color: var(--color-white);
}

.background-white a.button.primary {
	background-color: transparent;
	border: solid .0625rem var(--color-blue);
}

/* GRAVITY FORMS */

.background-blue legend.gform-field-label, .background-blue label.gform-field-label, .background-blue div.gfield_description, .background-blue .section-comments form input[type=submit], form.post-password-form p {
color: var(--white)!important;
}
/******/
/*** TYPOGRAPHY ***/
/******/

body {
	font-family: "halyard-display", sans-serif;
	font-size: var(--text-lg);
	font-weight: var(--font-weight-light);
	line-height: var(--leading-normal);
	font-style: normal;
	padding: 0;
	margin: 0;
    position: relative;
  	font-optical-sizing: auto;
}

h1, h2, h3 {
	font-weight: var(--font-weight-extralight);
	line-height: var(--leading-tight);
	-moz-osx-font-smoothing: grayscale; /*(For Firefox)*/
	-webkit-font-smoothing: antialiased; /*(For Chrome and Safari)*/
}

h1 {
	font-size: var(--text-8xl);
	margin-block-start: .75rem;
	margin-block-end: .75rem;
}

h2 {
	font-size: var(--text-7xl);
	margin-block-start: .625rem;
	margin-block-end: .625rem;
}

h3 {
	font-size: var(--text-5xl);
	margin-block-start: .5rem;
	margin-block-end: .5rem;
}

h4 {
	font-size: var(--text-3xl);
	font-weight: var(--font-weight-extralight);
	margin-block-start: .375rem;
	margin-block-end: .375rem;
}

h5 {
	font-size: var(--text-2xl);
	margin-block-start: .25rem;
	margin-block-end: .25rem;
}

h6 {
	font-size: var(--text-xl);
	margin-block-start: .125rem;
	margin-block-end: .125rem;
}

em {
	font-style: italic;
}

p, blockquote, ul, li, .gform-theme--framework .gform-field-label, .gform_footer input.gform_button, #field_submit .gform-button.gform-button--white.button {
	margin-block-start: .75rem;
	margin-block-end: .5rem;
}

p, ul, li {
	font-size: var(--text-lg);
	margin-block-start: .625rem;
	margin-block-end: .625rem;
}

nav li {
	margin-block-start: 0!important;
	margin-block-end: 0!important;
}

nav li a {
	padding: .625rem 0;
}

.h1 {
	font-size: var(--text-8xl);
	font-weight: var(--font-weight-extralight);
	line-height: var(--leading-base);
	margin-block-start: .75rem;
	margin-block-end: .75rem;
}

.h2 {
	font-size: var(--text-7xl);
	font-weight: var(--font-weight-extralight);
	line-height: var(--leading-base);
	margin-block-start: .625rem;
	margin-block-end: .625rem;
}

.h3 {
	font-size: var(--text-5xl);
	font-weight: var(--font-weight-extralight);
	line-height: var(--leading-base);
	margin-block-start: .5rem;
	margin-block-end: .5rem;
}

.h4 {
	font-size: var(--text-3xl);
	font-weight: var(--font-weight-extralight);
	line-height: var(--leading-base);
	margin-block-start: .375rem;
	margin-block-end: .375rem;
}

.h5 {
	font-size: var(--text-2xl);
	margin-block-start: .25rem;
	margin-block-end: .25rem;
}

.h6 {
	font-size: var(--text-xl);
	margin-block-start: .125rem;
	margin-block-end: .125rem;
}

.p {
	font-size: var(--text-lg);
	font-weight: var(--font-weight-light);
	line-height: var(--leading-normal);	
}

p.large {
	font-size: var(--text-2xl);
}

/* BLOG */

/* GRAVITY FORMS */

legend.gform-field-label, label.gform-field-label, div.gfield_description {
	font-size: var(--text-lg);
}

/******/
/* MEDIA QUERIES */
/******/

@media screen and (min-width: 48rem) and (max-width: 100rem) {
	
	h1 {
		font-size: var(--text-7xl);
	}

	h2 {
		font-size: var(--text-6xl);
	}

	h3 {
		font-size: var(--text-4xl);
	}

	h4 {
		font-size: var(--text-2xl);
	}

	h5 {
		font-size: var(--text-xl);
	}

	h6 {
		font-size: var(--text-lg);
	}
	
	.h1 {
		font-size: var(--text-7xl);
	}

	.h2 {
		font-size: var(--text-6xl);
	}

	.h3 {
		font-size: var(--text-4xl);
	}

	.h4 {
		font-size: var(--text-2xl);
	}

	.h5 {
		font-size: var(--text-xl);
	}

	.h6 {
		font-size: var(--text-lg);
	}
	
}

@media screen and (max-width: 47.9375rem) {
	
	h1 {
		font-size: var(--text-4xl);
	}

	h2 {
		font-size: var(--text-3xl);
	}

	h3 {
		font-size: var(--text-2xl);
	}

	h4 {
		font-size: var(--text-2xl);
	}

	h5 {
		font-size: var(--text-lg);
	}

	h6 {
		font-size: var(--text-lg);
	}
	
	.h1 {
		font-size: var(--text-4xl);
	}

	.h2 {
		font-size: var(--text-3xl);
	}

	.h3 {
		font-size: var(--text-2xl);
	}

	.h4 {
		font-size: var(--text-2xl);
	}

	.h5 {
		font-size: var(--text-lg);
	}

	.h6 {
		font-size: var(--text-lg);
	}

}/******/
/*** BUTTONS ***/
/******/

.button-container {
	padding: 1.75rem 0 .875rem 0;
	width: 100%;
	display: -webkit-box;
  	display: -webkit-flex;
  	display: -ms-flexbox;
  	display: flex;
	gap: 1.5rem;
}

.button-container-small {
	padding: .75rem 0;
	width: 100%;
}

a, a.button, .background-black .gform_footer input.gform_button, .gform_footer input.gform_button, input[type=password], form.post-password-form input[type=submit], .gloversubmit {
	cursor: pointer;
	-webkit-transition: all .2s ease-in-out, border .2s ease-in-out;
	-moz-transition: all .2s ease-in-out, border .2s ease-in-out;
	-o-transition: all .2s ease-in-out, border .2s ease-in-out;
	transition: all .2s ease-in-out, border .2s ease-in-out;
}

a.button, #menu-cta-menu li a, .gloversubmit {
	border-radius: 0;
	padding: .625rem 1.125rem .75rem 1.125rem;
	text-decoration: none;
	border: none;
}

a.text-link, p.text-link {
	text-decoration: none;
}

a.button:hover, nav a:hover, input[type=password]:hover, form.post-password-form input[type=submit]:hover, .gform_footer input.gform_button:hover, form.post-password-form input[type=submit]:hover, body .gform_wrapper .gform_footer input[type=submit]:hover, .gloversubmit:hover {
	opacity: .6!important;
}

a.button.tertiary:after, a.text-link:after, p.text-link:after {
	content: '›';
	margin-left: .5rem;
}

a.button.tertiary:after:hover {
	margin-left: .75rem;
}

.gloversubmit {
	font-size: 1.125rem!important;
	padding: 1.25rem!important;
}

@media screen and (max-width: 47.9375rem) {
	
	.button-container {
		padding-top: .5rem;
		gap: 1rem;
	}
	
}
/******/
/*** MENU ***/
/******/

.global-nav {
	width: 100%;
	position: fixed;
	top: 2rem;
	left: 0;
	z-index: 100;
	-webkit-transition: top .6s;
	-o-transition: top .6s;
	transition: top .6s;
}

.global-nav nav.grid-container {
	padding-left: 1.5rem;
}

.navigation__logo {
	overflow-x: clip;
	justify-content: flex-start;
	padding-left: 0!important;
	padding-right: 0!important;
}

.navigation__logo img {
	min-width: 200%;
}

.global-nav.scrolling_up {
	top: 0;
	background-color: var(--color-white);
	-webkit-transition: all .2s ease-in-out, border .2s ease-in-out;
	-moz-transition: all .2s ease-in-out, border .2s ease-in-out;
	-o-transition: all .2s ease-in-out, border .2s ease-in-out;
	transition: all .2s ease-in-out, border .2s ease-in-out;
}

.global-nav.scrolling_down {
	top: -15rem;
	background-color: transparent;
	-webkit-transition: all .2s ease-in-out, border .2s ease-in-out;
	-moz-transition: all .2s ease-in-out, border .2s ease-in-out;
	-o-transition: all .2s ease-in-out, border .2s ease-in-out;
	transition: all .2s ease-in-out, border .2s ease-in-out;
}

.global-nav.scrolling_up li a {
	color: var(--color-blue)!important;
}

.global-nav.scrolling_up #menu-cta-menu li a {
	background-color: var(--color-blue);
	color: var(--color-white)!important;
}

.global-nav.scrolling_up .navigation__logo {
	justify-content: flex-end;
}

.navigation {
	display: inline-block;
}

.faq-drawer input[type="checkbox"] {
	display: none;
}

@media screen and ( max-width: 47.9375rem ) {
	
	.global-nav {
		top: 0;
	}
	
	.navigation {
		position: relative;
		padding: .625rem .125rem .125rem .125rem;
	}
	
	.global-nav.scrolling_up .navigation {
		padding-top: 0!important;
	}
	
	.navigation__logo {
		width: 10rem;
		padding-left: 1.3125rem;
	}
	
	.navigation__wrapper {
		flex-grow: 1;
		padding-right: 1rem;!important;
	}

	.navigation__links {
		position: fixed;
		width: calc(100% - 5rem);
		height: 100vh;
		padding-top: 1.5rem;
		left: -63rem;
		top: -.625rem;
		transition: left .2s ease-in;
		background: var(--color-white);
		color: var(--color-black);
		list-style: none;
		box-shadow: .0625rem .0625rem .625rem 0rem rgba(0,0,0,0.75);
		flex-direction: column;
		justify-content: flex-start;
	}
	
	.navigation__links li {
		padding: .5rem 1.5rem;
		text-align: right;
		width: 84%;
		flex-basis: 0;
	}
	
	.navigation__links a {
		color: var(--black);
		text-decoration: none;
		font-size: var(--text-2xl);
	}
	
	#hamburger {
		visibility: hidden;
		width: 0;
	}
	
	.navigation__button {
		position: relative;
		display: inline-block;
		width: 2.25rem;
		height: 2rem;
		background: transparent;
		cursor: pointer;
	}
	
	.navigation__button span {
		position: absolute;
		right: 0;
		display: inline-block;
		width: 1.5rem;
		height: .125rem;
		background-color: var(--color-white);
		transform-origin: center;
		transition: opacity 0.2s linear, all 0.3s linear;
	}
	
	.global-nav.scrolling_up .navigation__button span {
		background-color: var(--color-blue);
	}
	
	.navigation__button span:nth-of-type(1) {
		top: .5625rem;
	}
	
	.navigation__button span:nth-of-type(2) {
		top: .9375rem;
	}
	
	.navigation__button span:nth-of-type(3) {
		top: 1.3125rem;
	}

/* Here comes the magic */
	#hamburger:checked ~ .navigation__links {
  /* Or it can be "input[type="checkbox"] ~ .navigation__links" */
		left: 0;
	}

/* Styles for our "close" button */
	#hamburger:checked ~ .navigation__button span:nth-of-type(1) {
		transform: rotate(45deg);
		top: 1rem;
	}
	
	#hamburger:checked ~ .navigation__button span:nth-of-type(2) {
		opacity: 0;
	}
	
	#hamburger:checked ~ .navigation__button span:nth-of-type(3) {
		transform: rotate(-45deg);
		top: 1rem;
	}
	
	/* ACCORDION */
	.faq-drawer__content-wrapper {
		line-height: 1.35;
		max-height: 0rem;
		overflow: hidden;
		transition: 0.25s ease-in-out;
	}
	
	.faq-drawer__title {
		display: block;
		padding: 0;
		position: relative;
		margin-bottom: 0;
		transition: all 0.2s ease-out;
	}
	
	.faq-drawer__title::after {
		border-style: solid;
		border-width: .0625rem .0625rem 0 0;
		content: " ";
		display: inline-block;
		float: right;
		height: .625rem;
		left: -.125rem;
		position: relative;
		right: 1.5em;
		top: .125rem;
		transform: rotate(135deg);
		transition: 0.3s ease-in-out;
		vertical-align: top;
		width: .625rem;
	}
	
	.faq-drawer__trigger:checked + .faq-drawer__title + .faq-drawer__content-wrapper {
		max-height: 100vh;
	}
	
	.faq-drawer__trigger:checked + .faq-drawer__title::after {
		transform: rotate(-45deg);
		transition: 0.2s ease-in-out;
	}
	
}/******/
/*** SECTIONS ***/
/******/

/* CARDS */

.cards .container {
  position: relative;
  max-width: 80rem;
  gap: 1.5rem;
  margin: 3.125rem auto;
  align-items: center;
}

.cards .card {
  margin: 0;
  padding-left: 4.5rem;
  padding-right: 4.5rem;
  box-sizing: border-box;
  border-radius: var(--radius-3xl);
  position: sticky;
  color: var(--color-white); 
}

.cards .card-0 {
  top: 3rem;
}

.cards .card-1 {
  top: 6rem;
}

.cards .card-2 {
  top: 9rem;
}

.cards .card-3 {
  top: 12rem;
}

.cards a.button {
	background-color: transparent!important;
	color: var(--color-white)!important;
	border: solid .0625rem var(--color-white)!important;
}

/* COLUMNS */

.columns .grid-33 img {
	max-height: 4.5rem;
	max-width: 100%;
	width: auto;
}

.columns .grid-33 div {
	filter: drop-shadow(0 .25rem .5rem #f2f2f2);
	padding: 1rem 2rem;
}

/* FOOTER */

.copyright-utilities div {
	border-top: solid .0625rem var(--color-white);
	gap: 1.5rem;
}

.copyright-utilities .footer-utility {
	gap: .5rem;
}

.copyright-utilities .footer-utility li {
	margin-top: .5rem;
}

#menu-socials-menu {
	gap: 0;
}

#menu-footer-menu li a {
	text-decoration: none;
}

#menu-socials-menu li a {
	position: absolute;
	width: 100%;
	height: 3rem;
	top: 0;
	left: 0;
	text-indent: -1000rem;
	color: transparent;
}

#menu-socials-menu li {
	position: relative;
	width: 2rem;
	height: 2rem;
	text-align: right;
}

footer li.linkedin:before {
	content: url("../images/linkedin.svg");
}

/* HOW IT WORKS */

.step-rule {
	width: .125rem;
	height: 100%;
}

.how-it-works .number:last-child .step-rule {
	opacity: 0!important;
}

/* IMAGES */

.images .logo-container {
	height: 4.5rem;
}

/* INTRO STATEMENT FADE-ON-SCROLL */

.intro-simple, .intro-statement-fade-on-scroll {
	width: calc(100% - 3rem);
	border: solid 1.5rem white;
	border-radius: 3.5rem;
	overflow: clip;
	height: calc(100% - 3rem);
}

.intro-statement-fade-on-scroll {
	padding-top: 25vh;
	padding-bottom: 25vh;
	color: var(--color-white);
}

.intro-statement-fade-on-scroll .grid-container-full {
	max-width: 135rem;
}

/* INTRO VIDEO */

.intro-video {
	overflow: clip;
}

.height-100 {
	height: 100vh;
}

.height-60 {
	height: 60vh;
}

#intro-mask-zoom {
  	height: 100vh;
  	position: relative;
}

.frame-overlay {
  	position: absolute;
  	top: 0;
  	left: 0;
  	z-index: 3;
  	width: 100%;
  	height: 100%;
  	transform: scale(3);
  	pointer-events: none;
}

.frame-border {
  	width: 100%;
  	height: 100%;
  	border: 2rem solid white;
  	border-radius: 3.5rem;
  	box-sizing: border-box;
}

.border-2 {
	border-radius: 0rem;
}

.video-background-layer {
  	position: absolute;
  	top: 0;
  	left: 0;
  	width: 100%;
  	height: 100%;
  	z-index: 1;
}

.video-background-layer video {
  	width: 100%;
  	height: 100%;
  	object-fit: cover;
}

#intro-mask-zoom .content-layer {
  	position: relative;
	z-index: 2;
}

.intro-video p,
.intro-static p {
	font-size: var(--text-2xl);
}
.intro-static {
    position: relative;
    overflow: hidden;
    min-height: 100vh;
    background-color: #0d0e2c;
    background-image:
        radial-gradient(
            ellipse 70% 55% at 18% 32%,
            rgba(120, 124, 215, 0.78) 0%,
            rgba(80, 84, 180, 0.45) 22%,
            rgba(40, 44, 110, 0.25) 45%,
            transparent 70%
        ),
        linear-gradient(135deg, #1a1d52 0%, #0d0e2c 60%, #050614 100%);
}

.intro-static .content-layer {
    position: relative;
    z-index: 3;
    min-height: 100vh;
}

.intro-static .static-hero-media {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
}

.intro-static .static-hero-scrim {
    position: absolute;
    inset: 0;
    z-index: 2;
    background: linear-gradient(
        90deg,
        rgba(13, 14, 44, 0.30) 0%,
        rgba(13, 14, 44, 0.15) 35%,
        rgba(13, 14, 44, 0.00) 70%
    );
    pointer-events: none;
}

@media (max-width: 768px) {
    .intro-static .static-hero-scrim {
        background: linear-gradient(
            180deg,
            rgba(13, 14, 44, 0.40) 0%,
            rgba(13, 14, 44, 0.20) 50%,
            rgba(13, 14, 44, 0.05) 100%
        );
    }
}

/* LOGIN */

#redirectform {
	display: -webkit-box;
  	display: -webkit-flex;
  	display: -ms-flexbox;
  	display: flex;
  	align-items: center;
  	justify-content: center;
	gap: 1rem;
}

/* LOGOS */

.logo-marquee {
    overflow: hidden;
    width: 100%;
    mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
    -webkit-mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
}

.logo-track {
    display: flex;
    width: max-content;
    gap: 3rem; 
}

.logo-group {
    display: flex;
    align-items: center;
    gap: 3rem;
}

.logo-item img {
    display: block;
    height: auto;
    max-width: 11rem !important;
    filter: grayscale(100%);
    transition: filter 0.3s ease;
}

.logo-item img:hover {
    filter: grayscale(0);
}

.logo-group img {
    margin-right: 0 !important;
}


/* NUMBERS STICKY SIDEBAR */

.numbers-sticky-sidebar .number-rule {
	width: 100%;
	height: .125rem;
}

/* PERSPECTIVE */

.perspectives .padding-equalize {
	padding-left: 3rem;
	padding-right: 3rem;
}

.perspectives .swiper {
	padding-left: 0!important;
	padding-right: 0!important;
}

.swiper-pagination-bullet:not(.swiper-pagination-bullet-active) {
	background-color: var(--color-white);
}

/* REDIRECT MODAL */

.redirect-modal {
	margin: 0 auto;
}

.redirect-modal p {
	color: var(--color-white);
	max-width: 37rem;
	text-wrap: balance;
}

/* SCROLLING NUMBERS */

.scrolling-numbers .container {
	max-width: 80rem;
}

/* SERVICES */

.services .service-card {
	border-top: solid .0625rem var(--color-black);
	border-right: solid .0625rem var(--color-black);
}

/* SERVICES ACCORDION */

.services-accordion .accordion-panel p {
  color: var(--color-white);
  -moz-transform: translateX(1.875rem);
  -webkit-transform: translateX(1.875rem);
  -o-transform: translateX(1.875rem);
  -ms-transform: translateX(1.875rem);
  transform: translateX(1.875rem);
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -ms-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}

.services-accordion #wrapper .accordion-panel:nth-child(1) {
  z-index: 10;
  background-color: rgba(4, 8, 37, 1);
}

.services-accordion #wrapper .accordion-panel:nth-child(2) {
  z-index: 20;
  background-color: rgba(4, 8, 37, .95);
}

.services-accordion #wrapper .accordion-panel:nth-child(3) {
  z-index: 30;
  background-color: rgba(4, 8, 37, .9);
}

.services-accordion #wrapper .accordion-panel:nth-child(4) {
  background-color: rgba(4, 8, 37, .85);
  z-index: 40;
}

.services-accordion #wrapper .accordion-panel:nth-child(5) {
  background-color: rgba(4, 8, 37, .8);
  z-index: 50;
}

/* IMAGE SCROLLER */

.logo-overlay, .logo-overlay-right {
	z-index: 4;
	background-image: linear-gradient(90deg,var(--color-white),transparent);
	width: 7rem;
	height: 100%;
	position: absolute;
	inset: 0% auto 0% 0%;
}

.logo-overlay-right {
	background-image: linear-gradient(270deg,var(--color-white),transparent);
	inset: 0% 0% 0% auto;
}

.rotating-wrapper {
	padding: 1rem 0;
}

.rotating-wrapper p {
	height: 3.125rem;
	float: left;
	margin-right: 0.3em;
}

.rotating-wrapper span {
	float: left;
	overflow: hidden;
	position: relative;
	height: 6.125rem;
	top: .125rem;
}

.rotating-wrapper .rotating-inner {
	display: inline-block;
	position: relative;
	white-space: nowrap;
	top: 0;
	left: 0;

/*animation*/
-webkit-animation:move 6s;
   -moz-animation:move 6s;
    -ms-animation:move 6s;
     -o-animation:move 6s;
        animation:move 6s;
/*animation-iteration-count*/
-webkit-animation-iteration-count:infinite;
   -moz-animation-iteration-count:infinite;
    -ms-animation-iteration-count:infinite;
     -o-animation-iteration-count:infinite;
        animation-iteration-count:infinite;
/*animation-delay*/
-webkit-animation-delay:2s;
   -moz-animation-delay:2s;
    -ms-animation-delay:2s;
     -o-animation-delay:2s;
        animation-delay:2s;
}

.rotating-wrapper .rotating-inner h2 {
	margin-top: -1.625rem;
}

@keyframes move {
	0%  { top: 0; }
	33.3333% { top: -8.3125rem; }
	66.6666% { top: -16.625rem; }
	/* 75% { top: -25.875rem; } */
}

@-webkit-keyframes move {
	0%  { top: 0; }
	33.3333% { top: -8.3125rem; }
	66.6666% { top: -16.625rem; }
	/* 75% { top: -25.875rem; } */
}

@-moz-keyframes move {
	0%  { top: 0; }
	33.3333% { top: -8.3125rem; }
	66.6666% { top: -16.625rem; }
	/* 75% { top: -25.875rem; } */
}

@-o-keyframes move {
	0%  { top: 0; }
	33.3333% { top: -8.3125rem; }
	66.6666% { top: -16.625rem; }
	/* 75% { top: -25.875rem; } */
}

@keyframes move {
	0%  { top: 0; }
	33.3333% { top: -8.3125rem; }
	66.6666% { top: -16.625rem; }
	/* 75% { top: -25.875rem; } */
}

.video-container {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	padding-top: 0;
	margin-bottom: 0;
}

.video-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* FOOTER */

.footer-menu ul, .socials-menu ul {
	display: -webkit-box;
  	display: -webkit-flex;
  	display: -ms-flexbox;
  	display: flex;
  	align-items: flex-start;
  	justify-content: flex-start;
	flex-wrap: wrap;
}

.footer-menu li, .socials-menu li {
	width: calc(50% - .75rem);
	margin-bottom: .75rem;
}

.socials-menu li {
	width: calc(100% - .75rem);
	margin-bottom: .75rem;
}

.footer-watermark img {
	opacity: .05;
	margin-top: -7.5rem;
}

/* SECTIONS */

/* TEAM */

.team .sticky-aside img {
	max-width: 9rem;
	margin-top: 1.5rem;
}

.team-member {
	margin-bottom: 1.25rem;
}

.team-img {
	width: 2rem;
	height: 2rem;
	opacity: 1 !important;
	margin-left: -.25rem;
}


/* TEXT FORM */

.text-form .gform-theme--foundation .gform_fields {
	grid-row-gap: 1rem!important;
	row-gap: 1rem!important;
}

/* SCROLLING NUMBERS */
	
.scrolling-numbers h3 {
	line-height: var(--leading-base);
}

/* ==========================================================================
   HERO QUOTE OVERLAY (sits inside .intro-video and .intro-static heroes)
   ========================================================================== */

.intro-video .grid-container,
.intro-static .grid-container { position: relative; }

.hero-quote {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 28%;
  opacity: 0;
  animation: hq-fadein 0.6s ease 0.4s forwards;
}
@keyframes hq-fadein {
  from { opacity: 0; transform: translateY(calc(-50% + 16px)); }
  to   { opacity: 1; transform: translateY(-50%); }
}
.hq-inner {
  border-left: 1px solid rgba(255, 255, 255, 0.25);
  padding-left: 28px;
}
.hq-text {
  font-size: var(--text-base);
  font-weight: var(--font-weight-light);
  color: var(--color-white);
  opacity: 0.85;
  line-height: var(--leading-normal);
  margin-bottom: 20px;
  font-style: italic;
}
.hq-attr {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.hq-name {
  font-size: var(--text-sm);
  font-weight: 500;
  color: var(--color-white);
  opacity: 0.9;
}
.hq-role {
  font-size: var(--text-sm);
  font-weight: var(--font-weight-light);
  color: var(--color-white);
  opacity: 0.5;
  text-transform: uppercase;
  letter-spacing: 0.07em;
}

/* ==========================================================================
   WHAT WE DO (wwd)
   ========================================================================== */

.wwd-section {
  padding: 96px 6%;
  background: var(--color-blue);
}
.wwd-inner {
  max-width: 1160px;
  margin: 0 auto;
}
.wwd-header {
  display: flex;
  align-items: flex-start;
  gap: 80px;
  margin-bottom: 72px;
}
.wwd-title {
  font-size: var(--text-7xl);
  font-weight: var(--font-weight-extralight);
  line-height: var(--leading-tight);
  color: var(--color-white);
  letter-spacing: -0.02em;
  flex-shrink: 0;
}
.wwd-intro {
  flex: 1;
  font-size: var(--text-2xl);
  font-weight: var(--font-weight-light);
  line-height: var(--leading-normal);
  color: var(--color-white);
  opacity: 0.8;
  padding-top: 12px;
}
.wwd-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid rgba(255, 255, 255, 0.15);
  border-left: 1px solid rgba(255, 255, 255, 0.15);
}
.wwd-item {
  padding: 40px 36px;
  border-right: 1px solid rgba(255, 255, 255, 0.15);
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
  transition: background 0.2s ease;
}
.wwd-item:hover {
  background: rgba(255, 255, 255, 0.05);
}
.wwd-item-title {
  font-size: var(--text-xl);
  font-weight: 700;
  line-height: var(--leading-tight);
  color: var(--color-white);
  letter-spacing: -0.01em;
  margin-bottom: 14px;
}
.wwd-item-title::before {
  content: '';
  display: block;
  width: 28px;
  height: 1px;
  background: var(--color-white);
  opacity: 0.35;
  margin-bottom: 18px;
}
.wwd-item-desc {
  font-size: var(--text-lg);
  font-weight: 500;
  line-height: var(--leading-normal);
  color: var(--color-white);
  opacity: 0.75;
}
.wwd-header,
.wwd-item {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.55s ease, transform 0.55s ease;
}
.wwd-header.wwd-in,
.wwd-item.wwd-in {
  opacity: 1;
  transform: translateY(0);
}
.wwd-item:nth-child(2) { transition-delay: 0.1s; }
.wwd-item:nth-child(3) { transition-delay: 0.2s; }
.wwd-item:nth-child(5) { transition-delay: 0.1s; }
.wwd-item:nth-child(6) { transition-delay: 0.2s; }

/* ==========================================================================
   HOW AN ENGAGEMENT WORKS (hew) — Journey layout
   ========================================================================== */

.hew-section {
  padding: 96px 6%;
  background: var(--color-blue);
}
.hew-inner {
  max-width: 1160px;
  margin: 0 auto;
}
.hew-header {
  display: flex;
  align-items: flex-start;
  gap: 80px;
  margin-bottom: 96px;
}
.hew-title {
  font-size: var(--text-7xl);
  font-weight: var(--font-weight-extralight);
  line-height: var(--leading-tight);
  color: var(--color-white);
  letter-spacing: -0.02em;
  flex-shrink: 0;
  margin: 0;
}
.hew-intro {
  flex: 1;
  font-size: var(--text-2xl);
  font-weight: var(--font-weight-light);
  line-height: var(--leading-normal);
  color: var(--color-white);
  opacity: 0.8;
  padding-top: 12px;
  margin: 0;
}
.hew-journey {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 64px;
  position: relative;
}
.hew-journey::before {
  content: '';
  position: absolute;
  top: 5px;
  left: 0;
  right: 0;
  height: 1px;
  background: rgba(255, 255, 255, 0.15);
  pointer-events: none;
}
.hew-step {
  position: relative;
  padding-top: 32px;
  margin: 0;
}
.hew-step::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: var(--color-white);
  box-shadow: 0 0 0 4px var(--color-blue);
}
.hew-step-number {
  display: block;
  font-size: var(--text-sm);
  font-weight: 500;
  color: var(--color-white);
  opacity: 0.5;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  margin-bottom: 16px;
}
.hew-step-title {
  font-size: var(--text-xl);
  font-weight: 700;
  line-height: var(--leading-tight);
  color: var(--color-white);
  letter-spacing: -0.01em;
  margin: 0 0 14px;
}
.hew-step-desc {
  font-size: var(--text-lg);
  font-weight: 500;
  line-height: var(--leading-normal);
  color: var(--color-white);
  opacity: 0.75;
  margin: 0;
}
/* ==========================================================================
   TEAM LANDING (team_landing) — Landing page team grid
   ========================================================================== */
.team-landing-section {
    padding: 96px 6%;
}
.team-landing-section.background-blue {
    background: var(--color-blue);
}
.team-landing-section.background-white {
    background: var(--color-white);
}
.team-landing-inner {
    max-width: 1160px;
    margin: 0 auto;
}
.team-landing-header {
    margin-bottom: 64px;
    max-width: 720px;
}
.team-landing-header p {
    font-size: var(--text-2xl);
    font-weight: var(--font-weight-light);
    line-height: var(--leading-normal);
    opacity: 0.85;
    margin: 0;
}
.team-landing-section.background-blue .team-landing-header,
.team-landing-section.background-blue .team-landing-name,
.team-landing-section.background-blue .team-landing-title {
    color: var(--color-white);
}
.team-landing-section.background-white .team-landing-header,
.team-landing-section.background-white .team-landing-name,
.team-landing-section.background-white .team-landing-title {
    color: var(--color-black);
}
.team-landing-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 32px;
}
.team-landing-member {
    display: flex;
    flex-direction: column;
}
.team-landing-media {
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    margin-bottom: 20px;
}
.team-landing-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.team-landing-meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.team-landing-name {
    font-size: var(--text-xl);
    font-weight: 700;
    line-height: var(--leading-tight);
    letter-spacing: -0.01em;
    margin: 0;
}
.team-landing-title {
    font-size: var(--text-base);
    font-weight: var(--font-weight-light);
    line-height: var(--leading-normal);
    opacity: 0.75;
    margin: 0;
}
.team-landing-linkedin {
    display: inline-flex;
    align-items: center;
    margin-top: 8px;
    width: 22px;
    height: 22px;
}
.team-landing-linkedin img {
    width: 100%;
    height: 100%;
    display: block;
}
.team-landing-section.background-blue .team-landing-linkedin img {
    filter: brightness(0) invert(1);
}
@media screen and (min-width: 48rem) and (max-width: 100rem) {
	
	/* CARDS */
	
	.cards .card {
		padding-left: 6rem;
		padding-right: 6rem;
	}
	
	/* IMAGES */
	
	.images .grid-60 h2 {
		margin-block-start: 1.5rem;
		margin-block-end: 1.5rem;
	}
	
	/* INTRO */
	
	.intro-video .content-container,
	.intro-static .content-container {
		padding-top: 5rem;
	}
	
	.rotating-wrapper {
		padding: .75rem 0;
	}
	
	.rotating-wrapper h1 {
		max-width: 80%;
	}
	
	.rotating-wrapper p {
		height: 2.4375rem;
		float: left;
		margin-right: 0.3em;
	}
	
	.rotating-wrapper span {
		float: left;
		overflow: hidden;
		position: relative;
		height: 4.59375rem;
		top: .1rem;
	}

	.rotating-wrapper .rotating-inner h2 {
		margin-top: -1.1875rem;
	}

	@keyframes move {
		0%  { top: 0; }
		33.3333% { top: -6.234375rem; }
		66.6666% { top: -12.46875rem; }
		/* 75% { top: -18.703125rem; } */
	}

	@-webkit-keyframes move {
		0%  { top: 0; }
		33.3333% { top: -6.234375rem; }
		66.6666% { top: -12.46875rem; }
		/* 75% { top: -18.703125rem; } */
	}

	@-moz-keyframes move {
		0%  { top: 0; }
		33.3333% { top: -6.234375rem; }
		66.6666% { top: -12.46875rem; }
		/* 75% { top: -18.703125rem; } */
	}

	@-o-keyframes move {
		0%  { top: 0; }
		33.3333% { top: -6.234375rem; }
		66.6666% { top: -12.46875rem; }
		/* 75% { top: -18.703125rem; } */
	}

	@keyframes move {
		0%  { top: 0; }
		33.3333% { top: -6.234375rem; }
		66.6666% { top: -12.46875rem; }
		/* 75% { top: -18.703125rem; } */
	}
	
	/* NAV */
	
	.global-nav {
		top: 2.5rem;
	}
	
	nav img {
		max-width: 75%;
	}
	/* WHAT WE DO */
	.wwd-title { font-size: var(--text-6xl); }
	.wwd-grid { grid-template-columns: repeat(2, 1fr); }
	
	/* HOW AN ENGAGEMENT WORKS */
	.hew-title { font-size: var(--text-6xl); }
	
}

@media screen and (min-width: 48rem) {
	
	/* CARDS */
	
	.cards .card {
		min-height: 25rem;
	}
	
	/* HOW IT WORKS */
	
	.how-it-works .number {
		min-height: 20rem;
	}
	
	.how-it-works .step {
		width: 7.5rem;
	}
	
	.how-it-works .number .text {
		width: calc(100% - 7.5rem);
		padding-top: 1.5rem;
	}
	
	/* IMAGE TEXT */
	
	.image-text-image {
		display: inline-block;
		position: relative;
		margin-bottom: calc(50% + 3rem);
	}
	
	.image-text-image div {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}

	.image-text-content {
		padding: 0 .75rem 10rem;
	}
	
	/* NAV */
	
	.cta-container {
		min-width: 12.375rem;
		padding-left: 1.5rem;
	}
	
	/* NUMBERS STICKY SIDEBAR */
	
	.numbers-sticky-sidebar .number {
		padding-right: 1.5rem;
	}
	
	/* PERSPECTIVE */
	
	.perspectives .swiper-pagination {
		top: -87%;
		left: 56%!important;
		transform: rotate(90deg)!important;
	}
	
	/* SCROLLING NUMBERS */
	
	.scrolling-numbers .features-column .features-card {
		margin-bottom: 6rem;
	}
	
	/* SERVICES */
	
	.services .service-card {
		aspect-ratio: 1 / 1;
		overflow: clip;
		padding-top: 1.5rem;
		max-height: 15.375rem;
	}
	
	.services .service-card .service-title {
		min-height: 4.5rem;
		margin-bottom: calc(100% - 2.25rem);
		-webkit-transition: all .2s ease-in-out, border .2s ease-in-out;
		-moz-transition: all .2s ease-in-out, border .2s ease-in-out;
		-o-transition: all .2s ease-in-out, border .2s ease-in-out;
		transition: all .2s ease-in-out, border .2s ease-in-out;
	}

	.services .service-card:hover .service-title {
		margin-bottom: 0;
	}
	
	.services .service-card .service-desc {
		opacity: 0;
		-webkit-transition: all .2s ease-in-out, border .2s ease-in-out;
		-moz-transition: all .2s ease-in-out, border .2s ease-in-out;
		-o-transition: all .2s ease-in-out, border .2s ease-in-out;
		transition: all .2s ease-in-out, border .2s ease-in-out;
	}
	
	.services .service-card:hover .service-desc {
		opacity: 1;
	}
	
	/* SERVICES ACCORDION */
	
	.services-accordion .accordion-panel p {
  		opacity: 0;
  		margin: 0 3rem 3rem 3rem;
  		flex-basis: 100%;
	}
	
	.services-accordion .accordion-panel p.h2 {
		margin-left: 3rem;
		margin-bottom: 1rem;
	}

	.services-accordion .accordion-panel p.description {
		height: 10rem;
	}

	.services-accordion #wrapper {
		display: flex;
		flex-flow: row nowrap;
		height: 40rem;
		min-height: 40rem;
		align-items: stretch;
	}
	
	.services-accordion .accordion-panel {
		flex: 1;
		overflow: hidden;
		display: flex;
		flex-flow: row wrap;
		transition: all 0.6s cubic-bezier(0.65, 0.05, 0.36, 1);
		align-items: flex-end;
		align-content: flex-end;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
	}
	
	.services-accordion .accordion-panel.panel-hover {
		background-position: left center;
		flex-grow: 2.8;
	}
	
	.services-accordion .accordion-panel.panel-hover > p {
		transition-delay: 0.8s;
		opacity: 1;
		-moz-transform: translateX(0);
		-webkit-transform: translateX(0);
		-o-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
	}
	
	.services-accordion .accordion-panel.panel-hover > p.h2 {
		transition-delay: 0.4s!important;
	}
	
}

@media screen and (min-width: 64.0625rem) {
	
	/* SERVICES */
	
	.services .service-card .service-desc {
		opacity: 0;
	}
		
	.service-card:nth-child(2), .service-card:nth-child(3), .service-card:nth-child(4), .service-card:nth-child(5), .service-card:nth-child(6) {
		border-top: transparent;
	}
	
	.service-card:nth-of-type(5n+5) {
		border-right: transparent;
	}
	
	.service-card:nth-of-type(5n+1) {
		border-left: transparent;
	}
	
	/* TEAM */
	
	.team-member {
		position: relative;
		overflow: clip;
	}

	.team-member img {
		object-fit: cover;
		z-index: 1;
		transition: opacity 500ms;
	}
	
	.team-member:hover img {
		opacity: .1;
	}

	.team-member .team-bio {
		position: absolute;
		top: 0;
		z-index: 2;
		padding: .5rem 1.5rem;
	}
	
	.team-member .team-bio {
		opacity: 0;
		transition: opacity 500ms;
	}
	
	.team-member:hover .team-bio {
		opacity: 1;
  		animation: fade-in-bottom 500ms ease-in-out both;
	}
	
}


@media screen and (min-width: 48rem) and (max-width: 64rem) {
	
	.service-card {
		aspect-ratio: 1 / 1.25;
		padding-top: .5rem;
		padding-left: .75rem;
		padding-right: .75rem;
	}
	
	.services .service-card .service-title {
		min-height: 2.5rem;
	}
	
	.service-card:nth-child(2), .service-card:nth-child(3), .service-card:nth-child(4), .service-card:nth-child(5) {
		border-top: transparent;
	}
	
	.service-card:nth-child(6) {
		border-top: solid .0625rem var(--color-black);
	}
	
	.service-card:nth-of-type(4n+4) {
		border-right: transparent;
	}
	
	.service-card:nth-of-type(4n+1) {
		border-left: transparent;
	}
	
}

@media screen and (max-width: 47.9375rem) {
	
	.cards .card {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
	
	/* COLUMNS */

	.columns .grid-33 div {
		padding: .75rem 1rem;
	}
	
	/* FOOTER */
	
	.footer-watermark img {
		margin-top: -2.5rem;
	}
	
	footer .padding-equalize.padding-global-3x, footer .padding-equalize.padding-global-3x .padding-global-2x {
		padding-top: 0;
		padding-bottom: 0;
	}
	
	footer .padding-equalize.padding-global-3x .padding-global-2x {
		gap: .25rem;
	}
	
	#menu-footer-menu {
		margin-block-start: 0;
		margin-block-end: 0;
		gap: 0;
	}
	
	#menu-socials-menu {
		gap: 0;
		margin-top: 0;
		margin-bottom: 0;
	}
	
	#menu-socials-menu li {
		text-align: left;
	}
	
	.copyright-utilities .grid-100 {
		padding-top: 0;
		padding-bottom: 0;
	}
	
	.copyright-utilities .grid-100, .copyright-utilities .footer-utility {
		gap: .125rem;
	}
	
	/* HOW IT WORKS */
	
	.how-it-works .step {
		width: 3.5rem;
	}
	
	.how-it-works .number .text {
		width: calc(100% - 3.5rem);
		padding-top: .75rem;
	}
	
	/* IMAGE TEXT */
	
	.image-text-image {
		margin-bottom: 1.5rem;
	}
	
	.image-text-image div {
		padding-left: .75rem;
		padding-right: .75rem;
	}
	
	.intro-statement-fade-on-scroll {
		padding-top: 12.5vh;
		padding-bottom: 2rem;
	}
	
	/* INTRO SIMPLE */
	
	.intro-simple, .intro-statement-fade-on-scroll {
		width: calc(100% - 2rem);
		border: solid 1rem white;
		border-radius: 2rem;
		overflow: clip;
		height: calc(100% - 2rem);
		min-height: calc(100vh - 2rem);
		padding-top: 6rem;
	}
	
	/* INTRO VIDEO */
	
	.height-60 {
		height: 100vh;
	}
	
	.intro-video h1 {
		max-width: 92.5%;
		margin-block-end: 0;
	}
	
	.intro-video .content-container {
		padding-left: .5rem;
	}
	
	.rotating-wrapper {
		padding: .75rem 0;
	}
	
	.rotating-wrapper p {
		height: 1.02rem;
		float: left;
		margin-right: 0.3em;
	}
	
	.rotating-wrapper span {
		float: left;
		overflow: hidden;
		position: relative;
		height: 2.3rem;
		top: .1rem;
	}

	.rotating-wrapper .rotating-inner h2 {
		margin-top: -.594rem;
	}

	@keyframes move {
		0%  { top: 0; }
		33.3333% { top: -3.12rem; }
		66.6666% { top: -6.24rem; }
		/* 75% { top: -18.703125rem; } */
	}

	@-webkit-keyframes move {
		0%  { top: 0; }
		33.3333% { top: -3.12rem; }
		66.6666% { top: -6.24rem; }
		/* 75% { top: -18.703125rem; } */
	}

	@-moz-keyframes move {
		0%  { top: 0; }
		33.3333% { top: -3.12rem; }
		66.6666% { top: -6.24rem; }
		/* 75% { top: -18.703125rem; } */
	}

	@-o-keyframes move {
		0%  { top: 0; }
		33.3333% { top: -3.12rem; }
		66.6666% { top: -6.24rem; }
		/* 75% { top: -18.703125rem; } */
	}

	@keyframes move {
		0%  { top: 0; }
		33.3333% { top: -3.12rem; }
		66.6666% { top: -6.24rem; }
		/* 75% { top: -18.703125rem; } */
	}
	
	/* NAV */
	
	#menu-cta-menu li a {
		padding: .5rem 1rem .625rem 1rem;
	}
	
	/* PERSPECTIVE */

	.perspectives .padding-equalize {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
	
	/* SERVICES */
	
	.services .service-card {
		padding-top: .75rem;
		min-height: 11rem;
	}
	
	.service-card:nth-child(2), .service-card:nth-child(3) {
		border-top: transparent;
	}
	
	.service-card:nth-of-type(2n+2) {
		border-right: transparent;
	}
	
	.service-card:nth-of-type(2n+1) {
		border-left: transparent;
	}
	
	.services .service-card p {
		font-size: var(--text-base);
		margin-block-start: 0;
	}
	
	/* SERVICES ACCORDION */
	
	.services-accordion .accordion-panel p {
		margin: 0;
		transform: translateX(0rem);
		padding-left: 1rem;
		padding-right: 1rem;
	}
	
	.frame-border {
		border-width: 1rem;
		border-radius: 2rem;
	}

	.border-2 {
		border-radius: 0rem;
	}
	
	/* TEXT FORM */

	.text-form {
		padding-top: 6rem;
		padding-bottom: 2.5rem;
	}
/* HERO QUOTE OVERLAY */
	.hero-quote { display: none; }
	
	/* WHAT WE DO */
	.wwd-header { flex-direction: column; gap: 20px; }
	.wwd-title { font-size: var(--text-3xl); }
	.wwd-intro { font-size: var(--text-lg); }
	.wwd-grid { grid-template-columns: 1fr; }
	
	/* HOW AN ENGAGEMENT WORKS */
	.hew-section { padding: 64px 6%; }
	.hew-header { flex-direction: column; gap: 20px; margin-bottom: 64px; }
	.hew-title { font-size: var(--text-3xl); }
	.hew-intro { font-size: var(--text-lg); padding-top: 0; }
	.hew-journey { grid-template-columns: 1fr; gap: 48px; padding-left: 32px; }
	.hew-journey::before { top: 5px; bottom: 5px; left: 5px; right: auto; width: 1px; height: auto; }
	.hew-step { padding-top: 0; }
	.hew-step::before { top: 0; left: -32px; }
	
	/* LOGIN PAGE TEMPLATE */
	.page-template-login section.intro-video,
	.page-template-login .height-100 {
		width: 100% !important;
		height: auto !important;
		min-height: unset !important;
		padding-top: 48px !important;
		padding-bottom: 48px !important;
		box-sizing: border-box;
		border: none !important;
	}
	.page-template-login .redirect-form {
		width: 100% !important;
		padding: 0 20px;
		box-sizing: border-box;
	}
	.page-template-login #redirectform {
		flex-direction: column !important;
		width: 100% !important;
	}
	.page-template-login .gloveremail {
		width: 100% !important;
		box-sizing: border-box;
		margin-bottom: 12px;
	}
	.page-template-login .gloversubmit {
		width: 100% !important;
		box-sizing: border-box;
	}
	.page-template-login .position-fixed.bottom-0 {
		z-index: 10 !important;
	}
	/* TEAM LANDING */
	.team-landing-section { padding: 64px 6%; }
	.team-landing-header { margin-bottom: 40px; }
	.team-landing-header p { font-size: var(--text-lg); }
	.team-landing-grid { grid-template-columns: repeat(2, 1fr); gap: 24px; 
}

}

@media screen and (max-width: 37.5rem) {
	
	.services-accordion #wrapper {
	  display: flex;
	  flex-flow: column wrap;
	  height: auto;
	  min-height: 100vh;
	}
	
	.services-accordion .accordion-panel {
		min-height: 25rem;
		background-position: center top;
	}
	/* TEAM LANDING */
	.team-landing-grid { grid-template-columns: 1fr; gap: 32px; 
}
	

}/******/
/*** ACCORDION ***/
/******/

.accordion .faq-drawer__content-wrapper {
	line-height: 1.35;
	max-height: 0rem;
	overflow: hidden;
	transition: 0.25s ease-in-out;
}

.accordion .faq-drawer {
	margin-bottom: 1rem;
	border-radius: .5rem;
}

.accordion .faq-drawer__title {
	display: block;
	padding: 2rem;
	position: relative;
	margin-bottom: 0;
	transition: all 0.2s ease-out;
	cursor: pointer;
	font-size: 1.125rem;
}

.accordion .faq-drawer__content {
	padding: 0 2rem 2rem 2rem;
}
	
.accordion .faq-drawer__title::after {
	border-style: solid;
	border-width: .0625rem .0625rem 0 0;
	content: " ";
	display: inline-block;
	float: right;
	height: .625rem;
	left: -.125rem;
	position: relative;
	right: 1.5em;
	top: .125rem;
	transform: rotate(135deg);
	transition: 0.3s ease-in-out;
	vertical-align: top;
	width: .625rem;
}
	
.accordion .faq-drawer__trigger:checked + .faq-drawer__title + .faq-drawer__content-wrapper {
	max-height: 100vh;
}
	
.accordion .faq-drawer__trigger:checked + .faq-drawer__title::after {
	transform: rotate(-45deg);
	transition: 0.2s ease-in-out;
}/******/
/*** SCROLLED ***/
/******/

.js-scroll {
	opacity: 0;
	transition: opacity 500ms;
}

.logged-in .js-scroll, .paged .js-scroll, .page-template-proposal .js-scroll, .single-crb_proposal .js-scroll {
	opacity: 1!important;
}

.js-scroll.scrolled {
	opacity: 1;
}

.scrolled.fade-in, .intro-fade-in {
	animation: fade-in 500ms ease-in-out both;
}

.scrolled.fade-in-top, .intro-fade-in-top {
	animation: fade-in-top 500ms ease-in-out both;
}

.scrolled.fade-in-bottom, .intro-fade-in-bottom {
	animation: fade-in-bottom 500ms ease-in-out both;
}

.scrolled.slide-in-left, .intro-slide-in-left {
	animation: slide-in-left 500ms ease-in-out both;
}

.scrolled.slide-in-right, .intro-slide-in-right {
	animation: slide-in-right 500ms ease-in-out both;
}

/* ----------------------------------------------
 * Generated by Animista on 2021-2-11 23:32:31
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

@keyframes slide-in-left {
  0% {
    -webkit-transform: translateX(-6.25rem);
    transform: translateX(-6.25rem);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes slide-in-right {
  0% {
    -webkit-transform: translateX(6.25rem);
    transform: translateX(6.25rem);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes fade-in-top {
  0% {
    -webkit-transform: translateY(-3.125rem);
    transform: translateY(-3.125rem);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fade-in-bottom {
  0% {
    -webkit-transform: translateY(3.125rem);
    transform: translateY(3.125rem);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* WIPE ON SCROLL */
:root {
--wipe-in: inset(0 0 0 0);
--wipe-bottom: inset(100% 0 0 0);
--wipe-left: inset(0 100% 0 0);
--wipe-top: inset(0 0 100% 0);
--wipe-right: inset(0 0 0 100%);
}

[transition-style] {
    animation-delay: var(--transition__delay, 0);
    animation-duration: var(--transition__duration, 2.5s);
    animation-timing-function: var(--transition__easing, cubic-bezier(.25, 1, .3, 1));
    animation-fill-mode: both;
    will-change: clip-path;
}

@media (prefers-reduced-motion: reduce), print {
    [transition-style] {
        animation-duration: 1ms !important;
        transition-duration: 1ms !important;
        animation-iteration-count:1 !important;
    }
}

@keyframes wipe-in-top {
    0% {
        -webkit-clip-path: var(--wipe-top);
        clip-path:var(--wipe-top);
    }

    to {
        -webkit-clip-path: var(--wipe-in);
        clip-path: var(--wipe-in);
    }
}

[transition-style="in:wipe:down"], [transition-style="in:wipe:top"] {
    animation-name:wipe-in-top;
}

@keyframes wipe-in-right {
    0% {
        -webkit-clip-path: var(--wipe-left);
        clip-path:var(--wipe-left);
    }

    to {
        -webkit-clip-path: var(--wipe-in);
        clip-path: var(--wipe-in);
    }
}

[transition-style="in:wipe:right"] {
    animation-name:wipe-in-right;
}

@keyframes wipe-in-bottom {
    0% {
        -webkit-clip-path: var(--wipe-bottom);
        clip-path:var(--wipe-bottom);
    }

    to {
        -webkit-clip-path: var(--wipe-in);
        clip-path: var(--wipe-in);
    }
}

[transition-style="in:wipe:bottom"], [transition-style="in:wipe:up"] {
    animation-name:wipe-in-bottom;
}

@keyframes wipe-in-left {
    0% {
        -webkit-clip-path: var(--wipe-right);
        clip-path:var(--wipe-right);
    }

    to {
        -webkit-clip-path: var(--wipe-in);
        clip-path: var(--wipe-in);
    }
}

[transition-style="in:wipe:left"] {
    animation-name:wipe-in-left;
}

@keyframes wipe-out-bottom {
    0% {
		-webkit-clip-path: var(--wipe-in);
        clip-path: var(--wipe-in);
    }

    to {
        -webkit-clip-path: var(--wipe-top);
        clip-path:var(--wipe-top);
    }
}

[transition-style="out:wipe:top"], [transition-style="out:wipe:down"] {
    animation-name:wipe-out-bottom;
}

.scrolled.wipe-top, .intro-wipe-top {
	animation: wipe-in-top 1000ms ease-in-out both;
}

.scrolled.wipe-bottom, .intro-wipe-bottom {
	animation: wipe-in-bottom 1000ms ease-in-out both;
}

.scrolled.wipe-right, .intro-wipe-right {
	animation: wipe-in-right 1000ms ease-in-out both;
}

.scrolled.wipe-left, .intro-wipe-left {
	animation: wipe-in-left 1000ms ease-in-out both;
}

.scrolled.wipe-out-bottom, .intro-wipe-out-bottom {
	animation: wipe-out-bottom 1000ms ease-in-out both;
}

/* DELAY */

.transition-delay-100, #hamburger:checked ~ .navigation__links li {
	animation-delay: 100ms;
}

.transition-delay-200, #hamburger:checked ~ .navigation__links li:nth-child(1n+2) {
	animation-delay: 200ms;
}

.transition-delay-300, #hamburger:checked ~ .navigation__links li:nth-child(1n+3) {
	animation-delay: 300ms;
}

.transition-delay-400, #hamburger:checked ~ .navigation__links li:nth-child(1n+4) {
	animation-delay: 400ms;
}

.transition-delay-500, #hamburger:checked ~ .navigation__links li:nth-child(1n+5) {
	animation-delay: 500ms;
}

.transition-delay-600, #hamburger:checked ~ .navigation__links li:nth-child(1n+6) {
	animation-delay: 600ms;
}

.transition-delay-700, #hamburger:checked ~ .navigation__links li:nth-child(1n+7) {
	animation-delay: 700ms;
}

.transition-delay-800, #hamburger:checked ~ .navigation__links li:nth-child(1n+8) {
	animation-delay: 800ms;
}

.transition-delay-900, #hamburger:checked ~ .navigation__links li:nth-child(1n+9) {
	animation-delay: 900ms;
}

.transition-delay-1000, #hamburger:checked ~ .navigation__links li:nth-child(1n+10) {
	animation-delay: 1000ms;
}

.transition-delay-1100, #hamburger:checked ~ .navigation__links li:nth-child(1n+11) {
	animation-delay: 1100ms;
}

.transition-delay-1200, #hamburger:checked ~ .navigation__links li:nth-child(1n+12) {
	animation-delay: 1200ms;
}

@media screen and (min-width: 48rem) {
	
	/* DELAY */

	.grid-33:nth-child(3n+2), .grid-25:nth-child(4n+2), .grid-20:nth-child(5n+2), .grid-16:nth-child(6n+2) {
		animation-delay: 100ms;
	}

	.grid-33:nth-child(3n+3), .grid-25:nth-child(4n+3), .grid-20:nth-child(5n+3), .grid-16:nth-child(6n+3) {
		animation-delay: 200ms;
	}

	.grid-25:nth-child(4n+4), .grid-20:nth-child(5n+4), .grid-16:nth-child(6n+4) {
		animation-delay: 300ms;
	}

	.grid-20:nth-child(5n+5), .grid-16:nth-child(6n+5) {
		animation-delay: 400ms;
	}
	
	.grid-16:nth-child(6n+6) {
		animation-delay: 500ms;
	}
	
}

@media screen and (max-width: 47.9375rem) {
	
	/* DELAY */

	.grid-50:nth-child(2n+2), .grid-33:nth-child(3n+2), .grid-25:nth-child(4n+2) {
		animation-delay: 100ms;
	}

	.grid-33:nth-child(3n+3), .grid-25:nth-child(4n+3) {
		animation-delay: 200ms;
	}
	
}

/* Infinite Scroll */

@keyframes infinite-scroll {
  from {transform: translateX(0)}
  to {transform: translateX(-50%)}
}

.infinite-scroll-wrapper {
  width: 100%;
  overflow-x: hidden;
}

.infinite-scroll-container {
  display: flex;
  width: 125rem;
  animation-name: infinite-scroll;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

.infinite-scroll-item {
  white-space: nowrap;
}

/* Dynamic Sticky Sidebar */

@media screen and (min-width: 48rem) {

	.sticky-article {
  		flex-basis: 0;
  		flex-grow: 999;
	}

	.sticky-aside {
  		--offset: var(--space);
  		flex-grow: 1;
  		align-self: start;
  		position: sticky;
  		top: var(--offset);
	}
	
}

@media screen and (max-width: 47.9375rem) {
	
	/* MENU */

	#menu-main-menu li {
		opacity: 0;
		transition: opacity 500ms;
	}
	
	#hamburger:checked ~ .navigation__links li {
		opacity: 1;
  		animation: fade-in-bottom 500ms ease-in-out both;
	}
	
}

.text-form .grid-container.content-layer {
    position: relative;
    z-index: 3;
}

.text-form .static-hero-media {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
}

.text-form .static-hero-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
