/*!
Theme Name: Frontline Security Solutions
Author: JTHN Limited
Author URI: https://www.jthn.co.uk
Description: Frontline Security Solutions Website
Version: 1.0.0
*/
/* COMPASS IMPORTS */
/* BASE - Base styles, Normalize, Colours, Typography */
/* red */
/* greys */
/* base */
/* borders */
/* BASIC STYLES
 * ------------------------------------------------ */
@import url("//hello.myfonts.net/count/3c04e5");
html {
  font-size: 62.5%;
}
@media (min-width: 1921px) {
  html {
    font-size: 70.5%;
  }
}
@media (max-width: 1199px) {
  html {
    font-size: 58.5%;
  }
}

body {
  height: 100%;
  position: relative;
  background: white;
  text-align: center;
  font-family: "FuturaLTPro-Book", sans-serif;
  color: #484b52;
  margin: 0;
  padding: 0;
  font-size: 1.7rem;
  line-height: 1.5;
}

/* Text-level semantics */
p {
  margin: 0;
  padding: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

address {
  margin: 0;
}

dfn {
  font-style: italic;
}

mark {
  background: #31357d;
  color: white;
  font-weight: normal;
  font-style: italic;
}

small {
  font-size: 80%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

ins {
  color: white;
  background-color: #31357d;
  text-decoration: none;
}

del {
  text-decoration: line-through;
}

strong {
  font-weight: normal;
  font-family: "FuturaLTPro-Bold", sans-serif;
}

/* images */
img {
  border: none;
  display: block;
  font-size: 100%;
  -ms-interpolation-mode: bicubic;
  vertical-align: middle;
  background: transparent;
}

/* Blockquotes */
blockquote {
  quotes: none;
  border: none;
  margin: 0;
  padding: 0;
}

q {
  quotes: none;
}
q:before, q:after {
  content: "";
  content: none;
}

/* LISTS
 * ------------------------------------------------ */
ul,
ol,
dl {
  margin: 0;
  padding: 0;
}

ul li,
ol li,
dl li {
  list-style-position: outside;
}

/* BUTTONS & LINKS
 * ------------------------------------------------ */
a, a[href^=tel] {
  color: #00b5d4;
  cursor: pointer;
  outline: 0 !important;
  text-decoration: none;
}
a:hover, a:focus, a[href^=tel]:hover, a[href^=tel]:focus {
  cursor: pointer;
  text-decoration: none;
  color: #484b52;
}

button, input[type=button] {
  outline: 0 !important;
}

/* HEADINGS
 * ------------------------------------------------ */
h1, h2, h3, h4, h5, h6 {
  margin: 0;
  color: #31357d;
  text-transform: uppercase;
  font-family: "FuturaLTPro-Bold", sans-serif;
}

/* POSITIONING
 * ------------------------------------------------ */
.top {
  top: 0;
  position: relative;
}

.bottom {
  bottom: 0;
  position: relative;
}

/* EXTRAS
 * ------------------------------------------------ */
* {
  outline: none !important;
}

/* Mozilla based browsers */
::-moz-selection {
  background-color: #31357d;
  color: white;
}

/* Works in Safari */
::-moz-selection {
  background-color: #31357d;
  color: white;
}
::selection {
  background-color: #31357d;
  color: white;
}

/* FLEX LAYOUT
--------------------------------------------*/
/* base flex rows/columns */
.row-flex {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: left;
      justify-content: left;
  margin-left: -15px;
  margin-right: -15px;
}

.col-flex {
  display: -ms-flexbox;
  display: flex;
}

/* flex column sizes */
.col-flex-xs-1,
.col-flex-xs-2,
.col-flex-xs-2-alt,
.col-flex-xs-3,
.col-flex-xs-4,
.col-flex-xs-5,
.col-flex-xs-6,
.col-flex-xs-7,
.col-flex-xs-8,
.col-flex-xs-9,
.col-flex-xs-10,
.col-flex-xs-11,
.col-flex-xs-12,
.col-flex-sm-1,
.col-flex-sm-2,
.col-flex-sm-2-alt,
.col-flex-sm-3,
.col-flex-sm-4,
.col-flex-sm-5,
.col-flex-sm-6,
.col-flex-sm-7,
.col-flex-sm-8,
.col-flex-sm-9,
.col-flex-sm-10,
.col-flex-sm-11,
.col-flex-sm-12,
.col-flex-md-1,
.col-flex-md-2,
.col-flex-md-2-alt,
.col-flex-md-3,
.col-flex-md-4,
.col-flex-md-5,
.col-flex-md-6,
.col-flex-md-7,
.col-flex-md-8,
.col-flex-md-9,
.col-flex-md-10,
.col-flex-md-11,
.col-flex-md-12,
.col-flex-lg-1,
.col-flex-lg-2,
.col-flex-lg-2-alt,
.col-flex-lg-3,
.col-flex-lg-4,
.col-flex-lg-5,
.col-flex-lg-6,
.col-flex-lg-7,
.col-flex-lg-8,
.col-flex-lg-9,
.col-flex-lg-10,
.col-flex-lg-11,
.col-flex-lg-12 {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.col-flex-xs-1 {
  -ms-flex: 0 0 8.333333%;
      flex: 0 0 8.333333%;
  max-width: 8.333333%;
}

.col-flex-xs-2 {
  -ms-flex: 0 0 16.666667%;
      flex: 0 0 16.666667%;
  max-width: 16.666667%;
}

.col-flex-xs-2-alt {
  -ms-flex: 0 0 20%;
      flex: 0 0 20%;
  max-width: 20%;
}

.col-flex-xs-3 {
  -ms-flex: 0 0 25%;
      flex: 0 0 25%;
  max-width: 25%;
}

.col-flex-xs-4 {
  -ms-flex: 0 0 33.333333%;
      flex: 0 0 33.333333%;
  max-width: 33.333333%;
}

.col-flex-xs-5 {
  -ms-flex: 0 0 41.666667%;
      flex: 0 0 41.666667%;
  max-width: 41.666667%;
}

.col-flex-xs-6 {
  -ms-flex: 0 0 50%;
      flex: 0 0 50%;
  max-width: 50%;
}

.col-flex-xs-7 {
  -ms-flex: 0 0 58.333333%;
      flex: 0 0 58.333333%;
  max-width: 58.333333%;
}

.col-flex-xs-8 {
  -ms-flex: 0 0 66.666667%;
      flex: 0 0 66.666667%;
  max-width: 66.666667%;
}

.col-flex-xs-9 {
  -ms-flex: 0 0 75%;
      flex: 0 0 75%;
  max-width: 75%;
}

.col-flex-xs-10 {
  -ms-flex: 0 0 83.333333%;
      flex: 0 0 83.333333%;
  max-width: 83.333333%;
}

.col-flex-xs-11 {
  -ms-flex: 0 0 91.666667%;
      flex: 0 0 91.666667%;
  max-width: 91.666667%;
}

.col-flex-xs-12 {
  -ms-flex: 0 0 100%;
      flex: 0 0 100%;
  max-width: 100%;
}

.order-first {
  -ms-flex-order: -1;
      order: -1;
}

.order-last {
  -ms-flex-order: 13;
      order: 13;
}

.order-0 {
  -ms-flex-order: 0;
      order: 0;
}

.order-1 {
  -ms-flex-order: 1;
      order: 1;
}

.order-2 {
  -ms-flex-order: 2;
      order: 2;
}

.order-3 {
  -ms-flex-order: 3;
      order: 3;
}

.order-4 {
  -ms-flex-order: 4;
      order: 4;
}

.order-5 {
  -ms-flex-order: 5;
      order: 5;
}

.order-6 {
  -ms-flex-order: 6;
      order: 6;
}

.order-7 {
  -ms-flex-order: 7;
      order: 7;
}

.order-8 {
  -ms-flex-order: 8;
      order: 8;
}

.order-9 {
  -ms-flex-order: 9;
      order: 9;
}

.order-10 {
  -ms-flex-order: 10;
      order: 10;
}

.order-11 {
  -ms-flex-order: 11;
      order: 11;
}

.order-12 {
  -ms-flex-order: 12;
      order: 12;
}

.offset-1 {
  margin-left: 8.333333%;
}

.offset-2 {
  margin-left: 20%;
}

.offset-2-alt {
  margin-left: 16.666667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.333333%;
}

.offset-5 {
  margin-left: 41.666667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.333333%;
}

.offset-8 {
  margin-left: 66.666667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.333333%;
}

.offset-11 {
  margin-left: 91.666667%;
}

@media (max-width: 767px) {
  .col-flex-lg-1,
.col-flex-lg-10,
.col-flex-lg-11,
.col-flex-lg-12,
.col-flex-lg-2,
.col-flex-lg-2-alt,
.col-flex-lg-3,
.col-flex-lg-4,
.col-flex-lg-5,
.col-flex-lg-6,
.col-flex-lg-7,
.col-flex-lg-8,
.col-flex-lg-9,
.col-flex-md-1,
.col-flex-md-10,
.col-flex-md-11,
.col-flex-md-12,
.col-flex-md-2,
.col-flex-md-2-alt,
.col-flex-md-3,
.col-flex-md-4,
.col-flex-md-5,
.col-flex-md-6,
.col-flex-md-7,
.col-flex-md-8,
.col-flex-md-9,
.col-flex-sm-1,
.col-flex-sm-10,
.col-flex-sm-11,
.col-flex-sm-12,
.col-flex-sm-2,
.col-flex-sm-2-alt,
.col-flex-sm-3,
.col-flex-sm-4,
.col-flex-sm-5,
.col-flex-sm-6,
.col-flex-sm-7,
.col-flex-sm-8,
.col-flex-sm-9 {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
  }

  .col-flex-xs-1,
.col-flex-xs-10,
.col-flex-xs-11,
.col-flex-xs-2,
.col-flex-xs-2-alt,
.col-flex-xs-3,
.col-flex-xs-4,
.col-flex-xs-5,
.col-flex-xs-6,
.col-flex-xs-7,
.col-flex-xs-8,
.col-flex-xs-9 {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%;
  }
}
@media (max-width: 567px) {
  .col-flex-xs-1,
.col-flex-xs-10,
.col-flex-xs-11,
.col-flex-xs-12,
.col-flex-xs-2,
.col-flex-xs-2-alt,
.col-flex-xs-3,
.col-flex-xs-4,
.col-flex-xs-5,
.col-flex-xs-6,
.col-flex-xs-7,
.col-flex-xs-8,
.col-flex-xs-9 {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
  }
}
@media (min-width: 768px) {
  .col-flex-sm-1 {
    -ms-flex: 0 0 8.333333%;
        flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }

  .col-flex-sm-2 {
    -ms-flex: 0 0 16.666667%;
        flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }

  .col-flex-sm-2-alt {
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
    max-width: 20%;
  }

  .col-flex-sm-3 {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%;
  }

  .col-flex-sm-4 {
    -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }

  .col-flex-sm-5 {
    -ms-flex: 0 0 41.666667%;
        flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }

  .col-flex-sm-6 {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%;
  }

  .col-flex-sm-7 {
    -ms-flex: 0 0 58.333333%;
        flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }

  .col-flex-sm-8 {
    -ms-flex: 0 0 66.666667%;
        flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }

  .col-flex-sm-9 {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%;
  }

  .col-flex-sm-10 {
    -ms-flex: 0 0 83.333333%;
        flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }

  .col-flex-sm-11 {
    -ms-flex: 0 0 91.666667%;
        flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }

  .col-flex-sm-12 {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
  }

  .order-sm-first {
    -ms-flex-order: -1;
        order: -1;
  }

  .order-sm-last {
    -ms-flex-order: 13;
        order: 13;
  }

  .order-sm-0 {
    -ms-flex-order: 0;
        order: 0;
  }

  .order-sm-1 {
    -ms-flex-order: 1;
        order: 1;
  }

  .order-sm-2 {
    -ms-flex-order: 2;
        order: 2;
  }

  .order-sm-3 {
    -ms-flex-order: 3;
        order: 3;
  }

  .order-sm-4 {
    -ms-flex-order: 4;
        order: 4;
  }

  .order-sm-5 {
    -ms-flex-order: 5;
        order: 5;
  }

  .order-sm-6 {
    -ms-flex-order: 6;
        order: 6;
  }

  .order-sm-7 {
    -ms-flex-order: 7;
        order: 7;
  }

  .order-sm-8 {
    -ms-flex-order: 8;
        order: 8;
  }

  .order-sm-9 {
    -ms-flex-order: 9;
        order: 9;
  }

  .order-sm-10 {
    -ms-flex-order: 10;
        order: 10;
  }

  .order-sm-11 {
    -ms-flex-order: 11;
        order: 11;
  }

  .order-sm-12 {
    -ms-flex-order: 12;
        order: 12;
  }

  .offset-sm-0 {
    margin-left: 0;
  }

  .offset-sm-1 {
    margin-left: 8.333333%;
  }

  .offset-sm-2 {
    margin-left: 16.666667%;
  }

  .offset-sm-2-alt {
    margin-left: 20%;
  }

  .offset-sm-3 {
    margin-left: 25%;
  }

  .offset-sm-4 {
    margin-left: 33.333333%;
  }

  .offset-sm-5 {
    margin-left: 41.666667%;
  }

  .offset-sm-6 {
    margin-left: 50%;
  }

  .offset-sm-7 {
    margin-left: 58.333333%;
  }

  .offset-sm-8 {
    margin-left: 66.666667%;
  }

  .offset-sm-9 {
    margin-left: 75%;
  }

  .offset-sm-10 {
    margin-left: 83.333333%;
  }

  .offset-sm-11 {
    margin-left: 91.666667%;
  }
}
@media (min-width: 992px) {
  .col-flex-md-1 {
    -ms-flex: 0 0 8.333333%;
        flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }

  .col-flex-md-2 {
    -ms-flex: 0 0 16.666667%;
        flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }

  .col-flex-md-2-alt {
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
    max-width: 20%;
  }

  .col-flex-md-3 {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%;
  }

  .col-flex-md-4 {
    -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }

  .col-flex-md-5 {
    -ms-flex: 0 0 41.666667%;
        flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }

  .col-flex-md-6 {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%;
  }

  .col-flex-md-7 {
    -ms-flex: 0 0 58.333333%;
        flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }

  .col-flex-md-8 {
    -ms-flex: 0 0 66.666667%;
        flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }

  .col-flex-md-9 {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%;
  }

  .col-flex-md-10 {
    -ms-flex: 0 0 83.333333%;
        flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }

  .col-flex-md-11 {
    -ms-flex: 0 0 91.666667%;
        flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }

  .col-flex-md-12 {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
  }

  .order-md-first {
    -ms-flex-order: -1;
        order: -1;
  }

  .order-md-last {
    -ms-flex-order: 13;
        order: 13;
  }

  .order-md-0 {
    -ms-flex-order: 0;
        order: 0;
  }

  .order-md-1 {
    -ms-flex-order: 1;
        order: 1;
  }

  .order-md-2 {
    -ms-flex-order: 2;
        order: 2;
  }

  .order-md-3 {
    -ms-flex-order: 3;
        order: 3;
  }

  .order-md-4 {
    -ms-flex-order: 4;
        order: 4;
  }

  .order-md-5 {
    -ms-flex-order: 5;
        order: 5;
  }

  .order-md-6 {
    -ms-flex-order: 6;
        order: 6;
  }

  .order-md-7 {
    -ms-flex-order: 7;
        order: 7;
  }

  .order-md-8 {
    -ms-flex-order: 8;
        order: 8;
  }

  .order-md-9 {
    -ms-flex-order: 9;
        order: 9;
  }

  .order-md-10 {
    -ms-flex-order: 10;
        order: 10;
  }

  .order-md-11 {
    -ms-flex-order: 11;
        order: 11;
  }

  .order-md-12 {
    -ms-flex-order: 12;
        order: 12;
  }

  .offset-md-0 {
    margin-left: 0;
  }

  .offset-md-1 {
    margin-left: 8.333333%;
  }

  .offset-md-2 {
    margin-left: 16.666667%;
  }

  .offset-md-2-alt {
    margin-left: 20%;
  }

  .offset-md-3 {
    margin-left: 25%;
  }

  .offset-md-4 {
    margin-left: 33.333333%;
  }

  .offset-md-5 {
    margin-left: 41.666667%;
  }

  .offset-md-6 {
    margin-left: 50%;
  }

  .offset-md-7 {
    margin-left: 58.333333%;
  }

  .offset-md-8 {
    margin-left: 66.666667%;
  }

  .offset-md-9 {
    margin-left: 75%;
  }

  .offset-md-10 {
    margin-left: 83.333333%;
  }

  .offset-md-11 {
    margin-left: 91.666667%;
  }
}
@media (min-width: 1200px) {
  .col-flex-lg-1 {
    -ms-flex: 0 0 8.333333%;
        flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }

  .col-flex-lg-2 {
    -ms-flex: 0 0 16.666667%;
        flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }

  .col-flex-lg-2-alt {
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
    max-width: 20%;
  }

  .col-flex-lg-3 {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%;
  }

  .col-flex-lg-4 {
    -ms-flex: 0 0 33.333333%;
        flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }

  .col-flex-lg-5 {
    -ms-flex: 0 0 41.666667%;
        flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }

  .col-flex-lg-6 {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%;
  }

  .col-flex-lg-7 {
    -ms-flex: 0 0 58.333333%;
        flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }

  .col-flex-lg-8 {
    -ms-flex: 0 0 66.666667%;
        flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }

  .col-flex-lg-9 {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%;
  }

  .col-flex-lg-10 {
    -ms-flex: 0 0 83.333333%;
        flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }

  .col-flex-lg-11 {
    -ms-flex: 0 0 91.666667%;
        flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }

  .col-flex-lg-12 {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
  }

  .order-lg-first {
    -ms-flex-order: -1;
        order: -1;
  }

  .order-lg-last {
    -ms-flex-order: 13;
        order: 13;
  }

  .order-lg-0 {
    -ms-flex-order: 0;
        order: 0;
  }

  .order-lg-1 {
    -ms-flex-order: 1;
        order: 1;
  }

  .order-lg-2 {
    -ms-flex-order: 2;
        order: 2;
  }

  .order-lg-3 {
    -ms-flex-order: 3;
        order: 3;
  }

  .order-lg-4 {
    -ms-flex-order: 4;
        order: 4;
  }

  .order-lg-5 {
    -ms-flex-order: 5;
        order: 5;
  }

  .order-lg-6 {
    -ms-flex-order: 6;
        order: 6;
  }

  .order-lg-7 {
    -ms-flex-order: 7;
        order: 7;
  }

  .order-lg-8 {
    -ms-flex-order: 8;
        order: 8;
  }

  .order-lg-9 {
    -ms-flex-order: 9;
        order: 9;
  }

  .order-lg-10 {
    -ms-flex-order: 10;
        order: 10;
  }

  .order-lg-11 {
    -ms-flex-order: 11;
        order: 11;
  }

  .order-lg-12 {
    -ms-flex-order: 12;
        order: 12;
  }

  .offset-lg-0 {
    margin-left: 0;
  }

  .offset-lg-1 {
    margin-left: 8.333333%;
  }

  .offset-lg-2 {
    margin-left: 16.666667%;
  }

  .offset-lg-2-alt {
    margin-left: 20%;
  }

  .offset-lg-3 {
    margin-left: 25%;
  }

  .offset-lg-4 {
    margin-left: 33.333333%;
  }

  .offset-lg-5 {
    margin-left: 41.666667%;
  }

  .offset-lg-6 {
    margin-left: 50%;
  }

  .offset-lg-7 {
    margin-left: 58.333333%;
  }

  .offset-lg-8 {
    margin-left: 66.666667%;
  }

  .offset-lg-9 {
    margin-left: 75%;
  }

  .offset-lg-10 {
    margin-left: 83.333333%;
  }

  .offset-lg-11 {
    margin-left: 91.666667%;
  }
}
/* FONTS
--------------------------------------------*/
@font-face {
  font-family: "FuturaLTPro-Book";
  src: url("../fonts/FuturaLTPro-Book/font.woff2") format("woff2"), url("../fonts/FuturaLTPro-Book/font.woff") format("woff");
  font-weight: normal;
  font-display: block;
}
@font-face {
  font-family: "FuturaLTPro-Heavy";
  src: url("../fonts/FuturaLTPro-Heavy/font.woff2") format("woff2"), url("../fonts/FuturaLTPro-Heavy/font.woff") format("woff");
  font-weight: normal;
  font-display: block;
}
@font-face {
  font-family: "FuturaLTPro-Bold";
  src: url("../fonts/FuturaLTPro-Bold/font.woff2") format("woff2"), url("../fonts/FuturaLTPro-Bold/font.woff") format("woff");
  font-weight: normal;
  font-display: block;
}
/* GUTTERS
 * ------------------------------------------------ */
/* NO GUTTERS */
.no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.no-gutters div[class*=col-] {
  padding-right: 0;
  padding-left: 0;
}

/* GUTTER SIZES */
.gutters-30 {
  margin-left: -30px;
  margin-right: -30px;
}
.gutters-30 div[class^=col] {
  padding-left: 30px;
  padding-right: 30px;
}

.gutters-50 {
  margin-left: -50px;
  margin-right: -50px;
}
.gutters-50 div[class^=col] {
  padding-left: 50px;
  padding-right: 50px;
}

a, .nav-extras .btn:before, .btn-close:after, .page-link a:after, .slider-nav a:before {
  transition: color 0.3s ease;
}

.play-icon {
  transition: color 0.3s ease, background 0.3s ease;
}

.btn, .btn-close, .form-control, .gform_button {
  transition: background 0.3s ease, color 0.3s ease, border 0.3s ease;
}

.bg-img, .logos-widget .img-responsive {
  transition: opacity 0.3s ease;
}

.nav-menu-btn .icon-bar, .flex-control-paging li a, .logos-widget .title {
  transition: background 0.3s ease;
}

.img-overlay {
  transition: background 0.3s ease, opacity 0.3s ease;
}

.bg-scale-slow .bg-img {
  transition: -webkit-transform 10s ease;
  transition: transform 10s ease;
  transition: transform 10s ease, -webkit-transform 10s ease;
}

.bg-scale .bg-img {
  transition: -webkit-transform 1.2s ease;
  transition: transform 1.2s ease;
  transition: transform 1.2s ease, -webkit-transform 1.2s ease;
}

#globalHeader, .sub-menu-wrapper, .header-wrapper, .logo, .nav-primary, .main-navigation > li > a, .nav-social, .nav-menu-btn {
  transition: all 0.4s ease;
}

.showme {
  transition: opacity 0.7s ease;
  transition-delay: 0.1s;
}

/* CONTENT EFFECTS
 * ------------------------------------------------ */
/* bg scale */
.bg-scale:hover .bg-img,
.bg-scale-slow:hover .bg-img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

/* FADES
 * ------------------------------------------------ */
.hideme,
.hideme-footer {
  opacity: 0;
}
@media (max-width: 1024px) {
  .hideme,
.hideme-footer {
    opacity: 1 !important;
  }
}

.showme {
  opacity: 1;
}

/* SHADOWS
--------------------------------------------*/
.box-shadow {
  box-shadow: 3px 3px 6px 0px rgba(0, 0, 0, 0.3);
}

.box-shadow-light {
  box-shadow: 3px 3px 6px 0px rgba(0, 0, 0, 0.15);
}

/* TYPOGRAPHY - Text elements */
/* GENERIC HEADINGS
--------------------------------------------*/
/* heading xx large */
.heading-xxxxlg {
  font-size: 15rem;
  line-height: 1.1;
}
@media (min-width: 992px) and (max-width: 1199px) {
  .heading-xxxxlg {
    font-size: 13rem;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .heading-xxxxlg {
    font-size: 10rem;
  }
}
@media (min-width: 568px) and (max-width: 767px) {
  .heading-xxxxlg {
    font-size: 7rem;
  }
}
@media (max-width: 567px) {
  .heading-xxxxlg {
    font-size: 5rem;
  }
}

/* heading xx large */
.heading-xxxlg {
  font-size: 5.7rem;
  line-height: 1.2;
}
@media (min-width: 992px) and (max-width: 1199px) {
  .heading-xxxlg {
    font-size: 5rem;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .heading-xxxlg {
    font-size: 4.5rem;
  }
}
@media (max-width: 767px) {
  .heading-xxxlg {
    font-size: 3.2rem;
  }
}

/* heading xx large */
.heading-xxlg {
  font-size: 5rem;
  line-height: 1.3;
}
@media (min-width: 992px) and (max-width: 1199px) {
  .heading-xxlg {
    font-size: 4.5rem;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .heading-xxlg {
    font-size: 4rem;
  }
}
@media (max-width: 767px) {
  .heading-xxlg {
    font-size: 3rem;
  }
}

/* heading extra large */
.heading-xlg {
  font-size: 4rem;
  line-height: 1.3;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .heading-xlg {
    font-size: 3.6rem;
  }
}
@media (max-width: 767px) {
  .heading-xlg {
    font-size: 2.8rem;
  }
}

/* heading large */
.heading-lg {
  font-size: 3.2rem;
  line-height: 1.3;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .heading-lg {
    font-size: 2.9rem;
  }
}
@media (max-width: 767px) {
  .heading-lg {
    font-size: 2.4rem;
  }
}

/* heading medium */
.heading-md {
  font-size: 3rem;
  line-height: 1.3;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .heading-md {
    font-size: 2.6rem;
  }
}
@media (max-width: 767px) {
  .heading-md {
    font-size: 2.4rem;
  }
}

/* heading small */
.heading-sm {
  font-size: 2.7rem;
  line-height: 1.3;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .heading-sm {
    font-size: 2.4rem;
  }
}
@media (max-width: 767px) {
  .heading-sm {
    font-size: 2.1rem;
  }
}

/* heading extra small */
.heading-xs {
  font-size: 2.2rem;
  line-height: 1.3;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .heading-xs {
    font-size: 2.1rem;
  }
}
@media (max-width: 767px) {
  .heading-xs {
    font-size: 1.9rem;
  }
}

/* heading xx small */
.heading-xxs {
  font-size: 2rem;
  line-height: 1.3;
}
@media (max-width: 1199px) {
  .heading-xxs {
    font-size: 1.8rem;
  }
}

/* heading xxx small */
.heading-xxxs {
  font-size: 1.8rem;
  line-height: 1.3;
}
@media (max-width: 1199px) {
  .heading-xxxs {
    font-size: 1.6rem;
  }
}

/* TYPOGRAPHY COLOURS
--------------------------------------------*/
/* white */
.text-white h1, .text-white h2, .text-white h3,
.text-white h4, .text-white h5, .text-white h6,
.text-white p, .text-white li, .text-white a:not(.btn), .text-white span:not(.btn) {
  color: white;
}
.text-white li:before {
  color: white !important;
}
.text-white a:not(.btn):hover {
  color: #31357d;
}

/* red */
.text-red h1, .text-red h2, .text-red h3,
.text-red h4, .text-red h5, .text-red h6,
.text-red p, .text-red li, .text-red span:not(.btn) {
  color: #31357d;
}

/* grey */
.text-grey-dark h1, .text-grey-dark h2, .text-grey-dark h3,
.text-grey-dark h4, .text-grey-dark h5, .text-grey-dark h6,
.text-grey-dark p, .text-grey-dark li, .text-grey-dark span:not(.btn),
.text-grey-dark label {
  color: #484b52;
}

/* nested caption */
/* INTRO TEXT
--------------------------------------------*/
.text-intro {
  padding: 0 13%;
  /* intro text with see more */
}
@media (min-width: 768px) and (max-width: 991px) {
  .text-intro {
    padding: 0 10%;
  }
}
@media (max-width: 767px) {
  .text-intro {
    padding: 0 5%;
  }
}
.text-intro.margin-xxlg {
  margin-bottom: 75px;
}
@media (min-width: 1921px) {
  .text-intro.margin-xxlg {
    margin-bottom: 85px;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .text-intro.margin-xxlg {
    margin-bottom: 65px;
  }
}
@media (max-width: 767px) {
  .text-intro.margin-xxlg {
    margin-bottom: 45px;
  }
}
.text-intro.margin-xlg {
  margin-bottom: 45px;
}
@media (min-width: 1921px) {
  .text-intro.margin-xlg {
    margin-bottom: 55px;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .text-intro.margin-xlg {
    margin-bottom: 35px;
  }
}
@media (max-width: 767px) {
  .text-intro.margin-xlg {
    margin-bottom: 25px;
  }
}
.text-intro.margin-lg {
  margin-bottom: 40px;
}
@media (min-width: 1921px) {
  .text-intro.margin-lg {
    margin-bottom: 45px;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .text-intro.margin-lg {
    margin-bottom: 30px;
  }
}
@media (max-width: 767px) {
  .text-intro.margin-lg {
    margin-bottom: 20px;
  }
}
.text-intro.margin-sm {
  margin-bottom: 30px;
}
@media (min-width: 1921px) {
  .text-intro.margin-sm {
    margin-bottom: 35px;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .text-intro.margin-sm {
    margin-bottom: 25px;
  }
}
@media (max-width: 767px) {
  .text-intro.margin-sm {
    margin-bottom: 20px;
  }
}
.text-intro.margin-xs {
  margin-bottom: 20px;
}
.text-intro.margin-xxs {
  margin-bottom: 15px;
}
.text-intro.link-see-more {
  overflow: hidden;
}
@media (max-width: 767px) {
  .text-intro.link-see-more {
    margin-bottom: 20px;
  }
}
.text-intro.link-see-more h1, .text-intro.link-see-more h2, .text-intro.link-see-more h3,
.text-intro.link-see-more h4, .text-intro.link-see-more h5, .text-intro.link-see-more h6 {
  float: left;
}
@media (max-width: 767px) {
  .text-intro.link-see-more h1, .text-intro.link-see-more h2, .text-intro.link-see-more h3,
.text-intro.link-see-more h4, .text-intro.link-see-more h5, .text-intro.link-see-more h6 {
    float: none;
  }
}
.text-intro.link-see-more .see-more {
  float: right;
  font-size: 1.8rem;
  margin-top: 5px;
  position: relative;
  padding-bottom: 3px;
  display: inline-block;
  border-bottom: 3px solid transparent;
  font-family: "FuturaLTPro-Bold", sans-serif;
}
@media (max-width: 767px) {
  .text-intro.link-see-more .see-more {
    float: none;
    margin-top: 7px;
    font-size: 1.6rem;
  }
}
.text-intro.link-see-more .see-more:hover, .text-intro.link-see-more .see-more:focus {
  color: #484b52;
}

/* TEXT SIZES
--------------------------------------------*/
.text-xxxlg {
  font-size: 3.4rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .text-xxxlg {
    font-size: 3.1rem;
  }
}
@media (max-width: 767px) {
  .text-xxxlg {
    font-size: 2.4rem;
  }
}

.text-xxlg {
  font-size: 2.7rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .text-xxlg {
    font-size: 2.5rem;
  }
}
@media (max-width: 767px) {
  .text-xxlg {
    font-size: 2.1rem;
  }
}

.text-xlg {
  font-size: 2.3rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .text-xlg {
    font-size: 2.2rem;
  }
}
@media (max-width: 767px) {
  .text-xlg {
    font-size: 1.9rem;
  }
}

.text-lg {
  font-size: 2rem;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .text-lg {
    font-size: 1.9rem;
  }
}
@media (max-width: 767px) {
  .text-lg {
    font-size: 1.7rem;
  }
}
@media (max-width: 320px) {
  .text-lg {
    font-size: 1.6rem;
  }
}

.text-md {
  font-size: 1.8rem;
}
@media (max-width: 1199px) {
  .text-md {
    font-size: 1.7rem;
  }
}
@media (max-width: 320px) {
  .text-md {
    font-size: 1.6rem;
  }
}

/* STANDARD TEXT
--------------------------------------------*/
.text-standard {
  position: relative;
  /* element margins */
  /* headings */
  /* list items */
  /* blockquote */
  /* buttons */
  /* img */
  /* tables */
}
.text-standard * + p,
.text-standard * + blockquote,
.text-standard * + table,
.text-standard * + form,
.text-standard * + address,
.text-standard * + ul,
.text-standard * + ol,
.text-standard * + dl,
.text-standard * + img {
  margin-top: 20px;
}
@media (max-width: 767px) {
  .text-standard * + p,
.text-standard * + blockquote,
.text-standard * + table,
.text-standard * + form,
.text-standard * + address,
.text-standard * + ul,
.text-standard * + ol,
.text-standard * + dl,
.text-standard * + img {
    margin-top: 15px;
  }
}
.text-standard * + h1,
.text-standard * + h2,
.text-standard * + h3,
.text-standard * + h4,
.text-standard * + h5,
.text-standard * + h6 {
  margin-top: 30px;
}
@media (max-width: 767px) {
  .text-standard * + h1,
.text-standard * + h2,
.text-standard * + h3,
.text-standard * + h4,
.text-standard * + h5,
.text-standard * + h6 {
    margin-top: 20px;
  }
}
.text-standard h1 + h1,
.text-standard h1 + h2,
.text-standard h1 + h3,
.text-standard h1 + h4,
.text-standard h1 + h5,
.text-standard h1 + h6,
.text-standard h1 + ul,
.text-standard h1 + ol,
.text-standard h1 + dl,
.text-standard h1 + p,
.text-standard h1 + blockquote,
.text-standard h1 + table,
.text-standard h1 + form,
.text-standard h1 + address,
.text-standard h1 + img, .text-standard h2 + h1,
.text-standard h2 + h2,
.text-standard h2 + h3,
.text-standard h2 + h4,
.text-standard h2 + h5,
.text-standard h2 + h6,
.text-standard h2 + ul,
.text-standard h2 + ol,
.text-standard h2 + dl,
.text-standard h2 + p,
.text-standard h2 + blockquote,
.text-standard h2 + table,
.text-standard h2 + form,
.text-standard h2 + address,
.text-standard h2 + img, .text-standard h3 + h1,
.text-standard h3 + h2,
.text-standard h3 + h3,
.text-standard h3 + h4,
.text-standard h3 + h5,
.text-standard h3 + h6,
.text-standard h3 + ul,
.text-standard h3 + ol,
.text-standard h3 + dl,
.text-standard h3 + p,
.text-standard h3 + blockquote,
.text-standard h3 + table,
.text-standard h3 + form,
.text-standard h3 + address,
.text-standard h3 + img, .text-standard h4 + h1,
.text-standard h4 + h2,
.text-standard h4 + h3,
.text-standard h4 + h4,
.text-standard h4 + h5,
.text-standard h4 + h6,
.text-standard h4 + ul,
.text-standard h4 + ol,
.text-standard h4 + dl,
.text-standard h4 + p,
.text-standard h4 + blockquote,
.text-standard h4 + table,
.text-standard h4 + form,
.text-standard h4 + address,
.text-standard h4 + img, .text-standard h5 + h1,
.text-standard h5 + h2,
.text-standard h5 + h3,
.text-standard h5 + h4,
.text-standard h5 + h5,
.text-standard h5 + h6,
.text-standard h5 + ul,
.text-standard h5 + ol,
.text-standard h5 + dl,
.text-standard h5 + p,
.text-standard h5 + blockquote,
.text-standard h5 + table,
.text-standard h5 + form,
.text-standard h5 + address,
.text-standard h5 + img, .text-standard h6 + h1,
.text-standard h6 + h2,
.text-standard h6 + h3,
.text-standard h6 + h4,
.text-standard h6 + h5,
.text-standard h6 + h6,
.text-standard h6 + ul,
.text-standard h6 + ol,
.text-standard h6 + dl,
.text-standard h6 + p,
.text-standard h6 + blockquote,
.text-standard h6 + table,
.text-standard h6 + form,
.text-standard h6 + address,
.text-standard h6 + img {
  margin-top: 15px;
}
.text-standard h1 + ul,
.text-standard h1 + ol,
.text-standard h1 + dl,
.text-standard h1 + p,
.text-standard h1 + blockquote,
.text-standard h1 + table,
.text-standard h1 + form,
.text-standard h1 + address,
.text-standard h1 + img {
  margin-top: 20px;
}
.text-standard h1 + h1,
.text-standard h1 + h2,
.text-standard h1 + h3,
.text-standard h1 + h4,
.text-standard h1 + h5,
.text-standard h1 + h6, .text-standard h2 + h1,
.text-standard h2 + h2,
.text-standard h2 + h3,
.text-standard h2 + h4,
.text-standard h2 + h5,
.text-standard h2 + h6, .text-standard h3 + h1,
.text-standard h3 + h2,
.text-standard h3 + h3,
.text-standard h3 + h4,
.text-standard h3 + h5,
.text-standard h3 + h6,
.text-standard h4 + h1,
.text-standard h4 + h2,
.text-standard h4 + h3,
.text-standard h4 + h4,
.text-standard h4 + h5,
.text-standard h4 + h6, .text-standard h5 + h1,
.text-standard h5 + h2,
.text-standard h5 + h3,
.text-standard h5 + h4,
.text-standard h5 + h5,
.text-standard h5 + h6, .text-standard h6 + h1,
.text-standard h6 + h2,
.text-standard h6 + h3,
.text-standard h6 + h4,
.text-standard h6 + h5,
.text-standard h6 + h6 {
  margin-top: 10px;
}
.text-standard h1,
.text-standard .heading-1 {
  font-size: 5rem;
  line-height: 1.3;
}
@media (min-width: 992px) and (max-width: 1199px) {
  .text-standard h1,
.text-standard .heading-1 {
    font-size: 4.5rem;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .text-standard h1,
.text-standard .heading-1 {
    font-size: 4rem;
  }
}
@media (max-width: 767px) {
  .text-standard h1,
.text-standard .heading-1 {
    font-size: 3rem;
  }
}
.text-standard h2,
.text-standard .heading-2 {
  font-size: 4rem;
  line-height: 1.3;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .text-standard h2,
.text-standard .heading-2 {
    font-size: 3.6rem;
  }
}
@media (max-width: 767px) {
  .text-standard h2,
.text-standard .heading-2 {
    font-size: 2.8rem;
  }
}
.text-standard h3,
.text-standard .heading-3 {
  font-size: 3.2rem;
  line-height: 1.3;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .text-standard h3,
.text-standard .heading-3 {
    font-size: 2.9rem;
  }
}
@media (max-width: 767px) {
  .text-standard h3,
.text-standard .heading-3 {
    font-size: 2.4rem;
  }
}
.text-standard h4,
.text-standard .heading-4 {
  font-size: 2.7rem;
  line-height: 1.3;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .text-standard h4,
.text-standard .heading-4 {
    font-size: 2.4rem;
  }
}
@media (max-width: 767px) {
  .text-standard h4,
.text-standard .heading-4 {
    font-size: 2.1rem;
  }
}
.text-standard h5,
.text-standard .heading-5 {
  font-size: 2.2rem;
  line-height: 1.3;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .text-standard h5,
.text-standard .heading-5 {
    font-size: 2.1rem;
  }
}
@media (max-width: 767px) {
  .text-standard h5,
.text-standard .heading-5 {
    font-size: 1.9rem;
  }
}
.text-standard h6,
.text-standard .heading-6 {
  font-size: 2rem;
  line-height: 1.3;
}
@media (max-width: 1199px) {
  .text-standard h6,
.text-standard .heading-6 {
    font-size: 1.8rem;
  }
}
.text-standard ul,
.text-standard ol,
.text-standard dl {
  margin-left: 0;
  list-style: none;
  text-align: left;
}
.text-standard li {
  word-wrap: break-word;
  margin-bottom: 15px;
  padding-left: 25px;
  position: relative;
}
@media (max-width: 767px) {
  .text-standard li {
    padding-left: 20px;
    margin-bottom: 10px;
  }
}
.text-standard li:last-of-type {
  margin-bottom: 0;
}
.text-standard ul li:before {
  content: "\e901";
  font-size: 1.1rem;
  background: none;
  font-family: "icomoon";
  color: #31357d;
  top: 3px;
  left: 0;
  position: absolute;
}
.text-standard ol {
  counter-reset: item;
}
.text-standard ol li {
  display: block;
}
.text-standard ol li:before {
  background: none;
  content: counter(item) "";
  counter-increment: item;
  color: #31357d;
  top: 0;
  left: 0;
  position: absolute;
}
.text-standard blockquote {
  padding: 30px 25px;
  font-size: 1.7rem;
  border-left: 5px solid #31357d;
  background: #f0f0f0;
}
@media (max-width: 767px) {
  .text-standard blockquote {
    font-size: 1.5rem;
    padding: 25px 20px;
  }
}
.text-standard .btn {
  margin-top: 25px;
}
@media (max-width: 767px) {
  .text-standard .btn {
    margin-top: 20px;
  }
}
.text-standard img {
  height: auto;
  max-width: 100%;
  display: inline-block;
}
.text-standard * + img {
  margin: 40px 0 5px;
}
@media (max-width: 767px) {
  .text-standard * + img {
    margin: 20px 0 5px;
  }
}
.text-standard .wp-caption {
  width: 100% !important;
  max-width: 100% !important;
}
.text-standard .wp-caption-text {
  display: none;
}
.text-standard * + .wp-caption {
  margin: 30px 0 40px;
}
@media (max-width: 767px) {
  .text-standard * + .wp-caption {
    margin: 20px 0 30px;
  }
}
.text-standard * + .table-container {
  margin-top: 30px;
}
@media (min-width: 768px) and (max-width: 991px) {
  .text-standard * + .table-container {
    margin-top: 25px;
  }
}
@media (max-width: 767px) {
  .text-standard * + .table-container {
    margin-top: 20px;
  }
}
.text-standard * + .table-container + h1,
.text-standard * + .table-container + h2,
.text-standard * + .table-container + h3,
.text-standard * + .table-container + h4,
.text-standard * + .table-container + h5,
.text-standard * + .table-container + h6 {
  margin-top: 45px;
}
@media (min-width: 768px) and (max-width: 991px) {
  .text-standard * + .table-container + h1,
.text-standard * + .table-container + h2,
.text-standard * + .table-container + h3,
.text-standard * + .table-container + h4,
.text-standard * + .table-container + h5,
.text-standard * + .table-container + h6 {
    margin-top: 40px;
  }
}
@media (max-width: 767px) {
  .text-standard * + .table-container + h1,
.text-standard * + .table-container + h2,
.text-standard * + .table-container + h3,
.text-standard * + .table-container + h4,
.text-standard * + .table-container + h5,
.text-standard * + .table-container + h6 {
    margin-top: 35px;
  }
}

/* COMPONENTS - Individual site components */
/* BLOCKS
--------------------------------------------*/
/* block listing */
.block-listing {
  position: relative;
}
.block-listing.margin-sm {
  margin-top: -30px;
}
@media (max-width: 567px) {
  .block-listing.margin-sm {
    margin-top: -25px;
  }
}
.block-listing.margin-sm .block,
.block-listing.margin-sm .block-flex {
  margin-top: 30px;
}
@media (max-width: 567px) {
  .block-listing.margin-sm .block,
.block-listing.margin-sm .block-flex {
    margin-top: 25px;
  }
}
.block-listing.margin-md {
  margin-top: -35px;
}
@media (max-width: 567px) {
  .block-listing.margin-md {
    margin-top: -25px;
  }
}
.block-listing.margin-md .block,
.block-listing.margin-md .block-flex {
  margin-top: 35px;
}
@media (max-width: 567px) {
  .block-listing.margin-md .block,
.block-listing.margin-md .block-flex {
    margin-top: 25px;
  }
}
.block-listing.margin-lg {
  margin-top: -50px;
}
@media (min-width: 768px) and (max-width: 991px) {
  .block-listing.margin-lg {
    margin-top: -40px;
  }
}
@media (max-width: 767px) {
  .block-listing.margin-lg {
    margin-top: -30px;
  }
}
.block-listing.margin-lg .block,
.block-listing.margin-lg .block-flex {
  margin-top: 50px;
}
@media (min-width: 768px) and (max-width: 991px) {
  .block-listing.margin-lg .block,
.block-listing.margin-lg .block-flex {
    margin-top: 40px;
  }
}
@media (max-width: 767px) {
  .block-listing.margin-lg .block,
.block-listing.margin-lg .block-flex {
    margin-top: 30px;
  }
}
.block-listing.margin-xlg {
  margin-top: -60px;
}
@media (min-width: 768px) and (max-width: 991px) {
  .block-listing.margin-xlg {
    margin-top: -50px;
  }
}
@media (max-width: 767px) {
  .block-listing.margin-xlg {
    margin-top: -30px;
  }
}
.block-listing.margin-xlg .block,
.block-listing.margin-xlg .block-flex {
  margin-top: 60px;
}
@media (min-width: 768px) and (max-width: 991px) {
  .block-listing.margin-xlg .block,
.block-listing.margin-xlg .block-flex {
    margin-top: 50px;
  }
}
@media (max-width: 767px) {
  .block-listing.margin-xlg .block,
.block-listing.margin-xlg .block-flex {
    margin-top: 30px;
  }
}
.block-listing .bg-img-wrapper {
  position: relative;
}
.block-listing .caption,
.block-listing .caption-flex {
  width: 100%;
  z-index: 4;
}

/* deafult block */
.block {
  width: 100%;
  height: 100%;
  position: relative;
}

/* flex block */
.block-flex {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
  position: relative;
  -ms-flex-direction: column;
      flex-direction: column;
}

/* BUTTONS
--------------------------------------------*/
/* primary button styles */
.btn {
  margin: 0;
  cursor: pointer;
  border: 3px solid;
  text-align: left;
  position: relative;
  display: inline-block;
  text-transform: uppercase;
  outline: none !important;
  box-shadow: none;
  border-radius: 0;
  font-family: "FuturaLTPro-Bold", sans-serif;
  padding: 13px 20px 14px;
  font-size: 1.8rem;
  line-height: 1;
}
@media (max-width: 767px) {
  .btn {
    font-size: 1.7rem;
    padding: 12px 17px 13px;
  }
}
.btn:hover, .btn:focus {
  outline: none !important;
}

/* large button */
/* button branding */
/* button hover branding */
/* button - white */
.btn-white {
  border-color: white;
  background-color: white;
  color: #31357d;
}
.btn-white:hover, .btn-white:focus {
  color: white;
  background: transparent;
  border-color: white;
}

a:hover .btn-white,
a:focus .btn-white {
  color: white;
  background: transparent;
  border-color: white;
}

/* button - dark blue */
.btn-blue-dark {
  border-color: #31357d;
  background-color: #31357d;
  color: white;
}
.btn-blue-dark:hover, .btn-blue-dark:focus {
  color: #31357d;
  background: transparent;
  border-color: #31357d;
}

a:hover .btn-blue-dark,
a:focus .btn-blue-dark {
  color: #31357d;
  background: transparent;
  border-color: #31357d;
}

/* button - light blue */
.btn-blue-light {
  border-color: #00b5d4;
  background-color: #00b5d4;
  color: white;
}
.btn-blue-light:hover, .btn-blue-light:focus {
  color: #00b5d4;
  background: transparent;
  border-color: #00b5d4;
}

a:hover .btn-blue-light,
a:focus .btn-blue-light {
  color: #00b5d4;
  background: transparent;
  border-color: #00b5d4;
}

/* button - outline blue dark */
.btn-outline-blue-dark {
  color: white;
  border-color: #31357d;
  background-color: transparent;
}
.btn-outline-blue-dark:hover, .btn-outline-blue-dark:focus {
  background: #31357d;
  border-color: #31357d;
}
.btn-outline-blue-dark:hover, .btn-outline-blue-dark:focus {
  color: white;
}

a:hover .btn-outline-blue-dark,
a:focus .btn-outline-blue-dark {
  color: white;
  background: #31357d;
  border-color: #31357d;
}

/* button - outline blue light */
.btn-outline-blue-light {
  color: white;
  border-color: #00b5d4;
  background-color: transparent;
}
.btn-outline-blue-light:hover, .btn-outline-blue-light:focus {
  background: #00b5d4;
  border-color: #00b5d4;
}
.btn-outline-blue-light:hover, .btn-outline-blue-light:focus {
  color: white;
}

a:hover .btn-outline-blue-light,
a:focus .btn-outline-blue-light {
  color: white;
  background: #00b5d4;
  border-color: #00b5d4;
}

/* close button */
.btn-close {
  z-index: 999;
  display: block;
  border-radius: 40px;
  border: 2px solid white;
  background: transparent;
  width: 40px;
  height: 40px;
  top: 40px;
  right: 40px;
  position: absolute;
}
@media (max-width: 767px) {
  .btn-close {
    top: 15px;
    right: 20px;
    width: 34px;
    height: 34px;
  }
}
.btn-close:hover, .btn-close:focus {
  background: white;
}
.btn-close:hover:after, .btn-close:focus:after {
  color: #31357d;
}
.btn-close:after {
  color: white;
  content: "\e90b";
  font-size: 2rem;
  font-family: "icomoon";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media (max-width: 767px) {
  .btn-close:after {
    font-size: 1.8rem;
  }
}

/* back button */
.back-button {
  margin-top: 60px;
  padding-top: 30px;
  border-top: 2px solid #f0f0f0;
}
@media (min-width: 768px) and (max-width: 991px) {
  .back-button {
    margin-top: 50px;
  }
}
@media (max-width: 767px) {
  .back-button {
    margin-top: 40px;
  }
}
.back-button a {
  color: #31357d;
  position: relative;
  display: inline-block;
  padding-left: 25px;
  font-size: 2.2rem;
  line-height: 1.3;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .back-button a {
    font-size: 2.1rem;
  }
}
@media (max-width: 767px) {
  .back-button a {
    font-size: 1.9rem;
  }
}
@media (max-width: 767px) {
  .back-button a {
    padding-left: 20px;
    font-size: 1.6rem;
  }
}
.back-button a:hover, .back-button a:focus {
  color: #31357d;
}
.back-button a:before {
  content: "\e908";
  margin-top: 1px;
  font-size: 1.8rem;
  font-family: "icomoon";
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  left: 0;
}
@media (min-width: 768px) and (max-width: 991px) {
  .back-button a:before {
    font-size: 1.5rem;
  }
}
@media (max-width: 767px) {
  .back-button a:before {
    font-size: 1.4rem;
  }
}

/* CAPTION WRAPPER
--------------------------------------------*/
.caption-wrapper {
  z-index: 4;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: relative;
}
.caption-wrapper .container {
  height: 100%;
  z-index: 4;
  position: relative;
}
.caption-wrapper .caption {
  z-index: 4;
}

.caption-wrapper-flex {
  z-index: 4;
  width: 100%;
  height: 100%;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
  position: relative;
  -ms-flex-direction: column;
      flex-direction: column;
}

/* CAPTION POSITIONING
--------------------------------------------*/
.caption-bottom {
  top: auto;
  bottom: 0;
  position: absolute !important;
}
.caption-bottom.caption-right {
  right: 0;
  float: none;
}

.caption-left {
  float: left;
}

.caption-right {
  float: right;
}

.caption-center {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: relative;
}

/* CAPTION OVERLAY
--------------------------------------------*/
.caption-overlay {
  width: 100%;
  z-index: 5;
  left: 0;
  position: absolute;
}
.caption-overlay h1, .caption-overlay h2, .caption-overlay h3,
.caption-overlay h4, .caption-overlay h5, .caption-overlay h6,
.caption-overlay p, .caption-overlay li, .caption-overlay a:not(.btn), .caption-overlay span:not(.btn) {
  color: white;
}
.caption-overlay li:before {
  color: white !important;
}
.caption-overlay a:not(.btn):hover {
  color: #31357d;
}

.caption-overlay-flex {
  height: 100%;
  z-index: 5;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
  position: relative;
  -ms-flex-direction: column;
      flex-direction: column;
}
.caption-overlay-flex h1, .caption-overlay-flex h2, .caption-overlay-flex h3,
.caption-overlay-flex h4, .caption-overlay-flex h5, .caption-overlay-flex h6,
.caption-overlay-flex p, .caption-overlay-flex li, .caption-overlay-flex a:not(.btn), .caption-overlay-flex span:not(.btn) {
  color: white;
}
.caption-overlay-flex li:before {
  color: white !important;
}
.caption-overlay-flex a:not(.btn):hover {
  color: #31357d;
}

/* CAPTION FLEX
--------------------------------------------*/
.caption-flex {
  z-index: 5;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
  position: relative;
  -ms-flex-direction: column;
      flex-direction: column;
}
.caption-flex.text-left .btn {
  -ms-flex-item-align: start;
      align-self: flex-start;
}
.caption-flex.text-center .btn {
  -ms-flex-item-align: center;
      align-self: center;
}

.caption-flex-top {
  -ms-flex-pack: start;
      justify-content: flex-start;
}

.caption-flex-center {
  -ms-flex-pack: center;
      justify-content: center;
}

.caption-flex-bottom {
  -ms-flex-pack: end;
      justify-content: flex-end;
}

/* CTA BLOCK
--------------------------------------------*/
.cta-block {
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100%;
}
.cta-block .caption {
  -webkit-transform: translate3d(0, 0, 0);
}

/* CTA FLEX
--------------------------------------------*/
.cta-flex {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
  overflow: hidden;
  position: relative;
  -ms-flex-direction: column;
      flex-direction: column;
}
.cta-flex .caption-flex {
  -webkit-transform: translate3d(0, 0, 0);
}

/* CTA IMG
--------------------------------------------*/
.cta-img:hover .img-overlay {
  opacity: 0.3;
}
.cta-img .img-overlay {
  opacity: 0;
}

/* CTA IMG OVERLAY CAPTION
--------------------------------------------*/
.cta-img-overlay:hover .img-overlay {
  opacity: 0.75;
}
.cta-img-overlay .img-overlay {
  opacity: 0.85;
}

/* FORMS
--------------------------------------------*/
form p {
  margin: 0;
}
form br {
  display: none;
}
form label,
form legend {
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  form label,
form legend {
    margin-bottom: 7px;
  }
}
form legend {
  border: none;
  font-family: "FuturaLTPro-Bold", sans-serif;
  font-size: 3.2rem;
  line-height: 1.3;
}
@media (min-width: 768px) and (max-width: 1199px) {
  form legend {
    font-size: 2.9rem;
  }
}
@media (max-width: 767px) {
  form legend {
    font-size: 2.4rem;
  }
}

/* resets */
input, textarea, button {
  outline: medium none;
}

select {
  cursor: pointer;
}

::-ms-clear {
  display: none;
}

/* horizontal form */
.form-horizontal .form-group,
.form-group {
  margin: 0 0 15px;
}

.form-group-btn {
  margin: 0;
}

/* base form input */
/* base form checkbox */
/* base form textarea */
/* base file upload */
.file-upload-wrapper {
  padding: 10px 15px !important;
  color: #888;
  border-radius: 0;
  position: relative;
  border: 2px solid white;
  box-shadow: none;
  background: white;
  margin-bottom: 0;
  width: 100%;
  height: 45px;
  font-size: 1.8rem !important;
  line-height: 1.5;
  /* focus */
  /* placeholder text */
  top: 3px;
  cursor: pointer !important;
}
@media (max-width: 991px) {
  .file-upload-wrapper {
    height: 40px;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    padding: 10px !important;
  }
}
.file-upload-wrapper:focus {
  outline: 0;
  box-shadow: none;
  background: white;
  border-color: #31357d;
  transition: border 0.3s ease;
}
.file-upload-wrapper:-moz-placeholder {
  opacity: 1;
  color: #888;
  -moz-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.file-upload-wrapper::-moz-placeholder {
  opacity: 1;
  color: #888;
  -moz-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.file-upload-wrapper:-ms-input-placeholder {
  opacity: 1;
  color: #888;
  -ms-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.file-upload-wrapper::-webkit-input-placeholder {
  opacity: 1;
  color: #888;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.file-upload-wrapper:focus:-moz-placeholder {
  opacity: 0;
}
.file-upload-wrapper:focus::-moz-placeholder {
  opacity: 0;
}
.file-upload-wrapper:focus:-ms-input-placeholder {
  opacity: 0;
}
.file-upload-wrapper:focus::-webkit-input-placeholder {
  opacity: 0;
}
@media (min-width: 768px) and (max-width: 991px) {
  .file-upload-wrapper {
    top: 4px;
  }
}
.file-upload-wrapper:before {
  content: "Upload CV *";
  pointer-events: none;
  color: #888;
  cursor: pointer !important;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  left: 15px;
}
.file-upload-wrapper input[type=file] {
  padding-left: 150px;
  line-height: 1;
  font-size: 1.5rem;
  text-indent: 0;
  cursor: pointer !important;
  top: -1px;
  position: relative;
}

.file-upload-wrapper input[type=file]:not(*:root) {
  text-indent: -10px;
}

_:default:not(:root:root), .file-upload-wrapper input[type=file] {
  top: 2px;
}

/* gravity forms */
body .gform_wrapper {
  margin: 0;
  /* top label */
  /* inner labels */
  /* hidden labels */
  /* form heading */
  /* form input/dropdown */
  /* complex fields */
  /* address fields */
  /* name field */
  /* validation */
  /* form section */
  /* form title & description */
  /* checkboxes/radio buttons */
  /* select dropdowns */
  /* multi select */
  /* time fields */
  /* date picker */
  /* file upload */
  /* recaptcha */
  /* footer */
  /* submit button */
  /* validation */
}
body .gform_wrapper.two-column_wrapper {
  max-width: 100%;
}
body .gform_wrapper.two-column_wrapper ul.gform_fields {
  display: none;
}
body .gform_wrapper.two-column_wrapper ul.gform_fields.gform_column {
  display: block;
}
body .gform_wrapper.two-column_wrapper ul.gform_fields.gform_column li.gsection:first-child {
  display: none;
}
body .gform_wrapper.two-column_wrapper ul.gform_fields.gform_column.full-width {
  width: 100%;
  display: block;
  clear: both;
  margin-right: 0 !important;
}
body .gform_wrapper.two-column_wrapper ul.gform_fields.gform_column.full-width .empty + .gfield {
  margin-top: -8px !important;
}
@media (max-width: 767px) {
  body .gform_wrapper.two-column_wrapper ul.gform_fields.gform_column.full-width .empty + .gfield {
    margin-top: 15px !important;
  }
}
body .gform_wrapper.two-column_wrapper ul.gform_fields.gform_column .gfield.file-upload {
  margin-top: 12px !important;
}
@media (min-width: 768px) and (max-width: 991px) {
  body .gform_wrapper.two-column_wrapper ul.gform_fields.gform_column .gfield.file-upload {
    margin-top: 11px !important;
  }
}
@media (max-width: 767px) {
  body .gform_wrapper.two-column_wrapper ul.gform_fields.gform_column .gfield.file-upload {
    margin-top: 10px !important;
  }
}
body .gform_wrapper.two-column_wrapper ul.one-half {
  margin-left: 2% !important;
  width: 49%;
  float: left;
}
@media (max-width: 767px) {
  body .gform_wrapper.two-column_wrapper ul.one-half {
    width: 100%;
    margin-left: 0 !important;
  }
}
body .gform_wrapper.two-column_wrapper ul.one-half.first {
  margin-left: 0 !important;
}
body .gform_wrapper.two-column_wrapper li.gfield.field_description_below + li.gsection {
  margin-top: 0 !important;
}
body .gform_wrapper .top_label li.gfield.gf_right_half + li.gsection {
  padding: 0 !important;
}
body .gform_wrapper .top_label div.ginput_container {
  margin-top: 0 !important;
}
body .gform_wrapper .top_label input.medium,
body .gform_wrapper .top_label select.medium {
  width: 100% !important;
}
body .gform_wrapper .field_sublabel_below .ginput_complex.ginput_container label,
body .gform_wrapper .field_sublabel_below div[class*=gfield_time_].ginput_container label {
  margin: 0;
  display: none;
}
body .gform_wrapper li.hidden_label input {
  margin-top: 0;
}
body .gform_wrapper .gform_heading {
  margin-bottom: 25px;
}
body .gform_wrapper .gfield {
  width: 100%;
  list-style: none;
  display: inline-block;
  position: relative;
  margin-top: 15px !important;
  padding-right: 0 !important;
  /* validation */
}
body .gform_wrapper .gfield label {
  font-family: "FuturaLTPro-Book", sans-serif;
  margin: 0 0 10px !important;
}
@media (max-width: 767px) {
  body .gform_wrapper .gfield label {
    margin-bottom: 7px !important;
  }
}
body .gform_wrapper .gfield input[type=text] {
  padding: 10px 15px !important;
  color: #888;
  border-radius: 0;
  position: relative;
  border: 2px solid white;
  box-shadow: none;
  background: white;
  margin-bottom: 0;
  width: 100%;
  height: 45px;
  font-size: 1.8rem !important;
  line-height: 1.5;
  /* focus */
  /* placeholder text */
}
@media (max-width: 991px) {
  body .gform_wrapper .gfield input[type=text] {
    height: 40px;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    padding: 10px !important;
  }
}
body .gform_wrapper .gfield input[type=text]:focus {
  outline: 0;
  box-shadow: none;
  background: white;
  border-color: #31357d;
  transition: border 0.3s ease;
}
body .gform_wrapper .gfield input[type=text]:-moz-placeholder {
  opacity: 1;
  color: #888;
  -moz-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
body .gform_wrapper .gfield input[type=text]::-moz-placeholder {
  opacity: 1;
  color: #888;
  -moz-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
body .gform_wrapper .gfield input[type=text]:-ms-input-placeholder {
  opacity: 1;
  color: #888;
  -ms-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
body .gform_wrapper .gfield input[type=text]::-webkit-input-placeholder {
  opacity: 1;
  color: #888;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
body .gform_wrapper .gfield input[type=text]:focus:-moz-placeholder {
  opacity: 0;
}
body .gform_wrapper .gfield input[type=text]:focus::-moz-placeholder {
  opacity: 0;
}
body .gform_wrapper .gfield input[type=text]:focus:-ms-input-placeholder {
  opacity: 0;
}
body .gform_wrapper .gfield input[type=text]:focus::-webkit-input-placeholder {
  opacity: 0;
}
body .gform_wrapper .gfield textarea {
  padding: 10px 15px !important;
  color: #888;
  border-radius: 0;
  position: relative;
  border: 2px solid white;
  box-shadow: none;
  background: white;
  margin-bottom: 0;
  width: 100%;
  height: 45px;
  font-size: 1.8rem !important;
  line-height: 1.5;
  /* focus */
  /* placeholder text */
}
@media (max-width: 991px) {
  body .gform_wrapper .gfield textarea {
    height: 40px;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    padding: 10px !important;
  }
}
body .gform_wrapper .gfield textarea:focus {
  outline: 0;
  box-shadow: none;
  background: white;
  border-color: #31357d;
  transition: border 0.3s ease;
}
body .gform_wrapper .gfield textarea:-moz-placeholder {
  opacity: 1;
  color: #888;
  -moz-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
body .gform_wrapper .gfield textarea::-moz-placeholder {
  opacity: 1;
  color: #888;
  -moz-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
body .gform_wrapper .gfield textarea:-ms-input-placeholder {
  opacity: 1;
  color: #888;
  -ms-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
body .gform_wrapper .gfield textarea::-webkit-input-placeholder {
  opacity: 1;
  color: #888;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
body .gform_wrapper .gfield textarea:focus:-moz-placeholder {
  opacity: 0;
}
body .gform_wrapper .gfield textarea:focus::-moz-placeholder {
  opacity: 0;
}
body .gform_wrapper .gfield textarea:focus:-ms-input-placeholder {
  opacity: 0;
}
body .gform_wrapper .gfield textarea:focus::-webkit-input-placeholder {
  opacity: 0;
}
body .gform_wrapper .gfield textarea.small, body .gform_wrapper .gfield textarea.medium, body .gform_wrapper .gfield textarea.large {
  height: 130px;
}
body .gform_wrapper .gfield select {
  padding: 10px 15px !important;
  color: #888;
  border-radius: 0;
  position: relative;
  border: 2px solid white;
  box-shadow: none;
  background: white;
  margin-bottom: 0;
  width: 100%;
  height: 45px;
  font-size: 1.8rem !important;
  line-height: 1.5;
  /* focus */
  /* placeholder text */
  padding: 7px 15px !important;
  -webkit-appearance: none !important;
     -moz-appearance: none !important;
          appearance: none !important;
  z-index: 1;
}
@media (max-width: 991px) {
  body .gform_wrapper .gfield select {
    height: 40px;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    padding: 10px !important;
  }
}
body .gform_wrapper .gfield select:focus {
  outline: 0;
  box-shadow: none;
  background: white;
  border-color: #31357d;
  transition: border 0.3s ease;
}
body .gform_wrapper .gfield select:-moz-placeholder {
  opacity: 1;
  color: #888;
  -moz-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
body .gform_wrapper .gfield select::-moz-placeholder {
  opacity: 1;
  color: #888;
  -moz-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
body .gform_wrapper .gfield select:-ms-input-placeholder {
  opacity: 1;
  color: #888;
  -ms-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
body .gform_wrapper .gfield select::-webkit-input-placeholder {
  opacity: 1;
  color: #888;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
body .gform_wrapper .gfield select:focus:-moz-placeholder {
  opacity: 0;
}
body .gform_wrapper .gfield select:focus::-moz-placeholder {
  opacity: 0;
}
body .gform_wrapper .gfield select:focus:-ms-input-placeholder {
  opacity: 0;
}
body .gform_wrapper .gfield select:focus::-webkit-input-placeholder {
  opacity: 0;
}
@media (max-width: 991px) {
  body .gform_wrapper .gfield select {
    padding: 5px 10px !important;
  }
}
body .gform_wrapper .gfield h5 {
  margin: 10px 0;
  font-size: 1.6rem;
  line-height: 1.5;
}
body .gform_wrapper .gfield.gfield_error {
  margin: 20px 0 0 !important;
  padding: 0 !important;
  border: none !important;
  background: none !important;
}
@media (max-width: 767px) {
  body .gform_wrapper .gfield.gfield_error {
    margin-top: 15px !important;
  }
}
body .gform_wrapper .ginput_complex .ginput_full,
body .gform_wrapper .ginput_complex .ginput_left,
body .gform_wrapper .ginput_complex .ginput_right {
  min-height: auto;
}
body .gform_wrapper .ginput_container_address span {
  display: block;
  margin-bottom: 15px !important;
}
@media (max-width: 767px) {
  body .gform_wrapper .ginput_container_address span {
    margin-bottom: 10px !important;
  }
}
body .gform_wrapper .ginput_container_name span {
  padding-right: 14px !important;
}
@media (max-width: 567px) {
  body .gform_wrapper .ginput_container_name span {
    padding-right: 0 !important;
  }
}
body .gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) {
  max-width: inherit !important;
  width: 100%;
  margin: 15px 0 0 !important;
}
@media (max-width: 767px) {
  body .gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) {
    width: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
body .gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half):nth-of-type(even) {
  margin-right: 0 !important;
}
body .gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half).file-upload {
  margin-top: 30px !important;
}
@media (max-width: 767px) {
  body .gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half).file-upload {
    margin-top: 20px !important;
  }
}
body .gform_wrapper .validation_message {
  display: none;
}
body .gform_wrapper .gsection {
  margin: 25px 0 0 !important;
  padding-bottom: 0 !important;
  border-bottom: none !important;
}
@media (max-width: 767px) {
  body .gform_wrapper .gsection {
    display: none;
  }
}
body .gform_wrapper .gsection:first-of-type {
  margin-top: 0 !important;
}
body .gform_wrapper .gsection .gfield_label,
body .gform_wrapper h2.gsection_title,
body .gform_wrapper h3.gform_title {
  font-size: 2.7rem;
  line-height: 1.3;
  font-family: "FuturaLTPro-Bold", sans-serif;
}
@media (min-width: 768px) and (max-width: 1199px) {
  body .gform_wrapper .gsection .gfield_label,
body .gform_wrapper h2.gsection_title,
body .gform_wrapper h3.gform_title {
    font-size: 2.4rem;
  }
}
@media (max-width: 767px) {
  body .gform_wrapper .gsection .gfield_label,
body .gform_wrapper h2.gsection_title,
body .gform_wrapper h3.gform_title {
    font-size: 2.1rem;
  }
}
body .gform_wrapper .gfield_description,
body .gform_wrapper .gsection_description {
  padding: 0;
  margin: 15px 0;
  font-size: 1.7rem;
  font-weight: normal;
}
body .gform_wrapper .field_description_below .gfield_description {
  padding-top: 10px;
}
@media (max-width: 767px) {
  body .gform_wrapper .field_description_below .gfield_description {
    padding-top: 5px !important;
  }
}
body .gform_wrapper .description_above .gfield_description {
  padding: 0;
}
body .gform_wrapper .ginput_container_checkbox,
body .gform_wrapper .ginput_container_radio {
  margin-bottom: 25px;
}
body .gform_wrapper .ginput_container_checkbox label,
body .gform_wrapper .ginput_container_radio label {
  cursor: pointer;
  position: relative;
  font-weight: 400;
  margin: 4px 0 0 0 !important;
  display: inline-block !important;
  padding-left: 23px !important;
}
body .gform_wrapper .ginput_container_checkbox label:after, body .gform_wrapper .ginput_container_checkbox label:before,
body .gform_wrapper .ginput_container_radio label:after,
body .gform_wrapper .ginput_container_radio label:before {
  content: "";
  border-radius: 0;
  position: absolute;
}
body .gform_wrapper .ginput_container_checkbox label:before,
body .gform_wrapper .ginput_container_radio label:before {
  left: 0;
  top: 4px;
  width: 15px;
  height: 15px;
  border: 1px solid #484b52;
}
@media (min-width: 1921px) {
  body .gform_wrapper .ginput_container_checkbox label:before,
body .gform_wrapper .ginput_container_radio label:before {
    top: 6px;
  }
}
body .gform_wrapper .ginput_container_checkbox label:after,
body .gform_wrapper .ginput_container_radio label:after {
  opacity: 0;
}
body .gform_wrapper .ginput_container_checkbox input,
body .gform_wrapper .ginput_container_radio input {
  display: none !important;
  opacity: 0;
  margin: 0 !important;
  padding: 0 !important;
}
body .gform_wrapper .ginput_container_checkbox input:checked + label:after, body .gform_wrapper .ginput_container_checkbox input:checked + label:after,
body .gform_wrapper .ginput_container_radio input:checked + label:after,
body .gform_wrapper .ginput_container_radio input:checked + label:after {
  left: 0;
  top: -6px;
  opacity: 1;
  color: #484b52;
  content: "\e5ca";
  font-size: 2rem;
  font-family: "icomoon";
}
@media (min-width: 1921px) {
  body .gform_wrapper .ginput_container_checkbox input:checked + label:after, body .gform_wrapper .ginput_container_checkbox input:checked + label:after,
body .gform_wrapper .ginput_container_radio input:checked + label:after,
body .gform_wrapper .ginput_container_radio input:checked + label:after {
    top: -7px;
  }
}
@media (max-width: 767px) {
  body .gform_wrapper .ginput_container_checkbox,
body .gform_wrapper .ginput_container_radio {
    margin-bottom: 15px !important;
  }
}
body .gform_wrapper .ginput_container_checkbox li,
body .gform_wrapper .ginput_container_radio li {
  display: inline;
  margin: 0 15px 5px 0 !important;
}
@media (max-width: 767px) {
  body .gform_wrapper .ginput_container_checkbox label,
body .gform_wrapper .ginput_container_radio label {
    width: 100%;
    max-width: 100%;
  }
}
body .gform_wrapper .ginput_container_checkbox label:before,
body .gform_wrapper .ginput_container_radio label:before {
  top: 2px;
}
@media (max-width: 1199px) {
  body .gform_wrapper .ginput_container_checkbox label:before,
body .gform_wrapper .ginput_container_radio label:before {
    top: 1px;
  }
}
body .gform_wrapper .ginput_container_checkbox input:checked + label:after, body .gform_wrapper .ginput_container_checkbox input:checked + label:after,
body .gform_wrapper .ginput_container_radio input:checked + label:after,
body .gform_wrapper .ginput_container_radio input:checked + label:after {
  top: -7px;
}
@media (min-width: 1921px) {
  body .gform_wrapper .ginput_container_checkbox input:checked + label:after, body .gform_wrapper .ginput_container_checkbox input:checked + label:after,
body .gform_wrapper .ginput_container_radio input:checked + label:after,
body .gform_wrapper .ginput_container_radio input:checked + label:after {
    top: -10px;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  body .gform_wrapper .ginput_container_checkbox input:checked + label:after, body .gform_wrapper .ginput_container_checkbox input:checked + label:after,
body .gform_wrapper .ginput_container_radio input:checked + label:after,
body .gform_wrapper .ginput_container_radio input:checked + label:after {
    top: -5px;
  }
}
@media (max-width: 767px) {
  body .gform_wrapper .ginput_container_checkbox input:checked + label:after, body .gform_wrapper .ginput_container_checkbox input:checked + label:after,
body .gform_wrapper .ginput_container_radio input:checked + label:after,
body .gform_wrapper .ginput_container_radio input:checked + label:after {
    top: -8px;
  }
}
body .gform_wrapper .ginput_container_select,
body .gform_wrapper .gfield_time_ampm,
body .gform_wrapper .ginput_container_address .address_country {
  position: relative;
}
body .gform_wrapper .ginput_container_select:after,
body .gform_wrapper .gfield_time_ampm:after,
body .gform_wrapper .ginput_container_address .address_country:after {
  content: "\e907";
  font-family: "icomoon";
  font-size: 8px;
  display: block;
  color: #484b52;
  pointer-events: none;
  z-index: 2;
  margin-top: 1px;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  right: 15px;
}
@media (max-width: 991px) {
  body .gform_wrapper .ginput_container_select:after,
body .gform_wrapper .gfield_time_ampm:after,
body .gform_wrapper .ginput_container_address .address_country:after {
    right: 10px;
  }
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  body .gform_wrapper .ginput_container_select:after,
body .gform_wrapper .gfield_time_ampm:after,
body .gform_wrapper .ginput_container_address .address_country:after {
    display: none;
  }
}
body .gform_wrapper .ginput_container_select select.not_chosen,
body .gform_wrapper .gfield_time_ampm select.not_chosen,
body .gform_wrapper .ginput_container_address .address_country select.not_chosen {
  color: #888;
}
body .gform_wrapper .ginput_container_select select option,
body .gform_wrapper .gfield_time_ampm select option,
body .gform_wrapper .ginput_container_address .address_country select option {
  color: #484b52;
}
body .gform_wrapper .ginput_container_select select option:first-child,
body .gform_wrapper .gfield_time_ampm select option:first-child,
body .gform_wrapper .ginput_container_address .address_country select option:first-child {
  color: #888;
}
body .gform_wrapper .ginput_container_multiselect .gfield_select {
  height: 150px !important;
}
body .gform_wrapper.gf_browser_safari .gfield_time_ampm select, body .gform_wrapper.gf_browser_chrome .gfield_time_ampm select, body .gform_wrapper.gf_browser_gecko .gfield_time_ampm select, body .gform_wrapper.gf_browser_ie .gfield_time_ampm select, body .gform_wrapper.gf_browser_iphone .gfield_time_ampm select, body .gform_wrapper.gf_browser_unknown .gfield_time_ampm select {
  width: 100% !important;
  max-width: 100% !important;
}
body .gform_wrapper .gfield_time_ampm,
body .gform_wrapper .gfield_time_hour,
body .gform_wrapper .gfield_time_minute {
  width: 127px;
  max-width: 127px;
}
body .gform_wrapper .gfield_time_hour {
  margin-right: 5px;
}
body .gform_wrapper .gfield_time_hour i {
  display: none;
}
body .gform_wrapper input.medium.datepicker {
  width: 333px !important;
}
@media (min-width: 1921px) {
  body .gform_wrapper input.medium.datepicker {
    width: 423px !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  body .gform_wrapper input.medium.datepicker {
    width: 243px !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  body .gform_wrapper input.medium.datepicker {
    width: 305px !important;
  }
}
@media (max-width: 767px) {
  body .gform_wrapper input.medium.datepicker {
    width: 100% !important;
  }
}
body .gform_wrapper .ginput_container_fileupload + .validation_message {
  display: block !important;
  top: -25px;
  left: 230px;
  position: absolute;
}
@media (min-width: 1921px) {
  body .gform_wrapper .ginput_container_fileupload + .validation_message {
    left: 260px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  body .gform_wrapper .ginput_container_fileupload + .validation_message {
    top: -24px;
    left: 220px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  body .gform_wrapper .ginput_container_fileupload + .validation_message {
    top: -23px;
    left: 210px;
    font-size: 1.6rem;
  }
}
@media (max-width: 767px) {
  body .gform_wrapper .ginput_container_fileupload + .validation_message {
    top: -19px;
    left: 220px;
  }
}
body .gform_wrapper .grecaptcha-badge {
  z-index: 998;
}
body .gform_wrapper .gform_page_footer {
  border: none;
}
body .gform_wrapper .gform_footer {
  text-align: center;
  padding: 0 !important;
  margin-top: 0 !important;
}
body .gform_wrapper .gform_button,
body .gform_wrapper .gform_next_button,
body .gform_wrapper .gform_previous_button {
  margin: 0 !important;
  cursor: pointer;
  border: 2px solid #00b5d4;
  color: white;
  font-family: "FuturaLTPro-Bold", sans-serif;
  background: #00b5d4;
  border-radius: 0;
  text-transform: uppercase;
  box-shadow: none;
  position: relative;
  display: inline-block;
  outline: none !important;
  padding: 16px 20px 14px !important;
  font-size: 1.8rem !important;
  line-height: 1 !important;
}
@media (max-width: 767px) {
  body .gform_wrapper .gform_button,
body .gform_wrapper .gform_next_button,
body .gform_wrapper .gform_previous_button {
    width: auto !important;
    padding: 15px 17px 13px;
    line-height: 1 !important;
    font-size: 1.7rem !important;
  }
}
body .gform_wrapper .gform_button:hover, body .gform_wrapper .gform_button:focus,
body .gform_wrapper .gform_next_button:hover,
body .gform_wrapper .gform_next_button:focus,
body .gform_wrapper .gform_previous_button:hover,
body .gform_wrapper .gform_previous_button:focus {
  width: auto;
  color: white;
  outline: none !important;
  background: #31357d;
  border-color: #31357d;
}
body .gform_wrapper .gfield_required,
body .gform_wrapper .gfield_error .gfield_label,
body .gform_wrapper li.gfield_error div.ginput_complex.ginput_container label,
body .gform_wrapper li.gfield_error ul.gfield_checkbox,
body .gform_wrapper li.gfield_error ul.gfield_radio,
body .gform_wrapper .validation_message {
  color: red;
}
body .gform_wrapper div.validation_error {
  width: 99%;
  color: red;
  text-align: left;
  border-color: red;
  margin: 20px 0 0 12px;
  font-weight: normal;
  text-align: center;
}
body .gform_wrapper li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
body .gform_wrapper li.gfield_error textarea {
  width: 100%;
  border: 2px solid red;
}

.gform_confirmation_message {
  color: white;
  margin-top: 20px;
}

/* ui datepicker */
.ui-datepicker {
  margin-top: 0 !important;
}

.ui-datepicker-header {
  color: #484b52 !important;
}

/* BOOTSTRAP MODAL
--------------------------------------------*/
/* modal backdrop */
.modal-backdrop.in {
  opacity: 1;
}

.modal-backdrop {
  background: rgba(49, 53, 125, 0.95);
}

.modal {
  overflow-y: auto;
}

.modal-open {
  overflow: auto;
  padding-right: 0px !important;
}

/* modal content */
.modal {
  padding: 0 !important;
}

.modal-dialog {
  margin-top: 130px;
  -webkit-transform: none !important;
          transform: none !important;
}
@media (max-width: 767px) {
  .modal-dialog {
    margin: 0;
  }
}

.modal-content {
  border: none;
  border-radius: 0;
  background: white;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.3);
}
@media (max-width: 767px) {
  .modal-content {
    box-shadow: none;
  }
}

.modal-body {
  padding: 60px;
}
@media (min-width: 1921px) {
  .modal-body {
    padding: 70px;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .modal-body {
    padding: 50px;
  }
}
@media (max-width: 767px) {
  .modal-body {
    padding: 30px 25px;
  }
}

/* BX SLIDER
--------------------------------------------*/
.bx-wrapper {
  margin: 0 !important;
  z-index: 997;
  /* pager */
}
.bx-wrapper img {
  display: inline-block;
  height: auto;
}
.bx-wrapper .bx-loading {
  display: none !important;
}
.bx-wrapper .bx-viewport {
  left: 0;
  border: none;
  box-shadow: none;
  background: none;
}
.bx-wrapper .bx-viewport ul {
  list-style: none;
  text-align: center;
}
.bx-wrapper .bx-viewport li {
  min-height: 1px;
  min-width: 1px;
  overflow: hidden;
  list-style: none !important;
}
.bx-wrapper .bx-pager {
  padding: 0;
  bottom: 0;
}
.bx-wrapper .bx-pager.bx-default-pager .bx-pager-item:not(:last-of-type) {
  margin-right: 15px;
}
.bx-wrapper .bx-pager.bx-default-pager a {
  margin: 0;
  width: 20px;
  height: 20px;
  border-radius: 20px;
  background: #f0f0f0;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .bx-wrapper .bx-pager.bx-default-pager a {
    width: 18px;
    height: 18px;
    border-radius: 18px;
  }
}
@media (max-width: 767px) {
  .bx-wrapper .bx-pager.bx-default-pager a {
    width: 15px;
    height: 15px;
    border-radius: 15px;
  }
}
.bx-wrapper .bx-controls {
  position: relative;
}

/* slider nav buttons */
.slider-nav {
  width: 100%;
  z-index: 997;
  position: absolute;
}
.slider-nav span {
  position: absolute;
}
.slider-nav a {
  position: absolute;
  cursor: pointer;
  display: inline-block;
  width: 20px;
  height: 30px;
}
@media (max-width: 767px) {
  .slider-nav a {
    position: relative;
  }
}
.slider-nav a:hover:before {
  color: #31357d;
}
.slider-nav a:before {
  color: #31357d;
  font-size: 2.4rem;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-family: "icomoon";
  -moz-osx-font-smoothing: grayscale;
}
@media (max-width: 767px) {
  .slider-nav a:before {
    font-size: 2rem;
  }
}
.slider-nav .slider-prev {
  left: 0;
}
.slider-nav .slider-prev:before {
  content: "\e908";
}
.slider-nav .slider-next {
  right: 0;
}
.slider-nav .slider-next:before {
  content: "\e909";
}

/* FLEXSLIDER
--------------------------------------------*/
.flexslider {
  height: 100%;
  margin: 0;
  border: none;
  background: none;
  border-radius: 0;
}
.flexslider:not(.box-shadow-base) {
  box-shadow: none;
}
.flexslider:hover .flex-prev,
.flexslider:hover .flex-next {
  opacity: 1;
}
.flexslider .slides {
  height: 100%;
}
.flexslider .slides > li {
  height: 100%;
  margin: 0;
  position: relative;
}

/* directional nav - arrows */
.flex-direction-nav li {
  margin: 0;
}
.flex-direction-nav a {
  opacity: 1;
  cursor: pointer;
  display: inline-block;
  text-shadow: none;
  background: white;
  margin-top: -25px;
  width: 50px;
  height: 50px;
}
@media (max-width: 767px) {
  .flex-direction-nav a {
    width: 34px;
    height: 37px;
    margin-top: -17px;
  }
}
.flex-direction-nav a:hover {
  opacity: 0.8 !important;
}
.flex-direction-nav a:before {
  color: black;
  font-size: 1.9rem;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-family: "icomoon";
  -moz-osx-font-smoothing: grayscale;
}
@media (min-width: 768px) and (max-width: 991px) {
  .flex-direction-nav a:before {
    font-size: 1.6rem;
  }
}
@media (max-width: 767px) {
  .flex-direction-nav a:before {
    font-size: 1.5rem;
  }
}
.flex-direction-nav a.flex-prev {
  left: 0 !important;
}
.flex-direction-nav a.flex-prev:before {
  content: "\e908";
}
.flex-direction-nav a.flex-next {
  right: 0 !important;
}
.flex-direction-nav a.flex-next:before {
  content: "\e909";
}

/* control nav - dots */
.flex-control-container {
  float: left;
  margin: 0 25px;
  display: inline-block;
  position: relative;
  overflow: hidden;
}

.flex-control-nav {
  width: auto;
  z-index: 997;
  bottom: inherit;
  text-align: left;
  position: relative;
}
.flex-control-nav li {
  margin: 0;
  display: inline-block;
}
.flex-control-nav li:not(:last-of-type) {
  margin-right: 15px;
}

.flex-control-paging li a {
  width: 20px;
  height: 20px;
  box-shadow: none;
  background: transparent;
  border: 2px solid white;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .flex-control-paging li a {
    width: 18px;
    height: 18px;
  }
}
@media (max-width: 767px) {
  .flex-control-paging li a {
    width: 17px;
    height: 17px;
  }
}
.flex-control-paging li a:hover {
  background: white;
}
.flex-control-paging li a.flex-active {
  background: white;
}
.flex-control-paging li a.flex-active:hover {
  background: white;
}

/* SOCIAL
--------------------------------------------*/
.social-links {
  list-style: none;
}
.social-links li {
  margin-right: 15px;
  display: inline-block;
}
.social-links li:last-of-type {
  margin: 0;
}
.social-links a {
  display: block;
  position: relative;
  color: white;
}
.social-links a:hover {
  color: rgba(255, 255, 255, 0.6);
}
.social-links span {
  font-size: 2rem;
}

/* TABLES
--------------------------------------------*/
.table-container {
  width: 100%;
  overflow-y: auto;
}
.table-container table {
  width: 100%;
  display: table;
  border-spacing: 0;
  background: white;
  text-align: left;
  border-collapse: collapse;
  border: 2px solid #484b52;
}
.table-container table tr:first-of-type th, .table-container table tr:first-of-type td {
  color: white;
  font-size: 2.2rem;
  line-height: 1.3;
  font-family: "FuturaLTPro-Bold", sans-serif;
  background: #484b52;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .table-container table tr:first-of-type th, .table-container table tr:first-of-type td {
    font-size: 2.1rem;
  }
}
@media (max-width: 767px) {
  .table-container table tr:first-of-type th, .table-container table tr:first-of-type td {
    font-size: 1.9rem;
  }
}
.table-container table tr:nth-of-type(even) td {
  background: #f0f0f0;
}
.table-container table th, .table-container table td {
  padding: 15px 20px;
  background: white;
  border: 2px solid #484b52;
}
@media (min-width: 1921px) {
  .table-container table th, .table-container table td {
    padding: 20px 25px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .table-container table th, .table-container table td {
    padding: 15px;
  }
}
@media (max-width: 767px) {
  .table-container table th, .table-container table td {
    padding: 10px 15px;
  }
}
.table-container table thead + tbody tr:first-of-type th, .table-container table thead + tbody tr:first-of-type td {
  background: white;
  color: #484b52;
  font-family: inherit;
  font-size: 1.5rem;
  line-height: 1.5;
}
.table-container table thead th {
  color: white;
  font-size: 2.2rem;
  line-height: 1.3;
  font-family: "FuturaLTPro-Bold", sans-serif;
  background: #484b52;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .table-container table thead th {
    font-size: 2.1rem;
  }
}
@media (max-width: 767px) {
  .table-container table thead th {
    font-size: 1.9rem;
  }
}

/* BACKGROUNDS - Background images and colours */
/* BACKGROUND COLOURS
--------------------------------------------*/
/* white */
.bg-white {
  background: white;
}
.bg-white p, .bg-white ul, .bg-white li {
  color: #484b52;
}

/* grey - light */
.bg-grey-light {
  background: #f0f0f0;
}
.bg-grey-light p, .bg-grey-light ul, .bg-grey-light li {
  color: #484b52;
}

/* grey - dark */
.bg-grey-dark {
  background: #484b52;
}
.bg-grey-dark h1, .bg-grey-dark h2, .bg-grey-dark h3,
.bg-grey-dark h4, .bg-grey-dark h5, .bg-grey-dark h6 {
  color: white;
}
.bg-grey-dark p, .bg-grey-dark ul, .bg-grey-dark li {
  color: white;
}
.bg-grey-dark .btn:hover, .bg-grey-dark .btn:focus {
  color: white;
  background: transparent;
  border-color: white;
}

/* blue - dark */
.bg-blue-dark {
  background: #31357d;
}
.bg-blue-dark h1, .bg-blue-dark h2, .bg-blue-dark h3,
.bg-blue-dark h4, .bg-blue-dark h5, .bg-blue-dark h6 {
  color: white;
}
.bg-blue-dark p, .bg-blue-dark ul, .bg-blue-dark li {
  color: white;
}
.bg-blue-dark .btn:hover, .bg-blue-dark .btn:focus {
  color: white;
  background: transparent;
  border-color: white;
}

/* blue - light */
.bg-blue-light {
  background: #00b5d4;
}
.bg-blue-light h1, .bg-blue-light h2, .bg-blue-light h3,
.bg-blue-light h4, .bg-blue-light h5, .bg-blue-light h6 {
  color: white;
}
.bg-blue-light p, .bg-blue-light ul, .bg-blue-light li {
  color: white;
}
.bg-blue-light .btn:hover, .bg-blue-light .btn:focus {
  color: white;
  background: transparent;
  border-color: white;
}

/* GRADIENT OVERLAYS
--------------------------------------------*/
.gradient-overlay {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 2;
}

/* black gradient */
.gradient-overlay-black-left {
  background: rgba(0, 0, 0, 0.7) 0%;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 100%);
}

.gradient-overlay-black-left-alt {
  background: rgba(0, 0, 0, 0.5) 0%;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 70%);
}

.gradient-overlay-black-top {
  background: rgba(0, 0, 0, 0.3) 0%;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 50%);
}

.gradient-overlay-black-bottom {
  background: rgba(0, 0, 0, 0.7) 0%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 100%);
}

.gradient-overlay-black-bottom-alt {
  background: rgba(0, 0, 0, 0.7) 0%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 50%);
}

.gradient-overlay-black-bottom-left {
  background: black 0%;
  background: linear-gradient(45deg, black 0%, rgba(0, 0, 0, 0.1) 60%);
}

.gradient-overlay-black-bottom-left-alt {
  background: rgba(0, 0, 0, 0.6) 0%;
  background: linear-gradient(45deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 50%);
}

.gradient-overlay-black-top-bottom {
  background: rgba(0, 0, 0, 0.7) 0%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 100%);
}

/* white gradient */
.gradient-overlay-white-left {
  background: white 0%;
  background: linear-gradient(to right, white 0%, rgba(255, 255, 255, 0.7) 100%);
}

.gradient-overlay-white-top {
  background: rgba(255, 255, 255, 0.5) 0%;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 50%);
}

.gradient-overlay-white-bottom {
  background: rgba(255, 255, 255, 0.7) 0%;
  background: linear-gradient(to top, rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 100%);
}

/* IMG OVERLAYS
--------------------------------------------*/
.img-overlay {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 3;
  opacity: 0.8;
}

/* block overlay colours */
.img-overlay-black {
  background-color: black;
}

.img-overlay-white {
  background: white;
}

.img-overlay-blue-dark {
  background: #31357d;
}

.img-overlay-blue-light {
  background: #00b5d4;
}

/* BG IMAGE
--------------------------------------------*/
.bg-img-wrapper {
  overflow: hidden;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
}

.bg-img {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  position: absolute;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

/* FULL WIDTH WIDGETS - Individual widgets */
/* WIDGET - FULL WIDTH
--------------------------------------------*/
.widget-full {
  padding: 65px 0;
  position: relative;
  /* no padding */
  /* if widget bg follows same bg */
}
@media (min-width: 1921px) {
  .widget-full {
    padding: 75px 0;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .widget-full {
    padding: 60px 0;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .widget-full {
    padding: 50px 0;
  }
}
@media (max-width: 767px) {
  .widget-full {
    padding: 30px 0 40px;
  }
}
.widget-full.no-padding {
  padding: 0;
}
.widget-full.bg-white + .bg-white {
  padding-top: 0;
}
.widget-full.bg-grey-light + .bg-grey-light {
  padding-top: 0;
}

/* CORE VALUES WIDGET
--------------------------------------------*/
.core-values-widget .col-flex-xs-6:nth-of-type(odd) .block-flex {
  background: #31357d;
  border: 15px solid transparent;
}
.core-values-widget .col-flex-xs-6:nth-of-type(odd) .title,
.core-values-widget .col-flex-xs-6:nth-of-type(odd) .synopsis {
  color: white;
}
.core-values-widget .col-flex-xs-6:nth-of-type(even) .block-flex {
  background: white;
  border: 15px solid #aeaeae;
}
.core-values-widget .col-flex-xs-6:nth-of-type(even) .title,
.core-values-widget .col-flex-xs-6:nth-of-type(even) .synopsis {
  color: #31357d;
}
.core-values-widget .block-flex {
  padding: 30px;
}
@media (min-width: 1921px) {
  .core-values-widget .block-flex {
    padding: 60px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .core-values-widget .block-flex {
    padding: 20px 10px;
  }
}
@media (min-width: 568px) and (max-width: 767px) {
  .core-values-widget .block-flex {
    padding: 30px 10px;
  }
}
@media (max-width: 567px) {
  .core-values-widget .block-flex {
    padding: 30px 20px;
  }
}
.core-values-widget .img-responsive {
  height: 100px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-item-align: center;
      align-self: center;
  margin-bottom: 20px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.core-values-widget .title {
  margin-bottom: 10px;
  font-size: 2.7rem;
  line-height: 1.3;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .core-values-widget .title {
    font-size: 2.4rem;
  }
}
@media (max-width: 767px) {
  .core-values-widget .title {
    font-size: 2.1rem;
  }
}
.core-values-widget .synopsis {
  font-size: 1.8rem;
}

/* ENQUIRY FORM WIDGET
--------------------------------------------*/
.enquiry-form-widget .form-wrapper {
  margin-top: -15px;
}

/* FULL WIDTH IMAGE WIDGET
--------------------------------------------*/
.full-width-image-widget .img-responsive {
  width: 100%;
}

/* FULL WIDTH IMAGE & TEXT WIDGET
--------------------------------------------*/
.full-width-img-text-widget {
  min-height: 550px;
}
@media (min-width: 1921px) {
  .full-width-img-text-widget {
    min-height: 700px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .full-width-img-text-widget {
    min-height: 500px;
  }
}
@media (max-width: 991px) {
  .full-width-img-text-widget {
    min-height: inherit;
  }
}
.full-width-img-text-widget .bg-img-wrapper {
  position: relative;
}
.full-width-img-text-widget .bg-img-wrapper .img-responsive {
  width: 100%;
}
.full-width-img-text-widget .caption-wrapper {
  position: absolute;
}
@media (max-width: 767px) {
  .full-width-img-text-widget .caption-wrapper {
    position: relative;
  }
}
.full-width-img-text-widget .container-fluid {
  height: 100%;
  position: relative;
}
.full-width-img-text-widget .caption-flex {
  width: 50%;
  height: 100%;
  padding: 10%;
  background: rgba(49, 53, 125, 0.8);
}
.full-width-img-text-widget .caption-flex h1, .full-width-img-text-widget .caption-flex h2, .full-width-img-text-widget .caption-flex h3,
.full-width-img-text-widget .caption-flex h4, .full-width-img-text-widget .caption-flex h5, .full-width-img-text-widget .caption-flex h6,
.full-width-img-text-widget .caption-flex p, .full-width-img-text-widget .caption-flex li, .full-width-img-text-widget .caption-flex a:not(.btn), .full-width-img-text-widget .caption-flex span:not(.btn) {
  color: white;
}
.full-width-img-text-widget .caption-flex li:before {
  color: white !important;
}
.full-width-img-text-widget .caption-flex a:not(.btn):hover {
  color: #31357d;
}
@media (min-width: 768px) and (max-width: 991px) {
  .full-width-img-text-widget .caption-flex {
    padding: 10% 5%;
  }
}
@media (max-width: 767px) {
  .full-width-img-text-widget .caption-flex {
    width: 100%;
    padding: 35px 20px;
    background: #31357d;
  }
}
.full-width-img-text-widget .caption-flex .btn {
  -ms-flex-item-align: center;
      align-self: center;
}

/* LOGOS WIDGET
--------------------------------------------*/
.logos-widget .cta-flex {
  height: 100%;
  -ms-flex-direction: row;
      flex-direction: row;
}
.logos-widget .block-listing {
  margin-bottom: 30px;
}
@media (max-width: 767px) {
  .logos-widget .block-listing {
    margin-bottom: 0;
  }
}
.logos-widget .block-flex {
  height: 262.5px;
}
@media (min-width: 1921px) {
  .logos-widget .block-flex {
    height: 332.5px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .logos-widget .block-flex {
    height: 212.5px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .logos-widget .block-flex {
    height: 345px;
  }
}
@media (min-width: 568px) and (max-width: 767px) {
  .logos-widget .block-flex {
    height: 350px;
  }
}
@media (max-width: 767px) {
  .logos-widget .block-flex {
    height: 300px;
  }
}
.logos-widget .img-wrapper {
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
}
.logos-widget .img-responsive {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-item-align: center;
      align-self: center;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

/* PARTNERS WIDGET
--------------------------------------------*/
.partners-widget .cta-flex:hover .title, .partners-widget .cta-flex:focus .title {
  background-color: #00b5d4;
}
.partners-widget .block-flex {
  background: white;
}
.partners-widget .img-overlay {
  opacity: 0;
}
.partners-widget .img-responsive {
  margin: -22px auto 0;
}
@media (min-width: 1921px) {
  .partners-widget .img-responsive {
    margin-top: -25px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .partners-widget .img-responsive {
    margin-top: -20px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .partners-widget .img-responsive {
    margin-top: -25px;
  }
}
.partners-widget .title {
  z-index: 10;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #aeaeae;
  width: 100%;
  height: 45px;
  bottom: 0;
  left: 0;
  position: absolute;
}
@media (min-width: 1921px) {
  .partners-widget .title {
    height: 50px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .partners-widget .title {
    height: 40px;
  }
}
@media (max-width: 991px) {
  .partners-widget .title {
    height: 50px;
  }
}
.partners-widget .title h2 {
  color: white;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  position: relative;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  font-family: "FuturaLTPro-Book", sans-serif;
  font-size: 1.8rem;
  line-height: 1.3;
}
@media (max-width: 1199px) {
  .partners-widget .title h2 {
    font-size: 1.6rem;
  }
}
@media (max-width: 991px) {
  .partners-widget .title h2 {
    font-size: 1.9rem;
  }
}

/* SOLUTIONS WIDGET
--------------------------------------------*/
.solutions-widget .caption-flex .title {
  margin: 0 0 30px;
  font-size: 4rem;
  line-height: 1.3;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .solutions-widget .caption-flex .title {
    font-size: 3.6rem;
  }
}
@media (max-width: 767px) {
  .solutions-widget .caption-flex .title {
    font-size: 2.8rem;
  }
}
@media (max-width: 991px) {
  .solutions-widget .caption-flex .title {
    margin-bottom: 15px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .solutions-widget .caption-flex .title {
    font-size: 3.2rem;
  }
}
@media (max-width: 767px) {
  .solutions-widget .caption-flex .title {
    font-size: 2.8rem;
  }
}
.solutions-widget .caption-flex .synopsis {
  padding: 0 5%;
  font-size: 2.2rem;
  line-height: 1.5;
}
@media (min-width: 768px) and (max-width: 991px) {
  .solutions-widget .caption-flex .synopsis {
    font-size: 2rem;
  }
}
@media (max-width: 767px) {
  .solutions-widget .caption-flex .synopsis {
    font-size: 1.9rem;
  }
}

/* TEAM WIDGET
--------------------------------------------*/
.team-widget .caption-flex .job-title {
  margin: 0 0 35px;
  color: #484b52;
  text-transform: uppercase;
  font-family: "FuturaLTPro-Book", sans-serif;
  font-size: 2rem;
  line-height: 1.3;
}
@media (max-width: 1199px) {
  .team-widget .caption-flex .job-title {
    font-size: 1.8rem;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .team-widget .caption-flex .job-title {
    margin-bottom: 25px;
    font-size: 1.8rem;
  }
}
@media (max-width: 767px) {
  .team-widget .caption-flex .job-title {
    margin-bottom: 20px;
    font-size: 1.6rem;
  }
}
.team-widget .caption-flex .name {
  margin: 0 0 30px;
  font-size: 5.7rem;
  line-height: 1.2;
}
@media (min-width: 992px) and (max-width: 1199px) {
  .team-widget .caption-flex .name {
    font-size: 5rem;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .team-widget .caption-flex .name {
    font-size: 4.5rem;
  }
}
@media (max-width: 767px) {
  .team-widget .caption-flex .name {
    font-size: 3.2rem;
  }
}
@media (max-width: 991px) {
  .team-widget .caption-flex .name {
    margin-bottom: 15px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .team-widget .caption-flex .name {
    font-size: 3.2rem;
  }
}
@media (max-width: 767px) {
  .team-widget .caption-flex .name {
    font-size: 2.8rem;
  }
}
.team-widget .caption-flex .bio {
  padding: 0 5%;
  font-size: 2.6rem;
  line-height: 1.5;
}
@media (min-width: 768px) and (max-width: 991px) {
  .team-widget .caption-flex .bio {
    font-size: 2.3rem;
  }
}
@media (max-width: 767px) {
  .team-widget .caption-flex .bio {
    font-size: 1.9rem;
  }
}

/* FIFTY FIFTY TEXT & IMAGE WIDGET
--------------------------------------------*/
.fifty-fifty-text-img-widget .row-flex:nth-of-type(odd) .col-text {
  -ms-flex-order: 2;
      order: 2;
}
@media (max-width: 767px) {
  .fifty-fifty-text-img-widget .row-flex:nth-of-type(odd) .col-text {
    -ms-flex-order: 1;
        order: 1;
  }
}
@media (max-width: 767px) {
  .fifty-fifty-text-img-widget .col-text {
    -ms-flex-order: 1;
        order: 1;
  }
}
@media (max-width: 767px) {
  .fifty-fifty-text-img-widget .col-img {
    -ms-flex-order: 2;
        order: 2;
  }
}
.fifty-fifty-text-img-widget .block-flex {
  min-height: 600px;
}
@media (min-width: 1921px) {
  .fifty-fifty-text-img-widget .block-flex {
    min-height: 700px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .fifty-fifty-text-img-widget .block-flex {
    min-height: 500px;
  }
}
@media (max-width: 991px) {
  .fifty-fifty-text-img-widget .block-flex {
    min-height: 350px;
  }
}
@media (max-width: 767px) {
  .fifty-fifty-text-img-widget .block-flex {
    min-height: 300px;
  }
}
.fifty-fifty-text-img-widget .caption-flex {
  padding: 15% 10%;
}
@media (min-width: 768px) and (max-width: 991px) {
  .fifty-fifty-text-img-widget .caption-flex {
    padding: 12% 10%;
  }
}
@media (max-width: 767px) {
  .fifty-fifty-text-img-widget .caption-flex {
    padding: 40px 20px;
  }
}
.fifty-fifty-text-img-widget .caption-flex .btn {
  -ms-flex-item-align: center;
      align-self: center;
}
.fifty-fifty-text-img-widget .img-responsive {
  width: 100%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

/* FLOATED TEXT & IMAGE WIDGET
--------------------------------------------*/
.floated-text-img-widget a:not(.btn) {
  text-decoration: underline;
}
.floated-text-img-widget a:not(.btn):hover, .floated-text-img-widget a:not(.btn):focus {
  text-decoration: none;
}
.floated-text-img-widget.text-left .caption {
  padding-right: 20px;
}
@media (max-width: 991px) {
  .floated-text-img-widget.text-left .caption {
    padding-right: 0;
  }
}
.floated-text-img-widget.text-right [class^=col] {
  float: right;
}
@media (max-width: 567px) {
  .floated-text-img-widget.text-right [class^=col] {
    width: 100%;
    float: none;
  }
}
.floated-text-img-widget.text-right .text-intro,
.floated-text-img-widget.text-right .caption {
  text-align: left;
}
.floated-text-img-widget.text-right .images {
  padding-right: 20px;
}
@media (max-width: 991px) {
  .floated-text-img-widget.text-right .images {
    padding-right: 0;
  }
}
.floated-text-img-widget .caption img {
  height: auto;
  max-width: 100%;
}
@media (max-width: 567px) {
  .floated-text-img-widget .images {
    margin-top: 30px;
  }
}
.floated-text-img-widget .images .img-responsive {
  width: 100%;
}
.floated-text-img-widget .images .img-responsive + .img-responsive {
  margin-top: 30px;
}

/* INTRO TEXT WIDGET
--------------------------------------------*/
.intro-text-widget a:not(.btn) {
  text-decoration: underline;
}
.intro-text-widget a:not(.btn):hover, .intro-text-widget a:not(.btn):focus {
  text-decoration: none;
}
.intro-text-widget .caption {
  padding: 0 13%;
}
@media (min-width: 568px) and (max-width: 767px) {
  .intro-text-widget .caption {
    padding: 0 5%;
  }
}
@media (max-width: 567px) {
  .intro-text-widget .caption {
    padding: 0;
  }
}
.intro-text-widget p {
  font-size: 2.7rem;
  color: #31357d;
}
@media (min-width: 768px) and (max-width: 1199px) {
  .intro-text-widget p {
    font-size: 2.5rem;
  }
}
@media (min-width: 568px) and (max-width: 767px) {
  .intro-text-widget p {
    font-size: 2.1rem;
  }
}
@media (max-width: 567px) {
  .intro-text-widget p {
    font-size: 1.9rem;
  }
}

/* ONE COLUMN TEXT WIDGET
--------------------------------------------*/
.one-column-text-widget a:not(.btn) {
  text-decoration: underline;
}
.one-column-text-widget a:not(.btn):hover, .one-column-text-widget a:not(.btn):focus {
  text-decoration: none;
}
.one-column-text-widget .caption {
  padding: 0 13%;
}
@media (min-width: 768px) and (max-width: 991px) {
  .one-column-text-widget .caption {
    padding: 0 10%;
  }
}
@media (max-width: 767px) {
  .one-column-text-widget .caption {
    padding: 0 5%;
  }
}

/* THREE COLUMN TEXT WIDGET
--------------------------------------------*/
.three-column-text-widget {
  overflow: hidden;
}
.three-column-text-widget .caption-flex {
  padding: 0 10px;
}
@media (max-width: 767px) {
  .three-column-text-widget .caption-flex {
    padding: 0;
  }
}
.three-column-text-widget .caption-flex h1 + h1,
.three-column-text-widget .caption-flex h1 + h2,
.three-column-text-widget .caption-flex h1 + h3,
.three-column-text-widget .caption-flex h1 + h4,
.three-column-text-widget .caption-flex h1 + h5,
.three-column-text-widget .caption-flex h1 + h6, .three-column-text-widget .caption-flex h2 + h1,
.three-column-text-widget .caption-flex h2 + h2,
.three-column-text-widget .caption-flex h2 + h3,
.three-column-text-widget .caption-flex h2 + h4,
.three-column-text-widget .caption-flex h2 + h5,
.three-column-text-widget .caption-flex h2 + h6, .three-column-text-widget .caption-flex h3 + h1,
.three-column-text-widget .caption-flex h3 + h2,
.three-column-text-widget .caption-flex h3 + h3,
.three-column-text-widget .caption-flex h3 + h4,
.three-column-text-widget .caption-flex h3 + h5,
.three-column-text-widget .caption-flex h3 + h6, .three-column-text-widget .caption-flex h4 + h1,
.three-column-text-widget .caption-flex h4 + h2,
.three-column-text-widget .caption-flex h4 + h3,
.three-column-text-widget .caption-flex h4 + h4,
.three-column-text-widget .caption-flex h4 + h5,
.three-column-text-widget .caption-flex h4 + h6, .three-column-text-widget .caption-flex h5 + h1,
.three-column-text-widget .caption-flex h5 + h2,
.three-column-text-widget .caption-flex h5 + h3,
.three-column-text-widget .caption-flex h5 + h4,
.three-column-text-widget .caption-flex h5 + h5,
.three-column-text-widget .caption-flex h5 + h6, .three-column-text-widget .caption-flex h6 + h1,
.three-column-text-widget .caption-flex h6 + h2,
.three-column-text-widget .caption-flex h6 + h3,
.three-column-text-widget .caption-flex h6 + h4,
.three-column-text-widget .caption-flex h6 + h5,
.three-column-text-widget .caption-flex h6 + h6 {
  margin-top: 8px;
}
.three-column-text-widget .caption-flex.text-standard img {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.three-column-text-widget .caption-flex.text-standard img + h2,
.three-column-text-widget .caption-flex.text-standard img + h3,
.three-column-text-widget .caption-flex.text-standard img + h4,
.three-column-text-widget .caption-flex.text-standard img + h5,
.three-column-text-widget .caption-flex.text-standard img + h6 {
  margin-top: 20px;
}
.three-column-text-widget .caption-flex.text-standard li {
  margin-bottom: 5px;
}
.three-column-text-widget .caption-flex.text-standard .btn {
  margin-top: 15px;
}

/* TWO COLUMN TEXT WIDGET
--------------------------------------------*/
.two-column-text-widget {
  overflow: hidden;
}
.two-column-text-widget .caption-flex {
  padding: 40px 35px;
}
@media (min-width: 1921px) {
  .two-column-text-widget .caption-flex {
    padding: 45px 40px;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .two-column-text-widget .caption-flex {
    padding: 35px 30px;
  }
}
@media (max-width: 767px) {
  .two-column-text-widget .caption-flex {
    padding: 30px 25px;
  }
}
.two-column-text-widget .caption-flex.bg-white {
  padding: 0;
}
.two-column-text-widget .caption-flex.text-center {
  padding: 0 10px;
}
@media (max-width: 767px) {
  .two-column-text-widget .caption-flex.text-center {
    padding: 0;
  }
}
.two-column-text-widget .caption-flex.text-center h1 + h1,
.two-column-text-widget .caption-flex.text-center h1 + h2,
.two-column-text-widget .caption-flex.text-center h1 + h3,
.two-column-text-widget .caption-flex.text-center h1 + h4,
.two-column-text-widget .caption-flex.text-center h1 + h5,
.two-column-text-widget .caption-flex.text-center h1 + h6, .two-column-text-widget .caption-flex.text-center h2 + h1,
.two-column-text-widget .caption-flex.text-center h2 + h2,
.two-column-text-widget .caption-flex.text-center h2 + h3,
.two-column-text-widget .caption-flex.text-center h2 + h4,
.two-column-text-widget .caption-flex.text-center h2 + h5,
.two-column-text-widget .caption-flex.text-center h2 + h6, .two-column-text-widget .caption-flex.text-center h3 + h1,
.two-column-text-widget .caption-flex.text-center h3 + h2,
.two-column-text-widget .caption-flex.text-center h3 + h3,
.two-column-text-widget .caption-flex.text-center h3 + h4,
.two-column-text-widget .caption-flex.text-center h3 + h5,
.two-column-text-widget .caption-flex.text-center h3 + h6, .two-column-text-widget .caption-flex.text-center h4 + h1,
.two-column-text-widget .caption-flex.text-center h4 + h2,
.two-column-text-widget .caption-flex.text-center h4 + h3,
.two-column-text-widget .caption-flex.text-center h4 + h4,
.two-column-text-widget .caption-flex.text-center h4 + h5,
.two-column-text-widget .caption-flex.text-center h4 + h6, .two-column-text-widget .caption-flex.text-center h5 + h1,
.two-column-text-widget .caption-flex.text-center h5 + h2,
.two-column-text-widget .caption-flex.text-center h5 + h3,
.two-column-text-widget .caption-flex.text-center h5 + h4,
.two-column-text-widget .caption-flex.text-center h5 + h5,
.two-column-text-widget .caption-flex.text-center h5 + h6, .two-column-text-widget .caption-flex.text-center h6 + h1,
.two-column-text-widget .caption-flex.text-center h6 + h2,
.two-column-text-widget .caption-flex.text-center h6 + h3,
.two-column-text-widget .caption-flex.text-center h6 + h4,
.two-column-text-widget .caption-flex.text-center h6 + h5,
.two-column-text-widget .caption-flex.text-center h6 + h6 {
  margin-top: 8px;
}
.two-column-text-widget .caption-flex .img-responsive {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

/* ACCREDITATIONS WIDGET
--------------------------------------------*/
@media (min-width: 568px) and (max-width: 767px) {
  .accreditations-widget .col-flex-xs-6 {
    max-width: 50%;
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
  }
}
.accreditations-widget .cta-flex:hover .title, .accreditations-widget .cta-flex:focus .title {
  background-color: #00b5d4;
}
.accreditations-widget .block-flex {
  height: auto;
  background: white;
}
@media (max-width: 767px) {
  .accreditations-widget .img-wrapper {
    height: auto;
  }
}
.accreditations-widget .img-overlay {
  opacity: 0;
}
.accreditations-widget .title {
  z-index: 10;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #aeaeae;
  width: 100%;
  height: 45px;
  bottom: 0;
  left: 0;
  position: absolute;
}
@media (min-width: 1921px) {
  .accreditations-widget .title {
    height: 50px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .accreditations-widget .title {
    height: 40px;
  }
}
@media (max-width: 991px) {
  .accreditations-widget .title {
    height: 50px;
  }
}
.accreditations-widget .title h2 {
  color: white;
  font-size: 1.6rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  position: relative;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  font-family: "FuturaLTPro-Book", sans-serif;
}
@media (max-width: 991px) {
  .accreditations-widget .title h2 {
    font-size: 1.9rem;
  }
}

/* STRUCTURE - Structural elements */
/* FOOTER
--------------------------------------------*/
#footer {
  color: white;
  padding: 60px 0;
  background: #31357d;
  position: relative;
  overflow: hidden;
  /* footer contact */
  /* footer logos */
  /* footer links */
  /* footer bottom */
}
@media (min-width: 1921px) {
  #footer {
    padding: 90px 0;
  }
}
@media (min-width: 568px) and (max-width: 767px) {
  #footer {
    padding: 40px 0;
  }
}
@media (max-width: 567px) {
  #footer {
    padding: 35px 0;
  }
}
#footer .footer-contact {
  text-align: left;
}
#footer .footer-contact p {
  margin-bottom: 15px;
  font-family: "FuturaLTPro-Book", sans-serif;
  font-size: 2rem;
  line-height: 1;
}
@media (min-width: 1921px) {
  #footer .footer-contact p {
    margin-bottom: 20px;
  }
}
@media (max-width: 1199px) {
  #footer .footer-contact p {
    margin-bottom: 10px;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  #footer .footer-contact p {
    font-size: 1.9rem;
  }
}
@media (max-width: 767px) {
  #footer .footer-contact p {
    font-size: 1.8rem;
  }
}
#footer .footer-contact p.telephone-number {
  font-family: "FuturaLTPro-Bold", sans-serif;
}
#footer .footer-contact p a {
  color: white;
}
#footer .footer-contact p a:hover {
  color: rgba(255, 255, 255, 0.6);
}
#footer .footer-logos {
  margin-top: 30px;
}
#footer .footer-logos .logo-footer {
  display: block;
  position: relative;
  text-indent: -9999px;
}
#footer .footer-logos .logo-carrier {
  background: url(../img/api-logo.svg) no-repeat left top;
  background-size: contain;
  width: 207px;
  height: 70px;
}
#footer .footer-links {
  overflow: hidden;
}
#footer .footer-links .link-list {
  width: 325px;
  float: right;
  text-align: right;
  padding-left: 50px;
}
@media (min-width: 1921px) {
  #footer .footer-links .link-list {
    width: 375px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  #footer .footer-links .link-list {
    width: 250px;
    padding-left: 30px;
  }
}
@media (max-width: 991px) {
  #footer .footer-links .link-list {
    width: 100%;
    padding-left: 0;
  }
}
@media (max-width: 991px) {
  #footer .footer-links .link-list:not(:first-of-type) {
    margin-top: 30px;
  }
}
#footer .footer-links .link-list h3 {
  color: white;
  margin-bottom: 15px;
  font-size: 2.2rem;
  line-height: 1.3;
}
@media (min-width: 768px) and (max-width: 1199px) {
  #footer .footer-links .link-list h3 {
    font-size: 2.1rem;
  }
}
@media (max-width: 767px) {
  #footer .footer-links .link-list h3 {
    font-size: 1.9rem;
  }
}
#footer .footer-links .link-list li:not(:first-of-type) {
  margin-top: 7px;
}
#footer .footer-links .link-list a {
  color: white;
  display: block;
  font-size: 1.3rem;
  line-height: 1.2;
}
#footer .footer-links .link-list a:hover {
  color: rgba(255, 255, 255, 0.6);
}
#footer .footer-bottom {
  margin-top: 50px;
  font-size: 1.3rem;
  overflow: hidden;
}
@media (max-width: 767px) {
  #footer .footer-bottom {
    margin-top: 20px;
    text-align: left;
  }
}
#footer .footer-bottom .footer-social {
  float: left;
}
@media (max-width: 767px) {
  #footer .footer-bottom .footer-social {
    float: none;
    margin-top: 20px;
  }
}
#footer .footer-bottom .footer-site-links {
  float: right;
}
@media (max-width: 767px) {
  #footer .footer-bottom .footer-site-links {
    float: none;
  }
}
#footer .footer-bottom .footer-site-links p, #footer .footer-bottom .footer-site-links a {
  color: white;
}
#footer .footer-bottom .footer-site-links a:hover {
  color: rgba(255, 255, 255, 0.6);
}
#footer .footer-bottom .footer-site-links .copyright {
  float: left;
}
@media (max-width: 767px) {
  #footer .footer-bottom .footer-site-links .copyright {
    float: none;
  }
}
#footer .footer-bottom .footer-site-links .site-links {
  float: left;
}
@media (max-width: 767px) {
  #footer .footer-bottom .footer-site-links .site-links {
    float: none;
    margin-top: 5px;
  }
}
#footer .footer-bottom .footer-site-links .site-links:first-of-type span {
  display: none;
}
#footer .footer-bottom .footer-site-links .site-links span {
  margin: 0 10px;
  display: inline-block;
}
@media (max-width: 767px) {
  #footer .footer-bottom .footer-site-links .site-links span {
    display: none;
  }
}

