@font-face {
  font-weight: normal;
  font-style: normal;
  font-family: "ClarityCity-Regular";
  src: url("../fonts/ClarityCity-Regular.eot");
  src: url("../fonts/ClarityCity-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/ClarityCity-Regular.woff2") format("woff2"), url("../fonts/ClarityCity-Regular.woff") format("woff"), url("../fonts/ClarityCity-Regular.ttf") format("truetype");
}
@font-face {
  font-weight: 500;
  font-style: normal;
  font-family: "ClarityCity-Regular";
  src: url("../fonts/ClarityCity-Medium.eot");
  src: url("../fonts/ClarityCity-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/ClarityCity-Medium.woff2") format("woff2"), url("../fonts/ClarityCity-Medium.woff") format("woff"), url("../fonts/ClarityCity-Medium.ttf") format("truetype");
}
@font-face {
  font-weight: normal;
  font-style: italic;
  font-family: "ClarityCity-Regular";
  src: url("../fonts/ClarityCity-RegularItalic.eot");
  src: url("../fonts/ClarityCity-RegularItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/ClarityCity-RegularItalic.woff2") format("woff2"), url("../fonts/ClarityCity-RegularItalic.woff") format("woff"), url("../fonts/ClarityCity-RegularItalic.ttf") format("truetype");
}
@font-face {
  font-weight: 300;
  font-style: normal;
  font-family: "ClarityCity-Regular";
  src: url("../fonts/ClarityCity-Light.eot");
  src: url("../fonts/ClarityCity-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/ClarityCity-Light.woff2") format("woff2"), url("../fonts/ClarityCity-Light.woff") format("woff"), url("../fonts/ClarityCity-Light.ttf") format("truetype");
}
@font-face {
  font-weight: bold;
  font-style: normal;
  font-family: "ClarityCity-Regular";
  src: url("../fonts/ClarityCity-Bold.eot");
  src: url("../fonts/ClarityCity-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/ClarityCity-Bold.woff2") format("woff2"), url("../fonts/ClarityCity-Bold.woff") format("woff"), url("../fonts/ClarityCity-Bold.ttf") format("truetype");
}
@font-face {
  font-weight: normal;
  font-style: normal;
  font-family: "Site Icons";
  src: url("../fonts/icomoon.eot");
  src: url("../fonts/icomoon.eot?#iefix") format("embedded-opentype"), url("../fonts/icomoon.woff") format("woff"), url("../fonts/icomoon.ttf") format("truetype"), url("../fonts/icomoon.svg") format("svg");
}
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video,
button {
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  margin: 0;
  padding: 0;
}

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

body {
  line-height: 1;
}

body,
input[type=submit],
input[type=button],
button {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a {
  text-decoration: none;
  color: inherit;
}

ol,
ul {
  list-style: none;
}

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

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

input[type=text],
input[type=email],
input[type=password],
input[type=number],
input[type=color],
input[type=submit],
input[type=button],
button,
textarea,
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  display: block;
  border: none;
  border-radius: 0;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 1rem;
  line-height: 1;
  background: none;
}

input[type=radio],
input[type=checkbox],
input[type=color],
input[type=submit],
input[type=button],
button,
select {
  cursor: pointer;
}

textarea {
  resize: none;
}

strong,
b {
  font-weight: bold;
}

em,
i,
.i {
  font-style: italic;
}

.media-container--contact, .media-container--large, .media-container, .flex-container--project, .flex-container {
  position: relative;
  height: 0;
  overflow: hidden;
}
.media-container--contact iframe, .media-container--large iframe, .media-container iframe, .flex-container--project iframe, .flex-container iframe,
.media-container--contact object,
.media-container--large object,
.media-container object,
.flex-container--project object,
.flex-container object {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@-webkit-keyframes bounce {
  0%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
}

@keyframes bounce {
  0%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
}
.grid {
  margin-left: -32px;
}
.grid--small {
  margin-left: -16px;
}
.grid--small > .grid__item {
  padding-left: 16px;
}
.grid--ar {
  text-align: right;
}
.grid--centred {
  text-align: center;
}
.grid--large {
  margin-left: -64px;
}
.grid--large > .grid__item {
  padding-left: 64px;
}
@media only screen and (max-width: 649px) {
  .grid--large {
    margin-left: -32px;
  }
  .grid--large > .grid__item {
    padding-left: 32px;
  }
}

.grid__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-left: 32px;
}

img,
object,
video,
audio {
  max-width: 100%;
}

img {
  height: auto;
  display: block;
}

.flex-container {
  padding-bottom: 56.25%;
}
.flex-container--project {
  padding-bottom: 74.0740740741%;
}
@media only screen and (max-width: 799px) {
  .flex-container--responsive {
    padding-bottom: 178.0564263323%;
  }
}

.media-container {
  padding-bottom: 36%;
}
@media only screen and (max-width: 649px) {
  .media-container {
    padding-bottom: 120%;
  }
}

.media-container--large {
  padding-bottom: 64.2857142857%;
}
@media only screen and (max-width: 649px) {
  .media-container--large {
    padding-bottom: 120%;
  }
}

.media-container--contact {
  padding-bottom: 50%;
}

.text-link::before, .text-link::after, .search__input-container button::before, .search__input-container::before, .pillar__qa-button::after, .pagination__nav a::before,
.pagination__nav span::before, .nav__link::after, .nav__control::before, .insight-listing--audio .insight-listing__inner::after, .insight-listing--video .insight-listing__inner::after, .insight-filters__toggle::after, .insight-author-overlay__close::before, .hero__control::before, .header__nav-toggle::after, .search-open .header__search-toggle::before, .header__search-toggle::before, .framework__link::after, .filter__checkbox input[type=checkbox] + label::after, .filter__remove::after, .filter-nav--inline a.selected::after, .filter-nav__item a.selected::after, .filter__clear::after, .filter__close::before, .filter__button--toggle::before, .filter__button::before, .featured-insight__overlay::after, .dropdown__item--selected::after, .dropdown__toggler::after, .carousel__button::before, .block__link-text::after, .benefit__icon::before, .back-link::before, .accordion--story .accordion__button::after, .accordion--filter .accordion__button::after, .accordion--nav .accordion__button::after, .accordion--footer .accordion__button::after, .article-action::before, .a-2::after, .scroll-link::after, .icon::before,
.icon-end::after {
  font-family: "Site Icons";
  vertical-align: middle;
  speak: none;
  font-weight: normal;
  font-style: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
}

.nav__control--menu.toggler--toggled::before, .insight-author-overlay__close::before, .m-nav-open .header__nav-toggle::after, .search-open .header__search-toggle::before, .filter__checkbox input[type=checkbox] + label::after, .filter__remove::after, .filter-nav--inline a.selected::after, .filter-nav__item a.selected::after, .filter__clear::after, .filter__close::before, .icon--close::before,
.icon-end--close::after {
  content: "\e900";
}

.nav__link--submenu::after, .dropdown__toggler::after, .accordion--story .accordion__button::after, .accordion--filter .accordion__button::after, .accordion--nav .accordion__button::after, .accordion--footer .accordion__button::after, .icon--down::before,
.icon-end--down::after {
  content: "\e901";
}

.article-action--download::before, .icon--download::before,
.icon-end--download::after {
  content: "\e902";
}

.icon--left-arrow::before,
.icon-end--left-arrow::after {
  content: "\e903";
}

.icon--map-pin::before,
.icon-end--map-pin::after {
  content: "\e904";
}

.nav__control--menu::before, .header__nav-toggle::after, .icon--menu::before,
.icon-end--menu::after {
  content: "\e5d2";
}

.icon--right-arrow::before,
.icon-end--right-arrow::after {
  content: "\e905";
}

.search__input-container::before, .nav__control--search::before, .header__search-toggle::before, .icon--search::before,
.icon-end--search::after {
  content: "\e909";
}

.icon--twitter::before,
.icon-end--twitter::after {
  content: "\e600";
}

.icon--facebook::before,
.icon-end--facebook::after {
  content: "\e601";
}

.icon--instagram::before,
.icon-end--instagram::after {
  content: "\e602";
}

.icon--linkedin::before,
.icon-end--linkedin::after {
  content: "\e908";
}

.pillar__qa-button::after, .featured-insight__overlay::after, .accordion--story .accordion__button::after, .icon--plus::before,
.icon-end--plus::after {
  content: "\e915";
}

.insight-listing--video .insight-listing__inner::after, .icon--play::before,
.icon-end--play::after {
  content: "\e907";
}

.insight-listing--audio .insight-listing__inner::after, .icon--audio::before,
.icon-end--audio::after {
  content: "\e90a";
}

.insight-filters-open .insight-filters__toggle::after, .icon--filters-open::before,
.icon-end--filters-open::after {
  content: "\e932";
}

.insight-filters__toggle::after, .icon--filters-closed::before,
.icon-end--filters-closed::after {
  content: "\e933";
}

.icon--send-email::before,
.icon-end--send-email::after {
  content: "\e90b";
}

.hero__control--pause::before, .icon--pause::before,
.icon-end--pause::after {
  content: "\e90d";
}

.icon--mute::before,
.icon-end--mute::after {
  content: "\e90e";
}

.filter__button--toggle::before, .icon--filter::before,
.icon-end--filter::after {
  content: "\e90f";
}

.hero__control--down::before, .scroll-link::after, .icon--down-arrow::before,
.icon-end--down-arrow::after {
  content: "\e910";
}

.text-link::before, .text-link::after, .search__input-container button::before, .pagination__nav--prev a::before,
.pagination__nav--prev span::before, .pagination__nav--next a::before,
.pagination__nav--next span::before, .nav__link--arrow::after, .framework__link--internal::after, .carousel__button--next::before, .block__link-text::after, .back-link::before, .a-2::after, .icon--forward::before,
.icon-end--forward::after {
  content: "\e911";
}

.framework__link--external::after, .icon--external::before,
.icon-end--external::after {
  content: "\e912";
}

.hero__control--pause.paused::before, .icon--playing::before,
.icon-end--playing::after {
  content: "\e90c";
}

.icon--sort::before,
.icon-end--sort::after {
  content: "\e913";
}

.pillar__qa-button.active::after, .accordion--story .accordion__button.active::after, .icon--minus::before,
.icon-end--minus::after {
  content: "\e914";
}

.dropdown__item--selected::after, .icon--check::before,
.icon-end--check::after {
  content: "\e916";
}

.benefit__icon--calendar::before, .icon--calendar::before,
.icon-end--calendar::after {
  content: "\e917";
}

.benefit__icon--events::before, .icon--events::before,
.icon-end--events::after {
  content: "\e918";
}

.benefit__icon--health::before, .icon--health::before,
.icon-end--health::after {
  content: "\e919";
}

.benefit__icon--ladder::before, .icon--ladder::before,
.icon-end--ladder::after {
  content: "\e91a";
}

.benefit__icon--mortarboard::before, .icon--mortarboard::before,
.icon-end--mortarboard::after {
  content: "\e91b";
}

.benefit__icon--office::before, .icon--office::before,
.icon-end--office::after {
  content: "\e91c";
}

.carousel__button--prev::before, .icon--back::before,
.icon-end--back::after {
  content: "\e91d";
}

.icon--foward::before,
.icon-end--foward::after {
  content: "\e91e";
}

.a1-12 {
  width: 8.3333333333%;
}

.a2-12 {
  width: 16.6666666667%;
}

.a3-12 {
  width: 25%;
}

.a4-12 {
  width: 33.3333333333%;
}

.a5-12 {
  width: 41.6666666667%;
}

.a6-12 {
  width: 50%;
}

.a7-12 {
  width: 58.3333333333%;
}

.a8-12 {
  width: 66.6666666667%;
}

.a9-12 {
  width: 75%;
}

.a10-12 {
  width: 83.3333333333%;
}

.a11-12 {
  width: 91.6666666667%;
}

.a12-12 {
  width: 100%;
}

.a1-9 {
  width: 11.1111111111%;
}

.a2-9 {
  width: 22.2222222222%;
}

.a3-9 {
  width: 33.3333333333%;
}

.a4-9 {
  width: 44.4444444444%;
}

.a5-9 {
  width: 55.5555555556%;
}

.a6-9 {
  width: 66.6666666667%;
}

.a7-9 {
  width: 77.7777777778%;
}

.a8-9 {
  width: 88.8888888889%;
}

.a9-9 {
  width: 100%;
}

@media only screen and (max-width: 1539px) {
  .b1-12 {
    width: 8.3333333333%;
  }
  .b2-12 {
    width: 16.6666666667%;
  }
  .b3-12 {
    width: 25%;
  }
  .b4-12 {
    width: 33.3333333333%;
  }
  .b5-12 {
    width: 41.6666666667%;
  }
  .b6-12 {
    width: 50%;
  }
  .b7-12 {
    width: 58.3333333333%;
  }
  .b8-12 {
    width: 66.6666666667%;
  }
  .b9-12 {
    width: 75%;
  }
  .b10-12 {
    width: 83.3333333333%;
  }
  .b11-12 {
    width: 91.6666666667%;
  }
  .b12-12 {
    width: 100%;
  }
}
@media only screen and (max-width: 1279px) {
  .c1-12 {
    width: 8.3333333333%;
  }
  .c2-12 {
    width: 16.6666666667%;
  }
  .c3-12 {
    width: 25%;
  }
  .c4-12 {
    width: 33.3333333333%;
  }
  .c5-12 {
    width: 41.6666666667%;
  }
  .c6-12 {
    width: 50%;
  }
  .c7-12 {
    width: 58.3333333333%;
  }
  .c8-12 {
    width: 66.6666666667%;
  }
  .c9-12 {
    width: 75%;
  }
  .c10-12 {
    width: 83.3333333333%;
  }
  .c11-12 {
    width: 91.6666666667%;
  }
  .c12-12 {
    width: 100%;
  }
}
@media only screen and (max-width: 1099px) {
  .d1-6 {
    width: 16.6666666667%;
  }
  .d2-6 {
    width: 33.3333333333%;
  }
  .d3-6 {
    width: 50%;
  }
  .d4-6 {
    width: 66.6666666667%;
  }
  .d5-6 {
    width: 83.3333333333%;
  }
  .d6-6 {
    width: 100%;
  }
  .d1-9 {
    width: 11.1111111111%;
  }
  .d2-9 {
    width: 22.2222222222%;
  }
  .d3-9 {
    width: 33.3333333333%;
  }
  .d4-9 {
    width: 44.4444444444%;
  }
  .d5-9 {
    width: 55.5555555556%;
  }
  .d6-9 {
    width: 66.6666666667%;
  }
  .d7-9 {
    width: 77.7777777778%;
  }
  .d8-9 {
    width: 88.8888888889%;
  }
  .d9-9 {
    width: 100%;
  }
  .d1-12 {
    width: 8.3333333333%;
  }
  .d2-12 {
    width: 16.6666666667%;
  }
  .d3-12 {
    width: 25%;
  }
  .d4-12 {
    width: 33.3333333333%;
  }
  .d5-12 {
    width: 41.6666666667%;
  }
  .d6-12 {
    width: 50%;
  }
  .d7-12 {
    width: 58.3333333333%;
  }
  .d8-12 {
    width: 66.6666666667%;
  }
  .d9-12 {
    width: 75%;
  }
  .d10-12 {
    width: 83.3333333333%;
  }
  .d11-12 {
    width: 91.6666666667%;
  }
  .d12-12 {
    width: 100%;
  }
}
@media only screen and (max-width: 799px) {
  .f1-6 {
    width: 16.6666666667%;
  }
  .f2-6 {
    width: 33.3333333333%;
  }
  .f3-6 {
    width: 50%;
  }
  .f4-6 {
    width: 66.6666666667%;
  }
  .f5-6 {
    width: 83.3333333333%;
  }
  .f6-6 {
    width: 100%;
  }
}
@media only screen and (max-width: 649px) {
  .g1-12 {
    width: 8.3333333333%;
  }
  .g2-12 {
    width: 16.6666666667%;
  }
  .g3-12 {
    width: 25%;
  }
  .g4-12 {
    width: 33.3333333333%;
  }
  .g5-12 {
    width: 41.6666666667%;
  }
  .g6-12 {
    width: 50%;
  }
  .g7-12 {
    width: 58.3333333333%;
  }
  .g8-12 {
    width: 66.6666666667%;
  }
  .g9-12 {
    width: 75%;
  }
  .g10-12 {
    width: 83.3333333333%;
  }
  .g11-12 {
    width: 91.6666666667%;
  }
  .g12-12 {
    width: 100%;
  }
  .g1-6 {
    width: 16.6666666667%;
  }
  .g2-6 {
    width: 33.3333333333%;
  }
  .g3-6 {
    width: 50%;
  }
  .g4-6 {
    width: 66.6666666667%;
  }
  .g5-6 {
    width: 83.3333333333%;
  }
  .g6-6 {
    width: 100%;
  }
}
@media only screen and (max-width: 449px) {
  .h1-12 {
    width: 8.3333333333%;
  }
  .h2-12 {
    width: 16.6666666667%;
  }
  .h3-12 {
    width: 25%;
  }
  .h4-12 {
    width: 33.3333333333%;
  }
  .h5-12 {
    width: 41.6666666667%;
  }
  .h6-12 {
    width: 50%;
  }
  .h7-12 {
    width: 58.3333333333%;
  }
  .h8-12 {
    width: 66.6666666667%;
  }
  .h9-12 {
    width: 75%;
  }
  .h10-12 {
    width: 83.3333333333%;
  }
  .h11-12 {
    width: 91.6666666667%;
  }
  .h12-12 {
    width: 100%;
  }
  .h1-6 {
    width: 16.6666666667%;
  }
  .h2-6 {
    width: 33.3333333333%;
  }
  .h3-6 {
    width: 50%;
  }
  .h4-6 {
    width: 66.6666666667%;
  }
  .h5-6 {
    width: 83.3333333333%;
  }
  .h6-6 {
    width: 100%;
  }
}
.cookie-banner__button, .cookie-manager__button {
  font-size: 1.25rem;
  line-height: 1.4;
  border: 1px solid #0D1E00;
  border-radius: 1.5rem;
  color: #0D1E00;
  display: inline-block;
  padding: 0.5rem 1rem;
  text-align: center;
  width: auto;
}

