/**
 * Breakpoints
 * WordPress Breakpoints: 782px 600px
 * Other Breakpoints: 1280px 960px 425px
 * Example usage:
 *
 *   .container {
 *     flex-direction: column;
 *     @include above(782px) {
 *       flex-direction: row;
 *     }
 *   }
 *
 */
/*
* Converts pixels values to vw
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

* {
  box-sizing: border-box;
}

summary::-webkit-details-marker {
  display: none;
}

html {
  line-height: 1;
  scroll-behavior: smooth;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

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

ol, ul {
  list-style: none;
}

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

caption,
th,
td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q,
blockquote {
  quotes: none;
}

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

a img {
  border: none;
}

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

input[type=text],
input[type=email],
input[type=tel],
input[type=url],
input[type=search],
input[type=submit],
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0;
  padding: 0;
}

textarea {
  resize: vertical;
}

select {
  display: block;
}

button {
  border: 0;
  padding: 0;
  margin: 0;
  background: transparent;
  color: #111111;
  cursor: pointer;
  line-height: 1;
}

.container {
  padding: 0 1.5625vw;
}
@media (max-width: 1200px) {
  .container {
    padding: 0 5.4054054054vw;
  }
}
@media (max-width: 650px) {
  .container {
    padding: 0 6.1538461538vw;
  }
}

@font-face {
  font-family: "Aeonik";
  src: url("fonts/aeonik-regular.woff2") format("woff2"), url("fonts/aeonik-regular.woff") format("woff");
  font-style: normal;
  font-weight: 400;
}
@font-face {
  font-family: "Aeonik";
  src: url("fonts/aeonik-medium.woff2") format("woff2"), url("fonts/aeonik-medium.woff") format("woff");
  font-style: normal;
  font-weight: 500;
}
@font-face {
  font-family: "GT Super Display";
  src: url("fonts/gtsuperdisplay-bold.woff2") format("woff2"), url("fonts/gtsuperdisplay-bold.woff") format("woff");
  font-style: normal;
  font-weight: 700;
}
/*
*  Sizes
*/
h1, h2, h3, h4, h5 {
  font-family: "GT Super Display", serif;
  color: currentColor;
  font-weight: 700;
  line-height: 1;
}

p {
  font-family: "Aeonik", sans-serif;
  color: currentColor;
  font-weight: 400;
  line-height: 1.21;
  font-size: 1.0416666667vw;
}
@media (max-width: 1200px) {
  p {
    font-size: 2.1621621622vw;
  }
}
@media (max-width: 650px) {
  p {
    font-size: 4.1025641026vw;
  }
}

.title {
  font-family: "Aeonik", sans-serif;
  font-size: 0.9375vw;
  font-weight: 400;
  line-height: 1.21;
  text-transform: uppercase;
}
@media (max-width: 1200px) {
  .title {
    font-size: 1.9459459459vw;
  }
}
@media (max-width: 650px) {
  .title {
    font-size: 3.5897435897vw;
  }
}
.title--large {
  font-size: 1.0416666667vw;
}
@media (max-width: 1200px) {
  .title--large {
    font-size: 2.1621621622vw;
  }
}
@media (max-width: 650px) {
  .title--large {
    font-size: 4.1025641026vw;
  }
}

button {
  font-family: "GT Super Display", serif;
}

.grid {
  display: grid;
  gap: 0.8333333333vw;
  grid-template-columns: repeat(12, 1fr);
  padding: 0 1.6666666667vw;
}
@media (max-width: 1200px) {
  .grid {
    padding: 0 5.4054054054vw;
  }
}

.rich-text h2, .rich-text h3, .rich-text h4, .rich-text h5 {
  font-size: 2.34375vw;
  margin: 0 0 1.7708333333vw;
}
@media (max-width: 1200px) {
  .rich-text h2, .rich-text h3, .rich-text h4, .rich-text h5 {
    font-size: 4.3243243243vw;
  }
}
@media (max-width: 650px) {
  .rich-text h2, .rich-text h3, .rich-text h4, .rich-text h5 {
    font-size: 7.1794871795vw;
  }
}
@media (max-width: 1200px) {
  .rich-text h2, .rich-text h3, .rich-text h4, .rich-text h5 {
    margin: 0 0 3.6756756757vw;
  }
}
@media (max-width: 650px) {
  .rich-text h2, .rich-text h3, .rich-text h4, .rich-text h5 {
    margin: 0 0 8.7179487179vw;
  }
}
.rich-text h2:nth-of-type(n+2), .rich-text h3:nth-of-type(n+2), .rich-text h4:nth-of-type(n+2), .rich-text h5:nth-of-type(n+2) {
  margin: 5.2083333333vw 0 1.7708333333vw;
}
@media (max-width: 1200px) {
  .rich-text h2:nth-of-type(n+2), .rich-text h3:nth-of-type(n+2), .rich-text h4:nth-of-type(n+2), .rich-text h5:nth-of-type(n+2) {
    margin: 10.8108108108vw 0 3.6756756757vw;
  }
}
@media (max-width: 650px) {
  .rich-text h2:nth-of-type(n+2), .rich-text h3:nth-of-type(n+2), .rich-text h4:nth-of-type(n+2), .rich-text h5:nth-of-type(n+2) {
    margin: 25.641025641vw 0 8.2051282051vw;
  }
}
.rich-text p, .rich-text span {
  font-size: 1.0416666667vw;
  margin: 0 0 1.25vw;
}
@media (max-width: 1200px) {
  .rich-text p, .rich-text span {
    font-size: 2.1621621622vw;
  }
}
@media (max-width: 650px) {
  .rich-text p, .rich-text span {
    font-size: 4.1025641026vw;
  }
}
@media (max-width: 1200px) {
  .rich-text p, .rich-text span {
    margin: 0 0 2.5945945946vw;
  }
}
@media (max-width: 650px) {
  .rich-text p, .rich-text span {
    margin: 0 0 5.641025641vw;
  }
}
.rich-text p:empty,
.rich-text p br:first-child {
  display: none;
}
.rich-text a:not(.button) {
  text-decoration: underline;
}
.rich-text a:not(.button):hover {
  text-decoration: none;
}
.rich-text strong {
  font-weight: 700;
}
.rich-text ul {
  list-style: disc;
  padding: 0 0 0 1.25vw;
}
@media (max-width: 1200px) {
  .rich-text ul {
    padding: 0 0 0 2.5945945946vw;
  }
}
@media (max-width: 650px) {
  .rich-text ul {
    padding: 0 0 0 6.1538461538vw;
  }
}
.rich-text ol {
  list-style: decimal-leading-zero;
  padding: 0 0 0 1.5625vw;
}
@media (max-width: 1200px) {
  .rich-text ol {
    padding: 0 0 0 3.2432432432vw;
  }
}
@media (max-width: 650px) {
  .rich-text ol {
    padding: 0 0 0 7.6923076923vw;
  }
}
.rich-text ol li::marker {
  font-family: "Aeonik", sans-serif;
}
.rich-text li {
  font-size: 1.0416666667vw;
  font-family: "Aeonik", sans-serif;
  margin: 0 0 0.9375vw;
}
@media (max-width: 1200px) {
  .rich-text li {
    font-size: 2.1621621622vw;
  }
}
@media (max-width: 650px) {
  .rich-text li {
    font-size: 4.1025641026vw;
  }
}
@media (max-width: 1200px) {
  .rich-text li {
    margin: 0 0 1.9459459459vw;
  }
}
@media (max-width: 650px) {
  .rich-text li {
    margin: 0 0 4.6153846154vw;
  }
}
.rich-text figure {
  position: relative;
  margin: 5.2083333333vw 0;
}
.rich-text figure img {
  border-radius: 6px;
  height: auto;
}
@media (max-width: 1200px) {
  .rich-text figure {
    margin: 10.8108108108vw 0;
  }
}
@media (max-width: 650px) {
  .rich-text figure {
    margin: 20.5128205128vw 0;
  }
}
.rich-text iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  border-radius: 6px;
}
.rich-text .button {
  margin: 1.3541666667vw 0 0;
}
@media (max-width: 1200px) {
  .rich-text .button {
    margin: 2.8108108108vw 0 0;
  }
}
@media (max-width: 650px) {
  .rich-text .button {
    margin: 6.6666666667vw 0 0;
  }
}

.award {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  text-align: center;
  border-left: 1px solid #FFFFFF;
  border-right: 1px solid #FFFFFF;
  padding: 1.8229166667vw 4.0625vw;
  max-width: 31.6666666667vw;
  color: #FFFFFF;
}
@media (max-width: 1200px) {
  .award {
    max-width: none;
    padding: 3.7837837838vw 8.4324324324vw;
    border-left: 0;
    border-right: 0;
    border-top: 1px solid #FFFFFF;
    border-bottom: 1px solid #FFFFFF;
  }
}
@media (max-width: 650px) {
  .award {
    padding: 8.2051282051vw 6.1538461538vw;
  }
}
.award__logo {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 12.0833333333vw;
  height: auto;
}
@media (max-width: 1200px) {
  .award__logo {
    position: relative;
    top: 0;
    left: 0;
    translate: none;
    margin: 10.8108108108vw 0;
    width: 25.0810810811vw;
  }
}
@media (max-width: 650px) {
  .award__logo {
    width: 38.4615384615vw;
    margin: 25.641025641vw 0;
  }
}
@media (max-width: 1200px) {
  .award__text {
    margin: 0 auto;
    max-width: 54.0540540541vw;
  }
}