/* GLOBAL HEADER
--------------------------------------------*/
#globalHeader {
  z-index: 998;
  background: white;
  width: 100%;
  height: 100px;
  top: 0;
  left: 0;
  position: fixed;
}
@media (min-width: 1921px) {
  #globalHeader {
    height: 120px;
  }
}
@media (max-width: 767px) {
  #globalHeader {
    height: 80px;
  }
}
#globalHeader .container-fluid {
  height: 100%;
  position: relative;
}
@media (max-width: 991px) {
  #globalHeader .container-fluid {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  #globalHeader .container-fluid {
    width: 750px;
  }
}
@media (max-width: 767px) {
  #globalHeader .container-fluid {
    width: 100%;
  }
}

/* logo */
.logo-white {
  /*background: url(../img/fss-logo-white.svg) no-repeat left top;*/
  z-index: 996;
  display: block;
  background-size: contain;
  text-indent: -9999px;
  top: 26px;
  left: 40px;
  position: absolute;
  width: 163px;
  height: 48px;
}
@media (min-width: 1921px) {
  .logo-white {
    top: 32px;
    width: 175px;
    height: 50px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .logo-white {
    top: 25px;
    left: 15px;
  }
}
@media (max-width: 767px) {
  .logo-white {
    top: 20px;
    left: 20px;
    width: 140px;
    height: 40px;
  }
}

.logo-blue {
  /*background: url(../img/fss-logo.svg) no-repeat left top;*/
  z-index: 996;
  display: block;
  background-size: contain;
  text-indent: -9999px;
  top: 26px;
  left: 40px;
  position: absolute;
  width: 163px;
  height: 48px;
}
@media (min-width: 1921px) {
  .logo-blue {
    top: 32px;
    width: 175px;
    height: 50px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .logo-blue {
    top: 25px;
    left: 15px;
  }
}
@media (max-width: 767px) {
  .logo-blue {
    top: 20px;
    left: 20px;
    width: 140px;
    height: 40px;
  }
}

/* fixed header */
.header-fixed #globalHeader {
  box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.2);
}

