@charset "UTF-8";
/* Slider */
@import url("//hello.myfonts.net/count/2e358a");
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0; }

.slick-list:focus {
  outline: none; }

.slick-list.dragging {
  cursor: pointer;
  cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block; }

.slick-track:before,
.slick-track:after {
  display: table;
  content: ''; }

.slick-track:after {
  clear: both; }

.slick-loading .slick-track {
  visibility: hidden; }

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px; }

[dir='rtl'] .slick-slide {
  float: right; }

.slick-slide img {
  display: block; }

.slick-slide.slick-loading img {
  display: none; }

.slick-slide.dragging img {
  pointer-events: none; }

.slick-initialized .slick-slide {
  display: block; }

.slick-loading .slick-slide {
  visibility: hidden; }

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent; }

.action-list,
.colon-separated-list,
.comma-separated-list,
.dash-separated-list,
.line-seperated-list,
.condensed-column-set, .column-set-two, .column-set-three, .column-set-four, .column-set-five, .column-set-six, .column-set-seven, .column-set-eight,
.column-set, .history-slider-navigation {
  letter-spacing: -0.3em; }

.site-header .branding {
  background-image: url(../images/branding-red.svg); }

.main-header.active .branding {
  background-image: url(../images/branding-red.svg); }

.inner-canvas, .primary-navigation-menu {
  transition: left 0.3s ease-in-out; }

blockquote .secondary-attribution, .aggregator-one .aggregator-sub-title, .aggregator-three .aggregator-sub-title, .aggregator-four .aggregator-content, .team-member-slider .role, .blog-content em {
  font-family: 'SofiaProLight-Italic'; }

.area-one h1,
.area-one .first-heading, .area-two h1,
.area-two .first-heading, .area-three h1,
.area-three .first-heading, .why-accent .title, .environment h1, .health-and-safety h1,
.environment .first-heading, .health-and-safety .first-heading, .area-one h2,
.area-one .second-heading, .area-two h2,
.area-two .second-heading, .area-one h3,
.area-one .third-heading, .area-two h3,
.area-two .third-heading, .area-one h4,
.area-one .forth-heading, .area-two h4,
.area-two .forth-heading, .hero .highlighted-two, blockquote .primary-attribution, .filter, .internal-navigation, .primary-navigation-menu .primary-navigation-menu-item .top-level-link, .main-footer h1,
.main-footer .first-heading, .primary-footer .footer-navigation-menu-list .top-level-link, .aggregator-one .aggregator-title, .aggregator-three .aggregator-title, .aggregator-four .aggregator-title, .aggregator-six .aggregator-title, .aggregator-six .aggregator-meta-item, .aggregator-eleven .aggregator-title, .area-one .text-input, .area-two .text-input, .area-three .text-input, .why-accent .standout-content strong, .approach-step:before, .our-values .value-background-title, .blog-content strong, .article-header .article-meta {
  font-family: 'SofiaProMedium'; }

.button, .hero .contact-details .contact-method, .at4-icon, .primary-navigation-footer .contact-details .contact-method, .show-navigation-button, .primary-footer .contact-details .contact-method {
  font-family: 'SofiaProBold'; }

.button {
  background-color: #cf0a2c;
  color: #ffffff;
  font-size: 16px;
  font-size: 1rem;
  padding: 9px 34px 5px 34px;
  text-transform: uppercase; }

.area-one h1,
.area-one .first-heading, .area-two h1,
.area-two .first-heading, .area-three h1,
.area-three .first-heading, .why-accent .title, .environment h1, .health-and-safety h1,
.environment .first-heading, .health-and-safety .first-heading {
  font-size: 36px;
  font-size: 2.25rem;
  font-size: 34px;
  font-size: 2.125rem;
  padding-bottom: 38px;
  position: relative;
  text-align: center; }
  .area-one h1:after,
  .area-one .first-heading:after, .area-two h1:after,
  .area-two .first-heading:after, .area-three h1:after,
  .area-three .first-heading:after, .why-accent .title:after, .environment h1:after, .health-and-safety h1:after,
  .environment .first-heading:after, .health-and-safety .first-heading:after {
    background-color: #cf0a2c;
    bottom: 0;
    content: '';
    height: 3px;
    left: 50%;
    display: block;
    position: absolute;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 70px; }
  .area-one h1 a,
  .area-one .first-heading a, .area-two h1 a,
  .area-two .first-heading a, .area-three h1 a,
  .area-three .first-heading a, .why-accent .title a, .environment h1 a, .health-and-safety h1 a,
  .environment .first-heading a, .health-and-safety .first-heading a {
    color: inherit; }

@media (max-width: 640px) {
  .area-one h1,
  .area-one .first-heading, .area-two h1,
  .area-two .first-heading, .area-three h1,
  .area-three .first-heading, .why-accent .title, .environment h1, .health-and-safety h1,
  .environment .first-heading, .health-and-safety .first-heading {
    font-size: 24px;
    font-size: 1.5rem;
    padding-bottom: 24px; }
    .area-one h1:after,
    .area-one .first-heading:after, .area-two h1:after,
    .area-two .first-heading:after, .area-three h1:after,
    .area-three .first-heading:after, .why-accent .title:after, .environment h1:after, .health-and-safety h1:after,
    .environment .first-heading:after, .health-and-safety .first-heading:after {
      width: 50px; } }


.area-two .preamble {
  text-align: center;
}

.area-two .cta {
  text-align: center;
}

@media (min-width: 768px) {
  .area-two .preamble {
    max-width: 50%;
    margin: 0 auto;
    font-size: 26px;
    line-height: 1.5;
  }
}

.aggregator-one .aggregator-title, .aggregator-three .aggregator-title, .aggregator-four .aggregator-title, .aggregator-six .aggregator-title, .aggregator-seven .aggregator-title, .aggregator-eight .aggregator-title {
  padding-bottom: 0; }
  .aggregator-one .aggregator-title:after, .aggregator-three .aggregator-title:after, .aggregator-four .aggregator-title:after, .aggregator-six .aggregator-title:after, .aggregator-seven .aggregator-title:after, .aggregator-eight .aggregator-title:after {
    display: none; }

.image-caption, blockquote .primary-attribution, .wpcf7-form .wpcf7-response-output, .area-one .highlighted, .area-two .highlighted, .area-three .highlighted, .why-accent .content {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 34px;
  line-height: 2.125rem; }

@media (max-width: 640px) {
  .image-caption, blockquote .primary-attribution, .wpcf7-form .wpcf7-response-output, .area-one .highlighted, .area-two .highlighted, .area-three .highlighted, .why-accent .content {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 28px;
    line-height: 1.75rem; } }

.aggregator-one .aggregator-title, .aggregator-three .aggregator-title {
  padding-top: 77px;
  position: relative; }
  .aggregator-one .aggregator-title:before, .aggregator-three .aggregator-title:before {
    background: transparent url(../images/white-plus.svg) top center no-repeat;
    background-size: contain;
    content: '';
    left: 0;
    height: 45px;
    position: absolute;
    top: 0;
    width: 100%; }

