@charset "UTF-8";
/**
 * @license
 * MyFonts Webfont Build ID 3867246, 2020-12-16T11:57:38-0500
 *
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are
 * explicitly restricted from using the Licensed Webfonts(s).
 *
 * You may obtain a valid license at the URLs below.
 *
 * Webfont: undefined by undefined
 * URL: https://www.myfonts.comundefined
 * Copyright: Copyright © 2024 Monotype Imaging Inc. All rights reserved.
 *
 * Webfont: undefined by undefined
 * URL: https://www.myfonts.comundefined
 * Copyright: Copyright © 2024 Monotype Imaging Inc. All rights reserved.
 *
 * Webfont: undefined by undefined
 * URL: https://www.myfonts.comundefined
 * Copyright: Copyright © 2024 Monotype Imaging Inc. All rights reserved.
 *
 * Webfont: undefined by undefined
 * URL: https://www.myfonts.comundefined
 * Copyright: Copyright © 2024 Monotype Imaging Inc. All rights reserved.
 *
 * Webfont: undefined by undefined
 * URL: https://www.myfonts.comundefined
 * Copyright: Copyright © 2024 Monotype Imaging Inc. All rights reserved.
 *
 * © 2024 MyFonts Inc. */
@font-face {
  font-family: "TT Commons";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/TTCommonsProRegular/font.woff2") format("woff2"), url("../fonts/TTCommonsProRegular/font.woff") format("woff");
}
@font-face {
  font-family: "TT Commons";
  font-style: normal;
  font-weight: 200;
  src: url("../fonts/TTCommonsProExtraLight/font.woff2") format("woff2"), url("../fonts/TTCommonsProExtraLight/font.woff") format("woff");
}
@font-face {
  font-family: "TT Commons";
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/TTCommonsProBold/font.woff2") format("woff2"), url("../fonts/TTCommonsProBold/font.woff") format("woff");
}
@font-face {
  font-family: "TT Commons";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/TTCommonsProExtraBold/font.woff2") format("woff2"), url("../fonts/TTCommonsProExtraBold/font.woff") format("woff");
}
@font-face {
  font-family: "TT Commons";
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/TTCommonsProItalic/font.woff2") format("woff2"), url("../fonts/TTCommonsProItalic/font.woff") format("woff");
}
@font-face {
  font-family: "Site Icons";
  font-style: normal;
  font-weight: normal;
  src: url("../fonts/icomoon.eot?v=2");
  src: url("../fonts/icomoon.eot?#iefix") format("embedded-opentype"), url("../fonts/icomoon.woff?v=2") format("woff"), url("../fonts/icomoon.ttf?v=2") format("truetype"), url("../fonts/icomoon.svg?v=2") 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;
}

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;
  width: 100%;
}

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;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 1rem;
  line-height: 1rem;
  background: none;
}

input[type=text],
input[type=email],
input[type=password],
input[type=number],
input[type=color],
textarea,
select {
  width: 100%;
}

select::-ms-expand {
  display: 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 {
  font-style: italic;
}

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

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

img {
  height: auto;
  display: block;
}

.flex-container {
  padding-bottom: 56.25%;
}

.lightbox__button--next::after, .lightbox__button--prev::before, .lightbox__button--close::before, .team-member__heading-filter-row__filter-option label::after, .nav__toggle::before, .fold-out__close::after, .footer__contact-item::before, .filter__label::before, .home__cta::after, .breadcrumb__item:first-of-type::after, .button-thin--right-arrow::before, .button--right-arrow::before,
.button-end--right-arrow::after, .button-thin--arrow-down::before, .button--arrow-down::before,
.button-end--arrow-down::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;
}

.breadcrumb__item:first-of-type::after, .icon--arrow-right::before,
.icon-end--arrow-right::after {
  content: "\e900";
}

.icon--breaker::before,
.icon-end--breaker::after {
  content: "\e901";
}

.lightbox__button--close::before, .open .nav__toggle::before, .fold-out__close::after, .icon--close::before,
.icon-end--close::after {
  content: "\e902";
}

.footer__contact-item--mail::before, .icon--mail::before,
.icon-end--mail::after {
  content: "\e903";
}

.nav__toggle::before, .icon--menu::before,
.icon-end--menu::after {
  content: "\e904";
}

.footer__contact-item--phone::before, .icon--phone::before,
.icon-end--phone::after {
  content: "\e905";
}

.filter__label::before, .icon--clock::before,
.icon-end--clock::after {
  content: "\e906";
}

.icon--team-icon::before,
.icon-end--team-icon::after {
  content: "\e907";
}

.lightbox__button--next::after, .home__cta::after, .button-thin--right-arrow::before, .button--right-arrow::before,
.button-end--right-arrow::after, .icon--arrow-alt::before,
.icon-end--arrow-alt::after {
  content: "\e908";
}

.home__cta--work-with-us::after, .icon--external-link::before,
.icon-end--external-link::after {
  content: "\e909";
}

.icon--arrow-up::before,
.icon-end--arrow-up::after {
  content: "\e90a";
}

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

.icon--play::before,
.icon-end--play::after {
  content: "\e90c";
}

.button-thin--arrow-down::before, .button--arrow-down::before,
.button-end--arrow-down::after, .icon--arrow-down::before,
.icon-end--arrow-down::after {
  content: "\e910";
}

.icon--youtube::before,
.icon-end--youtube::after {
  content: "\ea9d";
}

.icon--open-quote::before,
.icon-end--open-quote::after {
  content: "\e90d";
}

.team-member__heading-filter-row__filter-option label::after, .icon--check::before,
.icon-end--check::after {
  content: "\e90e";
}

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

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

.icon--awareness::before,
.icon-end--awareness::after {
  content: "\e90f";
}

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

.icon--communication::before,
.icon-end--communication::after {
  content: "\e914";
}

.icon--creativity::before,
.icon-end--creativity::after {
  content: "\e915";
}

.icon--diversity::before,
.icon-end--diversity::after {
  content: "\e916";
}

.icon--circle-left::before,
.icon-end--circle-left::after {
  content: "\e917";
}

.icon--circle-right::before,
.icon-end--circle-right::after {
  content: "\e919";
}

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

.icon--expand::before,
.icon-end--expand::after {
  content: "\e91d";
}

.lightbox__button--prev::before, .icon--arrow-alt-left::before,
.icon-end--arrow-alt-left::after {
  content: "\e91c";
}

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

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

[todo] {
  position: relative;
}
[todo]:before {
  font-size: 11px;
  font-weight: bold;
  text-transform: none;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
  content: "TODO " attr(todo);
  color: #fff;
  background-color: #f35100;
  border: 2px dashed rgba(255, 255, 255, 0.2);
  z-index: 999;
  padding: 2px;
}

.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-24 {
  width: 4.1666666667%;
}

.a2-24 {
  width: 8.3333333333%;
}

.a3-24 {
  width: 12.5%;
}

.a4-24 {
  width: 16.6666666667%;
}

.a5-24 {
  width: 20.8333333333%;
}

.a6-24 {
  width: 25%;
}

.a7-24 {
  width: 29.1666666667%;
}

.a8-24 {
  width: 33.3333333333%;
}

.a9-24 {
  width: 37.5%;
}

.a10-24 {
  width: 41.6666666667%;
}

.a11-24 {
  width: 45.8333333333%;
}

.a12-24 {
  width: 50%;
}

.a13-24 {
  width: 54.1666666667%;
}

.a14-24 {
  width: 58.3333333333%;
}

.a15-24 {
  width: 62.5%;
}

.a16-24 {
  width: 66.6666666667%;
}

.a17-24 {
  width: 70.8333333333%;
}

.a18-24 {
  width: 75%;
}

.a19-24 {
  width: 79.1666666667%;
}

.a20-24 {
  width: 83.3333333333%;
}

.a21-24 {
  width: 87.5%;
}

.a22-24 {
  width: 91.6666666667%;
}

.a23-24 {
  width: 95.8333333333%;
}

.a24-24 {
  width: 100%;
}

.a1-25 {
  width: 4%;
}

.a2-25 {
  width: 8%;
}

.a3-25 {
  width: 12%;
}

.a4-25 {
  width: 16%;
}

.a5-25 {
  width: 20%;
}

.a6-25 {
  width: 24%;
}

.a7-25 {
  width: 28%;
}

.a8-25 {
  width: 32%;
}

.a9-25 {
  width: 36%;
}

.a10-25 {
  width: 40%;
}

.a11-25 {
  width: 44%;
}

.a12-25 {
  width: 48%;
}

.a13-25 {
  width: 52%;
}

.a14-25 {
  width: 56%;
}

.a15-25 {
  width: 60%;
}

.a16-25 {
  width: 64%;
}

.a17-25 {
  width: 68%;
}

.a18-25 {
  width: 72%;
}

.a19-25 {
  width: 76%;
}

.a20-25 {
  width: 80%;
}

.a21-25 {
  width: 84%;
}

.a22-25 {
  width: 88%;
}

.a23-25 {
  width: 92%;
}

.a24-25 {
  width: 96%;
}

.a25-25 {
  width: 100%;
}

@media only screen and (max-width: 1099px) {
  .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: 979px) {
  .e1-6 {
    width: 16.6666666667%;
  }
  .e2-6 {
    width: 33.3333333333%;
  }
  .e3-6 {
    width: 50%;
  }
  .e4-6 {
    width: 66.6666666667%;
  }
  .e5-6 {
    width: 83.3333333333%;
  }
  .e6-6 {
    width: 100%;
  }
}
@media only screen and (max-width: 828px) {
  .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-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-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 {
  border: 2px solid #242424;
  color: #242424;
  padding: 0.5rem;
  text-align: center;
}

.cookie-manager {
  font-size: 0.875rem;
  line-height: 1.5;
}
.cookie-manager h2,
.cookie-manager h3,
.cookie-manager h4 {
  margin-bottom: 0.5rem;
}
.cookie-manager h2 {
  font-size: 1.5rem;
  line-height: 1.5;
}
.cookie-manager h3 {
  font-size: 1.5rem;
  line-height: 1.5;
}
.cookie-manager h4 {
  font-size: 1.25rem;
  line-height: 1.5;
}
.cookie-manager p {
  font-size: 1.125rem;
  margin-bottom: 1rem;
}
.cookie-manager a {
  color: #242424;
  text-decoration: underline;
}
.cookie-manager--overlay-mode h3 {
  font-size: 1.125rem;
  line-height: 1.5;
}
.cookie-manager--overlay-mode p {
  font-size: 1rem;
}

.cookie-manager--overlay-mode {
  background-color: rgba(36, 36, 36, 0.8);
  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: #EBEBEB;
}
.cookie-manager--overlay-mode .cookie-manager__scroller {
  bottom: 0;
  left: 0;
  overflow: auto;
  position: absolute;
  right: 0;
  top: 0;
}

.cookie-manager__container {
  color: #242424;
  padding: 2.5rem;
}
.cookie-manager__container--spaced {
  padding: 0;
}
.cookie-manager__container--spaced p {
  margin-bottom: 1.5rem;
}
.cookie-manager--overlay-mode .cookie-manager__container {
  padding-bottom: 8rem;
  padding-top: 5rem;
  position: relative;
}

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

.cookie-manager__logo {
  background: url("../img/logo.svg") no-repeat 0 0;
  background-size: contain;
  height: 64px;
  margin-bottom: 2rem;
  position: absolute;
  top: 0;
  width: 116px;
}

.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: #EBEBEB;
  bottom: 0;
  -webkit-box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.2);
          box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.2);
  display: none;
  left: 0;
  padding: 1rem;
  position: fixed;
  right: 0;
  z-index: 1001;
}
.cookie-manager--overlay-mode .cookie-manager__button-container {
  padding: 1.5rem 2.5rem;
  position: absolute;
}
.cookie-manager-buttons-visible .cookie-manager__button-container {
  display: block;
}

.cookie-manager__buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  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;
  width: 100%;
}
.cookie-manager__button:last-of-type {
  margin-right: 0;
}
.cookie-manager__button--primary {
  background-color: #242424;
  border-color: #242424;
  color: #EBEBEB;
}