/* PRIMARY NAV
--------------------------------------------*/
/* nav wrapper */
.nav-wrapper {
  z-index: 996;
  top: 38px;
  right: 50px;
  position: absolute;
}
@media (max-width: 991px) {
  .nav-wrapper {
    right: 15px;
  }
}
@media (min-width: 1921px) {
  .nav-wrapper {
    top: 45px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .nav-wrapper {
    top: 27px;
  }
}
@media (max-width: 767px) {
  .nav-wrapper {
    top: 22px;
  }
}

/* primary nav */
.nav-primary {
  float: right;
  position: relative;
  /* main navigation */
}
@media (max-width: 991px) {
  .nav-primary {
    float: none;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .nav-primary {
    margin-top: 40px;
  }
}
@media (max-width: 767px) {
  .nav-primary {
    margin-top: 30px;
  }
}
.nav-primary .main-navigation {
  list-style: none;
}
.nav-primary .main-navigation > li {
  margin-right: 40px;
  display: inline-block;
  position: relative;
}
@media (min-width: 1921px) {
  .nav-primary .main-navigation > li {
    margin-right: 45px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .nav-primary .main-navigation > li {
    margin-right: 35px;
  }
}
@media (max-width: 991px) {
  .nav-primary .main-navigation > li {
    display: block;
    margin-right: 0;
  }
}
.nav-primary .main-navigation > li:last-of-type {
  margin-right: 0;
}
.nav-primary .main-navigation > li.current-menu-item > a, .nav-primary .main-navigation > li.current-menu-parent > a, .nav-primary .main-navigation > li.current_page_parent > a, .nav-primary .main-navigation > li.current-page-ancestor > a {
  color: #888;
}
@media (max-width: 991px) {
  .nav-primary .main-navigation > li.current-menu-item > a, .nav-primary .main-navigation > li.current-menu-parent > a, .nav-primary .main-navigation > li.current_page_parent > a, .nav-primary .main-navigation > li.current-page-ancestor > a {
    right: 0;
    color: #00b5d4 !important;
  }
}
.nav-primary .main-navigation > li.current-menu-item > a:hover, .nav-primary .main-navigation > li.current-menu-item > a:focus, .nav-primary .main-navigation > li.current-menu-parent > a:hover, .nav-primary .main-navigation > li.current-menu-parent > a:focus, .nav-primary .main-navigation > li.current_page_parent > a:hover, .nav-primary .main-navigation > li.current_page_parent > a:focus, .nav-primary .main-navigation > li.current-page-ancestor > a:hover, .nav-primary .main-navigation > li.current-page-ancestor > a:focus {
  color: #888;
}
@media (max-width: 991px) {
  .nav-primary .main-navigation > li.current-menu-item > a:hover, .nav-primary .main-navigation > li.current-menu-item > a:focus, .nav-primary .main-navigation > li.current-menu-parent > a:hover, .nav-primary .main-navigation > li.current-menu-parent > a:focus, .nav-primary .main-navigation > li.current_page_parent > a:hover, .nav-primary .main-navigation > li.current_page_parent > a:focus, .nav-primary .main-navigation > li.current-page-ancestor > a:hover, .nav-primary .main-navigation > li.current-page-ancestor > a:focus {
    color: #00b5d4;
  }
}
.nav-primary .main-navigation > li > a {
  color: #31357d;
  position: relative;
  display: inline-block;
  text-transform: uppercase;
  font-size: 1.6rem;
  line-height: 1;
}
@media (max-width: 991px) {
  .nav-primary .main-navigation > li > a {
    color: white;
    display: block;
    text-shadow: none;
    font-family: "FuturaLTPro-Bold", sans-serif;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .nav-primary .main-navigation > li > a {
    font-size: 4.5rem;
    padding: 15px 0;
  }
}
@media (max-width: 767px) {
  .nav-primary .main-navigation > li > a {
    font-size: 2.6rem;
    padding: 8px 0;
  }
}
.nav-primary .main-navigation > li > a:hover, .nav-primary .main-navigation > li > a:focus {
  color: #888;
}
@media (max-width: 991px) {
  .nav-primary .main-navigation > li > a:hover, .nav-primary .main-navigation > li > a:focus {
    color: white;
  }
}

/* nav social */
@media (min-width: 768px) and (max-width: 991px) {
  .nav-social {
    margin-top: 50px;
  }
}
@media (max-width: 767px) {
  .nav-social {
    margin-top: 30px;
  }
}

/* nav contact */
@media (min-width: 768px) and (max-width: 991px) {
  .nav-contact {
    margin-top: 40px;
  }
}
@media (max-width: 767px) {
  .nav-contact {
    margin-top: 20px;
  }
}
.nav-contact a {
  color: white;
}
.nav-contact a:hover, .nav-contact a:focus {
  color: white;
}
@media (min-width: 768px) and (max-width: 991px) {
  .nav-contact a {
    font-size: 3.6rem;
  }
}
@media (max-width: 767px) {
  .nav-contact a {
    font-size: 2rem;
  }
}

/* nav menu button */
.nav-menu-btn {
  float: right;
  position: relative;
}
@media (min-width: 768px) and (max-width: 991px) {
  .nav-menu-btn {
    padding: 10px;
  }
}
@media (max-width: 767px) {
  .nav-menu-btn {
    padding: 9px;
  }
}
.nav-menu-btn .icon-bar {
  display: block;
  background: #31357d;
}
@media (min-width: 768px) and (max-width: 991px) {
  .nav-menu-btn .icon-bar {
    width: 30px;
    height: 4px;
  }
}
@media (max-width: 767px) {
  .nav-menu-btn .icon-bar {
    width: 25px;
    height: 3px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .nav-menu-btn .icon-bar + .icon-bar {
    margin-top: 5px;
  }
}
@media (max-width: 767px) {
  .nav-menu-btn .icon-bar + .icon-bar {
    margin-top: 4px;
  }
}

/* mobile nav */
.modal-mobile-nav-open .modal-backdrop {
  background: none;
}

.mobile-nav-inactive {
  overflow: auto;
}

#mobileNav {
  background: #31357d;
  /* nav wrapper */
  /* social links */
  /* close menu button */
}
#mobileNav .mobile-nav-wrapper {
  position: relative;
}
@media (min-width: 768px) and (max-width: 991px) {
  #mobileNav .mobile-nav-wrapper {
    padding: 100px 40px 150px;
  }
}
@media (min-width: 568px) and (max-width: 767px) {
  #mobileNav .mobile-nav-wrapper {
    padding: 80px 15px 120px;
  }
}
@media (max-width: 567px) {
  #mobileNav .mobile-nav-wrapper {
    padding: 50px 20px 120px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  #mobileNav .social-links {
    margin-top: 50px;
  }
}
@media (max-width: 767px) {
  #mobileNav .social-links {
    margin-top: 30px;
  }
}
#mobileNav .social-links a {
  color: white;
}
#mobileNav .social-links a:hover, #mobileNav .social-links a:focus {
  color: white;
}
@media (min-width: 768px) and (max-width: 991px) {
  #mobileNav .social-links a span {
    font-size: 3.7rem;
  }
}
@media (max-width: 767px) {
  #mobileNav .social-links a span {
    font-size: 2.8rem;
  }
}
#mobileNav .close-nav-btn {
  display: block;
  color: white;
  z-index: 997;
  position: absolute;
}
@media (min-width: 768px) and (max-width: 991px) {
  #mobileNav .close-nav-btn {
    top: 50px;
    right: 50px;
  }
}
@media (max-width: 767px) {
  #mobileNav .close-nav-btn {
    top: 30px;
    right: 28px;
  }
}
#mobileNav .close-nav-btn:after {
  content: "\e90b";
  font-family: "icomoon";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media (min-width: 768px) and (max-width: 991px) {
  #mobileNav .close-nav-btn:after {
    font-size: 4rem;
  }
}
@media (max-width: 767px) {
  #mobileNav .close-nav-btn:after {
    font-size: 2.6rem;
  }
}
#mobileNav .close-nav-btn:hover {
  color: white;
}