.banner {
  color: #FFFFFF;
  height: 100vh;
  height: 100svh;
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100vw !important;
  background-color: #0B0B0B;
  z-index: 9;
}
@media (max-width: 650px) {
  .banner {
    display: block;
    height: auto;
    min-height: 100vh;
    overflow: scroll;
    overscroll-behavior: contain;
  }
}
.banner__header {
  margin: 0 auto;
  text-align: center;
  position: relative;
  width: 100%;
  max-width: 72.9166666667vw;
  margin: auto auto -3.6458333333vw;
}
@media (max-width: 1200px) {
  .banner__header {
    max-width: 91.8918918919vw;
  }
}
@media (max-width: 650px) {
  .banner__header {
    max-width: 88.4615384615vw;
    padding: 64.1025641026vw 0 29.4871794872vw;
  }
}
.banner__heading {
  font-size: 10vw;
  margin: 0 0 3.2291666667vw;
}
@media (max-width: 1200px) {
  .banner__heading {
    font-size: 12.972972973vw;
  }
}
@media (max-width: 650px) {
  .banner__heading {
    font-size: 17.9487179487vw;
  }
}
@media (max-width: 1200px) {
  .banner__heading {
    margin: 0 0 6.7027027027vw;
  }
}
@media (max-width: 650px) {
  .banner__heading {
    margin: 0 0 23.0769230769vw;
  }
}
.banner__animation {
  position: absolute;
  height: auto;
  pointer-events: none;
}
.banner__animation--plane {
  top: -10.9375vw;
  left: -4.5833333333vw;
  width: 34.375vw;
  transform: rotate(1deg);
}
@media (max-width: 1200px) {
  .banner__animation--plane {
    top: -17.2972972973vw;
    left: -5.4054054054vw;
    width: 52.972972973vw;
  }
}
@media (max-width: 650px) {
  .banner__animation--plane {
    top: 50vw;
    width: 64.6153846154vw;
    left: -1.2820512821vw;
  }
}
.banner__animation--arrow {
  bottom: -13.90625vw;
  left: 6.5104166667vw;
  width: 32.8125vw;
  transform: rotate(78deg) scaleY(-1);
}
@media (max-width: 1200px) {
  .banner__animation--arrow {
    bottom: -19.027027027vw;
    left: -0.8648648649vw;
    width: 50.8108108108vw;
  }
}
@media (max-width: 650px) {
  .banner__animation--arrow {
    top: 56.9230769231vw;
    width: 71.7948717949vw;
    left: -3.5897435897vw;
  }
}
.banner__animation--lightning {
  top: -3.6458333333vw;
  right: -5.2083333333vw;
  width: 38.5416666667vw;
  transform: rotate(-10deg);
}
@media (max-width: 1200px) {
  .banner__animation--lightning {
    top: -11.8918918919vw;
    right: -7.5675675676vw;
    width: 58.3783783784vw;
  }
}
@media (max-width: 650px) {
  .banner__animation--lightning {
    top: 66.6666666667vw;
    right: -28.2051282051vw;
    width: 82.0512820513vw;
  }
}
.banner__button {
  opacity: 0;
  transform: translateY(50px);
}
.banner__title {
  text-align: center;
}
.banner__logos {
  margin: auto 0 1.7708333333vw;
  transform: translateY(150%);
}
@media (max-width: 1200px) {
  .banner__logos {
    margin: auto 0 3.6756756757vw;
  }
}
@media (max-width: 650px) {
  .banner__logos {
    margin: auto 0 12.8205128205vw;
  }
}
.banner__logo-bar {
  display: flex;
  margin: 1.5625vw 0 0;
  width: 100vw;
  overflow: hidden;
}
@media (max-width: 1200px) {
  .banner__logo-bar {
    margin: 3.2432432432vw 0 0;
  }
}
@media (max-width: 650px) {
  .banner__logo-bar {
    margin: 9.7435897436vw 0 0;
  }
}
.banner__logo-row {
  display: flex;
  animation: marqueeLogos 32s linear infinite;
}
.banner__logo-row-inner {
  display: flex;
}
.banner__logo {
  width: auto;
  height: 2.1875vw;
  max-width: 10.4166666667vw;
  margin: 0 5vw 0 0;
  -o-object-fit: contain;
     object-fit: contain;
  filter: brightness(100);
}
@media (max-width: 1200px) {
  .banner__logo {
    height: 3.4594594595vw;
    max-width: 17.2972972973vw;
    margin: 0 8.2162162162vw 0 0;
  }
}
@media (max-width: 650px) {
  .banner__logo {
    height: 7.1794871795vw;
    max-width: 33.3333333333vw;
    margin: 0 15.8974358974vw 0 0;
  }
}

@keyframes marqueeLogos {
  to {
    transform: translateX(-25%);
  }
}
.button {
  position: relative;
  display: inline-block;
  color: #0B0B0B;
  font-weight: 500;
  font-size: 0.7291666667vw;
  font-family: "Aeonik", sans-serif;
  text-transform: uppercase;
  background: #FFFFFF;
  padding: 0.8333333333vw 1.5625vw;
  line-height: 1.21;
  transition: scale 0.4s;
  cursor: pointer;
}
@media (max-width: 1200px) {
  .button {
    font-size: 1.5135135135vw;
    padding: 1.7297297297vw 3.2432432432vw;
  }
}
@media (max-width: 650px) {
  .button {
    font-size: 3.0769230769vw;
    padding: 4.1025641026vw 7.6923076923vw;
  }
}
.button--purple {
  background: #7802F5;
}
.button--orange {
  background: #F7590B;
}
.button--green {
  background: #04F58B;
}

.case-studies {
  color: #0B0B0B;
  background: #F7F7F7;
  border-left: 1px solid #0B0B0B;
  position: relative;
}
@media (max-width: 1200px) {
  .case-studies {
    border-left: 0;
    border-top: 1px solid #0B0B0B;
  }
}
.case-studies__projects {
  display: flex;
  padding: 0 1.6666666667vw;
}
@media (max-width: 1200px) {
  .case-studies__projects {
    display: grid;
    gap: 5.4054054054vw 1.7297297297vw;
    grid-template-columns: repeat(2, 1fr);
    padding: 5.4054054054vw 5.4054054054vw 10.8108108108vw;
  }
}
@media (max-width: 650px) {
  .case-studies__projects {
    gap: 6.1538461538vw;
    grid-template-columns: repeat(1, 1fr);
    padding: 6.1538461538vw 6.1538461538vw 12.8205128205vw;
  }
}
.case-studies__project {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 1.6666666667vw 0;
  margin: 0 0.8333333333vw 0 0;
}
@media (max-width: 1200px) {
  .case-studies__project {
    margin: 0;
  }
}
.case-studies__location {
  opacity: 0.4;
  margin: 0.5208333333vw 0 0;
}
@media (max-width: 1200px) {
  .case-studies__location {
    margin: 1.0810810811vw 0 0;
  }
}
.case-studies__image-holder {
  position: relative;
  width: calc((100vh - 7.2916666667vw) * 0.65);
  height: calc(100vh - 7.2916666667vw);
  overflow: hidden;
}
@media (max-width: 1200px) {
  .case-studies__image-holder {
    width: 100%;
    height: 0;
    padding: 0 0 150%;
    margin: 0 0 3.027027027vw;
  }
}
.case-studies__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.case-studies__image[data-parallax] {
  width: calc(100% + 250px);
}
@media (max-width: 1200px) {
  .case-studies__image[data-parallax] {
    width: 100%;
  }
}
.case-studies__image[data-zoom-out] {
  transform: scale(1.3);
}
@media (max-width: 1200px) {
  .case-studies__image[data-zoom-out] {
    transform: scale(1);
  }
}

.contact {
  color: #FFFFFF;
  position: relative;
  width: -moz-max-content;
  width: max-content;
}
.contact__header {
  align-self: end;
  padding: 1.6666666667vw;
  width: 60.6770833333vw;
  margin: 0 6.0416666667vw 0 0;
  position: relative;
}
@media (max-width: 1200px) {
  .contact__header {
    display: flex;
    align-items: end;
    width: 100%;
    padding: 21.6216216216vw 5.4054054054vw 5.4054054054vw;
    min-height: calc(100svh - 10.8108108108vw);
  }
}
@media (max-width: 650px) {
  .contact__header {
    padding: 53.8461538462vw 6.1538461538vw 12.8205128205vw;
    min-height: calc(100svh - 25.641025641vw);
  }
}
.contact__subheading {
  margin: 0 0 2.6041666667vw;
}
@media (max-width: 1200px) {
  .contact__subheading {
    margin: 0 0 5.4054054054vw;
  }
}
@media (max-width: 650px) {
  .contact__subheading {
    margin: 0 0 10.7692307692vw;
  }
}
.contact__heading {
  font-size: 8.0208333333vw;
}
@media (max-width: 1200px) {
  .contact__heading {
    font-size: 9.7297297297vw;
  }
}
@media (max-width: 650px) {
  .contact__heading {
    font-size: 10.7692307692vw;
  }
}
.contact__image-holder {
  position: relative;
  width: 85vh;
  height: 100vh;
  overflow: hidden;
}
@media (max-width: 1200px) {
  .contact__image-holder {
    width: 100%;
    height: auto;
    padding: 0 0 117%;
  }
}
.contact__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.contact__image[data-parallax] {
  width: calc(100% + 250px);
}
@media (max-width: 1200px) {
  .contact__image[data-parallax] {
    width: 100%;
  }
}
.contact__image[data-zoom-out] {
  transform: scale(1.3);
}
@media (max-width: 1200px) {
  .contact__image[data-zoom-out] {
    transform: scale(1);
  }
}
.contact__panel {
  width: 30.2083333333vw;
  padding: 3.3333333333vw 6.6666666667vw 3.3333333333vw 3.3333333333vw;
  display: flex;
  flex-direction: column;
  justify-content: end;
}
@media (max-width: 1200px) {
  .contact__panel {
    width: 100%;
    display: block;
    margin: 0 auto;
    text-align: center;
    max-width: 64.8648648649vw;
    padding: 10.8108108108vw 5.4054054054vw;
  }
}
@media (max-width: 650px) {
  .contact__panel {
    max-width: none;
    padding: 19.2307692308vw 6.1538461538vw;
  }
}
.contact__item {
  margin: 2.0833333333vw 0 0;
}
@media (max-width: 1200px) {
  .contact__item {
    margin: 0 0 8.1081081081vw;
  }
}
@media (max-width: 650px) {
  .contact__item {
    margin: 0 0 12.8205128205vw;
  }
}
.contact__title {
  font-size: 3.2291666667vw;
  margin: 0 0 1.0416666667vw;
}
@media (max-width: 1200px) {
  .contact__title {
    font-size: 5.1891891892vw;
  }
}
@media (max-width: 650px) {
  .contact__title {
    font-size: 8.2051282051vw;
  }
}
@media (max-width: 1200px) {
  .contact__title {
    margin: 0 0 2.1621621622vw;
  }
}
@media (max-width: 650px) {
  .contact__title {
    margin: 0 0 5.1282051282vw;
  }
}
.contact__text p:not(:last-child) {
  margin: 0 0 0.5208333333vw;
}
@media (max-width: 1200px) {
  .contact__text p:not(:last-child) {
    margin: 0 0 1.0810810811vw;
  }
}
@media (max-width: 650px) {
  .contact__text p:not(:last-child) {
    margin: 0 0 2.5641025641vw;
  }
}
.contact__text a {
  color: #04F58B;
  position: relative;
  display: inline-block;
}
.contact__text a:hover:after {
  right: 0;
  left: auto;
  width: 0;
}
.contact__text a:after {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 1px;
  background: rgba(4, 245, 139, 0.5);
  transition: width 0.4s cubic-bezier(0.46, 0.03, 0.52, 0.96);
}
.contact [data-content-plane] {
  position: absolute;
  width: 27.6041666667vw;
  left: 21.4583333333vw;
  bottom: -13.5416666667vw;
  transform: scaleX(-1) rotate(8deg);
}
@media (max-width: 1200px) {
  .contact [data-content-plane] {
    top: auto;
    left: auto;
    right: 0;
    bottom: -35.6756756757vw;
    width: 43.2432432432vw;
    z-index: 2;
  }
}
@media (max-width: 650px) {
  .contact [data-content-plane] {
    bottom: -56.4102564103vw;
    right: -17.9487179487vw;
    width: 69.2307692308vw;
  }
}
.contact [data-content-plus] {
  position: absolute;
  top: 12.1875vw;
  left: 15vw;
  width: 5.1041666667vw;
  height: auto;
}
@media (max-width: 1200px) {
  .contact [data-content-plus] {
    width: 7.5675675676vw;
  }
}
@media (max-width: 650px) {
  .contact [data-content-plus] {
    top: 38.4615384615vw;
    left: 12.8205128205vw;
    width: 15.3846153846vw;
  }
}

.cursor {
  position: fixed;
  top: 0;
  left: 0;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  z-index: 999999;
  mix-blend-mode: difference;
}
@media (hover: none) {
  .cursor {
    display: none;
  }
}
.cursor span {
  content: "";
  display: block;
  position: absolute;
  top: -6px;
  left: -6px;
  width: 12px;
  height: 12px;
  background: #7802F5;
  will-change: scale;
  transition: scale 0.3s;
  pointer-events: none;
}
.cursor--hover span {
  scale: 0.5;
}

html, body {
  cursor: none;
}