/**
 * @license
 * MyFonts Webfont Build ID 3028362, 2015-05-19T11:43:09-0400
 *
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are
 * explicitly restricted from using the Licensed Webfonts(s).
 *
 * You may obtain a valid license at the URLs below.
 *
 * Webfont: SofiaProLight-Italic by Mostardesign
 * URL: http://www.myfonts.com/fonts/mostardesign/sofia-pro/light-italic/
 *
 * Webfont: SofiaProMedium-Italic by Mostardesign
 * URL: http://www.myfonts.com/fonts/mostardesign/sofia-pro/medium-italic/
 *
 * Webfont: SofiaProMedium by Mostardesign
 * URL: http://www.myfonts.com/fonts/mostardesign/sofia-pro/medium/
 *
 * Webfont: SofiaProLight by Mostardesign
 * URL: http://www.myfonts.com/fonts/mostardesign/sofia-pro/light/
 *
 *
 * License: http://www.myfonts.com/viewlicense?type=web&buildid=3028362
 * Licensed pageviews: 10,000
 * Webfonts copyright: Copyright (c) Olivier Gourvat - Mostardesign Studio, 2012. All rights reserved.
 *
 * © 2015 MyFonts Inc
*/
/* @import must be at top of file, otherwise CSS will not work */
@font-face {
  font-family: 'SofiaProLight-Italic';
  src: url(../fonts/2E358A_0_0.eot);
  src: url(../fonts/2E358A_0_0.eot?#iefix) format("embedded-opentype"), url(../fonts/2E358A_0_0.woff2) format("woff2"), url(../fonts/2E358A_0_0.woff) format("woff"), url(../fonts/2E358A_0_0.ttf) format("truetype"); }

@font-face {
  font-family: 'SofiaProMedium-Italic';
  src: url(../fonts/2E358A_1_0.eot);
  src: url(../fonts/2E358A_1_0.eot?#iefix) format("embedded-opentype"), url(../fonts/2E358A_1_0.woff2) format("woff2"), url(../fonts/2E358A_1_0.woff) format("woff"), url(../fonts/2E358A_1_0.ttf) format("truetype"); }

@font-face {
  font-family: 'SofiaProMedium';
  src: url(../fonts/2E358A_2_0.eot);
  src: url(../fonts/2E358A_2_0.eot?#iefix) format("embedded-opentype"), url(../fonts/2E358A_2_0.woff2) format("woff2"), url(../fonts/2E358A_2_0.woff) format("woff"), url(../fonts/2E358A_2_0.ttf) format("truetype"); }

@font-face {
  font-family: 'SofiaProLight';
  src: url(../fonts/2E358A_3_0.eot);
  src: url(../fonts/2E358A_3_0.eot?#iefix) format("embedded-opentype"), url(../fonts/2E358A_3_0.woff2) format("woff2"), url(../fonts/2E358A_3_0.woff) format("woff"), url(../fonts/2E358A_3_0.ttf) format("truetype"); }

@font-face {
  font-family: 'SofiaProBold';
  src: url(../fonts/2E5C6D_0_0.eot);
  src: url(../fonts/2E5C6D_0_0.eot?#iefix) format("embedded-opentype"), url(../fonts/2E5C6D_0_0.woff2) format("woff2"), url(../fonts/2E5C6D_0_0.woff) format("woff"), url(../fonts/2E5C6D_0_0.ttf) format("truetype"); }

/*Yahoo reset*/
html {
  color: #000;
  background: #FFF; }

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
button,
textarea,
select,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

fieldset,
img {
  border: 0; }

address,
button,
caption,
cite,
code,
dfn,
em,
input,
optgroup,
option,
select,
strong,
textarea,
th,
var {
  font: inherit; }

del,
ins {
  text-decoration: none; }

li {
  list-style: none; }

caption,
th {
  text-align: left; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal; }

q:before,
q:after {
  content: ''; }

abbr,
acronym {
  border: 0;
  font-variant: normal; }

sup {
  vertical-align: baseline; }

sub {
  vertical-align: baseline; }

legend {
  color: #000; }

/*Custom reset*/
* {
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent; }

input {
  border-radius: 0; }

input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration {
  display: none; }

input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: none; }

img {
  max-width: 100%;
  vertical-align: top; }

/*Utility classes*/
.filter-area:before,
.cf:before,
.filter-area:after,
.cf:after {
  content: '';
  display: table; }

.filter-area:after,
.cf:after {
  clear: both; }

.hidden {
  left: -9999px;
  position: absolute; }

.visibility-hidden {
  visibility: hidden; }

.float-left,
.alignleft {
  float: left; }

.float-right,
.alignright {
  float: right; }

.arrage-center {
  margin-left: auto;
  margin-right: auto; }

.align-right {
  text-align: right; }

.align-left {
  text-align: left; }

.align-center {
  text-align: center; }

/*Transform definition lists*/
.floated-definition {
  overflow: hidden; }
  .floated-definition dt,
  .floated-definition dd {
    float: left; }
  .floated-definition dt {
    clear: left; }

.inline-definition dt,
.inline-definition dd {
  display: inline-block; }

.action-list-item,
.colon-separated-item,
.comma-separated-item,
.dash-separated-item,
.line-separated-item {
  display: inline-block;
  letter-spacing: normal; }
  .action-list-item:last-child:after,
  .colon-separated-item:last-child:after,
  .comma-separated-item:last-child:after,
  .dash-separated-item:last-child:after,
  .line-separated-item:last-child:after {
    display: none; }

/*For lists of buttons, that carry out actions*/
.action-list-item {
  display: inline-block; }

/*For items separated by content*/
.colon-separated-item:after {
  content: '\003A\00a0'; }

.comma-separated-item:after {
  content: '\002C\00a0'; }

.dash-separated-item:after {
  content: '\00a0\002D'; }

.line-separated-item:after {
  content: '\00a0\007C'; }

label.required:after {
  content: '\00a0\002A\00a0'; }

/*Make an element emulate a header*/
.first-heading,
.second-heading,
.third-heading,
.forth-heading {
  display: block; }

.button,
.button {
  border: none;
  cursor: pointer;
  display: inline-block;
  outline: none;
  text-decoration: none;
  -webkit-appearance: none; }

.select-input,
.text-input {
  outline: none;
  width: 100%; }

.text-input {
  -webkit-appearance: none; }

.attached-input {
  position: relative; }
  .attached-input button {
    border: none;
    cursor: pointer;
    outline: none;
    position: absolute;
    right: 0;
    top: 0; }

/*For a link containing a set of html*/
.container-link {
  color: inherit;
  cursor: pointer;
  display: block;
  outline: none;
  text-decoration: none; }
  .container-link:hover {
    text-decoration: none; }

/*Media*/
.media {
  overflow: hidden; }
  .media .media-img-left {
    float: left;
    margin-right: 20px; }
  .media .media-img-right {
    float: right;
    margin-left: 20px; }
  .media .media-img img {
    display: block; }

.branding {
  display: block; }

body {
  -webkit-text-size-adjust: 100%; }

em {
  font-style: italic; }

del {
  text-decoration: line-through; }

blockquote {
  display: block; }
  blockquote p {
    display: inline-block; }

/*Video wrapper for intrinsic videos*/
.video-wrapper {
  height: 0;
  overflow: hidden;
  position: relative; }
  .video-wrapper iframe {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%; }

.main-container, .container-small, .container-wide, .container-three, .container-four, .container-five, .container-six, .container-seven, .container-eight, .container-nine, .container-ten, .container-eleven, .container-twelve,
.outer-container {
  box-sizing: content-box;
  display: block;
  padding-left: 30px;
  padding-right: 30px;
  margin-left: auto;
  margin-right: auto; }

.main-container {
  max-width: 1500px;
  padding-left: 0;
  padding-right: 0; }


.condensed-column-set:before, .column-set-two:before, .column-set-three:before, .column-set-four:before, .column-set-five:before, .column-set-six:before, .column-set-seven:before, .column-set-eight:before,
.condensed-column-set:after, .column-set-two:after, .column-set-three:after, .column-set-four:after, .column-set-five:after, .column-set-six:after, .column-set-seven:after, .column-set-eight:after,
.column-set:before,
.column-set:after {
  content: '';
  display: table; }


.condensed-column-set:after, .column-set-two:after, .column-set-three:after, .column-set-four:after, .column-set-five:after, .column-set-six:after, .column-set-seven:after, .column-set-eight:after,
.column-set:after {
  clear: both; }


.condensed-column-set > .column, .column-set-two > .column, .column-set-three > .column, .column-set-four > .column, .column-set-five > .column, .column-set-six > .column, .column-set-seven > .column, .column-set-eight > .column,
.column-set > .column {
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
  word-spacing: normal; }

.column-set {
  margin-left: -40px; }
  .column-set > .column {
    padding-left: 40px; }


.vertically-centered-columns > .column {
  vertical-align: middle; }


.column-set-reversed {
  direction: rtl; }

  .column-set-reversed > .column {
    direction: ltr; }

.column-set-two {
  margin-left: -45px; }
  .column-set-two > .column {
    padding-left: 45px; }

.column-set-three {
  margin-left: -95px; }
  .column-set-three > .column {
    padding-left: 95px; }

.column-set-four {
  margin-left: -60px; }
  .column-set-four > .column {
    padding-left: 60px; }

.column-set-five {
  margin-left: -30px; }
  .column-set-five > .column {
    padding-left: 30px; }

.column-set-six {
  margin-left: -120px; }
  .column-set-six > .column {
    padding-left: 120px; }

.column-set-seven {
  margin-left: -20px; }
  .column-set-seven > .column {
    padding-left: 20px; }

.column-set-eight {
  margin-left: -4px; }
  .column-set-eight > .column {
    padding-left: 4px; }

@media (max-width: 820px) {
  .column-set-six {
    margin-left: -30px; }
    .column-set-six > .column {
      padding-left: 30px; } }

@media (max-width: 1110px) {
  .column-set-three {
    margin-left: -45px; }
    .column-set-three > .column {
      padding-left: 45px; } }

.aggregator-seven-image-column {
  width: 26.82927%; }

.aggregator-seven-content-wrapper-column {
  width: 73.17073%; }

.aggregator-seven-content-column {
  width: 63.33333%; }

.aggregator-seven-aside-column {
  width: 36.66667%; }

.full-width {
  width: 100%; }

.one-half {
  width: 50%; }

.one-third {
  width: 33.333%; }

.two-third {
  width: 66.666%; }

.one-forth {
  width: 25%; }

.three-forth {
  width: 75%; }

.one-fifth {
  width: 20%; }

.two-fifth {
  width: 40%; }

.three-fifth {
  width: 60%; }

.four-fifth {
  width: 80%; }

.one-sixth {
  width: 16.666%; }

.five-sixth {
  width: 83.333%; }

.one-eighth {
  width: 12.5%; }

.three-eighths {
  width: 37.5%; }

.five-eighths {
  width: 62.5%; }

.seven-eighths {
  width: 87.5%; }

.one-tenth {
  width: 10%; }

.three-tenths {
  width: 30%; }

.seven-tenths {
  width: 70%; }

.nine-tenths {
  width: 90%; }

.one-twelfth {
  width: 8.333%; }

.five-twelfths {
  width: 41.666%; }

.seven-twelfths {
  width: 58.333%; }

.eleven-twelfths {
  width: 91.666%; }

.push-two-fifth {
  padding-left: 40%; }

.push-one-fifth {
  padding-left: 20%; }

/*Tablet*/
@media (min-width: 821px) and (max-width: 1024px) {
  .small-desktop-full-width {
    width: 100%; }
  .small-desktop-one-half {
    width: 50%; }
  .small-desktop-one-third {
    width: 33.333%; }
  .small-desktop-two-third {
    width: 66.666%; }
  .small-desktop-one-forth {
    width: 25%; }
  .small-desktop-three-forth {
    width: 75%; }
  .small-desktop-one-fifth {
    width: 20%; }
  .small-desktop-two-fifth {
    width: 40%; }
  .small-desktop-three-fifth {
    width: 60%; }
  .small-desktop-four-fifth {
    width: 80%; }
  .small-desktop-one-sixth {
    width: 16.666%; }
  .small-desktop-five-sixth {
    width: 83.333%; }
  .small-desktop-one-eighth {
    width: 12.5%; }
  .small-desktop-three-eighths {
    width: 37.5%; }
  .small-desktop-five-eighths {
    width: 62.5%; }
  .small-desktop-seven-eighths {
    width: 87.5%; }
  .small-desktop-one-tenth {
    width: 10%; }
  .small-desktop-three-tenths {
    width: 30%; }
  .small-desktop-seven-tenths {
    width: 70%; }
  .small-desktop-nine-tenths {
    width: 90%; }
  .small-desktop-one-twelfth {
    width: 8.333%; }
  .small-desktop-five-twelfths {
    width: 41.666%; }
  .small-desktop-seven-twelfths {
    width: 58.333%; }
  .small-desktop-eleven-twelfths {
    width: 91.666%; }
  .small-desktop-push-two-fifth {
    padding-left: 40%; }
  .small-desktop-push-one-fifth {
    padding-left: 20%; } }

@media (min-width: 641px) and (max-width: 820px) {
  .tablet-full-width {
    width: 100%; }
  .tablet-one-half {
    width: 50%; }
  .tablet-one-third {
    width: 33.333%; }
  .tablet-two-third {
    width: 66.666%; }
  .tablet-one-forth {
    width: 25%; }
  .tablet-three-forth {
    width: 75%; }
  .tablet-one-fifth {
    width: 20%; }
  .tablet-two-fifth {
    width: 40%; }
  .tablet-three-fifth {
    width: 60%; }
  .tablet-four-fifth {
    width: 80%; }
  .tablet-one-sixth {
    width: 16.666%; }
  .tablet-five-sixth {
    width: 83.333%; }
  .tablet-one-eighth {
    width: 12.5%; }
  .tablet-three-eighths {
    width: 37.5%; }
  .tablet-five-eighths {
    width: 62.5%; }
  .tablet-seven-eighths {
    width: 87.5%; }
  .tablet-one-tenth {
    width: 10%; }
  .tablet-three-tenths {
    width: 30%; }
  .tablet-seven-tenths {
    width: 70%; }
  .tablet-nine-tenths {
    width: 90%; }
  .tablet-one-twelfth {
    width: 8.333%; }
  .tablet-five-twelfths {
    width: 41.666%; }
  .tablet-seven-twelfths {
    width: 58.333%; }
  .tablet-eleven-twelfths {
    width: 91.666%; }
  .tablet-push-two-fifth {
    padding-left: 40%; }
  .tablet-push-one-fifth {
    padding-left: 20%; } }

/*Mobile*/
@media (max-width: 640px) {
  .mobile-full-width {
    width: 100%; }
  .mobile-one-half {
    width: 50%; }
  .mobile-one-third {
    width: 33.333%; }
  .mobile-two-third {
    width: 66.666%; }
  .mobile-one-forth {
    width: 25%; }
  .mobile-three-forth {
    width: 75%; }
  .mobile-one-fifth {
    width: 20%; }
  .mobile-two-fifth {
    width: 40%; }
  .mobile-three-fifth {
    width: 60%; }
  .mobile-four-fifth {
    width: 80%; }
  .mobile-one-sixth {
    width: 16.666%; }
  .mobile-five-sixth {
    width: 83.333%; }
  .mobile-one-eighth {
    width: 12.5%; }
  .mobile-three-eighths {
    width: 37.5%; }
  .mobile-five-eighths {
    width: 62.5%; }
  .mobile-seven-eighths {
    width: 87.5%; }
  .mobile-one-tenth {
    width: 10%; }
  .mobile-three-tenths {
    width: 30%; }
  .mobile-seven-tenths {
    width: 70%; }
  .mobile-nine-tenths {
    width: 90%; }
  .mobile-one-twelfth {
    width: 8.333%; }
  .mobile-five-twelfths {
    width: 41.666%; }
  .mobile-seven-twelfths {
    width: 58.333%; }
  .mobile-eleven-twelfths {
    width: 91.666%; }
  .mobile-push-two-fifth {
    padding-left: 40%; }
  .mobile-push-one-fifth {
    padding-left: 20%; } }

html {
  background-color: #cf0a2c;
  color: #212121;
  font: 1em / 1.75 "SofiaProLight"; }

body {
  padding-top: 45px;
  position: relative; }
  body.has-hero {
    padding-top: 0; }
  body.is-mobile.has-hero {
    padding-top: 125px; }

@media (max-width: 1024px) {
  body {
    padding-top: 104px; }
    body.has-hero {
      padding-top: 0; }
    body.is-mobile.has-hero {
      padding-top: 104px; } }

@media (max-width: 640px) {
  body {
    padding-top: 60px; }
    body.has-hero, body.is-mobile.has-hero {
      padding-top: 60px; } }

a {
  color: #cf0a2c;
  text-decoration: none; }

ul > li {
  position: relative; }
  ul > li:before {
    content: '\203A\0020'; }

ol > li {
  list-style: decimal inside; }

h1,
ul,
ol,
p,
form,
.wp-pagenavi,
.flickity-slider {
  margin-bottom: 20px; }

h2,
h3,
h4 {
  margin-bottom: 12px; }

ul,
ol,
p {
  margin-bottom: 25px; }

.area-one h1,
.area-one .first-heading,
.area-two h1,
.area-two .first-heading,
.area-three h1,
.area-three .first-heading {
  margin-bottom: 40px; }
  .area-one h1.page-title,
  .area-one .first-heading.page-title,
  .area-two h1.page-title,
  .area-two .first-heading.page-title,
  .area-three h1.page-title,
  .area-three .first-heading.page-title {
    margin-bottom: 57px; }

.area-one .highlighted,
.area-two .highlighted,
.area-three .highlighted {
  margin-bottom: 50px; }

.area-one .video-wrapper,
.area-two .video-wrapper,
.area-three .video-wrapper {
  margin-bottom: 54px; }

.area-one .row,
.area-two .row,
.area-three .row {
  margin-bottom: 40px; }

.aggregator-one .aggregator-title, .aggregator-three .aggregator-title,
.terms > li > ol > li > ol > li {
  margin-bottom: 10px; }

.action-list-item,
.aggregator-six .aggregator-title,
.contact-fields {
  margin-bottom: 15px; }

.main-footer h1,
.main-footer .first-heading {
  margin-bottom: 17px; }

.primary-navigation-menu-item {
  margin-bottom: 18px; }

.history-slider-navigation-item,
.contact-address {
  margin-bottom: 20px; }

.main-footer .primary-footer .footer-navigation-menu-list .top-level-link {
  margin-bottom: 22px; }

.aggregator-one .aggregator-header, .aggregator-three .aggregator-header,
.aggregator-seven .aggregator-title,
.aggregator-eight .aggregator-title,
.terms h2,
.terms > li > ol > li {
  margin-bottom: 25px; }

.aggregator-eleven .aggregator-title {
  margin-bottom: 26px; }

.aggregator-one, .aggregator-three,
.aggregator-one .aggregator-item, .aggregator-three .aggregator-item,
.aggregator-two .aggregator-title,
.aggregator-eleven .aggregator-item,
.approach-slider-item
.blog-content img,
.blog-content h2,
.blog-content h3,
.blog-content h4,
.contact-field-wrapper,
.wpcf7-form {
  margin-bottom: 30px; }

.introduction.portfolio-introduction {
  margin-bottom: 32px; }

.newsletter-signup-area .introduction {
  margin-bottom: 33px; }

.aggregator-six .aggregator-image-wrapper,
.aggregator-seven .aggregator-image,
.aggregator-eight .aggregator-image {
  margin-bottom: 35px; }

.aggregator-four .aggregator-image-wrapper {
  margin-bottom: 38px; }

.aggregator-four .aggregator-item,
.team-member-slider .profile-picture-wrapper,
.site-intro p {
  margin-bottom: 40px; }

.introduction.our-clients-introduction {
  margin-bottom: 43px; }

.newsletter-signup-area .text-input {
  margin-bottom: 45px; }

.history-section h1,
.history-section .first-heading {
  margin-bottom: 46px; }

.aggregator-two .aggregator-image {
  margin-bottom: 47px; }

.charity-image {
  margin-bottom: 35px; }

.charity-content {
  margin-bottom: 65px; }

.charity-item {
  margin-bottom: 50px; }

.our-values .value-title,
blockquote p:last-child {
  margin-bottom: 48px; }

.aggregator-seven .aggregator-content,
.main-footer .newsletter-introduction,
.environment .first-heading, .health-and-safety .first-heading,
.environment h1, .health-and-safety h1 {
  margin-bottom: 50px; }

.aggregator-ten .aggregator-image-wrapper {
  margin-bottom: 52px; }

.aggregator-eight .aggregator-content {
  margin-bottom: 55px; }

.filter-trigger-dropdown {
  margin-bottom: 58px; }

.aggregator-two,
.aggregator-five .aggregator-item,
.aggregator-ten .aggregator-item,
.main-footer .newsletter-signup,
.history-slider-navigation,
.introduction.team-members-introduction {
  margin-bottom: 60px; }

.hero-content h1,
.hero-content .first-heading {
  margin-bottom: 62px; }

.aggregator-ten .aggregator-content,
.hero-content .highlighted,
.internal-slider .with-dots .flickity-viewport {
  margin-bottom: 65px; }

.flickity-slider .flickity-viewport {
  margin-bottom: 66px; }

.primary-navigation-menu-list {
  margin-bottom: 76px; }

.recent-news .news-introduction,
.our-approach-introduction,
.environment .content p:last-of-type, .health-and-safety .content p:last-of-type {
  margin-bottom: 80px; }

.aggregator-six .aggregator-item {
  margin-bottom: 85px; }

.hero .contact-details,
.hero-content p {
  margin-bottom: 88px; }

.clients-aggregator {
  margin-bottom: 100px; }

.hero-content .home-hero-heading {
  /*margin-bottom: 101px; */
  margin-bottom: 61px;
}

.aggregator-four {
  margin-bottom: -40px; }

.aggregator-five {
  margin-bottom: -60px; }

.aggregator-six {
  margin-bottom: -85px; }

.blog-content img.alignleft, .blog-content img.alignright {
  margin-bottom: 30px;
  margin-top: 25px; }

.blog-content img.alignleft,
.blog-content img.alignright {
  margin-top: 0; }

.terms > li > ol > li > ol {
  margin-top: 10px; }

.blog-content .action-list {
  margin-top: 65px; }

.load-more {
  margin-top: 75px; }

.team-member-slider .name,
.aggregator-one .aggregator-title, .aggregator-three .aggregator-title,
.hero-content *:last-child,
.hero-content .action-list-item:last-child,
.filter,
.footer-navigation-menu-list,
.full-screen-slider .flickity-slider,
.masonry-container,
.aggregator-three .aggregator-title,
.aggregator-four .aggregator-title,
.aggregator-four .aggregator-content p:last-child,
.aggregator-eight,
.image-caption p:last-child,
.hero-slider,
.filter-list,
.filter-dropdown,
.portfolio-gallery,
.aggregator-seven,
.internal-navigation,
.why-accent-slider .flickity-page-dots,
.why-accent-slider .flickity-slider,
.our-values,
.no-break {
  margin-bottom: 0; }

.secondary-footer .footer-navigation-menu-item {
  margin-bottom: 10px; }

.primary-navigation-footer .contact-details,
.primary-footer .contact-details {
  margin-bottom: 24px; }

.gallery-area .load-more {
  margin-bottom: 20px; }

@media (max-width: 1024px) {
  .hero-content .highlighted,
  .hero-content h1,
  .hero-content .first-heading,
  .hero-content .home-hero-heading {
    margin-bottom: 50px; }
  .hero-content p {
    margin-bottom: 40px; }
  .hero .contact-details {
    margin-bottom: 50px; } }

@media (max-width: 820px) {
  .footer-navigation-wrapper {
    margin-bottom: 0px; } }

@media (max-width: 640px) {
  .primary-navigation-menu-list {
    margin-bottom: 20px; }
  .primary-navigation-menu-item {
    margin-bottom: 10px; }
  .primary-navigation-footer .copyright {
    margin-bottom: 10px; }
  .primary-navigation-footer .contact-details {
    margin-bottom: 10px; }
  .aggregator-one .aggregator-header, .aggregator-three .aggregator-header,
  .primary-navigation-footer .footer-navigation-menu-list {
    margin-bottom: 0; } }

.column-set .column,
.condensed-column-set .column, .column-set-two .column, .column-set-three .column, .column-set-four .column, .column-set-five .column, .column-set-six .column, .column-set-seven .column, .column-set-eight .column,
.hero-slide,
.primary-navigation-menu-item,
.aggregator-item,
.flickity-page-dots .dot,
.footer-navigation-menu-item,
.footer-navigation-sub-menu-item,
.block-list-item,
.filter-item,
.filter-dropdown-item,
.internal-navigation-item,
.portfolio-gallery-item,
.history-slider-navigation-item,
.history-slider-slide,
.action-list-item,
.wp-paginate > li,
.value {
  list-style: none; }
  .column-set .column:before,
  .condensed-column-set .column:before, .column-set-two .column:before, .column-set-three .column:before, .column-set-four .column:before, .column-set-five .column:before, .column-set-six .column:before, .column-set-seven .column:before, .column-set-eight .column:before,
  .hero-slide:before,
  .primary-navigation-menu-item:before,
  .aggregator-item:before,
  .flickity-page-dots .dot:before,
  .footer-navigation-menu-item:before,
  .footer-navigation-sub-menu-item:before,
  .block-list-item:before,
  .filter-item:before,
  .filter-dropdown-item:before,
  .internal-navigation-item:before,
  .portfolio-gallery-item:before,
  .history-slider-navigation-item:before,
  .history-slider-slide:before,
  .action-list-item:before,
  .wp-paginate > li:before,
  .value:before {
    display: none; }





.hero {
  background-color: #cf0a2c;
  color: #ffffff;
  display: table;
  vertical-align: middle;
  min-height: 800px;
  height: 100vh;
  padding-bottom: 140px;
  padding-top: 140px;
  position: relative;
  text-align: center;
  width: 100%; }
  .hero:after {
    background: transparent url(../images/hero-overlay.png) top left;
    content: '';
    display: block;
    left: 0;
    height: 100%;
    opacity: 0.15;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 10; }
  .hero a {
    color: #ffffff; }
  .hero .hero-content {
    font-size: 20px;
    font-size: 1.25rem;
    display: table-cell;
    height: 100%;
    left: 0;
    position: relative;
    width: 100%;
    z-index: 11;
    vertical-align: middle; }
  .hero .highlighted {
    font-size: 36px;
    font-size: 2.25rem;
    line-height: 42px;
    line-height: 2.625rem; }
  .hero h1,
  .hero .first-heading {
    line-height: 112.38px;
    line-height: 7.02375rem;
    font-size: 91.74px;
    font-size: 5.73375rem; }
  .hero .hero-slide {
    width: 100%;
    height: 100%;
    position: absolute;
    overflow: hidden;
    top: 0;
    left: 0;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    opacity: 1;
    text-indent: -9999px;
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
  .hero.animate .hero-slide {
    opacity: 0;
    -webkit-animation: heroImageAnimation 36s linear infinite 0s;
            animation: heroImageAnimation 36s linear infinite 0s; }
    .hero.animate .hero-slide:nth-child(2) {
      -webkit-animation-delay: 8s;
              animation-delay: 8s; }
    .hero.animate .hero-slide:nth-child(3) {
      -webkit-animation-delay: 16s;
              animation-delay: 16s; }
    .hero.animate .hero-slide:nth-child(4) {
      -webkit-animation-delay: 24s;
              animation-delay: 24s; }
    .hero.animate .hero-slide:nth-child(5) {
      -webkit-animation-delay: 32s;
              animation-delay: 32s; }
  .hero .button:hover {
    background-color: #ffffff;
    color: #cf0a2c; }
  .hero .contact-details {
    font-size: 36px;
    font-size: 2.25rem;
    line-height: 42px;
    line-height: 2.625rem; }
    .hero .contact-details dt,
    .hero .contact-details dd {
      display: inline;
      float: none; }
    .hero .contact-details dd {
      margin-right: 15px; }
    .hero .contact-details .contact-method {
      margin-right: 5px;
      margin-top: -3px; }

.hero-slider {
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1; }

.hero--home .slick-list,
.hero--home .slick-slide,
.hero--home .slick-track {
  height: 100%;

}

.hero--home .hero-slider .item {
  position: absolute;
  top: 0; right: 0;
  left: 0; bottom: 0;
}

.hero--home .bg-image {
  position: absolute;
  top: 0; right: 0; bottom:0; left: 0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

.hero--home .inner {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.hero--home .circle-content {
  width: 600px;
  height: 600px;
  background-color: #cf0a2c;
  border-radius: 100%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.hero--home .home-banner-inner-circle-inner-icon {
  position: absolute;
  z-index: 10;
  top: 50px;
  left: 0;
}

.hero--home .circle-content h1 {
  font-size: 60px;
  line-height: 1.2;
  padding: 50px 30px 0;
  margin-bottom: 30px;
}

.hero--home .circle-content h1 span {
    display: block;
    font-weight: 600;
}

.home .hero--home a.button {
  background-color: white!important;
  margin-right: 0!important;
  width: auto!important;
}

.home .hero--home a.button:hover {
  background-color: transparent!important;
  color: white!important;
}

@media (max-width: 640px) {
  .hero--home .circle-content {
    width: 320px;
    height: 320px;
  }

  .hero--home .home-banner-inner-circle-inner-icon {
    height: 36px;
    top: 30px;
  }
}

.hero--home ul.slick-dots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 25px;
}

.hero--home ul.slick-dots li {
  display: inline-block;
}

.hero--home ul.slick-dots li:before {
  content: none;
}

.hero--home ul.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 20px;
  height: 20px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}

.hero--home ul.slick-dots li button:before {
  content: '';
  width: 10px;
  height: 10px;
  border-radius: 100%;
  border: 2px solid #cf0a2c;
  position: absolute;
  top: 0;
  left: 3px;
  right: 0;
  bottom: 0;
}

.hero--home ul.slick-dots li.slick-active button:before {
  background-color: #cf0a2c;
}



@-webkit-keyframes heroImageAnimation {
  0% {
    opacity: 0;
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in; }
  8% {
    opacity: 1;
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out; }
  17% {
    opacity: 1;
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }
  25% {
    opacity: 0;
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }
  100% {
    opacity: 0; } }

@keyframes heroImageAnimation {
  0% {
    opacity: 0;
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in; }
  8% {
    opacity: 1;
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out; }
  17% {
    opacity: 1;
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }
  25% {
    opacity: 0;
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }
  100% {
    opacity: 0; } }

.lt-ie9 .hero.animate .hero-slide {
  -webkit-animation: none;
          animation: none; }
  .lt-ie9 .hero.animate .hero-slide:first-child {
    opacity: 1; }

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .hero.animate .hero-slide {
    -webkit-animation: none;
            animation: none; }
    .hero.animate .hero-slide:first-child {
      opacity: 1; } }

@media (max-width: 1024px) {
  .hero {
    padding-bottom: 104px;
    padding-top: 104px; }
    .hero .hero-content {
      font-size: 16px;
      font-size: 1rem; }
    .hero h1,
    .hero .first-heading {
      font-size: 45px;
      font-size: 2.8125rem;
      line-height: 1.2em; }
    .hero .highlighted,
    .hero .contact-details {
      font-size: 20px;
      font-size: 1.25rem;
      line-height: 34px;
      line-height: 2.125rem; }
    .hero .contact-details {
      line-height: 24px;
      line-height: 1.5rem; }
  .is-mobile .hero {
    height: auto;
    min-height: calc(100vh - 104px); } }

@media (max-width: 850px) {
  .hero .contact-details dd {
    margin-right: 0; }
    .hero .contact-details dd:after {
      content: '\A';
      white-space: pre; } }

@media (max-width: 640px) {
  .has-hero .hero {
    height: auto;
    min-height: calc(100vh - 89px);
    padding-bottom: 50px;
    padding-top: 50px; }
    .has-hero .hero .hero-content {
      font-size: 16px;
      font-size: 1rem; }
    .has-hero .hero h1,
    .has-hero .hero .first-heading {
      font-size: 24px;
      font-size: 1.5rem; }
    .has-hero .hero .highlighted,
    .has-hero .hero .contact-details {
      font-size: 18px;
      font-size: 1.125rem;
      line-height: 28px;
      line-height: 1.75rem; } }

.container-small {
  max-width: 850px; }

.container-wide {
  max-width: 1100px; }

.container-three {
  max-width: 1175px; }

.container-four {
  max-width: 1170px; }

.container-five {
  max-width: 1200px; }

.container-six {
  max-width: 1000px; }

.container-seven {
  max-width: 1215px; }

.container-eight {
  max-width: 1125px; }

.container-nine {
  max-width: 1378px; }

.container-ten {
  max-width: 960px; }

.container-eleven {
  max-width: 775px; }

.container-twelve {
  max-width: 1030px; }

.two-columns {
  -webkit-columns: 2 270px;
     -moz-columns: 2 270px;
          columns: 2 270px;
  -webkit-column-gap: 40px;
     -moz-column-gap: 40px;
          column-gap: 40px;
  overflow: hidden; }

@media (max-width: 640px) {
  .button {
    padding-bottom: 5px;
    padding-top: 5px;
    font-size: 14px;
    font-size: 0.875rem; } }

.introduction {
  margin-left: auto;
  margin-right: auto;
  text-align: center; }

.video-wrapper {
  padding-bottom: 56.25%; }

.first-area-hero {
  padding-bottom: 35px;
  padding-top: 98px; }

.second-area {
  padding-bottom: 60px;
  padding-top: 75px; }

.recent-news {
  padding-bottom: 50px; }

.featured-projects {
  padding-bottom: 22px; }

.portfolio-related-share {
  padding-top: 62px;
  padding-bottom: 25px;
  text-align: center; }

.filter-area {
  padding-bottom: 0; }

.after-expanded-filter {
  padding-bottom: 95px;
  padding-top: 170px; }

.gallery-area-after-expanded-filter .filter-container {
  padding-top: 0;
  transition: padding 0.5s ease-in; }
  .gallery-area-after-expanded-filter .filter-container.dropdown-active {
    padding-top: 81px; }

.gallery-area-after-expanded-filter .filter-results:after {
  top: 89px; }

.visit-accent-area {
  padding-bottom: 55px;
  padding-top: 80px; }

.box-link-wrapper {
  position: relative; }
  .box-link-wrapper .box-link {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%; }

.section {
  position: relative; }
  .section .section-anchor {
    position: absolute;
    overflow: hidden;
    text-indent: -9999px;
    top: -125px; }
    .section .section-anchor.below-internal-navigation {
      top: -205px; }

@media (max-width: 1024px) {
  .section .section-anchor {
    top: -104px; }
    .section .section-anchor.below-internal-navigation {
      top: -200px; } }

@media (max-width: 640px) {
  .section .section-anchor {
    top: -88px; } }

.block-list-item {
  border-bottom: 1px solid #a0a0a0;
  padding-bottom: 7px;
  padding-top: 10px; }
  .block-list-item:first-child {
    padding-top: 0; }

.category-link:after {
  content: '\0020\002D\0020'; }

.action-list-item {
  margin-left: 15px;
  margin-right: 15px;
  vertical-align: top; }

.map {
  height: 0;
  overflow: hidden;
  transition: opacity 0.3s ease-in-out;
  opacity: 0; }
  .map.active {
    opacity: 1; }

.image-caption {
  background-color: #252525;
  text-align: center;
  color: #ffffff;
  padding-bottom: 23px;
  padding-top: 27px; }

blockquote {
  font-size: 36px;
  font-size: 2.25rem;
  line-height: 56px;
  line-height: 3.5rem; }
  blockquote .primary-attribution,
  blockquote .secondary-attribution {
    display: block; }
  blockquote .secondary-attribution {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 24px;
    line-height: 1.5rem; }

.js-slider {
  outline: none; }

/*Filter*/
.filter-area h1,
.filter-area .first-heading {
  position: relative;
  z-index: 5; }

.filter-fields {
  left: -9999px;
  position: absolute; }

.no-js .filter-fields {
  left: 0;
  position: static; }

.filter {
  font-size: 15px;
  font-size: 0.9375rem;
  text-align: center; }

.filter-list {
  background-color: #f6f5f5;
  position: relative;
  z-index: 2; }
  .filter-list > .filter-item {
    position: static; }
  .filter-list:before, .filter-list:after {
    background-color: #f6f5f5;
    content: '';
    display: block;
    position: absolute;
    height: 100%;
    left: 0;
    width: 100%;
    z-index: 3; }
  .filter-list:before {
    height: 400%;
    bottom: 0; }
  .filter-list:after {
    top: 0; }

.filter-item {
  display: inline-block;
  margin-left: 17px;
  margin-right: 17px;
  vertical-align: top; }

.filter-trigger-dropdown {
  color: #999999;
  display: inline-block;
  text-transform: uppercase;
  position: relative;
  z-index: 4; }
  .filter-trigger-dropdown.dropdown-active {
    color: #000000; }

.filter-dropdown {
  left: 0;
  position: absolute;
  transition: -webkit-transform 0.5s ease-in;
  transition: transform 0.5s ease-in;
  transition: transform 0.5s ease-in, -webkit-transform 0.5s ease-in;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  z-index: 1; }
  .filter-dropdown.dropdown-active {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    z-index: 2; }

/*Internal navigation*/
.internal-navigation {
  background-color: #252525;
  padding-left: 30px;
  padding-right: 30px;
  font-size: 15px;
  font-size: 0.9375rem;
  padding-bottom: 28px;
  padding-top: 27px;
  text-align: center;
  text-transform: uppercase;
  width: 100%; }
  .internal-navigation.fixed {
    left: 0;
    opacity: 0;
    position: fixed;
    top: 125px;
    z-index: 9;
    transition: opacity 0.3s ease-in-out, left 0.3s ease-in-out; }
    .internal-navigation.fixed.active {
      opacity: 1; }

@media (max-width: 1024px) {
  .internal-navigation.fixed {
    top: 104px; } }

@media (max-width: 640px) {
  .internal-navigation.fixed {
    display: none; } }

.internal-navigation-item {
  display: inline-block;
  text-transform: uppercase;
  margin-left: 12px;
  margin-right: 12px; }
  .internal-navigation-item .top-level-link {
    color: #999999; }
  .internal-navigation-item.active .top-level-link,
  .internal-navigation-item .top-level-link:hover,
  .internal-navigation-item .top-level-link.active {
    color: #ffffff; }

/*Intenral slider*/
.internal-slider {
  position: relative; }
  .internal-slider .flickity-viewport {
    overflow: hidden;
    position: relative; }
  .internal-slider .next-previous {
    display: block;
    height: 62px;
    opacity: 0.5;
    overflow: hidden;
    position: absolute;
    text-indent: -9999px;
    transition: opacity 0.3s ease-in;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    top: 50%;
    width: 62px; }
    .internal-slider .next-previous:after {
      background: transparent url(../images/black-arrow.svg) top left/contain no-repeat;
      content: '';
      display: block;
      height: 100%;
      left: 0;
      position: absolute;
      top: 0;
      width: 100%; }
    .internal-slider .next-previous:hover {
      opacity: 1; }
  .internal-slider .previous {
    left: 0; }
  .internal-slider .next {
    right: 0; }
    .internal-slider .next:after {
      -webkit-transform: rotate(180deg);
              transform: rotate(180deg); }

/*Newsletter Signup*/
.newsletter-signup-area {
  padding-bottom: 90px;
  padding-top: 70px;
  text-align: center; }
  .newsletter-signup-area .newsletter-signup {
    margin-left: auto;
    margin-right: auto;
    max-width: 375px; }

/*Add this share button override*/
.at-share-btn {
  background: #cf0a2c !important;
  display: inline-block !important;
  text-indent: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 9px 34px 5px 34px !important;
  max-height: none !important;
  vertical-align: top !important; }

.at-share-tbx-element .at-share-btn.at-svc-email{
  line-height: 25px;
}
.at-share-tbx-element .at-share-btn.at-svc-email:before{
padding-top: 1px;
}
.at-share-tbx-element .at-share-btn.at-svc-email:focus,
.at-share-tbx-element .at-share-btn.at-svc-email:hover{
-webkit-transform:translateY(0px);transform:translateY(0px);outline-offset:0px
}


.at4-icon {
  background: #cf0a2c !important;
  display: inline !important;
  color: #ffffff !important;
  line-height: 28px !important;
  font-size: 16px;
  font-size: 1rem;
  text-transform: uppercase !important;
  vertical-align: top !important; }
  .at4-icon.aticon-email:after {
    content: 'Share'; }

#at-cv-lightbox {
  display: none !important; }

/*Masonry*/
.masonry-container {
  position: relative;
  margin-bottom: -1px;
  opacity: 0;
  overflow: hidden;
  transition: opacity 0.5s ease-in;
  top: -1px; }
  .masonry-container.active {
    opacity: 1; }

.masonry-item .masonry-image {
  display: block;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1; }

.masonry-item .masonry-item-container {
  cursor: default;
  position: absolute;
  height: 100%;
  width: calc(100% - 4px);
  z-index: 1; }

.masonry-item.small-square, .masonry-item.rectangle-horizontal {
  padding-bottom: calc(25% - 4px); }

.masonry-item.big-square, .masonry-item.rectangle-vertical {
  padding-bottom: calc(50% - 4px); }

@media (max-width: 640px) {
  .masonry-item.big-square, .masonry-item.small-square {
    padding-bottom: calc(100% - 4px); }
  .masonry-item.rectangle-horizontal {
    padding-bottom: calc(50% - 4px); }
  .masonry-item.rectangle-vertical {
    padding-bottom: calc(200% - 4px); } }

.masonry-item {
  margin-bottom: 4px;
  padding-left: 2px;
  padding-right: 2px;
  position: relative; }
  .masonry-item .masonry-item-container:before {
    background-color: rgba(0, 0, 0, 0.7);
    content: '';
    display: block;
    left: 0;
    opacity: 0;
    position: absolute;
    transition: opacity 0.3s ease-in;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 2; }
  .masonry-item .masonry-item-container:after {
    background: transparent url(../images/white-expand.svg) top left/contain no-repeat;
    left: 50%;
    content: '';
    height: 45px;
    opacity: 0;
    position: absolute;
    top: 50%;
    transition: opacity 0.3s ease-in-out 0.3s;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 45px;
    z-index: 3; }

.gallery-inner {
  padding: 4px 2px 0 2px; }

/*Full screen gallery*/
.full-screen-gallery {
  display: none;
  position: absolute; }

.close-full-screen-button {
  background: transparent url(../images/black-minimise.svg) top left/contain no-repeat;
  height: 45px;
  overflow: hidden;
  position: absolute;
  right: 45px;
  text-indent: -9999px;
  top: 60px;
  width: 45px; }

.full-screen-active .full-screen-gallery {
  display: block;
  left: 0;
  height: 100%;
  top: 0;
  width: 100%; }

.full-screen-active .gallery-full-screen-image {
  left: 0;
  height: 100%;
  position: absolute;
  top: 0;
  max-width: none;
  width: 100%; }

.full-screen-active .close-full-screen-button {
  z-index: 2; }

.full-screen-active .full-screen-slider {
  position: relative;
  z-index: 1; }
  .full-screen-active .full-screen-slider .flickity-prev-next-button {
    height: 45px;
    width: 45px; }
    .full-screen-active .full-screen-slider .flickity-prev-next-button:after {
      background-image: url(../images/arrow-black.svg); }
    .full-screen-active .full-screen-slider .flickity-prev-next-button.next {
      right: 45px; }
    .full-screen-active .full-screen-slider .flickity-prev-next-button.previous {
      left: 45px; }
  .full-screen-active .full-screen-slider .slide-image {
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    max-width: none;
    width: 100%; }

.full-screen-active .full-screen-slider-slides {
  position: relative; }
  .full-screen-active .full-screen-slider-slides .slide {
    width: 100%;
    height: 90.6vh; }

.full-screen-active .full-screen-slider-nav {
  border-top: 1px solid #000000; }
  .full-screen-active .full-screen-slider-nav .slide {
    border-right: 1px solid #000000;
    cursor: pointer;
    height: 9.4vh; }
    .full-screen-active .full-screen-slider-nav .slide:last-child {
      border-right: none; }
    .full-screen-active .full-screen-slider-nav .slide:after {
      background-color: rgba(0, 0, 0, 0.5);
      content: '';
      display: block;
      height: 100%;
      left: 0;
      opacity: 1;
      transition: opacity 0.3s ease-in-out;
      position: absolute;
      top: 0;
      width: 100%; }
    .full-screen-active .full-screen-slider-nav .slide.is-selected:after, .full-screen-active .full-screen-slider-nav .slide:hover:after {
      opacity: 0; }

.wp-paginate > li {
  display: inline-block;
  margin-right: 20px; }

.filter-container {
  text-align: center; }

.filter-container .pagination {
  left: -9999px;
  position: absolute; }

.filter-results {
  position: relative;
  z-index: 1; }
  .filter-results:before, .filter-results:after {
    content: '';
    display: none;
    position: absolute; }
  .filter-results:before {
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 1; }
  .filter-results:after {
    background: transparent url(../images/ajax-loader.gif) top center no-repeat;
    content: '';
    left: 50%;
    height: 35px;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    top: 0;
    z-index: 2;
    width: 35px; }
  .filter-results.loading {
    min-height: 35px; }
    .filter-results.loading:before, .filter-results.loading:after {
      display: block; }

.no-js .filter-container .pagination {
  position: static; }

.load-more.loading {
  background-color: transparent;
  text-indent: -9999px;
  overflow: hidden;
  position: relative; }
  .load-more.loading:before {
    background: transparent url(../images/ajax-loader.gif) top center no-repeat;
    content: '';
    display: block;
    height: 35px;
    left: 50%;
    position: absolute;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    top: 50%;
    width: 35px; }

.flickity-prev-next-button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  position: absolute;
  outline: none;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 50%; }
  .flickity-prev-next-button:after {
    background-color: transparent;
    background-position: top left;
    background-size: contain;
    content: '';
    display: block;
    position: absolute;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%; }
  .flickity-prev-next-button.next:after {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }
  .flickity-prev-next-button svg {
    display: none; }

.flickity-page-dots .dot {
  border: 1px solid #ffffff;
  border-radius: 50%;
  cursor: pointer;
  display: inline-block;
  margin-left: 6px;
  margin-right: 6px;
  position: relative;
  height: 18px;
  width: 18px;
  vertical-align: top; }
  .flickity-page-dots .dot:after {
    background-color: #ffffff;
    border-radius: 50%;
    content: '';
    display: block;
    height: 14px;
    left: 1px;
    opacity: 0;
    position: absolute;
    transition: opacity 0.3s ease-in;
    top: 1px;
    width: 14px; }
  .flickity-page-dots .dot.is-selected:after {
    opacity: 1; }

.wpcf7-form {
  position: relative;
  text-align: center; }
  .wpcf7-form .wpcf7-not-valid-tip {
    left: -9999px;
    position: absolute; }
  .wpcf7-form .wpcf7-response-output {
    background-color: #ffffff;
    border: none;
    left: 0;
    height: 100%;
    padding: 0;
    position: absolute;
    top: 0;
    margin: 0;
    width: 100%; }
    .wpcf7-form .wpcf7-response-output.wpcf7-validation-errors {
      left: -9999px; }
  .wpcf7-form .field-wrapper {
    opacity: 1;
    transition: opacity 0.3s ease-in-out; }
  .wpcf7-form.sent .field-wrapper, .wpcf7-form.failed .field-wrapper {
    opacity: 0; }

.branding {
  background-position: top left;
  background-repeat: no-repeat;
  background-size: contain;
  display: block; }

.inner-canvas {
  overflow: hidden;
  position: relative;
  width: 100%;
  left: 0;
  z-index: 2; }

.main-header {
  left: 0;
  padding: 50px 56px 26px 46px;
  position: fixed;
  transition: padding 0.5s ease-in-out, left 0.3s ease-in-out;
  top: 0;
  width: 100%;
  z-index: 20;
  background-color: white}



  .main-header .branding,
  .main-header .show-navigation-button {
    z-index: 3; }
  .site-header .branding {
    position: absolute;

    /*margin-left: auto;*/
    /*margin-right: auto;*/

    top: 12px;
    left: 25px;

  }
  .main-header .show-navigation-button {
    color: #ffffff;
    display: inline-block;
    position: absolute;
    right: 56px;
    text-transform: uppercase;
    transition: top 0.5s ease-in-out;
    top: 74px; }
    .main-header .show-navigation-button:after {
      background-image: url(../images/show-navigation-icon-positive.svg); }
    .main-header .show-navigation-button.active:after {
      background-image: url(../images/close-navigation-icon-positive.svg); }
  .main-header:before, .main-header:after {
    content: '';
    display: block;
    left: 0;
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
    position: absolute;
    width: 100%; }
  .main-header:before {
    background-color: #ffffff;
    height: 100%;
    top: 0;
    z-index: 2; }
  .main-header:after {
    box-shadow: 0 10px 46px rgba(102, 102, 102, 0.1);
    height: 23px;
    bottom: 0;
    z-index: 1; }
  .main-header .branding {
    /*opacity: 0;*/
    transition: 0.75s opacity;
  }
  .main-header.active .branding {
    opacity: 1;
    transition: 0.75s opacity;
  }
  .main-header.active {
    border-bottom: 1px solid #f8f7f7;
    padding-top: 34px; }
    .main-header.active .show-navigation-button {
      color: #212121;
      top: 58px; }
      .main-header.active .show-navigation-button:after {
        opacity: 0.5;
        background-image: url(../images/show-navigation-icon-negative.svg); }
      .main-header.active .show-navigation-button.active:after {
        background-image: url(../images/close-navigation-icon-negative.svg); }
    .main-header.active:before, .main-header.active:after {
      opacity: 1; }

.main-header .social-icons{
  list-style-type: none;
  position: absolute;
  /*left: 290px;*/
  top: 66px;
  transition: top 0.5s ease-in-out;
}
.main-header.active .social-icons{
  top: 50px;
}
.main-header .social-icons .icon{
  float: left;
  padding-left: 5px;
  z-index: 3;
}
.main-header .social-icons .icon:before{
  content: '';
}
.main-header .social-icons .icon a{
      display: block;
      width: 36px;
      height: 30px;
      overflow: hidden;
      text-indent: 60px;
      z-index: 3;
}
.main-header .social-icons .icon.facebook a{
    background-image: url(../images/icon-facebook-light.png);
}
.main-header .social-icons .icon.twitter a{
    background-image: url(../images/icon-twitter-light.png);
}
.main-header .social-icons .icon.linkedin a{
    background-image: url(../images/linkedin-white.png);
}
.main-header .social-icons .icon.instagram a{
    background-image: url(../images/instagram-white.png);
}
.main-header.active .social-icons .icon.facebook a{
    background-image: url(../images/icon-facebook-dark.png);
}
.main-header.active .social-icons .icon.twitter a{
    background-image: url(../images/icon-twitter-dark.png);
}
.main-header.active .social-icons .icon.linkedin a{
    background-image: url(../images/linkedin-grey.png);
}
.main-header.active .social-icons .icon.instagram a{
    background-image: url(../images/instagram-grey.png);
}





/*
MEGA MENU
*/

/* --------------------------------

 Header

-------------------------------- */

.site-header .branding {
  width: 130px;
  height: 40px;
}

.site-header .contact-banner {
  position: absolute;
  right: 0;
  top: 18px;
}



.site-header .contact-banner .phone {
  display: flex;
  align-items: center;
  background: #cf0a2c;
  border-radius: 100px 0 0 100px;
  padding: 5px 15px 5px 20px;
  color: white;
  font-size: 18px;
  letter-spacing: 0.5px;
}

.site-header .contact-banner .phone a {
  color: white;
}

.contact-banner .phone svg {
  margin-right: 20px;
  font-size: 22px;
}

@media (max-width: 1000px) {
  .site-header .contact-banner {
    right: 55px;
    top: 15px;
  }
  .site-header .contact-banner .phone {
    border-radius: 100px;
    background: none;
    padding: 0;
  }

  .contact-banner .phone svg {
    display: none;
  }

  .site-header .contact-banner .phone .num {
    color: #cf0a2c;
    font-weight: 700;
  }

  .site-header .contact-banner .phone a {
    color: #cf0a2c;
  }
}

.contact-banner .social {
  margin-right: 5px;
}
.contact-banner .social svg {
  font-size: 28px;
  margin-right: 5px;
  margin-top: 7px;
}


.cd-morph-dropdown ul {
  margin: 0;
}
.cd-morph-dropdown li:before {
    content: none;
}

.seconary-menu li.title a {
  font-size: 28px;
  font-family: 'SofiaProMedium', sans-serif;
}


.cd-morph-dropdown {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 60px;
  background-color: #FFFFFF;
  z-index: 150;
}
.cd-morph-dropdown::before {
  /* never visible - used in JS to check mq */
  content: 'mobile';
  display: none;
}
.cd-morph-dropdown .nav-trigger {
  /* menu icon - visible on small screens only */
  position: absolute;
  top: 0;
  right: 0;
  height: 60px;
  width: 60px;
  /* replace text with icon */
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  color: transparent;
}
.cd-morph-dropdown .nav-trigger span, .cd-morph-dropdown .nav-trigger span::after, .cd-morph-dropdown .nav-trigger span::before {
  /* these are the 3 lines of the menu icon */
  position: absolute;
  background-color:#cf0a2c;
  height: 3px;
  width: 26px;
}
.cd-morph-dropdown .nav-trigger span {
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
}
.cd-morph-dropdown .nav-trigger span::after, .cd-morph-dropdown .nav-trigger span::before {
  content: '';
  left: 0;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
}
.cd-morph-dropdown .nav-trigger span::before {
  -webkit-transform: translateY(-9px);
  -ms-transform: translateY(-9px);
  transform: translateY(-9px);
}
.cd-morph-dropdown .nav-trigger span::after {
  -webkit-transform: translateY(9px);
  -ms-transform: translateY(9px);
  transform: translateY(9px);
}
.cd-morph-dropdown.nav-open .nav-trigger span {
  background-color: transparent;
}
.cd-morph-dropdown.nav-open .nav-trigger span::before {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.cd-morph-dropdown.nav-open .nav-trigger span::after {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.cd-morph-dropdown .main-nav {
  display: none;
}
.cd-morph-dropdown .morph-dropdown-wrapper {
  display: none;
  position: absolute;
  top: 60px;
  left: 0;
  width: 100%;
  height: 100vh;
  padding: 1.2em 5%;
  box-shadow: inset 0 1px 0 #e6e6e6;
  background-color: #cf0a2c;
  overflow: hidden;
  overflow-y: scroll;

}

.cd-morph-dropdown .content .intro {
  display: none;
}
.cd-morph-dropdown.nav-open .morph-dropdown-wrapper {
  display: block;
}
.cd-morph-dropdown .dropdown-list > ul > li {
  margin-bottom: 3.3em;
}

.cd-morph-dropdown .dropdown-list > ul > li a {
  color: white;
}
.cd-morph-dropdown .label {
  display: block;
  font-size: 2.2rem;
  color: #1A1A1A;
  margin-bottom: .8em;
}
.cd-morph-dropdown .content li::after {
  clear: both;
  content: "";
  display: block;
}
.cd-morph-dropdown .gallery .content li {
  margin-bottom: 1.4em;
}
.cd-morph-dropdown .gallery .content a {
  display: block;
}
.cd-morph-dropdown .gallery .content a::before {
  /* icon on the left */
  content: '';
  display: inline-block;
  float: left;
  height: 54px;
  width: 54px;
  margin-right: .6em;
  background: red;
  border-radius: 50%;
  -webkit-transition: background .2s;
  transition: background .2s;
}
.cd-morph-dropdown .gallery .content a span, .cd-morph-dropdown .gallery .content a em {
  display: block;
  line-height: 1.2;
}
.cd-morph-dropdown .gallery .content a em {
  font-size: 1.8rem;
  padding: .4em 0 .2em;
  color: #1A1A1A;
}
.cd-morph-dropdown .gallery .content a span {
  font-size: 1.4rem;
  color: #a6a6a6;
}
.cd-morph-dropdown .gallery .content a:hover::before {
  background-color: #1A1A1A;
}
.cd-morph-dropdown .gallery li:nth-of-type(1) a::before {
  background: #f4e58a url(../img/cd-gallery-icons.svg) no-repeat 0 0;
}
.cd-morph-dropdown .gallery li:nth-of-type(2) a::before {
  background: #F4AF6D url(../img/cd-gallery-icons.svg) no-repeat -54px 0;
}
.cd-morph-dropdown .gallery li:nth-of-type(3) a::before {
  background: #DB6356 url(../img/cd-gallery-icons.svg) no-repeat -108px 0;
}
.cd-morph-dropdown .gallery li:nth-of-type(4) a::before {
  background: #8D4645 url(../img/cd-gallery-icons.svg) no-repeat -162px 0;
}
.cd-morph-dropdown .links .content > ul > li {
  margin-top: 1em;
}
.cd-morph-dropdown .links-list a,
.cd-morph-dropdown .btn {
  display: block;
  margin-left: 14px;
  font-size: 2.2rem;
  line-height: 1.6;
}
.cd-morph-dropdown .links-list a:hover,
.cd-morph-dropdown .btn:hover {
  color: #1A1A1A;
}
.cd-morph-dropdown .content h2 {
  color: #a6a6a6;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 1.3rem;
  margin: 20px 0 10px 14px;
}

.dropdown-list .dropdown-cta .button.button-outline-white {
  border-color: white!important;
  color: white!important;
}

li.dropdown-cta {
  padding-bottom: 50px;
}

@media only screen and (min-width: 1000px) {
  li.dropdown-cta {
   display: none;
  }
  .site-header .branding {
    height: 55px;
    width: 190px;
  }

  .site-header .contact-banner  {
    display: flex;
    align-items: center;
  }
  .cd-morph-dropdown {
    position: fixed;
    height: 80px;
    left: 0;
    top: 0;
    width: 100%;
    padding: 0;
    text-align: center;
    background-color: white;
    z-index: 50;

    border-bottom: 1px solid #ededed;
  }
  .cd-morph-dropdown::before {
    content: 'desktop';
  }
  .cd-morph-dropdown .nav-trigger {
    display: none;
  }
  .cd-morph-dropdown .main-nav {
    display: inline-block;
  }
  .cd-morph-dropdown .main-nav > ul > li {
    display: inline-block;
    float: left;
  }
  .cd-morph-dropdown .main-nav > ul > li > a {
    display: block;
    padding: 0 15px;
    height: 80px;
    font-weight: 700;
    line-height: 80px;
    color: #262626;
    font-size: 1rem;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-transition: opacity .2s;
    transition: opacity .2s;
  }
  .cd-morph-dropdown.is-dropdown-visible .main-nav > ul > li > a {
    /* main navigation hover effect - on hover, reduce opacity of elements not hovered over */
    opacity: .6;
  }
  .cd-morph-dropdown.is-dropdown-visible .main-nav > ul > li.active > a {
    opacity: 1;
  }

  .cd-morph-dropdown.non-dropdown-active .main-nav > ul > li > a {
    /* main navigation hover effect - on hover, reduce opacity of elements not hovered over */
    opacity: .6;
  }
  .cd-morph-dropdown.non-dropdown-active .main-nav > ul > li.active > a {
    opacity: 1;
  }

  .cd-morph-dropdown .has-dropdown svg.ico  {
    font-size: 12px;
    color: #cf0a2c;
    margin-left: 8px;
  }
  .cd-morph-dropdown .morph-dropdown-wrapper {
    /* dropdown wrapper - used to create the slide up/slide down effect when dropdown is revealed/hidden */
    display: block;
    top: 58px;
    /* overwrite mobile style */
    width: auto;
    padding: 0;
    box-shadow: none;
    background-color: transparent;
    /* Force Hardware acceleration */
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    will-change: transform;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s;

    overflow: visible;
    overflow-y: inherit;
  }
  .cd-morph-dropdown.is-dropdown-visible .morph-dropdown-wrapper {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  .cd-morph-dropdown .dropdown-list {
    position: absolute;
    top: 0;
    left: 0;
    visibility: hidden;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    will-change: transform, width, height;
    -webkit-transition: visibility .3s;
    transition: visibility .3s;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.08);
  }
  .no-csstransitions .cd-morph-dropdown .dropdown-list {
    display: none;
  }
  .cd-morph-dropdown .dropdown-list::before {
    /* dropdown top triangle */
    content: '';
    position: absolute;
    bottom: 100%;
    left: 50%;
    right: auto;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    height: 0;
    width: 0;
    border: 8px solid transparent;
    border-bottom-color: #262626;
    opacity: 0;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
  }
  .cd-morph-dropdown .dropdown-list > ul {
    position: relative;
    z-index: 1;
    height: 100%;
    width: 100%;
    overflow: hidden;
  }

  .cd-morph-dropdown .dropdown-list a {
    color: white;
  }

  .cd-morph-dropdown.is-dropdown-visible .dropdown-list {
    visibility: visible;
    -webkit-transition: width .3s, height .3s, -webkit-transform .3s;
    transition: width .3s, height .3s, -webkit-transform .3s;
    transition: transform .3s, width .3s, height .3s;
    transition: transform .3s, width .3s, height .3s, -webkit-transform .3s;
  }
  .cd-morph-dropdown.is-dropdown-visible .dropdown-list::before {
    opacity: 1;
  }
  .cd-morph-dropdown .dropdown {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    visibility: hidden;
    width: 100%;
    -webkit-transition: opacity .3s, visibility .3s;
    transition: opacity .3s, visibility .3s;
  }
  .cd-morph-dropdown .dropdown.active {
    opacity: 1;
    visibility: visible;
  }
  .cd-morph-dropdown .dropdown.move-left .content {
    -webkit-transform: translateX(-100px);
    -ms-transform: translateX(-100px);
    transform: translateX(-100px);
  }
  .cd-morph-dropdown .dropdown.move-right .content {
    -webkit-transform: translateX(100px);
    -ms-transform: translateX(100px);
    transform: translateX(100px);
  }
  .cd-morph-dropdown .label {
    /* hide the label on bigger devices */
    display: none;
  }
  .cd-morph-dropdown .content {
    width: 720px;
    /*padding: 2.2em 1.8em;*/
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s;
    text-align: left;

    display: flex;
    flex-wrap: wrap;
  }
  .cd-morph-dropdown .content > ul::after {
    clear: both;
    content: "";
    display: block;
  }

  .cd-morph-dropdown .content .seconary-menu {
    width: 40%;
    padding: 25px;
  }

  .seconary-menu li {
    padding-bottom: 20px;
  }

  .seconary-menu li:last-of-type {
    padding-bottom: 0;
  }

  .seconary-menu li.title a {
    display: none;
  }

  .cd-morph-dropdown .content .intro {
    display: block;
    width: 60%;
    color: white;
    font-size: 15px;
    background-color: rgba(0,0,0,0.2);
    padding: 25px;
  }

  .cd-morph-dropdown .content > ul > li:nth-of-type(2n) {
    margin-right: 0;
  }
  .cd-morph-dropdown .gallery .content {
    /* you need to set a width for the .content elements because they have a position absolute */
    width: 510px;
    padding-bottom: .8em;
  }
  .cd-morph-dropdown .gallery .content li {
    margin-bottom: 1.8em;
  }
  .cd-morph-dropdown .links .content > ul > li {
    margin-top: 0;
  }
  .cd-morph-dropdown .links .content,
  .cd-morph-dropdown .button .content {
    width: 390px;
  }
  .cd-morph-dropdown .links-list a {
    font-size: 1.6rem;
    margin-left: 0;
  }
  .cd-morph-dropdown .btn {
    display: block;
    width: 100%;
    height: 60px;
    margin: 1.5em 0 0;
    font-size: 1.8rem;
    text-align: center;
    color: #FFFFFF;
    line-height: 60px;
    background: #DB6356;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .cd-morph-dropdown .btn:hover {
    background: #1A1A1A;
    color: #FFFFFF;
  }
  .cd-morph-dropdown .content h2 {
    font-size: 1.8rem;
    text-transform: none;
    font-weight: normal;
    color: #1A1A1A;
    margin: 0 0 .6em;
  }
  .cd-morph-dropdown .bg-layer {
    /* morph dropdown background */
    position: absolute;
    top: 0;
    left: 0;
    height: 1px;
    width: 1px;
    background: #262626;
    opacity: 0;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
    -webkit-transform-origin: top left;
    -ms-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    will-change: transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  .cd-morph-dropdown.is-dropdown-visible .bg-layer {
    opacity: 1;
    -webkit-transition: opacity .3s, -webkit-transform .3s;
    transition: opacity .3s, -webkit-transform .3s;
    transition: transform .3s, opacity .3s;
    transition: transform .3s, opacity .3s, -webkit-transform .3s;
  }
}


.primary-navigation-menu {
  background-color: #cf0a2c;
  color: #ffffff;
  height: 100%;
  padding: 72px 56px 0 56px;
  position: fixed;
  top: 0;
  right: 0;
  width: 420px; }
  .primary-navigation-menu a {
    color: #ffffff; }
  .primary-navigation-menu .primary-navigation-menu-item .top-level-link {
    font-size: 17px;
    font-size: 1.0625rem;
    text-transform: uppercase; }
  .primary-navigation-menu:after {
    box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.2);
    content: '';
    left: -5px;
    height: 100%;
    position: absolute;
    top: 0;
    width: 5px; }

.primary-navigation-menu-wrapper {
  position: relative;
  z-index: 2; }

.primary-navigation-footer {
  bottom: 30px;
  left: 56px;
  font-size: 10px;
  font-size: 0.625rem;
  padding-top: 100px;
  position: absolute;
  z-index: 1; }
  .primary-navigation-footer:before {
    content: '';
    background: transparent url(../images/branding-icon.svg) top left no-repeat;
    background-size: contain;
    left: 0;
    height: 64px;
    position: absolute;
    top: 0;
    width: 100%; }
  .primary-navigation-footer .contact-details {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 24px;
    line-height: 1.5rem; }
    .primary-navigation-footer .contact-details .contact-method {
      margin-right: 5px;
      margin-top: -3px; }

.open-nav {
  position: relative;
  overflow: hidden; }
  .open-nav .main-header {
    left: -420px; }
  .open-nav .inner-canvas {
    position: absolute;
    left: -420px;
    overflow: hidden; }
  .open-nav .internal-navigation.fixed {
    left: -420px; }

.show-navigation-button {
  font-size: 17px;
  font-size: 1.0625rem;
  line-height: 17px;
  line-height: 1.0625rem;
  padding: 3px 39px 0 0;
  position: relative; }
  .show-navigation-button:after {
    background-color: transparent;
    background-position: top left;
    background-repeat: no-repeat;
    background-size: contain;
    content: '';
    display: block;
    height: 17px;
    position: absolute;
    right: 0;
    top: 2px;
    width: 25px; }
  .show-navigation-button.active {
    padding: 0;
    overflow: hidden;
    text-indent: -9999px;
    height: 23px;
    width: 23px; }
    .show-navigation-button.active:after {
      height: 100%;
      top: 0;
      width: 100%; }

@media (max-width: 1024px) {
  /*.main-header,
  .main-header.active {
    padding: 20px 30px; }*/
    /*.main-header .show-navigation-button,
    .main-header.active .show-navigation-button {
      right: 30px;
      top: 45px; }*/

      /*.main-header .social-icons{
        top: 36px;
      }
      .main-header.active .social-icons{
        top: 36px;
      }*/


    }

@media (max-width: 640px) {

    .main-header .social-icons{
      display: none;
    }

    .main-header,
    .main-header.active {
        padding-top: 34px !important;
    }

  .main-header,
  .main-header.active {
    background-color: #fff;
    /*padding: 20px;*/
    border-bottom: 1px solid #f8f7f7; }
    .main-header .branding,
    .main-header.active .branding {
      height: 48px;
      width: 164px; }
    .main-header .show-navigation-button,
    .main-header.active .show-navigation-button {
      font-size: 14px;
      font-size: 0.875rem;
      /*right: 20px;*/
      /*top: 33px; */
  }
  .main-header .branding {
      margin-left: 0 !important;
      margin-right: 0 !important;
  }
  .main-header {
      padding-left: 10px !important;
      padding-right: 10px !important;
  }
      .main-header .show-navigation-button.active,
      .main-header.active .show-navigation-button.active {
        height: 18px;
        width: 18px; }
    .main-header .branding,
    .main-header.active .branding {
      background-image: url(../images/branding-red.svg); }
    .main-header .show-navigation-button,
    .main-header.active .show-navigation-button {
      color: #212121; }
      .main-header .show-navigation-button:after,
      .main-header.active .show-navigation-button:after {
        background-image: url(../images/show-navigation-icon-negative.svg); }
      .main-header .show-navigation-button.active:after,
      .main-header.active .show-navigation-button.active:after {
        background-image: url(../images/close-navigation-icon-negative.svg); }
    .main-header:before, .main-header:after,
    .main-header.active:before,
    .main-header.active:after {
      opacity: 1; }

  .primary-navigation-menu {
    padding: 20px 30px 20px 30px;
    width: 260px;
    z-index: 1; }
    .primary-navigation-menu .primary-navigation-menu-item .top-level-link {
      font-size: 16px;
      font-size: 1rem; }
  .open-nav .main-header {
    left: -260px; }
  .open-nav .inner-canvas {
    left: -260px; }
  .open-nav .internal-navigation.fixed {
    left: -260px; }
  .primary-navigation-footer {
    bottom: 10px;
    left: 30px;
    padding-top: 70px; }
    .primary-navigation-footer .contact-details {
      font-size: 14px;
      font-size: 0.875rem; }
    .primary-navigation-footer:before {
      height: 50px;
      width: 50px; }
    .primary-navigation-footer .copyright {
      display: block;
      width: 125px; }

    .main-header .branding, .main-header.active .branding {
        height: 64px;
        width: 218px;
    }
    .main-header .show-navigation-button {
        right: 10px;
    }
    .overlay-main-header .show-navigation-button {
        right: 10px !important;
    }

    .overlay-main-header .social-icons {
        left: 10px !important;
    }

  }

@media screen and (max-height: 715px) {
  .primary-navigation-footer {
    display: none; } }

@media screen and (max-width: 640px) {
  .primary-navigation-footer {
    display: block; } }

@media screen and (max-width: 640px) and (max-height: 567px) {
  .primary-navigation-footer:before {
    display: none; } }

@media screen and (max-width: 640px) and (max-height: 490px) {
  .primary-navigation-footer {
    display: none; } }

.main-footer {
  background-color: #cf0a2c;
  color: #ffffff;
  padding-bottom: 50px;
  padding-top: 70px; }
  .main-footer h1,
  .main-footer .first-heading {
    font-size: 22px;
    font-size: 1.375rem;
    text-transform: uppercase; }
  .main-footer a {
    color: #ffffff; }
  .main-footer .newsletter-signup {
    max-width: 300px; }
    .main-footer .newsletter-signup .text-input {
      background-color: transparent;
      border: none;
      border-bottom: 1px solid #ffffff;
      color: #ffffff;
      outline: none;
      font-size: 14px;
      font-size: 0.875rem;
      line-height: 17px;
      line-height: 1.0625rem; }
      .main-footer .newsletter-signup .text-input::-webkit-input-placeholder {
        font-size: 14px;
        font-size: 0.875rem;
        color: #ffffff;
        opacity: 1; }
      .main-footer .newsletter-signup .text-input:-moz-placeholder {
        font-size: 14px;
        font-size: 0.875rem;
        color: #ffffff;
        opacity: 1; }
      .main-footer .newsletter-signup .text-input::-moz-placeholder {
        font-size: 14px;
        font-size: 0.875rem;
        color: #ffffff;
        opacity: 1; }
      .main-footer .newsletter-signup .text-input:-ms-input-placeholder {
        font-size: 14px;
        font-size: 0.875rem;
        color: #ffffff;
        opacity: 1; }
    .main-footer .newsletter-signup .newsletter-field {
      padding-bottom: 4px;
      padding-right: 40px; }
    .main-footer .newsletter-signup .newsletter-submit {
      background-color: transparent;
      border: none;
      height: 30px;
      outline: none;
      position: absolute;
      right: 0;
      text-indent: -9999px;
      top: 0;
      width: 30px; }
      .main-footer .newsletter-signup .newsletter-submit:after {
        background: transparent url(../images/arrow-white.svg) top left no-repeat;
        background-size: contain;
        content: '';
        display: block;
        height: 12px;
        position: absolute;
        right: 0;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        top: 50%;
        width: 7px; }

.primary-footer {
  padding-bottom: 70px;
  border-bottom: 1px solid #ffffff;
  position: relative; }
  .primary-footer:after {
    background: transparent url(../images/branding-icon.svg) top left no-repeat;
    background-size: contain;
    bottom: 40px;
    content: '';
    height: 64px;
    position: absolute;
    right: 0;
    width: 64px; }
  .primary-footer .contact-details {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 24px;
    line-height: 1.5rem; }
    .primary-footer .contact-details .contact-method {
      margin-right: 5px;
      margin-top: -3px; }
  .primary-footer .footer-navigation-menu-list {
    line-height: 24px;
    line-height: 1.5rem; }
    .primary-footer .footer-navigation-menu-list .top-level-link {
      display: inline-block;
      font-size: 15px;
      font-size: 0.9375rem;
      text-transform: uppercase; }
    .primary-footer .footer-navigation-menu-list .sub-level-link {
      font-size: 14px;
      font-size: 0.875rem; }
  .primary-footer .highlighted {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 28px;
    line-height: 1.75rem; }
  .primary-footer .lowlighted {
    font-size: 14px;
    font-size: 0.875rem; }

.secondary-footer {
  font-size: 10px;
  font-size: 0.625rem;
  overflow: hidden;
  padding-top: 18px; }
  .secondary-footer .copyright {
    float: left; }
  .secondary-footer .footer-navigation-menu-list {
    float: right; }
  .secondary-footer .footer-navigation-menu-item {
    display: inline-block; }

@media (max-width: 820px) {
  .primary-footer {
    padding-bottom: 0; }
    .primary-footer:after {
      bottom: 30px; } }

@media (max-width: 640px) {
  .primary-footer .contact-details {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 24px;
    line-height: 1.5rem; } }

@media (max-width: 440px) {
  .secondary-footer .copyright,
  .secondary-footer .footer-navigation-menu-list {
    float: none; } }

.aggregator-one, .aggregator-three {
  color: #ffffff; }
  .aggregator-one .aggregator-image, .aggregator-three .aggregator-image {
    border-radius: 50%;
width: 100%; }
  .aggregator-one .aggregator-title, .aggregator-three .aggregator-title {
    font-size: 20px;
    font-size: 1.25rem; }
    .aggregator-one .aggregator-title:before, .aggregator-three .aggregator-title:before {
      opacity: 0;
      transition: opacity 0.3s ease-in-out 0.5s; }
  .aggregator-one .aggregator-container, .aggregator-three .aggregator-container {
    position: relative; }
    .aggregator-one .aggregator-container:after, .aggregator-three .aggregator-container:after {
      background-color: rgba(0, 0, 0, 0.3);
      border-radius: 50%;
      content: '';
      display: block;
      opacity: 0;
      transition: opacity 0.3s ease-in-out;
      position: absolute;
      height: 100%;
      left: 0;
      top: 0;
      width: 100%;
      z-index: 1; }
  .aggregator-one .aggregator-content, .aggregator-three .aggregator-content {
    left: 0;
    padding: 55px 35px 35px 35px;
    position: absolute;
    opacity: 0;
    transition: opacity 0.3s ease-in-out 0.3s;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 100%;
    z-index: 2; }
    .aggregator-one .aggregator-content p, .aggregator-three .aggregator-content p {
      font-size: 15px;
      font-size: 0.9375rem;
      line-height: 24px;
      line-height: 1.5rem; }
  .aggregator-one .box-link, .aggregator-three .box-link {
    z-index: 3; }
  .aggregator-one .aggregator-sub-title, .aggregator-three .aggregator-sub-title {
    display: block;
    font-size: 14px;
    font-size: 0.875rem; }
  .aggregator-one .aggregator-item.is-selected .aggregator-title:before, .aggregator-three .aggregator-item.is-selected .aggregator-title:before,
  .aggregator-one .aggregator-item.is-selected .aggregator-container:after, .aggregator-three .aggregator-item.is-selected .aggregator-container:after,
  .aggregator-one .aggregator-item.is-selected .aggregator-content, .aggregator-three .aggregator-item.is-selected .aggregator-content {
    opacity: 1; }

.not-mobile .aggregator-one .aggregator-item:hover .aggregator-title:before, .not-mobile .aggregator-three .aggregator-item:hover .aggregator-title:before,
.not-mobile .aggregator-one .aggregator-item:hover .aggregator-container:after,
.not-mobile .aggregator-three .aggregator-item:hover .aggregator-container:after,
.not-mobile .aggregator-one .aggregator-item:hover .aggregator-content,
.not-mobile .aggregator-three .aggregator-item:hover .aggregator-content {
  opacity: 1; }

@media (max-width: 640px) {
  .aggregator-one .aggregator-content p, .aggregator-three .aggregator-content p {
    left: -9999px;
    position: absolute; } }

.aggregator-two .aggregator-image {
  width: 63px; }

.aggregator-two .aggregator-title {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 33px;
  line-height: 2.0625rem; }

.aggregator-two .service-bullets {
  line-height: 26px;
  line-height: 1.625rem; }

.aggregator-three .aggregator-container:after,
.aggregator-three .aggregator-image {
  border-radius: 0; }

.aggregator-three .aggregator-item {
  padding-left: 2px;
  padding-right: 2px; }

.aggregator-four .aggregator-container {
  text-align: center; }

.aggregator-four .aggregator-image-wrapper {
  position: relative; }
  .aggregator-four .aggregator-image-wrapper:before, .aggregator-four .aggregator-image-wrapper:after {
    content: '';
    display: block;
    left: 0;
    opacity: 0;
    position: absolute; }
  .aggregator-four .aggregator-image-wrapper:before {
    background-color: rgba(0, 0, 0, 0.7);
    height: 100%;
    top: 0;
    transition: opacity 0.3s ease-in-out;
    width: 100%; }
  .aggregator-four .aggregator-image-wrapper:after {
    background: transparent url(../images/white-plus.svg) top center no-repeat;
    background-size: contain;
    left: 0;
    height: 45px;
    transition: opacity 0.3s ease-in-out 0.3s;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    top: 50%;
    width: 100%; }

.aggregator-four .aggregator-title {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 24px;
  line-height: 1.5rem; }

.aggregator-four .aggregator-content {
  font-size: 14px;
  font-size: 0.875rem; }

.not-mobile .aggregator-four .aggregator-link:hover .aggregator-image-wrapper:before, .not-mobile .aggregator-four .aggregator-link:hover .aggregator-image-wrapper:after {
  opacity: 1; }

.aggregator-five .aggregator-title {
  left: -9999px;
  position: absolute; }

.aggregator-five .aggregator-image {
  border: 1px solid #b2b2b2; }

.aggregator-five .aggregator-link {
  position: relative; }
  .aggregator-five .aggregator-link:before, .aggregator-five .aggregator-link:after {
    content: '';
    display: block;
    left: 0;
    opacity: 0;
    position: absolute;
    width: 100%; }
  .aggregator-five .aggregator-link:before {
    background-color: rgba(0, 0, 0, 0.7);
    height: 100%;
    transition: opacity 0.3s ease-in;
    top: 0; }
  .aggregator-five .aggregator-link:after {
    background: transparent url(../images/white-download.svg) top center no-repeat;
    background-size: contain;
    height: 64px;
    transition: opacity 0.3s ease-in-out 0.3s;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    top: 50%; }

.not-mobile .aggregator-five .aggregator-link:hover:after, .not-mobile .aggregator-five .aggregator-link:hover:before {
  opacity: 1; }

.aggregator-six .aggregator-container {
  text-align: center; }

.aggregator-six .aggregator-image {
  border-radius: 50%;
width: 100%; }

.aggregator-six .aggregator-title {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 33px;
  line-height: 2.0625rem; }

.aggregator-six .aggregator-meta-item {
  color: #999999;
  text-transform: uppercase; }

.aggregator-six .aggregator-image-wrapper {
  position: relative; }
  .aggregator-six .aggregator-image-wrapper:before, .aggregator-six .aggregator-image-wrapper:after {
    content: '';
    display: block;
    left: 0;
    opacity: 0;
    position: absolute; }
  .aggregator-six .aggregator-image-wrapper:before {
    background-color: rgba(0, 0, 0, 0.7);
    border-radius: 50%;
    height: 100%;
    top: 0;
    transition: opacity 0.3s ease-in-out;
    width: 100%; }
  .aggregator-six .aggregator-image-wrapper:after {
    background: transparent url(../images/white-plus.svg) top center no-repeat;
    background-size: contain;
    left: 0;
    height: 45px;
    transition: opacity 0.3s ease-in-out 0.3s;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    top: 50%;
    width: 100%; }

.aggregator-six .category-link {
  position: relative;
  z-index: 2; }
  .aggregator-six .category-link:hover {
    color: #cf0a2c; }

.aggregator-six .box-link {
  z-index: 1; }

.not-mobile .aggregator-six .aggregator-item:hover .aggregator-image-wrapper:before, .not-mobile .aggregator-six .aggregator-item:hover .aggregator-image-wrapper:after {
  opacity: 1; }

.aggregator-seven .aggregator-item {
  padding-bottom: 56px;
  padding-top: 80px; }
  .aggregator-seven .aggregator-item:last-child {
    padding-bottom: 90px; }

.aggregator-seven .aggregator-image {
  width: 100%; }

.aggregator-seven .aggregator-title {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 33px;
  line-height: 2.0625rem;
  text-align: left; }

.aggregator-seven .aggregator-seven-aside-column {
  position: relative;
  top: 2px; }

@media (max-width: 640px) {
  .aggregator-seven .aggregator-image,
  .aggregator-eight .aggregator-image {
    margin-left: auto;
    margin-right: auto;
    max-width: 100px; } }

.aggregator-eight .aggregator-item {
  padding-bottom: 50px;
  padding-top: 80px; }
  .aggregator-eight .aggregator-item:last-child {
    padding-bottom: 25px; }

.aggregator-eight .aggregator-image {
  width: 100%; }

.aggregator-eight .aggregator-title {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 33px;
  line-height: 2.0625rem;
  text-align: left; }

.aggregator-eight .aggregator-content-wrapper.odd {
  text-align: right; }
  .aggregator-eight .aggregator-content-wrapper.odd .aggregator-title {
    text-align: right; }

@media (max-width: 640px) {
  .aggregator-eight .aggregator-content-wrapper.odd {
    text-align: left; }
    .aggregator-eight .aggregator-content-wrapper.odd .aggregator-title {
      text-align: left; } }

.aggregator-nine {
  position: relative; }
  .aggregator-nine:after {
    background-color: #ffffff;
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    top: 0;
    width: 1px; }
  .aggregator-nine .aggregator-container {
    border-bottom: 1px solid #a0a0a0;
    border-right: 1px solid #a0a0a0;
    display: table;
    height: 100%;
    padding: 70px 30px;
    text-align: center;
    width: 100%; }
  .aggregator-nine .aggregator-inner {
    display: table-cell;
    vertical-align: middle;
    width: 100%; }
  .aggregator-nine .aggregator-image {
    max-height: 126px; }

.aggregator-ten {
  text-align: center; }
  .aggregator-ten .aggregator-image-wrapper {
    height: 175px;
    position: relative; }
  .aggregator-ten .aggregator-image {
    left: 50%;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    max-height: 175px; }

@media (max-width: 640px) {
  .aggregator-ten .aggregator-image-wrapper {
    height: auto; }
  .aggregator-ten .aggregator-image {
    position: static;
    -webkit-transform: none;
            transform: none;
    max-height: none; } }

.aggregator-eleven .aggregator-title {
  display: block;
  font-size: 15px;
  font-size: 0.9375rem;
  text-transform: uppercase; }

.area-one {
  background-color: #ffffff;
  overflow: hidden; }
  .area-one h1.page-title,
  .area-one .first-heading.page-title {
    padding-bottom: 60px; }
  .area-one.filter-area {
    overflow: visible; }
  .area-one .flickity-page-dots .dot {
    border: 1px solid #918f8f; }
    .area-one .flickity-page-dots .dot:after {
      background-color: #918f8f; }
  .area-one .text-input {
    background-color: transparent;
    border: 1px solid #b2b2b2;
    color: #212121;
    font-size: 15px;
    font-size: 0.9375rem;
    padding: 8px 13px 9px 13px; }
    .area-one .text-input::-webkit-input-placeholder {
      color: #212121;
      text-transform: uppercase; }
    .area-one .text-input:-moz-placeholder {
      color: #212121;
      text-transform: uppercase; }
    .area-one .text-input::-moz-placeholder {
      color: #212121;
      text-transform: uppercase; }
    .area-one .text-input:-ms-input-placeholder {
      color: #212121;
      text-transform: uppercase; }
    .area-one .text-input.wpcf7-not-valid {
      border-color: #cf0a2c; }
  .area-one .filter-results:before {
    background-color: #ffffff; }

@media (max-width: 640px) {
  .area-one h1.page-title,
  .area-one .first-heading.page-title {
    padding-bottom: 34px; } }

.area-two {
  background-color: #f6f5f5;
  overflow: hidden; }
  .area-two.filter-area {
    overflow: visible; }
  .area-two .text-input {
    background-color: #ffffff;
    border: 1px solid #b2b2b2;
    color: #212121;
    font-size: 15px;
    font-size: 0.9375rem;
    padding: 8px 13px 9px 13px; }
    .area-two .text-input::-webkit-input-placeholder {
      color: #212121;
      text-transform: uppercase; }
    .area-two .text-input:-moz-placeholder {
      color: #212121;
      text-transform: uppercase; }
    .area-two .text-input::-moz-placeholder {
      color: #212121;
      text-transform: uppercase; }
    .area-two .text-input:-ms-input-placeholder {
      color: #212121;
      text-transform: uppercase; }
    .area-two .text-input.wpcf7-not-valid {
      border-color: #cf0a2c; }

.area-three {
  background-color: #252525;
  color: #ffffff;
  overflow: hidden; }
  .area-three .text-input {
    background-color: transparent;
    border: 1px solid #ffffff;
    color: #ffffff;
    padding: 17px 20px 17px 20px; }
    .area-three .text-input::-webkit-input-placeholder {
      color: #ffffff; }
    .area-three .text-input:-moz-placeholder {
      color: #ffffff; }
    .area-three .text-input::-moz-placeholder {
      color: #ffffff; }
    .area-three .text-input:-ms-input-placeholder {
      color: #ffffff; }


/*
  GLOBAL FORM

*/

.cfbg {
  position: relative;
}
.contact-form-area.cfbg-red {
  background-color: #cf0a2c;
}
.contact-form-area .wpcf7 {
  position: relative;
  z-index: 20;
}
.cfbg-red:after {
  background: transparent url(../images/hero-overlay.png) top left;
  content: '';
  display: block;
  left: 0;
  height: 100%;
  opacity: 0.15;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 10;
}

.cfbg-red .container-eleven {
  position: relative;
  z-index: 20;
}

.contact-form-area.cfbg-red h1 {
  color: white;
}

.contact-form-area.cfbg-red h1:after {
  background-color: white;
  opacity: .5;
}

.contact-form-area.cfbg-red .introduction {
  color: white;
}

.contact-form-area.cfbg-red .text-input {
  border-color: white;
}

.contact-form-area.cfbg-red .text-input::-webkit-input-placeholder {
  color: #ffffff; }
.contact-form-area.cfbg-red .text-input:-moz-placeholder {
  color: #ffffff; }
.contact-form-area.cfbg-red .text-input::-moz-placeholder {
  color: #ffffff; }
.contact-form-area.cfbg-red .text-input:-ms-input-placeholder {
  color: #ffffff; }

.contact-form-area .wpcf7-form .wpcf7-not-valid-tip {
  left: auto;
  position: absolute;
  color: white;
  font-size: 12px;
}

.contact-form-area.cfbg-red .button {
  border-color: white!important;
  color: white!important;
}

.contact-form-area.cfbg-red .button:hover {
  opacity: 0.75!important;
}

/*Page Introductions*/
.content-page-introduction {
  max-width: 790px; }

.portfolio-introduction {
  max-width: 850px; }

.services-introduction {
  max-width: 970px; }

.consultancy-introduction {
  max-width: 700px; }

.our-approach-introduction {
  max-width: 940px; }

.our-values-introduction {
  max-width: 890px; }

.our-clients-introduction {
  max-width: 700px; }

.accreditations-introduction {
  max-width: 832px; }

/*Service*/
.service {
  text-align: center; }

/*Portfolio*/
.portfolio-image {
  max-width: initial;
  width: 100%; }

.portfolio-content {
  float: right;
  max-width: 525px; }

.portfolio-content-wrapper {
  padding-left: 30px;
  padding-right: 65px;
  padding-top: 140px; }

/*Recent News*/
.recent-news-item {
  width: 400px; }




.recent-news {

}

.recent-news .column-set {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;

  margin-left: 0;
  margin-bottom: 50px;
}

.recent-news .col {
  width: 340px;
}

.news-module {
  width: 340px;
  border: 2px solid #cf0a2c;
  border-radius: 20px;
  margin: 158px 20px 0;

  text-align: left;
}

.news-module .inner {
  position: relative;
  padding: 128px 20px 20px 20px;
}

.news-module .img-con {
  display: block;
  width: 256px;
  height: 256px;
  margin-top: -128px;
  margin-left: -128px;
  position: absolute;
  top: 0;
  left: 50%;
}

.news-module h2,
.news-module p {
  color: black;
  letter-spacing: 0;
}

.news-module h2 {
  font-size: 22px;
  line-height: 1.5;
  border-bottom: 1px solid rgba(0,0,0,0.2);
  padding: 20px 0 20px 0;
  margin-bottom: 20px;
}

.news-module .link {
  letter-spacing: 0;
  font-weight: 600;
  font-size: 18px;
}

.news-module .link:after {
  content: '\203A\0020';
  display: inline-block;
  font-size: 24px;
  margin-left: 8px;
  line-height: 18px;
  vertical-align: middle;
  margin-top: -5px;
}


@media (max-width: 400px) {
  .recent-news-item {
    width: 100%; } }

/*About*/
.why-accent-slider {
  height: 790px;
  overflow: hidden;
  width: 100%; }

.why-accent {
  background-color: #252525;
  color: #ffffff;
  position: relative; }
  .why-accent .title-container {
    left: 0;
    position: absolute;
    top: 181px;
    width: 100%;
    z-index: 2; }
  .why-accent .title {
    color: #ffffff;
    text-align: left; }
    .why-accent .title:after {
      left: 0;
      -webkit-transform: none;
              transform: none; }
  .why-accent .content-wrapper {
    left: 0;
    position: absolute;
    top: 350px;
    width: 100%; }
  .why-accent .slide {
    height: 790px;
    position: relative; }
  .why-accent .content {
    max-width: 500px; }
  .why-accent .content-container {
    position: relative; }
  .why-accent .standout-content {
    font-size: 48px;
    font-size: 3rem;
    line-height: 62px;
    line-height: 3.875rem;
    position: absolute;
    right: 30px;
    top: -15px;
    text-align: center;
    max-width: 410px; }
  .why-accent .flickity-page-dots {
    bottom: 120px;
    left: 50%;
    max-width: 1230px;
    padding-left: 30px;
    padding-right: 30px;
    position: absolute;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 100%; }
  .why-accent .slide-image {
    right: 0;
    position: absolute;
    min-height: 100%;
    min-width: 100%;
    top: 0;
    max-width: inherit; }
  .why-accent .slide-image-wrapper {
    left: 0;
    height: 100%;
    overflow: hidden;
    position: absolute;
    top: 0;
    width: 100%; }

@media (max-width: 990px) {
  .why-accent .standout-content {
    left: -9999px;
    position: absolute; } }

.our-approach {
  padding-bottom: 110px;
  padding-top: 86px; }

.approach-slider-wrapper {
  padding-left: 125px;
  padding-right: 125px; }

.approach-slider-item {
  counter-increment: approach-step;
  padding-left: 17px;
  padding-right: 17px;
  width: 306px; }
  .approach-slider-item.is-selected .step-content {
    opacity: 1; }

.approach-step {
  background-color: #ffffff;
  border-radius: 50%;
  height: 0;
  padding-bottom: 100%;
  position: relative; }
  .approach-step:before {
    color: #f6f5f5;
    content: counter(approach-step);
    display: block;
    position: absolute;
    font-size: 250px;
    font-size: 15.625rem;
    line-height: 250px;
    line-height: 15.625rem;
    text-align: center;
    width: 100%; }

.step-content {
  font-size: 36px;
  font-size: 2.25rem;
  line-height: 38px;
  line-height: 2.375rem;
  display: block;
  left: 0;
  padding-left: 35px;
  padding-right: 35px;
  opacity: 0.5;
  position: absolute;
  text-align: center;
  transition: opacity 0.3s ease-in;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 100%; }

.lt-ie10 .approach-step:before {
  line-height: 226px; }

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .approach-step:before {
    line-height: 226px; } }

@media (max-width: 1220px) {
  .approach-slider-wrapper {
    margin-left: auto;
    margin-right: auto;
    max-width: 862px; } }

@media (max-width: 905px) {
  .approach-slider-wrapper {
    max-width: 556px; } }

@media (max-width: 640px) {
  .approach-slider-wrapper {
    padding-left: 43px;
    padding-right: 43px;
    max-width: 260px; }
  .approach-slider-item {
    width: 174px; }
  .internal-slider .next-previous {
    height: 30px;
    width: 30px; }
  .step-content {
    font-size: 16px;
    font-size: 1rem;
    line-height: 24px;
    line-height: 1.5rem; }
  .approach-step:before {
    font-size: 100px;
    font-size: 6.25rem;
    line-height: 120px;
    line-height: 7.5rem; } }

.our-values-introduction-area {
  padding-bottom: 65px;
  padding-top: 115px; }

.our-values .value {
  color: #ffffff;
  font-size: 36px;
  font-size: 2.25rem;
  line-height: 48px;
  line-height: 3rem;
  min-height: 790px;
  position: relative; }
  .our-values .value:nth-child(even) .value-image-wrapper:after {
    left: auto;
    right: 0; }
  .our-values .value:nth-child(even) .value-image {
    left: auto;
    right: 50%; }
  .our-values .value:nth-child(even) .value-content {
    padding-left: 110px;
    padding-right: 0;
    float: right; }
  .our-values .value.creativity .value-image-wrapper:after {
    background-color: #e38433; }
  .our-values .value.creativity .value-background-title {
    left: -136px; }
  .our-values .value.confidence .value-image-wrapper:after {
    background-color: #005970; }
  .our-values .value.confidence .value-background-title {
    left: -60px; }
  .our-values .value.commitment .value-image-wrapper:after {
    background-color: #b9bf33; }
  .our-values .value.commitment .value-background-title {
    left: -111px; }
  .our-values .value.culture .value-image-wrapper:after {
    background-color: #0fa6b5; }
  .our-values .value.culture .value-background-title {
    left: calc(50% - 73px); }
  .our-values .value.care .value-image-wrapper:after {
    background-color: #8e8e4a; }
  .our-values .value.care .value-background-title {
    left: -71px; }

.our-values .value-title {
  padding-bottom: 54px;
  text-align: left; }
  .our-values .value-title:after {
    background-color: rgba(0, 0, 0, 0.5);
    left: 0;
    -webkit-transform: none;
            transform: none; }

.our-values .value-content-wrapper {
  overflow: hidden;
  position: relative;
  z-index: 4; }

.our-values .value-content {
  padding-right: 115px;
  padding-top: 126px;
  width: 50%; }

.our-values .value-image-wrapper {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%; }
  .our-values .value-image-wrapper:after {
    content: '';
    left: 0;
    height: 100%;
    display: block;
    position: absolute;
    width: 50%;
    z-index: 2; }

.our-values .value-image {
  left: 50%;
  max-width: initial;
  position: absolute;
  top: 0;
  min-height: 100%;
  min-width: 50%;
  z-index: 1; }

.our-values .value-background-title {
  bottom: 33px;
  color: rgba(0, 0, 0, 0.15);
  letter-spacing: -20px;
  position: absolute;
  z-index: 3;
  font-size: 328px;
  font-size: 20.5rem;
  line-height: 214px;
  line-height: 13.375rem; }

@media (max-width: 1024px) {
  .our-values .value {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 34px;
    line-height: 2.125rem; }
    .our-values .value:nth-child(even) .value-content {
      padding-left: 30px; }
  .our-values .value-content {
    padding-right: 30px; } }

@media (max-width: 640px) {
  .our-values .value {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 28px;
    line-height: 1.75rem;
    min-height: initial;
    overflow: hidden; }
    .our-values .value .value-content-wrapper .value-content {
      padding-left: 0;
      padding-right: 0; }
    .our-values .value .value-image-wrapper:after {
      top: 300px;
      width: 100%; }
    .our-values .value .value-image-wrapper .value-image {
      left: 0;
      top: -490px; }
  .our-values .value-content {
    padding-top: 334px;
    width: auto; }
  .our-values .value-title {
    padding-bottom: 24px; }
  .our-values .value-background-title {
    display: none; }
  .our-values .value-content-wrapper {
    padding-bottom: 10px; } }

.our-clients {
  padding-bottom: 95px;
  padding-top: 135px;
  text-align: center; }
  .our-clients .clients-aggregator {
    text-align: left; }

@media (min-width: 821px) {
  .our-clients .clients-aggregator .aggregator-item:nth-child(5n) .aggregator-container {
    border-right: none; }
  .our-clients .clients-aggregator .aggregator-item:nth-child(4n+1):nth-last-child(-n+4) .aggregator-container,
  .our-clients .clients-aggregator .aggregator-item:nth-child(4n+1):nth-last-child(-n+4) ~ li .aggregator-container {
    border-bottom: none; } }

@media (min-width: 641px) and (max-width: 820px) {
  .our-clients .clients-aggregator .aggregator-item:nth-child(3n) .aggregator-container {
    border-right: none; }
  .our-clients .clients-aggregator .aggregator-item:nth-child(3n+1):nth-last-child(-n+3) .aggregator-container,
  .our-clients .clients-aggregator .aggregator-item:nth-child(3n+1):nth-last-child(-n+3) ~ li .aggregator-container {
    border-bottom: none; } }

@media (max-width: 640px) {
  .our-clients .clients-aggregator .aggregator-item:nth-child(2n) .aggregator-container {
    border-right: none; }
  .our-clients .clients-aggregator .aggregator-item:nth-child(2n+1):nth-last-child(-n+2) .aggregator-container,
  .our-clients .clients-aggregator .aggregator-item:nth-child(2n+1):nth-last-child(-n+2) ~ li .aggregator-container {
    border-bottom: none; } }

.our-accreditations {
  padding-bottom: 40px;
  padding-top: 95px; }

.environment, .health-and-safety {
  color: #ffffff;
  position: relative;
  min-height: 800px;
  padding-top: 150px;
  overflow: hidden; }
  .environment .container, .health-and-safety .container {
    overflow: hidden; }
  .environment h1, .health-and-safety h1,
  .environment .first-heading, .health-and-safety .first-heading {
    padding-bottom: 54px;
    text-align: left; }
    .environment h1:after, .health-and-safety h1:after,
    .environment .first-heading:after, .health-and-safety .first-heading:after {
      left: 0;
      -webkit-transform: none;
              transform: none; }
  .environment .content, .health-and-safety .content {
    float: right;
    position: relative;
    padding-right: 80px;
    max-width: 480px;
    z-index: 1; }
  .environment .background, .health-and-safety .background {
    min-height: 100%;
    left: 50%;
    max-width: none;
    position: absolute;
    top: 0;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    min-width: 100%; }

.health-and-safety {
  padding-top: 105px; }
  .health-and-safety .content {
    float: left;
    padding-right: 0; }

@media (max-width: 1170px) {
  .environment .content, .health-and-safety .content {
    padding-right: 0; } }

.history-section {
  padding-bottom: 45px;
  padding-top: 100px;
  text-align: center; }

.history-container {
  padding-left: 5px;
  padding-right: 5px; }

.history-slider-navigation {
  outline: none; }
  .history-slider-navigation .top-level-link {
    background-color: #f6f5f5;
    border: 1px solid #8b8b8b;
    border-radius: 50%;
    font-size: 36px;
    font-size: 2.25rem;
    color: #8b8b8b;
    display: block;
    height: 110px;
    transition: all 0.3s ease-in-out;
    position: relative;
    line-height: 110px;
    line-height: 6.875rem;
    width: 110px;
    z-index: 2; }
    .history-slider-navigation .top-level-link:hover, .history-slider-navigation .top-level-link.active {
      color: #212121;
      border-color: #212121; }

.history-slider-navigation-item {
  display: inline-block;
  letter-spacing: normal;
  padding-left: 25px;
  padding-right: 25px;
  position: relative; }
  .history-slider-navigation-item:after {
    background-color: #8b8b8b;
    content: '';
    display: block;
    left: 0;
    position: absolute;
    height: 1px;
    top: 50%;
    width: 100%;
    z-index: 1; }
  .history-slider-navigation-item:first-child:before {
    background-color: #f6f5f5;
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    width: 25px;
    z-index: 2;
    left: 0; }
  .history-slider-navigation-item:last-child:before {
    background-color: #f6f5f5;
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    width: 25px;
    z-index: 2;
    right: 0; }
  @media (min-width: 968px) and (max-width: 1126px) {
    .history-slider-navigation-item:nth-child(6):before {
      background-color: #f6f5f5;
      content: '';
      display: block;
      height: 100%;
      position: absolute;
      width: 25px;
      z-index: 2;
      right: 0; }
    .history-slider-navigation-item:last-child:after {
      display: none; } }
  @media (min-width: 808px) and (max-width: 967px) {
    .history-slider-navigation-item:nth-child(5):before {
      background-color: #f6f5f5;
      content: '';
      display: block;
      height: 100%;
      position: absolute;
      width: 25px;
      z-index: 2;
      right: 0; }
    .history-slider-navigation-item:nth-child(6):before {
      background-color: #f6f5f5;
      content: '';
      display: block;
      height: 100%;
      position: absolute;
      width: 25px;
      z-index: 2;
      left: 0; } }
  @media (min-width: 649px) and (max-width: 807px) {
    .history-slider-navigation-item:nth-child(4):before {
      background-color: #f6f5f5;
      content: '';
      display: block;
      height: 100%;
      position: absolute;
      width: 25px;
      z-index: 2;
      right: 0; }
    .history-slider-navigation-item:nth-child(5):before {
      background-color: #f6f5f5;
      content: '';
      display: block;
      height: 100%;
      position: absolute;
      width: 25px;
      z-index: 2;
      left: 0; } }
  @media (max-width: 648px) {
    .history-slider-navigation-item:nth-child(3):before {
      background-color: #f6f5f5;
      content: '';
      display: block;
      height: 100%;
      position: absolute;
      width: 25px;
      z-index: 2;
      right: 0; }
    .history-slider-navigation-item:nth-child(4):before {
      background-color: #f6f5f5;
      content: '';
      display: block;
      height: 100%;
      position: absolute;
      width: 25px;
      z-index: 2;
      left: 0; }
    .history-slider-navigation-item:nth-child(6):before {
      background-color: #f6f5f5;
      content: '';
      display: block;
      height: 100%;
      position: absolute;
      width: 25px;
      z-index: 2;
      right: 0; }
    .history-slider-navigation-item:last-child:after {
      display: none; } }

@media (max-width: 500px) {
  .history-slider-navigation-item {
    padding-left: 10px;
    padding-right: 10px; }
  .history-slider-navigation {
    margin-left: auto;
    margin-right: auto;
    max-width: 378px; }
    .history-slider-navigation .top-level-link {
      font-size: 20px;
      font-size: 1.25rem;
      line-height: 75px;
      line-height: 4.6875rem;
      height: 75px;
      width: 75px; } }

.history-slider-slides {
  outline: none; }
  .history-slider-slides .flickity-viewport {
    position: relative; }

.history-slider-slide .history-slider-content {
  opacity: 0; }

.history-slider-slide.slick-active .history-slider-content {
  opacity: 1; }

.history-slider-content {
  font-size: 36px;
  font-size: 2.25rem;
  line-height: 52px;
  line-height: 3.25rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
  max-width: 990px;
  opacity: 0;
  transition: opacity 0.3s ease-in-out; }

@media (max-width: 1024px) {
  .history-slider-content {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 36px;
    line-height: 2.25rem; } }

@media (max-width: 640px) {
  .history-slider-content {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 34px;
    line-height: 2.125rem; } }

.team-members {
  padding-bottom: 40px;
  padding-top: 80px;
  text-align: center; }

.team-members-introduction {
  max-width: 930px; }

.team-member-slider {
  padding-left: 79.5px;
  padding-right: 79.5px; }
  .team-member-slider .profile-picture-wrapper {
    border-radius: 50%;
    display: block;
    height: 0;
    position: relative;
    padding-bottom: 100%;
    width: 100%; }
  .team-member-slider .profile-picture {
    border: 1px solid #f2f2f2;
    border-radius: 50%;
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%; }
  .team-member-slider .name,
  .team-member-slider .role {
    display: block; }
  .team-member-slider .name {
    font-size: 20px;
    font-size: 1.25rem; }
  .team-member-slider .role {
    font-size: 14px;
    font-size: 0.875rem; }
  .team-member-slider .next-previous {
    top: 30%; }

.team-member-slide {
  padding-left: 17.5px;
  padding-right: 17.5px; }

@media (max-width: 640px) {
  .team-member-slider {
    padding-left: 42px;
    padding-right: 42px; } }

.charity {
  padding-top: 82px;
  padding-bottom: 45px; }

.charity-introduction {
  max-width: 790px; }

.charity-item {
  text-align: center; }

.charity-content {
  min-height: 112px; }
  @media (max-width: 639px) {
    .charity-content {
      min-height: inherit; } }

/*Blog*/
.blog-content-area {
  padding-bottom: 65px;
  padding-top: 77px; }

.blog-content {
  padding-left: 40px;
  padding-right: 40px;
  margin-left: auto;
  margin-right: auto;
  text-align: center; }
  .blog-content img {
    height: auto !important;
    /*left: -40px;
    max-width: none;*/
    position: relative;
    /*width: calc(100% + 80px);*/ }
    .blog-content img.alignleft, .blog-content img.alignright {
      left: 0;
      max-width: 100%;
      width: auto; }
    .blog-content img.alignleft {
      margin-right: 30px; }
    .blog-content img.alignright {
      margin-left: 30px; }
  .blog-content blockquote:before {
    content: '\201C'; }
  .blog-content blockquote:after {
    content: '\201D'; }

@media (max-width: 1024px) {
  .blog-content {
    padding-left: 0;
    padding-right: 0; }
    .blog-content img {
      left: 0;
      width: 100%; } }

@media (max-width: 640px) {
  .blog-content img.alignleft, .blog-content img.alignright {
    float: none; } }

.article-header {
  text-align: center; }
  .article-header .article-meta {
    color: #999999;
    text-transform: uppercase;
    font-size: 15px;
    font-size: 0.9375rem; }
    .article-header .article-meta a {
      color: #999999; }

/*Contact*/
.contact-address {
  min-height: 164px; }
  .contact-address span {
    display: block; }

.contact-form-area {
  padding-bottom: 60px;
  padding-top: 98px; }

.contact-google-map {
  min-height: 400px;
  padding-bottom: 54.66574%; }

/*Terms and Conditions*/
.terms {
  counter-reset: item; }
  .terms ol {
    counter-reset: item; }
  .terms li {
    list-style: none;
    position: relative; }
    .terms li:before {
      content: counters(item, ".") " ";
      counter-increment: item;
      left: 0;
      position: absolute;
      top: 0; }
  .terms > li:before {
    display: none; }
  .terms > li > h2:before {
    content: counters(item, ".") ". ";
    counter-increment: item;
    display: inline;
    position: static; }
  .terms > li > ol > li {
    padding-left: 30px; }
    .terms > li > ol > li > ol li {
      padding-left: 50px; }


.at-icon-wrapper {
  display: none !important;
}

.addthis_sharing_toolbox .at-share-btn.at-svc-email:before {
  content: "EMAIL";
  display: inline-block;
  color: #fff;
  font-family: 'SofiaProBold';
  cursor: pointer;
}

.home .hero a.button {
  background: #fff;
  color: #d1202f;
  margin-right: 20px;
  margin-bottom: 25px;
  padding-left: 10px;
  padding-right: 10px;
  width: 105px;
}

.home .hero-para {
  margin: 0 auto 85px;
  max-width: 530px;
  text-align: center;
}

/* Tweaks for Homepage video bg */
.home .hero.animate{
  padding-top: 0;
  padding-bottom: 0;
}
.home .hero.animate .hero-content{
  padding-top: 40px;
}

.linkedin-footer {
    top: 30px;
    display: inline-block;
    position: relative;
}

  .linkedin-footer span {
    display: inline-block;
    padding-left: 13px;
    padding-top: 3px;
  }

  @media (max-width: 820px) {
    .linkedin-footer {
        position: static;
        margin-bottom: 50px;
    }
  }


/*SERVICE PAGE STYLES*/
.service-hero {
  position: relative;
  background-color: #cf0a2c;
}

.service-hero .image {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50%;

  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;

  opacity: 0.25;
}

.service-hero .inner-con {
  position: relative;
  color: white;
}

.service-hero .inner-con h1:after {
  background-color: white;
}

.service-hero .inner-con .button.outline {
  border-color: white!important;
  color: white!important;
}

.wpcf7-display-none {
  display: none;
}

.bg-white {
  background-color: white;
}

.bg-full-left {
  position: relative;
}

.bg-full-left::after {
  content: '';
  position: absolute;
  left: -100%;
  bottom: 0;
  top: 0;
  right: 100%;
  background-color: inherit;
  z-index: 0;
}

.pill-points li {
  display: inline-block;
  padding: 5px 10px;
  background-color: #cf0a2c;
  color: white;
  border-radius: 5px;
  margin: 0 5px 10px 0;
}

.pill-points li:before {
  content: none;
}

.columns .col-6 {
  width: 100%;
}

.intro-form .inner {
  position: relative;
  height: 100%;
  padding: 50px;
}

.service-intro {
  font-size: 18px;
}
.service-intro h1,
.service-intro h2 {
  font-size: 28px;
  font-family: 'SofiaProMedium', sans-serif;
  margin-bottom: 25px;
}

.quote-form  .text-input {
  background-color: transparent;
  border: 1px solid white;
  color: white;
  font-size: 15px;
  font-size: 0.9375rem;
  padding: 8px 13px 9px 13px;
}

.quote-form  .text-input::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: white;
}
.quote-form  .text-input::-moz-placeholder { /* Firefox 19+ */
  color: white;
}
.quote-form  .text-input:-ms-input-placeholder { /* IE 10+ */
  color: white;
}
.quote-form  .text-input:-moz-placeholder { /* Firefox 18- */
  color: white;
}

.quote-form textarea.text-input {
  height: 150px;
}

@media (min-width: 992px) {
  .intro-form .container-four {
    display: flex;
  }

  .columns .col-6 {
    float: left;
    width: 50%;
  }
}
.project-carousel {
  position: relative;
}

.project-carousel .item {
  position: relative;
  height: 500px;
}

.project-carousel .item .bg-image {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  z-index: 0;
}
.project-carousel .item .bg-image:before {
  content: '';
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0.75+1,0.57+54,0.11+99 */
  background: -moz-linear-gradient(left, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0.75) 1%, rgba(0,0,0,0.57) 54%, rgba(0,0,0,0.11) 99%, rgba(0,0,0,0.11) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(left, rgba(0,0,0,0.75) 0%,rgba(0,0,0,0.75) 1%,rgba(0,0,0,0.57) 54%,rgba(0,0,0,0.11) 99%,rgba(0,0,0,0.11) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, rgba(0,0,0,0.75) 0%,rgba(0,0,0,0.75) 1%,rgba(0,0,0,0.57) 54%,rgba(0,0,0,0.11) 99%,rgba(0,0,0,0.11) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#bf000000', endColorstr='#1c000000',GradientType=1 ); /* IE6-9 */
  z-index: 2;
}

.project-carousel .item .container-four {
  position: relative;
  z-index: 3;
  height: 100%;
  display: flex;
  align-items: center;
}

.carousel-content {
  color: white;
  width: 50%;
  font-size: 18px;
}
.carousel-content .title {
  font-family: 'SofiaProMedium', sans-serif;
  color: white;
  font-size: 28px;
  margin-bottom: 25px;
}

.page-carousel-nav .slick-arrow {
  background: transparent;
  border: none;
  color: white;
  width: 34px;
  height: 36px;
  font-size: 18px;
  margin-top: -18px;
  position: absolute;
  top: 50%;
  cursor: pointer;
}

.page-carousel-nav .slick-arrow.left {
  left: 50px
}

.page-carousel-nav .slick-arrow.right {
  right: 50px
}

.logo-carousel {
  background-color: #FFFFFF;
  padding: 50px 0;
}

.logo-carousel .slick-slide {position: relative; height: 180px;}
.logo-carousel .slick-slide > div {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}


.logo-carousel .item {
  padding: 0 10px;
  text-align: center;
}
.logo-carousel .item img {
  margin: 0 auto;
  width: auto;
  max-height: 180px;
}

.more-info-module {
  position: relative;
  padding: 100px 0;
}
.more-info-module .bg-image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  z-index: 0;
}

.more-info-module .bg-image:before {
  content: '';
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0.15+0,0.57+36,0.75+78 */
  background: -moz-linear-gradient(left, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.57) 40%, rgba(0,0,0,0.75) 78%, rgba(0,0,0,0.75) 100%);
  background: -webkit-linear-gradient(left, rgba(0,0,0,0.15) 0%,rgba(0,0,0,0.57) 40%,rgba(0,0,0,0.75) 78%,rgba(0,0,0,0.75) 100%);
  background: linear-gradient(to right, rgba(0,0,0,0.15) 0%,rgba(0,0,0,0.57) 28%,rgba(0,0,0,0.80) 78%,rgba(0,0,0,0.80) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#26000000', endColorstr='#bf000000',GradientType=1 );
  z-index: 0;
}

.more-info-module .container-four {
  position: relative;
}

.more-info-module .col {
  float: right;
  width: 50%;
}

.more-info-module .content {
  color: white;
  font-size: 18px;
}

.more-info-module .content h1,
.more-info-module .content h2 {
  font-family: 'SofiaProMedium', sans-serif;
  font-size: 28px;
  margin-bottom: 25px;
}

.more-info-module .content a {
  font-family: 'SofiaProBold', sans-serif;
  padding-bottom: 1px;
  border-bottom: 1px solid;
  transition: all .2s ease;
}

.more-info-module .content a:hover {
  border-bottom: 1px solid transparent;
}

.quote-form .button,
.button.button-outline-white {
  background-color: transparent;
  border: 1px solid white;
  color: white;
  padding: 9px 34px;
}

.quote-form p {
  text-align: right;
}

.two-col-content-image {
  background-color: white;
  position: relative;
}

.two-col-content-image .wrapper {

}

.two-col-content-image .background {
  width: 100%;
  height: 400px;
}

.two-col-content-image .background .image {
  position: relative;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: 50%;
}

.two-col-content-image.image-right .background {
  right: 0;
}

.two-col-content-image.image-left .background {
  left: 0;
}

.ic-content {
  font-size: 18px;
}

.ic-content .btn {
  margin-top: 15px;
}

.two-col-content-image.image-right .ic-content,
.two-col-content-image.image-left .ic-content {
  width: 80%;
  text-align: center;
  margin: 25px auto 0;
  padding-top: 50px;
  padding-bottom: 50px;

}



.two-col-content {
  position: relative;
  background-color: white;
}

.two-col-content .wrapper {

}


.two-col-content .ic-content {
  width: 100%;
  font-size: 18px;
  text-align: center;
  padding-bottom: 50px;
}

.two-col-content .quote-form {
  width: 100%;
  background-color: #cf0a2c;
  text-align: center;
  padding: 50px;
}

.styled-header {
  position: relative;
  font-family: 'SofiaProBold', sans-serif;
  font-size: 34px;
  line-height: 42px;
  margin-bottom: 42px;
  padding-bottom: 28px;
}
.styled-header:after {
  content: '';
  width: 100px;
  height: 5px;
  background-color: #cf0a2c;

  position: absolute;
  bottom: 0;
  left: 50%;

  margin-left: -50px;
}

.styled-header.white {
  color: white;
}
.styled-header.white:after {
  background-color: white;
}

.btn {
  display: inline-block;
  font-family: 'SofiaProMedium', sans-serif;
  padding: 12px 20px 15px;
  background-color: #f5f5f5;
}

.btn.btn-primary {
  background-color: #cf0a2c;
  color: white;
}

@media (min-width: 1200px) {
  .styled-header:after {
    margin-left: 0;
    left: 0;
  }

  .two-col-content-image .wrapper {
    min-height: 650px;
    display: flex;
    align-items: center;
  }

  .two-col-content-image .background {
    position: absolute;
    width: 50%;
    top: 0;
    bottom: 0;
    height: auto;
  }

  .two-col-content-image.image-right .ic-content,
  .two-col-content-image.image-left .ic-content {
    width: 50%;
    text-align: left;
    padding-top: 0;
    padding-bottom: 0;
  }

  .two-col-content-image.image-right .ic-content {
    margin-right: 50%;
    padding-right: 75px;

  }

  .two-col-content-image.image-left .ic-content {
    margin-left: 50%;
    padding-left: 75px;
  }

  .two-col-content .wrapper {
    display: flex;
    align-items: center;
    min-height: 650px;
  }

  .red-bg-right:before {
    content: '';
    width: 50%;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;

    background-color: #cf0a2c
  }

  .two-col-content .ic-content {
    width: 50%;
    font-size: 18px;
    padding-right: 75px;
    padding-bottom: 0px;
    text-align: left;
  }

  .two-col-content .quote-form {
    width: 50%;
    padding: 0;
    padding-left: 75px;
    text-align: left;
  }
}






/** New home page **/
.home-banner-inner-circle {
  margin: 60px auto 100px !important;
  background: #cf0a2c;
  border: 0px;
  border-radius: 100%;
  height: 600px;
  width: 600px;
}

  .home-banner-inner-circle-inner {
    position: relative;
    padding: 70px 0 0;
  }

    .home-banner-inner-circle-inner-icon {
      background-size: contain;
      background-repeat: no-repeat;
      background-position: 50% 50%;

      height: 64px;
      width: 100%;
      margin: 0 auto 40px;
    }

    .home-banner-inner-circle-inner-content {
      margin-bottom: 60px;
    }

    h1.home-hero-heading {
      font-size: 70px;
      line-height: 1;
    }

      h1.home-hero-heading .home-hero-heading-1 {
        display: inline-block;
        line-height: 1.2;
      }

      h1.home-hero-heading .home-hero-heading-2 {
        display: block;
        line-height: 0.9;
      }

      .home-banner-inner-circle-inner-explore {
        margin-bottom: 60px;
      }

      .hero-explore-button {
        text-transform: uppercase;
        color: #fff;
        font-size: 15px;
        display: inline-block;
      }

       .hero-explore-button-img {
        display: block;
        margin: 10px auto;
       }

.homebannerinnercircle-visible {
  opacity: 1 !important;
}

.home .hero:after {
  display: none;
}

.site-intro h1.page-title:after {
  display: none !important;
}

.site-intro h1.page-title {
  margin-bottom: 0 !important;
  padding-bottom: 44px !important;
}

.home .button,
.button.outline {
  background: transparent !important;
  border: 1px solid #cf0a2c !important;
  color: #cf0a2c !important;
  padding: 6px 29px 7px 29px !important;
}

.home-visualise-vid {
  min-height: 750px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  position: relative;
}
  .home-visualise-vid .video-content-hide .introduction p.highlighted {
    font-size: 60px;
    text-align: left;
    line-height: 1.36;
    max-width: 430px;
    padding-top: 130px;
  }

.home-walk-through-video-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: #cf0a2c;

  display: none;
}
  .home-walk-through-video-wrapper .video-wrapper {
    margin-bottom: 0;
  }

  .home-walk-through-video-wrapper .wistia_responsive_padding {
    padding:56.25% 0 0 0;
    position:relative;
  }

  .home-walk-through-video-wrapper .wistia_responsive_wrapper {
    height:100%;
    left:0;
    position:absolute;
    top:0;
    width:100%;
  }

  .home-walk-through-video-wrapper .wistia_embed {
    height:100%;
    width:100%
  }

  .home-quote-section .highlighted {
    font-size: 42px;
    line-height: 1.4;
    font-style: italic;
  }

  .new-recent-project-wrapper {
    overflow: hidden;
    min-height: 750px;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
  }

    .new-recent-project-wrapper .introduction {
      position: relative;
      min-height: 750px;
    }

    .new-recent-project-wrapper .introduction .highlighted {
      font-size: 60px;
      text-align: left;
      line-height: 1.36;
      max-width: 430px;
      padding-top: 130px;
      color: #fff;
    }

    .new-recent-project-circle {
      position: absolute;
      right: 0;
      bottom: 85px;
      background: #fff;
      height: 300px;
      width: 300px;
      padding: 62px 30px 62px 70px;
      border: 1px solid #aaa;
      border-radius: 100%;
      text-align: left;
    }

      .new-recent-project-circle h1.aggregator-title {
        margin-bottom: 0;
        font-family: 'SofiaProMedium';
      }

      .new-recent-project-circle .aggregator-sub-title {
        margin-bottom: 0;
      }

      .new-recent-project-circle .aggregator-sub-title-2 {
        margin-bottom: 0;
        display: block;
        line-height: 1.3;
        padding-top: 12px;
        font-size: 14px;
      }

      .home-close-video {
        background-image: url(../images/close-navigation-icon-positive.svg);
        background-position: center center;
        background-size: contain;
        background-repeat: no-repeat;
        display: inline-block;
        position: absolute;
        right: 56px;
        text-transform: uppercase;
        transition: top 0.5s ease-in-out;
        top: 56px;
        height: 23px;
        width: 23px;
        z-index: 5;
        cursor: pointer;
      }

      .remove-vid {
        background-image: none !important;
      }

      .home-read-more-button {
        display: inline-block;
        margin-top: 12px;
        text-decoration: underline;
        text-transform: uppercase;
        font-family: 'SofiaProMedium';
        font-size: 14px;
      }

      .button.home-walk-through {
        margin-top: 126px;
      }

      .home .first-area-hero.site-intro {
        padding-bottom: 90px;
      }

      .home-quote-section {
        padding-bottom: 65px;
      }


  @media (max-width: 649px) {
    .home-banner-inner-circle {
      height: 300px;
      width: 300px;
    }
    h1.home-hero-heading {
      font-size: 24px;
    }
    .home-banner-inner-circle-inner-icon {
      margin: 0 auto;
    }
    h1.home-hero-heading .home-hero-heading-1,
    h1.home-hero-heading .home-hero-heading-2 {
      display: inline;
    }
    .home-banner-inner-circle-inner-content {

    }
    .home-banner-inner-circle-inner-content,
    .home .home-hero-heading {
      margin-bottom: 20px;
    }
    .home-visualise-vid .video-content-hide .introduction p.highlighted {
      font-size: 24px;
      text-align: center;
    }
    .button.home-walk-through {
      margin-top: 30px;
    }
    .video-content-hide p {
      text-align: center !important;
    }
    .home-visualise-vid {
      min-height: 100% !important;
      padding-bottom: 110px;
    }
    .home-quote-section .highlighted {
      font-size: 24px;
    }
    .new-recent-project-wrapper .introduction .highlighted {
      font-size: 24px;
      text-align: center;
    }
    .new-recent-project-circle {
      position: static;
      padding-left: 30px;
      text-align: center;
      margin: 0 auto;
    }
    .new-recent-project-wrapper .introduction,
    .new-recent-project-wrapper {
      min-height: 100%;
    }
    .new-recent-project-wrapper {
      padding-bottom: 125px;
    }
  }

  @media (max-width: 640px) {
    .main-header .branding {
      opacity: 1;
    }
    .main-header .show-navigation-button:after {
        opacity: 0.5;
        background-image: url(../images/show-navigation-icon-negative.svg);
    }
  }

.terms-title {
  font-size: 1.5rem;
  padding-bottom: 38px;
  text-align: center;
}