@font-face {
  font-family: 'Helvetica';
  src: url('../fonts/Helvetica-Light.woff2') format('woff2'), url('../fonts/Helvetica-Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica';
  src: url('../fonts/Helvetica-Bold.woff2') format('woff2'), url('../fonts/Helvetica-Bold.woff') format('woff');
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica';
  src: url('../fonts/Helvetica.woff2') format('woff2'), url('../fonts/Helvetica.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'icomoon';
  src: url('../fonts/icomoon.eot?9nmaf61');
  src: url('../fonts/icomoon.eot?9nmaf61#iefix') format('embedded-opentype'), url('../fonts/icomoon.ttf?9nmaf61') format('truetype'), url('../fonts/icomoon.woff?9nmaf61') format('woff'), url('../fonts/icomoon.svg?9nmaf61#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
[class^="icon-"],
[class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-play:before {
  content: "\e900";
}
.icon-pause:before {
  content: "\e901";
}
.icon-chevron-right:before {
  content: "\e902";
}
.icon-chevron-left:before {
  content: "\e903";
}
.icon-chevron-up:before {
  content: "\e904";
}
.icon-chevron-down:before {
  content: "\e905";
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent;
}
*:focus {
  outline: none;
}
::-moz-selection {
  background: rgba(0, 0, 0, 0.3);
  color: #ffffff;
}
::selection {
  background: rgba(0, 0, 0, 0.3);
  color: #ffffff;
}
.visuallyHidden {
  border: 0;
  padding: 0;
  margin: 0;
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  white-space: nowrap;
}
input,
textarea {
  border-radius: 0 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}
img.lazy {
  visibility: hidden;
  opacity: 0;
}
.lazyBackground.lazy {
  background-image: none !important;
}
.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}
.lenis.lenis-scrolling iframe {
  pointer-events: none;
}
html {
  scroll-behavior: initial;
}
html.stopScroll {
  overflow: hidden;
}
html.stopScroll body {
  overflow: hidden;
}
html,
body {
  font-family: 'Helvetica';
  width: 100vw;
  height: auto;
  font-weight: 400;
  background: #ffffff;
  color: #535862;
  font-size: 0.875vw;
  line-height: 1.4;
  overflow-x: clip;
}
html.overflow,
body.overflow {
  overflow: hidden;
}
html .text p,
body .text p {
  margin-bottom: 1.225vw;
}
html .text p:last-child,
body .text p:last-child {
  margin-bottom: 0;
}
html .text a,
body .text a {
  color: #000000;
  opacity: 1;
  -webkit-transition: opacity 0.3s 0s ease-out;
  -moz-transition: opacity 0.3s 0s ease-out;
  -o-transition: opacity 0.3s 0s ease-out;
  transition: opacity 0.3s 0s ease-out;
}
html .text a:hover,
body .text a:hover {
  opacity: 0.4;
}
html .blocks,
body .blocks {
  width: 100vw;
}
html .blocks .blockContainer,
body .blocks .blockContainer {
  padding: 7.5vw 0;
  background: transparent;
  -webkit-transition: background 0.3s 0s ease-out;
  -moz-transition: background 0.3s 0s ease-out;
  -o-transition: background 0.3s 0s ease-out;
  transition: background 0.3s 0s ease-out;
}
html .blocks .blockContainer:first-child,
body .blocks .blockContainer:first-child {
  padding-top: 15vw;
}
html .blocks .blockContainer.whiteStyle.inview,
body .blocks .blockContainer.whiteStyle.inview {
  background: #ffffff;
}
html .blocks .blockContainer.noneStyle,
body .blocks .blockContainer.noneStyle {
  padding: 0;
}
html .blocks .blockContainer section,
body .blocks .blockContainer section {
  margin: 7.5vw 0;
}
html .blocks .blockContainer section:first-child,
body .blocks .blockContainer section:first-child {
  margin-top: 0;
}
html .blocks .blockContainer section:last-child,
body .blocks .blockContainer section:last-child {
  margin-bottom: 0;
}
html .blocks .noBlocks,
body .blocks .noBlocks {
  padding: 1.875vw;
  background: rgba(0, 0, 0, 0.05);
}
html.is-changing #pageContainer.transition-fade,
html.fade #pageContainer.transition-fade {
  opacity: 0;
}
#pageContainer {
  width: 100vw;
}
#pageContainer.transition-fade {
  opacity: 1;
  -webkit-transition: opacity 0.3s 0s ease-out;
  -moz-transition: opacity 0.3s 0s ease-out;
  -o-transition: opacity 0.3s 0s ease-out;
  transition: opacity 0.3s 0s ease-out;
}
.contentWrapper {
  width: 100%;
  padding: 0 14.6875vw;
  margin: 0 auto;
}
header {
  position: relative;
  margin-top: 3.125vw;
}
header .innerHeader .cols {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.25vw 2.5vw;
}
header .innerHeader .logo {
  font-weight: 600;
  text-decoration: none;
  color: #131313;
}
header .innerHeader .menu {
  list-style: none;
  display: flex;
  gap: 1.875vw;
}
header .innerHeader .menu .menuItem a,
header .innerHeader .menu .menuItem span {
  text-decoration: none;
  color: #131313;
  font-weight: 500;
  -webkit-transition: opacity 0.3s 0s ease-out;
  -moz-transition: opacity 0.3s 0s ease-out;
  -o-transition: opacity 0.3s 0s ease-out;
  transition: opacity 0.3s 0s ease-out;
}
header .innerHeader .menu .menuItem a:hover {
  opacity: 0.6;
}
footer {
  margin-top: 5vw;
}
footer .footerImage {
  position: relative;
  height: 20.4375vw;
}
footer .footerImage .background {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  background-size: auto 177%;
  background-position: top center;
  background-repeat: repeat-x;
}
footer .text {
  opacity: 0.8;
  font-size: 0.875vw;
  line-height: 1.6;
}
footer .bottomBar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.625vw;
  padding-top: 1.25vw;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
  font-size: 0.75vw;
  opacity: 0.7;
}
footer .copyMenu {
  list-style: none;
  display: flex;
  gap: 1.25vw;
}
footer .copyMenu a,
footer .copyMenu span {
  color: #ffffff;
  text-decoration: none;
}
.homeBlock {
  position: relative;
  margin: 5vw 0;
}
.homeBlock .backgroundSequence {
  height: 73.25vw;
  left: auto;
  position: absolute;
  top: -14.375vw;
  width: 130.25vw;
  right: -31.5625vw;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