.error {
  width: 100vw;
  min-height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
  text-align: center;
}
.error__header {
  max-width: 41.6666666667vw;
  padding: 7.8125vw 0;
}
@media (max-width: 1200px) {
  .error__header {
    padding: 16.2162162162vw 0;
    max-width: 64.8648648649vw;
  }
}
@media (max-width: 650px) {
  .error__header {
    padding: 38.4615384615vw 0;
  }
}
.error__heading {
  font-size: 4.1666666667vw;
  margin: 2.6041666667vw 0 3.6458333333vw;
}
@media (max-width: 1200px) {
  .error__heading {
    font-size: 6.4864864865vw;
  }
}
@media (max-width: 650px) {
  .error__heading {
    font-size: 10.7692307692vw;
  }
}
@media (max-width: 1200px) {
  .error__heading {
    margin: 5.4054054054vw 0 7.5675675676vw;
  }
}

.explore {
  position: fixed;
  top: 0;
  left: 0;
  overflow: scroll;
  height: 100vh;
  height: 100dvh;
  z-index: 1;
}
@media (max-width: 1200px) {
  .explore {
    opacity: 0;
  }
}
.explore__scroller {
  width: 100vw;
  height: 100vh;
  overflow: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.explore__scroller::-webkit-scrollbar {
  display: none;
}
.explore__background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  filter: blur(40px);
}
.explore__background[data-parallax] {
  width: calc(100% + 250px);
}
@media (max-width: 1200px) {
  .explore__background[data-parallax] {
    width: 100%;
  }
}
.explore__background[data-zoom-out] {
  transform: scale(1.3);
}
@media (max-width: 1200px) {
  .explore__background[data-zoom-out] {
    transform: scale(1);
  }
}
.explore__holder {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.explore__building {
  width: auto;
  height: auto;
}
@media (orientation: landscape) {
  .explore__building {
    width: 100vw;
    height: auto;
  }
}
@media (orientation: portrait) {
  .explore__building {
    width: auto;
    height: 100vh;
  }
}
.explore__foreground {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 2;
}
.explore__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  background: rgba(11, 11, 11, 0.1);
}
.explore__overlay[data-parallax] {
  width: calc(100% + 250px);
}
@media (max-width: 1200px) {
  .explore__overlay[data-parallax] {
    width: 100%;
  }
}
.explore__overlay[data-zoom-out] {
  transform: scale(1.3);
}
@media (max-width: 1200px) {
  .explore__overlay[data-zoom-out] {
    transform: scale(1);
  }
}
.explore__header {
  position: absolute;
  color: #FFFFFF;
  left: 1.6666666667vw;
  bottom: 1.6666666667vw;
}
@media (max-width: 1200px) {
  .explore__header {
    left: 3.4594594595vw;
    bottom: 3.4594594595vw;
  }
}
@media (max-width: 650px) {
  .explore__header {
    left: 6.1538461538vw;
    bottom: 6.1538461538vw;
  }
}
.explore__heading {
  font-size: 4.1666666667vw;
  margin: 0.5208333333vw 0 0;
}
@media (max-width: 1200px) {
  .explore__heading {
    font-size: 6.4864864865vw;
  }
}
@media (max-width: 650px) {
  .explore__heading {
    font-size: 10.7692307692vw;
  }
}
@media (max-width: 1200px) {
  .explore__heading {
    margin: 1.0810810811vw 0 0;
  }
}
@media (max-width: 650px) {
  .explore__heading {
    margin: 2.5641025641vw 0 0;
  }
}
.explore__image {
  width: 94.6875vw;
  height: auto;
}
.explore__hotspot {
  position: absolute;
}
.explore__hotspot[data-index="0"] {
  top: 36%;
  left: 16%;
}
.explore__hotspot[data-index="0"] i {
  top: -100%;
  left: 50%;
  width: 200%;
  transform: rotate(-105deg);
}
.explore__hotspot[data-index="1"] {
  top: 14%;
  left: 28%;
  z-index: 2;
}
.explore__hotspot[data-index="1"] i {
  top: -140%;
  width: 180%;
  left: -30%;
  transform: scaleX(-1);
}
.explore__hotspot[data-index="2"] {
  top: 56%;
  left: 38%;
  z-index: 2;
}
.explore__hotspot[data-index="2"] i {
  width: 460%;
  top: -1100%;
  left: -110%;
  transform: rotate(13deg);
}
.explore__hotspot[data-index="3"] {
  top: 71%;
  left: 65%;
  z-index: 2;
}
.explore__hotspot[data-index="3"] i {
  width: 40%;
  top: -173%;
  left: 43%;
}
.explore__hotspot[data-index="4"] {
  top: 55%;
  left: 9.5%;
  z-index: 2;
}
.explore__hotspot[data-index="4"] i {
  width: 410%;
  top: -610%;
  left: -20%;
}
.explore__tip {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 170px;
  z-index: 2;
}
.explore__tip:hover .explore__ribbon {
  width: 142px;
}
.explore__ribbon {
  width: 0;
  overflow: hidden;
  transition: width 0.5s cubic-bezier(0.65, 0.05, 0.36, 1);
  -webkit-clip-path: polygon(100% 0, calc(100% - 12px) 50%, 100% 100%, 0 100%, 0 0);
          clip-path: polygon(100% 0, calc(100% - 12px) 50%, 100% 100%, 0 100%, 0 0);
}
.explore__ribbon span {
  color: #0B0B0B;
  display: inline-block;
  padding: 6px 18px 8px 10px;
  white-space: nowrap;
  font-size: 14px;
  -webkit-clip-path: polygon(100% 0, calc(100% - 12px) 50%, 100% 100%, 0 100%, 0 0);
          clip-path: polygon(100% 0, calc(100% - 12px) 50%, 100% 100%, 0 100%, 0 0);
  line-height: 1;
}
[data-colour=green] .explore__ribbon span {
  background: #04F58B;
}
[data-colour=orange] .explore__ribbon span {
  background: #F7590B;
}
[data-colour=blue] .explore__ribbon span {
  background: #05F5F6;
}
[data-colour=red] .explore__ribbon span {
  background: #F4312C;
}
[data-colour=yellow] .explore__ribbon span {
  background: #F7E116;
}
[data-colour=purple] .explore__ribbon span {
  background: #7802F5;
}
.explore__animation {
  position: absolute;
  height: auto;
  pointer-events: none;
}
.explore__illustration {
  position: absolute;
  pointer-events: none;
}
.explore__illustration[data-explore-swipe] {
  top: 40%;
  left: 57%;
  width: 30%;
  transform: rotate(-45deg);
}
.explore__illustration[data-explore-arrow-two] {
  top: 71%;
  left: 44%;
  width: 8%;
}
.explore__illustration[data-explore-arrow-two] svg {
  width: 100%;
  height: auto;
}
.explore__illustration[data-explore-cloud-two] {
  top: -1.5%;
  left: 58%;
  width: 14%;
  transform: rotate(-4deg);
}
.explore__illustration[data-explore-cloud-two] svg {
  width: 100%;
  height: auto;
}
.explore__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border: 2px solid #0B0B0B;
  rotate: 45deg;
}
[data-colour=green] .explore__icon {
  background: #04F58B;
}
[data-colour=orange] .explore__icon {
  background: #F7590B;
}
[data-colour=blue] .explore__icon {
  background: #05F5F6;
}
[data-colour=red] .explore__icon {
  background: #F4312C;
}
[data-colour=yellow] .explore__icon {
  background: #F7E116;
}
[data-colour=purple] .explore__icon {
  background: #7802F5;
}
.explore__icon img {
  filter: brightness(0);
}
.explore__icon:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  translate: -50% -50%;
  border: 1px solid #FFFFFF;
  animation: pulse 3s infinite;
}
.explore__icon img {
  width: 12px;
}
.explore__panel {
  position: fixed;
  display: flex;
  flex-direction: column;
  top: 0;
  right: 0;
  height: 100%;
  width: 35vw;
  overflow: hidden;
  background-color: #0B0B0B;
  transform: translateX(100%);
  z-index: 2;
}
@media (max-width: 1200px) {
  .explore__panel {
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60svh;
    margin: auto 0 0;
    transform: translateY(100%);
    overflow: scroll;
    overscroll-behavior: contain;
  }
}
.explore__panel .swiper-container {
  height: 100%;
}
@media (max-width: 1200px) {
  .explore__panel .swiper-container {
    height: auto;
    min-height: 100%;
  }
}
@media (max-width: 1200px) {
  .explore__panel .swiper-wrapper {
    height: auto;
    max-width: 100vw;
  }
}
.explore__slide {
  position: absolute;
  top: 0;
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 100%;
  min-width: 100%;
  height: 100vh;
  text-align: center;
  padding: 1.6666666667vw 1.8229166667vw;
  color: #FFFFFF;
  transform: translate(100%, 0);
  z-index: 2;
}
@media (max-width: 1200px) {
  .explore__slide {
    padding: 3.4594594595vw 3.7837837838vw;
  }
}
@media (max-width: 650px) {
  .explore__slide {
    padding: 15.8974358974vw 5.641025641vw;
  }
}
.explore__slide.active {
  translate: 0 0;
}
.explore__panel-subheading {
  margin: auto 0 0;
}
@media (max-width: 650px) {
  .explore__panel-subheading {
    font-size: 3.5897435897vw;
  }
}
.explore__panel-heading {
  font-size: 2.9166666667vw;
  line-height: 1;
  font-family: "GT Super Display", serif;
  margin: 1.875vw 0;
}
@media (max-width: 1200px) {
  .explore__panel-heading {
    font-size: 5.1891891892vw;
  }
}
@media (max-width: 650px) {
  .explore__panel-heading {
    font-size: 8.2051282051vw;
  }
}
@media (max-width: 1200px) {
  .explore__panel-heading {
    max-width: 75.6756756757vw;
    margin: 11.3513513514vw 0 3.8918918919vw;
  }
}
@media (max-width: 650px) {
  .explore__panel-heading {
    font-size: 10.7692307692vw;
    line-height: 1;
    max-width: none;
    margin: 20vw 0 8.9743589744vw;
  }
}
.explore__panel-text {
  margin: 0 auto 2.7083333333vw;
  max-width: 29.1666666667vw;
}
@media (max-width: 1200px) {
  .explore__panel-text {
    max-width: 54.0540540541vw;
    margin: 0 auto 5.6216216216vw;
  }
}
@media (max-width: 650px) {
  .explore__panel-text {
    max-width: none;
    margin: 0 auto 10.7692307692vw;
  }
}
@media (max-width: 650px) {
  .explore__button {
    margin: 0 0 12.8205128205vw;
  }
}
.explore__buttons {
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin: auto 0 0;
}

@keyframes pulse {
  0% {
    opacity: 1;
    scale: 1;
  }
  25% {
    opacity: 0;
    scale: 1.6;
  }
  100% {
    opacity: 0;
    scale: 1.6;
  }
}
html {
  color: #0B0B0B;
  font-family: "GT Super Display", serif;
  scroll-behavior: initial;
  background-color: #0B0B0B;
}

html,
body {
  height: auto;
  min-height: 100%;
}

body {
  -ms-overflow-style: none;
  scrollbar-width: none;
  transform-origin: bottom left;
  width: -moz-fit-content;
  width: fit-content;
}
body::-webkit-scrollbar {
  display: none;
}
@media (max-width: 1200px) {
  body {
    width: 100vw;
  }
}