.cookie-manager {
  font-size: 0.875rem;
  line-height: 1.4;
}
.cookie-manager h2,
.cookie-manager h3,
.cookie-manager h4 {
  margin-bottom: 0.5rem;
}
.cookie-manager h2 {
  font-size: 1.5rem;
  line-height: 1.3;
}
.cookie-manager h3 {
  font-size: 1.5rem;
  line-height: 1.3;
}
.cookie-manager h4 {
  font-size: 1.25rem;
  line-height: 1.4;
}
.cookie-manager p {
  font-size: 1.125rem;
  margin-bottom: 1rem;
}
.cookie-manager a {
  color: rgba(0, 0, 0, 0.75);
  text-decoration: underline;
}
.cookie-manager--overlay-mode h3 {
  font-size: 1.125rem;
  line-height: 1.25;
}
.cookie-manager--overlay-mode p {
  font-size: 1rem;
}

.cookie-manager--overlay-mode {
  background-color: rgba(0, 0, 0, 0.55);
  bottom: 0;
  display: none;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  left: 0;
  padding: 4.5rem;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1000;
}
@media only screen and (max-width: 699px) {
  .cookie-manager--overlay-mode {
    padding: 0.5rem;
  }
}
.cookie-manager-open .cookie-manager--overlay-mode {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.cookie-manager__button-parent {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
}
.cookie-manager--overlay-mode .cookie-manager__button-parent {
  max-width: 640px;
  position: relative;
}

.cookie-manager__scroller {
  background-color: #fff;
}
.cookie-manager--overlay-mode .cookie-manager__scroller {
  bottom: 0;
  left: 0;
  overflow: auto;
  position: absolute;
  right: 0;
  top: 0;
}

.cookie-manager__container {
  color: rgba(0, 0, 0, 0.75);
  padding: 2.5rem;
}
.cookie-manager__container--spaced {
  padding: 2.5rem 0;
}
.cookie-manager__container--spaced p {
  margin-bottom: 1.5rem;
}
.cookie-manager--overlay-mode .cookie-manager__container {
  padding-bottom: 10rem;
}
@media only screen and (max-width: 699px) {
  .cookie-manager__container--spaced {
    padding: 1.5rem;
  }
}

.cookie-manager__title-hidden {
  left: -999rem;
  position: absolute;
  visibility: hidden;
}

.cookie-manager__logo {
  background: url("../img/logo-brand.svg") no-repeat 0 0;
  background-size: contain;
  height: 40px;
  margin-bottom: 2rem;
  opacity: 0.8;
  width: 200px;
}

.cookie-manager__category-list {
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  margin-bottom: 1rem;
  padding-bottom: 1rem;
}
.cookie-manager__category-list--spaced {
  margin-bottom: 2rem;
  padding-bottom: 2rem;
}

.cookie-manager__category {
  border-top: 1px solid rgba(255, 255, 255, 0.3);
  margin-top: 1rem;
  padding-top: 1rem;
}
.cookie-manager__category-list--spaced .cookie-manager__category {
  margin-top: 2rem;
  padding-top: 2rem;
}

.cookie-manager__category-info,
.cookie-manager__provider-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 0.5rem;
  margin-left: -1rem;
}
.cookie-manager__category-info > div,
.cookie-manager__provider-info > div {
  margin-left: 1rem;
}