/* PAGE BANNER
--------------------------------------------*/
.page-banner-img {
  height: 700px;
}
@media (min-width: 1200px) and (max-height: 830px) {
  .page-banner-img {
    height: 600px;
  }
}
@media (min-width: 1921px) {
  .page-banner-img {
    height: 850px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .page-banner-img {
    height: 600px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .page-banner-img {
    height: 500px;
  }
}
@media (max-width: 767px) {
  .page-banner-img {
    height: 300px;
  }
}
.page-banner-img .bg-img-wrapper {
  background: black;
}
.page-banner-img .bg-img-wrapper .bg-img {
  opacity: 0.8;
}
.page-banner-img .caption-flex {
  height: 100%;
}
.page-banner-img .caption-flex h1, .page-banner-img .caption-flex h2, .page-banner-img .caption-flex h3,
.page-banner-img .caption-flex h4, .page-banner-img .caption-flex h5, .page-banner-img .caption-flex h6,
.page-banner-img .caption-flex p, .page-banner-img .caption-flex li, .page-banner-img .caption-flex a:not(.btn), .page-banner-img .caption-flex span:not(.btn) {
  color: white;
}
.page-banner-img .caption-flex li:before {
  color: white !important;
}
.page-banner-img .caption-flex a:not(.btn):hover {
  color: #31357d;
}
.page-banner-img h1 {
  font-size: 15rem;
  line-height: 1.1;
}
@media (min-width: 992px) and (max-width: 1199px) {
  .page-banner-img h1 {
    font-size: 13rem;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .page-banner-img h1 {
    font-size: 10rem;
  }
}
@media (min-width: 568px) and (max-width: 767px) {
  .page-banner-img h1 {
    font-size: 7rem;
  }
}
@media (max-width: 567px) {
  .page-banner-img h1 {
    font-size: 5rem;
  }
}
.page-banner-img h2 {
  font-size: 5rem;
  line-height: 1.3;
}
@media (min-width: 992px) and (max-width: 1199px) {
  .page-banner-img h2 {
    font-size: 4.5rem;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .page-banner-img h2 {
    font-size: 4rem;
  }
}
@media (max-width: 767px) {
  .page-banner-img h2 {
    font-size: 3rem;
  }
}

/* PAGE BANNER - TEXT
--------------------------------------------*/
.page-banner-text {
  background: #f0f0f0;
}
.page-banner-text .caption {
  padding: 80px 13% 70px;
}
@media (min-width: 1921px) {
  .page-banner-text .caption {
    padding: 100px 13% 90px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .page-banner-text .caption {
    padding: 80px 13% 60px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .page-banner-text .caption {
    padding: 70px 5% 60px;
  }
}
@media (max-width: 767px) {
  .page-banner-text .caption {
    padding: 40px 0 35px;
  }
}
.page-banner-text h1 {
  font-size: 5.7rem;
  line-height: 1.2;
}
@media (min-width: 992px) and (max-width: 1199px) {
  .page-banner-text h1 {
    font-size: 5rem;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .page-banner-text h1 {
    font-size: 4.5rem;
  }
}
@media (max-width: 767px) {
  .page-banner-text h1 {
    font-size: 3.2rem;
  }
}
.page-banner-text + #mainContent .widget-full:first-of-type {
  padding-top: 0;
}

/* PAGE BANNER
--------------------------------------------*/
#pageBanner {
  width: 100%;
  z-index: 1;
  position: relative;
}
#pageBanner h1 {
  margin: 0;
}
#pageBanner p {
  margin-top: 15px;
  font-size: 2.3rem;
}
@media (max-width: 767px) {
  #pageBanner p {
    font-size: 1.9rem;
    margin-top: 10px;
  }
}
#pageBanner .btn {
  margin-top: 30px;
  padding: 15px 25px 16px;
  font-size: 2rem;
  line-height: 1;
}
@media (min-width: 1200px) and (max-height: 830px) {
  #pageBanner .btn {
    font-size: 1.9rem;
    padding: 13px 20px 14px;
  }
}
@media (max-width: 767px) {
  #pageBanner .btn {
    font-size: 1.7rem;
    padding: 12px 17px 13px;
  }
}
@media (max-width: 767px) {
  #pageBanner .btn {
    margin-top: 15px;
  }
}
#pageBanner .btn:hover, #pageBanner .btn:focus {
  color: white;
  background: transparent;
  border-color: white;
}