main[data-scroll=horizontal] {
  overflow: hidden;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
main[data-scroll=horizontal]::-webkit-scrollbar {
  display: none;
}

main[data-scroll=horizontal],
main[data-scroll=horizontal] section {
  display: flex;
  height: 100vh;
  height: 100dvh;
  width: -moz-max-content;
  width: max-content;
}
@media (max-width: 1200px) {
  main[data-scroll=horizontal],
  main[data-scroll=horizontal] section {
    display: block;
    height: auto;
    width: 100vw;
  }
}

::-moz-placeholder {
  color: #a9a9a9;
}

::placeholder {
  color: #a9a9a9;
}

::-moz-selection {
  background: #04F58B;
  color: #FFFFFF;
}

::selection {
  background: #04F58B;
  color: #FFFFFF;
}

[data-split] .line {
  overflow: hidden;
  padding: 1.0416666667vw;
  margin: -1.0416666667vw;
  line-height: 0.9;
}
@media (max-width: 650px) {
  [data-split] .line {
    line-height: 1;
  }
}
[data-split] .word {
  transform: translateY(140%);
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  padding: 1.6666666667vw 0;
  z-index: 998;
  pointer-events: none;
}
@media (max-width: 1200px) {
  .header {
    padding: 3.4594594595vw 0;
  }
}
@media (max-width: 650px) {
  .header {
    padding: 14.358974359vw 0;
  }
}
.header .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header__logo {
  display: inline-block;
  width: 5.7291666667vw;
  pointer-events: auto;
  transition: opacity 0.4s;
}
[data-has-scrolled=true] .header__logo {
  opacity: 0;
}
[data-current-page=case-studies] .header__logo svg path {
  fill: #0B0B0B !important;
}
@media (max-width: 1200px) {
  .header__logo {
    width: 11.8918918919vw;
  }
}
@media (max-width: 650px) {
  .header__logo {
    width: 24.358974359vw;
  }
}
.header__logo img {
  width: 5.2083333333vw;
  height: auto;
}
.header__logo svg path {
  transition: fill 0.4s;
}
.header__menu-button {
  position: relative;
  width: 8.4375vw;
  height: 2.6041666667vw;
  padding: 0 1.0416666667vw;
  background: #FFFFFF;
  border: 2px solid #0B0B0B;
  transition: background 0.35s ease, border 0.35s ease;
  cursor: pointer;
  pointer-events: auto;
  z-index: 2;
}
@media (max-width: 1200px) {
  .header__menu-button {
    width: 17.5135135135vw;
    height: 5.4054054054vw;
    padding: 0 2.1621621622vw;
  }
}
@media (max-width: 650px) {
  .header__menu-button {
    width: 32.3076923077vw;
    height: 12.3076923077vw;
    padding: 0 5.1282051282vw;
  }
}
[data-navigation-status=open] .header__menu-button {
  background: transparent;
  border-color: transparent;
}
.header__menu-button div {
  overflow: hidden;
  position: relative;
  text-align: left;
}
.header__menu-button .icon {
  position: absolute;
  top: 1.1458333333vw;
  right: 1.0416666667vw;
  width: 0.5208333333vw;
  height: 0.1041666667vw;
  color: #0B0B0B;
  background: currentColor;
  transition: color 0.3s, rotate 0.6s;
}
@media (max-width: 1200px) {
  .header__menu-button .icon {
    top: 2.3783783784vw;
    right: 2.1621621622vw;
    width: 1.0810810811vw;
    height: 0.2162162162vw;
  }
}
@media (max-width: 650px) {
  .header__menu-button .icon {
    top: 5.641025641vw;
    right: 5.1282051282vw;
    width: 2.5641025641vw;
    height: 0.5128205128vw;
  }
}
[data-navigation-status=open] .header__menu-button .icon {
  color: #FFFFFF;
  rotate: 90deg;
}
.header__menu-button .icon:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.1041666667vw;
  height: 0.5208333333vw;
  translate: -50% -50%;
  background: currentColor;
}
@media (max-width: 1200px) {
  .header__menu-button .icon:after {
    width: 0.2162162162vw;
    height: 1.0810810811vw;
  }
}
@media (max-width: 650px) {
  .header__menu-button .icon:after {
    width: 0.5128205128vw;
    height: 2.5641025641vw;
  }
}
.header__menu-button span {
  display: block;
  font-weight: 500;
  transition: transform 0.5s;
  font-size: 0.7291666667vw;
}
@media (max-width: 1200px) {
  .header__menu-button span {
    font-size: 1.5135135135vw;
  }
}
@media (max-width: 650px) {
  .header__menu-button span {
    font-size: 3.0769230769vw;
  }
}
[data-navigation-status=open] .header__menu-button span {
  transform: translateY(-100%);
}
.header__menu-button span:last-child {
  position: absolute;
  top: 0;
  left: 0;
  translate: 0 100%;
  color: #FFFFFF;
}

.helper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(11, 11, 11, 0.9);
  color: #FFFFFF;
  z-index: 2;
}
.helper__inner {
  width: 165px;
  text-align: center;
  opacity: 0;
}
.helper__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin: 0 0 20px;
  background: #FFFFFF;
  border: 2px solid #0B0B0B;
  transform: rotate(45deg);
}
.helper__icon:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  translate: -50% -50%;
  border: 1px solid #FFFFFF;
  animation: pulse 3s infinite;
}

@keyframes pulse {
  0% {
    opacity: 1;
    scale: 1;
  }
  25% {
    opacity: 0;
    scale: 1.6;
  }
  100% {
    opacity: 0;
    scale: 1.6;
  }
}
.intro-about {
  color: #FFFFFF;
  position: relative;
}
.intro-about__content {
  width: 100vw;
  height: 100vh;
  height: 100dvh;
  min-width: 100vw;
  align-items: end;
  padding-bottom: 0.7291666667vw;
}
@media (max-width: 1200px) {
  .intro-about__content {
    height: auto;
    display: flex;
    position: relative;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    padding-top: 21.6216216216vw;
    padding-bottom: 5.4054054054vw;
    min-height: calc(100svh - 10.8108108108vw);
    z-index: 2;
  }
}
@media (max-width: 650px) {
  .intro-about__content {
    padding-bottom: 6.1538461538vw;
  }
}
.intro-about__subheading {
  margin: 0 0 2.6041666667vw;
}
@media (max-width: 1200px) {
  .intro-about__subheading {
    margin: 0 0 5.4054054054vw;
  }
}
@media (max-width: 650px) {
  .intro-about__subheading {
    margin: 0 0 10.7692307692vw;
  }
}
.intro-about__heading {
  font-size: 8.0208333333vw;
  grid-column: span 9;
}
@media (max-width: 1200px) {
  .intro-about__heading {
    font-size: 9.7297297297vw;
  }
}
@media (max-width: 650px) {
  .intro-about__heading {
    font-size: 10.7692307692vw;
  }
}
@media (max-width: 1200px) {
  .intro-about__heading {
    margin: 0 0 5.4054054054vw;
  }
}
.intro-about__text {
  grid-column: span 3;
}
@media (max-width: 1200px) {
  .intro-about__text {
    max-width: 67.027027027vw;
  }
}
@media (max-width: 1200px) {
  .intro-about__text {
    max-width: none;
  }
}
.intro-about__text p {
  margin: 0 0 0.9375vw;
}
@media (max-width: 1200px) {
  .intro-about__text p {
    margin: 0 0 1.9459459459vw;
  }
}
@media (max-width: 650px) {
  .intro-about__text p {
    margin: 0 0 4.6153846154vw;
  }
}
.intro-about__image-holder {
  position: relative;
  margin: 0 0 0 8.9583333333vw;
  width: 85vh;
  height: 100vh;
  overflow: hidden;
}
@media (max-width: 1200px) {
  .intro-about__image-holder {
    width: 100%;
    height: auto;
    padding: 0 0 116%;
    margin: 0;
  }
}
.intro-about__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.intro-about__image[data-parallax] {
  width: calc(100% + 250px);
}
@media (max-width: 1200px) {
  .intro-about__image[data-parallax] {
    width: 100%;
  }
}
.intro-about__image[data-zoom-out] {
  transform: scale(1.3);
}
@media (max-width: 1200px) {
  .intro-about__image[data-zoom-out] {
    transform: scale(1);
  }
}
.intro-about [data-content-swipe-two] {
  position: absolute;
  top: -4.6875vw;
  left: -11.9791666667vw;
  width: 39.0625vw;
}
@media (max-width: 1200px) {
  .intro-about [data-content-swipe-two] {
    top: -9.7297297297vw;
    width: 64.8648648649vw;
    left: -22.7027027027vw;
  }
}
@media (max-width: 650px) {
  .intro-about [data-content-swipe-two] {
    top: -12.8205128205vw;
    left: -35.8974358974vw;
    width: 94.8717948718vw;
  }
}
.intro-about [data-content-plane] {
  position: absolute;
  top: 23.9583333333vw;
  left: 36.4583333333vw;
  width: 29.1666666667vw;
  transform: rotate(5deg);
}
@media (max-width: 1200px) {
  .intro-about [data-content-plane] {
    top: auto;
    bottom: -25.9459459459vw;
    left: 61.6216216216vw;
    width: 32.4324324324vw;
  }
}
@media (max-width: 650px) {
  .intro-about [data-content-plane] {
    bottom: -53.8461538462vw;
    left: 51.2820512821vw;
    width: 64.1025641026vw;
  }
}

.intro-projects {
  color: #0B0B0B;
  background: #F7F7F7;
  padding: 1.6666666667vw;
  align-items: flex-end;
  position: relative;
  width: 49.4791666667vw !important;
  z-index: 2;
}
@media (max-width: 1200px) {
  .intro-projects {
    display: flex !important;
    align-items: end;
    width: 100vw !important;
    padding: 21.6216216216vw 5.4054054054vw 5.4054054054vw;
    min-height: calc(100svh - 10.8108108108vw);
  }
}
@media (max-width: 650px) {
  .intro-projects {
    padding: 53.8461538462vw 6.1538461538vw 12.8205128205vw;
    min-height: calc(100svh - 25.641025641vw);
  }
}
.intro-projects__subheading {
  margin: 0 0 2.6041666667vw;
}
@media (max-width: 1200px) {
  .intro-projects__subheading {
    margin: 0 0 5.4054054054vw;
  }
}
@media (max-width: 650px) {
  .intro-projects__subheading {
    margin: 0 0 10.7692307692vw;
  }
}
.intro-projects__heading {
  font-size: 4.1666666667vw;
  width: 33.8541666667vw;
}
@media (max-width: 1200px) {
  .intro-projects__heading {
    font-size: 6.4864864865vw;
  }
}
@media (max-width: 650px) {
  .intro-projects__heading {
    font-size: 10.7692307692vw;
  }
}
@media (max-width: 1200px) {
  .intro-projects__heading {
    width: 100%;
    max-width: 70.2702702703vw;
  }
}
@media (max-width: 650px) {
  .intro-projects__heading {
    font-size: 11.2820512821vw;
    max-width: 87.1794871795vw;
  }
}
.intro-projects [data-content-swipe-two] {
  position: absolute;
  top: -15.1041666667vw;
  right: -15.625vw;
  width: 43.75vw;
  transform: rotate(20deg);
}
@media (max-width: 1200px) {
  .intro-projects [data-content-swipe-two] {
    top: -15.1351351351vw;
    right: -19.4594594595vw;
    width: 70.2702702703vw;
    transform: rotate(70deg);
  }
}
@media (max-width: 650px) {
  .intro-projects [data-content-swipe-two] {
    right: -28.2051282051vw;
    width: 97.4358974359vw;
  }
}
.intro-projects [data-content-plane] {
  position: absolute;
  top: 13.6458333333vw;
  left: 1.5625vw;
  width: 23.9583333333vw;
  transform: rotate(5deg);
}
@media (max-width: 1200px) {
  .intro-projects [data-content-plane] {
    top: 6.4864864865vw;
    left: 0;
    width: 43.2432432432vw;
  }
}
@media (max-width: 650px) {
  .intro-projects [data-content-plane] {
    top: 17.9487179487vw;
    left: -10.2564102564vw;
    width: 69.2307692308vw;
  }
}
.intro-projects [data-content-arrow] {
  position: absolute;
  bottom: -19.7916666667vw;
  left: 21.3541666667vw;
  width: 31.25vw;
  transform: rotate(-18deg) scaleX(-1);
}
@media (max-width: 1200px) {
  .intro-projects [data-content-arrow] {
    left: auto;
    right: 0px;
    bottom: -30.2702702703vw;
    width: 46.4864864865vw;
  }
}
@media (max-width: 650px) {
  .intro-projects [data-content-arrow] {
    right: -23.0769230769vw;
    width: 71.7948717949vw;
    bottom: -46.1538461538vw;
  }
}

