@charset "UTF-8";
/* SET BASE FONTS FOR PXTO EM */
/* MEDIA QUERIES */
/* MAIN COLOURS */
/* OTHER COLOURS */
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/* CUSTOM RESETS */
* {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

/* Clearfix */
.group, header .wrapper, header .logo-holder, .large-banner, .large-banner .overlay, .about-us .desc ul {
  *zoom: 1; }
  .group:before, .group:after, header .wrapper:before, header .logo-holder:before, .large-banner:before, .large-banner .overlay:before, .about-us .desc ul:before, header .wrapper:after, header .logo-holder:after, .large-banner:after, .large-banner .overlay:after, .about-us .desc ul:after {
    content: "";
    display: table; }
  .group:after, header .wrapper:after, header .logo-holder:after, .large-banner:after, .large-banner .overlay:after, .about-us .desc ul:after {
    clear: both; }

.btn {
  color: #ffffff;
  text-decoration: none;
  display: inline-block;
  background-color: #ed1c24;
  padding: 15px 24px;
  position: relative;
  z-index: 1;
  padding-right: 70px;
  border: none;
  text-transform: capitalize;
  font: 700 1.11111em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
  -webkit-appearance: none;
  cursor: pointer; }
  .btn span {
    color: #ffffff;
    position: relative;
    z-index: 1; }
  .btn:after {
    color: #ffffff;
    font-family: 'icomoon';
    content: "\e903";
    position: absolute;
    right: 20px;
    top: 50% !important;
    padding: 0 1px;
    font-size: 12px;
    font-weight: 100;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%); }
  .btn:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0%;
    height: 100%;
    opacity: 0;
    background-color: #d91119;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    z-index: -1; }
  .btn:hover:before {
    opacity: 1;
    width: 100%; }
  .btn:hover:after {
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    right: 15px; }
  .btn.down:after {
    transform: rotate(90deg); }
  .btn.down:hover:after {
    right: 20px;
    top: 23px; }
  .btn.blue {
    color: #fff !important;
    background-color: #455691; }
    .btn.blue:before {
      background-color: #3b4a7c; }
  .btn.bluelight {
    background-color: #7fb0d0; }
    .btn.bluelight:before {
      background-color: #69a2c8; }
  .btn.purple {
    background-color: #664881; }
    .btn.purple:before {
      background-color: #563d6d; }
  .btn.purplelight {
    background-color: #7c3371; }
    .btn.purplelight:before {
      background-color: #662a5d; }
  .btn.orange {
    background-color: #e7792b; }
    .btn.orange:before {
      background-color: #db6919; }
  .btn.orangelight {
    background-color: #ec972e; }
    .btn.orangelight:before {
      background-color: #e68915; }
  .btn.violet {
    background-color: #8C1562; }
    .btn.violet:before {
      background-color: #71114f; }
  .btn.ghost {
    background-color: transparent;
    border: 1px solid #ffffff;
    padding: 14px 70px 14px 24px; }
    .btn.ghost:before {
      background-color: #f0f0f0;
      -webkit-transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out; }
    .btn.ghost:hover span {
      color: #242424; }
    .btn.ghost:hover:after {
      color: #242424; }

html, body {
  max-width: 100%;
  overflow-x: hidden; }

body {
  font-family: "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 18px; }

a {
  outline: none; }

strong {
  font: 800 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif; }

em {
  font-style: italic; }

.no-margin {
  margin-top: 0 !important; }

.clearfix {
  clear: both; }

img {
  height: auto; }

.scrolling-cta {
  display: none;
  position: fixed;
  right: -135px;
  top: 20%;
  z-index: 50;
  -webkit-transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
  right: -84px; }
  @media only screen and (min-width: 480px) {
    .scrolling-cta {
      right: -135px; } }
  .scrolling-cta a {
    font-size: 13px;
    padding: 7px 24px; }
    .scrolling-cta a:after {
      font-size: 8px;
      right: 3px;
      top: 43% !important; }
    @media only screen and (min-width: 480px) {
      .scrolling-cta a {
        padding: 15px 50px;
        font-size: 20px; }
        .scrolling-cta a:after {
          font-size: 10px;
          right: 12px;
          top: 46% !important; } }

.link, .link-secondary, .link-terciary {
  color: #ffffff;
  font: 700 1.11111em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-decoration: none;
  position: relative;
  display: inline-block; }
  .link.blue, .blue.link-secondary, .blue.link-terciary {
    color: #455691; }
    .link.blue:before, .blue.link-secondary:before, .blue.link-terciary:before {
      background-color: #455691; }
  .link.red, .red.link-secondary, .red.link-terciary {
    color: #ed1c24; }
    .link.red:before, .red.link-secondary:before, .red.link-terciary:before {
      background-color: #ed1c24; }
  .link:after, .link-secondary:after, .link-terciary:after {
    font-family: 'icomoon';
    content: "\e903";
    position: absolute;
    right: -25px;
    top: 8px;
    padding: 0 1px;
    font-size: 8px;
    font-weight: 100;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out; }
  .link:before, .link-secondary:before, .link-terciary:before {
    content: '';
    background-color: #ffffff;
    height: 1px;
    display: block;
    position: absolute;
    top: 30px;
    left: 0;
    width: 30px;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out; }
  .link:hover:after, .link-secondary:hover:after, .link-terciary:hover:after {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    right: -30px; }
  .link:hover:before, .link-secondary:hover:before, .link-terciary:hover:before {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    width: 100%; }

.link-secondary {
  color: #6f6f6f;
  font: 400 1em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
  display: inline-block;
  text-align: left;
  position: relative; }
  .link-secondary:after {
    display: none; }
  .link-secondary:before {
    background-color: #455691;
    bottom: -18px;
    top: auto; }
  .link-secondary:hover:before {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    width: 80%; }
  .link-secondary.white:before {
    background-color: #ffffff; }

.link-terciary {
  padding-left: 30px;
  font: 400 1.11111em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif; }
  .link-terciary.white:before {
    background-color: #ffffff; }
  .link-terciary:after {
    left: 0;
    right: auto; }
  .link-terciary:before {
    background-color: #ffffff;
    width: 33px;
    bottom: -18px;
    top: auto; }
  .link-terciary:hover:after {
    left: 0;
    right: auto; }
  .link-terciary:hover:before {
    width: 100%; }

.separator {
  height: 1px;
  background: #D8D8D8;
  border-bottom: 1px solid #D8D8D8;
  opacity: 0.6;
  clear: both;
  margin: 0 30px; }

.content h1 {
  font-size: 36px; }
  @media (min-width: 760px) {
    .content h1 {
      font-size: 48px; } }

.content {
  text-align: center;
  margin-bottom: 100px;
  float: left;
  width: 100%;
  position: relative; }
  .content strong {
    font-weight: 700 !important;
    font-size: 1em !important; }
  .content ul li, .content ol li {
    font-size: 1em !important; }
  .content .shape-1 {
    position: absolute;
    left: -180px;
    opacity: 0.05;
    top: 0;
    width: 480px;
    display: none; }
    @media only screen and (min-width: 1020px) {
      .content .shape-1 {
        display: block; } }
  .content .shape-2 {
    position: absolute;
    right: -180px;
    opacity: 0.05;
    top: 400px;
    width: 480px;
    display: none; }
    @media only screen and (min-width: 1020px) {
      .content .shape-2 {
        display: block; } }
  .content.line {
    padding-top: 90px; }
    .content.line:before {
      content: '';
      height: 100px;
      width: 1px;
      border-right: 1px solid #ed1c24;
      position: absolute;
      left: 0;
      right: 0;
      margin: auto;
      top: -80px;
      opacity: 0.5; }
  .content h1  {
    font-size: 36px; }
    @media (min-width: 760px) {
      .content h1  {
        font-size: 48px; } }
  .content h1, .content h2, .content h3, .content h4, .content h5, .content h6 {
    font-family: "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 600;
    margin-bottom: 1.2em; }
  .content h2, .content h3, .content h4, .content h5, .content h6 {
    text-align: left; }
    @media only screen and (min-width: 1020px) {
      .content h2, .content h3, .content h4, .content h5, .content h6 {
        padding-left: 70px; } }
  .content h2 {
    font-size: 32px; }
    @media only screen and (min-width: 760px) {
      .content h2 {
        font-size: 42px; } }
  .content h2.title.small {
    text-align: center;
    font-size: 1.44444em; }
  .content h3 {
    font-size: 27px; }
    @media only screen and (min-width: 760px) {
      .content h3 {
        font-size: 37px; } }
  .content h4 {
    font-size: 21.333333px; }
    @media only screen and (min-width: 760px) {
      .content h4 {
        font-size: 31.333333px; } }
  .content h5 {
    font-size: 18px; }
    @media only screen and (min-width: 760px) {
      .content h5 {
        font-size: 25.333333px; } }
  .content h6 {
    font-size: 16px; }
    @media only screen and (min-width: 760px) {
      .content h6 {
        font-size: 20.666667px; } }
  .content .left {
    position: absolute;
    opacity: 0.05;
    bottom: -120px;
    left: -200px; }
  .content.margin-top {
    margin-top: 80px; }
  .content .wrapper {
    width: 760px;
    max-width: 100%; }
  .content p {
    font: 400 1em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
    line-height: 1.8em;
    margin-bottom: 40px;
    clear: both;
    text-align: left;
    padding: 0; }
    @media only screen and (min-width: 1020px) {
      .content p {
        padding-left: 70px;
        padding-right: 100px; } }
  .content a:not(.btn) {
    outline: none;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    border-bottom: 1px solid #ed1c24;
    text-decoration: none;
    color: #ed1c24; }
    .content a:not(.btn):hover {
      border: none; }
    .content a:not(.btn):visited {
      color: #444444;
      border-color: #444444; }
    .content a:not(.btn):visited:hover {
      border-color: transparent; }
  .content ol {
    list-style: none;
    padding: 0;
    margin: 0;
    counter-reset: counter;
    margin-bottom: 50px; }
    .content ol li {
      padding-left: 16px;
      font: 400 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
      color: #6f6f6f; }
      .content ol li > * {
        display: inline-block;
        vertical-align: top;
        max-width: calc(100% - 30px); }
      .content ol li:before {
        content: "la";
        padding-right: 8px;
        color: #ed1c24;
        content: counter(counter) ".";
        counter-increment: counter;
        font: 600 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
        display: inline-block;
        vertical-align: top; }
  .content img {
    height: auto !important;
    width: 100% !important;
    max-width: 100%;
    display: block; }
  .content blockquote {
    font-weight: 700;
    font-size: 1.38889em;
    font-family: "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
    margin-bottom: 60px;
    max-width: 600px;
    float: right;
    clear: both;
    position: relative;
    text-align: left;
    padding-left: 100px; }
    .content blockquote:before {
      content: "\201C";
      position: absolute;
      color: #ed1c24;
      left: 0px;
      font-size: 3.33333em;
      top: 30%;
      line-height: 0.5em;
      font-family: Georgia,"Times New Roman",Times,serif;
      font-weight: bold; }
      @media only screen and (min-width: 1020px) {
        .content blockquote:before {
          left: -160px;
          font-size: 4.44444em;
          font-size: 178px; } }
    .content blockquote .author {
      margin-top: 50px;
      display: block;
      font: 800 0.55556em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
      letter-spacing: -0.6px; }
    .content blockquote .position {
      display: block;
      font: 400 0.55556em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
      letter-spacing: -0.6px; }
    @media only screen and (min-width: 1020px) {
      .content blockquote {
        font: 700 2.22222em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
        padding-left: 0; } }
  .content.content--blog h1, .content.content--blog h2 {
    font-size: 1.33333em;
    line-height: 1.2em;
    margin-bottom: 40px; }
    @media only screen and (min-width: 760px) {
      .content.content--blog h1, .content.content--blog h2 {
        font-size: 1.77778em; } }
  .content.content--blog h3 {
    font-size: 1em;
    line-height: 1.2em;
    margin-bottom: 36px; }
    @media only screen and (min-width: 760px) {
      .content.content--blog h3 {
        font-size: 1.33333em; } }

.content-p-wide p {
  padding-right: 0; }

/*
img
h1-6
p
blockquote
strong
ul
ol
li
i
em
cite
table
th
tr
td
form
*/
h1, h2, h3, h4, h5, h6 {
  font-family: "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #242424; }

h2 {
  font-size: 1.33333em;
  font-weight: 700;
  margin-bottom: 24px; }
  @media only screen and (min-width: 760px) {
    h2 {
      font-size: 1.44444em;
      margin-bottom: 45px; } }

p {
  font: 400 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #6f6f6f; }

input[type="text"], textarea {
  border: none;
  border-radius: 0;
  font: 400 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
  padding: 16px 15px;
  outline: none; }

select {
  /* make arrow and background */
  appearance: none;
  -moz-appearance: none;
  /* Firefox */
  -webkit-appearance: none;
  /* Safari and Chrome */
  background: url(../img/selectarrow.png) no-repeat #ffffff;
  background-position: right 20px center;
  /* styling and reset */
  border: none;
  outline: none;
  line-height: 1.5em;
  padding: 16px 50px 16px 15px;
  font: 400 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
  /* reset */
  border-radius: 0;
  margin: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none; }

select::-ms-expand {
  display: none !important; }

::-webkit-input-placeholder {
  /* WebKit, Blink, Edge */
  color: #444444; }

:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: #444444;
  opacity: 1; }

::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: #444444;
  opacity: 1; }

:-ms-input-placeholder {
  /* Internet Explorer 10-11 */
  color: #444444; }

.zoomin.animated {
  transition: opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-animation: zoom 15s cubic-bezier(0.19, 1, 0.22, 1);
  animation: zoom 15s cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards; }

.hidden-overflow {
  overflow: hidden !important; }

@-webkit-keyframes zoom {
  from {
    -webkit-transform: scale(1.2);
    transform: scale(1.2); }
  to {
    -webkit-transform: scale(1);
    transform: scale(1); } }
@keyframes zoom {
  from {
    -webkit-transform: scale(1.2);
    transform: scale(1.2); }
  to {
    -webkit-transform: scale(1);
    transform: scale(1); } }
.rotateLeft, .rotateRight {
  -webkit-transition: 9s ease-in-out;
  -moz-transition: 9s ease-in-out;
  -o-transition: 9s ease-in-out;
  transition: 9s ease-in-out; }

.hidden-text {
  display: none !important;
  font-size: 0 !important; }

.cc-grower {
  max-height: none !important; }

.cc-window.cc-banner {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-direction: column;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column; }
  @media (min-width: 760px) {
    .cc-window.cc-banner {
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row; } }

.cc-window.cc-floating {
  max-width: none !important; }

.spaced5x {
  margin-bottom: 50px !important; }

@media (max-width: 759px) {
  .spaced4x-tablet-down {
    margin-bottom: 40px !important; } }

.talent-management.circles .items .item p span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

video::-webkit-media-controls {
  display: none !important; }

@media (max-width: 1019px) {
  .flex-col-reverse-desktop-down {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important;
    -webkit-box-pack: start !important;
    -ms-flex-pack: start !important;
    justify-content: flex-start !important; } }

.cc-grower {
  position: fixed;
  bottom: 0;
  top: initial;
  left: 0;
  right: 0;
  z-index: 90000; }

.study--fix {
  max-width: 50%; }

#return-to-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background: rgba(237, 28, 36, 0.8);
  width: 56px;
  height: 56px;
  display: block;
  text-decoration: none;
  display: none;
  -webkit-transition: all 0.3s linear;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  z-index: 5; }
  #return-to-top i {
    color: #ffffff;
    margin: 0;
    position: relative;
    left: 15px;
    top: 17px;
    font-size: 12px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease; }
  #return-to-top:hover {
    background: #ed1c24; }
  #return-to-top:hover i {
    color: #ffffff;
    top: 10px; }

.overlay {
  height: 0;
  width: 100%;
  position: fixed;
  z-index: 100;
  left: 0;
  top: 124px;
  overflow-x: hidden;
  transition: 0.1s;
  background-color: #939393;
  display: none;
  overflow-y: scroll; }
  @media only screen and (min-width: 1020px) {
    .overlay {
      display: block; } }
  .overlay .closebtn {
    z-index: 10;
    color: white; }
  .overlay .overlay-content {
    position: relative;
    width: 100%;
    text-align: center;
    height: auto !important;
    overflow: hidden;
    padding-bottom: 230px; }
    .overlay .overlay-content ul li {
      text-align: left;
      margin-bottom: 20px; }
      .overlay .overlay-content ul li a {
        text-decoration: none; }
    .overlay .overlay-content .left {
      padding-top: 45px;
      padding-bottom: 35px;
      padding-left: 20px;
      background-color: #ffffff;
      width: 50%;
      display: inline-block;
      float: left; }
      @media only screen and (min-width: 1480px) {
        .overlay .overlay-content .left {
          padding-left: 0; } }
      .overlay .overlay-content .left h4 {
        font: 600 1.11111em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
        text-align: left;
        margin-bottom: 45px;
        text-transform: uppercase; }
      .overlay .overlay-content .left .desc {
        width: 100%;
        max-width: 270px;
        float: right;
        margin-right: 20px;
        position: relative; }
        .overlay .overlay-content .left .desc ul.tabs li a {
          color: #444444;
          text-align: left;
          font: 400 1.11111em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
          padding-left: 0; }
          .overlay .overlay-content .left .desc ul.tabs li a.current {
            font-weight: bold;
            letter-spacing: -0.065em; }
    .overlay .overlay-content .right {
      background: url(../img/backgrounds/overlay-bg.jpg) no-repeat center center;
      -webkit-background-size: cover;
      -moz-background-size: cover;
      -o-background-size: cover;
      background-size: cover;
      padding-top: 45px;
      padding-bottom: 55px;
      background-color: #455691;
      width: 50%;
      display: inline-block;
      padding-left: 20px;
      padding-right: 20px;
      text-align: left;
      position: relative; }
      @media only screen and (min-width: 1180px) {
        .overlay .overlay-content .right {
          padding-left: 90px; } }
      .overlay .overlay-content .right:after {
        content: "";
        height: 100%;
        left: 0px;
        position: absolute;
        top: 0px;
        width: 100%;
        background-color: rgba(69, 86, 145, 0.95); }
      .overlay .overlay-content .right .tab-content {
        display: none;
        position: relative;
        z-index: 2;
        max-width: 460px; }
        .overlay .overlay-content .right .tab-content.current {
          display: inherit; }
      .overlay .overlay-content .right .title {
        font: 600 1.77778em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
        color: #ffffff;
        margin-bottom: 30px;
        display: inline-block;
        text-decoration: none; }
        .overlay .overlay-content .right .title i {
          font-size: 50px;
          margin-right: 10px; }
      .overlay .overlay-content .right p {
        color: #ffffff;
        margin-bottom: 40px; }
      .overlay .overlay-content .right a.btn {
        margin-bottom: 40px; }
      .overlay .overlay-content .right h4 {
        font: 600 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
        color: #ffffff;
        margin-bottom: 30px; }
      .overlay .overlay-content .right ul {
        display: inline-block;
        vertical-align: top;
        max-width: 280px;
        margin-right: 20px; }
        .overlay .overlay-content .right ul li a {
          margin-bottom: 20px; }
          .overlay .overlay-content .right ul li a:before {
            background-color: #7fb0d0; }
  .overlay .closebtn {
    position: absolute;
    bottom: -80px;
    left: 0;
    font: 600 1.11111em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif; }
  .overlay.search-overlay {
    background-color: #ffffff;
    position: absolute;
    height: 100%;
    top: 114px;
    display: none; }
    .overlay.search-overlay .close-cta {
      margin-top: 114px; }
      .overlay.search-overlay .close-cta a {
        font: 900 1.11111em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
        color: #242424; }
    .overlay.search-overlay .overlay-content {
      overflow: scroll;
      height: 100%;
      padding-bottom: 250px; }
    .overlay.search-overlay .form {
      background-color: #242424;
      color: #ffffff;
      padding: 50px 0 50px 0;
      text-align: left;
      position: relative; }
      .overlay.search-overlay .form input {
        margin-right: 20px;
        position: relative;
        padding-left: 50px;
        background-image: url(../img/search-input.png);
        background-position: 15px 18px;
        background-repeat: no-repeat;
        margin-bottom: 20px;
        width: 100%;
        margin-right: 0; }
        @media only screen and (min-width: 1020px) {
          .overlay.search-overlay .form input {
            margin-bottom: 0;
            margin-right: 20px;
            max-width: 680px; } }
      .overlay.search-overlay .form input[type="submit"] {
        background-image: url(../img/arrow-right-white.svg);
        background-position: right 30px center;
        outline: none; }
      .overlay.search-overlay .form a {
        width: 100%;
        text-align: center; }
        @media only screen and (min-width: 1020px) {
          .overlay.search-overlay .form a {
            text-align: left;
            width: auto; } }
      .overlay.search-overlay .form p {
        color: #ffffff;
        font: 600 1.11111em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
        margin-bottom: 30px;
        text-align: center; }
    .overlay.search-overlay .products {
      background-color: #ffffff;
      padding-top: 55px;
      text-align: center; }
      .overlay.search-overlay .products .product-row {
        display: inline-block;
        vertical-align: top;
        width: 100%;
        text-align: center;
        margin-bottom: 50px; }
        @media only screen and (min-width: 760px) {
          .overlay.search-overlay .products .product-row {
            width: 46%; } }
        @media only screen and (min-width: 1020px) {
          .overlay.search-overlay .products .product-row {
            width: 33%;
            margin-bottom: 0; } }
        .overlay.search-overlay .products .product-row h2 {
          text-align: left;
          margin-bottom: 45px; }
          .overlay.search-overlay .products .product-row h2 i {
            margin-right: 10px; }
        .overlay.search-overlay .products .product-row .box {
          text-align: left;
          background-color: #FAFAFA;
          padding: 42px 24px;
          max-width: 380px;
          position: relative;
          margin: 0 auto 5px auto;
          height: 320px; }
          @media only screen and (min-width: 1020px) {
            .overlay.search-overlay .products .product-row .box {
              height: 320px; } }
          .overlay.search-overlay .products .product-row .box.alt {
            padding-top: 22px; }
          .overlay.search-overlay .products .product-row .box .cat {
            font: 800 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
            color: #ed1c24;
            margin-bottom: 35px;
            display: inline-block; }
          .overlay.search-overlay .products .product-row .box h3 {
            font: 600 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
            margin-bottom: 20px; }
            @media only screen and (min-width: 1180px) {
              .overlay.search-overlay .products .product-row .box h3 {
                font-size: 1.33333em; } }
          .overlay.search-overlay .products .product-row .box a {
            position: absolute;
            bottom: 40px;
            left: 24px;
            font-size: 0.77778em; }
            .overlay.search-overlay .products .product-row .box a:after {
              top: 3px; }
            @media only screen and (min-width: 1180px) {
              .overlay.search-overlay .products .product-row .box a {
                font-size: 1.05556em; }
                .overlay.search-overlay .products .product-row .box a:after {
                  top: 7px; } }

@media (min-width: 760px) and (max-width: 1020px) {
  #ergoSearch input:first-of-type {
    max-width: 58% !important;
    margin-right: 20px !important; } }
#ergoSearch .btn {
  cursor: pointer; }
  @media (min-width: 760px) {
    #ergoSearch .btn {
      max-width: 244px !important;
      top: 2px !important; } }

@media (max-width: 1020px) {
  #searchOverlay {
    top: 94px !important; } }

@font-face {
  font-family: 'icomoon';
  src: url("fonts/icomoon.eot?8xyloy");
  src: url("fonts/icomoon.eot?8xyloy#iefix") format("embedded-opentype"), url("fonts/icomoon.woff2?8xyloy") format("woff2"), url("fonts/icomoon.ttf?8xyloy") format("truetype"), url("fonts/icomoon.woff?8xyloy") format("woff"), url("fonts/icomoon.svg?8xyloy#icomoon") format("svg");
  font-weight: normal;
  font-style: normal; }
[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-up-arrow:before {
  content: "\e921"; }

.icon-play2:before {
  content: "\e920"; }

.icon-case-studies:before {
  content: "\e91d"; }

.icon-other:before {
  content: "\e91e"; }

.icon-services:before {
  content: "\e91f"; }

.icon-linkedin-ghost:before {
  content: "\e91a"; }

.icon-twitter-ghost:before {
  content: "\e91b"; }

.icon-youtube-ghost:before {
  content: "\e91c"; }

.icon-down-arrow:before {
  content: "\e918"; }

.icon-search:before {
  content: "\e919"; }

.icon-location:before {
  content: "\e917"; }

.icon-resourcing-alt:before {
  content: "\e916"; }

.icon-email:before {
  content: "\e915"; }

.icon-people:before {
  content: "\e914"; }

.icon-note:before {
  content: "\e912"; }

.icon-service-desk:before {
  content: "\e90d"; }

.icon-chat:before {
  content: "\e90e"; }

.icon-office365:before {
  content: "\e90f"; }

.icon-operations:before {
  content: "\e910"; }

.icon-security:before {
  content: "\e911"; }

.icon-ergo:before {
  content: "\e90c"; }

.icon-linkedin:before {
  content: "\e900"; }

.icon-twitter:before {
  content: "\e901"; }

.icon-youtube:before {
  content: "\e902"; }

.icon-arrow-right2:before {
  content: "\e913"; }

.icon-checkmark:before {
  content: "\e904"; }

.icon-cloud:before {
  content: "\e905"; }

.icon-combined-arrows:before {
  content: "\e906"; }

.icon-copyright:before {
  content: "\e907"; }

.icon-play:before {
  content: "\e908"; }

.icon-print:before {
  content: "\e909"; }

.icon-resourcing:before {
  content: "\e90a"; }

.icon-toolkit:before {
  content: "\e90b"; }

.icon-cloud-180:before {
  content: "\e922"; }

.icon-consultancy-services-180:before {
  content: "\e923"; }

.icon-digital-enablement-180:before {
  content: "\e924"; }

.icon-managed-people-180:before {
  content: "\e925"; }

.icon-managed-services-180:before {
  content: "\e926"; }

.icon-mobility-and-collaboration-180px:before {
  content: "\e927"; }

.icon-print-and-document-solutions-180:before {
  content: "\e928"; }

.icon-security-and-compliance-180px:before {
  content: "\e929"; }

.icon-software-licensing-180px:before {
  content: "\e92a"; }

.icon-arrow-right:before {
  content: "\e903"; }

header {
  position: absolute;
  width: 100%;
  z-index: 10;
  background-color: transparent;
  padding: 15px 20px; }
  @media only screen and (min-width: 760px) {
    header {
      padding: 15px 20px; } }
  header .wrapper {
    padding: 0; }
  header ul li a .icon-down-arrow {
    vertical-align: middle;
    font-size: 6px; }
  header ul li a span {
    vertical-align: middle; }
  header ul li a .icon-search {
    margin-right: 10px; }
  header ul li a.closeSearchBtn {
    text-decoration: underline;
    position: absolute;
    right: -150px; }
  @media only screen and (min-width: 1020px) {
    header.dark ul li a {
      color: #242424; } }
@media only screen and (min-width: 1020px) and (min-width: 1020px) {
  header.dark nav ul .simple-dd {
    background: #f5f5f5; }
    header.dark nav ul .simple-dd:before {
      background-image: url("../img/dropdown_cutoff_grey.svg"); } }

  header.navOpened {
    padding-bottom: 26px;
    background: #ffffff !important; }
    header.navOpened ul li a {
      color: #444444; }
  header.searchOpened {
    padding-bottom: 26px;
    background-color: #242424;
    z-index: 1; }
    header.searchOpened #main-navigation {
      margin-right: 200px; }
    header.searchOpened ul li a {
      color: #ffffff; }
    header.searchOpened ul li.cta {
      display: none; }
  header.active {
    background: #242424;
    padding-bottom: 50px; }
    header.active ul li {
      padding-bottom: 10px; }
      header.active ul li a:hover {
        color: #ed1c24; }
    header.active ul .with-btn a:hover {
      color: #ffffff; }
  header .logo-holder a {
    text-decoration: none; }
  header .logo-holder img {
    width: 109px;
    margin-top: 12px; }
  @media only screen and (min-width: 1180px) {
    header .logo-holder img {
      margin-top: 0;
      width: 180px; } }
  header .logo {
    color: #ffffff;
    float: left;
    font-size: 60px;
    text-decoration: none; }
  header .nav-trigger {
    display: block;
    height: 35px;
    position: absolute;
    right: 30px;
    top: 30px;
    -webkit-transition: all 0s linear;
    -moz-transition: all 0s linear;
    -o-transition: all 0s linear;
    transition: all 0s linear;
    width: 36px; }
  header .icon-menu {
    background: #ffffff;
    display: inline-block;
    height: 4px;
    position: relative;
    width: 33px;
    cursor: pointer;
    -webkit-transition: all 0.1s linear;
    -moz-transition: all 0.1s linear;
    -o-transition: all 0.1s linear;
    transition: all 0.1s linear; }
    header .icon-menu.dark {
      background: #242424; }
      header .icon-menu.dark:before, header .icon-menu.dark:after {
        background: #242424; }
      header .icon-menu.dark.active {
        background: transparent; }
        header .icon-menu.dark.active:before, header .icon-menu.dark.active:after {
          background: #ffffff; }
    header .icon-menu:before, header .icon-menu:after {
      background: #ffffff;
      content: '';
      display: inline-block;
      height: 4px;
      right: 0;
      position: absolute;
      -webkit-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
      -moz-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
      -o-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
      transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
      -webkit-transform-origin: 50% 50% 50%;
      -moz-transform-origin: 50% 50% 50%;
      -ms-transform-origin: 50% 50% 50%;
      -o-transform-origin: 50% 50% 50%;
      transform-origin: 50% 50% 50%;
      width: 33px; }
    header .icon-menu:before {
      top: -10px; }
    header .icon-menu:after {
      top: 10px; }
    header .icon-menu.active {
      background: transparent; }
      header .icon-menu.active:before, header .icon-menu.active:after {
        top: 0; }
      header .icon-menu.active:before {
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg); }
      header .icon-menu.active:after {
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg); }
  @media only screen and (min-width: 760px) {
    header {
      padding: 20px; }
      header .logo {
        font-size: 70px; }
      header .icon-menu {
        font-size: 30px; } }
  @media only screen and (min-width: 1020px) {
    header {
      padding: 50px 25px 30px 25px; }
      header.dark {
        background: none; }
      header .icon-menu {
        display: none; }
      header .logo-holder {
        float: left;
        margin: 0; } }
  @media only screen and (min-width: 1180px) {
    header .logo {
      font-size: 93px; } }

.footer {
  color: #ffffff;
  padding: 70px 0 0 0;
  background: url(../img/backgrounds/footer-bg.jpg) no-repeat center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  float: left;
  display: block;
  z-index: 1;
  position: relative;
  width: 100%; }
  @media only screen and (min-width: 480px) {
    .footer {
      margin: 0 auto;
      text-align: center; } }
  @media only screen and (min-width: 1020px) {
    .footer {
      padding: 110px 0 0 0; } }
  .footer .brand {
    float: left;
    margin-bottom: 30px; }
    @media only screen and (min-width: 1020px) {
      .footer .brand {
        margin-bottom: 0; } }
    .footer .brand img {
      width: 106px; }
      @media only screen and (min-width: 760px) {
        .footer .brand img {
          width: 180px; } }
  .footer .footer-cta {
    margin-top: 13px;
    margin-right: 50px;
    display: block;
    clear: both; }
    @media only screen and (min-width: 480px) {
      .footer .footer-cta {
        float: right;
        display: inline-block;
        clear: none; } }
    .footer .footer-cta span {
      font: 700 18px "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif; }
  .footer .navigation {
    text-align: center;
    display: block;
    width: 100%;
    float: left;
    margin: 50px auto 0; }
    @media only screen and (min-width: 760px) {
      .footer .navigation {
        margin: 85px auto 0;
        text-align: center; } }
    @media screen and (min-width: 1180px) {
      .footer .navigation {
        display: block; } }
    .footer .navigation .col {
      text-align: left;
      margin-bottom: 50px; }
      @media only screen and (min-width: 1020px) {
        .footer .navigation .col {
          margin-bottom: 0; } }
      @media only screen and (min-width: 480px) {
        .footer .navigation .col {
          float: left;
          width: 50%;
          display: inline-block; } }
      @media only screen and (min-width: 760px) {
        .footer .navigation .col {
          width: 20%; } }
      @media only screen and (min-width: 1020px) {
        .footer .navigation .col {
          width: 20%; } }
      @media screen and (min-width: 1180px) {
        .footer .navigation .col {
          width: 20%; } }
      .footer .navigation .col a {
        text-decoration: none; }
      .footer .navigation .col h3 {
        color: #ffffff;
        font-size: 0.88889em;
        font-weight: 700;
        margin-bottom: 50px; }
        @media screen and (max-width: 480px) {
          .footer .navigation .col h3 {
            margin-bottom: 40px; } }
      .footer .navigation .col ul {
        padding: 0; }
        .footer .navigation .col ul li {
          padding-bottom: 17px;
          padding-right: 70px; }
          .footer .navigation .col ul li a {
            color: #ffffff;
            font: 400 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
            text-decoration: none;
            -webkit-transition: all 0.2s ease-in-out;
            -moz-transition: all 0.2s ease-in-out;
            -o-transition: all 0.2s ease-in-out;
            transition: all 0.2s ease-in-out; }
            .footer .navigation .col ul li a:hover {
              opacity: 0.6; }
  .footer .social a {
    text-decoration: none;
    margin: 0 10px;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out; }
    .footer .social a:hover {
      opacity: 0.6; }
    @media only screen and (min-width: 760px) {
      .footer .social a {
        margin-left: 0;
        margin-right: 60px; } }
    .footer .social a i {
      color: #ffffff;
      font-size: 20px; }
  .footer .footer-desc {
    float: left;
    width: 100%;
    display: block;
    margin-top: 30px;
    background-color: #171717;
    padding: 20px 0; }
    @media only screen and (min-width: 760px) {
      .footer .footer-desc {
        text-align: left; } }
    .footer .footer-desc .social {
      display: block;
      float: none;
      margin: 0 auto 20px;
      text-align: center; }
      @media only screen and (min-width: 760px) {
        .footer .footer-desc .social {
          text-align: left;
          display: inline-block;
          float: left;
          margin-bottom: 0; } }
    .footer .footer-desc .copyright {
      display: block;
      float: none;
      text-align: center; }
      .footer .footer-desc .copyright ul {
        padding-left: 0; }
      @media only screen and (min-width: 760px) {
        .footer .footer-desc .copyright {
          display: inline-block;
          float: right; } }
      .footer .footer-desc .copyright p {
        color: #ffffff;
        font-size: 0.77778em; }
        @media only screen and (min-width: 760px) {
          .footer .footer-desc .copyright p {
            display: inline-block; } }
      @media only screen and (min-width: 760px) {
        .footer .footer-desc .copyright ul {
          display: inline-block; } }
      .footer .footer-desc .copyright ul li {
        padding-bottom: 10px; }
        @media only screen and (min-width: 760px) {
          .footer .footer-desc .copyright ul li {
            display: inline-block;
            padding-bottom: 0;
            padding-right: 10px;
            padding-left: 10px; }
            .footer .footer-desc .copyright ul li:last-child {
              border-right: none; }
            .footer .footer-desc .copyright ul li:first-child {
              margin-left: 10px; } }
        .footer .footer-desc .copyright ul li a {
          color: #ffffff;
          font: 400 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
          text-decoration: none;
          -webkit-transition: all 0.2s ease-in-out;
          -moz-transition: all 0.2s ease-in-out;
          -o-transition: all 0.2s ease-in-out;
          transition: all 0.2s ease-in-out; }
          .footer .footer-desc .copyright ul li a:hover {
            opacity: 0.6; }
    .footer .footer-desc .logo {
      float: right;
      font-size: 41px;
      display: inline-block; }

.footer__to-top {
  position: fixed;
  z-index: 2200;
  color: #fff;
  background-color: #ed1c24;
  padding: 18px 16px;
  display: inline-block;
  right: 100vw;
  transition: opacity .25s ease-in;
  opacity: 0;
  bottom: 20px;
  text-decoration: none; }
  @media (min-width: 760px) {
    .footer__to-top {
      bottom: 162px; } }
  .footer__to-top.in {
    right: 20px;
    opacity: .55; }
    @media (min-width: 760px) {
      .footer__to-top.in {
        right: 60px; } }
    .footer__to-top.in:hover, .footer__to-top.in:active {
      opacity: 1; }
  .footer__to-top > * {
    font-size: 12px; }
  .footer__to-top span {
    display: none; }

nav {
  display: none;
  padding: 20px 0 0; }
  @media only screen and (min-width: 1020px) {
    nav ul li:hover > .simple-dd {
      display: block !important; } }
  nav ul {
    margin: 0;
    padding: 0; }
    nav ul li {
      padding-bottom: 30px;
      margin-bottom: 10px; }
    nav ul .megamenu {
      margin-top: 15px;
      display: none; }
      nav ul .megamenu li a {
        text-transform: uppercase;
        font-size: 0.83333em;
        padding-bottom: 0;
        margin-bottom: 10px; }
        nav ul .megamenu li a:before {
          bottom: 0; }
    nav ul .simple-dd {
      display: none;
      max-width: 300px;
      margin: 0 auto;
      padding-top: 30px; }
      nav ul .simple-dd li {
        margin-bottom: 0; }
      nav ul .simple-dd li a {
        font-weight: 400;
        -webkit-transition: 0.1s all ease-in-out;
        -moz-transition: 0.1s all ease-in-out;
        -o-transition: 0.1s all ease-in-out;
        transition: 0.1s all ease-in-out; }
        @media (max-width: 1020px) {
          nav ul .simple-dd li a {
            text-transform: uppercase;
            font-size: .8333333333em;
            padding-bottom: 0;
            margin-bottom: 10px;
            position: relative;
            display: inline-block; }
            nav ul .simple-dd li a:hover {
              color: #ffffff !important; }
              nav ul .simple-dd li a:hover:before {
                width: 100%; }
            nav ul .simple-dd li a:before {
              content: "";
              background-color: #455691;
              bottom: 0;
              top: auto;
              height: 1px;
              display: block;
              position: absolute;
              left: 0;
              width: 30px;
              -webkit-transition: all 0.3s ease-in-out;
              -moz-transition: all 0.3s ease-in-out;
              -o-transition: all 0.3s ease-in-out;
              transition: all 0.3s ease-in-out; } }
      @media only screen and (min-width: 1020px) {
        nav ul .simple-dd {
          border-top: none;
          border-bottom: none;
          margin-top: 0;
          display: none;
          position: absolute;
          top: 113%;
          left: 0;
          background: #ffffff;
          padding: 18px 33px 37px 33px;
          margin-left: -20px;
          -webkit-transition: 0.2s all ease-in-out;
          -moz-transition: 0.2s all ease-in-out;
          -o-transition: 0.2s all ease-in-out;
          transition: 0.2s all ease-in-out;
          width: 230px; }
          nav ul .simple-dd:before {
            content: "";
            position: absolute;
            left: 0;
            bottom: 100%;
            background-image: url("../img/dropdown_cutoff.svg");
            background-repeat: no-repeat;
            background-size: 265px;
            width: 100%;
            height: 10px;
            background-position: center; }
          nav ul .simple-dd li {
            float: none;
            text-align: left;
            margin-top: 0;
            margin-right: 0;
            padding-bottom: 0;
            letter-spacing: -0.02em; }
          nav ul .simple-dd a {
            color: #444444;
            text-align: left;
            font: 400 1.11111em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
            padding-left: 0; }
            nav ul .simple-dd a:hover {
              text-decoration: none;
              font-weight: bold; } }
  nav li {
    margin: 0 0 5px;
    text-align: center;
    position: relative;
    -webkit-transition: background 0.1s linear;
    -moz-transition: background 0.1s linear;
    -o-transition: background 0.1s linear;
    transition: background 0.1s linear; }
    nav li a {
      color: #ffffff;
      display: block;
      font: 700 1em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
      padding: 7px 0 6px;
      text-decoration: none; }
      nav li a.btn span {
        font: 700 18px "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif; }
  nav .search {
    margin: 10px 0; }
  @media only screen and (min-width: 1020px) {
    nav {
      display: block;
      float: right;
      padding: 0; }
      nav ul {
        *zoom: 1; }
        nav ul:before, nav ul:after {
          content: "";
          display: table; }
        nav ul:after {
          clear: both; }
      nav li {
        float: left;
        margin: 0 20px 5px 0;
        -webkit-transition: border 0.1s linear;
        -moz-transition: border 0.1s linear;
        -o-transition: border 0.1s linear;
        transition: border 0.1s linear; }
        nav li.with-btn {
          padding-top: 12px; }
        nav li.cta {
          margin-top: -12px;
          margin-right: 0; }
          nav li.cta a.btn:after {
            top: 23px; }
      nav .search, nav .btn {
        border: 0; }
        nav .search a, nav .btn a {
          border: 0; }
      nav .search {
        margin: 10px 15px 0 5px; } }
  @media only screen and (min-width: 1180px) {
    nav li a {
      padding: 7px 5px 8px; }
    nav li.with-btn {
      margin: 0; }
    nav .search {
      margin: 10px 15px 0 5px; } }

.sub-nav {
  display: none;
  width: 100%;
  float: left;
  margin-top: 13px;
  text-align: center; }
  .sub-nav ul {
    border-top: 1px solid rgba(255, 255, 255, 0.3);
    border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
    .sub-nav ul li {
      display: inline-block;
      max-width: 114px;
      vertical-align: top; }
      @media (min-width: 1020px) and (max-width: 1480px) {
        .sub-nav ul li {
          max-width: 92px; } }
      .sub-nav ul li a, .sub-nav ul li i {
        -webkit-transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        -o-transition: all 0.2s ease-in-out;
        transition: all 0.2s ease-in-out; }
      .sub-nav ul li:last-child {
        margin-right: 0; }
      .sub-nav ul li:hover i {
        color: rgba(255, 255, 255, 0.4); }
      .sub-nav ul li:hover span {
        text-decoration: underline; }
      .sub-nav ul li i {
        display: block;
        text-align: center;
        color: #ffffff;
        font-size: 32px;
        margin-bottom: 7px; }
      .sub-nav ul li a {
        color: #ffffff;
        text-decoration: none;
        font: 400 0.77778em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif; }
        .sub-nav ul li a.active {
          opacity: 0.5; }
          .sub-nav ul li a.active i {
            opacity: 0.5; }
  @media only screen and (min-width: 1020px) {
    .sub-nav {
      display: block; }
      .sub-nav ul {
        padding-bottom: 0;
        padding-top: 30px; }
        .sub-nav ul li {
          margin-bottom: 40px;
          margin-right: 15px; } }
  @media only screen and (min-width: 1180px) {
    .sub-nav ul {
      padding: 20px 0 14px; }
      .sub-nav ul li {
        margin-bottom: 0;
        padding-right: 0;
        margin-right: 30px; } }

@media (max-width: 760px) {
  .navigation--fix ul > li {
    width: 100% !important;
    margin-bottom: 10px; } }
@media (min-width: 480px) {
  .navigation--fix ul > li a {
    margin-bottom: 40px;
    margin-top: 10px; } }
.navigation--fix ul > li a:before {
  top: calc(100% + 20px) !important;
  bottom: auto !important; }
@media (min-width: 1500px) {
  .navigation--fix ul {
    margin: 0 -16px;
    *zoom: 1; }
    .navigation--fix ul:before, .navigation--fix ul:after {
      content: "";
      display: table; }
    .navigation--fix ul:after {
      clear: both; }
    .navigation--fix ul > li {
      padding: 0 16px !important;
      width: calc(20% - 4px) !important;
      display: inline-block !important;
      vertical-align: bottom !important;
      margin-bottom: inherit; } }

nav .link-secondary {
  color: #D8D8D8 !important; }

.wrapper {
  margin: 0 auto;
  max-width: 1180px;
  padding: 0 20px; }
  @media only screen and (min-width: 1180px) {
    .wrapper {
      padding: 0; } }

.no-padding {
  padding: 0 !important; }

.margin-top-clear {
  margin-top: 0 !important; }

.margin-bottom-clear {
  margin-bottom: 0 !important; }

.padding-top-clear {
  padding-top: 0 !important; }

.padding-bottom-clear {
  padding-bottom: 0 !important; }

.spaced6x {
  margin-bottom: 40px !important; }
  @media (min-width: 480px) {
    .spaced6x {
      margin-bottom: 60px !important; } }

.spaced-top14x {
  margin-top: 80px !important; }
  @media (min-width: 760px) {
    .spaced-top14x {
      margin-top: 140px; } }

.hidden {
  display: none !important; }

.no-line-bottom:after {
  display: none !important; }

#search {
  background: #455691;
  display: none;
  padding: 15px 40px 15px 20px;
  position: relative; }
  #search .wrapper {
    max-width: 550px;
    position: relative; }
  #search .icon-close {
    color: #ffffff;
    cursor: pointer;
    position: absolute;
    right: -30px;
    top: 14px; }
  #search input[type="text"] {
    padding: 9px 50px 8px 20px;
    border-radius: 30px;
    border: none;
    color: #211c23;
    display: block;
    letter-spacing: 0.015em;
    padding: 15px 40px 15px 20px;
    -webkit-transition: border 0.1s linear;
    -moz-transition: border 0.1s linear;
    -o-transition: border 0.1s linear;
    transition: border 0.1s linear;
    width: 100%;
    outline: none; }
  #search .search-submit {
    background: none;
    margin: 0;
    color: #211c23;
    font-size: 16px;
    padding: 0;
    position: absolute;
    right: 45px;
    top: 13px;
    border: none;
    color: #6f6f6f; }

.large-banner {
  min-height: 550px;
  position: relative;
  overflow: hidden; }
  .large-banner.homepage-banner div.bg-image {
    display: none; }
    @media only screen and (min-width: 760px) {
      .large-banner.homepage-banner div.bg-image {
        display: block;
        max-width: 100%; } }
  .large-banner.homepage-banner picture.bg-image {
    display: block; }
  .large-banner.homepage-banner .title {
    top: 53%; }
    .large-banner.homepage-banner .title p {
      margin-top: 50px; }
    .large-banner.homepage-banner .title a {
      margin-top: 50px; }
  .large-banner.standard {
    margin-top: 0; }
    @media only screen and (min-width: 760px) {
      .large-banner.standard {
        min-height: 840px; } }
    .large-banner.standard .post {
      max-width: 1180px;
      margin: 0 auto;
      display: block;
      text-align: left;
      position: relative; }
      .large-banner.standard .post h1 {
        max-width: 800px;
        text-align: left;
        margin-left: 0; }
        @media (max-width: 760px) {
          .large-banner.standard .post h1 {
            font-size: 40px; } }
        @media (max-width: 480px) {
          .large-banner.standard .post h1 {
            font-size: 26px; } }
        @media only screen and (min-width: 760px) {
          .large-banner.standard .post h1 {
            font-size: 51px; } }
      .large-banner.standard .post p {
        padding-left: 0;
        margin: 0 0 30px 0; }
      .large-banner.standard .post .separator {
        width: 60px;
        background: #ffffff;
        border-bottom: 1px solid #ffffff;
        margin-left: -20px;
        margin-bottom: 50px; }
      .large-banner.standard .post .date {
        display: block;
        color: #ffffff;
        font: 600 0.72222em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif; }
      .large-banner.standard .post .position {
        display: block;
        color: #ffffff;
        font: 400 0.77778em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif; }
        @media only screen and (min-width: 480px) {
          .large-banner.standard .post .position {
            font: 600 1.44444em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif; } }
      .large-banner.standard .post .by {
        color: #ffffff;
        display: block;
        font: 600 1.27778em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif; }
        @media only screen and (min-width: 480px) {
          .large-banner.standard .post .by {
            font-size: 2em; } }
      .large-banner.standard .post a {
        margin-top: 40px; }
        @media only screen and (min-width: 760px) {
          .large-banner.standard .post a {
            text-align: right;
            float: right;
            margin-right: calc(30% - 100px); } }
  .large-banner.white {
    min-height: 450px; }
    .large-banner.white .title i {
      color: #ed1c24;
      margin-bottom: 40px;
      display: block; }
    .large-banner.white .title h1 {
      color: #444444; }
    .large-banner.white .title p {
      color: #444444;
      margin-bottom: 0;
      font-size: 1em; }
  .large-banner.default .post h1 {
    max-width: 600px; }
  .large-banner.default .post a {
    margin-right: 0;
    float: left;
    margin-top: 0; }
  .large-banner .left, .large-banner .right, .large-banner .top, .large-banner .left-2, .large-banner .right-2 {
    display: none; }
    @media only screen and (min-width: 1020px) {
      .large-banner .left, .large-banner .right, .large-banner .top, .large-banner .left-2, .large-banner .right-2 {
        display: block; } }
  .large-banner .left {
    position: absolute;
    opacity: 0.05;
    bottom: 100px;
    left: -200px; }
  .large-banner .right {
    position: absolute;
    opacity: 0.05;
    bottom: 100px;
    right: -230px; }
  .large-banner .top {
    position: absolute;
    opacity: 0.05;
    top: -100px;
    right: 150px;
    z-index: 3; }
  .large-banner .left-2 {
    position: absolute;
    opacity: 0.05;
    bottom: 150px;
    right: -250px;
    left: auto;
    z-index: 3; }
  .large-banner .right-2 {
    position: absolute;
    opacity: 0.05;
    bottom: 80px;
    right: -300px;
    right: auto;
    z-index: 3; }
  .large-banner.dark {
    background-color: #242424;
    min-height: 650px; }
    @media only screen and (min-width: 1020px) {
      .large-banner.dark {
        min-height: 700px; } }
  .large-banner .map {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto; }
  .large-banner p {
    max-width: 760px;
    margin: 0 auto 50px auto;
    color: #ffffff;
    font: 400 1.44444em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif; }
    .large-banner p.small {
      max-width: 460px;
      font-size: 1.44444em;
      margin: 0 auto; }
    @media only screen and (min-width: 760px) {
      .large-banner p {
        font-size: 1.5em; } }
  .large-banner h1 {
    color: #ffffff;
    font-family: "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 26px;
    font-weight: 600;
    line-height: 1.2em;
    max-width: 1100px;
    margin: 0 auto 30px;
    text-transform: capitalize; }
    @media (min-width: 320px) {
      .large-banner h1 {
        font-size: 40px; } }
    @media only screen and (min-width: 480px) {
      .large-banner h1 {
        font-size: 3.55556em; } }
    @media only screen and (min-width: 1020px) {
      .large-banner h1 {
        font-size: 3.88889em; } }
    .large-banner h1.break {
      max-width: 700px; }
  .large-banner h1 span {
    box-shadow: inset 0 -7px 0 #ffffff; }
  .large-banner ul li {
    display: inline-block; }
    .large-banner ul li a {
      font: 900 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
      color: #7fb0d0;
      text-transform: uppercase;
      text-decoration: none; }
    .large-banner ul li.active a {
      color: #6f6f6f; }
    .large-banner ul li:after {
      content: ".";
      font: 900 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
      padding-left: 8px;
      padding-right: 4px; }
    .large-banner ul li:last-child:after {
      display: none; }
  .large-banner .title {
    position: absolute;
    left: 0;
    right: 0;
    margin-left: 0;
    margin-right: 0;
    min-width: 100%;
    display: inline-block;
    text-align: center;
    top: 52%;
    transform: translateY(-50%);
    padding: 0 20px; }
    @media only screen and (min-width: 760px) {
      .large-banner .title {
        padding: 0 20px;
        top: calc(50% + 50px); } }
    .large-banner .title a {
      width: 100%;
      max-width: 380px; }
      @media only screen and (min-width: 760px) {
        .large-banner .title a {
          width: auto; } }
    .large-banner .title i {
      color: #ffffff;
      font-size: 50px; }
  .large-banner .wrapper {
    max-width: 960px; }
  .large-banner .bg-image {
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0; }
    .large-banner .bg-image img {
      bottom: -9999px;
      display: block;
      left: -9999px;
      margin: auto;
      min-height: 100%;
      min-width: 100%;
      position: absolute;
      right: -9999px;
      top: -9999px;
      width: auto; }
    .large-banner .bg-image video {
      position: absolute;
      left: -9999px;
      right: -9999px;
      top: -9999px;
      bottom: -9999px;
      margin: auto;
      min-height: 100%;
      min-width: 100%;
      display: block;
      height: auto;
      width: auto; }
    .large-banner .bg-image:after {
      content: "";
      height: 100%;
      left: 0;
      position: absolute;
      top: 0;
      width: 100%;
      background: rgba(0, 0, 0, 0.6);
      /* Old browsers */
      background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.6) 0%, transparent 100%);
      /* FF3.6+ */
      background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(0, 0, 0, 0.6)), color-stop(100%, transparent));
      /* Chrome,Safari4+ */
      background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.6) 0%, transparent 100%);
      /* Chrome10+,Safari5.1+ */
      background: -o-linear-gradient(top, rgba(0, 0, 0, 0.6) 0%, transparent 100%);
      /* Opera 11.10+ */
      background: -ms-linear-gradient(top, rgba(0, 0, 0, 0.6) 0%, transparent 100%);
      /* IE10+ */
      background: linear-gradient(to bottom, rgba(0, 0, 0, 0.6) 0%, transparent 100%);
      /* W3C */
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='rgba(0, 0, 0, 0.6)', endColorstr='transparent',GradientType=0 );
      /* IE6-9 */ }
    .large-banner .bg-image:before {
      position: absolute;
      content: '';
      display: block;
      width: 1px;
      height: 70px;
      bottom: 0;
      z-index: 10;
      left: 50%;
      transform: translateX(-50%);
      background-color: #fff; }
    @media only screen and (min-width: 760px) {
      .large-banner .bg-image.video-poster {
        display: none; } }
    .large-banner .bg-image.darken:after {
      background-color: rgba(0, 0, 0, 0.5); }
    .large-banner .bg-image.purple:after {
      background-color: rgba(124, 51, 113, 0.65); }
    .large-banner .bg-image.red:after {
      background-color: rgba(237, 28, 36, 0.7); }
  .large-banner .overlay {
    padding: 70px 20px 50px;
    position: relative;
    text-align: center;
    z-index: 1; }
    .large-banner .overlay h1 {
      color: #ffffff;
      font: 600 1.66667em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
      line-height: 1.26667em;
      letter-spacing: 0.02em;
      margin: 20px 0; }
    .large-banner .overlay p {
      color: #ffffff;
      font: 400 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
      line-height: 1.375em;
      letter-spacing: 0.02em;
      margin: 20px auto;
      max-width: 600px; }
  @media only screen and (min-width: 760px) {
    .large-banner {
      min-height: 600px; }
      .large-banner .overlay {
        padding: 140px 30px 50px; }
        .large-banner .overlay h1 {
          font-size: 2.77778em;
          line-height: 1.2em;
          margin: 20px 0 40px; }
        .large-banner .overlay p {
          font-size: 1em;
          margin: 40px auto;
          max-width: 800px; } }
  @media only screen and (min-width: 1020px) {
    .large-banner {
      min-height: 850px; }
      .large-banner .overlay h1 {
        font-size: 3.33333em;
        line-height: 1.16667em; } }
  .large-banner.alt .title {
    top: 50%; }
    @media only screen and (min-width: 1020px) {
      .large-banner.alt .title {
        top: 60%; } }
    .large-banner.alt .title h1 {
      margin-top: 25px;
      font-size: 1.66667em;
      margin-bottom: 40px; }
    .large-banner.alt .title p {
      font-size: 1.33333em;
      font-weight: 400; }
    @media only screen and (min-width: 480px) {
      .large-banner.alt .title h1 {
        font-size: 2.22222em; }
      .large-banner.alt .title p {
        font-size: 1.44444em; } }
    @media only screen and (min-width: 760px) {
      .large-banner.alt .title h1 {
        font-size: 3.55556em; }
      .large-banner.alt .title p {
        font-size: 1.33333em;
        margin-top: 30px; } }
  @media only screen and (min-width: 480px) {
    .large-banner.alt .title.case-study {
      top: 50%; }
      .large-banner.alt .title.case-study h1 {
        font-size: 2.22222em; } }
  @media only screen and (min-width: 760px) {
    .large-banner.alt .title.case-study h1 {
      font-size: 3.55556em; } }
  @media only screen and (min-width: 1020px) {
    .large-banner.alt .title.case-study {
      top: 60%; } }
  @media only screen and (min-width: 760px) {
    .large-banner.alt {
      min-height: 756px; }
      .large-banner.alt .title h1 {
        margin-top: 25px; } }
  @media only screen and (min-width: 760px) {
    .large-banner.small {
      min-height: 500px; } }
  .large-banner.decorator {
    position: relative; }
    .large-banner.decorator:before {
      content: '';
      width: 1px;
      border-right: 1px solid #fff;
      position: absolute;
      left: 0;
      right: 0;
      margin: auto;
      bottom: 0px;
      z-index: 3;
      opacity: 1;
      height: 48px; }
      @media only screen and (min-width: 760px) {
        .large-banner.decorator:before {
          height: 72px; } }
  .large-banner form {
    display: block;
    margin-bottom: 47px; }
    .large-banner form .keyword, .large-banner form .location {
      width: 380px;
      display: inline-block;
      max-width: 100%; }
      .large-banner form .keyword label, .large-banner form .location label {
        float: left;
        color: #ffffff;
        font: 400 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
        margin-bottom: 9px; }
    .large-banner form .keyword {
      margin-right: 0;
      margin-bottom: 20px; }
      @media screen and (min-width: 829px) {
        .large-banner form .keyword {
          margin-right: 23px;
          margin-bottom: 0; } }
    .large-banner form select {
      width: 100%; }
    .large-banner form input {
      width: 100%; }

.large-banner-add-on {
  position: relative;
  display: block;
  width: 100%;
  float: left;
  display: none; }
  @media only screen and (min-width: 1020px) {
    .large-banner-add-on {
      display: block; } }
  .large-banner-add-on .left {
    position: absolute;
    left: -350px;
    bottom: -280px;
    z-index: 2;
    opacity: 0.15;
    -ms-transform: rotate(7deg);
    /* IE 9 */
    -webkit-transform: rotate(7deg);
    /* Chrome, Safari, Opera */
    transform: rotate(7deg); }
  .large-banner-add-on .right {
    position: absolute;
    right: -250px;
    bottom: -100px;
    z-index: 2;
    width: 450px;
    -ms-transform: rotate(60deg);
    /* IE 9 */
    -webkit-transform: rotate(60deg);
    /* Chrome, Safari, Opera */
    transform: rotate(60deg);
    opacity: 0.2; }

.our-services {
  text-align: center;
  padding-top: 0;
  display: block;
  float: left;
  width: 100%;
  margin-top: 60px; }
  .our-services.no-mt {
    margin-top: 0; }
  @media only screen and (min-width: 760px) {
    .our-services {
      margin-top: 140px; } }
  .our-services .wrapper {
    max-width: 1180px;
    padding: 0; }
    @media only screen and (min-width: 1480px) {
      .our-services .wrapper {
        max-width: 1480px;
        padding: 0; } }
    .our-services .wrapper > p {
      max-width: 580px;
      position: relative;
      font: 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
      line-height: 1.5em;
      margin: 0 auto 40px;
      padding: 0 15px; }
      @media only screen and (min-width: 760px) {
        .our-services .wrapper > p {
          font-size: 1em;
          padding: 0; } }
  .our-services img {
    max-width: 100%; }
  .our-services .row {
    overflow: hidden;
    margin-bottom: 20px; }
    .our-services .row .one {
      max-width: 730px;
      margin: 0 auto;
      float: none;
      margin-bottom: 20px;
      text-align: left; }
      @media only screen and (min-width: 1180px) {
        .our-services .row .one {
          margin-bottom: 0; } }
      .our-services .row .one.alt {
        float: none;
        margin: 0 auto; }
        @media only screen and (min-width: 1180px) {
          .our-services .row .one.alt {
            float: right; } }
      .our-services .row .one .service {
        background-color: #FAFAFA;
        padding-bottom: 50px; }
        .our-services .row .one .service.alt .desc h3 {
          max-width: 100%; }
        .our-services .row .one .service.alt .navigation {
          padding-top: 50px; }
          .our-services .row .one .service.alt .navigation ul li {
            width: 33% !important; }
            .our-services .row .one .service.alt .navigation ul li a {
              font: 400 1.22222em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif; }
              .our-services .row .one .service.alt .navigation ul li a:before {
                background-color: #D3C42E; }
        .our-services .row .one .service.alt ul:last-of-type {
          padding-top: 40px; }
        .our-services .row .one .service .image-preview {
          position: relative;
          overflow: hidden; }
          .our-services .row .one .service .image-preview img {
            display: block;
            margin: 0 auto;
            height: auto; }
          @media only screen and (min-width: 480px) {
            .our-services .row .one .service .image-preview .cta {
              display: block;
              position: absolute;
              bottom: 0;
              margin: auto;
              right: 20px;
              left: auto; } }
          .our-services .row .one .service .image-preview .brochure-cta {
            display: none; }
            @media only screen and (min-width: 480px) {
              .our-services .row .one .service .image-preview .brochure-cta {
                display: block;
                position: absolute;
                bottom: 0;
                margin: auto;
                left: auto;
                right: 255px; } }
            .our-services .row .one .service .image-preview .brochure-cta.alt {
              right: 20px; }
        .our-services .row .one .service .desc {
          display: inline-block;
          width: 100%;
          padding: 20px 20px; }
          .our-services .row .one .service .desc .desc__link {
            display: block;
            width: auto;
            max-width: none;
            text-align: right;
            float: none;
            clear: both;
            padding-top: 20px; }
            .our-services .row .one .service .desc .desc__link a {
              color: #664881;
              text-decoration: underline; }
              .our-services .row .one .service .desc .desc__link a:hover {
                text-decoration: none; }
          @media only screen and (min-width: 1020px) {
            .our-services .row .one .service .desc {
              padding: 20px 30px 30px 30px; } }
          .our-services .row .one .service .desc h3 {
            font: 400 1.66667em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
            font-weight: bold;
            line-height: 1.25em;
            margin: 15px 0; }
            @media only screen and (min-width: 1180px) {
              .our-services .row .one .service .desc h3 {
                display: inline-block;
                max-width: 150px;
                vertical-align: top;
                font: 2.66667em;
                text-align: left;
                float: left; } }
            @media screen and (min-width: 1480px) {
              .our-services .row .one .service .desc h3 {
                max-width: 230px; } }
          .our-services .row .one .service .desc p {
            max-width: 450px;
            margin: 11px auto 0;
            vertical-align: top;
            float: left;
            font-size: 0.88889em; }
            @media only screen and (min-width: 1180px) {
              .our-services .row .one .service .desc p {
                display: inline-block;
                max-width: 300px;
                text-align: left;
                float: right; } }
            @media screen and (min-width: 1480px) {
              .our-services .row .one .service .desc p {
                max-width: 400px; } }
        .our-services .row .one .service .cta-bottom {
          margin: 20px 15px 0 15px;
          text-align: center; }
          .our-services .row .one .service .cta-bottom a {
            text-align: left;
            font-size: 16px;
            width: 100%;
            margin-top: 20px; }
          @media only screen and (min-width: 480px) {
            .our-services .row .one .service .cta-bottom {
              display: none; } }
        .our-services .row .one .service .navigation {
          padding: 0 30px; }
          @media only screen and (min-width: 1180px) {
            .our-services .row .one .service .navigation {
              text-align: left; } }
          .our-services .row .one .service .navigation h4 {
            margin-top: 37px;
            margin-bottom: 20px;
            font: 700 1.11111em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
            color: #664881; }
          .our-services .row .one .service .navigation ul {
            text-align: left;
            padding-left: 0; }
            .our-services .row .one .service .navigation ul li {
              display: inline-block;
              padding-bottom: 20px;
              padding-right: 31px;
              margin-bottom: 20px;
              margin-right: -4px;
              text-align: left;
              width: 100%; }
              @media only screen and (min-width: 760px) {
                .our-services .row .one .service .navigation ul li {
                  width: 50%; } }
              @media only screen and (min-width: 1020px) {
                .our-services .row .one .service .navigation ul li {
                  width: 20%; } }
              @media only screen and (min-width: 1180px) {
                .our-services .row .one .service .navigation ul li {
                  margin-bottom: 0; } }
            @media only screen and (min-width: 1020px) {
              .our-services .row .one .service .navigation ul li:first-child:nth-last-child(3),
              .our-services .row .one .service .navigation ul li:first-child:nth-last-child(3) ~ li {
                width: 33%; } }
            @media only screen and (min-width: 1020px) {
              .our-services .row .one .service .navigation ul li:first-child:nth-last-child(4),
              .our-services .row .one .service .navigation ul li:first-child:nth-last-child(4) ~ li {
                width: 25%; } }
          .our-services .row .one .service .navigation.three ul li {
            padding-right: 28px;
            padding-bottom: 40px; }
            @media only screen and (min-width: 1020px) {
              .our-services .row .one .service .navigation.three ul li {
                padding-bottom: 0;
                width: 33%; } }
      @media only screen and (min-width: 1180px) {
        .our-services .row .one {
          display: inline-block;
          max-width: 570px;
          float: left;
          background: #FAFAFA; } }
      @media only screen and (min-width: 1480px) {
        .our-services .row .one {
          min-width: 730px;
          max-width: 730px; } }
    @media screen and (max-width: 480px) {
      .our-services .row .two {
        margin: 0 20px; } }
    .our-services .row .two .half {
      width: 100%;
      margin-bottom: 20px !important; }
    @media only screen and (min-width: 1180px) {
      .our-services .row .two {
        float: right;
        text-align: right; } }
    @media (max-width: 1180px) {
      .our-services .row .two.alt {
        margin-bottom: 20px; } }
    @media only screen and (min-width: 1180px) {
      .our-services .row .two.alt {
        float: left;
        text-align: left; } }
    .our-services .row .two .half {
      padding: 50px 10px;
      z-index: 0;
      display: inline-block;
      vertical-align: top;
      text-align: center;
      position: relative;
      overflow: hidden;
      -webkit-transition: 0.2s all ease-in-out;
      -moz-transition: 0.2s all ease-in-out;
      -o-transition: 0.2s all ease-in-out;
      transition: 0.2s all ease-in-out;
      margin: 0; }
      @media only screen and (min-width: 760px) {
        .our-services .row .two .half > a {
          min-height: 266px; } }
      @media only screen and (min-width: 760px) {
        .our-services .row .two .half {
          margin-bottom: 0;
          max-width: 355px;
          min-width: 355px;
          display: inline-block;
          padding: 50px 20px; } }
      @media only screen and (min-width: 1180px) {
        .our-services .row .two .half {
          max-width: 275px;
          min-width: 275px;
          padding-bottom: 0; } }
      @media only screen and (min-width: 1480px) {
        .our-services .row .two .half {
          max-width: 355px;
          min-width: 355px; } }
      .our-services .row .two .half i {
        font-size: 4.22222em;
        color: #ffffff; }
      .our-services .row .two .half a {
        font: 400 1em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
        text-decoration: none;
        display: block; }
      .our-services .row .two .half h3 {
        margin-top: 25px;
        margin-bottom: 15px;
        color: #ffffff;
        font: bold 1.5em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
        line-height: 1.275em; }
        @media only screen and (min-width: 760px) {
          .our-services .row .two .half h3 {
            font-size: 2.22222em;
            max-width: 300px; } }
      .our-services .row .two .half h4 {
        color: #ffffff;
        font: bold 1.11111em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
        text-align: left;
        margin: 40px 0 15px 0; }
      .our-services .row .two .half ul li {
        padding-bottom: 40px;
        text-align: left;
        font: 400 1.11111em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif; }
      .our-services .row .two .half.blue {
        background-color: #455691;
        overflow: hidden; }
        .our-services .row .two .half.blue:hover {
          background-color: #394879; }
        .our-services .row .two .half.blue .brand {
          max-width: initial;
          position: absolute;
          right: -220px;
          top: -190px;
          z-index: -1;
          opacity: 0.07; }
        .our-services .row .two .half.blue .brand-alt {
          max-width: 300px;
          position: absolute;
          left: -100px;
          top: -100px;
          z-index: -1;
          opacity: 0.07; }
        .our-services .row .two .half.blue .link-terciary:before {
          background-color: #7fb0d0; }
      .our-services .row .two .half.lightblue {
        background-color: #7fb0d0; }
        .our-services .row .two .half.lightblue .extra-padding {
          margin-bottom: 80px; }
        .our-services .row .two .half.lightblue:hover {
          background-color: #65a0c6; }
        .our-services .row .two .half.lightblue .brand {
          position: absolute;
          left: -50px;
          bottom: -80px;
          z-index: 0;
          width: 350px;
          opacity: 0.07; }
        .our-services .row .two .half.lightblue .brand-top {
          position: absolute;
          top: -100px;
          right: 100px;
          z-index: 0;
          width: 350px;
          opacity: 0.07; }
      .our-services .row .two .half.lightblue.alt ul li a:before, .our-services .row .two .half.blue.alt ul li a:before {
        background-color: #D3C42E; }
      .our-services .row .two .half.purple {
        background-color: #664881; }
        .our-services .row .two .half.purple:hover {
          background-color: #543b6a; }
        .our-services .row .two .half.purple .brand {
          max-width: initial;
          position: absolute;
          right: -240px;
          bottom: -100px;
          z-index: 0;
          opacity: 0.06; }
        .our-services .row .two .half.purple .link-terciary:before {
          background-color: #ffffff; }
      .our-services .row .two .half.purplelight {
        background-color: #7c3371; }
        .our-services .row .two .half.purplelight:hover {
          background-color: #63295a; }
        .our-services .row .two .half.purplelight .brand {
          max-width: initial;
          position: absolute;
          left: -100px;
          width: 275px;
          top: -50px;
          z-index: -1;
          opacity: 0.06; }
        .our-services .row .two .half.purplelight .link-terciary:before {
          background-color: #ffffff; }
      .our-services .row .two .half.orange {
        background-color: #e7792b; }
        .our-services .row .two .half.orange:hover {
          background-color: #d66718; }
        .our-services .row .two .half.orange .brand {
          max-width: initial;
          position: absolute;
          right: -160px;
          width: 275px;
          top: -50px;
          z-index: 0;
          opacity: 0.2; }
        .our-services .row .two .half.orange i {
          color: #ffffff; }
        .our-services .row .two .half.orange .link-terciary:before {
          background-color: #ffffff; }
      .our-services .row .two .half.orangelight {
        background-color: #ec972e; }
        .our-services .row .two .half.orangelight:hover {
          background-color: #e28615; }
        .our-services .row .two .half.orangelight .brand {
          max-width: initial;
          position: absolute;
          right: -60px;
          width: 275px;
          bottom: -100px;
          z-index: 0;
          opacity: 0.2; }
        .our-services .row .two .half.orangelight i {
          color: #ffffff; }
        .our-services .row .two .half.orangelight .link-terciary:before {
          background-color: #ffffff; }
      .our-services .row .two .half .separator {
        background: #ffffff;
        border-color: #ffffff;
        opacity: 0.3; }
        .our-services .row .two .half .separator.extra-padding {
          margin-top: 150px; }
    @media only screen and (min-width: 1180px) {
      .our-services .row .two {
        display: inline-block;
        max-width: 600px;
        min-width: 600px;
        float: right;
        margin-top: 0; }
        .our-services .row .two .half:first-of-type {
          margin-right: 15px; } }
    @media only screen and (min-width: 1480px) {
      .our-services .row .two {
        max-width: 730px;
        min-width: 730px; } }

.awards {
  float: left;
  display: block;
  width: 100%;
  text-align: center;
  margin-top: 50px;
  margin-bottom: 40px; }
  @media only screen and (min-width: 1020px) {
    .awards {
      margin-bottom: 80px;
      margin-top: 70px; } }
  .awards .brands {
    margin-top: 30px; }
    .awards .brands .brand {
      display: inline-block;
      margin: 0 10px 10px;
      vertical-align: middle;
      max-width: 100%;
      width: 90px;
      text-align: center; }
      @media (max-width: 760px) {
        .awards .brands .brand:first-child {
          display: block;
          width: auto; } }
      @media only screen and (min-width: 760px) {
        .awards .brands .brand {
          float: none;
          width: 130px;
          margin-right: 30px; } }
      @media only screen and (min-width: 1020px) {
        .awards .brands .brand {
          max-width: 280px;
          margin: 0 80px 20px 10px;
          width: auto; }
          .awards .brands .brand:last-of-type {
            margin-right: 0; } }
      .awards .brands .brand img {
        display: block;
        max-width: 100%;
        height: auto !important;
        margin: 0; }
        @media only screen and (min-width: 480px) {
          .awards .brands .brand img {
            margin-bottom: 0 auto; } }
        @media (max-width: 760px) {
          .awards .brands .brand img {
            margin-left: auto;
            margin-right: auto; } }
  @media only screen and (min-width: 760px) {
    .awards .brand {
      margin: 0 30px; } }

.about-us {
  float: left;
  display: block;
  width: 100%;
  position: relative; }
  @media only screen and (min-width: 1020px) {
    .about-us {
      padding-left: 20px;
      padding-right: 20px; } }
  .about-us .wrapper {
    padding: 0; }
    @media only screen and (min-width: 1020px) {
      .about-us .wrapper {
        padding: 0 20px; } }
  @media only screen and (min-width: 1020px) {
    .about-us {
      margin-top: 160px;
      padding-left: 0;
      padding-right: 0; } }
  .about-us h2 {
    color: #ffffff;
    font: 700 2.11111em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
    position: relative;
    z-index: 2;
    padding-top: 70px; }
    @media only screen and (min-width: 760px) {
      .about-us h2 {
        font-size: 2.88889em;
        padding-top: 200px; } }
  .about-us .brand {
    max-width: initial;
    position: absolute;
    left: -200px;
    top: -200px;
    z-index: 1;
    opacity: 0.05;
    display: none; }
    @media only screen and (min-width: 1020px) {
      .about-us .brand {
        display: block; } }
  .about-us.no-margin {
    margin-top: 0; }
    .about-us.no-margin .about-desc {
      margin-top: 0; }
  .about-us.margin-top {
    margin-top: 300px; }
  .about-us.neg-margin {
    margin-top: 0; }
  .about-us .about {
    text-align: center;
    padding: 50px 0 190px 0;
    clear: both;
    background-color: #242424;
    position: relative;
    display: block;
    width: 100%; }
    .about-us .about:before {
      position: absolute;
      background: url(../img/backgrounds/about-us-bg.png) no-repeat;
      background-size: contain;
      content: '';
      left: 0;
      right: 0;
      margin: auto;
      width: 100%;
      height: 100%;
      opacity: 0.6; }
      @media only screen and (min-width: 1020px) {
        .about-us .about:before {
          width: 1250px;
          height: 674px;
          background-size: cover; } }
    @media only screen and (min-width: 1020px) {
      .about-us .about {
        min-height: 800px; } }
  .about-us .about-desc {
    margin-top: -160px;
    position: relative;
    z-index: 1; }
    @media only screen and (min-width: 1020px) {
      .about-us .about-desc .wrapper {
        padding: 0;
        max-width: 1180px; } }
    .about-us .about-desc .left, .about-us .about-desc .right {
      position: absolute;
      display: none; }
      @media only screen and (min-width: 1020px) {
        .about-us .about-desc .left, .about-us .about-desc .right {
          display: block; } }
    .about-us .about-desc .left {
      max-width: initial;
      left: -200px;
      top: 20px;
      z-index: -1; }
    .about-us .about-desc .right {
      max-width: initial;
      right: 0;
      top: 160px;
      width: 300px;
      z-index: -1; }
    .about-us .about-desc .heading-image {
      float: left;
      width: 100%; }
      @media screen and (max-width: 480px) {
        .about-us .about-desc .heading-image {
          padding: 0 20px; } }
      @media only screen and (min-width: 480px) {
        .about-us .about-desc .heading-image {
          padding: 0 75px; } }
      @media only screen and (min-width: 1020px) {
        .about-us .about-desc .heading-image {
          padding: 0; } }
      .about-us .about-desc .heading-image .heading {
        background-color: #ed1c24;
        display: inline-block;
        padding: 35px 35px 30px;
        position: relative;
        overflow: hidden;
        width: 100%; }
        @media only screen and (min-width: 1020px) {
          .about-us .about-desc .heading-image .heading {
            max-width: 320px;
            padding: 70px 33px 30px; } }
        @media only screen and (min-width: 1180px) {
          .about-us .about-desc .heading-image .heading {
            max-width: 380px; } }
        .about-us .about-desc .heading-image .heading img {
          position: absolute;
          left: -150px;
          bottom: -120px;
          z-index: 1;
          width: 400px;
          opacity: 0.2; }
        .about-us .about-desc .heading-image .heading h3 {
          font-size: 1.11111em;
          font-weight: 700;
          line-height: 1.15385em;
          color: #ffffff; }
          @media only screen and (min-width: 480px) {
            .about-us .about-desc .heading-image .heading h3 {
              font-size: 2.22222em; } }
          @media only screen and (min-width: 1020px) {
            .about-us .about-desc .heading-image .heading h3 {
              font-size: 2.88889em; } }
        .about-us .about-desc .heading-image .heading .brand {
          position: absolute;
          bottom: 20px;
          right: 20px; }
          .about-us .about-desc .heading-image .heading .brand i {
            color: #ffffff;
            opacity: 0.5;
            font-size: 25px; }
      .about-us .about-desc .heading-image .image {
        display: inline-block;
        float: right;
        position: relative;
        max-width: 700px;
        overflow: hidden; }
        @media only screen and (min-width: 1180px) {
          .about-us .about-desc .heading-image .image {
            max-width: 780px; } }
        .about-us .about-desc .heading-image .image img {
          width: 100%;
          height: 100%;
          display: block; }
        .about-us .about-desc .heading-image .image .play {
          position: absolute;
          left: 0;
          right: 0;
          top: 0;
          bottom: 0;
          margin: 0 auto;
          text-align: center; }
          .about-us .about-desc .heading-image .image .play a {
            text-decoration: none;
            margin: 0 auto;
            top: 30%;
            position: relative; }
            .about-us .about-desc .heading-image .image .play a:hover i {
              opacity: 0.5; }
          .about-us .about-desc .heading-image .image .play i {
            -webkit-transition: 0.3s all ease-in-out;
            -moz-transition: 0.3s all ease-in-out;
            -o-transition: 0.3s all ease-in-out;
            transition: 0.3s all ease-in-out;
            color: #ffffff;
            font-size: 50px; }
            @media only screen and (min-width: 760px) {
              .about-us .about-desc .heading-image .image .play i {
                font-size: 150px; } }
    .about-us .about-desc .desc {
      width: 100%;
      display: block;
      padding-top: 100px;
      padding-bottom: 40px; }
      @media only screen and (min-width: 760px) {
        .about-us .about-desc .desc {
          padding-bottom: 100px; } }
      .about-us .about-desc .desc:after {
        content: '';
        width: 1px;
        border-right: 1px solid #ed1c24;
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        bottom: -20px;
        opacity: 0.5;
        height: 32px; }
        @media only screen and (min-width: 1020px) {
          .about-us .about-desc .desc:after {
            height: 100px;
            bottom: -35px; } }
      .about-us .about-desc .desc.mt50 {
        margin-top: 50px;
        float: left;
        position: relative; }
        .about-us .about-desc .desc.mt50 p {
          margin-bottom: 0; }
      .about-us .about-desc .desc h2 {
        color: #242424;
        text-align: center;
        margin-top: 0;
        font: 600 1.44444em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif; }
        @media only screen and (min-width: 760px) {
          .about-us .about-desc .desc h2 {
            padding-top: 50px;
            margin-bottom: 0; } }
      .about-us .about-desc .desc:before {
        content: '';
        height: 100px;
        width: 1px;
        border-right: 1px solid #ed1c24;
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        top: 0;
        opacity: 0.5; }
      .about-us .about-desc .desc p {
        max-width: 580px;
        margin: 50px auto;
        position: relative;
        font: 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
        line-height: 1.5em; }
        @media only screen and (min-width: 760px) {
          .about-us .about-desc .desc p {
            font-size: 1em; } }
        .about-us .about-desc .desc p span {
          color: #000000;
          font-size: 0.88889em; }
    .about-us .about-desc.mt .desc:before {
      display: none; }
    .about-us .about-desc.mt .desc p:before {
      content: '';
      height: 32px;
      width: 1px;
      border-right: 1px solid #ed1c24;
      position: absolute;
      left: 0;
      right: 0;
      margin: auto;
      top: -100px; }
      @media only screen and (min-width: 1020px) {
        .about-us .about-desc.mt .desc p:before {
          top: -103px;
          height: 70px; } }
  .about-us.alt .desc {
    margin-top: 125px;
    padding-bottom: 0px; }
    .about-us.alt .desc:before {
      height: 50px; }
    .about-us.alt .desc h2 {
      text-align: center;
      margin-bottom: 50px;
      font: 700 1.44444em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
      color: #242424;
      padding-top: 0; }
    .about-us.alt .desc p:after {
      display: none; }
  .about-us.ver-2 {
    margin-bottom: 140px;
    margin-top: 120px; }
    .about-us.ver-2 h2 {
      padding-top: 0; }
    .about-us.ver-2 .about-desc .desc {
      margin-top: 0; }
      .about-us.ver-2 .about-desc .desc:before {
        display: none; }
      .about-us.ver-2 .about-desc .desc p {
        font: 1em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
        max-width: 800px;
        line-height: 1.7em;
        margin-top: 34px;
        margin-bottom: 0; }
  .about-us .desc {
    padding: 0 30px; }
    @media only screen and (min-width: 1020px) {
      .about-us .desc {
        padding: 0; } }
    .about-us .desc ul {
      max-width: 580px;
      margin: 50px auto;
      position: relative; }
      .about-us .desc ul li {
        position: relative;
        padding-left: 30px;
        font: 700 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
        display: inline-block;
        padding-bottom: 7px;
        width: 100%;
        vertical-align: top; }
        .about-us .desc ul li p {
          margin: 0 !important; }
        @media only screen and (min-width: 480px) {
          .about-us .desc ul li {
            width: calc(50% - 4px); } }
        .about-us .desc ul li:before {
          position: absolute;
          left: 0;
          top: 10px;
          font-family: 'icomoon';
          content: "\e903";
          font-size: 9px;
          color: #ed1c24; }
  .about-us.large-mt {
    margin-top: 250px;
    margin-bottom: 80px; }
  .about-us.ver-3 {
    margin-bottom: 130px; }
    .about-us.ver-3 .desc:before {
      top: 0; }
    .about-us.ver-3 .desc:after {
      bottom: 0; }
  .about-us.ver-4 {
    margin-top: 200px; }
  .about-us.ver-6 {
    margin-top: 81px; }
  .about-us.ver-4 .about-desc, .about-us.ver-6 .about-desc {
    margin-top: 0; }
  .about-us.ver-4 .desc, .about-us.ver-6 .desc {
    padding-bottom: 100px; }
    .about-us.ver-4 .desc:before, .about-us.ver-6 .desc:before {
      top: -80px; }
    .about-us.ver-4 .desc:after, .about-us.ver-6 .desc:after {
      bottom: 0; }
  .about-us.ver-5 {
    margin-bottom: 0; }
    .about-us.ver-5 .desc {
      padding-bottom: 0; }
      .about-us.ver-5 .desc p {
        margin-bottom: 0; }
      .about-us.ver-5 .desc:before {
        top: 0; }
      .about-us.ver-5 .desc:after {
        display: none; }
  .about-us.ver-7 {
    margin-bottom: 0;
    margin-top: 0; }
    .about-us.ver-7 .desc {
      padding-bottom: 0; }
      .about-us.ver-7 .desc p {
        margin-bottom: 0; }
      .about-us.ver-7 .desc:before {
        top: 0; }
      .about-us.ver-7 .desc:after {
        display: none; }

.about-us.no-margin.ver-4 .desc {
  padding-top: 50px; }

.about-us--fix .desc {
  padding-top: 0px !important;
  margin-top: -30px !important; }
  .about-us--fix .desc h2 {
    margin-top: 0 !important; }

.security {
  display: block;
  width: 100%;
  background-color: #FAFAFA;
  position: relative;
  padding: 85px 0;
  max-width: 1480px;
  margin: 0 auto;
  overflow: hidden;
  margin-bottom: 9px; }
  .security h2, .security p {
    color: #242424; }
  .security .left {
    max-width: initial;
    position: absolute;
    left: -263px;
    width: 600px;
    bottom: -368px;
    z-index: 1;
    opacity: 0.07; }
  .security .right {
    max-width: initial;
    position: absolute;
    right: -306px;
    top: -343px;
    width: 900px;
    z-index: 0;
    opacity: 0.07; }
  .security .title {
    display: inline-block;
    float: left; }
    @media only screen and (min-width: 1020px) {
      .security .title {
        max-width: 420px; } }
    @media only screen and (min-width: 1180px) {
      .security .title {
        max-width: 500px; } }
    .security .title h2 {
      font-size: 2.22222em;
      margin-bottom: 50px; }
      @media only screen and (min-width: 1020px) {
        .security .title h2 {
          font-size: 3.55556em; } }
  .security .navigation {
    display: inline-block;
    margin-top: 50px;
    float: left; }
    @media only screen and (min-width: 1020px) {
      .security .navigation {
        float: right;
        margin-top: 0;
        max-width: calc(100% - 440px); } }
    @media only screen and (min-width: 1180px) {
      .security .navigation {
        max-width: calc(100% - 500px); } }
    .security .navigation h4 {
      color: #664881;
      font: 900 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
      margin-bottom: 28px; }
    .security .navigation ul li {
      margin-bottom: 30px;
      display: block;
      width: 100%; }
      @media only screen and (min-width: 480px) {
        .security .navigation ul li {
          display: inline-block;
          width: 160px; } }
      .security .navigation ul li a {
        color: #6f6f6f; }
        .security .navigation ul li a:before {
          background-color: #ed1c24;
          bottom: -15px; }
          @media only screen and (min-width: 1020px) {
            .security .navigation ul li a:before {
              bottom: -50px; } }
      @media only screen and (min-width: 1020px) {
        .security .navigation ul li {
          margin-bottom: 100px; } }
  .security.security--microsoft .cta {
    display: block;
    width: 100%;
    text-align: center;
    float: left;
    margin-top: 30px; }
    .security.security--microsoft .cta .btn {
      margin: 0 auto;
      text-align: center;
      margin-top: 30px; }
  .security.security--microsoft .navigation ul li {
    margin-bottom: 60px;
    display: inline-block;
    max-width: 140px;
    margin-right: 40px;
    width: 100%; }
  @media only screen and (min-width: 1020px) {
    .security.security--microsoft .title {
      margin-top: 20px;
      max-width: 500px; }
    .security.security--microsoft .navigation {
      width: calc(90% - 490px); }
      .security.security--microsoft .navigation ul li a:before {
        bottom: -15px; } }

.security-alt {
  float: left;
  width: 100%;
  margin: 20px 0; }
  .security-alt .wrapper {
    max-width: 1180px; }
    @media only screen and (min-width: 1480px) {
      .security-alt .wrapper {
        max-width: 1480px; } }
  .security-alt .img {
    position: relative; }
    @media only screen and (min-width: 1020px) {
      .security-alt .img {
        float: left;
        width: 49%;
        display: inline-block; } }
    .security-alt .img .img-wrapper {
      position: relative; }
    .security-alt .img img {
      display: block;
      max-width: 100%;
      width: 100%;
      margin-bottom: 20px; }
      @media only screen and (min-width: 1020px) {
        .security-alt .img img {
          margin-bottom: 0; } }
    .security-alt .img .cta {
      display: block;
      position: absolute;
      bottom: 0;
      margin: auto;
      right: 50px; }
      .security-alt .img .cta a {
        font-size: 12px; }
        @media only screen and (min-width: 480px) {
          .security-alt .img .cta a {
            font-size: 1.11111em; } }
  .security-alt .detail {
    background-color: #fafafa;
    position: relative;
    overflow: hidden;
    padding: 10px 0 35px 0; }
    @media only screen and (min-width: 1020px) {
      .security-alt .detail {
        width: 49%;
        float: right;
        display: inline-block; } }
    .security-alt .detail .shape {
      max-width: initial;
      position: absolute;
      right: -306px;
      top: -343px;
      width: 900px;
      z-index: 0;
      opacity: 0.07; }
    .security-alt .detail .desc {
      padding: 30px; }
      .security-alt .detail .desc h3 {
        font: 700 2.22222em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif; }
      .security-alt .detail .desc .separator {
        margin: 20px 0 0 0; }
    .security-alt .detail .navigation {
      padding: 0 30px; }
      @media only screen and (min-width: 1180px) {
        .security-alt .detail .navigation {
          text-align: left; } }
      .security-alt .detail .navigation h4 {
        margin-top: 37px;
        margin-bottom: 20px;
        font: 800 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
        color: #664881; }
      .security-alt .detail .navigation ul {
        text-align: left;
        padding-left: 0; }
        .security-alt .detail .navigation ul li {
          display: inline-block;
          padding-bottom: 20px;
          padding-right: 31px;
          margin-right: -4px;
          text-align: left;
          width: 100%;
          margin-bottom: 35px; }
          @media only screen and (min-width: 1020px) {
            .security-alt .detail .navigation ul li {
              margin-bottom: 20px; } }
          .security-alt .detail .navigation ul li a:before {
            color: #ED1C24;
            background-color: #ED1C24;
            bottom: -30px; }
          @media only screen and (min-width: 760px) {
            .security-alt .detail .navigation ul li {
              width: 50%; } }
          @media only screen and (min-width: 1020px) {
            .security-alt .detail .navigation ul li {
              width: 20%; } }
          @media only screen and (min-width: 1180px) {
            .security-alt .detail .navigation ul li {
              margin-bottom: 0; } }
        @media only screen and (min-width: 1020px) {
          .security-alt .detail .navigation ul li:first-child:nth-last-child(3),
          .security-alt .detail .navigation ul li:first-child:nth-last-child(3) ~ li {
            width: 33%; } }
        @media only screen and (min-width: 1020px) {
          .security-alt .detail .navigation ul li:first-child:nth-last-child(4),
          .security-alt .detail .navigation ul li:first-child:nth-last-child(4) ~ li {
            width: 25%; } }
      .security-alt .detail .navigation.three ul li {
        padding-right: 28px;
        padding-bottom: 40px; }
        @media only screen and (min-width: 1020px) {
          .security-alt .detail .navigation.three ul li {
            padding-bottom: 0;
            width: 33%; } }

.security-add-on {
  float: left;
  display: block;
  width: 100%;
  margin: 90px auto 0 auto;
  text-align: center; }
  .security-add-on h2 {
    text-align: center; }

.contact {
  padding: 110px 0 140px 0;
  background-color: #455691;
  float: left;
  display: block;
  width: 100%;
  position: relative;
  text-align: center; }
  .contact .left {
    max-width: initial;
    position: absolute;
    left: -310px;
    width: 600px;
    bottom: -75spx;
    z-index: 1;
    opacity: 0.07;
    -ms-transform: rotate(60deg);
    /* IE 9 */
    -webkit-transform: rotate(60deg);
    /* Chrome, Safari, Opera */
    transform: rotate(60deg); }
  .contact .right {
    max-width: initial;
    position: absolute;
    right: -120px;
    bottom: -152px;
    width: 400px;
    z-index: 0;
    opacity: 0.05; }
  .contact:before {
    position: absolute;
    background: url(../img/backgrounds/contact-bg.png) no-repeat;
    background-size: cover;
    content: '';
    left: 0;
    right: 0;
    width: 1250px;
    height: 674px;
    margin: auto; }
  .contact .wrapper {
    position: relative;
    z-index: 10; }
  .contact h3 {
    font: 700 1.44444em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #ffffff;
    margin-bottom: 50px; }
    @media only screen and (min-width: 1020px) {
      .contact h3 {
        font-size: 36px; } }
  .contact form {
    position: relative;
    z-index: 11;
    margin: 0 auto;
    max-width: 480px;
    *zoom: 1; }
    .contact form:before, .contact form:after {
      content: "";
      display: table; }
    .contact form:after {
      clear: both; }
    .contact form:before {
      content: '';
      height: 72px;
      width: 1px;
      border-right: 1px solid #ffffff;
      position: absolute;
      left: 0;
      right: 0;
      margin: auto;
      top: -206px;
      opacity: 0.6; }
    .contact form:after {
      content: '';
      height: 72px;
      width: 1px;
      border-right: 1px solid #ffffff;
      position: absolute;
      left: 0;
      right: 0;
      margin: auto;
      bottom: -139px;
      opacity: 0.6; }
    .contact form label {
      float: left;
      display: block;
      margin-bottom: 10px;
      color: #ffffff; }
    .contact form input[type="text"] {
      min-width: 100%;
      display: block;
      margin-bottom: 20px; }
    .contact form textarea {
      display: block;
      min-width: 100%;
      margin-bottom: 20px; }
    .contact form .responsiveRow {
      text-align: left !important; }
      .contact form .responsiveRow span {
        color: #ffffff !important;
        margin-bottom: 5px !important;
        display: inline-block; }
      .contact form .responsiveRow select {
        margin-bottom: 20px;
        width: 100%; }
    .contact form .buttonContainer {
      text-align: center; }
      .contact form .buttonContainer input,
      .contact form .buttonContainer button {
        margin-top: 30px;
        padding: 15px 80px !important; }
  .contact.photo {
    background: url(../img/backgrounds/contact-bg.jpg) no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    position: relative; }
    .contact.photo:before {
      content: "";
      display: block;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      background-color: rgba(36, 36, 36, 0.8);
      background-image: none; }
  .contact.pink {
    background: url(../img/backgrounds/contact-bg.jpg) no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    position: relative; }
    .contact.pink:before {
      z-index: 10; }
    .contact.pink:after {
      content: "";
      display: block;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      background-color: rgba(102, 72, 129, 0.95);
      background-image: none; }
  .contact.green {
    background: url(../img/backgrounds/contact-bg-bw.jpg) no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    position: relative; }
    .contact.green form h3 {
      color: #242424; }
    .contact.green form label {
      color: #444444;
      font: 400 0.88889em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif; }
    .contact.green .left {
      position: absolute;
      top: -250px;
      left: -230px;
      width: 480px;
      -ms-transform: rotate(360deg);
      /* IE 9 */
      -webkit-transform: rotate(360deg);
      /* Chrome, Safari, Opera */
      transform: rotate(360deg); }
    .contact.green .right {
      position: absolute;
      top: 150px;
      right: -650px;
      width: 850px;
      -ms-transform: rotate(360deg);
      /* IE 9 */
      -webkit-transform: rotate(360deg);
      /* Chrome, Safari, Opera */
      transform: rotate(360deg); }
    .contact.green:before {
      content: "";
      display: block;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      background-color: rgba(172, 189, 57, 0.5);
      background-image: none; }
  .contact.green #clickdimensionsForm .responsiveCell, .contact.dark #clickdimensionsForm .responsiveCell {
    text-align: left !important; }
    .contact.green #clickdimensionsForm .responsiveCell .alignBottom, .contact.green #clickdimensionsForm .responsiveCell .alignTop, .contact.dark #clickdimensionsForm .responsiveCell .alignBottom, .contact.dark #clickdimensionsForm .responsiveCell .alignTop {
      margin-bottom: 10px !important; }
    .contact.green #clickdimensionsForm .responsiveCell select, .contact.dark #clickdimensionsForm .responsiveCell select {
      width: 100% !important; }
  .contact.dark h3 {
    color: #ffffff !important;
    position: relative;
    z-index: 5; }
  .contact.dark #clickdimensionsForm:before {
    display: none; }
  .contact.dark #clickdimensionsForm .responsiveCell span {
    color: #ffffff !important; }
  .contact.dark #clickdimensionsForm .buttonContainer, .contact.green #clickdimensionsForm .buttonContainer {
    text-align: left !important; }
    .contact.dark #clickdimensionsForm .buttonContainer input[type="submit"], .contact.green #clickdimensionsForm .buttonContainer input[type="submit"] {
      color: #ffffff !important;
      text-decoration: none !important;
      display: inline-block !important;
      background-color: #ed1c24 !important;
      padding: 15px 24px !important;
      position: relative !important;
      z-index: 1 !important;
      border: none !important;
      text-transform: capitalize !important;
      font: 700 1.11111em "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
      cursor: pointer !important;
      -webkit-transition: all 0.2s ease-in-out;
      -moz-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out; }
      .contact.dark #clickdimensionsForm .buttonContainer input[type="submit"]:hover, .contact.green #clickdimensionsForm .buttonContainer input[type="submit"]:hover {
        background-color: #d01018 !important; }
  .contact .clickdform.mainDiv {
    margin: -10px !important; }
  .contact #clickdimensionsForm {
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 auto !important;
    text-align: center !important;
    width: 700px;
    max-width: 100%; }
    .contact #clickdimensionsForm .responsiveRow {
      float: left !important;
      margin-bottom: 0 !important; }
      @media only screen and (min-width: 760px) {
        .contact #clickdimensionsForm .responsiveRow {
          margin-left: 110px !important; } }
      .contact #clickdimensionsForm .responsiveRow .responsiveCell, .contact #clickdimensionsForm .responsiveRow .responsiveCellSize1 {
        text-align: left !important; }
      .contact #clickdimensionsForm .responsiveRow .responsiveCell.emptyCell {
        margin-bottom: 0 !important; }
      .contact #clickdimensionsForm .responsiveRow .responsiveCell span.maxSize1, .contact #clickdimensionsForm .responsiveRow .responsiveCell span.maxSize2 {
        color: #ffffff !important;
        font: 400 18px "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
        margin-bottom: 7px !important; }
      .contact #clickdimensionsForm .responsiveRow .responsiveCell .alignBottom.minSize2 span {
        color: #ffffff !important;
        font: 400 18px "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
        margin-top: 7px !important;
        margin-right: 10px !important; }
      .contact #clickdimensionsForm .responsiveRow .responsiveCell .alignBottom input[type="checkbox"] {
        margin-top: 12px !important;
        margin-right: 15px !important;
        font-size: 25px !important;
        margin-left: 0 !important; }
      .contact #clickdimensionsForm .responsiveRow .responsiveCell input.maxSize1, .contact #clickdimensionsForm .responsiveRow .responsiveCell input.maxSize2, .contact #clickdimensionsForm .responsiveRow .responsiveCell textarea.maxSize2 {
        border: none !important;
        padding: 10px 20px !important;
        background-color: #ffffff !important;
        font-size: 16px !important;
        color: #6f6f6f !important;
        min-height: 50px !important; }
      .contact #clickdimensionsForm .responsiveRow .responsiveCell #btnSubmit, .contact #clickdimensionsForm .responsiveRow .responsiveCell input[type="button"] {
        color: #ffffff !important;
        text-decoration: none !important;
        display: inline-block !important;
        background-color: red !important;
        padding: 15px 24px !important;
        position: relative !important;
        border: none !important;
        text-transform: capitalize !important;
        font: 700 19px "futura-pt", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
        -webkit-appearance: none !important;
        cursor: pointer !important; }
      .contact #clickdimensionsForm .responsiveRow .responsiveCell .alignTop.minSize1 {
        width: 92% !important;
        display: block; }
      .contact #clickdimensionsForm .responsiveRow .responsiveCellSize1 {
        float: left !important; }
      .contact #clickdimensionsForm .responsiveRow .responsiveCellSize2 .alignTop.minSize1 {
        width: 97% !important;
        display: block !important; }
      .contact #clickdimensionsForm .responsiveRow select.maxSize1 {
        border: none !important;
        padding: 10px 20px !important;
        background-color: #ffffff !important;
        font-size: 16px !important;
        max-width: 100% !important;
        width: 100% !important;
        color: #6f6f6f !important;
        min-height: 50px !important; }
    @media screen and (max-width: 767px) {
      .contact #clickdimensionsForm input.maxSize1, .contact #clickdimensionsForm input.maxSize2, .contact #clickdimensionsForm textarea.maxSize2 {
        width: 100% !important;
        min-width: 100% !important; }
      .contact #clickdimensionsForm .responsiveRow {
        width: 100% !important;
        min-width: 100% !important; }
      .contact #clickdimensionsForm .responsiveCell {
        width: 100% !important;
        min-width: 100% !important; }
      .contact #clickdimensionsForm .alignBottom.minSize1, .contact #clickdimensionsForm .alignBottom.minSize2 {
        width: 100% !important;
        min-width: 100% !important; }
      .contact #clickdimensionsForm .minSize1, .contact #clickdimensionsForm .minSize2 {
        max-width: 100% !important;
        width: 100% !important;
        display: block !important; }
      .contact #clickdimensionsForm .alignTop, .contact #clickdimensionsForm .alignBottom {
        display: block !important; }
      .contact #clickdimensionsForm .buttonContainer {
        margin-right: 0 !important;
        width: 100% !important; }
        .contact #clickdimensionsForm .buttonContainer input {
          width: 100% !important; } }

/*# sourceMappingURL=services-listing.css.map */