/* STRUCTURE
--------------------------------------------*/
/* main page wrapper */
#mainWrapper {
  margin-top: 100px;
  overflow: hidden;
  position: relative;
}
@media (min-width: 1921px) {
  #mainWrapper {
    margin-top: 120px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  #mainWrapper {
    margin-top: 90px;
  }
}
@media (max-width: 767px) {
  #mainWrapper {
    margin-top: 80px;
  }
}

/* main content */
#mainContent {
  position: relative;
}

/* container */
@media (min-width: 1921px) {
  .container {
    width: 1450px;
  }
}
@media (max-width: 767px) {
  .container {
    padding-left: 20px;
    padding-right: 20px;
  }
}

/* container fluid */
.container-fluid {
  padding-left: 0;
  padding-right: 0;
}
.container-fluid .row,
.container-fluid .row-flex {
  margin: 0;
}
.container-fluid div[class^=col-] {
  padding: 0;
}

/* content wrapper */
.content-wrapper {
  width: 100%;
  z-index: 996;
  position: relative;
}

/* 2 column content */
#content,
#sidebar {
  position: relative;
}

#content {
  margin-right: 70px;
}
@media (min-width: 992px) and (max-width: 1199px) {
  #content {
    margin-right: 20px;
  }
}
@media (max-width: 991px) {
  #content {
    margin-right: 0;
  }
}
#content.no-margin {
  margin-right: 0;
}
#content.half-margin {
  margin-right: 30px;
}
@media (min-width: 992px) and (max-width: 1199px) {
  #content.half-margin {
    margin-right: 20px;
  }
}
@media (max-width: 991px) {
  #content.half-margin {
    margin-right: 0;
  }
}