.intro-services {
  color: #FFFFFF;
}
.intro-services__content {
  height: 100vh;
  height: 100dvh;
  width: 46.09375vw;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 1.6666666667vw 8.0208333333vw 1.25vw 2.5vw;
  border-right: 1px solid #FFFFFF;
}
@media (max-width: 1200px) {
  .intro-services__content {
    border: 0;
    height: auto;
    width: 100%;
    max-width: 86.4864864865vw;
    padding: 5.4054054054vw 5.4054054054vw 8.1081081081vw;
  }
}
@media (max-width: 650px) {
  .intro-services__content {
    max-width: none;
    padding: 8.2051282051vw 6.1538461538vw 28.2051282051vw;
  }
}
.intro-services__subheading {
  margin: 0 0 2.6041666667vw;
}
@media (max-width: 1200px) {
  .intro-services__subheading {
    margin: 0 0 5.4054054054vw;
  }
}
@media (max-width: 650px) {
  .intro-services__subheading {
    margin: 0 0 10.7692307692vw;
  }
}
.intro-services__heading {
  font-size: 3.2291666667vw;
  max-width: 35.3125vw;
}
@media (max-width: 1200px) {
  .intro-services__heading {
    font-size: 5.1891891892vw;
  }
}
@media (max-width: 650px) {
  .intro-services__heading {
    font-size: 8.2051282051vw;
  }
}
@media (max-width: 1200px) {
  .intro-services__heading {
    max-width: none;
    margin: 8.6486486486vw 0 0;
  }
}
@media (max-width: 650px) {
  .intro-services__heading {
    max-width: 76.9230769231vw;
    margin: 20.5128205128vw 0 0;
  }
}
.intro-services__text {
  max-width: 31.25vw;
}
@media (max-width: 1200px) {
  .intro-services__text {
    max-width: 54.0540540541vw;
  }
}
@media (max-width: 650px) {
  .intro-services__text {
    max-width: none;
  }
}
.intro-services__text p {
  font-size: 1.1458333333vw;
  margin: 0 0 0.9375vw;
}
@media (max-width: 1200px) {
  .intro-services__text p {
    font-size: 2.3783783784vw;
  }
}
@media (max-width: 650px) {
  .intro-services__text p {
    font-size: 4.6153846154vw;
  }
}
@media (max-width: 1200px) {
  .intro-services__text p {
    margin: 0 0 1.9459459459vw;
  }
}
@media (max-width: 650px) {
  .intro-services__text p {
    margin: 0 0 4.6153846154vw;
  }
}
.intro-services__image-holder {
  position: relative;
  width: 85vh;
  height: 100vh;
  overflow: hidden;
}
@media (max-width: 1200px) {
  .intro-services__image-holder {
    width: 100%;
    height: auto;
    padding: 0 0 117%;
  }
}
.intro-services__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.intro-services__image[data-parallax] {
  width: calc(100% + 250px);
}
@media (max-width: 1200px) {
  .intro-services__image[data-parallax] {
    width: 100%;
  }
}
.intro-services__image[data-zoom-out] {
  transform: scale(1.3);
}
@media (max-width: 1200px) {
  .intro-services__image[data-zoom-out] {
    transform: scale(1);
  }
}
.intro-services [data-content-arrow] {
  position: absolute;
  width: 33.8541666667vw;
  bottom: -20.2604166667vw;
  left: -9.8958333333vw;
  transform: rotate(22deg);
}
@media (max-width: 1200px) {
  .intro-services [data-content-arrow] {
    width: 54.0540540541vw;
    bottom: -33.5135135135vw;
    left: -16vw;
  }
}
@media (max-width: 650px) {
  .intro-services [data-content-arrow] {
    top: 12.8205128205vw;
    bottom: auto;
    left: -43.5897435897vw;
    width: 123.0769230769vw;
  }
}

.intro-why {
  position: relative;
  color: #FFFFFF;
  z-index: 2;
}
.intro-why__header {
  width: 43.125vw;
  padding: 1.6666666667vw;
  margin: 0 8.9583333333vw 0 0;
  align-self: flex-end;
}
@media (max-width: 1200px) {
  .intro-why__header {
    display: flex;
    align-items: end;
    width: 100%;
    margin: 0;
    padding: 21.6216216216vw 5.4054054054vw 5.4054054054vw;
    min-height: calc(100svh - 10.8108108108vw);
  }
}
@media (max-width: 650px) {
  .intro-why__header {
    padding: 53.8461538462vw 6.1538461538vw 12.8205128205vw;
    min-height: calc(100svh - 25.641025641vw);
  }
}
.intro-why__subheading {
  margin: 0 0 2.6041666667vw;
}
@media (max-width: 1200px) {
  .intro-why__subheading {
    margin: 0 0 5.4054054054vw;
  }
}
@media (max-width: 650px) {
  .intro-why__subheading {
    margin: 0 0 10.7692307692vw;
  }
}
.intro-why__heading {
  font-size: 4.1666666667vw;
  position: relative;
  z-index: 2;
}
@media (max-width: 1200px) {
  .intro-why__heading {
    font-size: 6.4864864865vw;
  }
}
@media (max-width: 650px) {
  .intro-why__heading {
    font-size: 10.7692307692vw;
  }
}
.intro-why [data-content-cloud] {
  position: absolute;
  top: -7.8125vw;
  right: -3.6458333333vw;
  width: 23.4375vw;
}
@media (max-width: 1200px) {
  .intro-why [data-content-cloud] {
    top: -15.1351351351vw;
    right: -6.4864864865vw;
    width: 41.0810810811vw;
  }
}
@media (max-width: 650px) {
  .intro-why [data-content-cloud] {
    top: -25.641025641vw;
    width: 71.7948717949vw;
    right: -17.9487179487vw;
  }
}
.intro-why [data-content-arrow-two] {
  position: absolute;
  top: 4.1666666667vw;
  left: -14.5833333333vw;
  width: 31.25vw;
  transform: scaleX(-1) rotate(-21deg);
}
@media (max-width: 1200px) {
  .intro-why [data-content-arrow-two] {
    top: 3.2432432432vw;
    left: -24.8648648649vw;
    width: 54.0540540541vw;
  }
}
@media (max-width: 650px) {
  .intro-why [data-content-arrow-two] {
    top: 0;
    left: -41.0256410256vw;
    width: 89.7435897436vw;
    transform: scaleX(-1) rotate(-71deg);
  }
}

.loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: #0B0B0B;
  z-index: 999;
}
.loader__animation {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
.loader__logo {
  width: 15.625vw;
  height: auto;
}
@media (max-width: 1200px) {
  .loader__logo {
    width: 32.4324324324vw;
  }
}
.loader__cloud {
  position: absolute;
  top: -4.1666666667vw;
  left: 4.1666666667vw;
  width: 15.625vw;
  height: auto;
  rotate: 10deg;
}
@media (max-width: 1200px) {
  .loader__cloud {
    top: -8.6486486486vw;
    left: 8.6486486486vw;
    width: 32.4324324324vw;
  }
}
.loader__plane {
  position: absolute;
  top: -2.0833333333vw;
  left: -4.5833333333vw;
  width: 26.0416666667vw;
  height: auto;
}
@media (max-width: 1200px) {
  .loader__plane {
    top: -4.3243243243vw;
    left: -9.5135135135vw;
    width: 54.0540540541vw;
  }
}

.navigation {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  height: 100dvh;
  color: #FFFFFF;
  background-color: #0B0B0B;
  -webkit-clip-path: inset(0 0 100% 0);
          clip-path: inset(0 0 100% 0);
  z-index: 997;
}
@media (max-width: 650px) {
  .navigation {
    display: block;
    overflow: scroll;
  }
}
.navigation__marquee {
  position: absolute;
  top: 8.5416666667vw;
  left: 0;
  width: 100vw;
  height: 18.2291666667vw;
  overflow: hidden;
  pointer-events: none;
}
@media (max-width: 1200px) {
  .navigation__marquee {
    top: 14.9189189189vw;
    height: 29.7297297297vw;
  }
}
@media (max-width: 650px) {
  .navigation__marquee {
    top: 34.8717948718vw;
    height: 25.641025641vw;
  }
}
.navigation__marquee .swiper-slide {
  display: flex;
}
.navigation__marquee span {
  font-size: 18.2291666667vw;
  font-family: "GT Super Display", serif;
  white-space: nowrap;
  padding: 0 3.125vw;
}
@media (max-width: 1200px) {
  .navigation__marquee span {
    font-size: 20.5405405405vw;
    padding: 0 4.3243243243vw;
  }
}
@media (max-width: 650px) {
  .navigation__marquee span {
    font-size: 25.641025641vw;
    padding: 0 5.1282051282vw;
  }
}
.navigation__list {
  grid-row: 1;
  grid-column: 10/13;
  align-self: end;
  margin: 0 0 1.6666666667vw;
  position: relative;
  left: -1.6666666667vw;
}
@media (max-width: 1200px) {
  .navigation__list {
    margin: 0 0 3.4594594595vw;
    grid-column: 7/13;
  }
}
@media (max-width: 650px) {
  .navigation__list {
    left: 0;
    margin: 92.3076923077vw 0 15.3846153846vw;
  }
}
.navigation__list ul {
  gap: 0.3125vw;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  pointer-events: none;
}
@media (max-width: 1200px) {
  .navigation__list ul {
    gap: 0.6486486486vw;
  }
}
@media (max-width: 650px) {
  .navigation__list ul {
    gap: 1.5384615385vw;
  }
}
.navigation__list ul > * {
  transition: opacity 150ms linear 100ms, transform 150ms ease-in-out 100ms;
  pointer-events: auto;
}
.navigation__list ul:hover > * {
  opacity: 0.3;
}
.navigation__list ul > *:hover {
  opacity: 1;
}
.navigation__item {
  position: relative;
  overflow: hidden;
  padding-left: 1.5625vw;
  pointer-events: auto;
}
@media (max-width: 1200px) {
  .navigation__item {
    padding-left: 3.2432432432vw;
  }
}
@media (max-width: 650px) {
  .navigation__item {
    padding-left: 0;
  }
}
.navigation__item:hover:before {
  opacity: 1;
  rotate: 0deg;
}
.navigation__item:before {
  content: "";
  width: 0.5208333333vw;
  height: 0.5208333333vw;
  display: inline-block;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='9' viewBox='0 0 9 9'%3E%3Cpath d='M4.59-7.936H6.244v3.75H9.928v1.479H6.244V1.064H4.59V-2.707H.928V-4.186H4.59Z' transform='translate(-0.928 7.936)' fill='%23fff'/%3E%3C/svg%3E");
  background-size: cover;
  position: absolute;
  top: 0.625vw;
  left: 0;
  rotate: -90deg;
  opacity: 0;
  transition: opacity 0.3s, rotate 0.3s;
}
@media (max-width: 1200px) {
  .navigation__item:before {
    top: 1.2972972973vw;
    width: 1.0810810811vw;
    height: 1.0810810811vw;
  }
}
.navigation__link {
  display: inline-block;
  font-family: "GT Super Display", serif;
  font-size: 1.8229166667vw;
}
@media (max-width: 1200px) {
  .navigation__link {
    font-size: 3.7837837838vw;
  }
}
@media (max-width: 650px) {
  .navigation__link {
    font-size: 8.9743589744vw;
  }
}
.navigation__footer {
  grid-column: 1/5;
  align-self: end;
  margin: 0 0 1.6666666667vw;
}
@media (max-width: 1200px) {
  .navigation__footer {
    margin: 0 0 3.4594594595vw;
    grid-column: 1/7;
  }
}
@media (max-width: 650px) {
  .navigation__footer {
    margin: 0 0 25.641025641vw;
  }
}
.navigation__policies {
  margin: 1.1458333333vw 0 0;
}
@media (max-width: 1200px) {
  .navigation__policies {
    margin: 2.3783783784vw 0 0;
  }
}
@media (max-width: 650px) {
  .navigation__policies {
    margin: 5.641025641vw 0 0;
  }
}
.navigation__policies-item {
  margin: 0 0 0.5208333333vw;
}
@media (max-width: 1200px) {
  .navigation__policies-item {
    margin: 0 0 1.0810810811vw;
  }
}
@media (max-width: 650px) {
  .navigation__policies-item {
    margin: 0 0 2.5641025641vw;
  }
}
.navigation__policies-link {
  font-family: "Aeonik", sans-serif;
  font-size: 0.9375vw;
  font-weight: 400;
  line-height: 1.21;
  text-transform: uppercase;
}
@media (max-width: 1200px) {
  .navigation__policies-link {
    font-size: 1.9459459459vw;
  }
}
@media (max-width: 650px) {
  .navigation__policies-link {
    font-size: 3.5897435897vw;
  }
}
.navigation [data-nav-swipe] {
  position: absolute;
  top: 10.9375vw;
  left: -21.3541666667vw;
  width: 41.6666666667vw;
  transform: rotate(-45deg);
  z-index: 2;
  pointer-events: none;
}
@media (max-width: 1200px) {
  .navigation [data-nav-swipe] {
    top: 17.2972972973vw;
    left: -30.2702702703vw;
    width: 55.1351351351vw;
  }
}
@media (max-width: 650px) {
  .navigation [data-nav-swipe] {
    top: 35.8974358974vw;
    left: -69.2307692308vw;
    width: 102.5641025641vw;
  }
}
.navigation [data-nav-cloud] {
  position: absolute;
  bottom: 4.1666666667vw;
  right: -13.5416666667vw;
  width: 26.0416666667vw;
  transform: rotate(-115deg);
  pointer-events: none;
}
@media (max-width: 1200px) {
  .navigation [data-nav-cloud] {
    bottom: 0;
    width: 41.0810810811vw;
    right: -21.6216216216vw;
  }
}
@media (max-width: 650px) {
  .navigation [data-nav-cloud] {
    display: none;
  }
}
.navigation [data-nav-plane] {
  position: absolute;
  top: -0.5208333333vw;
  left: 39.5833333333vw;
  width: 33.8541666667vw;
  transform: scaleX(-1);
  z-index: 2;
  pointer-events: none;
}
@media (max-width: 1200px) {
  .navigation [data-nav-plane] {
    top: 2.1621621622vw;
    left: 42.1621621622vw;
    width: 45.4054054054vw;
  }
}
@media (max-width: 650px) {
  .navigation [data-nav-plane] {
    top: 64.1025641026vw;
    left: 30.7692307692vw;
    width: 76.9230769231vw;
  }
}

.next-page {
  display: block;
  position: relative;
  color: #FFFFFF;
  width: 25vw;
  height: 100vh;
  height: 100dvh;
  padding: 0 1.6666666667vw;
  border-left: 1px solid #FFFFFF;
}
@media (max-width: 1200px) {
  .next-page {
    width: 100vw;
    height: auto;
    padding: 5.4054054054vw;
    border: 0;
  }
}
@media (max-width: 650px) {
  .next-page {
    padding: 8.2051282051vw 6.1538461538vw;
  }
}
.next-page__title {
  position: relative;
  writing-mode: vertical-rl;
  text-orientation: mixed;
  top: 1.6666666667vw;
  left: 0;
}
@media (max-width: 1200px) {
  .next-page__title {
    position: relative;
    top: 0;
    left: 0;
    writing-mode: unset;
    margin: 0 0 16.2162162162vw;
  }
}
@media (max-width: 650px) {
  .next-page__title {
    margin: 0 0 25.641025641vw;
  }
}
.next-page__title span {
  font-size: 8.0208333333vw;
}
@media (max-width: 1200px) {
  .next-page__title span {
    font-size: 9.7297297297vw;
  }
}
@media (max-width: 650px) {
  .next-page__title span {
    font-size: 10.7692307692vw;
  }
}
.next-page__title span:last-child {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 1;
  -webkit-clip-path: inset(100% 0 0 0);
          clip-path: inset(100% 0 0 0);
}
@media (max-width: 650px) {
  .next-page__title span {
    font-size: 17.9487179487vw;
  }
}
.next-page__scroll {
  position: absolute;
  left: 1.6666666667vw;
  bottom: 1.6666666667vw;
}
@media (max-width: 1200px) {
  .next-page__scroll {
    position: relative;
    left: 0;
    bottom: 0;
  }
}
.next-page__scroller {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 99999;
  overscroll-behavior: contain;
  overflow: scroll;
  pointer-events: none;
  opacity: 0;
}
@media (max-width: 1200px) {
  .next-page__scroller {
    display: none;
  }
}
.next-page__scroller-trigger {
  display: block;
  height: calc(100vh + 300px);
}
.next-page [data-content-swipe-two] {
  position: absolute;
  top: -6.7708333333vw;
  right: -17.1875vw;
  width: 39.0625vw;
  transform: rotate(85deg);
  pointer-events: none;
}
.next-page [data-content-plane] {
  position: absolute;
  bottom: -5.7291666667vw;
  right: 0;
  width: 21.875vw;
  transform: rotate(5deg);
  pointer-events: none;
}

.policy {
  color: #FFFFFF;
  padding: 13.0208333333vw 0;
}
@media (max-width: 1200px) {
  .policy {
    padding: 21.6216216216vw 0;
  }
}
@media (max-width: 650px) {
  .policy {
    padding: 44.8717948718vw 0;
  }
}
.policy .container {
  margin: 0 auto;
  max-width: 48.1770833333vw;
}
@media (max-width: 1200px) {
  .policy .container {
    max-width: 100vw;
  }
}
.policy__heading {
  font-size: 4.1666666667vw;
  margin: 0 0 5.2083333333vw;
}
@media (max-width: 1200px) {
  .policy__heading {
    font-size: 6.4864864865vw;
  }
}
@media (max-width: 650px) {
  .policy__heading {
    font-size: 10.7692307692vw;
  }
}
@media (max-width: 1200px) {
  .policy__heading {
    margin: 0 0 10.8108108108vw;
  }
}
.policy__button {
  margin: 5.2083333333vw 0 0;
}
@media (max-width: 1200px) {
  .policy__button {
    margin: 10.8108108108vw 0 0;
  }
}

body[data-current-page=policy] {
  width: 100vw;
}

.progress {
  position: fixed;
  left: 0;
  bottom: 0;
  height: 4px;
  width: 0;
  background: #FFFFFF;
  border-top: 1px solid #0B0B0B;
  border-right: 1px solid #0B0B0B;
  z-index: 9;
}
@media (max-width: 1200px) {
  .progress {
    top: 0;
    bottom: auto;
  }
}

.sectors {
  color: #FFFFFF;
}
.sectors__image-holder {
  position: relative;
  width: 85vh;
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
}
@media (max-width: 1200px) {
  .sectors__image-holder {
    width: 100%;
    height: auto;
    padding: 0 0 117%;
  }
}
.sectors__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.sectors__image[data-parallax] {
  width: calc(100% + 250px);
}
@media (max-width: 1200px) {
  .sectors__image[data-parallax] {
    width: 100%;
  }
}
.sectors__image[data-zoom-out] {
  transform: scale(1.3);
}
@media (max-width: 1200px) {
  .sectors__image[data-zoom-out] {
    transform: scale(1);
  }
}
.sectors__pillars {
  display: flex;
  align-items: flex-end;
  position: relative;
}
@media (max-width: 1200px) {
  .sectors__pillars {
    flex-wrap: wrap;
  }
}
.sectors__pillar {
  height: 100vh;
  height: 100dvh;
  width: 33.8541666667vw;
  padding: 1.6666666667vw 3.3333333333vw;
  border-left: 1px solid #FFFFFF;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  text-align: center;
  position: relative;
}
@media (max-width: 1200px) {
  .sectors__pillar {
    width: 100%;
    height: auto;
    padding: 5.4054054054vw;
    border: 0;
    border-bottom: 1px solid #FFFFFF;
  }
}
@media (max-width: 650px) {
  .sectors__pillar {
    padding: 8.2051282051vw 6.1538461538vw;
  }
}
.sectors__pillar-title {
  margin: 0 0 1.5625vw;
}
@media (max-width: 1200px) {
  .sectors__pillar-title {
    margin: 0 0 3.2432432432vw;
  }
}
.sectors__pillar-heading {
  font-size: 2.34375vw;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: calc(100% - 6.6666666667vw);
}
@media (max-width: 1200px) {
  .sectors__pillar-heading {
    font-size: 4.3243243243vw;
  }
}
@media (max-width: 650px) {
  .sectors__pillar-heading {
    font-size: 7.1794871795vw;
  }
}
@media (max-width: 1200px) {
  .sectors__pillar-heading {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    translate: none;
    margin: 15.1351351351vw 0;
  }
}
@media (max-width: 650px) {
  .sectors__pillar-heading {
    font-size: 10.7692307692vw;
    margin: 20.5128205128vw 0;
  }
}
.sectors__pillar-text {
  margin: 0 auto;
  max-width: 23.5416666667vw;
}
@media (max-width: 1200px) {
  .sectors__pillar-text {
    max-width: 51.3513513514vw;
  }
}
@media (max-width: 650px) {
  .sectors__pillar-text {
    max-width: none;
  }
}
.sectors__pillar-text div {
  display: flex;
  gap: 20px;
}
.sectors__pillar-text figure {
  margin: 0.625vw 0;
}
@media (max-width: 1200px) {
  .sectors__pillar-text figure {
    margin: 1.2972972973vw 0;
  }
}
@media (max-width: 650px) {
  .sectors__pillar-text figure {
    margin: 3.0769230769vw 0;
  }
}
.sectors__pillar-text figure img {
  height: auto;
  width: 100%;
  max-width: 14.3229166667vw;
  filter: brightness(100);
}
@media (max-width: 1200px) {
  .sectors__pillar-text figure img {
    max-width: 29.7297297297vw;
  }
}
@media (max-width: 650px) {
  .sectors__pillar-text figure img {
    max-width: 51.2820512821vw;
  }
}
.sectors__pillar-text p:not(:last-child) {
  margin: 0 0 0.9375vw;
}
@media (max-width: 1200px) {
  .sectors__pillar-text p:not(:last-child) {
    margin: 0 0 1.9459459459vw;
  }
}
@media (max-width: 650px) {
  .sectors__pillar-text p:not(:last-child) {
    margin: 0 0 4.6153846154vw;
  }
}
.sectors__content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 1.6666666667vw 7.8125vw 0.625vw 2.6041666667vw;
}
@media (max-width: 1200px) {
  .sectors__content {
    padding: 5.4054054054vw;
    border-bottom: 1px solid #FFFFFF;
  }
}
@media (max-width: 650px) {
  .sectors__content {
    padding: 8.2051282051vw 6.1538461538vw;
  }
}
.sectors__heading {
  font-size: 8.0208333333vw;
}
@media (max-width: 1200px) {
  .sectors__heading {
    font-size: 9.7297297297vw;
  }
}
@media (max-width: 650px) {
  .sectors__heading {
    font-size: 10.7692307692vw;
  }
}
@media (max-width: 1200px) {
  .sectors__heading {
    margin: 21.6216216216vw 0 0;
  }
}
@media (max-width: 650px) {
  .sectors__heading {
    font-size: 17.9487179487vw;
    margin: 51.2820512821vw 0 0;
  }
}
.sectors__text {
  width: 31.6666666667vw;
}
@media (max-width: 1200px) {
  .sectors__text {
    width: 100%;
    max-width: 72.972972973vw;
  }
}
@media (max-width: 650px) {
  .sectors__text {
    max-width: none;
  }
}
.sectors__text h2, .sectors__text h3 {
  font-size: 2.34375vw;
  margin: 0 0 1.5625vw;
}
@media (max-width: 1200px) {
  .sectors__text h2, .sectors__text h3 {
    font-size: 4.3243243243vw;
  }
}
@media (max-width: 650px) {
  .sectors__text h2, .sectors__text h3 {
    font-size: 7.1794871795vw;
  }
}
@media (max-width: 1200px) {
  .sectors__text h2, .sectors__text h3 {
    margin: 0 0 3.4594594595vw;
  }
}
@media (max-width: 650px) {
  .sectors__text h2, .sectors__text h3 {
    margin: 0 0 8.2051282051vw;
  }
}
.sectors__text p {
  max-width: 22.6041666667vw;
  margin: 0 0 0.9375vw;
}
@media (max-width: 1200px) {
  .sectors__text p {
    margin: 0 0 1.9459459459vw;
    max-width: 54.0540540541vw;
  }
}
@media (max-width: 650px) {
  .sectors__text p {
    margin: 0 0 4.6153846154vw;
    max-width: none;
  }
}
.sectors [data-content-plane] {
  position: absolute;
  top: 8.8541666667vw;
  right: -12.5vw;
  width: 23.9583333333vw;
  transform: rotate(5deg);
  z-index: 2;
}
@media (max-width: 1200px) {
  .sectors [data-content-plane] {
    top: auto;
    bottom: -34.5945945946vw;
    left: -7.5675675676vw;
    width: 43.2432432432vw;
  }
}
@media (max-width: 650px) {
  .sectors [data-content-plane] {
    bottom: -56.4102564103vw;
    left: -15.3846153846vw;
    width: 69.2307692308vw;
  }
}