.cookie-manager__cookie-table {
  background-color: #fff;
  border-radius: 4px;
  color: #242424;
  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 #242424;
  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: #fff;
}
.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 #fff;
          box-shadow: 0 0 1px #fff;
}
.cookie-manager__lightswitch--global input:checked + .cookie-manager__lightswitch-slider::after {
  content: "Accept all";
}

.cookie-manager__lightswitch-slider {
  background-color: rgba(0, 0, 0, 0.5);
  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: #242424;
  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 #EBEBEB;
  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;
  bottom: 0;
  color: #242424;
  display: none;
  left: 0;
  pointer-events: none;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1000;
}
.cookie-banner-open .cookie-banner {
  display: block;
}
.cookie-banner a {
  color: #242424;
  text-decoration: underline;
}

.cookie-banner__inner {
  background-color: #EBEBEB;
  bottom: 3rem;
  max-width: 360px;
  padding: 2rem;
  pointer-events: all;
  position: absolute;
  right: 3rem;
}
.cookie-banner__inner p {
  margin-bottom: 1rem;
}
@media only screen and (max-width: 828px) {
  .cookie-banner__inner {
    bottom: 0;
    left: 0;
    max-width: 100%;
    right: 0;
    -webkit-transform: none;
            transform: none;
  }
}

.cookie-banner__title {
  font-size: 1.125rem;
  line-height: 1.5;
  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;
  width: 100%;
}
.cookie-banner__button--primary {
  background-color: #242424;
  border-color: #242424;
  color: #EBEBEB;
}

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

.container {
  margin: 0 auto;
  max-width: 1920px;
  padding: 0 80px;
}
@media only screen and (max-width: 649px) {
  .container {
    padding: 0 20px;
  }
}

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

.container--bleed-right {
  padding-right: 0;
}
@media only screen and (max-width: 979px) {
  .container--bleed-right--e {
    padding: 0 80px;
    padding-right: 80px;
  }
}
@media only screen and (max-width: 649px) {
  .container--bleed-right {
    padding: 0 20px;
  }
}

.container--wider {
  padding: 0 32px;
}
@media only screen and (max-width: 649px) {
  .container--wider {
    padding: 0 20px;
  }
}

.container--pt {
  padding-top: 7.5rem;
}
@media only screen and (max-width: 979px) {
  .container--pt {
    padding-top: 3.5rem;
  }
}

.container--left-padded {
  padding-left: 96px;
}

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

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

.container--right-padding-mob {
  padding-right: 80px;
}
@media only screen and (max-width: 649px) {
  .container--right-padding-mob {
    padding-right: 20px;
  }
}

.container--relative {
  position: relative;
}

.container--full-height {
  height: 100%;
}