.content-right {
  float: right;
}
@media (max-width: 991px) {
  .content-right {
    float: none;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  #sidebar {
    margin-top: 40px;
  }
}
@media (max-width: 767px) {
  #sidebar {
    margin-top: 25px;
  }
}

/* bootstrap columns */
@media (max-width: 567px) {
  .col-xs-6 {
    height: auto;
    width: 100%;
    float: none;
  }
}

/* centered columns */
.row-centered {
  text-align: center;
}

.col-centered {
  float: none;
  margin-right: -4px;
  display: inline-block;
  vertical-align: top;
}

/* justify content */
.justify-center {
  -ms-flex-pack: center;
      justify-content: center;
}

/* align content */
.align-center {
  -ms-flex-align: center;
      align-items: center;
}

.align-bottom {
  -ms-flex-align: end;
      align-items: flex-end;
}

/* SECTIONS - Individual sections */
/* CONTACT
--------------------------------------------*/
.contact {
  /* phone number */
  /* map intro text */
}
.contact .page-banner-text p a {
  font-size: 3.6rem;
  color: #31357d;
}
@media (max-width: 767px) {
  .contact .page-banner-text p a {
    font-size: 2.3rem;
  }
}
.contact .page-banner-text p a:hover, .contact .page-banner-text p a:focus {
  color: #00b5d4;
}
.contact .image-widget .text-intro h2 {
  margin-bottom: 30px;
}
.contact .image-widget .text-intro p + p {
  margin-top: 10px;
}