.services {
  color: #FFFFFF;
}
.services__image-holder {
  position: relative;
  margin: 0 0 0 8.9583333333vw;
  width: 85vh;
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
}
@media (max-width: 1200px) {
  .services__image-holder {
    width: 100%;
    height: auto;
    padding: 0 0 116%;
    margin: 0;
  }
}
.services__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.services__image[data-parallax] {
  width: calc(100% + 250px);
}
@media (max-width: 1200px) {
  .services__image[data-parallax] {
    width: 100%;
  }
}
.services__image[data-zoom-out] {
  transform: scale(1.3);
}
@media (max-width: 1200px) {
  .services__image[data-zoom-out] {
    transform: scale(1);
  }
}
.services__pillars {
  display: flex;
  align-items: flex-end;
  position: relative;
}
@media (max-width: 1200px) {
  .services__pillars {
    flex-wrap: wrap;
  }
}
@media (max-width: 650px) {
  .services__pillars {
    overflow: hidden;
  }
}
.services__pillar {
  height: auto;
  width: 23.5416666667vw;
  color: #0B0B0B;
  background: #FFFFFF;
  padding: 1.6666666667vw 0.8333333333vw;
  border-right: 1px solid #0B0B0B;
  display: flex;
  flex-direction: column;
}
@media (max-width: 1200px) {
  .services__pillar {
    width: 100%;
    padding: 5.4054054054vw;
    border: 0;
    border-bottom: 1px solid #0B0B0B;
  }
  .services__pillar:nth-child(1) {
    height: auto;
  }
  .services__pillar:nth-child(2) {
    height: auto;
  }
  .services__pillar:nth-child(3) {
    height: auto;
  }
}
@media (max-width: 650px) {
  .services__pillar {
    padding: 8.2051282051vw 6.1538461538vw;
  }
}
.services__title {
  margin: 0 0 1.5625vw;
}
@media (max-width: 1200px) {
  .services__title {
    margin: 0 0 3.2432432432vw;
  }
}
@media (max-width: 650px) {
  .services__title {
    margin: 0 0 7.6923076923vw;
  }
}
.services__heading {
  font-size: 2.34375vw;
  margin: 0 0 10.4166666667vw;
}
@media (max-width: 1200px) {
  .services__heading {
    font-size: 4.3243243243vw;
  }
}
@media (max-width: 650px) {
  .services__heading {
    font-size: 7.1794871795vw;
  }
}
@media (max-width: 1200px) {
  .services__heading {
    margin: 0 0 5.4054054054vw;
  }
}
@media (max-width: 650px) {
  .services__heading {
    margin: 0 0 12.8205128205vw;
    font-size: 10.7692307692vw;
  }
}
.services__text {
  margin: auto 0 0;
}
.services__text figure {
  margin: 0.5208333333vw 0;
}
@media (max-width: 1200px) {
  .services__text figure {
    margin: 0.6486486486vw 0;
  }
}
@media (max-width: 650px) {
  .services__text figure {
    margin: 1.5384615385vw 0;
  }
}
.services__text figure img {
  width: 100%;
  height: auto;
  max-width: 14.3229166667vw;
}
@media (max-width: 1200px) {
  .services__text figure img {
    max-width: 29.7297297297vw;
  }
}
@media (max-width: 650px) {
  .services__text figure img {
    max-width: 51.2820512821vw;
  }
}
.services__text p:not(:last-child) {
  margin: 0 0 0.9375vw;
}
@media (max-width: 1200px) {
  .services__text p:not(:last-child) {
    margin: 0 0 1.9459459459vw;
  }
}
.services [data-content-swipe-two] {
  position: absolute;
  top: -15.1041666667vw;
  right: -12.5vw;
  width: 43.75vw;
  transform: rotate(20deg);
  z-index: 2;
}
@media (max-width: 1200px) {
  .services [data-content-swipe-two] {
    top: -29.1891891892vw;
    right: -38.9189189189vw;
    width: 70.2702702703vw;
    transform: rotate(105deg);
  }
}
@media (max-width: 650px) {
  .services [data-content-swipe-two] {
    top: -41.0256410256vw;
    right: -30.7692307692vw;
    width: 102.5641025641vw;
    transform: rotate(35deg);
  }
}

.socials {
  display: flex;
  z-index: 2;
  pointer-events: none;
}
.socials > * {
  transition: opacity 150ms linear 100ms, transform 150ms ease-in-out 100ms;
  visibility: visible;
}
.socials:hover > * {
  opacity: 0.3;
}
.socials > *:hover {
  opacity: 1;
}
.socials__item {
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: auto;
}
.socials__item svg {
  width: 1.25vw;
  height: auto;
}
@media (max-width: 1200px) {
  .socials__item svg {
    width: 2.5945945946vw;
  }
}
@media (max-width: 650px) {
  .socials__item svg {
    width: 5.1282051282vw;
  }
}
.socials__item:not(:last-child) {
  margin: 0 1.0416666667vw 0 0;
}
@media (max-width: 1200px) {
  .socials__item:not(:last-child) {
    margin: 0 2.1621621622vw 0 0;
  }
}
@media (max-width: 650px) {
  .socials__item:not(:last-child) {
    margin: 0 4.6153846154vw 0 0;
  }
}

.statistic {
  color: #FFFFFF;
  min-width: 100vw;
  position: relative;
  align-items: center;
  padding: 0 7.8125vw;
}
@media (max-width: 1200px) {
  .statistic {
    padding: 0;
    justify-content: center;
    display: flex !important;
    height: 86.4864864865vw !important;
  }
}
.statistic__content {
  position: relative;
  top: -1.6666666667vw;
  width: 87.9166666667vw;
}
.statistic__statistic {
  display: flex;
  align-items: flex-end;
}
.statistic__number {
  font-size: 18.2291666667vw;
  font-family: "GT Super Display", serif;
}
.statistic__unit {
  font-size: 4.1666666667vw;
  font-family: "GT Super Display", serif;
  margin: 0 0 3.8541666667vw;
}
@media (max-width: 1200px) {
  .statistic__unit {
    font-size: 6.4864864865vw;
  }
}
@media (max-width: 650px) {
  .statistic__unit {
    font-size: 10.7692307692vw;
  }
}
@media (max-width: 650px) {
  .statistic__unit {
    font-size: 5.1282051282vw;
  }
}
.statistic__heading {
  position: absolute;
  bottom: 2.0833333333vw;
  left: 50%;
  transform: translateX(-50%);
}
@media (max-width: 1200px) {
  .statistic__heading {
    top: 4.3243243243vw;
    bottom: auto;
  }
}
@media (max-width: 650px) {
  .statistic__heading {
    top: 10.2564102564vw;
  }
}
.statistic__bolts {
  position: absolute;
  top: calc(50% - 3vh);
  left: calc(50% + 4.1666666667vw);
  transform: translate(-50%, -50%);
  width: 88.5416666667vw;
}
@media (max-width: 1200px) {
  .statistic__bolts {
    top: calc(50% - 1.0810810811vw);
    left: calc(50% + 2.1621621622vw);
    width: 96.2162162162vw;
  }
}
@media (max-width: 650px) {
  .statistic__bolts {
    width: 107.6923076923vw;
  }
}