.container--top-bottom-padded {
  padding-bottom: 6.5rem;
  padding-top: 6.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--align-baseline {
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}
.flex--align-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.flex--align-start {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.flex--column-gap {
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
}
.flex--justify-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.flex--justify-start {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.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--align-top {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.flex--row-gap {
  row-gap: 1rem;
}
@media only screen and (max-width: 828px) {
  .flex--g-wrap {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media only screen and (max-width: 649px) {
  .flex--g-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .flex--g-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.grid {
  margin-left: -32px;
}
.grid--xl {
  margin-left: -87px;
}
.grid--xl > .grid__item {
  padding-left: 87px;
}
.grid--xxl {
  margin-left: -8.875rem;
}
.grid--xxl > .grid__item {
  padding-left: 8.875rem;
}
@media only screen and (max-width: 979px) {
  .grid--xxl {
    margin-left: -87px;
  }
  .grid--xxl > .grid__item {
    padding-left: 87px;
  }
}

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

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

.relative {
  position: relative;
}

.full-height {
  height: 100%;
}

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

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

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

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

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

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

.mb-120 {
  margin-bottom: 7.5rem;
}
@media only screen and (max-width: 828px) {
  .mb-120 {
    margin-bottom: 3.5rem;
  }
}

@media only screen and (max-width: 979px) {
  .mb-120-mobile {
    margin-bottom: 7rem;
  }
}

.mb-section {
  margin-bottom: 6.25rem;
}

.mb-last {
  margin-bottom: 9.5rem;
}

.mt-24 {
  margin-top: 1.5rem;
}

.mt-48 {
  margin-top: 3rem;
}

.mt-106 {
  margin-top: 6.625rem;
}

.pt-106 {
  padding-top: 6.625rem;
}

.mt-210 {
  margin-top: 13.125rem;
}

.overflow-hidden {
  overflow: hidden;
}

.flex-logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.full-image {
  width: 100%;
}

.full-height-offset-header {
  min-height: calc(100vh - 106px - 106px);
  padding-top: 106px;
}
@media only screen and (max-width: 1449px) {
  .full-height-offset-header {
    height: auto;
  }
}

.section-offset-header {
  padding-top: 106px;
}

.section-mt {
  margin-top: 6.5rem;
}
@media only screen and (max-width: 828px) {
  .section-mt {
    margin-top: 4rem;
  }
}

@media only screen and (max-width: 979px) {
  .align-center-mob {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

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

@media only screen and (max-width: 979px) {
  .mt-e-24 {
    margin-top: 0.5rem;
  }
}
@media only screen and (max-width: 649px) {
  .g-overflow-hidden {
    overflow: hidden;
  }
  .mb-g-24 {
    margin-bottom: 1.5rem;
  }
  .mt-g-48 {
    margin-top: 3rem;
  }
}
@media only screen and (min-width: 980px) {
  .mt-from-e-24 {
    margin-top: 1.5rem;
  }
}
.p,
input,
textarea,
button,
body {
  font-size: 1.25rem;
  line-height: 1.5;
  line-height: 28px;
}

.sub-title {
  font-size: 1.5rem;
  line-height: 1.5;
  font-weight: bold;
  margin-bottom: 3rem;
}

.page-title,
.profile__title {
  font-size: 6rem;
  line-height: 1;
  font-weight: 200;
  margin-bottom: 2rem;
}
@media only screen and (max-width: 649px) {
  .page-title,
.profile__title {
    font-size: 3rem;
    line-height: 1.1;
  }
}

.h,
.profile__insights__title,
.typeset h2 {
  font-size: 2rem;
  line-height: 1.3;
  font-weight: bold;
  margin-bottom: 1rem;
}

.typeset h3 {
  font-size: 1.75rem;
  line-height: 1.5;
  font-weight: bold;
  margin-bottom: 0.6rem;
}

.h-3,
.profile__heading {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 32px;
}

.team-member__statistics__item__heading, .profile__listing-image__content__title, .profile__job-title, .contact__location__heading {
  font-size: 2.5rem;
  font-weight: 400;
  line-height: 44px;
}

.p,
.typeset p,
.typeset ul,
.typeset ol,
.typeset img {
  display: block;
  margin: 0 0 1rem;
}

.typeset--large p,
.typeset--large ul,
.typeset--large ol,
.typeset--large img {
  font-size: 2rem;
  line-height: 1.3;
}

.a,
.team-member__email,
.footer__links a,
.typeset a {
  color: #242424;
  position: relative;
  text-decoration: none;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}
.a::after,
.team-member__email::after,
.footer__links a::after,
.typeset a::after {
  background-color: #242424;
  bottom: 0;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  width: 100%;
}
.a:hover, .a:focus,
.team-member__email:hover,
.footer__links a:hover,
.typeset a:hover,
.team-member__email:focus,
.footer__links a:focus,
.typeset a:focus {
  color: #717171;
}
.a:hover::after, .a:focus::after,
.team-member__email:hover::after,
.footer__links a:hover::after,
.typeset a:hover::after,
.team-member__email:focus::after,
.footer__links a:focus::after,
.typeset a:focus::after {
  background-color: #717171;
}
@media only screen and (max-width: 828px) {
  .home__container .a,
.home__container .team-member__email,
.home__container .footer__links a,
.footer__links .home__container a,
.home__container .typeset a,
.typeset .home__container a {
    color: #fff;
  }
  .home__container .a::after,
.home__container .team-member__email::after,
.home__container .footer__links a::after,
.footer__links .home__container a::after,
.home__container .typeset a::after,
.typeset .home__container a::after {
    background-color: #fff;
  }
}

.a-neutral,
.sub-nav__link,
.share-links__link,
.team-member__link,
.contact__location a {
  color: inherit;
  text-decoration: none;
}

.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;
}

.theme--3 .typeset a,
.theme--3 .typeset p {
  color: #fff;
}

html {
  scroll-behavior: smooth;
}

body,
input,
textarea,
button {
  font-family: "TT Commons";
}

body {
  color: #242424;
  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;
}
body.theme--3 {
  color: #fff;
}

.body {
  background-color: #fff;
}
.body.fold-out-open {
  height: 100vh;
  overflow-y: hidden;
}
.body--0 {
  background-color: #858EC7;
}
.body--1 {
  background-color: #FB8D47;
}
.body--2 {
  background-color: #77B5A3;
}
.body--3 {
  background-color: #242424;
}

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

.skip-to-content {
  left: -999rem;
  position: absolute;
  top: 0;
  z-index: 99;
}
.skip-to-content:focus {
  left: 0;
}

.video-embed {
  cursor: pointer;
}

.fade-out {
  bottom: 0;
  left: 0;
  opacity: 1;
  position: absolute;
  right: 0;
  top: 0;
}

.transition-overlay {
  background-color: white;
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  z-index: 100;
}

.adjacent-project {
  background-position: center;
  background-size: cover;
  min-height: 100%;
  padding: 95px 5rem;
  position: relative;
}
@media only screen and (max-width: 649px) {
  .adjacent-project {
    padding: 7.2rem 1.5rem;
  }
}
.adjacent-project::before {
  background: -webkit-gradient(linear, left top, right top, color-stop(25.62%, rgba(0, 0, 0, 0.3)), color-stop(83.89%, rgba(36, 36, 36, 0)));
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.3) 25.62%, rgba(36, 36, 36, 0) 83.89%);
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.adjacent-project--full-screen {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  min-height: 100vh;
  width: 100%;
}
.adjacent-project--info-centered {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.adjacent-project--fixed-background {
  background-attachment: fixed;
}

.adjacent-project__info {
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  row-gap: 2.5rem;
  z-index: 2;
}

.adjacent-project__headings {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 1.5rem;
}
@media only screen and (max-width: 979px) {
  .adjacent-project__headings {
    row-gap: 1rem;
  }
}

.adjacent-project__subheading {
  font-size: 1.75rem;
  line-height: 1.5;
}

.adjacent-project__heading {
  font-size: 2.5rem;
  line-height: 1.2;
}
.adjacent-project__heading--lg {
  font-size: 6rem;
  line-height: 1;
}
@media only screen and (max-width: 979px) {
  .adjacent-project__heading--lg {
    font-size: 2.5rem;
    line-height: 1.2;
  }
}

.adjacent-project__description {
  font-size: 2.5rem;
  line-height: 1.2;
  display: block;
  width: 62%;
}
@media only screen and (max-width: 979px) {
  .adjacent-project__description {
    font-size: 1.5rem;
    line-height: 1.5;
  }
}

.approach__item {
  margin-bottom: 15rem;
}
@media only screen and (max-width: 828px) {
  .approach__item {
    margin-bottom: 3rem;
  }
}

.approach__image-container {
  margin-top: -20%;
  padding-top: 125%;
  position: relative;
}
@media only screen and (max-width: 828px) {
  .approach__image-container {
    margin-top: 0;
    padding-top: 0;
  }
}

.approach__image {
  position: absolute;
  right: -80px;
  top: 0;
}
@media only screen and (max-width: 828px) {
  .approach__image {
    position: relative;
    right: auto;
  }
}

_:-ms-fullscreen .approach__image, :root .approach__image {
  width: 100%;
}

.aproach__image-caption {
  font-size: 2.5rem;
  line-height: 1.2;
  bottom: 100%;
  left: 30%;
  margin-bottom: 1.5rem;
  position: absolute;
}
@media only screen and (max-width: 828px) {
  .aproach__image-caption {
    left: auto;
    position: relative;
  }
}

.button {
  font-size: 1.125rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  display: inline-block;
  font-weight: 600;
  padding: 0.1rem 0.75rem;
  text-decoration: none;
  -webkit-transition: background-color 0.2s, color 0.2s, opacity 0.2s, visibility 0.2s;
  transition: background-color 0.2s, color 0.2s, opacity 0.2s, visibility 0.2s;
}
.button--full-width {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  text-align: center;
  width: 100%;
}
@media only screen and (max-width: 828px) {
  .button--fw-f {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    text-align: center;
    width: 100%;
  }
}
@media only screen and (max-width: 449px) {
  .button--fw-h {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    width: 100%;
  }
}
.button--tertiary {
  position: relative;
  text-decoration: underline;
  text-decoration-color: transparent;
  -webkit-transition: text-decoration-color 0.2s ease-in;
  transition: text-decoration-color 0.2s ease-in;
}
.button--tertiary:hover, .button--tertiary:focus {
  text-decoration-color: inherit;
}
.button--border {
  border: 1px solid #242424;
}
.button-end--chevron::after, .button-end--down-arrow::after {
  display: block;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.button-end--chevron.toggler--toggled::after, .button-end--down-arrow.toggler--toggled::after {
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
}
.button--nowrap {
  white-space: nowrap;
}
.button--extra-padded {
  padding: 0.75rem 3rem;
}
.button--extra-padded-2 {
  padding: 0.75rem 4.5rem;
}
.button--reduce-padding {
  padding: 0.5rem 1rem;
}
.button--no-padding-l {
  padding: 0.75rem 0.25rem 0.75rem 0;
}
.button--align-left {
  padding: 0.75rem 1.5rem 0.75rem 0;
  text-align: left;
}
.button--transparent:hover, .button--transparent:focus {
  text-decoration: underline;
}
.button--hidden {
  opacity: 0;
  visibility: hidden;
}
.button--mt {
  margin-top: 1.5rem;
}
.button .button__text-default {
  display: inline;
}
.button .button__text-selected {
  display: none;
}
.button:active .button__text-default {
  display: none;
}
.button:active .button__text-selected {
  display: inline;
}

.button--light {
  border: 1px solid #242424;
  border-radius: 8px;
  color: #242424;
}

.button--dark {
  border: 1px solid #fff;
  border-radius: 8px;
  color: #fff;
}

.button--fill {
  background-color: #fff;
  border: 1px solid #fff;
  border-radius: 8px;
  color: #242424;
}

.button-thin--arrow-down, .button--arrow-down,
.button-end--arrow-down {
  position: relative;
}

.button-thin--arrow-down::before, .button--arrow-down::before,
.button-end--arrow-down::after {
  font-size: 1.5rem;
  line-height: 1.5;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.button-thin--arrow-down, .button--arrow-down {
  padding-left: 4rem;
}
.button-thin--arrow-down::before, .button--arrow-down::before {
  left: 2rem;
}

.button-thin--arrow-down {
  padding-left: 2rem;
}
.button-thin--arrow-down::before {
  left: 0;
}

.button-end--arrow-down {
  padding-right: 3rem;
  -webkit-transition: padding-right 0.2s;
  transition: padding-right 0.2s;
}
.button-end--arrow-down:hover, .button-end--arrow-down:focus {
  padding-right: 3.5rem;
}
.button-end--arrow-down::after {
  right: 1rem;
}

.button-thin--right-arrow, .button--right-arrow,
.button-end--right-arrow {
  position: relative;
}

.button-thin--right-arrow::before, .button--right-arrow::before,
.button-end--right-arrow::after {
  font-size: 1.5rem;
  line-height: 1.5;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.button-thin--right-arrow, .button--right-arrow {
  padding-left: 4rem;
}
.button-thin--right-arrow::before, .button--right-arrow::before {
  left: 2rem;
}

.button-thin--right-arrow {
  padding-left: 2rem;
}
.button-thin--right-arrow::before {
  left: 0;
}

.button-end--right-arrow {
  padding-right: 3rem;
  -webkit-transition: padding-right 0.2s;
  transition: padding-right 0.2s;
}
.button-end--right-arrow:hover, .button-end--right-arrow:focus {
  padding-right: 3.5rem;
}
.button-end--right-arrow::after {
  right: 1rem;
}

.breadcrumb {
  margin-bottom: 3rem;
}

.breadcrumb__item {
  font-size: 1.5rem;
  line-height: 1.5;
  color: #242424;
  display: inline-block;
  font-family: "TT Commons";
  font-weight: 600;
}
.breadcrumb__item:first-of-type::after {
  font-size: 1.5rem;
  line-height: 1.5;
}
.breadcrumb__item a {
  color: #242424;
  text-decoration: none;
  text-underline-offset: 5px;
}
.breadcrumb__item a:hover, .breadcrumb__item a:focus {
  text-decoration: underline;
}

.carousel {
  padding-bottom: 3rem;
}
@media only screen and (min-width: 980px) {
  .carousel {
    padding-bottom: 8rem;
  }
}

.carousel__container {
  -ms-overflow-style: none;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow-x: auto;
  padding: 0 80px;
  scroll-behavior: smooth;
  scrollbar-width: none;
}
.carousel__container::-webkit-scrollbar {
  display: none;
}
@media only screen and (min-width: 829px) {
  .carousel__container {
    -webkit-column-gap: 2.5rem;
       -moz-column-gap: 2.5rem;
            column-gap: 2.5rem;
  }
}
@media only screen and (max-width: 649px) {
  .carousel__container {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.carousel__pagination-container {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: 0.5rem;
     -moz-column-gap: 0.5rem;
          column-gap: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 1rem;
  padding-bottom: 1.75rem;
}
.carousel__pagination-container .carousel-pagination {
  font-size: 1.25rem;
  color: #242424;
}
.carousel__pagination-container .carousel-pagination::before {
  display: inline-block;
}
@media only screen and (min-width: 650px) {
  .carousel__pagination-container .carousel-pagination {
    font-size: 1.75rem;
  }
}
.carousel__pagination-container .carousel-pagination[data-direction=prev]::before {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.carousel__item {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 28vw;
}
@media only screen and (max-width: 1099px) {
  .carousel__item {
    width: 40vw;
  }
}
@media only screen and (max-width: 649px) {
  .carousel__item {
    width: 92vw;
  }
}
@media only screen and (max-width: 449px) {
  .carousel__item {
    width: 88vw;
  }
}
.carousel__item--page-sections {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.carousel__item__text {
  padding: 1rem;
}

.contact__location__outer {
  margin-bottom: 9.375rem;
}

.contact__location {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-bottom: 4rem;
}
.contact__location a {
  word-wrap: anywhere;
}
.contact__location a,
.contact__location p {
  margin-bottom: 1rem;
}
.contact__location span {
  padding-right: 1rem;
}
@media only screen and (max-width: 1099px) {
  .contact__location {
    font-size: 1.125rem;
    line-height: 1.5;
    line-height: 26px;
  }
}
@media only screen and (max-width: 649px) {
  .contact__location {
    font-size: 1rem;
    line-height: 24px;
  }
}

.contact__location__image {
  margin-bottom: 2rem;
}

.contact__location__heading {
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 649px) {
  .contact__location__heading {
    font-size: 2rem;
    line-height: 40px;
  }
}

.content-blocks__quote {
  font-size: 2.5rem;
  line-height: 1.2;
  margin-bottom: 0.75rem;
}
@media only screen and (max-width: 649px) {
  .content-blocks__quote {
    font-size: 2rem;
    line-height: 1.3;
  }
}

.content-blocks__quote-source {
  font-weight: bold;
}

.content-blocks__image-caption {
  font-size: 1.125rem;
  line-height: 1.5;
  margin-bottom: 1.5rem;
}
.content-blocks__image-caption--large {
  font-size: 2.5rem;
  line-height: 1.2;
}

.content-blocks__image {
  margin: 1rem 0 1.5rem;
  position: relative;
}
.content-blocks__image--fw {
  margin: 3rem 0;
}
.content-blocks__image img {
  width: 100%;
}
@media only screen and (max-width: 649px) {
  .content-blocks__image--fw {
    margin: 1.5rem 0;
  }
}

.content-blocks__svg-container {
  display: inline-block;
  overflow: hidden;
  padding-bottom: 69.68%;
  position: absolute;
  top: 0;
  vertical-align: middle;
  width: 100%;
}

.content-blocks__svg {
  display: inline-block;
  left: 0;
  position: absolute;
  top: 0;
}

.content-blocks__offset-image {
  margin: -20% auto 100px;
}

.content-blocks__image-container {
  position: relative;
}
.content-blocks__image-container::after {
  background-image: url("../img/img-pattern.svg");
  background-repeat: no-repeat;
  background-size: contain;
  bottom: -40%;
  content: "";
  display: block;
  padding-top: 69.111969112%;
  position: absolute;
  right: -80%;
  width: 90%;
}
@media only screen and (max-width: 649px) {
  .content-blocks__image-container::after {
    bottom: -60%;
    right: -50%;
  }
}

.content-type {
  font-size: 1.25rem;
  line-height: 1.5;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #242424;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 300;
  gap: 0.75rem;
}
.content-type--white {
  color: #fff;
}
.content-type--space-bottom {
  margin-bottom: 3.25rem;
}
@media only screen and (max-width: 1099px) {
  .content-type--listed {
    font-size: 0.75rem;
    line-height: 1.5;
    gap: 0.25rem;
  }
}

@media only screen and (max-width: 828px) {
  .home__container {
    color: #fff;
    position: relative;
    z-index: 1;
  }
}

.home__hero {
  height: 100vh;
  position: fixed;
  right: 0;
  top: 0;
}
.home__hero img {
  font-family: "object-fit: cover;";
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.home__cta {
  color: #242424;
  font-weight: bold;
  padding-right: 2rem;
  position: relative;
  text-decoration: none;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}
.home__cta:hover, .home__cta:focus {
  color: #717171;
}
.home__cta::after {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media only screen and (max-width: 828px) {
  .home__cta {
    color: #fff;
  }
}

.filter {
  margin-bottom: 2rem;
}

.filter__label {
  padding-left: 2rem;
  position: relative;
}
.filter__label::before {
  font-size: 1.75rem;
  line-height: 1.5;
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

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

.filter__link {
  color: inherit;
  display: block;
  margin-left: 1.5rem;
  padding-bottom: 1rem;
  position: relative;
  text-decoration: none;
}
.filter__link::after {
  background-color: transparent;
  bottom: 0;
  content: "";
  display: block;
  height: 2px;
  position: absolute;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  width: 100%;
}
.filter__link:hover::after, .filter__link:focus::after, .filter__link--selected::after {
  background-color: #242424;
}
@media only screen and (max-width: 649px) {
  .filter__link {
    margin-left: 0;
    margin-right: 1.5rem;
  }
}

@-webkit-keyframes timer-bar {
  0% {
    width: 0%;
  }
  100% {
    width: calc(100% - 3rem);
  }
}

@keyframes timer-bar {
  0% {
    width: 0%;
  }
  100% {
    width: calc(100% - 3rem);
  }
}
.full-screen-section {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  min-height: 100vh;
  position: relative;
}
@media only screen and (min-width: 980px) {
  .full-screen-section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.full-screen-section--basic {
  display: block;
  position: initial;
}
@media only screen and (min-width: 1450px) {
  .full-screen-section--115vh {
    min-height: 115vh;
  }
}
.full-screen-section--gradient {
  background: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.8)), to(rgba(235, 235, 235, 0)));
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.8) 0%, rgba(235, 235, 235, 0) 100%);
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 3;
}
.full-screen-section--green {
  background-color: #77B5A3;
}
.full-screen-section--orange {
  background-color: #FB8D47;
}
.full-screen-section--dark-grey {
  background-color: #242424;
  color: #fff;
}
.full-screen-section--violet {
  background-color: #858EC7;
}
.full-screen-section--white {
  background-color: #fff;
}
@media only screen and (max-width: 979px) {
  .full-screen-section--padded-top-mobile {
    padding-top: 11.75rem;
  }
}
@media only screen and (max-width: 979px) {
  .full-screen-section--auto-height-mob {
    min-height: auto;
  }
}
@media only screen and (min-width: 980px) {
  .full-screen-section--offset-header {
    margin-top: -106px;
  }
}

.full-height-slideshow {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.full-height-slideshow .slideshow__slide {
  background-size: cover;
  bottom: 0;
  right: 0;
}

.full-screen-section__slider {
  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(100% - 13rem);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 6.5rem 5rem;
}
@media only screen and (max-width: 649px) {
  .full-screen-section__slider {
    height: 100%;
    padding: 0;
  }
}

.full-screen-section__slider__labels {
  color: #EBEBEB;
  padding-bottom: 4rem;
  width: calc(100% - 2rem);
  z-index: 4;
}
@media only screen and (max-width: 649px) {
  .full-screen-section__slider__labels {
    padding-left: 2rem;
  }
}

.full-screen-section__slider__labels__header {
  font-size: 0.875rem;
  line-height: 1.5;
}
@media only screen and (min-width: 829px) {
  .full-screen-section__slider__labels__header {
    font-size: 1.5rem;
    line-height: 1.5;
  }
}

.full-screen-section__slider__labels__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-bottom: 2rem;
  margin-top: 2rem;
  row-gap: 0.625rem;
}

.slideshow__label .slideshow__pip {
  font-size: 2.5rem;
  line-height: 1.2;
  color: #EBEBEB;
  font-weight: 265;
  opacity: 0.7;
  text-align: left;
  -webkit-transition: color 0.5s, font-size 0.5s, line-height 0.5s, opacity 0.5s;
  transition: color 0.5s, font-size 0.5s, line-height 0.5s, opacity 0.5s;
}
@media only screen and (min-width: 829px) {
  .slideshow__label .slideshow__pip {
    font-size: 3rem;
    line-height: 1.1;
  }
}
@media only screen and (max-width: 828px) {
  .slideshow__label .slideshow__pip:hover, .slideshow__label .slideshow__pip:focus, .slideshow__label .slideshow__pip.slideshow__pip--selected {
    font-size: 2.5rem;
    line-height: 1.2;
  }
}
.slideshow__label .slideshow__pip:hover, .slideshow__label .slideshow__pip.slideshow__pip--selected {
  color: #fff;
  opacity: 1;
}
@media only screen and (min-width: 829px) {
  .slideshow__label .slideshow__pip:hover, .slideshow__label .slideshow__pip.slideshow__pip--selected {
    font-size: 6rem;
    line-height: 1;
  }
}

.full-screen-section__slider__controls {
  padding: 0 1.5rem;
  z-index: 2;
}

.full-screen-section__slider__thumbs {
  -webkit-column-gap: 2rem;
     -moz-column-gap: 2rem;
          column-gap: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.full-screen-section__slider__thumbs__thumb {
  background: rgba(36, 36, 36, 0.6);
  border-radius: 0.5rem;
  color: rgba(235, 235, 235, 0.9);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding: 3rem 1.5rem 1.5rem;
  position: relative;
  row-gap: 1.5rem;
  text-align: left;
  text-decoration: none;
  -webkit-transition: background 0.5s, color 0.5s;
  transition: background 0.5s, color 0.5s;
}
.full-screen-section__slider__thumbs__thumb::before, .full-screen-section__slider__thumbs__thumb::after {
  content: "";
  display: block;
  height: 2px;
  left: 1.5rem;
  position: absolute;
  right: 1.5rem;
  top: 2rem;
}
.full-screen-section__slider__thumbs__thumb::before {
  background-color: rgba(235, 235, 235, 0.9);
  opacity: 0.3;
  width: calc(100% - 3rem);
}
.full-screen-section__slider__thumbs__thumb::after {
  width: 0;
}
.full-screen-section__slider__thumbs__thumb--amber::after {
  background-color: #FB8D47;
}
.full-screen-section__slider__thumbs__thumb--green::after {
  background-color: #77B5A3;
}
.full-screen-section__slider__thumbs__thumb--violet::after {
  background-color: #858EC7;
}
.full-screen-section__slider__thumbs__thumb.slideshow__pip--selected {
  background: #fff;
  color: #242424;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.full-screen-section__slider__thumbs__thumb.slideshow__pip--selected::after {
  -webkit-animation: timer-bar 5s linear forwards;
          animation: timer-bar 5s linear forwards;
}
@media only screen and (min-width: 1450px) {
  .full-screen-section__slider__thumbs__thumb {
    padding: 2.5rem 2rem;
  }
}
@media only screen and (max-width: 979px) {
  .full-screen-section__slider__thumbs__thumb {
    display: none;
    min-height: 293px;
    row-gap: 0.5rem;
    width: 100%;
  }
}

.slider__thumb__type {
  font-size: 0.875rem;
  line-height: 1.5;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 12px;
     -moz-column-gap: 12px;
          column-gap: 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (min-width: 980px) {
  .slider__thumb__type {
    font-size: 1.25rem;
    line-height: 1.5;
    margin-top: 2.5rem;
  }
}

.slider__thumb__type-dot,
.full-screen-section-type-dot {
  border-radius: 1rem;
  height: 8px;
  width: 8px;
}
.slider__thumb__type-dot--amber,
.full-screen-section-type-dot--amber {
  background-color: #FB8D47;
}
.slider__thumb__type-dot--green,
.full-screen-section-type-dot--green {
  background-color: #77B5A3;
}
.slider__thumb__type-dot--violet,
.full-screen-section-type-dot--violet {
  background-color: #858EC7;
}
@media only screen and (max-width: 1099px) {
  .slider__thumb__type-dot--responsive,
.full-screen-section-type-dot--responsive {
    height: 4px;
    width: 4px;
  }
}

@media only screen and (max-width: 979px) {
  .slider__thumb__type-dot {
    display: none;
  }
}

.full-screen-section__slider__thumbs__thumb-text {
  font-size: 2.5rem;
  line-height: 1.2;
  font-weight: 265;
}
@media only screen and (min-width: 1450px) {
  .full-screen-section__slider__thumbs__thumb-text {
    font-size: 3rem;
    line-height: 1.1;
  }
}

.full-screen-section__slider__button-container {
  margin-top: 2.5rem;
  width: 100%;
}

.full-screen-section__slider__secondary-pips {
  bottom: 2.75rem;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 11px;
  left: 67px;
  position: absolute;
  z-index: 2;
}
@media only screen and (min-width: 980px) {
  .full-screen-section__slider__secondary-pips {
    display: none;
  }
}
@media only screen and (min-width: 650px) {
  .full-screen-section__slider__secondary-pips {
    left: 127px;
  }
}
.full-screen-section__slider__secondary-pips .slideshow__pip__secondary {
  border: 2px solid rgba(36, 36, 36, 0.06);
  border-radius: 100%;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #fff;
  height: 2.125rem;
  padding: 0;
  position: relative;
  vertical-align: middle;
  width: 2.125rem;
}
.full-screen-section__slider__secondary-pips .slideshow__pip__secondary:hover.slideshow__pip__secondary--amber, .full-screen-section__slider__secondary-pips .slideshow__pip__secondary:focus.slideshow__pip__secondary--amber {
  color: #FB8D47;
}
.full-screen-section__slider__secondary-pips .slideshow__pip__secondary:hover.slideshow__pip__secondary--green, .full-screen-section__slider__secondary-pips .slideshow__pip__secondary:focus.slideshow__pip__secondary--green {
  color: #77B5A3;
}
.full-screen-section__slider__secondary-pips .slideshow__pip__secondary:hover.slideshow__pip__secondary--violet, .full-screen-section__slider__secondary-pips .slideshow__pip__secondary:focus.slideshow__pip__secondary--violet {
  color: #858EC7;
}
.full-screen-section__slider__secondary-pips .slideshow__pip__secondary.slideshow__pip--selected::before {
  -webkit-transition: border-right-color 0s linear 1.67s, border-bottom-color 0s linear 3.33s;
  transition: border-right-color 0s linear 1.67s, border-bottom-color 0s linear 3.33s;
}
.full-screen-section__slider__secondary-pips .slideshow__pip__secondary.slideshow__pip--selected.slideshow__pip__secondary--amber::before {
  border-bottom-color: #FB8D47;
  border-right-color: #FB8D47;
  border-top-color: #FB8D47;
}
.full-screen-section__slider__secondary-pips .slideshow__pip__secondary.slideshow__pip--selected.slideshow__pip__secondary--amber::after {
  border-top-color: #FB8D47;
}
.full-screen-section__slider__secondary-pips .slideshow__pip__secondary.slideshow__pip--selected.slideshow__pip__secondary--green::before {
  border-bottom-color: #77B5A3;
  border-right-color: #77B5A3;
  border-top-color: #77B5A3;
}
.full-screen-section__slider__secondary-pips .slideshow__pip__secondary.slideshow__pip--selected.slideshow__pip__secondary--green::after {
  border-top-color: #77B5A3;
}
.full-screen-section__slider__secondary-pips .slideshow__pip__secondary.slideshow__pip--selected.slideshow__pip__secondary--violet::before {
  border-bottom-color: #858EC7;
  border-right-color: #858EC7;
  border-top-color: #858EC7;
}
.full-screen-section__slider__secondary-pips .slideshow__pip__secondary.slideshow__pip--selected.slideshow__pip__secondary--violet::after {
  border-top-color: #858EC7;
}
.full-screen-section__slider__secondary-pips .slideshow__pip__secondary.slideshow__pip--selected::after {
  border-left-width: 2px;
  border-right-width: 2px;
  border-top: 2px solid;
  -webkit-transform: rotate(315deg);
          transform: rotate(315deg);
  -webkit-transition: -webkit-transform 5s linear 0s;
  transition: -webkit-transform 5s linear 0s;
  transition: transform 5s linear 0s;
  transition: transform 5s linear 0s, -webkit-transform 5s linear 0s;
}
.full-screen-section__slider__secondary-pips .slideshow__pip__secondary::before, .full-screen-section__slider__secondary-pips .slideshow__pip__secondary::after {
  border-radius: 100%;
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.full-screen-section__slider__secondary-pips .slideshow__pip__secondary::before {
  border: 2px solid transparent;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.full-screen-section__slider__secondary-pips .slideshow__pip__secondary::after {
  border: 0 solid transparent;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  z-index: 2;
}

.full-screen-section__two-cols {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #242424;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media only screen and (max-width: 979px) {
  .full-screen-section__two-cols {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-bottom: 5rem;
  }
}
@media only screen and (max-width: 979px) {
  .full-screen-section__two-cols--invert-mob {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.full-screen-section__two-cols--align-start {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.full-screen-section__two-cols--pb-0-mob {
  padding-bottom: 0;
}
.full-screen-section--offset-header .full-screen-section__two-cols {
  padding-top: 53px;
}

.full-screen-section__two-cols__column {
  width: 50%;
}
@media only screen and (max-width: 979px) {
  .full-screen-section__two-cols__column {
    height: auto;
    min-height: auto;
    width: 100%;
  }
}
.full-screen-section__two-cols__column--dark {
  color: #fff;
}
.full-screen-section__two-cols__column--model-viewer {
  height: 80vh;
}
@media only screen and (max-width: 979px) {
  .full-screen-section__two-cols__column--model-viewer {
    margin-top: -20vh;
  }
}
@media only screen and (max-width: 649px) {
  .full-screen-section__two-cols__column--model-viewer {
    height: 100vh;
  }
}
.full-screen-section__two-cols__column--padded {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 6rem 5rem;
}
@media only screen and (max-width: 979px) {
  .full-screen-section__two-cols__column--padded {
    padding: 3rem 5rem 5rem;
  }
}
@media only screen and (max-width: 649px) {
  .full-screen-section__two-cols__column--padded {
    padding: 3rem 20px;
  }
}
@media only screen and (min-width: 980px) {
  .full-screen-section__two-cols__column--padded--second {
    padding-left: 0;
  }
}
@media only screen and (max-width: 979px) {
  .full-screen-section__two-cols__column--padded--second {
    padding-top: 0;
  }
}
@media only screen and (min-width: 980px) {
  .full-screen-section__two-cols__column--padded--pr-0-desktop {
    padding-right: 0;
  }
}
.full-screen-section__two-cols__column--pattern {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding-top: 5rem;
}
@media only screen and (max-width: 979px) {
  .full-screen-section__two-cols__column--pattern {
    height: 50vh;
    margin-top: -3rem;
    -o-object-fit: cover;
       object-fit: cover;
    padding-left: 80px;
    padding-top: 0;
  }
}
@media only screen and (max-width: 649px) {
  .full-screen-section__two-cols__column--pattern {
    padding-left: 20px;
  }
}
.full-screen-section__two-cols__column--text-graphic {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.full-screen-section__two-cols__column--text-graphic__text {
  margin-bottom: 6rem;
}
@media only screen and (max-width: 979px) {
  .full-screen-section__two-cols__column--text-graphic__text {
    margin-bottom: 2.5rem;
  }
}
.full-screen-section__two-cols__column--text-graphic__image {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.full-screen-section__two-cols__column--text-graphic__image img {
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
}

.full-screen-section__two-cols__column--image {
  background-size: cover;
  height: 100%;
  min-height: 100vh;
  position: relative;
}
.full-screen-section__two-cols__column--image img {
  max-height: 100%;
}

.full-screen-section__two-cols__column--image-full-height {
  height: 100%;
}
.full-screen-section__two-cols__column--image-full-height img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (max-width: 979px) {
  .full-screen-section__two-cols__column--image-full-height {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0 80px;
  }
}
@media only screen and (max-width: 649px) {
  .full-screen-section__two-cols__column--image-full-height {
    padding: 0 20px;
  }
}

.full-screen-section__two-cols__column--image-side {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding-right: 0;
}
@media only screen and (max-width: 979px) {
  .full-screen-section__two-cols__column--image-side {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 80px;
    padding-top: 0;
  }
  .full-screen-section__two-cols__column--image-side img {
    max-height: 40vh;
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
  }
}
@media only screen and (max-width: 649px) {
  .full-screen-section__two-cols__column--image-side {
    padding: 20px;
  }
}

.full-screen-section__two-cols__column--image__cta {
  background: -webkit-gradient(linear, left top, right top, color-stop(25.62%, rgba(0, 0, 0, 0.3)), color-stop(83.89%, rgba(36, 36, 36, 0)));
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.3) 25.62%, rgba(36, 36, 36, 0) 83.89%);
  bottom: 0;
  color: #EBEBEB;
  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;
  padding: 11.5rem 5rem;
  position: absolute;
  right: 0;
  row-gap: 1rem;
  top: 0;
}
@media only screen and (max-width: 979px) {
  .full-screen-section__two-cols__column--image__cta {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media only screen and (max-width: 649px) {
  .full-screen-section__two-cols__column--image__cta {
    padding: 11.5rem 20px;
  }
}

.full-screen-section__two-cols__column--image__cta-type {
  font-size: 1.25rem;
  line-height: 1.5;
}

.full-screen-section__two-cols__column--image__cta-title {
  font-size: 4.75rem;
  line-height: 1.1;
  color: #fff;
  font-weight: 265;
  margin-bottom: 1rem;
}
@media only screen and (max-width: 979px) {
  .full-screen-section__two-cols__column--image__cta-title {
    font-size: 3rem;
    line-height: 1.1;
  }
}

.full-screen-section__two-cols__column--image__overlay {
  bottom: -20%;
  height: 413px;
  left: -1%;
  position: absolute;
  width: 413px;
}
@media only screen and (max-width: 979px) {
  .full-screen-section__two-cols__column--image__overlay {
    display: none;
  }
}

.full-screen-section__next,
.full-screen-section__prev,
.pause-fh-slider,
.play-fh-slider {
  color: #242424;
  position: absolute;
  text-decoration: none;
  z-index: 4;
}
.full-screen-section__next--dark,
.full-screen-section__prev--dark,
.pause-fh-slider--dark,
.play-fh-slider--dark {
  color: #fff;
}

.full-screen-section__next,
.full-screen-section__prev {
  font-size: 2.5rem;
  line-height: 1.2;
  right: 80px;
}
@media only screen and (max-width: 649px) {
  .full-screen-section__next,
.full-screen-section__prev {
    right: 20px;
  }
}

.full-screen-section__next,
.pause-fh-slider,
.play-fh-slider {
  font-size: 3rem;
  line-height: 1.1;
  bottom: 2.75rem;
}
.full-screen-section__next--low,
.pause-fh-slider--low,
.play-fh-slider--low {
  bottom: 1.5rem;
}

.full-screen-section__prev {
  top: 1rem;
}

.pause-fh-slider,
.play-fh-slider {
  font-size: 2.5rem;
}

.pause-fh-slider--left,
.play-fh-slider--left {
  left: 2.5rem;
}
@media only screen and (max-width: 649px) {
  .pause-fh-slider--left,
.play-fh-slider--left {
    left: 20px;
  }
}

.pause-fh-slider--align-content {
  padding-left: 20px;
}
@media only screen and (max-width: 649px) {
  .pause-fh-slider--align-content {
    padding-left: 0;
  }
}

.hidden-control {
  display: none;
}

.full-screen-section__background-animation {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
}

.full-screen-section__statement {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-bottom: 12rem;
  padding-top: 12rem;
}

.full-screen-section__statement__text {
  font-size: 6rem;
  line-height: 1;
  color: #242424;
  font-weight: 600;
  text-align: center;
  width: 85%;
  z-index: 2;
}
@media only screen and (max-width: 1099px) {
  .full-screen-section__statement__text {
    font-size: 4.75rem;
    line-height: 1.1;
  }
}
@media only screen and (max-width: 979px) {
  .full-screen-section__statement__text {
    font-size: 3rem;
    line-height: 1.1;
    width: 90%;
  }
}

.full-screen-section__text-quote {
  font-size: 2rem;
  line-height: 1.3;
  color: #000;
  font-weight: 400;
}
@media only screen and (max-width: 979px) {
  .full-screen-section__text-quote {
    font-size: 1.5rem;
    line-height: 1.5;
  }
}
.full-screen-section__text-quote footer {
  font-size: 1.25rem;
  line-height: 1.5;
  font-weight: 600;
  margin-top: 1rem;
}
@media only screen and (max-width: 979px) {
  .full-screen-section__text-quote footer {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.full-screen-section__text-quote .icon--open-quote {
  font-size: 0.75rem;
  line-height: 1.5;
}
.full-screen-section__text-quote--constrained {
  max-width: 528px;
}
.full-screen-section__text-quote--xl {
  font-size: 3rem;
  line-height: 1.1;
}
@media only screen and (max-width: 979px) {
  .full-screen-section__text-quote--xl {
    font-size: 2rem;
    line-height: 1.3;
  }
}

.full-screen-section__heading {
  font-size: 3rem;
  line-height: 1.1;
  font-weight: 265;
  margin-bottom: 1.5rem;
}
@media only screen and (min-width: 1280px) {
  .full-screen-section__heading {
    font-size: 4.75rem;
    line-height: 1.1;
  }
}

.full-screen-section__sub-heading {
  font-size: 1.5rem;
  line-height: 1.5;
  font-weight: 600;
  margin-bottom: 3rem;
}
@media only screen and (max-width: 979px) {
  .full-screen-section__sub-heading {
    font-size: 1rem;
    line-height: 1.5;
    margin-bottom: 1.5rem;
  }
}

.full-screen-section__text-copy p {
  font-size: 1.25rem;
  line-height: 1.5;
  margin-bottom: 0.875rem;
  margin-top: 0.875rem;
}
@media only screen and (max-width: 979px) {
  .full-screen-section__text-copy p {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media only screen and (max-width: 828px) {
  .full-screen-section__text-copy--mb-mob {
    margin-bottom: 4rem;
  }
}

.footer {
  background-color: #242424;
  color: #fff;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  min-height: 100vh;
}
.theme--3 .footer {
  color: #fff;
}
@media only screen and (max-width: 979px) {
  .footer {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    min-height: 100vh;
    padding: 3rem 0;
  }
}

.footer__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(100% - 5rem);
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: relative;
  row-gap: 8vh;
}
@media only screen and (min-width: 829px) {
  .footer__container {
    padding-bottom: 2.5rem;
    padding-top: 2.5rem;
  }
}
@media only screen and (max-width: 828px) {
  .footer__container {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: end;
  }
}

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

.footer__contact-item {
  font-weight: bold;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}
.footer__contact-item::before {
  font-size: 1.75rem;
  line-height: 1.5;
  margin-right: 0.5rem;
}
.footer__contact-item:focus, .footer__contact-item:hover {
  color: #FB8D47;
}
.footer__contact-item--phone {
  display: block;
}
.footer__header {
  font-size: 6rem;
  line-height: 1;
}

.footer__logo__container {
  padding-right: 10vw;
}

.footer__logo {
  height: auto;
  max-width: 100%;
}

.footer__links {
  font-size: 1rem;
  line-height: 1.5;
}
.footer__links a {
  font-size: 0.875rem;
  line-height: 1.5;
  color: inherit;
  margin-right: 1.5rem;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.footer__links a::after {
  opacity: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.footer__links a:hover::after, .footer__links a:focus::after {
  opacity: 1;
}
.footer__links p {
  font-size: 0.875rem;
  line-height: 1.5;
}

.fold-out {
  bottom: 0;
  left: 0;
  opacity: 0;
  position: fixed;
  right: 0;
  top: 0;
  -webkit-transition: opacity 0.2s, visibility 0.2s;
  transition: opacity 0.2s, visibility 0.2s;
  visibility: hidden;
  width: 100%;
  z-index: 100;
}
.fold-out.open {
  opacity: 1;
  visibility: visible;
}

.fold-out__close {
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 600;
  position: absolute;
  right: 1rem;
  top: 1rem;
}
.fold-out__close::after {
  font-size: 2rem;
  line-height: 1.3;
}

.fold-out__inner {
  bottom: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  max-width: 380px;
  overflow-y: scroll;
  padding: 5rem 2rem 2rem;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  width: 100%;
}
.open .fold-out__inner {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.fold-out--one .fold-out__inner {
  background-color: #77B5A3;
}
.fold-out--two .fold-out__inner {
  background-color: #FB8D47;
}
.fold-out--three .fold-out__inner {
  background-color: #858EC7;
}
@media only screen and (max-width: 828px) {
  .fold-out__inner {
    max-width: 100%;
  }
}

.fold-out__image {
  margin-bottom: 2rem;
}

.fold-out__figure {
  margin-bottom: 2rem;
}
.fold-out__figure h3 {
  font-weight: 600;
}
.fold-out__figure p {
  font-size: 1rem;
  line-height: 1.5;
}

.fold-out__link {
  font-size: 1rem;
  line-height: 1.5;
  color: inherit;
  display: block;
  margin-bottom: 0.5rem;
}

.image-copyright {
  font-size: 1.5rem;
  bottom: 1rem;
  color: #D9D9D9;
  left: 1rem;
  position: absolute;
}
.image-copyright::before {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 2px solid #000;
  border-radius: 18px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 18px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 18px;
}

.image-copyright__text {
  font-size: 1rem;
  bottom: 0.7rem;
  height: 32px;
  left: 3rem;
  overflow: auto;
  position: absolute;
  -webkit-transition: width 0.5s;
  transition: width 0.5s;
  width: 0;
}
.image-copyright__text.toggled {
  width: 100%;
}

.image-copyright__text__container {
  background: #D9D9D9;
  border: 2px solid #000;
  border-radius: 4px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  height: 32px;
  padding: 0 4px;
}

.image-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1rem;
}

.image-grid__item {
  position: relative;
}
@media only screen and (min-width: 829px) {
  .image-grid__item {
    -ms-flex-preferred-size: calc(50% - 0.5rem);
        flex-basis: calc(50% - 0.5rem);
  }
}
.image-grid__item:first-of-type .image-grid__item__expand {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #000;
  border-radius: 40px;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 24px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 1rem;
  opacity: 0.9;
  padding: 8px;
  position: absolute;
  top: 1rem;
  width: 24px;
}

.intro {
  margin-bottom: 7.5rem;
}
@media only screen and (max-width: 828px) {
  .intro {
    margin-bottom: 3rem;
  }
}

.intro__main-heading {
  font-size: 6rem;
  line-height: 1;
  font-style: normal;
  margin-bottom: 2rem;
}
@media only screen and (min-width: 1100px) {
  .intro__main-heading {
    max-width: 75%;
  }
}
.intro__main-heading--insights {
  margin-bottom: 2.5rem;
}
.intro__main-heading--light {
  font-weight: 265;
}
.intro__main-heading--unlimited {
  max-width: 100%;
}
@media only screen and (max-width: 979px) {
  .intro__main-heading {
    font-size: 3rem;
    line-height: 1.1;
  }
}

.intro__introduction-text {
  font-size: 2.5rem;
  line-height: 1.2;
  display: block;
  margin-bottom: 5rem;
  opacity: 0.7;
}
@media only screen and (min-width: 1100px) {
  .intro__introduction-text {
    max-width: 65%;
  }
}
@media only screen and (max-width: 979px) {
  .intro__introduction-text {
    font-size: 1.5rem;
    line-height: 1.5;
  }
}

.model-viewer {
  height: 100%;
  width: 100%;
}

.mixed-content__item {
  margin-bottom: 4rem;
}
@media only screen and (min-width: 1100px) {
  .mixed-content__item {
    width: 55%;
  }
}
@media only screen and (min-width: 1100px) {
  .mixed-content__item--xl {
    width: 70%;
  }
}
.mixed-content__item.text-block li,
.mixed-content__item.text-block p {
  margin-bottom: 1rem;
}
.mixed-content__item.text-block li {
  list-style: disc outside;
  margin-left: 1rem;
  position: relative;
}
.mixed-content__item.text-block li::marker {
  color: #858EC7;
}
@media only screen and (max-width: 979px) {
  .mixed-content__item.text-block p {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.mixed-content__item.text-block a {
  color: #242424;
  text-underline-offset: 3px;
  -webkit-transition: 0.2s opacity ease-in-out;
  transition: 0.2s opacity ease-in-out;
}
.mixed-content__item.text-block a:active, .mixed-content__item.text-block a:focus, .mixed-content__item.text-block a:hover {
  opacity: 0.6;
}
.mixed-content__item.text-block--first p:first-of-type {
  font-size: 2rem;
  line-height: 1.3;
  margin-bottom: 4rem;
}

.mixed-content__item__caption {
  font-size: 0.75rem;
  line-height: 1.5;
  margin-top: 1rem;
}
@media only screen and (max-width: 649px) {
  .mixed-content__item__caption {
    font-size: 0.875rem;
    line-height: 1.5;
  }
}

.nav {
  background-color: #fff;
  height: 106px;
  width: 100%;
}
.nav.open {
  background-color: #242424;
  min-height: 100vh;
  position: fixed;
  z-index: 5;
}
.nav--white .nav__link {
  color: #fff;
}
@media only screen and (min-width: 1100px) {
  .nav--white .selected > .nav__link {
    border-color: #fff;
  }
}
.nav--bg-dark-grey {
  background-color: #242424;
}
.nav--bg-green {
  background-color: #77B5A3;
}
.nav--bg-orange {
  background-color: #FB8D47;
}

.nav__container {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 80px 2rem calc(80px - 1rem);
}
.open .nav__container {
  height: 100%;
  overflow-y: scroll;
}
@media only screen and (max-width: 1099px) {
  .nav__container {
    padding: 0 80px 2rem 80px;
  }
}
@media only screen and (max-width: 649px) {
  .nav__container {
    padding: 0 20px 4rem;
  }
}

.nav__bar {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (max-width: 1099px) {
  .nav__bar {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.nav__toggle {
  font-size: 1rem;
  line-height: 1.5;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #242424;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
  z-index: 3;
}
.nav__toggle::before {
  font-size: 2rem;
  line-height: 1.3;
  padding-right: 1rem;
}
.nav__toggle.nav--white {
  color: #fff;
}
.open .nav__toggle {
  color: #fff;
  z-index: 100;
}
.open .nav__toggle:hover, .open .nav__toggle:focus {
  color: rgba(255, 255, 255, 0.8);
}
.theme--3 .nav__toggle {
  color: #fff;
}
@media only screen and (min-width: 1100px) {
  .nav__toggle {
    display: none;
  }
}

.nav__logo {
  background-image: url("../img/cbx-trs-black.svg");
  background-repeat: no-repeat;
  background-size: contain;
  height: 106px;
  opacity: 1;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  width: 193px;
  z-index: 100;
}
.theme--0 .nav__logo {
  background-image: url("../img/logo--3.svg");
}
.theme--1 .nav__logo {
  background-image: url("../img/logo--1.svg");
}
.theme--2 .nav__logo {
  background-image: url("../img/logo--2.svg");
}
.theme--3 .nav__logo {
  background-image: url("../img/logo--4.svg");
}
.nav__logo.theme--4 {
  background-color: #fff;
}
.open .nav__logo {
  opacity: 0;
}
.nav__logo--white {
  background-image: url("../img/cbx-trs-white.svg");
}

.nav__inner {
  -webkit-column-gap: 8px;
     -moz-column-gap: 8px;
          column-gap: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 2rem;
  z-index: 3;
}
@media only screen and (max-width: 1099px) {
  .nav__inner {
    display: block;
    height: 0;
    margin-top: 10vh;
    opacity: 0;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    visibility: hidden;
    width: 100%;
  }
  .open .nav__inner {
    height: auto;
    opacity: 1;
    visibility: visible;
  }
}
@media only screen and (min-width: 1100px) {
  .nav__inner li {
    position: relative;
  }
}

.nav__inner__sub {
  border-radius: 8px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: none;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-width: 140px;
  padding: 4px 24px;
  row-gap: 0.125rem;
  z-index: 100;
}
@media only screen and (min-width: 1100px) {
  .nav__inner__sub {
    background: #fff;
    margin-top: 16px;
    padding: 4px;
    position: absolute;
  }
}
.nav__inner__sub .nav__link {
  border-radius: 4px;
  color: #fff;
  display: block;
  line-height: 52px;
  padding: 6px 12px;
}
@media only screen and (min-width: 1100px) {
  .nav__inner__sub .nav__link {
    color: #242424;
    line-height: 28px;
  }
}
@media only screen and (max-width: 1099px) {
  .nav__inner__sub .nav__link {
    font-size: 1.5rem;
    line-height: 1.5;
    font-weight: 265;
    padding: 8px 0;
  }
}
@media only screen and (min-width: 1100px) {
  .nav__inner__sub .nav__link:hover {
    background: #EBEBEB;
    opacity: 1;
  }
}
@media only screen and (min-width: 1100px) {
  .nav__inner__sub--dark {
    background: #242424;
  }
  .nav__inner__sub--dark .nav__link {
    color: #fff;
  }
  .nav__inner__sub--dark .nav__link:focus, .nav__inner__sub--dark .nav__link:hover {
    background: #242424;
    opacity: 0.6;
  }
}
.nav__inner__sub.toggled {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.nav__link {
  font-size: 1rem;
  line-height: 1.5;
  color: #242424;
  font-weight: 600;
  padding: 8px 16px;
  text-decoration: none;
  -webkit-transition: opacity 0.2s linear, -webkit-transform 0.2s ease-out;
  transition: opacity 0.2s linear, -webkit-transform 0.2s ease-out;
  transition: transform 0.2s ease-out, opacity 0.2s linear;
  transition: transform 0.2s ease-out, opacity 0.2s linear, -webkit-transform 0.2s ease-out;
}
.nav__link:focus, .nav__link:hover {
  opacity: 0.6;
}
@media only screen and (max-width: 1099px) {
  .nav__link {
    font-size: 2.5rem;
    line-height: 1.2;
    color: #fff;
    display: block;
    font-weight: 200;
    padding: 8px 7px;
    -webkit-transform-origin: center left;
            transform-origin: center left;
  }
}
@media only screen and (max-width: 1099px) {
  .nav__link {
    font-size: 2rem;
    line-height: 1.3;
    font-weight: 600;
  }
}
.nav__link--has-sub {
  -webkit-column-gap: 4px;
     -moz-column-gap: 4px;
          column-gap: 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-right: 3rem;
  text-align: left;
}
@media only screen and (min-width: 1100px) {
  .nav__link--has-sub {
    line-height: 16px;
  }
}
@media only screen and (max-width: 1099px) {
  .nav__link--has-sub {
    width: 100%;
  }
}
.nav__link--has-sub::after {
  display: inline-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--has-sub:focus, .nav__link--has-sub:hover, .nav__link--has-sub.toggler--toggled {
  opacity: 1;
  padding-right: 3rem;
  -webkit-transform: scale(1);
          transform: scale(1);
}
@media only screen and (min-width: 1100px) {
  .nav__link--has-sub:focus, .nav__link--has-sub:hover, .nav__link--has-sub.toggler--toggled {
    opacity: 0.6;
  }
}
.nav__link--has-sub.toggler--toggled::after {
  -webkit-transform: rotate(180deg) translateY(50%);
          transform: rotate(180deg) translateY(50%);
}

@media only screen and (min-width: 1100px) {
  .selected > .nav__link {
    border: 1px solid #242424;
    border-radius: 8px;
  }
}

.nav__pattern {
  background-repeat: no-repeat;
  background-size: contain;
  height: 47%;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  width: 26%;
}
.open .nav__pattern {
  opacity: 1;
}
.nav__pattern--1 {
  background-image: url("../img/nav-pattern.svg");
}
.nav__pattern--2, .nav__pattern--3 {
  right: 1rem;
  top: 1rem;
  width: 35%;
}
@media only screen and (max-width: 1099px) {
  .nav__pattern {
    width: 60%;
  }
}
@media only screen and (min-width: 1100px) {
  .nav__pattern {
    display: none;
  }
}

.nav__pattern-svg {
  height: 40%;
  opacity: 0;
  width: 100%;
}
.open .nav__pattern-svg {
  opacity: 1;
}

.page-section-links__container {
  font-size: 1rem;
  line-height: 1.5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
  padding-bottom: 5rem;
}

.page-section-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
}

.page-section-links__link {
  color: #000;
  text-underline-offset: 2px;
  -webkit-transition: opacity 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out;
}
.page-section-links__link:hover, .page-section-links__link:focus {
  opacity: 0.6;
}

.profile__hero {
  height: 100vh;
  position: absolute;
  right: 0;
  top: 0;
  width: 45vw;
}
.profile__hero img {
  font-family: "object-fit: cover;";
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (max-width: 979px) {
  .profile__hero {
    height: auto;
    margin-bottom: 2.5rem;
    position: inherit;
    width: 100%;
  }
}

.profile__hero-content-inner {
  position: relative;
}

.profile__title {
  margin-bottom: 1rem;
}

.profile__job-title {
  margin-bottom: 4rem;
}
@media only screen and (max-width: 828px) {
  .profile__job-title {
    font-size: 1.75rem;
    margin-bottom: 1.25rem;
  }
}

@media only screen and (max-width: 828px) {
  .profile__intro {
    margin-bottom: 4.25rem;
  }
}

.profile__mail {
  font-weight: 600;
  padding-left: 0.5rem;
}
.profile__mail::after {
  display: none;
}

.profile__heading {
  margin-bottom: 2.5rem;
}

.profile__listing-image {
  position: relative;
}

@media only screen and (max-width: 828px) {
  .profile__listing-image__image {
    margin-bottom: 1.5rem;
  }
}

.profile__listing-image__content-container {
  background-color: rgba(36, 36, 36, 0.3);
  color: #fff;
  height: 100%;
  position: absolute;
  width: calc(100% - 32px);
}
@media only screen and (max-width: 828px) {
  .profile__listing-image__content-container {
    height: calc(100% - 1.5rem);
  }
}

.profile__listing-image__content {
  height: 100%;
  -webkit-transform: translate(15%, 30%);
          transform: translate(15%, 30%);
  width: 100%;
}
.profile__listing-image__content .content-type {
  color: #fff;
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 979px) {
  .profile__listing-image__content .content-type {
    margin-bottom: 0;
  }
  .profile__listing-image__content .content-type .slider__thumb__type-dot {
    display: block;
  }
}
@media only screen and (max-width: 828px) {
  .profile__listing-image__content .content-type {
    margin-bottom: 1.5rem;
  }
}
@media only screen and (max-width: 649px) {
  .profile__listing-image__content .content-type {
    font-size: 0.75rem;
    line-height: 1.5;
    line-height: 20px;
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 979px) {
  .profile__listing-image__content {
    height: auto;
    margin: 13%;
    -webkit-transform: none;
            transform: none;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .profile__listing-image__content .button {
    font-size: 0.875rem;
  }
}
@media only screen and (max-width: 828px) {
  .profile__listing-image__content {
    height: calc(100% - 1.5rem);
    -webkit-transform: translate(0%, 5%);
            transform: translate(0%, 5%);
    width: 100%;
  }
  .profile__listing-image__content .button {
    font-size: 1.125rem;
  }
  .profile__listing-image__content .content-type {
    color: #fff;
    margin-bottom: 1.5rem;
  }
}
@media only screen and (max-width: 649px) {
  .profile__listing-image__content .content-type {
    font-size: 0.75rem;
    margin-bottom: 0;
  }
  .profile__listing-image__content .button {
    font-size: 0.875rem;
  }
}

.profile__listing-image__content__title {
  margin-bottom: 2.5rem;
}
@media only screen and (max-width: 979px) {
  .profile__listing-image__content__title {
    font-size: 1.75rem;
    margin-bottom: 0.5rem;
  }
}
@media only screen and (max-width: 828px) {
  .profile__listing-image__content__title {
    font-size: 2.5rem;
    margin-bottom: 2.5rem;
  }
}
@media only screen and (max-width: 449px) {
  .profile__listing-image__content__title {
    font-size: 2rem;
    margin-bottom: 0.5rem;
  }
}

.profile__insights {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 3rem;
}
.profile__insights .content-type {
  margin-bottom: 0.25rem;
}
@media only screen and (max-width: 649px) {
  .profile__insights .content-type {
    font-size: 0.75rem;
    line-height: 1.5;
    line-height: 20px;
  }
}
.profile__insights a:hover {
  color: #717171;
}
@media only screen and (max-width: 828px) {
  .profile__insights .slider__thumb__type-dot {
    display: block;
  }
}

.profile__insights__title {
  font-weight: 400;
  padding-right: 5rem;
}
@media only screen and (max-width: 1279px) {
  .profile__insights__title {
    padding-right: 0;
  }
}
@media only screen and (max-width: 649px) {
  .profile__insights__title {
    font-size: 1.25rem;
    line-height: 110%;
  }
}

.project-information {
  padding-bottom: 4rem;
  padding-top: 4rem;
}
.project-information .project-information__heading {
  font-size: 1.5rem;
  line-height: 1.5;
  color: #242424;
  font-weight: 600;
  margin-bottom: 2.5rem;
}
@media only screen and (max-width: 979px) {
  .project-information .project-information__heading {
    font-size: 1.25rem;
    line-height: 1.5;
    margin-bottom: 1.5rem;
  }
}
.project-information .project-information__columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (max-width: 1099px) {
  .project-information .project-information__columns {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media only screen and (max-width: 979px) {
  .project-information .project-information__columns {
    row-gap: 1rem;
  }
}
.project-information .project-information__columns__column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 1rem;
}
@media only screen and (min-width: 1100px) {
  .project-information .project-information__columns__column {
    width: 30%;
  }
}
.project-information .project-information__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.project-information .project-information__columns__label {
  font-size: 1.25rem;
  line-height: 1.5;
  color: #242424;
}
@media only screen and (max-width: 979px) {
  .project-information .project-information__columns__label {
    font-size: 1rem;
    line-height: 1.5;
  }
}
.project-information .project-information__columns__value {
  font-size: 1.25rem;
  line-height: 1.5;
  font-weight: 600;
}
@media only screen and (max-width: 979px) {
  .project-information .project-information__columns__value {
    font-size: 1rem;
    line-height: 1.5;
  }
}

.project-map {
  display: block;
  height: auto;
  margin: 0 auto 7rem;
  position: relative;
  width: 100%;
}
.project-map img {
  margin: 0 auto;
  width: 100%;
}
.project-map svg {
  left: 0;
  position: absolute;
  top: 0;
}
.project-map--constrained {
  max-width: 1280px;
}

.project-map__number {
  font-size: 1.25rem;
  line-height: 1.5;
  color: #fff;
}

.team-member {
  margin-bottom: 3rem;
}
@media only screen and (max-width: 828px) {
  .team-member {
    margin-bottom: 2rem;
  }
}
.team-member.fold-out-toggle {
  cursor: pointer;
}

@media only screen and (max-width: 449px) {
  .team-member__image {
    height: 165px;
    -o-object-fit: cover;
       object-fit: cover;
    width: 165px;
  }
  .team-member--featured .team-member__image {
    height: 350px;
    width: 350px;
  }
}

.team-member__info {
  padding: 1.5rem 0;
}
.team-member--featured .team-member__info {
  padding: 2rem 0;
}

.team-member__name {
  font-weight: 600;
}
.team-member--featured .team-member__name {
  font-size: 1.5rem;
  line-height: 1.5;
}

.team-member__title {
  font-size: 1rem;
  line-height: 1.5;
}
.team-member--featured .team-member__title {
  font-size: 1.25rem;
  line-height: 1.5;
}

.team-member__heading-filter-row {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 2rem;
     -moz-column-gap: 2rem;
          column-gap: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 4rem;
}
@media only screen and (max-width: 449px) {
  .team-member__heading-filter-row {
    margin-bottom: 3rem;
  }
}
@media only screen and (max-width: 979px) {
  .team-member__heading-filter-row {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media only screen and (max-width: 979px) {
  .team-member__heading-filter-row h2 {
    width: 100%;
  }
}

.team-member__heading-filter-row__form {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  gap: 2rem;
}
@media only screen and (min-width: 980px) {
  .team-member__heading-filter-row__form {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
@media only screen and (max-width: 979px) {
  .team-member__heading-filter-row__form {
    margin-top: 1rem;
  }
}
@media only screen and (max-width: 649px) {
  .team-member__heading-filter-row__form {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1rem;
  }
}

.team-member__heading-filter-row__filter-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  position: relative;
  width: 296px;
}
@media only screen and (max-width: 649px) {
  .team-member__heading-filter-row__filter-container {
    width: 100%;
  }
}

.team-member__heading-filter-row__filter-button {
  font-size: 1rem;
  line-height: 1.5;
  border: 1px solid #000;
  border-radius: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 600;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  padding-right: 8rem;
  padding-top: 0.5rem;
  width: 100%;
}
@media only screen and (min-width: 980px) {
  .team-member__heading-filter-row__filter-button {
    max-width: 296px;
  }
}
.team-member__heading-filter-row__filter-button:focus, .team-member__heading-filter-row__filter-button:hover {
  padding-right: 8rem;
}
.team-member__heading-filter-row__filter-button::after {
  display: inline-block;
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}
.team-member__heading-filter-row__filter-button.toggler--toggled::after {
  -webkit-transform: rotate(180deg) translateY(50%);
          transform: rotate(180deg) translateY(50%);
}

.team-member__heading-filter-row__filter-list {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  background: #fff;
  border-radius: 8px;
  -webkit-box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.12);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: none;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 296px;
  padding: 4px;
  position: absolute;
  top: 42px;
  width: 100%;
  z-index: 2;
}
.team-member__heading-filter-row__filter-list.toggled {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.team-member__heading-filter-row__filter-option {
  font-size: 1rem;
  line-height: 1.5;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  color: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 600;
  padding: 6px 12px 4px;
}
.team-member__heading-filter-row__filter-option input {
  display: none;
}
.team-member__heading-filter-row__filter-option input:checked + label::after {
  opacity: 1;
}
.team-member__heading-filter-row__filter-option label {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  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;
}
.team-member__heading-filter-row__filter-option label::after {
  font-size: 1.5rem;
  opacity: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.team-member__statistics {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

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

.team-member__statistics__item__figure {
  font-size: 6rem;
  font-weight: 265;
  line-height: 88px;
}
@media only screen and (max-width: 1099px) {
  .team-member__statistics__item__figure {
    font-size: 5rem;
  }
}

.team-member__statistics__item__heading {
  margin-bottom: 0.5rem;
}
@media only screen and (max-width: 1099px) {
  .team-member__statistics__item__heading {
    font-size: 2rem;
    line-height: 40px;
  }
}

@media only screen and (max-width: 1099px) {
  .team-member__statistics__item__description {
    font-size: 1rem;
    line-height: 24px;
  }
}

.theme {
  background-color: #fff;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}
.theme--0 {
  background-color: #858EC7;
}
.theme--1 {
  background-color: #FB8D47;
}
.theme--2 {
  background-color: #77B5A3;
}
.theme--3 {
  background-color: #242424;
}

.section--map {
  margin-bottom: 7.5rem;
}
@media only screen and (max-width: 649px) {
  .section--map {
    margin-bottom: 3.5rem;
  }
}
.section--padded-top {
  padding-top: 3rem;
}

.slideshow {
  height: 100vh;
}
.slideshow img {
  font-family: "object-fit: cover;";
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (max-width: 828px) {
  .slideshow::after {
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(34, 34, 34, 0.5)), color-stop(70%, rgba(0, 0, 0, 0)));
    background: linear-gradient(0deg, rgba(34, 34, 34, 0.5) 0%, rgba(0, 0, 0, 0) 70%);
    bottom: 0;
    content: "";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 2;
  }
}
.slideshow .slideshow__slide {
  height: 100%;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.slideshow .slideshow__slide.animate {
  -webkit-animation: zoom-in 5s ease;
          animation: zoom-in 5s ease;
}

@-webkit-keyframes zoom-in {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

@keyframes zoom-in {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
.client-slideshow {
  margin-top: 4rem;
  padding-bottom: 4rem;
}
@media only screen and (max-width: 649px) {
  .client-slideshow {
    padding-bottom: 2rem;
  }
}
.client-slideshow .slideshow__slide {
  font-size: 5rem;
  line-height: 1.2;
  font-style: normal;
  position: absolute;
  top: 100%;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-property: top;
  transition-property: top;
}
.client-slideshow .slideshow__slide--top {
  top: 0;
}
.client-slideshow .slideshow__slide--behind {
  top: -100%;
}
@media only screen and (max-width: 979px) {
  .client-slideshow .slideshow__slide {
    font-size: 2.5rem;
    line-height: 1.2;
  }
}
@media only screen and (max-width: 649px) {
  .client-slideshow .slideshow__slide {
    font-size: 2rem;
    line-height: 1.3;
  }
}

.client-slideshow__wrapper {
  height: 88px;
  overflow-y: hidden;
  position: relative;
}

.projects-slideshow .slideshow__slide {
  font-size: 3rem;
  line-height: 1.1;
  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;
  font-style: normal;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 100%;
  position: absolute;
  top: 0;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-property: left;
  transition-property: left;
}
.projects-slideshow .slideshow__slide--top {
  left: 0;
}
.projects-slideshow .slideshow__slide--behind {
  left: -100%;
}

.projects-slideshow__wrapper {
  height: 100%;
  overflow-x: hidden;
  position: relative;
}

.testimonial-slideshow {
  height: 100%;
}
.testimonial-slideshow .slideshow__slide {
  font-size: 3rem;
  line-height: 1.1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-style: normal;
  height: 50vh;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  left: 100%;
  position: absolute;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-property: left;
  transition-property: left;
}
@media only screen and (max-width: 979px) {
  .testimonial-slideshow .slideshow__slide {
    font-size: 2rem;
    line-height: 1.3;
    height: auto;
    padding-bottom: 2rem;
  }
}
.testimonial-slideshow .slideshow__slide--top {
  left: 0;
}
.testimonial-slideshow .slideshow__slide--behind {
  left: -100%;
}

.testimonial-slideshow__wrapper {
  height: 100%;
  overflow-x: clip;
  position: relative;
}

.svg-container {
  display: inline-block;
  margin-bottom: 2rem;
  overflow: hidden;
  padding-bottom: 69.68%;
  position: relative;
  top: 0;
  vertical-align: middle;
  width: 100%;
}
@media only screen and (max-width: 828px) {
  .svg-container {
    margin-bottom: 0;
  }
}

.svg {
  display: inline-block;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

@-webkit-keyframes timer-bar-full {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}

@keyframes timer-bar-full {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}
.testimonials {
  -webkit-column-gap: 10vw;
     -moz-column-gap: 10vw;
          column-gap: 10vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: calc(100% - 40vh);
  padding-bottom: 10vh;
  padding-top: 10vh;
}
@media only screen and (min-width: 980px) {
  .testimonials {
    padding-bottom: 20vh;
    padding-top: 20vh;
  }
}
@media only screen and (max-width: 979px) {
  .testimonials {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.testimonials .slideshow__slide::before, .testimonials .slideshow__slide::after {
  content: "";
  display: block;
  height: 2px;
  left: 0;
  position: absolute;
  right: 0;
}
@media only screen and (min-width: 980px) {
  .testimonials .slideshow__slide::before, .testimonials .slideshow__slide::after {
    top: 0;
  }
}
@media only screen and (max-width: 979px) {
  .testimonials .slideshow__slide::before, .testimonials .slideshow__slide::after {
    bottom: 0;
  }
}
.testimonials .slideshow__slide::before {
  background-color: rgba(36, 36, 36, 0.3);
  opacity: 0.3;
  width: 100%;
}
.testimonials .slideshow__slide::after {
  background-color: #242424;
  width: 0;
}
.testimonials .slideshow__slide--top::after {
  -webkit-animation: timer-bar-full 5s linear forwards;
          animation: timer-bar-full 5s linear forwards;
}
.testimonials .full-screen-section__next,
.testimonials .pause-fh-slider,
.testimonials .play-fh-slider {
  bottom: 25vh;
}
@media only screen and (min-width: 980px) {
  .testimonials .full-screen-section__next,
.testimonials .pause-fh-slider,
.testimonials .play-fh-slider {
    bottom: 29.25vh;
    left: 80px;
  }
}

.testimonials__heading {
  font-size: 1.5rem;
  line-height: 1.5;
  color: #242424;
  font-weight: 600;
}

.values-carousel__column {
  background: rgba(255, 255, 255, 0.8);
  border-radius: 0.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2.5rem;
  padding: 2.5rem;
}

.values-carousel__icon {
  font-size: 4.75rem;
  line-height: 1.1;
}

.values-carousel__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}

.values-carousel__heading {
  font-size: 2.5rem;
  line-height: 1.2;
}

.values-carousel__copy {
  font-size: 1rem;
  line-height: 1.5;
}

.video {
  margin: 7.5rem 0;
  position: relative;
}
@media only screen and (max-width: 649px) {
  .video {
    margin: 3rem 0;
  }
}

.video__inner {
  position: relative;
}
.video__inner::before {
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(34, 34, 34, 0.5)), color-stop(70%, rgba(0, 0, 0, 0)));
  background: linear-gradient(0deg, rgba(34, 34, 34, 0.5) 0%, rgba(0, 0, 0, 0) 70%);
  bottom: 0;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

.video__button-container {
  font-size: 2.5rem;
  line-height: 1.2;
  bottom: 1.5rem;
  color: #fff;
  left: 1.5rem;
  position: absolute;
}

.video__button {
  background-image: url("../img/play.svg");
  background-repeat: no-repeat;
  background-size: contain;
  display: block;
  height: 60px;
  width: 60px;
}

.video__pattern {
  position: absolute;
  right: -4rem;
  top: 60%;
  z-index: -1;
}
@media only screen and (max-width: 649px) {
  .video__pattern {
    right: 0;
    top: 65%;
  }
}

.insights__authors {
  -webkit-column-gap: 2rem;
     -moz-column-gap: 2rem;
          column-gap: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 6.25rem;
  row-gap: 2.5rem;
}
@media only screen and (max-width: 979px) {
  .insights__authors {
    margin-bottom: 2rem;
    margin-top: 2rem;
  }
}

.insights__authors__author {
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.insights__authors__author--third {
  -ms-flex-preferred-size: calc(33.33% - 1.4rem);
      flex-basis: calc(33.33% - 1.4rem);
}
@media only screen and (max-width: 828px) {
  .insights__authors__author--third {
    -ms-flex-preferred-size: calc(50% - 1rem);
        flex-basis: calc(50% - 1rem);
  }
}
@media only screen and (max-width: 649px) {
  .insights__authors__author--third {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
}
.insights__authors__author--half {
  -ms-flex-preferred-size: calc(50% - 1rem);
      flex-basis: calc(50% - 1rem);
}

.insights__authors__author__image {
  height: 48px;
  width: 48px;
}

.insights__authors__author__name {
  font-size: 1rem;
  line-height: 1.5;
  display: block;
  font-weight: 600;
}

.insights__authors__author__role {
  font-size: 1rem;
  line-height: 1.5;
  display: block;
}

@media only screen and (max-width: 979px) {
  .insights__image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.related-insights {
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(255, 255, 255, 0.3)), to(rgba(255, 255, 255, 0.3))), #EBEBEB;
  background: linear-gradient(0deg, rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0.3) 100%), #EBEBEB;
  padding-bottom: 4rem;
  padding-top: 4rem;
}
@media only screen and (min-width: 1100px) {
  .related-insights {
    padding-bottom: 6.5rem;
    padding-top: 6.5rem;
  }
}

.related-insights__heading {
  font-size: 1.25rem;
  line-height: 1.5;
  display: block;
  font-weight: 600;
  margin-bottom: 1.5rem;
}
@media only screen and (min-width: 1100px) {
  .related-insights__heading {
    font-size: 1.5rem;
    line-height: 1.5;
    margin-bottom: 2.5rem;
  }
}

.insights__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2.5rem;
}
@media only screen and (min-width: 1100px) {
  .insights__list {
    gap: 2rem;
  }
}

.insights__list__insight {
  color: #000;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  text-decoration: none;
}
@media only screen and (min-width: 1100px) {
  .insights__list__insight {
    -ms-flex-preferred-size: calc(33.33% - 1.4rem);
        flex-basis: calc(33.33% - 1.4rem);
  }
}

.insights__list__insight__image {
  margin-bottom: 1.5rem;
}

.insights__list__insight__title {
  font-size: 1.5rem;
  line-height: 1.5;
  display: block;
  margin-top: 1rem;
}
@media only screen and (min-width: 1100px) {
  .insights__list__insight__title {
    font-size: 2rem;
    line-height: 1.3;
  }
}

.share-links {
  font-size: 1.25rem;
  line-height: 1.5;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-top: 1px #EBEBEB solid;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 2rem;
  padding: 4rem 0;
}
.share-links span {
  font-size: 1.5rem;
  line-height: 1.5;
  margin-right: 1rem;
}
@media only screen and (min-width: 1100px) {
  .share-links {
    width: 55%;
  }
}
@media only screen and (min-width: 1100px) {
  .share-links--xl {
    width: 70%;
  }
}
@media only screen and (max-width: 449px) {
  .share-links {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.share-links__inner {
  margin-left: 1rem;
}
@media only screen and (max-width: 649px) {
  .share-links__inner {
    margin-left: 2.5rem;
  }
}

.share-links__link {
  display: inline;
  font-weight: 500;
  margin-left: 1rem;
  text-decoration: underline;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.share-links__link:first-of-type {
  margin-left: 0;
}
@media only screen and (max-width: 449px) {
  .share-links__link {
    display: block;
    margin-left: 0;
  }
}

.sub-nav li {
  display: inline-block;
}
.sub-nav span {
  margin-left: 0.5rem;
}

.sub-nav__heading {
  opacity: 0.8;
}

.sub-nav__link {
  margin-left: 2rem;
  text-decoration: underline;
}

.lightbox {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  padding: 0 80px;
  z-index: 9999;
  opacity: 1;
  visibility: visible;
  background-color: #fff;
  -webkit-transition: opacity 0.2s, visibility 0s 0s;
  transition: opacity 0.2s, visibility 0s 0s;
  -webkit-backface-visibility: hidden;
}
@media only screen and (max-width: 979px) {
  .lightbox {
    padding: 0 16px;
  }
}

.lightbox--disabled {
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.2s, visibility 0s 0.2s;
  transition: opacity 0.2s, visibility 0s 0.2s;
}

.lightbox__inner {
  margin: 0 auto;
  max-width: 1280px;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
.lightbox__inner img,
.lightbox__inner .flex-container {
  margin: 0 auto;
}
.lightbox__inner .flex-container {
  background-color: #242424;
}
.lightbox--loading .lightbox__inner {
  opacity: 0.3;
}

.lightbox__caption {
  font-size: 1rem;
  margin-top: 2rem;
  text-align: center;
  padding: 0.4rem 0;
}

.lightbox__button {
  font-size: 1.75rem;
  font-family: "Site Icons";
  color: #000;
  background-color: #fff;
  line-height: 1;
  display: block;
  position: absolute;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  padding: 0.3rem;
  cursor: pointer;
  width: auto;
}

.lightbox__button--close {
  top: 1rem;
  right: 1rem;
}
.lightbox__button--prev,
.lightbox__button--next {
  background-color: #000;
  border-radius: 46px;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  top: 45%;
}
@media only screen and (max-width: 979px) {
  .lightbox__button--prev,
.lightbox__button--next {
    top: auto;
    bottom: 3%;
  }
}
.lightbox__button--prev:hover,
.lightbox__button--next:hover {
  background-color: rgba(0, 0, 0, 0.3);
}

.lightbox__button--prev {
  left: 1rem;
}
.lightbox__button--next {
  right: 1rem;
  text-align: right;
}
@-webkit-keyframes lightbox-loader {
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes lightbox-loader {
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
.lightbox__loader {
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
  -webkit-transform: scale(0);
          transform: scale(0);
  position: absolute;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  top: 50%;
  left: 50%;
  margin-left: -16px;
  margin-top: -16px;
  width: 32px;
  height: 32px;
}
.lightbox__loader::before {
  content: "";
  position: absolute;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1.3px solid rgba(36, 36, 36, 0.5);
  border-top-color: #242424;
  -webkit-animation: lightbox-loader 0.8s infinite;
          animation: lightbox-loader 0.8s infinite;
}
.lightbox--loading .lightbox__loader {
  -webkit-transform: scale(1);
          transform: scale(1);
}

.loadomatic__trigger--hidden, .loadomatic__message--hidden {
  display: none;
}

.loadomatic__pagination .pagination {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 0.75rem;
     -moz-column-gap: 0.75rem;
          column-gap: 0.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.loadomatic__pagination .pagination .pagination__link {
  font-size: 1.5rem;
  line-height: 1.5;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 2px solid rgba(36, 36, 36, 0.06);
  border-radius: 50%;
  color: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 48px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-decoration: none;
  width: 48px;
}
.loadomatic__pagination .pagination .pagination__link--current {
  background-color: #000;
  border-color: #000;
  color: #fff;
}
.loadomatic__pagination .pagination .pagination__arrow {
  font-size: 2.5rem;
  line-height: 1.2;
  color: #000;
  display: inline-block;
  text-decoration: none;
}
.loadomatic__pagination .pagination .pagination__arrow span {
  display: none;
}
.loadomatic__pagination .pagination .pagination__arrow--prev {
  margin-right: 28px;
}
.loadomatic__pagination .pagination .pagination__arrow--next {
  margin-left: 28px;
}
.loadomatic__pagination .pagination .pagination__arrow--disabled {
  opacity: 0.2;
}

.loadomatic__trigger--disabled {
  pointer-events: none;
}

.slideshow {
  bottom: 0;
  overflow: hidden;
  position: fixed;
  right: 0;
  top: 0;
}

.slideshow__prop {
  visibility: hidden;
}

.slideshow__slide {
  max-width: none;
  opacity: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0;
}
.slideshow__slide--behind, .slideshow__slide--top {
  opacity: 1;
  -webkit-transition: opacity 1s ease;
  transition: opacity 1s ease;
}
.slideshow__slide--behind {
  z-index: 1;
}
.slideshow__slide--top {
  z-index: 2;
}