/* HOMEPAGE
--------------------------------------------*/
/* body class overwrites */
.home {
  /* header */
  /* main wrapper */
  /* page banner */
  /* structure */
}
.home #globalHeader {
  background: none;
}
.home .logo-blue {
  opacity: 0;
  pointer-events: none;
}
.home .nav-primary .main-navigation > li > a {
  color: white;
}
.home .nav-primary .main-navigation > li > a:hover, .home .nav-primary .main-navigation > li > a:focus {
  color: rgba(255, 255, 255, 0.5);
}
.home .nav-menu-btn .icon-bar {
  background: white;
}
.home.header-fixed #globalHeader {
  background: white;
}
.home.header-fixed .logo-white {
  opacity: 0;
  pointer-events: none;
}
.home.header-fixed .logo-blue {
  opacity: 1;
  pointer-events: all;
}
.home.header-fixed .nav-primary .main-navigation > li > a {
  color: #31357d;
}
@media (max-width: 991px) {
  .home.header-fixed .nav-primary .main-navigation > li > a {
    color: white;
  }
}
.home.header-fixed .nav-primary .main-navigation > li > a:hover, .home.header-fixed .nav-primary .main-navigation > li > a:focus {
  color: #888;
}
@media (max-width: 991px) {
  .home.header-fixed .nav-primary .main-navigation > li > a:hover, .home.header-fixed .nav-primary .main-navigation > li > a:focus {
    color: white;
  }
}
.home.header-fixed .nav-menu-btn .icon-bar {
  background: #31357d;
}
.home #mainWrapper {
  margin-top: 0;
}
.home #pageBanner {
  height: 850px;
  /* home slider */
  /* logo strapline */
}
@media (min-width: 1200px) and (max-height: 830px) {
  .home #pageBanner {
    height: 700px;
  }
}
@media (min-width: 1921px) {
  .home #pageBanner {
    height: 1000px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .home #pageBanner {
    height: 700px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .home #pageBanner {
    height: 600px;
  }
}
@media (max-width: 767px) {
  .home #pageBanner {
    height: 350px;
  }
}
.home #pageBanner .home-slider {
  background: black;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
}
.home #pageBanner .logo-strapline {
  z-index: 996;
  display: block;
  margin: 10px 0 0 -20px;
  text-indent: -9999px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  height: 250px;
  background: url(../img/fss-logo-white.svg) no-repeat center top;
  background-size: contain;
}
@media (min-width: 1921px) {
  .home #pageBanner .logo-strapline {
    height: 300px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .home #pageBanner .logo-strapline {
    height: 200px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .home #pageBanner .logo-strapline {
    height: 150px;
  }
}
@media (max-width: 767px) {
  .home #pageBanner .logo-strapline {
    margin-left: -5px;
  }
}
@media (min-width: 568px) and (max-width: 767px) {
  .home #pageBanner .logo-strapline {
    height: 100px;
  }
}
@media (min-width: 375px) and (max-width: 567px) {
  .home #pageBanner .logo-strapline {
    height: 80px;
  }
}
@media (max-width: 374px) {
  .home #pageBanner .logo-strapline {
    height: 70px;
  }
}
.home #mainContent {
  padding: 0;
  margin-bottom: 0;
}