@media only screen and (max-width: 699px) {
  .cookie-manager__category-info {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .cookie-manager--overlay-mode .cookie-manager__category-info {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.cookie-manager__category-buttons {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.cookie-manager__button-container {
  background-color: #fff;
  bottom: 0;
  -webkit-box-shadow: 0 -4px 16px rgba(255, 255, 255, 0.2);
          box-shadow: 0 -4px 16px rgba(255, 255, 255, 0.2);
  display: none;
  left: 0;
  padding: 1rem 83px;
  position: fixed;
  right: 0;
  z-index: 1001;
}
.cookie-manager__button-container::before {
  background: -webkit-gradient(linear, left bottom, left top, color-stop(16%, rgb(255, 255, 255)), to(rgba(0, 0, 0, 0)));
  background: linear-gradient(0deg, rgb(255, 255, 255) 16%, rgba(0, 0, 0, 0) 100%);
  bottom: 100%;
  content: "";
  display: block;
  height: 0;
  left: 0;
  pointer-events: none;
  position: absolute;
  width: 100%;
}
.cookie-manager--overlay-mode .cookie-manager__button-container {
  padding: 1.5rem 2.5rem;
  position: absolute;
}
.cookie-manager--overlay-mode .cookie-manager__button-container::before {
  height: 117px;
}
.cookie-manager-buttons-visible .cookie-manager__button-container {
  display: block;
}
@media only screen and (max-width: 1539px) {
  .cookie-manager__button-container {
    padding: 1rem 40px;
  }
}
@media only screen and (max-width: 1099px) {
  .cookie-manager__button-container {
    padding: 1rem 40px;
  }
}

.cookie-manager__buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-bottom: 0.875rem;
}

.cookie-manager-save-changes .cookie-manager__buttons-accept-deny {
  display: none;
}

.cookie-manager__buttons-save-deny {
  display: none;
}
.cookie-manager-save-changes .cookie-manager__buttons-save-deny {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.cookie-manager__button {
  margin-right: 0.5rem;
  max-width: 400px;
  white-space: nowrap;
}
.cookie-manager__button:last-of-type {
  margin-right: 0;
}
.cookie-manager__button--primary {
  background-color: #0D1E00;
  color: #fff;
}

.cookie-manager__cookie-table {
  background-color: #fff;
  border-radius: 4px;
  color: rgba(0, 0, 0, 0.75);
  margin-bottom: 2rem;
  width: 100%;
}
@media only screen and (max-width: 699px) {
  .cookie-manager__cookie-table {
    background: none;
  }
}
@media only screen and (max-width: 699px) {
  .cookie-manager__cookie-table thead {
    display: block;
    height: 0;
    visibility: hidden;
  }
}
@media only screen and (max-width: 699px) {
  .cookie-manager__cookie-table tbody {
    display: block;
  }
}
.cookie-manager__cookie-table tbody tr:last-child th,
.cookie-manager__cookie-table tbody tr:last-child td {
  border-bottom: 0;
}
@media only screen and (max-width: 699px) {
  .cookie-manager__cookie-table tr {
    background-color: #fff;
    border-radius: 4px;
    display: block;
    margin-bottom: 0.5rem;
    padding: 0.75rem;
  }
}
.cookie-manager__cookie-table th,
.cookie-manager__cookie-table td {
  border-bottom: 1px solid rgba(0, 0, 0, 0.75);
  padding: 0.75rem;
}
.cookie-manager__cookie-table th {
  font-weight: bold;
}
@media only screen and (max-width: 699px) {
  .cookie-manager__cookie-table td {
    display: block;
    margin-top: 0.75rem;
    padding: 0;
  }
  .cookie-manager__cookie-table td:first-child {
    margin-top: 0;
  }
  .cookie-manager__cookie-table td::before {
    content: attr(data-label);
    display: block;
    font-weight: bold;
  }
}

.cookie-manager__bullet-list {
  margin-bottom: 1rem;
}
.cookie-manager__bullet-list li {
  list-style: disc inside;
}

.cookie-manager__lightswitch {
  display: block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  height: 1rem;
  margin: 0 auto 0.5rem;
  position: relative;
  width: 1.75rem;
}
.cookie-manager__lightswitch input {
  height: 0;
  opacity: 0;
  width: 0;
}
.cookie-manager__lightswitch input:checked + .cookie-manager__lightswitch-slider {
  background-color: #F7D417;
}
.cookie-manager__lightswitch input:checked + .cookie-manager__lightswitch-slider::before {
  -webkit-transform: translateX(0.75rem);
          transform: translateX(0.75rem);
}
.cookie-manager__lightswitch input:checked + .cookie-manager__lightswitch-slider::after {
  content: "On";
}
.cookie-manager__lightswitch input:focus + .cookie-manager__lightswitch-slider {
  -webkit-box-shadow: 0 0 1px #F7D417;
          box-shadow: 0 0 1px #F7D417;
}
.cookie-manager__lightswitch--global input:checked + .cookie-manager__lightswitch-slider::after {
  content: "Accept all";
}

.cookie-manager__lightswitch-slider {
  background-color: rgba(13, 30, 0, 0.3);
  border-radius: 1rem;
  bottom: 0;
  cursor: pointer;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.cookie-manager__lightswitch-slider::before {
  background-color: #0D1E00;
  border-radius: 1rem;
  bottom: 0.125rem;
  content: "";
  height: 0.75rem;
  left: 0.125rem;
  position: absolute;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  width: 0.75rem;
}
.cookie-manager__lightswitch-slider::after {
  font-size: 0.75rem;
  content: "Off";
  left: 0;
  position: absolute;
  right: 0;
  text-align: center;
  text-transform: uppercase;
  top: 1.5rem;
  white-space: nowrap;
}
.cookie-manager__lightswitch--global .cookie-manager__lightswitch-slider::after {
  content: "Deny all";
  left: -60%;
}

.cookie-consent-wrapper__blocked {
  background-color: #fff;
  border: 2px solid #EDEDED;
  border-radius: 4px;
  margin: 0 auto;
  max-width: 360px;
  padding: 2.5rem;
  text-align: center;
}

.cookie-consent-wrapper__unblocked {
  display: none;
}

.cookie-banner {
  font-size: 0.875rem;
  background-color: rgba(0, 0, 0, 0.55);
  bottom: 0;
  color: rgba(0, 0, 0, 0.75);
  display: none;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1000;
}
.cookie-banner-open .cookie-banner {
  display: block;
}
.cookie-banner a {
  color: rgba(0, 0, 0, 0.75);
  text-decoration: underline;
}

.cookie-banner__inner {
  background-color: #fff;
  bottom: 2.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 auto;
  max-width: 548px;
  padding: 2rem;
  position: absolute;
  right: 2.5rem;
}
.cookie-banner__inner p {
  margin-bottom: 1rem;
}
@media only screen and (max-width: 799px) {
  .cookie-banner__inner {
    bottom: 0;
    max-width: 100%;
    right: initial;
    -webkit-transform: none;
            transform: none;
  }
}

.cookie-banner__title {
  font-size: 1.125rem;
  line-height: 1.25;
  font-weight: bold;
}

.cookie-banner__buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1rem;
  width: 100%;
}

.cookie-banner__button {
  margin-right: 0.5rem;
}
.cookie-banner__button--primary {
  background-color: #0D1E00;
  color: #fff;
}

.cookie-banner__button-customise {
  color: inherit;
  font-size: inherit;
  text-align: left;
  text-decoration: underline;
}

.hero__inner,
.container {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 auto;
  max-width: 1920px;
  padding: 0 83px;
}
@media only screen and (max-width: 1539px) {
  .hero__inner,
.container {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (max-width: 649px) {
  .hero__inner,
.container {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.container--full-bleed {
  padding: 0;
}

.container--space-header {
  padding-top: 135px;
}

.container--space-filter {
  padding-top: 5rem;
}
@media only screen and (max-width: 799px) {
  .container--space-filter {
    padding-top: 2.5rem;
  }
}

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 1;
      flex-shrink: 1;
}
.flex--wrap {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.flex--column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.flex--row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.flex--align-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.flex--align-end {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.flex--align-baseline {
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}
.flex--justify-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.flex--justify-end {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.flex--justify-space-between {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.flex--col-gap-8 {
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
}
.flex--col-gap-12 {
  -webkit-column-gap: 0.75rem;
     -moz-column-gap: 0.75rem;
          column-gap: 0.75rem;
}
.flex--col-gap-16 {
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
}
.flex--col-gap-32 {
  -webkit-column-gap: 2rem;
     -moz-column-gap: 2rem;
          column-gap: 2rem;
}
.flex--benefit-gap {
  row-gap: 3rem;
}
@media only screen and (max-width: 799px) {
  .flex--benefit-gap {
    row-gap: 1rem;
  }
}
@media only screen and (max-width: 1099px) {
  .flex--justify-center-d {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .flex--row-gap-32-d {
    row-gap: 2rem;
  }
}
@media only screen and (max-width: 799px) {
  .flex--align-top-f {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .flex--align-center-f {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .flex--space-between-f {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .flex--col-gap-8-f {
    -webkit-column-gap: 0.5rem;
       -moz-column-gap: 0.5rem;
            column-gap: 0.5rem;
  }
  .flex--col-gap-4-f {
    -webkit-column-gap: 0.25rem;
       -moz-column-gap: 0.25rem;
            column-gap: 0.25rem;
  }
}
@media only screen and (max-width: 649px) {
  .flex--column-g {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .flex--column-reverse-g {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}

@media only screen and (max-width: 649px) {
  .flex-responsive {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .flex-responsive--column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

@media only screen and (max-width: 649px) {
  .flex-order--1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .flex-order--2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .flex-order--3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}

.invisible {
  left: -999rem;
  position: absolute;
}

.removed {
  display: none;
}

.display-block {
  display: block;
}

.hidden {
  visibility: hidden;
}

.inline {
  display: inline-block;
}

.relative {
  position: relative;
}

@media only screen and (max-width: 799px) {
  .removed-f {
    display: none;
  }
}

.hide-desktop {
  display: none;
}
@media only screen and (max-width: 799px) {
  .hide-desktop {
    display: block;
  }
}

.fw {
  width: 100%;
}

.fh {
  height: 100%;
}

.vh-100 {
  max-height: 100vh;
}

.obj-cover {
  -o-object-fit: cover;
     object-fit: cover;
}

.m-b--05 {
  margin-bottom: 0.5rem;
}

.m-b {
  margin-bottom: 1rem;
}

.m-b--2 {
  margin-bottom: 2rem;
}
@media only screen and (max-width: 449px) {
  .m-b--2 {
    margin-bottom: 1.5rem;
  }
}

.m-b--3 {
  margin-bottom: 3rem;
}
@media only screen and (max-width: 649px) {
  .m-b--3 {
    margin-bottom: 1.5rem;
  }
}

.m-b--4 {
  margin-bottom: 4rem;
}
@media only screen and (max-width: 1099px) {
  .m-b--4 {
    margin-bottom: 2rem;
  }
}

.m-t--2 {
  margin-top: 2rem;
}

.m-t--3 {
  margin-top: 3rem;
}
@media only screen and (max-width: 649px) {
  .m-t--3 {
    margin-top: 2rem;
  }
}

.two-columns {
  -webkit-column-gap: 83px;
     -moz-column-gap: 83px;
          column-gap: 83px;
  -webkit-columns: auto 2;
     -moz-columns: auto 2;
          columns: auto 2;
}

.three-columns {
  -webkit-column-gap: 83px;
     -moz-column-gap: 83px;
          column-gap: 83px;
  -webkit-columns: auto 3;
     -moz-columns: auto 3;
          columns: auto 3;
}
@media only screen and (max-width: 649px) {
  .three-columns {
    -webkit-columns: auto;
       -moz-columns: auto;
            columns: auto;
  }
}

@media only screen and (max-width: 1099px) {
  .sep-bb {
    margin-bottom: 1.5rem;
  }
}

@media only screen and (max-width: 649px) {
  .sep-c {
    margin-bottom: 1.5rem;
  }
}

@media only screen and (max-width: 449px) {
  .sep-d {
    margin-bottom: 1.5rem;
  }
}

.sep-64-c {
  margin-bottom: 4rem;
}
@media only screen and (max-width: 649px) {
  .sep-64-c {
    margin-bottom: 2rem;
  }
}

.bar {
  position: relative;
}
.bar__right {
  position: absolute;
  right: 0;
  top: 0.5rem;
}
@media only screen and (max-width: 649px) {
  .bar__right {
    display: block;
    margin-bottom: 1rem;
    position: static;
  }
}

.bt {
  border-top: 1px solid #3c3c3b;
  padding-top: 2rem;
}

.center {
  margin: 0 auto;
}

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

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

@media only screen and (max-width: 649px) {
  .hide-c {
    display: none;
  }
}

.offset-filter {
  margin-top: 6rem;
}
@media only screen and (max-width: 649px) {
  .offset-filter {
    margin-top: 0;
  }
}

@media only screen and (max-width: 649px) {
  .absolute-responsive {
    position: absolute;
  }
}

.mb-8 {
  margin-bottom: 0.5rem;
}

.mb-16 {
  margin-bottom: 1rem;
}

.mb-24 {
  margin-bottom: 1.5rem;
}

.mb-32 {
  margin-bottom: 2rem;
}

.mb-40 {
  margin-bottom: 2.5rem;
}

.mb-48 {
  margin-bottom: 3rem;
}

.mb-64 {
  margin-bottom: 4rem;
}

.mb-80 {
  margin-bottom: 5rem;
}

.mb-120 {
  margin-bottom: 7.5rem;
}

.mb-128 {
  margin-bottom: 8rem;
}

.mb-160 {
  margin-bottom: 10rem;
}

.mb-200 {
  margin-bottom: 12.5rem;
}

@media only screen and (max-width: 649px) {
  .mb-c-32 {
    margin-bottom: 2rem;
  }
}

@media only screen and (max-width: 1099px) {
  .mb-d-0 {
    margin-bottom: 0;
  }
}

@media only screen and (max-width: 1099px) {
  .mb-d-24 {
    margin-bottom: 1.5rem;
  }
}

@media only screen and (max-width: 1099px) {
  .mb-d-64 {
    margin-bottom: 4rem;
  }
}

@media only screen and (max-width: 799px) {
  .mb-f-24 {
    margin-bottom: 1.5rem;
  }
}

@media only screen and (max-width: 799px) {
  .mb-f-32 {
    margin-bottom: 2rem;
  }
}

@media only screen and (max-width: 649px) {
  .mb-g-16 {
    margin-bottom: 1rem;
  }
}

@media only screen and (max-width: 649px) {
  .mb-g-32 {
    margin-bottom: 2rem;
  }
}

@media only screen and (max-width: 649px) {
  .mb-g-56 {
    margin-bottom: 3.5rem;
  }
}

@media only screen and (max-width: 649px) {
  .mb-g-64 {
    margin-bottom: 4rem;
  }
}

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

.mt-32 {
  margin-top: 2rem;
}

.tag, .listing__tag {
  border: 1px solid #0D1E00;
  border-radius: 1.5rem;
  display: inline-block;
  margin-bottom: 1rem;
  padding: 0.25rem 0.75rem;
}

.scroll-link {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 3rem;
}
.scroll-link::after {
  font-size: 1.5rem;
  line-height: 1.3;
}

.hero__content p,
.page-heading {
  font-size: 5.5rem;
  line-height: 1.09;
  font-weight: 500;
  letter-spacing: -1px;
  margin-bottom: 2.5rem;
}
.page-heading--bold {
  font-weight: 500;
}
.page-heading--spaced {
  margin-bottom: 3rem;
}
.page-heading--reduce-margin {
  margin-bottom: 0.5rem;
}
@media only screen and (max-width: 799px) {
  .hero__content p,
.page-heading {
    font-size: 2rem;
    line-height: 1.25;
    margin-bottom: 1.5rem;
  }
  .page-heading--reduce-margin {
    margin-bottom: 0.5rem;
  }
}

.subheading {
  color: rgba(0, 0, 0, 0.75);
}

.theta {
  font-size: 1rem;
  line-height: 1.25;
}
@media only screen and (max-width: 799px) {
  .theta {
    font-size: 0.875rem;
    line-height: 1.4;
  }
}

.gamma {
  font-size: 2rem;
}
@media only screen and (max-width: 799px) {
  .gamma {
    font-size: 1rem;
  }
}

.light {
  font-weight: 300;
}

.medium {
  font-weight: 500;
}

.h-2,
.timeline__year,
.typeset h4,
.typeset h3,
.typeset h2 {
  font-size: 3.5rem;
  line-height: 1.1;
  color: #000;
  font-weight: 500;
  letter-spacing: -1px;
}
.h-2--dark {
  color: #3c3c3b;
}
@media only screen and (max-width: 799px) {
  .h-2,
.timeline__year,
.typeset h4,
.typeset h3,
.typeset h2 {
    font-size: 1.5rem;
    line-height: 1.3;
  }
}

.h-3 {
  font-size: 2.5rem;
  line-height: 1.2;
  letter-spacing: -1px;
}
@media only screen and (max-width: 799px) {
  .h-3 {
    font-size: 1.25rem;
    line-height: 1.4;
  }
}

.h-4 {
  font-size: 2rem;
  line-height: 1.25;
  font-weight: 500;
  letter-spacing: -1px;
}
@media only screen and (max-width: 799px) {
  .h-4 {
    font-size: 1.5rem;
    line-height: 1.3;
  }
}

.p,
.typeset p,
.typeset ul,
.typeset ol,
.typeset img {
  display: block;
  margin: 0 0 1rem;
}
.p--large {
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 500;
}
.p--light {
  font-weight: 300;
}

.a,
.insight-entry__link,
.typeset a {
  color: #000;
  font-weight: 500;
  text-decoration: none;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}
.a:hover, .a:focus, .a.selected,
.insight-entry__link:hover,
.typeset a:hover,
.insight-entry__link:focus,
.typeset a:focus,
.selected.insight-entry__link,
.typeset a.selected {
  color: #000;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 5px;
}
.gamma .a:hover, .gamma .a:focus, .gamma .a.selected,
.gamma .insight-entry__link:hover,
.gamma .typeset a:hover,
.typeset .gamma a:hover,
.gamma .insight-entry__link:focus,
.gamma .typeset a:focus,
.typeset .gamma a:focus,
.gamma .selected.insight-entry__link,
.gamma .typeset a.selected,
.typeset .gamma a.selected {
  text-decoration-thickness: 4px;
  text-underline-offset: 9px;
}
@media only screen and (max-width: 1539px) {
  .gamma .a:hover, .gamma .a:focus, .gamma .a.selected,
.gamma .insight-entry__link:hover,
.gamma .typeset a:hover,
.typeset .gamma a:hover,
.gamma .insight-entry__link:focus,
.gamma .typeset a:focus,
.typeset .gamma a:focus,
.gamma .selected.insight-entry__link,
.gamma .typeset a.selected,
.typeset .gamma a.selected {
    text-decoration-thickness: 3px;
    text-underline-offset: 7px;
  }
}

.a--underline {
  -webkit-box-shadow: inset 0 -1px 0 0 transparent, inset 0 -3px 0 0 transparent;
          box-shadow: inset 0 -1px 0 0 transparent, inset 0 -3px 0 0 transparent;
  padding-bottom: 1px;
  text-shadow: 1px 1px 0 transparent, -1px 1px 0 transparent, 2px 0 0 transparent, -2px 0 0 transparent;
  -webkit-transition: text-shadow 0.1s ease-in-out, -webkit-box-shadow 0.1s ease-in-out;
  transition: text-shadow 0.1s ease-in-out, -webkit-box-shadow 0.1s ease-in-out;
  transition: text-shadow 0.1s ease-in-out, box-shadow 0.1s ease-in-out;
  transition: text-shadow 0.1s ease-in-out, box-shadow 0.1s ease-in-out, -webkit-box-shadow 0.1s ease-in-out;
}
.a--underline:hover, .a--underline:focus, .a--underline.selected {
  -webkit-box-shadow: inset 0 -1px 0 0 #fff, inset 0 -3px 0 0 #000;
          box-shadow: inset 0 -1px 0 0 #fff, inset 0 -3px 0 0 #000;
  text-shadow: 1px 1px 0 #fff, -1px 1px 0 #fff, 2px 0 0 #fff, -2px 0 0 #fff;
}

.a-2 {
  font-size: 1.25rem;
  line-height: 1.4;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.a-2::after {
  font-size: 1.5rem;
  line-height: 1.3;
  color: inherit;
  display: block;
  padding-left: 0.5rem;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition: color 0.3s, -webkit-transform 0.2s;
  transition: color 0.3s, -webkit-transform 0.2s;
  transition: color 0.3s, transform 0.2s;
  transition: color 0.3s, transform 0.2s, -webkit-transform 0.2s;
}
.a-2:hover::after, .a-2:focus::after {
  -webkit-transform: translateX(5px);
          transform: translateX(5px);
}

.typeset ul, .typeset ol, .ul, .ol {
  padding-left: 1.2rem;
}

.typeset ul li, .typeset ol li, .ul li, .ol li {
  margin-bottom: 0.6rem;
}

.typeset ul li, .ul li {
  list-style: disc outside;
}

.typeset ol li, .ol li {
  list-style: decimal outside;
}

.list-lined {
  font-size: 1.25rem;
  line-height: 1.4;
}
.list-lined li {
  border-top: 1px solid #3c3c3b;
  color: #000;
  font-weight: 300;
  padding: 1rem 0;
}
.list-lined li a {
  font-weight: bold;
}
.list-lined li.list-lined__faded {
  color: #000;
}
.list-lined li:first-of-type {
  border-top: 0;
}

.typeset h2 {
  font-size: 1.25rem;
  margin-bottom: 1rem;
}
@media only screen and (max-width: 449px) {
  .typeset h2 {
    font-size: 1rem;
  }
}
.typeset h3 {
  font-size: 2rem;
  margin-bottom: 1rem;
}
.typeset h4 {
  font-size: 1.75rem;
  margin-bottom: 1rem;
}
.typeset p + h4 {
  margin-top: 2rem;
}
.typeset strong,
.typeset b {
  font-weight: 500;
}
.typeset.gamma a:hover, .typeset.gamma a:focus, .typeset.gamma a.selected {
  text-decoration-thickness: 4px;
  text-underline-offset: 9px;
}
@media only screen and (max-width: 1539px) {
  .typeset.gamma a:hover, .typeset.gamma a:focus, .typeset.gamma a.selected {
    text-decoration-thickness: 3px;
    text-underline-offset: 7px;
  }
}
.typeset--ul-cols ul {
  -webkit-columns: 2;
     -moz-columns: 2;
          columns: 2;
}

.typeset--columns {
  -webkit-columns: 2;
     -moz-columns: 2;
          columns: 2;
}
.typeset--columns h2 {
  font-size: 1.5rem;
  line-height: 1.3;
}
.typeset--columns p,
.typeset--columns ul,
.typeset--columns ol,
.typeset--columns img {
  font-size: 1.25rem;
  line-height: 1.4;
  margin-bottom: 2rem;
}
@media only screen and (max-width: 649px) {
  .typeset--columns {
    -webkit-columns: initial;
       -moz-columns: initial;
            columns: initial;
  }
}

.typeset--m p,
.typeset--m ul,
.typeset--m ol,
.typeset--m img {
  font-size: 2rem;
  line-height: 1.25;
  letter-spacing: -1px;
}
.typeset--m a {
  text-decoration: underline;
}
.typeset--m a:hover, .typeset--m a:focus {
  text-decoration: none;
}
@media only screen and (max-width: 799px) {
  .typeset--m p,
.typeset--m ul,
.typeset--m ol,
.typeset--m img {
    font-size: 1.5rem;
    line-height: 1.3;
  }
}

.typeset--l p,
.typeset--l ul,
.typeset--l ol,
.typeset--l img {
  font-size: 3.5rem;
  line-height: 1.1;
  font-weight: 500;
  letter-spacing: -1px;
}
.typeset--l a {
  text-decoration: underline;
}
.typeset--l a:hover, .typeset--l a:focus {
  text-decoration: none;
}
.typeset--l h2 {
  font-size: 2rem;
  line-height: 1.25;
  font-weight: 500;
}
@media only screen and (max-width: 799px) {
  .typeset--l h2 {
    font-size: 1.5rem;
    line-height: 1.3;
    margin-bottom: 1rem;
  }
}
@media only screen and (max-width: 799px) {
  .typeset--l p,
.typeset--l ul,
.typeset--l ol,
.typeset--l img {
    font-size: 1.5rem;
    line-height: 1.3;
  }
}

.typeset--xl p,
.typeset--xl ul,
.typeset--xl ol,
.typeset--xl img {
  font-size: 5.5rem;
  line-height: 1.09;
  font-weight: 500;
  letter-spacing: -1px;
}
.typeset--xl h2 {
  font-size: 2rem;
  line-height: 1.25;
  font-weight: 500;
}
@media only screen and (max-width: 799px) {
  .typeset--xl h2 {
    font-size: 2rem;
    line-height: 1.25;
    margin-bottom: 1rem;
  }
}
.typeset--xl a {
  font-weight: 500;
  text-decoration: underline;
}
.typeset--xl a:hover, .typeset--xl a:focus {
  text-decoration: none;
}
@media only screen and (max-width: 799px) {
  .typeset--xl p,
.typeset--xl ul,
.typeset--xl ol,
.typeset--xl img {
    font-size: 2rem;
    line-height: 1.25;
  }
}

.typeset--intro p,
.typeset--intro ul,
.typeset--intro ol,
.typeset--intro img {
  font-size: 2rem;
  line-height: 1.25;
  font-weight: 500;
}
@media only screen and (max-width: 649px) {
  .typeset--intro p,
.typeset--intro ul,
.typeset--intro ol,
.typeset--intro img {
    font-size: 1.5rem;
    line-height: 1.3;
  }
}

html {
  scroll-behavior: smooth;
}

@media screen and (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
body,
input,
button,
textarea,
select {
  font-size: 1.25rem;
  -webkit-text-size-adjust: 100%;
  font-family: "ClarityCity-Regular";
}
@media only screen and (max-width: 799px) {
  body,
input,
button,
textarea,
select {
    font-size: 1rem;
    line-height: 1.25;
  }
}

body {
  color: #000;
  left: 0;
  line-height: 1.4;
  position: relative;
  -webkit-transition: left 0.2s;
  transition: left 0.2s;
}
body::after {
  background-color: rgba(0, 0, 0, 0.2);
  bottom: 0;
  content: "";
  left: 0;
  opacity: 0;
  position: fixed;
  right: 0;
  top: 0;
  -webkit-transition: z-index 0.3s, opacity 0.3s;
  transition: z-index 0.3s, opacity 0.3s;
  z-index: -1;
}
body figcaption {
  font-size: 1rem;
  line-height: 1.25;
}
body.toggled {
  overflow: hidden;
}
body.filter-open::after {
  display: block;
  opacity: 1;
  z-index: 4;
}

.overflow-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 100vh;
  overflow-x: hidden;
  position: relative;
}

.main {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.image-caption {
  font-size: 0.75rem;
  line-height: 1.25;
  text-align: right;
}
@media only screen and (max-width: 649px) {
  .image-caption {
    text-align: left;
  }
}

.google-map img {
  max-width: none;
  width: auto;
}

.map-pin-info {
  font-size: 0.875rem;
  line-height: 1.4;
  background-color: #EDEDED;
  opacity: 0;
  position: absolute;
  -webkit-transition: visibility 0s 0.3s, opacity 0.3s;
  transition: visibility 0s 0.3s, opacity 0.3s;
  visibility: hidden;
  width: 230px;
}
.map-pin-info.open {
  opacity: 1;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  visibility: visible;
}
.map-pin-info > div {
  padding: 1em;
}
.map-pin-info img {
  max-width: 100%;
}

.article-action {
  color: #000;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}
.article-action:hover {
  color: #000;
}
.article-action::before {
  font-size: 1.125rem;
  display: inline-block;
  vertical-align: middle;
  width: 2rem;
}

.heightmatch {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
}
.heightmatch img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}

.clients-intro {
  font-size: 2rem;
  color: #000;
}
@media only screen and (max-width: 649px) {
  .clients-intro {
    margin-bottom: 2rem;
  }
}

.client-title {
  font-size: 1.125rem;
  margin-bottom: 1rem;
}

.project-listing {
  color: #0D1E00;
  display: block;
  margin-bottom: 6.5rem;
}
.project-listing--no-margin {
  margin-bottom: 0;
}
.project-listing:hover video,
.project-listing:hover img, .project-listing:focus video,
.project-listing:focus img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
@media only screen and (max-width: 1099px) {
  .project-listing {
    margin-bottom: 4rem;
  }
  .project-listing--no-margin {
    margin-bottom: 0;
  }
}

.project-listing__video,
.project-listing__image {
  margin-bottom: 1.5rem;
  overflow: hidden;
}
.project-listing__video video,
.project-listing__video img,
.project-listing__image video,
.project-listing__image img {
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
}

.project-listing__video video {
  bottom: 0;
  height: 100%;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  right: 0;
  top: 0;
}

.project-listing__title {
  font-size: 2rem;
  line-height: 1.25;
  font-weight: 500;
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 1099px) {
  .project-listing__title {
    font-size: 1.25rem;
    line-height: 1.4;
  }
}

.project-listing__location {
  font-size: 1.25rem;
  line-height: 1.4;
}
.project-listing__location span {
  display: block;
  opacity: 0.8;
}
@media only screen and (max-width: 799px) {
  .project-listing__location {
    font-size: 0.875rem;
    line-height: 1.4;
  }
}

.project-view__link {
  font-size: 1.25rem;
  line-height: 1.4;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.project-view__link::before {
  content: url("../img/bullet-empty.svg");
  display: block;
  height: 30px;
}
.project-view__link.selected::before {
  content: url("../img/bullet-fill.svg");
}

.project-listing-toggle {
  display: inline-block;
  margin: 0 2rem 2rem 0;
  position: relative;
  width: auto;
}
.project-listing-toggle.selected, .project-listing-toggle:focus {
  color: #000;
  outline: 0;
}
.project-listing-toggle:first-child::after {
  background-color: #3c3c3b;
  content: "";
  height: 100%;
  position: absolute;
  right: -1.2rem;
  width: 2px;
}

@media only screen and (max-width: 1099px) {
  .accordion--footer {
    border-bottom: 1px solid rgba(13, 30, 0, 0.16);
  }
}
.accordion--story {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding: 3rem 0;
}
@media only screen and (max-width: 649px) {
  .accordion--story {
    padding: 1.5rem 0;
  }
}
@media only screen and (max-width: 799px) {
  .accordion--filter {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  }
}

.accordion__button {
  color: inherit;
}
.accordion--story .accordion__button::after, .accordion--filter .accordion__button::after, .accordion--nav .accordion__button::after, .accordion--footer .accordion__button::after {
  display: block;
  text-align: left;
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}
.accordion--story .accordion__button.active::after, .accordion--filter .accordion__button.active::after, .accordion--nav .accordion__button.active::after, .accordion--footer .accordion__button.active::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.accordion--filter .accordion__button, .accordion--story .accordion__button, .accordion--nav .accordion__button, .accordion--footer .accordion__button {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #000;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.accordion--nav .accordion__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.accordion--nav .accordion__button::after {
  font-size: 2rem;
  line-height: 1.25;
}
@media only screen and (max-width: 799px) {
  .accordion--nav .accordion__button {
    font-size: 1.75rem;
    line-height: 1.25;
  }
  .accordion--nav .accordion__button::after {
    font-size: 1.5rem;
    line-height: 1.3;
  }
}
.accordion--footer .accordion__button {
  font-weight: 300;
  padding: 0.5rem 0;
  text-align: left;
}
@media only screen and (min-width: 1100px) {
  .accordion--footer .accordion__button {
    display: none;
  }
}
@media only screen and (max-width: 799px) {
  .accordion--footer .accordion__button {
    font-size: 1rem;
    line-height: 1.25;
    padding: 0.75rem 0;
  }
}
.accordion--filter .accordion__button {
  margin-bottom: 1rem;
}
.accordion--filter .accordion__button::after {
  font-size: 1.5rem;
  line-height: 1.3;
  display: none;
}
@media only screen and (max-width: 799px) {
  .accordion--filter .accordion__button {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 0.5rem;
  }
  .accordion--filter .accordion__button::after {
    display: block;
  }
}
.accordion--story .accordion__button {
  text-align: left;
}
.accordion--story .accordion__button::after {
  font-size: 1.5rem;
  line-height: 1.3;
  background-color: #fff;
  border-radius: 100%;
  padding: 0.5rem 0.75rem;
}
.accordion--story .accordion__content, .accordion--nav .accordion__content {
  opacity: 1;
  -webkit-transition: max-height 0.2s, opacity 0.4s;
  transition: max-height 0.2s, opacity 0.4s;
}
.js .accordion--story .accordion__content, .js .accordion--nav .accordion__content {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
}
.accordion--story .accordion__content.open, .accordion--nav .accordion__content.open {
  max-height: 2000px;
  opacity: 1;
  overflow: visible;
}
.accordion--story .accordion__content .nav__item:first-of-type, .accordion--nav .accordion__content .nav__item:first-of-type {
  padding-top: 1.25rem;
}
.accordion--story .accordion__content .nav__item:last-of-type, .accordion--nav .accordion__content .nav__item:last-of-type {
  padding-bottom: 1.25rem;
}
@media only screen and (max-width: 1099px) {
  .accordion--footer .accordion__content {
    opacity: 1;
    -webkit-transition: max-height 0.2s, opacity 0.4s;
    transition: max-height 0.2s, opacity 0.4s;
  }
  .js .accordion--footer .accordion__content {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
  }
  .accordion--footer .accordion__content.open {
    max-height: 1000px;
    opacity: 1;
    overflow: visible;
  }
}
@media only screen and (max-width: 799px) {
  .accordion--filter .accordion__content {
    opacity: 1;
    padding-bottom: 0.5rem;
    -webkit-transition: max-height 0.2s, opacity 0.4s;
    transition: max-height 0.2s, opacity 0.4s;
  }
  .js .accordion--filter .accordion__content {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
  }
  .accordion--filter .accordion__content.open {
    max-height: 2000px;
    opacity: 1;
    overflow: visible;
  }
}

.appoint-us__title {
  font-weight: bold;
  margin-bottom: 2rem;
}

.appoint-us__content-image {
  margin-bottom: 1rem;
}

.appoint-us-listing--flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.appoint-us-listing__image {
  margin-bottom: 1rem;
}
.appoint-us-listing__image--flex {
  border: 1px solid #EDEDED;
  padding-bottom: 100%;
  position: relative;
  vertical-align: middle;
  width: 100%;
}
.appoint-us-listing__image--flex img {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: auto;
}
.appoint-us-listing__image--padded img {
  padding: 0.5rem;
}

.appoint-us-listing__title {
  font-size: 1.75rem;
  color: #3c3c3b;
  font-weight: bold;
  margin-bottom: 1rem;
}

.awards__row {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  font-weight: 300;
  padding: 1rem 0;
}
.awards__row--heading {
  font-size: 1rem;
  line-height: 1.25;
  color: rgba(0, 0, 0, 0.75);
}

.back-link {
  font-size: 1.25rem;
  line-height: 1.4;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-bottom: 3rem;
}
.back-link::before {
  display: block;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}
.back-link:hover::before {
  -webkit-transform: translateX(-5px) rotate(180deg);
          transform: translateX(-5px) rotate(180deg);
}

.benefit {
  margin-bottom: 3rem;
}
@media only screen and (max-width: 799px) {
  .benefit {
    margin-bottom: 1.5rem;
  }
}

.benefit__title {
  font-size: 2rem;
  line-height: 1.25;
  font-weight: 500;
  margin-bottom: 0.5rem;
}
@media only screen and (max-width: 799px) {
  .benefit__title {
    font-size: 2rem;
    line-height: 1.25;
  }
}

.benefit__icon {
  font-size: 4rem;
  line-height: 1.1;
  margin-bottom: 2rem;
}
@media only screen and (max-width: 799px) {
  .benefit__icon {
    font-size: 3.5rem;
    line-height: 1.1;
    margin-bottom: 1rem;
  }
}

.bg {
  background-color: #F3F3F3;
}

.block {
  margin: 6.875rem 0;
}
.block--no-margin {
  margin-bottom: 0;
}
@media only screen and (max-width: 799px) {
  .block {
    margin: 4rem 0;
  }
  .block--no-margin {
    margin-bottom: 0;
  }
}

.block__heading {
  font-size: 2rem;
  line-height: 1.25;
  font-weight: 500;
}
@media only screen and (max-width: 799px) {
  .block__heading {
    font-size: 1.5rem;
    line-height: 1.3;
    margin-bottom: 1rem;
  }
}

.block__bg {
  background-color: #F7D417;
  color: #000;
  padding: 5.5rem 0 0;
}

.block__fw {
  position: relative;
}
.block__fw::after {
  background: -webkit-gradient(linear, left bottom, left top, from(rgb(0, 0, 0)), color-stop(70%, rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0)));
  background: linear-gradient(0deg, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 70%, rgba(0, 0, 0, 0) 100%);
  bottom: 0;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  z-index: 1;
}
.block__fw--video {
  overflow: hidden;
}
.block__fw--video video {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  width: 100%;
}
@media only screen and (max-width: 799px) {
  .block__fw--img img {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    position: absolute;
    width: 100%;
  }
}

.block__fw-content {
  font-size: 1.25rem;
  line-height: 1.4;
  bottom: 0;
  color: #fff;
  left: 0;
  padding: 0 83px 4rem;
  position: absolute;
  right: 0;
  text-align: center;
  z-index: 2;
}
@media only screen and (max-width: 1539px) {
  .block__fw-content {
    padding: 0 40px 4rem;
  }
}

.block__fw-strapline {
  font-size: 3.5rem;
  line-height: 1.1;
  font-weight: 500;
  margin-bottom: 2rem;
}
.block__fw-strapline--reduce {
  margin-bottom: 1rem;
}
@media only screen and (max-width: 799px) {
  .block__fw-strapline {
    font-size: 1.25rem;
    line-height: 1.4;
  }
}

.block__fw-subtext {
  margin-bottom: 2rem;
}

@media only screen and (max-width: 1099px) {
  .block__text-content {
    padding-right: 40px;
  }
}
@media only screen and (max-width: 799px) {
  .block__text-content {
    padding-right: 16px;
  }
}

.block__link-item {
  border-bottom: 1px solid rgba(13, 30, 0, 0.16);
}
.block__link-item:last-child {
  border-bottom: 0;
}
.block__link-item:first-child .block__link-text {
  padding-top: 0;
}

.block__link-text {
  font-size: 2rem;
  line-height: 1.25;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 1.5rem 0;
}
.block__link-text::after {
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}
.block__link-text + .block__link-image {
  overflow: hidden;
}
.block__link-text + .block__link-image img {
  opacity: 0;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: opacity 0.2s, -webkit-transform 0.4s ease-out;
  transition: opacity 0.2s, -webkit-transform 0.4s ease-out;
  transition: opacity 0.2s, transform 0.4s ease-out;
  transition: opacity 0.2s, transform 0.4s ease-out, -webkit-transform 0.4s ease-out;
}
.block__link-text:hover + .block__link-image > img, .block__link-text:focus + .block__link-image > img {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
}
.block__link-text:hover + .block__link-image::after, .block__link-text:focus + .block__link-image::after {
  opacity: 1;
  -webkit-transform: translateY(-200%);
          transform: translateY(-200%);
}
.block__link-text:hover::after, .block__link-text:focus::after {
  -webkit-transform: translateX(5px);
          transform: translateX(5px);
}
@media only screen and (max-width: 799px) {
  .block__link-text {
    font-size: 1.25rem;
    line-height: 1.4;
    padding: 1.125rem 0;
  }
}

.block__link-image {
  bottom: 0;
  left: 83px;
  position: absolute;
}
.block__link-image::after {
  background-color: #fff;
  content: "";
  display: block;
  height: 100%;
  opacity: 0;
  position: absolute;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
  width: 100%;
}
@media only screen and (max-width: 1539px) {
  .block__link-image {
    left: 40px;
  }
}
@media only screen and (max-width: 1099px) {
  .block__link-image {
    display: none;
  }
}

.block__attribution-image {
  border-radius: 100%;
  height: 80px;
  overflow: hidden;
  width: 80px;
}

.carousel {
  margin-bottom: 7.5rem;
}
@media only screen and (max-width: 799px) {
  .carousel--quote {
    margin-bottom: 3.25rem;
  }
}

.carousel__heading {
  font-size: 2rem;
  line-height: 1.25;
  font-weight: 500;
}
@media only screen and (max-width: 799px) {
  .carousel__heading {
    font-size: 1.5rem;
    line-height: 1.3;
    margin-bottom: 1rem;
  }
}

.carousel__viewport {
  overflow: hidden;
}

.carousel__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.carousel--awards .carousel__container {
  margin-left: -2rem;
}

.carousel--awards .carousel__slide {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
  padding-left: 2rem;
}
.carousel--awards .carousel__slide img {
  -o-object-fit: cover;
     object-fit: cover;
}
.carousel--quotes .carousel__slide {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
}

.carousel__pip {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid rgba(0, 0, 0, 0.75);
  border-radius: 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 2.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.625rem;
  width: 2.5rem;
}
.carousel__pip--selected {
  background-color: #000;
  border-color: #000;
  color: #fff;
}
@media only screen and (max-width: 799px) {
  .carousel__pip {
    font-size: 0.875rem;
    line-height: 1.4;
    height: 2rem;
    width: 2rem;
  }
}

.carousel__button {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 2.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.625rem;
  width: 2.5rem;
}
@media only screen and (max-width: 799px) {
  .carousel__button {
    height: 2rem;
    width: 2rem;
  }
}

.contact {
  display: block;
}
@media only screen and (max-width: 799px) {
  .contact {
    margin-top: 1.5rem;
  }
}

.contact__image {
  border-radius: 100%;
  height: 80px;
  margin-bottom: 2rem;
  overflow: hidden;
  width: 80px;
}
.contact__image--s {
  height: 56px;
  margin-bottom: 0;
  width: 56px;
}

.contact__main-image {
  width: 100%;
}

.contact__title {
  font-size: 2rem;
  font-weight: 500;
  margin-bottom: 2rem;
}

.contact__subheading {
  color: rgba(0, 0, 0, 0.75);
}

.content-block {
  padding-bottom: 5rem;
  padding-top: 5rem;
}
@media only screen and (max-width: 649px) {
  .content-block {
    padding-bottom: 2rem;
    padding-top: 2rem;
  }
}

.content-block-small {
  padding-bottom: 2rem;
  padding-top: 2rem;
}

.content-block--text-heading {
  font-weight: bold;
  margin-bottom: 2rem;
  max-width: 40rem;
}

.content-block--text {
  margin: 0 auto;
  text-align: center;
}

.content-block__quote-text {
  margin: auto;
}
.content-block__quote-text.content-block__quote-text--centred {
  text-align: center;
}

.quote__image {
  height: auto;
  margin: 0 0 1.5rem;
  width: 200px;
}

.quote__attribution {
  font-size: 1.125rem;
}
@media only screen and (max-width: 1539px) {
  .quote__attribution {
    font-size: 1rem;
  }
}

.dropdown {
  position: relative;
}

.dropdown__toggler {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
}
.dropdown__toggler::after {
  display: block;
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}
.dropdown__toggler.toggler--toggled {
  background-color: #dbdbdb;
}
.dropdown__toggler.toggler--toggled::after {
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
}

.dropdown__content {
  background-color: #fff;
  border: 2px solid #F3F3F3;
  border-radius: 0.25rem;
  display: none;
  position: absolute;
  top: calc(100% + 0.25rem);
  width: 100%;
}
.dropdown__content.toggled {
  display: block;
}

.dropdown__item {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0.5rem 1rem;
}
.dropdown__item--selected {
  font-weight: 500;
}
.featured-insight {
  display: block;
  margin-bottom: 3rem;
  max-height: 90vh;
  overflow: hidden;
  position: relative;
}
@media only screen and (max-width: 649px) {
  .featured-insight {
    margin-bottom: 2rem;
    max-height: initial;
  }
}
.featured-insight:hover .featured-insight__title, .featured-insight:focus .featured-insight__title {
  text-decoration: underline;
  text-decoration-thickness: 4px;
  text-underline-offset: 9px;
}

.featured-insight__overlay {
  background-color: #3c3c3b;
  bottom: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #fff;
  max-width: 580px;
  padding: 3.5rem 4rem 6.5rem;
  position: absolute;
  right: 0;
}
.featured-insight__overlay::after {
  bottom: 3.75rem;
  left: 4rem;
  position: absolute;
}
@media only screen and (max-width: 649px) {
  .featured-insight__overlay {
    padding: 1.5rem 1.25rem 5rem;
    position: relative;
  }
  .featured-insight__overlay::after {
    bottom: 2.25rem;
    left: 1.25rem;
  }
}

.featured-insight__title {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 1rem;
}

.featured-insight__introduction {
  font-size: 1.75rem;
}

.filter__button {
  font-size: 1.25rem;
  line-height: 1.4;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #F3F3F3;
  border-radius: 1.5rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 0.5rem 1rem;
  position: relative;
  width: auto;
}
.filter__button::before {
  padding-right: 0.5rem;
}
.filter__button:focus {
  outline: 0;
}
@media only screen and (max-width: 799px) {
  .filter__button {
    font-size: 1rem;
    line-height: 1.25;
  }
  .filter__button::before {
    font-size: 1.5rem;
    line-height: 1.3;
  }
}

.filter__remove, .filter-nav__item a,
.filter-nav__item span {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #000;
  border-radius: 1.5rem;
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-bottom: 0.5rem;
  padding: 0.25rem 0.75rem;
  text-align: center;
  width: auto;
}

.filter-section {
  background-color: #fff;
  bottom: 0;
  color: #000;
  left: 0;
  padding: 2.5rem 0;
  position: fixed;
  right: 0;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  transition: -webkit-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
  z-index: 5;
}
.filter-section.visible {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
@media only screen and (max-width: 799px) {
  .filter-section {
    min-height: 100vh;
    min-height: 100dvh;
    padding: 0;
    top: 0;
    -webkit-transform: translateX(110%);
            transform: translateX(110%);
    width: 90%;
  }
  .filter-section.visible {
    -webkit-transform: translateX(10%);
            transform: translateX(10%);
  }
}

.filter__selected {
  color: #000;
  display: inline;
}

.filter__button,
.filter__close,
.filter__clear {
  color: #000;
}

.filter__button--toggle {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.filter__button--toggle::before {
  padding-right: 0.5rem;
}
.filter__button--dark {
  background-color: #000;
  color: #fff;
}

.filter__close {
  font-size: 1.5rem;
  line-height: 1.3;
  width: auto;
}
@media only screen and (max-width: 799px) {
  .filter__close {
    margin-top: 1rem;
  }
}

.filter__clear {
  font-size: 1.25rem;
  line-height: 1.4;
  display: block;
  width: auto;
}
.filter__clear::after {
  font-size: 1.25rem;
  line-height: 1.4;
  display: inline-block;
  line-height: 16px;
  padding-left: 0.5rem;
  vertical-align: middle;
}
@media only screen and (max-width: 799px) {
  .filter__clear {
    font-size: 1rem;
    line-height: 1.25;
  }
}

.filter-nav__item a {
  background-color: transparent;
  font-weight: 300;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
}
.filter-nav__item a:hover, .filter-nav__item a:focus, .filter-nav__item a.selected {
  background-color: #000;
  color: #fff;
}
.filter-nav__item span {
  opacity: 0.4;
}
.filter-nav__item.disabled {
  opacity: 0.4;
}

.filter-nav--inline {
  display: block;
  margin-bottom: 0;
}
.filter-nav--inline li {
  display: inline-block;
  margin-right: 0;
}
.filter-nav--inline li.disabled {
  opacity: 0.4;
}
.filter-nav--inline a {
  background-color: #e2e2e2;
  border-radius: 0.1875rem;
  color: #000;
  display: block;
  margin-bottom: 0.3375rem;
  padding: 0.1875rem 0.3375rem;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
}
.filter-nav--inline a:hover, .filter-nav--inline a:focus {
  background-color: #fff;
  border-bottom: 0;
}
.filter-nav--inline a.selected {
  background-color: #fff;
  border-bottom: 0;
  color: #000;
  position: relative;
}
.filter-nav--inline a.selected::after {
  font-size: 9px;
  line-height: 16px;
  padding-left: 0.5rem;
  vertical-align: middle;
}

.filter-nav--all {
  display: inline-block;
  margin-bottom: 1.4rem;
}
.filter-nav--all li {
  display: inline-block;
  margin-left: 0.6rem;
}
@media only screen and (max-width: 449px) {
  .filter-nav--all li {
    margin: 0 0.6rem 0 0;
  }
}
.filter-nav--all a.selected {
  border-bottom: 0;
}
.filter-nav--all a.selected::after {
  padding-left: 0.5rem;
}

.filter__remove {
  background-color: #000;
  color: #fff;
}
@media only screen and (max-width: 799px) {
  .filter__mobile-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    height: calc(100dvh - 1.5rem);
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.filter__checkbox {
  margin-bottom: 1rem;
}
.filter__checkbox input[type=checkbox] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  left: -9999rem;
  position: absolute;
}
.filter__checkbox input[type=checkbox] + label {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: transparent;
  border: 1px solid #000;
  border-radius: 1.5rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 0.25rem 1rem;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  width: auto;
}
.filter__checkbox input[type=checkbox] + label::after {
  display: none;
}
.filter__checkbox input[type=checkbox]:focus-visible + label, .filter__checkbox input[type=checkbox]:hover + label, .filter__checkbox input[type=checkbox]:checked + label {
  background-color: #000;
  color: #fff;
}
.filter__checkbox input[type=checkbox]:checked + label::after {
  display: block;
  padding-left: 0.5rem;
}

@media only screen and (max-width: 799px) {
  .filter__form {
    overflow: auto;
  }
}

.filter__count {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #000;
  border-radius: 1rem;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 1rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.25rem;
  width: 1rem;
}

.footer {
  border-top: 1px solid rgba(52, 77, 51, 0.1);
  margin-top: 7.5rem;
}
.footer--flush {
  margin-top: 0;
}
.footer--alt {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}
@media only screen and (max-width: 1099px) {
  .footer {
    margin-top: 4rem;
  }
  .footer--flush {
    margin-top: 0;
  }
}

.footer__partners {
  font-size: 1.25rem;
  line-height: 1.4;
  padding: 2rem 0;
}
.footer--alt .footer__partners {
  background-color: #F3F3F3;
}

.footer__nav {
  background-color: #F7D417;
  padding: 5rem 0 2.5rem;
}

.footer__logo {
  background: url("../img/logo-brand.svg") no-repeat;
  background-size: contain;
  margin-top: 7.5rem;
  opacity: 0.8;
  padding-top: 20.281273131%;
  width: 100%;
}

@media only screen and (max-width: 1099px) {
  .footer__submenu {
    opacity: 1;
    -webkit-transition: max-height 0.2s, opacity 0.4s;
    transition: max-height 0.2s, opacity 0.4s;
  }
  .js .footer__submenu {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
  }
}

@media only screen and (max-width: 1099px) {
  .footer__accordion {
    border-bottom: 1px solid rgba(13, 30, 0, 0.16);
  }
}

.footer__partner--cyber-essentials {
  background: url("../img/cyber-essentials.png") 0 0 no-repeat;
  background-size: cover;
  height: 55px;
  width: 55px;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (-webkit-min-device-pixel-ratio: 1.302325581395349), only screen and (min-resolution: 125dpi), only screen and (min-resolution: 1.3dppx) {
  .footer__partner--cyber-essentials {
    background: url("../img/cyber-essentials-2x.png") 0 0 no-repeat;
    background-size: 55px 55px;
  }
}
.footer__partner--living-wage {
  background: url("../img/living-wage.png") 0 0 no-repeat;
  background-size: cover;
  height: 55px;
  width: 70px;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (-webkit-min-device-pixel-ratio: 1.302325581395349), only screen and (min-resolution: 125dpi), only screen and (min-resolution: 1.3dppx) {
  .footer__partner--living-wage {
    background: url("../img/living-wage-2x.png") 0 0 no-repeat;
    background-size: 70px 55px;
  }
}
.footer__partner--lipr {
  background: url("../img/lipr.png") 0 0 no-repeat;
  background-size: cover;
  height: 55px;
  width: 55px;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (-webkit-min-device-pixel-ratio: 1.302325581395349), only screen and (min-resolution: 125dpi), only screen and (min-resolution: 1.3dppx) {
  .footer__partner--lipr {
    background: url("../img/lipr-2x.png") 0 0 no-repeat;
    background-size: 55px 55px;
  }
}
.footer__partner--iema {
  background: url("../img/iema.png") 0 0 no-repeat;
  background-size: cover;
  height: 55px;
  width: 102px;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (-webkit-min-device-pixel-ratio: 1.302325581395349), only screen and (min-resolution: 125dpi), only screen and (min-resolution: 1.3dppx) {
  .footer__partner--iema {
    background: url("../img/iema-2x.png") 0 0 no-repeat;
    background-size: 102px 55px;
  }
}
.footer__partner--iso {
  background: url("../img/iso.png") 0 0 no-repeat;
  background-size: cover;
  height: 55px;
  width: 55px;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (-webkit-min-device-pixel-ratio: 1.302325581395349), only screen and (min-resolution: 125dpi), only screen and (min-resolution: 1.3dppx) {
  .footer__partner--iso {
    background: url("../img/iso-2x.png") 0 0 no-repeat;
    background-size: 55px 55px;
  }
}
.footer__partner--positive-planet {
  background: url("../img/positive-planet.png") 0 0 no-repeat;
  background-size: cover;
  height: 55px;
  width: 55px;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (-webkit-min-device-pixel-ratio: 1.302325581395349), only screen and (min-resolution: 125dpi), only screen and (min-resolution: 1.3dppx) {
  .footer__partner--positive-planet {
    background: url("../img/positive-planet-2x.png") 0 0 no-repeat;
    background-size: 55px 55px;
  }
}

@media only screen and (max-width: 1099px) {
  .footer__partner-text {
    margin-bottom: 1.5rem;
    text-align: center;
  }
}

input[type=text], input[type=email] {
  font-size: 0.875rem;
  border-bottom: 1px solid #3c3c3b;
  color: #000;
  padding-bottom: 0.5rem;
}
input[type=text]:focus, input[type=email]:focus {
  outline: none;
}
input[type=text]::after, input[type=email]::after {
  content: ">";
  position: absolute;
  right: 0;
}

.framework {
  margin-bottom: 4rem;
}

.framework__link {
  font-size: 1.25rem;
  line-height: 1.4;
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.framework__link::after {
  padding-top: 0.25rem;
}
@media only screen and (max-width: 649px) {
  .framework__image {
    margin-bottom: 1.5rem;
  }
}

.header__primary {
  background-color: #fff;
  height: 110px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 999;
}
@media only screen and (max-width: 1539px) {
  .header__primary {
    height: 100px;
  }
}
.body--header-alt-appearance .header__primary {
  background: none;
}
.body--header-condensed .header__primary {
  border-bottom: 1px solid #3c3c3b;
  height: 80px;
  position: fixed;
}
.body--header-alt-appearance .header__secondary {
  left: 0;
  position: absolute;
  right: 0;
  top: 110px;
}
@media only screen and (max-width: 1539px) {
  .body--header-alt-appearance .header__secondary {
    top: 100px;
  }
}
.header__right-side {
  color: #000;
  position: absolute;
  right: 83px;
  top: 2.5rem;
}
@media only screen and (max-width: 1539px) {
  .header__right-side {
    right: 40px;
    top: 2.6rem;
  }
}
@media only screen and (max-width: 1099px) {
  .header__right-side {
    display: none;
    right: -214px;
    top: 1.5rem;
  }
}
@media only screen and (max-width: 1099px) and (max-width: 1099px) {
  .m-nav-open .header__right-side {
    display: block;
  }
}
.body--header-alt-appearance .header__right-side {
  color: #fff;
}
.body--header-condensed .header__right-side {
  top: 1.5rem;
}
@media only screen and (max-width: 1539px) {
  .body--header-condensed .header__right-side {
    top: 1.7rem;
  }
}
.header__logo {
  background: url("../img/logo-brand.svg") 0 0/contain no-repeat;
  display: block;
  height: 36px;
  position: absolute;
  top: 35px;
  width: 173px;
  z-index: 2;
}
.body--header-alt-appearance .header__logo {
  background-image: url("../img/logo-secondary.svg");
}
@media only screen and (max-width: 1099px) {
  .body--header-alt-appearance .header__logo {
    background-image: url("../img/logo-brand.svg");
  }
}
.body--home .header__logo {
  background-image: url("../img/logo-secondary.svg");
}
.body--header-condensed .header__logo {
  top: 1.6rem;
}
@media only screen and (max-width: 1099px) {
  .header__logo {
    top: 32px;
  }
}

@media only screen and (max-width: 1099px) {
  .header__right-side--locale {
    display: block;
    right: 40px;
    top: 1.77rem;
  }
  .header__right-side--locale a {
    color: #000;
  }
}
@media only screen and (max-width: 649px) {
  .header__right-side--locale {
    right: 20px;
  }
}

.header-slideshow .slideshow__slide,
.header-slideshow .slideshow__prop, .header-media {
  max-height: 100vh;
  overflow: hidden;
}

.header-media {
  position: relative;
}
.header-media__overlay {
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(50%, transparent), color-stop(96%, rgba(0, 0, 0, 0.9)));
  background-image: linear-gradient(0deg, transparent 50%, rgba(0, 0, 0, 0.9) 96%);
  height: 100%;
  opacity: 0.4;
  position: absolute;
  width: 100%;
  z-index: 2;
}
@media only screen and (max-width: 1099px) {
  .header-media__overlay {
    display: none;
  }
}
.header-media__content-container {
  font-size: 2.5rem;
  font-size: 0;
  height: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #000;
  bottom: 0;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: opacity 0.7s ease-in-out;
  transition: opacity 0.7s ease-in-out;
  z-index: 2;
}
.header-media__content-container::before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}
.header-media__content-container--in .header-media__content__1 {
  opacity: 1;
}
.header-media__content-container--in .header-media__content__2 {
  opacity: 1;
}
.header-media__content-container--out {
  opacity: 0;
}
.header-media__home-content-container {
  font-size: 2.5rem;
  font-size: 0;
  height: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  bottom: 0;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 2;
}
.header-media__home-content-container::before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}
.header-media__home-content-container .header-media__content {
  margin: 0 auto;
  max-width: 75%;
}
.header-media__home-content-container .header-media__content__1 {
  font-size: 3.5rem;
  font-weight: 300;
}
@media only screen and (max-width: 1099px) {
  .header-media__home-content-container .header-media__content__1 {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 649px) {
  .header-media__home-content-container .header-media__content__1 {
    font-size: 1.125rem;
  }
}
.header-media__home-content-container--in .header-media__content__1 {
  opacity: 1;
}
.header-media__home-content-container--out {
  opacity: 0;
}
.header-media__content {
  display: inline-block;
  font-size: 1rem;
  vertical-align: middle;
  text-align: center;
  width: 100%;
}
.header-media__content__1 {
  font-weight: bold;
  opacity: 0;
  -webkit-transition: opacity 0.7s ease-in-out;
  transition: opacity 0.7s ease-in-out;
}
.header-media__content__2 {
  opacity: 0;
  -webkit-transition: opacity 0.7s 0.7s ease-in-out;
  transition: opacity 0.7s 0.7s ease-in-out;
}
.header-media__down-arrow {
  -webkit-animation: bounce 1.2s infinite;
          animation: bounce 1.2s infinite;
  background-image: url("../img/down-arrow.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 50px 50px;
  bottom: 5rem;
  height: 50px;
  left: 0;
  margin: 0 auto;
  position: absolute;
  right: 0;
  width: 50px;
  z-index: 3;
}
@media only screen and (max-width: 1800px) {
  .header-media__down-arrow {
    bottom: 4rem;
  }
}
@media only screen and (max-width: 649px) {
  .header-media__down-arrow {
    display: none;
  }
}
.header-media__down-arrow a {
  bottom: 0;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

.search-open .header__search-toggle {
  color: #000;
}
.header__nav-toggle {
  font-size: 1rem;
  color: #000;
  display: none;
  position: absolute;
  right: 40px;
  top: 40px;
  width: auto;
  z-index: 2;
}
@media only screen and (max-width: 1099px) {
  .header__nav-toggle {
    display: block;
  }
}
@media only screen and (max-width: 649px) {
  .header__nav-toggle {
    right: 20px;
  }
}
.header__nav-toggle:focus {
  outline: 0;
}
.body--header-alt-appearance .header__nav-toggle {
  color: #fff;
}
@media only screen and (max-width: 1099px) {
  .body--header-alt-appearance .header__nav-toggle {
    color: #000;
  }
}
.body--home .header__nav-toggle {
  color: #fff;
}

.header-media__image {
  position: absolute;
}

.header-media__image--top-left,
.header-media__image--top-center,
.header-media__image--top-right {
  top: 0;
}

.header-media__image--center-left,
.header-media__image--center-center,
.header-media__image--center-right {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.header-media__image--bottom-left,
.header-media__image--bottom-center,
.header-media__image--bottom-right {
  bottom: 0;
}

.header__secondary--hidden {
  display: none;
}

.header-slideshow {
  position: relative;
}
.header-slideshow__slide {
  font-size: 0;
  height: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  z-index: 1;
}
.header-slideshow__slide::before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.header-slideshow__slide__text {
  display: inline-block;
  font-size: 1rem;
  vertical-align: middle;
  font-size: 2.5rem;
  color: #fff;
  font-weight: bold;
  padding: 0 15%;
  text-align: center;
  width: 100%;
}
@media only screen and (max-width: 1099px) {
  .header-slideshow__slide__text {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 650px) {
  .header-slideshow__slide__text {
    font-size: 0.875rem;
  }
}

.header-slideshow__slide__overlay {
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(50%, transparent), color-stop(90%, rgba(0, 0, 0, 0.9)));
  background-image: linear-gradient(0deg, transparent 50%, rgba(0, 0, 0, 0.9) 90%);
  bottom: 0;
  left: 0;
  opacity: 0.4;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
}
@media only screen and (max-width: 1099px) {
  .header-slideshow__slide__overlay {
    display: none;
  }
}

.header-slideshow__pips {
  bottom: 3rem;
  left: 0;
  position: absolute;
  right: 0;
  z-index: 99;
}
@media only screen and (max-width: 449px) {
  .header-slideshow__pips {
    bottom: 20px;
    right: 20px;
  }
}

.slideshow__slide .fw {
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  -webkit-transition: -webkit-transform 10s linear;
  transition: -webkit-transform 10s linear;
  transition: transform 10s linear;
  transition: transform 10s linear, -webkit-transform 10s linear;
}

.slideshow__slide--top .fw,
.slideshow__slide--behind .fw {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.hero {
  font-weight: 600;
  height: 100vh;
  max-height: 1200px;
  min-height: 600px;
  overflow: hidden;
  position: relative;
}
@media only screen and (max-width: 799px) {
  .hero {
    height: calc(100vw + 80px);
    min-height: 400px;
  }
}

.hero__video {
  height: 100vh;
  max-height: 100vh;
  min-height: 600px;
  position: absolute;
  top: 0;
  width: 100%;
}
.hero__video::after {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(32.47%, rgba(0, 0, 0, 0)), color-stop(89.26%, rgba(0, 0, 0, 0.4)), to(rgba(0, 0, 0, 0.4)));
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 32.47%, rgba(0, 0, 0, 0.4) 89.26%, rgba(0, 0, 0, 0.4) 100%);
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
.hero__video video {
  height: 100vh;
  max-height: 100vh;
  min-height: 600px;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.hero__video--relative {
  position: relative;
}
@media only screen and (max-width: 799px) {
  .hero__video {
    height: calc(100vw + 80px);
    min-height: 400px;
  }
  .hero__video video {
    max-height: 100%;
    min-height: 400px;
  }
}

.hero__inner {
  height: 100%;
  position: relative;
  z-index: 2;
}

.hero__content {
  bottom: 0;
  color: #fff;
  position: absolute;
  z-index: 2;
}
@media only screen and (max-width: 799px) {
  .hero__content {
    font-size: 2.5rem;
    line-height: 1.2;
    bottom: 2.5rem;
  }
  .hero__content p {
    margin-bottom: 0;
  }
}

.hero__controls {
  background-color: #F7D417;
  border-radius: 3rem;
  bottom: 2.5rem;
  color: #000;
  padding: 0.5rem 1rem;
  position: absolute;
  right: 83px;
  z-index: 2;
}
@media only screen and (max-width: 1539px) {
  .hero__controls {
    right: 40px;
  }
}
@media only screen and (max-width: 799px) {
  .hero__controls {
    right: 20px;
  }
}

.hero__control {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: inherit;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 1.5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.hero__control::before {
  font-size: 1.5rem;
  line-height: 1.3;
}
.hero__control--pause.paused::before {
  margin-top: -2px;
}

.insight-listing__author {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 2.5rem 0 0;
}
.insight-listing__author--inline {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-right: -1.75rem;
  position: relative;
}
.insight-listing__author--inline img {
  border: 1px solid #fff;
  border-radius: 100%;
}
.insight-listing__author--1 {
  z-index: 1;
}
.insight-listing__author--2 {
  z-index: 2;
}
.insight-listing__author--3 {
  z-index: 3;
}
.insight-listing__author--4 {
  z-index: 4;
}
.insight-listing__author--5 {
  z-index: 5;
}
.insight-listing__author--6 {
  z-index: 6;
}
.insight-listing__author--7 {
  z-index: 7;
}
.insight-listing__author--8 {
  z-index: 8;
}
.insight-listing__author--9 {
  z-index: 9;
}

.insight-listing__author-name,
.insight-listing__author-role {
  font-size: 1rem;
  display: block;
}

.insight-listing__author-name {
  font-weight: bold;
}

.insight-listing__author-img {
  border-radius: 56px;
  height: 56px;
  margin-bottom: 0.5rem;
  margin-right: 0.75rem;
  width: 56px;
}

.insight-author-overlay {
  border-color: #3c3c3b;
  bottom: 0;
  -webkit-box-shadow: 0 0 16px rgba(60, 60, 59, 0.08);
          box-shadow: 0 0 16px rgba(60, 60, 59, 0.08);
  display: none;
  left: 0;
  position: fixed;
  z-index: 20;
}
.insight-author-overlay--active {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 1099px) {
  .insight-author-overlay--active {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.insight-author-overlay__item {
  background-color: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  min-width: 400px;
  padding: 3rem;
  text-align: center;
}
@media only screen and (max-width: 1099px) {
  .insight-author-overlay__item {
    padding: 2.5rem 2rem;
    text-align: left;
  }
  .insight-author-overlay__item:first-of-type {
    padding-bottom: 0;
  }
}
@media only screen and (max-width: 649px) {
  .insight-author-overlay__item {
    min-width: 100vw;
  }
}

@media only screen and (max-width: 1099px) {
  .insight-author-overlay__details {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media only screen and (max-width: 1099px) {
  .insight-author-overlay__text-details {
    font-size: 0.875rem;
  }
}

.insight-author-overlay__office {
  color: #3c3c3b;
  font-size: 1rem;
  margin-bottom: 1rem;
}

.insight-author-overlay__photo {
  border-radius: 144px;
  height: 144px;
  margin: 0 auto 1rem;
  width: 144px;
}
@media only screen and (max-width: 1099px) {
  .insight-author-overlay__photo {
    border-radius: 80px;
    height: 80px;
    margin: 0 1rem 1rem 0;
    width: 80px;
  }
}

.insight-author-overlay__name {
  color: #000;
}

.insight-author-overlay__close {
  position: absolute;
  right: 0.75rem;
  top: 0.75rem;
  width: auto;
}
.insight-author-overlay__close::before {
  font-size: 0.875rem;
  color: #3c3c3b;
}

.insight-entry-header {
  margin-bottom: 3rem;
  max-height: 90vh;
  overflow: hidden;
  position: relative;
}
@media only screen and (max-width: 649px) {
  .insight-entry-header {
    margin-bottom: 2rem;
    max-height: initial;
  }
}

@media only screen and (max-width: 649px) {
  .insight-entry-header__image {
    width: 100%;
  }
}

.insight-entry-header__overlay {
  bottom: 0;
  left: -4rem;
  position: absolute;
  right: 0;
}
@media only screen and (max-width: 649px) {
  .insight-entry-header__overlay {
    bottom: auto;
    left: auto;
    position: relative;
    right: auto;
  }
}

.insight-entry-header__inner {
  background-color: #3c3c3b;
  color: #fff;
  padding: 2.5rem 4.25rem;
}
.insight-entry-header--video .insight-entry-header__inner, .insight-entry-header--audio .insight-entry-header__inner {
  background-color: #3c3c3b;
}
@media only screen and (max-width: 649px) {
  .insight-entry-header__inner {
    padding: 1.5rem 1.25rem;
  }
}

.insight-entry-header__title {
  font-size: 2.5rem;
  font-weight: bold;
}
@media only screen and (max-width: 649px) {
  .insight-entry-header__title {
    font-size: 2rem;
  }
}

.insight-entry {
  margin-bottom: 5rem;
}

.insight-entry__link {
  font-size: 1rem;
}

.insight-entry__introduction {
  margin-bottom: 2.5rem;
  max-width: 660px;
}
@media only screen and (max-width: 649px) {
  .insight-entry__introduction {
    margin-bottom: 2rem;
  }
}

.insight-entry__heading {
  font-size: 1.75rem;
  margin-bottom: 0.5rem;
}

.insight-entry__block {
  display: block;
  margin: 0 auto 2.5rem;
}

.insight-entry__img {
  margin-bottom: 0.5rem;
  width: 100%;
}

.insight-entry__caption {
  font-size: 0.875rem;
}

.insight-entry__subtitle {
  font-size: 1.125rem;
  margin-bottom: 1.625rem;
}

.insight-filters {
  margin-bottom: 2.5rem;
  padding-left: 2rem;
  position: absolute;
  right: 40px;
  width: 25%;
}
@media only screen and (max-width: 649px) {
  .insight-filters {
    padding-left: 0;
    position: relative;
    right: auto;
    width: 100%;
  }
}

.insight-filters__toggle {
  font-size: 1.125rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #3c3c3b;
  color: #3c3c3b;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0.875rem 1.5rem;
}
.insight-filters__toggle::after {
  color: #3c3c3b;
}
.insight-filters-open .insight-filters__toggle {
  margin-bottom: 1.5rem;
}
.insight-filters__inner {
  background-color: #fff;
  border-color: #3c3c3b;
  border-style: solid;
  border-width: 0 1px 1px;
  opacity: 0;
  padding: 1.5rem 1.5rem 0.75rem;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 3.125rem;
  -webkit-transition: opacity 0.2s, visibility 0.2s;
  transition: opacity 0.2s, visibility 0.2s;
  visibility: hidden;
  width: calc(100% - 36px);
  z-index: 2;
}
.insight-filters-open .insight-filters__inner {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}
@media only screen and (max-width: 649px) {
  .insight-filters__inner {
    width: 100%;
  }
}

.insight-filters__heading {
  font-size: 1rem;
  margin-bottom: 0.5rem;
}

.insight-filters__all,
.insight-filters__list {
  display: block;
  margin-bottom: 1.5rem;
}

.insight-listing {
  margin-bottom: 3rem;
  position: relative;
}
.insight-listing--audio, .insight-listing--video {
  border: 1px solid #3c3c3b;
}
.insight-listing--audio:hover, .insight-listing--audio:focus, .insight-listing--video:hover, .insight-listing--video:focus {
  border: 1px solid rgba(0, 0, 0, 0.2);
}
.insight-listing:hover .listing__image__overlay, .insight-listing:focus .listing__image__overlay {
  background-color: rgba(0, 0, 0, 0.2);
}
.insight-listing:hover .insight-listing__title, .insight-listing:focus .insight-listing__title {
  text-decoration: underline;
  text-decoration-thickness: 3px;
  text-underline-offset: 7px;
}

.insight-listing__tag {
  font-size: 1rem;
  background-color: #3c3c3b;
  border: 1px solid #3c3c3b;
  color: #fff;
  display: inline-block;
  left: 1rem;
  padding: 0.25rem 1.25rem;
  position: absolute;
  top: 1rem;
}
.insight-listing--audio .insight-listing__tag, .insight-listing--video .insight-listing__tag {
  background-color: #3c3c3b;
  border-color: #3c3c3b;
}
.insight-listing__tag--featured {
  border-color: #fff;
  margin-bottom: 2.25rem;
  position: static;
}
@media only screen and (max-width: 649px) {
  .insight-listing__tag--featured {
    margin-bottom: 1.25rem;
  }
}
.insight-listing__tag--entry {
  background-color: transparent;
  border-color: #fff;
  margin-bottom: 1rem;
  margin-right: 1.25rem;
  position: static;
}
.insight-listing__tag--topic {
  background-color: transparent;
  border: 0;
  padding-left: 0;
  position: static;
  text-transform: none;
}

.insight-listing__img {
  margin-bottom: 0.5rem;
  width: 100%;
}

.insight-listing__topic {
  font-size: 1.125rem;
  margin-bottom: 0.25rem;
}

.insight-listing__title {
  font-size: 1.75rem;
  color: #3c3c3b;
  font-weight: bold;
  margin-bottom: 1rem;
}

.insight-listing--audio .insight-listing__inner, .insight-listing--video .insight-listing__inner {
  padding: 0 2rem 1rem;
}
.insight-listing--audio .insight-listing__inner::after, .insight-listing--video .insight-listing__inner::after {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #3c3c3b;
  border-radius: 2rem;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 2rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  top: -0.5rem;
  width: 2rem;
}
.insight-listing--video .insight-listing__inner::after {
  font-size: 22px;
}
.insight-listing--audio .insight-listing__inner::after {
  font-size: 20px;
}

.insight-title-header {
  background-color: #3c3c3b;
  color: #fff;
  margin-bottom: 2.5rem;
  padding: 2.5rem 0;
  text-align: center;
  width: 100%;
}

.insight-title-header__title {
  font-size: 2rem;
  margin-bottom: 0.5rem;
}

.insight-title-header__count {
  font-size: 0.875rem;
}

.listing {
  color: #0D1E00;
  display: block;
  margin-bottom: 7.5rem;
}
.listing--no-margin {
  margin-bottom: 0;
}
.listing:hover .listing__title, .listing:focus .listing__title {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 7px;
}
@media only screen and (max-width: 799px) {
  .listing {
    margin-bottom: 4rem;
  }
  .listing--no-margin {
    margin-bottom: 4rem;
  }
}

.listing__image {
  margin-bottom: 1rem;
}

.listing__tag {
  font-size: 1rem;
  line-height: 1.25;
}

.listing__topic {
  color: rgba(0, 0, 0, 0.75);
}

.listing__author span {
  color: rgba(0, 0, 0, 0.75);
}

.listing__name {
  font-weight: 500;
}

.listing__title {
  font-size: 1.5rem;
  font-weight: 500;
  max-width: 80%;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}
@media only screen and (max-width: 449px) {
  .listing__title {
    max-width: 100%;
  }
}
.listing__title.listing__title--no-mb {
  margin-bottom: 0;
}

.masonry {
  margin-right: -1rem;
}

.masonry__brick {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-right: 1rem;
  -webkit-transition: opacity 1s, visibility 1s;
  transition: opacity 1s, visibility 1s;
}

.membership {
  margin-bottom: 8rem;
}
@media only screen and (max-width: 649px) {
  .membership {
    margin-bottom: 4rem;
  }
}

.membership__image {
  height: 144px;
  margin-bottom: 2rem;
  -o-object-fit: contain;
     object-fit: contain;
  width: 144px;
}

.nav {
  color: #0D1E00;
  font-weight: 300;
}

.nav__header {
  background-color: transparent;
  padding: 2.75rem 0;
  position: absolute;
  top: 0;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  width: 100%;
  z-index: 4;
}
.toggled .nav__header {
  background-color: #F7D417;
  position: fixed;
}

.nav__logo {
  background: url("../img/logo-brand.svg") no-repeat;
  background-size: contain;
  display: block;
  height: 32px;
  width: 158px;
}
.nav--invert:not(.toggled) .nav__logo {
  background: url("../img/logo-secondary.svg") no-repeat;
  background-size: contain;
}
@media only screen and (max-width: 799px) {
  .nav__logo {
    height: 22px;
    width: 110px;
  }
}

.nav__controls {
  background-color: #F7D417;
  border-radius: 3rem;
  padding: 0.5rem 1rem;
}
.toggled .nav__controls {
  background-color: #0D1E00;
}
.search-open .nav__controls {
  position: relative;
  z-index: 999;
}

.nav__control {
  font-size: 1.5rem;
  line-height: 1.3;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 1.5rem;
}
.toggled .nav__control {
  color: #fff;
}

.nav__container {
  background-color: #F7D417;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  left: 0;
  opacity: 0;
  overflow: scroll;
  padding: 8.5rem 0 2.5rem;
  position: fixed;
  right: 0;
  top: 0;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  visibility: hidden;
  width: 100%;
  z-index: 3;
}
.nav__container.toggled {
  opacity: 1;
  visibility: visible;
}
.nav__container > .container {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

@media only screen and (max-width: 799px) {
  .nav__primary {
    margin-bottom: 2.5rem;
  }
}

.nav__item {
  padding: 0.5rem 0 0;
}
.nav__item:last-of-type {
  padding-bottom: 0.5rem;
}
.nav__item--main {
  border-top: 1px solid rgba(13, 30, 0, 0.16);
}

.nav__link {
  font-size: 3.5rem;
  line-height: 1.1;
  display: block;
  font-weight: 300;
  text-align: left;
}
.nav__link--secondary {
  font-size: 1.5rem;
  line-height: 1.3;
}
.nav__link--footer {
  font-size: 1.25rem;
  line-height: 1.4;
}
.nav__link--submenu, .nav__link--arrow {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: inherit;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.nav__link--submenu {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.nav__link--submenu::after {
  font-size: 2rem;
  line-height: 1.25;
  display: block;
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}
.nav__link--submenu.active::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.nav__link--arrow::after {
  color: transparent;
  display: block;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition: color 0.3s, -webkit-transform 0.2s;
  transition: color 0.3s, -webkit-transform 0.2s;
  transition: color 0.3s, transform 0.2s;
  transition: color 0.3s, transform 0.2s, -webkit-transform 0.2s;
}
.nav__link--arrow:hover::after {
  color: inherit;
  -webkit-transform: translateX(5px);
          transform: translateX(5px);
}
@media only screen and (max-width: 799px) {
  .nav__link {
    font-size: 1.75rem;
    line-height: 1.25;
  }
  .nav__link--submenu::after {
    font-size: 1.5rem;
    line-height: 1.3;
  }
  .nav__link--secondary {
    font-size: 1.125rem;
    line-height: 1.25;
  }
}

.nav__submenu {
  opacity: 1;
  -webkit-transition: max-height 0.2s, opacity 0.4s;
  transition: max-height 0.2s, opacity 0.4s;
}
.js .nav__submenu {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
}
.nav__submenu .nav__item:first-of-type {
  padding-top: 1.25rem;
}
.nav__submenu .nav__item:last-of-type {
  padding-bottom: 1.25rem;
}

.nav__copy {
  padding-right: 2.5rem;
  text-align: right;
}

.nav__heading {
  margin-bottom: 1.5rem;
}
.nav__heading--footer {
  margin-bottom: 1rem;
}
@media only screen and (max-width: 799px) {
  .nav__heading {
    font-size: 0.75rem;
    line-height: 1.25;
    margin-bottom: 0.5rem;
  }
}

.pagination {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 0.25rem;
     -moz-column-gap: 0.25rem;
          column-gap: 0.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  text-align: center;
}
.pagination li {
  display: inline-block;
}
.pagination .page {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid rgba(13, 30, 0, 0.3);
  border-radius: 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 2rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.6rem 0.5rem 0.4rem;
  -webkit-transition: color 0.2s, background-color 0.2s;
  transition: color 0.2s, background-color 0.2s;
  width: 2rem;
}
@media only screen and (max-width: 649px) {
  .pagination .page {
    margin-left: 3px;
    margin-right: 3px;
  }
}
@media only screen and (max-width: 449px) {
  .pagination .page {
    margin-left: 0;
    margin-right: 0;
  }
}
.pagination .page:hover {
  background-color: #000;
  color: #fff;
}
.pagination .pagination__current-page .page {
  background-color: #000;
  color: #fff;
}

.pagination__nav {
  font-size: 1.75rem;
}
.pagination__nav a::before,
.pagination__nav span::before {
  display: block;
}
.pagination__nav a {
  border: 0;
  color: #000;
}
.pagination__nav span {
  color: rgba(13, 30, 0, 0.3);
}
.pagination__nav--next {
  margin-left: 1rem;
}
.pagination__nav--prev {
  margin-right: 1rem;
}
.pagination__nav--prev a::before,
.pagination__nav--prev span::before {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.page__placeholder {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  margin: 0 1rem;
}
.page__placeholder::before {
  background-color: rgba(13, 30, 0, 0.3);
  content: "";
  display: block;
  height: 1px;
  width: 1.5rem;
}

.page-head {
  margin-bottom: 3rem;
}
.page-head--spaced {
  margin-bottom: 7.5rem;
}
@media only screen and (max-width: 649px) {
  .page-head--spaced {
    margin-bottom: 3.75rem;
  }
  .page-head--reduce-margin {
    margin-bottom: 0.5rem;
  }
}

.page-head__pre-heading {
  margin-bottom: 3rem;
}
@media only screen and (max-width: 799px) {
  .page-head__pre-heading {
    font-size: 0.875rem;
    line-height: 1.4;
  }
}

.page-head__big-heading {
  font-size: 5.5rem;
  line-height: 1.09;
  font-weight: 500;
}
@media only screen and (max-width: 1099px) {
  .page-head__big-heading {
    font-size: 3.5rem;
    line-height: 1.1;
  }
}
@media only screen and (max-width: 799px) {
  .page-head__big-heading {
    font-size: 2rem;
    line-height: 1.25;
  }
}

.page-head__tagline {
  font-size: 3.5rem;
  line-height: 1.1;
  margin-bottom: 2.5rem;
}
@media only screen and (max-width: 1099px) {
  .page-head__tagline {
    font-size: 2.5rem;
    line-height: 1.2;
    margin-bottom: 2rem;
  }
}
@media only screen and (max-width: 799px) {
  .page-head__tagline {
    font-size: 2rem;
    line-height: 1.25;
  }
}

.page-head__title {
  margin-bottom: 3rem;
}

.page-head__subtitle {
  color: rgba(0, 0, 0, 0.75);
  font-weight: 300;
}

.pillar {
  font-size: 1.5rem;
  line-height: 1.3;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 4rem;
  padding-top: 2.5rem;
}
.pillar--accent1 {
  border-top: 8px solid #F7D417;
  color: #F7D417;
}
.pillar--accent2 {
  border-top: 8px solid #60C0CC;
  color: #60C0CC;
}
.pillar--accent3 {
  border-top: 8px solid #A9C346;
  color: #A9C346;
}
.pillar--accent4 {
  border-top: 8px solid #EE95BE;
  color: #EE95BE;
}
@media only screen and (max-width: 649px) {
  .pillar {
    margin-top: 11.25rem;
    padding-bottom: 3rem;
  }
}

.pillar__title,
.pillar__heading {
  font-weight: 500;
}

.pillar__title {
  font-size: 2rem;
  line-height: 1.25;
}
.pillar__title::after {
  border: 12px solid #3c3c3b;
  border-radius: 145px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  content: "";
  display: block;
  height: 145px;
  margin-top: 1.5rem;
  width: 145px;
}
.pillar--accent1 .pillar__title::after {
  border-color: #F7D417;
}
.pillar--accent2 .pillar__title::after {
  border-color: #60C0CC;
}
.pillar--accent3 .pillar__title::after {
  border-color: #A9C346;
}
.pillar--accent4 .pillar__title::after {
  border-color: #EE95BE;
}
@media only screen and (max-width: 649px) {
  .pillar__title {
    font-size: 1.25rem;
    line-height: 1.4;
    position: relative;
  }
  .pillar__title::after {
    bottom: calc(100% + 5rem);
    position: absolute;
  }
}

.pillar__heading {
  font-size: 2.5rem;
  line-height: 1.2;
  margin-bottom: 1.5rem;
}

.pillar__qa-panel {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  opacity: 1;
  -webkit-transition: max-height 0.2s, opacity 0.4s;
  transition: max-height 0.2s, opacity 0.4s;
}
.js .pillar__qa-panel {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
}
.pillar__qa-panel.open {
  max-height: 2000px;
  opacity: 1;
  overflow: visible;
}

.pillar__qa-item {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
.pillar__qa-item:last-of-type {
  border-bottom: 0;
}

.pillar__qa-button {
  font-size: 2.5rem;
  line-height: 1.2;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  color: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 500;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 3.5rem 0;
  text-align: left;
}
.pillar__qa-button::after {
  font-size: 1.5rem;
  line-height: 1.3;
  background-color: #fff;
  border-radius: 100%;
  padding: 0.5rem 0.75rem;
}
@media only screen and (max-width: 649px) {
  .pillar__qa-button {
    font-size: 1.25rem;
    line-height: 1.4;
    padding: 2rem 0;
  }
}

.practice-nav {
  background-color: #F3F3F3;
  padding: 7.5rem 0 8rem;
}

.project-thumb {
  display: block;
  overflow: hidden;
  position: relative;
}
.project-thumb:hover .project-thumb__overlay::before {
  background-color: rgba(0, 0, 0, 0.2);
}
.project-thumb__image {
  -webkit-transition: -webkit-transform 2s;
  transition: -webkit-transform 2s;
  transition: transform 2s;
  transition: transform 2s, -webkit-transform 2s;
}
.project-thumb__content {
  color: #fff;
  left: 1.8rem;
  max-width: 460px;
  position: absolute;
  top: 1.4rem;
  width: 80%;
  z-index: 2;
}
@media only screen and (max-width: 1539px) {
  .project-thumb__content {
    left: 1.2rem;
    top: 1rem;
  }
}
@media only screen and (max-width: 1099px) {
  .project-thumb__content {
    left: 1rem;
    top: 0.7rem;
  }
}
.project-thumb__title {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 0.4rem;
  position: relative;
  text-align: left;
  z-index: 2;
}
@media only screen and (max-width: 1539px) {
  .project-thumb__title {
    font-size: 1.75rem;
  }
}
@media only screen and (max-width: 1099px) {
  .project-thumb__title {
    font-size: 1.125rem;
    margin-bottom: 0;
  }
}
.project-thumb__location {
  text-align: left;
}
@media only screen and (max-width: 1099px) {
  .project-thumb__location {
    font-size: 1.125rem;
    margin-bottom: 0;
  }
}
.project-thumb__overlay {
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(50%, transparent), color-stop(96%, rgba(0, 0, 0, 0.4)));
  background-image: linear-gradient(0deg, transparent 50%, rgba(0, 0, 0, 0.4) 96%);
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: background-color 0.2s ease-in-out;
  transition: background-color 0.2s ease-in-out;
  z-index: 1;
}
.project-thumb__overlay::before {
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: background-color 0.2s ease-in-out;
  transition: background-color 0.2s ease-in-out;
  z-index: 1;
}

.secondary-nav {
  color: #000;
  padding-bottom: 2rem;
  text-align: center;
}
@media only screen and (max-width: 1539px) {
  .secondary-nav {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 799px) {
  .secondary-nav {
    display: none;
  }
}
.secondary-nav .selected > a, .secondary-nav a:hover {
  color: #000;
  text-decoration: underline;
  text-decoration-thickness: 3px;
  text-underline-offset: 7px;
}
.body--header-alt-appearance .secondary-nav .selected > a, .body--header-alt-appearance .secondary-nav a:hover {
  color: #fff;
  text-decoration: underline;
  text-decoration-thickness: 3px;
  text-underline-offset: 7px;
}
.secondary-nav li {
  display: inline-block;
  margin-left: 0.625rem;
  margin-right: 0.625rem;
  position: relative;
}
@media only screen and (max-width: 1539px) {
  .secondary-nav li {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
  }
}
.secondary-nav a {
  font-weight: bold;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}
@media only screen and (max-width: 799px) {
  .secondary-nav a {
    color: #fff;
  }
}
@media only screen and (max-width: 799px) {
  .m-nav-open .secondary-nav a:hover {
    color: #fff;
    text-decoration: underline;
    text-decoration-thickness: 3px;
    text-underline-offset: 7px;
  }
}
.body--header-alt-appearance .secondary-nav a {
  color: #fff;
}
.body--header-alt-appearance .secondary-nav a::after {
  border-color: #fff;
}
.secondary-nav--m {
  display: none;
  padding-bottom: 0;
}
@media only screen and (max-width: 799px) {
  .main-nav__has-child--open .secondary-nav--m {
    display: block;
  }
}
.secondary-nav--m li {
  display: block;
  text-align: left;
}

.search__wrapper {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 0;
  opacity: 0;
  padding: 8rem 0;
  position: fixed;
  right: 0;
  top: 0;
  -webkit-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
  visibility: hidden;
  z-index: 0;
}
@media only screen and (max-width: 649px) {
  .search__wrapper {
    display: block;
    padding-top: 140px;
  }
}
@media only screen and (max-width: 1099px) {
  .search__wrapper {
    padding: 100px 20px 0;
  }
}
.search-open .search__wrapper {
  opacity: 1;
  visibility: visible;
  z-index: 3;
}

.search__form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 2.5rem;
  width: 100%;
}

.search__input-container {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto 2rem;
  max-width: 704px;
  width: 100%;
}
.search__input-container::before {
  font-size: 2rem;
  line-height: 1.25;
  padding-bottom: 0.5rem;
}
.search__input-container button {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  width: 2.5rem;
}
.search__input-container button::before {
  font-size: 2rem;
  line-height: 1.25;
  padding-bottom: 0.5rem;
}

.search__button {
  color: #000;
}

input[type=text].search__input {
  font-size: 1.5rem;
  border-bottom: 0;
  color: #000;
  font-weight: 300;
  line-height: normal;
  margin: 0 auto;
  max-width: 90%;
}
input[type=text].search__input:focus {
  outline: 0;
}
@media only screen and (max-width: 840px) {
  input[type=text].search__input {
    font-size: 1.75rem;
    width: 90%;
  }
}
input[type=text].search__input::-webkit-input-placeholder {
  opacity: 1;
}
input[type=text].search__input::-moz-placeholder {
  opacity: 1;
}
input[type=text].search__input:-ms-input-placeholder {
  opacity: 1;
}
input[type=text].search__input::-ms-input-placeholder {
  opacity: 1;
}
input[type=text].search__input::placeholder {
  opacity: 1;
}

.search__result-text {
  color: rgba(0, 0, 0, 0.75);
  font-weight: 300;
  margin-bottom: 8rem;
  text-align: center;
}
.search__result-text span {
  color: #000;
  font-weight: 500;
}

.section {
  padding: 7.5rem 0;
}
.section--dark {
  background-color: #000;
  color: #fff;
}
.section--accent {
  background-color: #F7D417;
  color: #000;
}
.section--reduce-padding-bottom {
  padding-bottom: 4rem;
}
@media only screen and (max-width: 649px) {
  .section {
    padding: 3.5rem 0;
  }
}

.subnav {
  font-size: 1.25rem;
  line-height: 1.4;
  font-weight: 300;
  margin-bottom: 6.5rem;
}
@media only screen and (max-width: 649px) {
  .subnav {
    margin-bottom: 3.25rem;
  }
}

.subnav__item {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.subnav__item::before {
  content: url("../img/bullet-empty.svg");
  display: block;
  margin-bottom: 0.25rem;
}
.subnav__item:hover::before, .subnav__item:focus::before, .subnav__item--selected::before {
  content: url("../img/bullet-fill.svg");
}
.subnav__item--selected {
  font-weight: 500;
}

.tag {
  background-color: transparent;
  padding-bottom: 0.1rem;
  -webkit-transition: background-color 0.3s, border 0.3s;
  transition: background-color 0.3s, border 0.3s;
}
.tag--selected, .tag:hover, .tag:focus-visible {
  background-color: #F7D417;
  border-color: #F7D417;
}
@media only screen and (max-width: 799px) {
  .tag {
    margin-bottom: 0.5rem;
  }
}

.text-link {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.text-link::before, .text-link::after {
  color: inherit;
  display: block;
  padding-left: 0.5rem;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition: color 0.3s, -webkit-transform 0.2s;
  transition: color 0.3s, -webkit-transform 0.2s;
  transition: color 0.3s, transform 0.2s;
  transition: color 0.3s, transform 0.2s, -webkit-transform 0.2s;
}
.text-link::before {
  display: none;
}
.text-link:hover::after {
  -webkit-transform: translateX(5px);
          transform: translateX(5px);
}
.text-link:hover::before {
  -webkit-transform: translateX(-5px) rotate(180deg);
          transform: translateX(-5px) rotate(180deg);
}
.text-link--center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.text-link--back::after {
  display: none;
}
.text-link--back::before {
  display: block;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transform-origin: center;
          transform-origin: center;
}

.toggles {
  position: relative;
}

.toggle-content {
  position: absolute;
  top: 0;
}

.timeline__item__wrapper::after, .timeline__header::before {
  border: 1px solid #3c3c3b;
  content: "";
  left: 0;
  margin: 0 auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 0;
}

.timeline__top {
  position: relative;
}
.timeline__top::after {
  background-color: #000;
  border-radius: 1rem;
  content: "";
  display: block;
  height: 12px;
  left: auto;
  position: absolute;
  right: -22px;
  width: 12px;
  z-index: 2;
}
@media only screen and (max-width: 449px) {
  .timeline__top::after {
    display: none;
  }
}

.timeline__top--alt::after {
  left: -50px;
  right: auto;
}
@media only screen and (max-width: 1539px) {
  .timeline__top--alt::after {
    left: -30px;
    right: auto;
  }
}
@media only screen and (max-width: 649px) {
  .timeline__top--alt::after {
    left: -18;
    right: auto;
  }
}

.timeline__year {
  font-size: 2.5rem;
  color: #000;
  line-height: 0.75;
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 449px) {
  .timeline__year {
    margin-bottom: 0.5rem;
  }
}

.timeline__header {
  padding-top: 2.5rem;
  position: relative;
}
.timeline__header::before {
  height: 2.5rem;
}

.timeline__header__quote {
  margin-bottom: 3.5rem;
  text-align: center;
}

.timeline__item__wrapper {
  font-size: 1.125rem;
  padding-bottom: 2.625rem;
  position: relative;
}
@media only screen and (max-width: 1099px) {
  .timeline__item__wrapper {
    margin-top: 2px;
  }
}
@media only screen and (max-width: 449px) {
  .timeline__item__wrapper {
    padding-bottom: 1rem;
  }
}
.timeline__item__wrapper::after {
  height: 100%;
}
@media only screen and (max-width: 449px) {
  .timeline__item__wrapper::after {
    display: none;
  }
}

.timeline__item__inner {
  margin-bottom: 3.5rem;
}
@media only screen and (max-width: 449px) {
  .timeline__item__inner {
    margin-bottom: 0;
  }
}

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

.timeline__item__inner--right {
  padding-left: 2px;
}

.timeline__fig {
  display: block;
  margin-bottom: 3.125rem;
}
.timeline__fig img {
  display: inline-block;
  margin-bottom: 0.625;
}

.timeline-block {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
  -webkit-transition: opacity 1s, -webkit-transform 1s;
  transition: opacity 1s, -webkit-transform 1s;
  transition: transform 1s, opacity 1s;
  transition: transform 1s, opacity 1s, -webkit-transform 1s;
}

.timeline-block--shifted {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
  -webkit-transform: translateY(8rem);
          transform: translateY(8rem);
}

.slideshow {
  position: relative;
  overflow: hidden;
}

.slideshow .slideshow__prop {
  visibility: hidden;
}

.slideshow .slideshow__slide {
  position: absolute;
  top: 0;
  z-index: 0;
  max-width: none;
  width: 100%;
  opacity: 0;
}

.slideshow .slideshow__slide {
  opacity: 0;
}

.slideshow .slideshow__slide--behind,
.slideshow .slideshow__slide--top {
  -webkit-transition: opacity 0.6s ease;
  transition: opacity 0.6s ease;
}

.slideshow .slideshow__slide--behind {
  z-index: 1;
}

.slideshow .slideshow__slide--top {
  z-index: 2;
}

.slideshow--overlap .slideshow__slide--behind,
.slideshow--overlap .slideshow__slide--top {
  opacity: 1;
}

.slideshow--simultaneous .slideshow__slide--top {
  opacity: 1;
}

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

.slideshow__pip {
  display: inline-block;
  padding-left: 0.3375rem;
  padding-right: 0.3375rem;
  cursor: pointer;
}
.slideshow__pip::after {
  content: " ";
  display: block;
  width: 0.65rem;
  height: 0.65rem;
  background-color: #000;
  border-radius: 1rem;
}
@media only screen and (max-width: 1539px) {
  .slideshow__pip::after {
    width: 0.55rem;
    height: 0.55rem;
  }
}
@media only screen and (max-width: 649px) {
  .slideshow__pip::after {
    height: 0.4rem;
    width: 0.4rem;
  }
}
.slideshow-pips--inverted .slideshow__pip::after {
  background-color: #fff;
}
.slideshow__pip--selected::after {
  background-color: #EDEDED;
}
.slideshow-pips--inverted .slideshow__pip--selected::after {
  background-color: #EDEDED;
}

.BambooHR-ATS-board {
  font-family: "ClarityCity-Regular" !important;
}

.BambooHR-ATS-Jobs-List {
  padding: 20px 0 !important;
}

.BambooHR-ATS-Jobs-Item {
  font-size: 1.125rem !important;
  margin-bottom: 1rem !important;
}
.BambooHR-ATS-Jobs-Item span {
  font-size: 1rem !important;
}
@media only screen and (max-width: 649px) {
  .BambooHR-ATS-Jobs-Item span {
    display: block;
    font-size: 0.875rem !important;
    float: none !important;
    padding-top: 0 !important;
  }
}
.BambooHR-ATS-Jobs-Item a {
  font-size: 1.125rem !important;
  color: #000 !important;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}
.BambooHR-ATS-Jobs-Item a:focus, .BambooHR-ATS-Jobs-Item a:hover {
  color: #000 !important;
}

.BambooHR-ATS-Jobs-List {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2) !important;
}

.BambooHR-ATS-board h2 {
  font-size: 1.75rem;
  border-bottom: 1px solid #3c3c3b !important;
  color: #3c3c3b !important;
}

.external-feed {
  background: url("../img/loader.svg") no-repeat center 90px;
  text-indent: -999em;
  min-height: 138px;
}

.external-feed--loaded {
  background: none;
  text-indent: 0;
}

.state-will-change {
  height: auto;
  visibility: visible;
  opacity: 1;
  -webkit-transition: opacity 0.8s ease-in-out;
  transition: opacity 0.8s ease-in-out;
}

.state-will-change--fast {
  -webkit-transition: opacity 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out;
}

.is-hidden {
  opacity: 0;
  overflow: hidden;
  visibility: hidden;
}

.is-hidden--flattened {
  height: 0;
}

.will-fade {
  bottom: 0;
  left: 0;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: opacity 0.8s;
  transition: opacity 0.8s;
  z-index: 1;
}

.faded {
  opacity: 0;
}

.ie8 img {
  width: auto;
}
.ie8 blockquote:before, .ie8 blockquote:after,
.ie8 q:before,
.ie8 q:after {
  content: none;
}
.ie8 .is-hidden {
  opacity: 1;
  visibility: visible;
}
.ie8 .is-hidden--ie8 {
  visibility: hidden;
}
.ie8 .header-media__content,
.ie8 .header-slideshow__slide__text {
  padding: 300px 0 0;
}
.ie8 .header-media__content-container {
  background-color: transparent;
}
.ie8 .search__wrapper .search__input {
  padding-top: 300px;
}
.ie8 .hide-ie8,
.ie8 .slideshow__slide {
  display: none;
}
.ie8 .slideshow__slide--top {
  display: block;
}
.ie8 .header__logo {
  background: url("../img/logo-brand.png") 0 0/contain no-repeat;
}
.body--header-alt-appearance .ie8 .header__logo {
  background-image: url("../img/logo-secondary.png");
}
.ie8 .accordion__item__button:after {
  font-size: 9px;
  color: #000;
  position: absolute;
  right: 0;
  top: 1.6rem;
}
.ie8 .filter-clear a:after {
  font-size: 9px;
  padding-left: 0.5rem;
}
.ie8 .filter-nav a.selected:after {
  font-size: 9px;
  padding-left: 0.5rem;
}
.ie8 .filter-nav--inline a.selected:after {
  font-size: 9px;
  padding-left: 0.5rem;
}
.ie8 .language-nav li.language-nav__back:before {
  padding-right: 0.3375rem;
}
.ie8 .icon:before,
.ie8 .icon-end:after, .ie8 .accordion__item__button:after, .ie8 .header__search-toggle:before, .search-open .ie8 .header__search-toggle:before, .ie8 .filter-clear a:after, .ie8 .filter-nav a.selected:after, .ie8 .filter-nav--inline a.selected:after, .ie8 .language-nav li.language-nav__back:before {
  font-family: "Site Icons";
  vertical-align: middle;
  speak: none;
  font-weight: normal;
  font-style: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
}
.ie8 .icon--close:before,
.ie8 .icon-end--close:after, .search-open .ie8 .header__search-toggle:before, .ie8 .filter-clear a:after, .ie8 .filter-nav a.selected:after, .ie8 .filter-nav--inline a.selected:after {
  content: "\e900";
}
.ie8 .icon--down:before,
.ie8 .icon-end--down:after {
  content: "\e901";
}
.ie8 .icon--download:before,
.ie8 .icon-end--download:after {
  content: "\e902";
}
.ie8 .icon--left-arrow:before,
.ie8 .icon-end--left-arrow:after, .ie8 .language-nav li.language-nav__back:before {
  content: "\e903";
}
.ie8 .icon--map-pin:before,
.ie8 .icon-end--map-pin:after {
  content: "\e904";
}
.ie8 .icon--menu:before,
.ie8 .icon-end--menu:after {
  content: "\e5d2";
}
.ie8 .icon--right-arrow:before,
.ie8 .icon-end--right-arrow:after {
  content: "\e905";
}
.ie8 .icon--search:before,
.ie8 .icon-end--search:after, .ie8 .header__search-toggle:before {
  content: "\e909";
}
.ie8 .icon--twitter:before,
.ie8 .icon-end--twitter:after {
  content: "\e600";
}
.ie8 .icon--facebook:before,
.ie8 .icon-end--facebook:after {
  content: "\e601";
}
.ie8 .icon--instagram:before,
.ie8 .icon-end--instagram:after {
  content: "\e602";
}
.ie8 .icon--linkedin:before,
.ie8 .icon-end--linkedin:after {
  content: "\e908";
}
.ie8 .icon--plus:before,
.ie8 .icon-end--plus:after, .ie8 .accordion__item__button:after {
  content: "\e915";
}
.ie8 .icon--play:before,
.ie8 .icon-end--play:after {
  content: "\e907";
}
.ie8 .icon--audio:before,
.ie8 .icon-end--audio:after {
  content: "\e90a";
}
.ie8 .icon--filters-open:before,
.ie8 .icon-end--filters-open:after {
  content: "\e932";
}
.ie8 .icon--filters-closed:before,
.ie8 .icon-end--filters-closed:after {
  content: "\e933";
}
.ie8 .icon--send-email:before,
.ie8 .icon-end--send-email:after {
  content: "\e90b";
}
.ie8 .icon--pause:before,
.ie8 .icon-end--pause:after {
  content: "\e90d";
}
.ie8 .icon--mute:before,
.ie8 .icon-end--mute:after {
  content: "\e90e";
}
.ie8 .icon--filter:before,
.ie8 .icon-end--filter:after {
  content: "\e90f";
}
.ie8 .icon--down-arrow:before,
.ie8 .icon-end--down-arrow:after {
  content: "\e910";
}
.ie8 .icon--forward:before,
.ie8 .icon-end--forward:after {
  content: "\e911";
}
.ie8 .icon--external:before,
.ie8 .icon-end--external:after {
  content: "\e912";
}
.ie8 .icon--playing:before,
.ie8 .icon-end--playing:after {
  content: "\e90c";
}
.ie8 .icon--sort:before,
.ie8 .icon-end--sort:after {
  content: "\e913";
}
.ie8 .icon--minus:before,
.ie8 .icon-end--minus:after {
  content: "\e914";
}
.ie8 .icon--check:before,
.ie8 .icon-end--check:after {
  content: "\e916";
}
.ie8 .icon--calendar:before,
.ie8 .icon-end--calendar:after {
  content: "\e917";
}
.ie8 .icon--events:before,
.ie8 .icon-end--events:after {
  content: "\e918";
}
.ie8 .icon--health:before,
.ie8 .icon-end--health:after {
  content: "\e919";
}
.ie8 .icon--ladder:before,
.ie8 .icon-end--ladder:after {
  content: "\e91a";
}
.ie8 .icon--mortarboard:before,
.ie8 .icon-end--mortarboard:after {
  content: "\e91b";
}
.ie8 .icon--office:before,
.ie8 .icon-end--office:after {
  content: "\e91c";
}
.ie8 .icon--back:before,
.ie8 .icon-end--back:after {
  content: "\e91d";
}
.ie8 .icon--foward:before,
.ie8 .icon-end--foward:after {
  content: "\e91e";
}