.team {
  color: #0B0B0B;
  background: #FFFFFF;
  padding: 1.6666666667vw 3.5416666667vw;
}
@media (max-width: 1200px) {
  .team {
    padding: 10.8108108108vw 5.4054054054vw;
  }
}
@media (max-width: 650px) {
  .team {
    padding: 19.2307692308vw 6.1538461538vw;
  }
}
.team__content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  width: 31.6666666667vw;
  margin: 0 8.9583333333vw 0 0;
}
@media (max-width: 1200px) {
  .team__content {
    width: 100%;
    margin: 0 0 10.8108108108vw;
  }
}
@media (max-width: 1200px) {
  .team__subheading {
    margin: 0 0 4.972972973vw;
  }
}
@media (max-width: 650px) {
  .team__subheading {
    margin: 0 0 11.7948717949vw;
  }
}
.team__heading p {
  font-family: "GT Super Display", serif;
  font-size: 3.2291666667vw;
  line-height: 1.16;
}
@media (max-width: 1200px) {
  .team__heading p {
    font-size: 5.1891891892vw;
  }
}
@media (max-width: 650px) {
  .team__heading p {
    font-size: 8.2051282051vw;
  }
}
.team__heading p:not(:last-child) {
  margin: 0 0 3.3333333333vw;
}
.team__members {
  display: flex;
}
@media (max-width: 1200px) {
  .team__members {
    display: grid;
    gap: 8.1081081081vw 1.7297297297vw;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 650px) {
  .team__members {
    grid-template-columns: 100%;
    gap: 12.8205128205vw;
  }
}
.team__member {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin: 0 0.8333333333vw 0 0;
}
@media (max-width: 1200px) {
  .team__member {
    margin: 0;
  }
}
.team__member-title {
  opacity: 0.4;
  margin: 0.5208333333vw 0 0;
}
@media (max-width: 1200px) {
  .team__member-title {
    margin: 1.0810810811vw 0 0;
  }
}
@media (max-width: 650px) {
  .team__member-title {
    margin: 1.5384615385vw 0 0;
  }
}
.team__image-holder {
  position: relative;
  width: calc((100vh - 7.2916666667vw) * 0.65);
  height: calc(100% - 7.5520833333vw);
  overflow: hidden;
}
@media (max-width: 1200px) {
  .team__image-holder {
    width: 100%;
    height: 0;
    padding: 0 0 150%;
    margin: 3.027027027vw 0 0;
  }
}
@media (max-width: 650px) {
  .team__image-holder {
    margin: 5.1282051282vw 0 0;
  }
}
.team__image-inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.team__image-inner[data-parallax] {
  width: calc(100% + 250px);
}
@media (max-width: 1200px) {
  .team__image-inner[data-parallax] {
    width: 100%;
  }
}
.team__image-inner[data-zoom-out] {
  transform: scale(1.3);
}
@media (max-width: 1200px) {
  .team__image-inner[data-zoom-out] {
    transform: scale(1);
  }
}
.team__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s cubic-bezier(0.39, 0.58, 0.57, 1);
}
.team__image[data-parallax] {
  width: calc(100% + 250px);
}
@media (max-width: 1200px) {
  .team__image[data-parallax] {
    width: 100%;
  }
}
.team__image[data-zoom-out] {
  transform: scale(1.3);
}
@media (max-width: 1200px) {
  .team__image[data-zoom-out] {
    transform: scale(1);
  }
}
.team__open {
  position: absolute;
  left: 1.0416666667vw;
  bottom: 1.0416666667vw;
  width: 2.6041666667vw;
  height: 2.6041666667vw;
  background: #FFFFFF;
  border: 2px solid #0B0B0B;
  transition: bottom 0.6s cubic-bezier(0.65, 0.05, 0.36, 1);
  z-index: 2;
}
@media (max-width: 1200px) {
  .team__open {
    left: 2.1621621622vw;
    bottom: 2.1621621622vw;
    width: 5.4054054054vw;
    height: 5.4054054054vw;
  }
}
@media (max-width: 650px) {
  .team__open {
    left: 5.1282051282vw;
    bottom: 5.1282051282vw;
    width: 12.8205128205vw;
    height: 12.8205128205vw;
  }
}
.team__open.open {
  bottom: calc(100% - 3.6458333333vw);
}
@media (max-width: 1200px) {
  .team__open.open {
    bottom: calc(100% - 7.5675675676vw);
  }
}
@media (max-width: 650px) {
  .team__open.open {
    bottom: calc(100% - 17.9487179487vw);
  }
}
.team__open.open svg {
  transform: rotate(45deg);
}
.team__open svg {
  width: 0.5208333333vw;
  height: auto;
  transition: transform 0.6s cubic-bezier(0.65, 0.05, 0.36, 1);
}
@media (max-width: 1200px) {
  .team__open svg {
    width: 1.0810810811vw;
  }
}
@media (max-width: 650px) {
  .team__open svg {
    width: 2.5641025641vw;
  }
}
.team__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: flex-end;
  background: #0B0B0B;
  padding: 1.0416666667vw;
  color: #FFFFFF;
  -webkit-clip-path: inset(100% 0 0 0);
          clip-path: inset(100% 0 0 0);
  transition: -webkit-clip-path 0.6s cubic-bezier(0.65, 0.05, 0.36, 1);
  transition: clip-path 0.6s cubic-bezier(0.65, 0.05, 0.36, 1);
  transition: clip-path 0.6s cubic-bezier(0.65, 0.05, 0.36, 1), -webkit-clip-path 0.6s cubic-bezier(0.65, 0.05, 0.36, 1);
}
@media (max-width: 1200px) {
  .team__overlay {
    padding: 2.1621621622vw;
  }
}
@media (max-width: 650px) {
  .team__overlay {
    padding: 5.1282051282vw;
  }
}
.team__overlay.open {
  -webkit-clip-path: inset(0% 0 0 0);
          clip-path: inset(0% 0 0 0);
}
.team__overlay-content p:not(:last-child) {
  margin: 0 0 1.0416666667vw;
}
@media (max-width: 650px) {
  .team__overlay-content p:not(:last-child) {
    margin: 0 0 5.1282051282vw;
  }
}

.values {
  color: #FFFFFF;
  min-width: 100vw;
  padding: 0 0 0 3.5416666667vw;
}
@media (max-width: 1200px) {
  .values {
    padding: 10.8108108108vw 5.4054054054vw;
  }
}
@media (max-width: 650px) {
  .values {
    padding: 19.2307692308vw 6.1538461538vw 0;
  }
}
.values__content {
  width: 44.7916666667vw;
  margin: 1.6666666667vw 0 0;
}
@media (max-width: 1200px) {
  .values__content {
    width: 100%;
    margin: 3.4594594595vw 0 0;
  }
}
.values__subheading {
  margin: 0 0 2.3958333333vw;
}
@media (max-width: 1200px) {
  .values__subheading {
    margin: 0 0 4.972972973vw;
  }
}
@media (max-width: 650px) {
  .values__subheading {
    margin: 0 0 11.7948717949vw;
  }
}
.values__heading p {
  font-family: "GT Super Display", serif;
  font-size: 3.2291666667vw;
  line-height: 1.16;
  margin: 0 0 3.3333333333vw;
}
@media (max-width: 1200px) {
  .values__heading p {
    font-size: 5.1891891892vw;
  }
}
@media (max-width: 650px) {
  .values__heading p {
    font-size: 8.2051282051vw;
  }
}
.values__entries {
  display: flex;
  align-items: flex-end;
  position: relative;
  margin: 0 0 0 -20.8333333333vw;
}
@media (max-width: 1200px) {
  .values__entries {
    gap: 5.4054054054vw;
    display: grid;
    margin: 5.4054054054vw 0 0;
    grid-template-columns: repeat(1, 1fr);
  }
}
@media (max-width: 650px) {
  .values__entries {
    gap: 0;
    left: -6.1538461538vw;
    position: relative;
    margin: 12.8205128205vw 0 0;
    min-width: 100vw;
    width: 100vw;
  }
}
.values__entry {
  height: 20vh;
  width: 31.6666666667vw;
  color: #0B0B0B;
  background: #FFFFFF;
  text-align: center;
  padding: 1.6666666667vw 0;
  border-right: 1px solid #0B0B0B;
  transform: translateY(3.3333333333vw);
  display: flex;
  align-items: center;
  flex-direction: column;
}
.values__entry:nth-child(1) {
  height: 0;
}
.values__entry:nth-child(2) {
  height: 20vh;
}
.values__entry:nth-child(3) {
  height: 40vh;
}
.values__entry:nth-child(4) {
  height: 60vh;
}
.values__entry:nth-child(5) {
  height: 80vh;
}
@media (max-width: 1200px) {
  .values__entry {
    width: 100vw;
    height: 100% !important;
    aspect-ratio: 5/2;
    border: 0;
  }
}
@media (max-width: 650px) {
  .values__entry {
    padding: 8.2051282051vw;
    border-bottom: 1px solid #0B0B0B;
  }
}
.values__title {
  font-size: 3.2291666667vw;
  margin: auto 0;
  max-width: 26.0416666667vw;
}
@media (max-width: 1200px) {
  .values__title {
    font-size: 5.1891891892vw;
  }
}
@media (max-width: 650px) {
  .values__title {
    font-size: 8.2051282051vw;
  }
}
@media (max-width: 1200px) {
  .values__title {
    max-width: none;
  }
}
.values [data-content-plane] {
  position: absolute;
  bottom: 3vh;
  left: 17.7083333333vw;
  width: 26.0416666667vw;
  transform: scaleX(-1) rotate(21deg);
}
@media (max-width: 1200px) {
  .values [data-content-plane] {
    display: none;
  }
}
.values [data-content-cloud] {
  position: absolute;
  bottom: 48vh;
  left: 54.1666666667vw;
  width: 20.8333333333vw;
  transform: scaleX(-1) rotate(25deg);
}
@media (max-width: 1200px) {
  .values [data-content-cloud] {
    top: -3.2432432432vw;
    bottom: auto;
    left: -9.7297297297vw;
    width: 40vw;
  }
}
@media (max-width: 650px) {
  .values [data-content-cloud] {
    width: 76.9230769231vw;
    top: -10.2564102564vw;
    left: -15.3846153846vw;
  }
}
.values [data-content-plus] {
  position: absolute;
  right: 29.1666666667vw;
  width: 5.4166666667vw;
  bottom: 78vh;
}
@media (max-width: 1200px) {
  .values [data-content-plus] {
    display: none;
  }
}

.video__holder {
  width: 100vw;
  height: 100vh;
  height: 100dvh;
  position: relative;
  overflow: hidden;
  border-right: 1px solid #FFFFFF;
}
@media (max-width: 1200px) {
  .video__holder {
    height: 0;
    padding: 0 0 56%;
    border-right: 0;
    border-bottom: 1px solid #FFFFFF;
  }
}
.video__holder iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.video__holder iframe[data-parallax] {
  width: calc(100% + 250px);
}
@media (max-width: 1200px) {
  .video__holder iframe[data-parallax] {
    width: 100%;
  }
}
.video__holder iframe[data-zoom-out] {
  transform: scale(1.3);
}
@media (max-width: 1200px) {
  .video__holder iframe[data-zoom-out] {
    transform: scale(1);
  }
}
.video__scrolling-cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.video__scrolling-cover[data-parallax] {
  width: calc(100% + 250px);
}
@media (max-width: 1200px) {
  .video__scrolling-cover[data-parallax] {
    width: 100%;
  }
}
.video__scrolling-cover[data-zoom-out] {
  transform: scale(1.3);
}
@media (max-width: 1200px) {
  .video__scrolling-cover[data-zoom-out] {
    transform: scale(1);
  }
}
.video__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 2;
  transition: opacity 0.6s;
}
.video__image[data-parallax] {
  width: calc(100% + 250px);
}
@media (max-width: 1200px) {
  .video__image[data-parallax] {
    width: 100%;
  }
}
.video__image[data-zoom-out] {
  transform: scale(1.3);
}
@media (max-width: 1200px) {
  .video__image[data-zoom-out] {
    transform: scale(1);
  }
}
.video__image.playing {
  opacity: 0;
  pointer-events: none;
}
.video__play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 5.2083333333vw;
  height: 5.2083333333vw;
  background: #FFFFFF;
  border: 2px solid #0B0B0B;
  transition: opacity 0.6s, transform 0.3s cubic-bezier(0.65, 0.05, 0.36, 1), border 0.3s;
  z-index: 2;
}
@media (max-width: 1200px) {
  .video__play-button {
    width: 8.1081081081vw;
    height: 8.1081081081vw;
  }
}
@media (max-width: 650px) {
  .video__play-button {
    width: 19.2307692308vw;
    height: 19.2307692308vw;
  }
}
.video__play-button:hover {
  border: 2px solid #04F58B;
  transform: translate(-50%, -50%) scale(0.9);
}
.video__play-button:hover svg {
  transform: translate(-50%, -50%) scale(1.1);
}
.video__play-button.playing {
  opacity: 0;
  pointer-events: none;
}
.video__play-button svg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 0.8333333333vw;
  height: auto;
  transition: transform 0.3s cubic-bezier(0.65, 0.05, 0.36, 1);
}
@media (max-width: 1200px) {
  .video__play-button svg {
    width: 1.7297297297vw;
  }
}
@media (max-width: 650px) {
  .video__play-button svg {
    width: 3.5897435897vw;
  }
}