/* MISC
--------------------------------------------*/
.misc .page-banner-text .caption {
  padding-left: 0;
  padding-right: 0;
  text-align: left;
}
.misc .one-column-text-widget .caption {
  padding: 0;
  text-align: left;
}

/* SITEMAP
--------------------------------------------*/
.wsp-container .wsp-pages-list {
  text-align: center;
  list-style: none;
}
.wsp-container .wsp-pages-list li {
  padding: 0;
}
.wsp-container .wsp-pages-list li:before {
  display: none;
}
.wsp-container .wsp-pages-list a {
  font-size: 2rem;
  text-decoration: none;
  text-transform: uppercase;
  font-family: "FuturaLTPro-Heavy", sans-serif;
}



/* PAGINATION
--------------------------------------------*/
.navigation li a,
.navigation li a:hover,
.navigation li.active a,
.navigation li.disabled {
    color: #000;
    text-decoration:none;
}
.navigation li {
    display: inline;
}
.navigation li a,
.navigation li a:hover,
.navigation li.active a,
.navigation li.disabled {
    background-color: #31357d;
	color: #fff;
    border-radius: 0px;
    cursor: pointer;
    padding: 0.75rem;
}
.navigation li a:hover,
.navigation li.active a {
    background-color: #00b5d4;
	color: #fff;
}

/* CUSTOM PADDING
--------------------------------------------*/
.pt-30 {
	padding-top: 30px!important;
}
.pb-30 {
	padding-bottom: 30px;
}
.px-30 {
	padding: 0 30px;
}
.py-30 {
	padding: 30px 0;
}
.p-30 {
	padding: 30px;
}
.p-0 {
	padding: 0!important;
}
.mx-auto {
	margin: 0 auto;
}

/* BLOG/CASE STUDY HEADINGS
--------------------------------------------*/
h1.article {
  font-size: 5.7rem;
  line-height: 1.2;
}
@media (min-width: 992px) and (max-width: 1199px) {
  h1.article {
    font-size: 5rem;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  h1.article {
    font-size: 4.5rem;
  }
}
@media (max-width: 767px) {
  h1.article {
    font-size: 3.2rem;
  }
}

/* CASE STUDY GALLERY
--------------------------------------------*/
.bg-gallery {
	background-position: center; /* Center the image */
	background-repeat: no-repeat; /* Do not repeat the image */
	background-size: cover; /* Resize the background image to cover the entire container */
	
	min-width: 100%;
	min-height: 280px!important;
	
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;	
}

/* WYSIWYG EDITOR
--------------------------------------------*/
#tinymce {
    line-height: 1 !important;
}
