@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}@font-face {
font-family: "thndr";
src: url(//www.thebo.be/wp-content/themes/starter/fonts/Thunder-LC.woff2) format("woff2"), url(//www.thebo.be/wp-content/themes/starter/fonts/Thunder-LC.woff) format("woff"), url(//www.thebo.be/wp-content/themes/starter/fonts/Thunder-LC.ttf) format("truetype");
font-weight: 400; font-style: normal;
font-display: swap;
text-rendering: optimizeLegibility;
} @font-face {
font-family: "thndr";
src: url(//www.thebo.be/wp-content/themes/starter/fonts/Thunder-SemiBoldLC.woff2) format("woff2"), url(//www.thebo.be/wp-content/themes/starter/fonts/Thunder-SemiBoldLC.woff) format("woff"), url(//www.thebo.be/wp-content/themes/starter/fonts/Thunder-SemiBoldLC.ttf) format("truetype");
font-weight: 600; font-style: normal;
font-display: swap;
text-rendering: optimizeLegibility;
} @font-face {
font-family: "thndr";
src: url(//www.thebo.be/wp-content/themes/starter/fonts/Thunder-BoldLC.woff2) format("woff2"), url(//www.thebo.be/wp-content/themes/starter/fonts/Thunder-BoldLC.woff) format("woff"), url(//www.thebo.be/wp-content/themes/starter/fonts/Thunder-BoldLC.ttf) format("truetype");
font-weight: 700; font-style: normal;
font-display: swap;
text-rendering: optimizeLegibility;
} :root {
--color-red: #DB0032;
--color-red-l: #FF0D39;
--color-red-ll: #FF4A53;
--color-black: #0E0F11;
--color-dark-grey-d: #1C1D1F;
--color-dark-grey: #25272D;
--color-dark-grey-l: #303239;
--color-dark-grey-ll: #383B42;
--color-grey: #9DA3B1;
--color-white: #F1F1F1;
--color-white-d: #e5e5e5;
}          .hamburger {
padding: 18px 16px;
display: inline-block;
cursor: pointer;
transition-property: opacity, filter;
transition-duration: 0.15s;
transition-timing-function: linear;
font: inherit;
color: inherit;
text-transform: none;
background-color: transparent;
border: 0;
margin: 0;
overflow: visible;
}
.hamburger:hover {
opacity: 0.9;
}
.hamburger.is-active:hover {
opacity: 0.9;
}
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
background-color: white;
}
.hamburger-box {
width: 20px;
height: 14px;
display: inline-block;
position: relative;
}
.hamburger-inner {
display: block;
top: 50%;
margin-top: -1px;
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
width: 20px;
height: 2px;
background-color: white;
border-radius: 4px;
position: absolute;
transition-property: transform;
transition-duration: 0.15s;
transition-timing-function: ease;
}
.hamburger-inner::before, .hamburger-inner::after {
content: "";
display: block;
}
.hamburger-inner::before {
top: -6px;
}
.hamburger-inner::after {
bottom: -6px;
}  .hamburger--3dx .hamburger-box {
perspective: 40px;
}
.hamburger--3dx .hamburger-inner {
transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dx .hamburger-inner::before, .hamburger--3dx .hamburger-inner::after {
transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dx.is-active .hamburger-inner {
background-color: transparent !important;
transform: rotateY(180deg);
}
.hamburger--3dx.is-active .hamburger-inner::before {
transform: translate3d(0, 6px, 0) rotate(45deg);
}
.hamburger--3dx.is-active .hamburger-inner::after {
transform: translate3d(0, -6px, 0) rotate(-45deg);
}  .hamburger--3dx-r .hamburger-box {
perspective: 40px;
}
.hamburger--3dx-r .hamburger-inner {
transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dx-r .hamburger-inner::before, .hamburger--3dx-r .hamburger-inner::after {
transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dx-r.is-active .hamburger-inner {
background-color: transparent !important;
transform: rotateY(-180deg);
}
.hamburger--3dx-r.is-active .hamburger-inner::before {
transform: translate3d(0, 6px, 0) rotate(45deg);
}
.hamburger--3dx-r.is-active .hamburger-inner::after {
transform: translate3d(0, -6px, 0) rotate(-45deg);
}  .hamburger--3dy .hamburger-box {
perspective: 40px;
}
.hamburger--3dy .hamburger-inner {
transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dy .hamburger-inner::before, .hamburger--3dy .hamburger-inner::after {
transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dy.is-active .hamburger-inner {
background-color: transparent !important;
transform: rotateX(-180deg);
}
.hamburger--3dy.is-active .hamburger-inner::before {
transform: translate3d(0, 6px, 0) rotate(45deg);
}
.hamburger--3dy.is-active .hamburger-inner::after {
transform: translate3d(0, -6px, 0) rotate(-45deg);
}  .hamburger--3dy-r .hamburger-box {
perspective: 40px;
}
.hamburger--3dy-r .hamburger-inner {
transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dy-r .hamburger-inner::before, .hamburger--3dy-r .hamburger-inner::after {
transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dy-r.is-active .hamburger-inner {
background-color: transparent !important;
transform: rotateX(180deg);
}
.hamburger--3dy-r.is-active .hamburger-inner::before {
transform: translate3d(0, 6px, 0) rotate(45deg);
}
.hamburger--3dy-r.is-active .hamburger-inner::after {
transform: translate3d(0, -6px, 0) rotate(-45deg);
}  .hamburger--3dxy .hamburger-box {
perspective: 40px;
}
.hamburger--3dxy .hamburger-inner {
transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dxy .hamburger-inner::before, .hamburger--3dxy .hamburger-inner::after {
transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dxy.is-active .hamburger-inner {
background-color: transparent !important;
transform: rotateX(180deg) rotateY(180deg);
}
.hamburger--3dxy.is-active .hamburger-inner::before {
transform: translate3d(0, 6px, 0) rotate(45deg);
}
.hamburger--3dxy.is-active .hamburger-inner::after {
transform: translate3d(0, -6px, 0) rotate(-45deg);
}  .hamburger--3dxy-r .hamburger-box {
perspective: 40px;
}
.hamburger--3dxy-r .hamburger-inner {
transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dxy-r .hamburger-inner::before, .hamburger--3dxy-r .hamburger-inner::after {
transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dxy-r.is-active .hamburger-inner {
background-color: transparent !important;
transform: rotateX(180deg) rotateY(180deg) rotateZ(-180deg);
}
.hamburger--3dxy-r.is-active .hamburger-inner::before {
transform: translate3d(0, 6px, 0) rotate(45deg);
}
.hamburger--3dxy-r.is-active .hamburger-inner::after {
transform: translate3d(0, -6px, 0) rotate(-45deg);
}  .hamburger--arrow.is-active .hamburger-inner::before {
transform: translate3d(-4px, 0, 0) rotate(-45deg) scale(0.7, 1);
}
.hamburger--arrow.is-active .hamburger-inner::after {
transform: translate3d(-4px, 0, 0) rotate(45deg) scale(0.7, 1);
}  .hamburger--arrow-r.is-active .hamburger-inner::before {
transform: translate3d(4px, 0, 0) rotate(45deg) scale(0.7, 1);
}
.hamburger--arrow-r.is-active .hamburger-inner::after {
transform: translate3d(4px, 0, 0) rotate(-45deg) scale(0.7, 1);
}  .hamburger--arrowalt .hamburger-inner::before {
transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.hamburger--arrowalt .hamburger-inner::after {
transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.hamburger--arrowalt.is-active .hamburger-inner::before {
top: 0;
transform: translate3d(-4px, -5px, 0) rotate(-45deg) scale(0.7, 1);
transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}
.hamburger--arrowalt.is-active .hamburger-inner::after {
bottom: 0;
transform: translate3d(-4px, 5px, 0) rotate(45deg) scale(0.7, 1);
transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}  .hamburger--arrowalt-r .hamburger-inner::before {
transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.hamburger--arrowalt-r .hamburger-inner::after {
transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.hamburger--arrowalt-r.is-active .hamburger-inner::before {
top: 0;
transform: translate3d(4px, -5px, 0) rotate(45deg) scale(0.7, 1);
transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}
.hamburger--arrowalt-r.is-active .hamburger-inner::after {
bottom: 0;
transform: translate3d(4px, 5px, 0) rotate(-45deg) scale(0.7, 1);
transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}  .hamburger--arrowturn.is-active .hamburger-inner {
transform: rotate(-180deg);
}
.hamburger--arrowturn.is-active .hamburger-inner::before {
transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1);
}
.hamburger--arrowturn.is-active .hamburger-inner::after {
transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}  .hamburger--arrowturn-r.is-active .hamburger-inner {
transform: rotate(-180deg);
}
.hamburger--arrowturn-r.is-active .hamburger-inner::before {
transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}
.hamburger--arrowturn-r.is-active .hamburger-inner::after {
transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1);
}  .hamburger--boring .hamburger-inner, .hamburger--boring .hamburger-inner::before, .hamburger--boring .hamburger-inner::after {
transition-property: none;
}
.hamburger--boring.is-active .hamburger-inner {
transform: rotate(45deg);
}
.hamburger--boring.is-active .hamburger-inner::before {
top: 0;
opacity: 0;
}
.hamburger--boring.is-active .hamburger-inner::after {
bottom: 0;
transform: rotate(-90deg);
}  .hamburger--collapse .hamburger-inner {
top: auto;
bottom: 0;
transition-duration: 0.13s;
transition-delay: 0.13s;
transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse .hamburger-inner::after {
top: -12px;
transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}
.hamburger--collapse .hamburger-inner::before {
transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse.is-active .hamburger-inner {
transform: translate3d(0, -6px, 0) rotate(-45deg);
transition-delay: 0.22s;
transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--collapse.is-active .hamburger-inner::after {
top: 0;
opacity: 0;
transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear;
}
.hamburger--collapse.is-active .hamburger-inner::before {
top: 0;
transform: rotate(-90deg);
transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}  .hamburger--collapse-r .hamburger-inner {
top: auto;
bottom: 0;
transition-duration: 0.13s;
transition-delay: 0.13s;
transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse-r .hamburger-inner::after {
top: -12px;
transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}
.hamburger--collapse-r .hamburger-inner::before {
transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse-r.is-active .hamburger-inner {
transform: translate3d(0, -6px, 0) rotate(45deg);
transition-delay: 0.22s;
transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--collapse-r.is-active .hamburger-inner::after {
top: 0;
opacity: 0;
transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear;
}
.hamburger--collapse-r.is-active .hamburger-inner::before {
top: 0;
transform: rotate(90deg);
transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}  .hamburger--elastic .hamburger-inner {
top: 1px;
transition-duration: 0.275s;
transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.hamburger--elastic .hamburger-inner::before {
top: 6px;
transition: opacity 0.125s 0.275s ease;
}
.hamburger--elastic .hamburger-inner::after {
top: 12px;
transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.hamburger--elastic.is-active .hamburger-inner {
transform: translate3d(0, 6px, 0) rotate(135deg);
transition-delay: 0.075s;
}
.hamburger--elastic.is-active .hamburger-inner::before {
transition-delay: 0s;
opacity: 0;
}
.hamburger--elastic.is-active .hamburger-inner::after {
transform: translate3d(0, -12px, 0) rotate(-270deg);
transition-delay: 0.075s;
}  .hamburger--elastic-r .hamburger-inner {
top: 1px;
transition-duration: 0.275s;
transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.hamburger--elastic-r .hamburger-inner::before {
top: 6px;
transition: opacity 0.125s 0.275s ease;
}
.hamburger--elastic-r .hamburger-inner::after {
top: 12px;
transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.hamburger--elastic-r.is-active .hamburger-inner {
transform: translate3d(0, 6px, 0) rotate(-135deg);
transition-delay: 0.075s;
}
.hamburger--elastic-r.is-active .hamburger-inner::before {
transition-delay: 0s;
opacity: 0;
}
.hamburger--elastic-r.is-active .hamburger-inner::after {
transform: translate3d(0, -12px, 0) rotate(270deg);
transition-delay: 0.075s;
}  .hamburger--emphatic {
overflow: hidden;
}
.hamburger--emphatic .hamburger-inner {
transition: background-color 0.125s 0.175s ease-in;
}
.hamburger--emphatic .hamburger-inner::before {
left: 0;
transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in;
}
.hamburger--emphatic .hamburger-inner::after {
top: 6px;
right: 0;
transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
}
.hamburger--emphatic.is-active .hamburger-inner {
transition-delay: 0s;
transition-timing-function: ease-out;
background-color: transparent !important;
}
.hamburger--emphatic.is-active .hamburger-inner::before {
left: -40px;
top: -40px;
transform: translate3d(40px, 40px, 0) rotate(45deg);
transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.hamburger--emphatic.is-active .hamburger-inner::after {
right: -40px;
top: -40px;
transform: translate3d(-40px, 40px, 0) rotate(-45deg);
transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}  .hamburger--emphatic-r {
overflow: hidden;
}
.hamburger--emphatic-r .hamburger-inner {
transition: background-color 0.125s 0.175s ease-in;
}
.hamburger--emphatic-r .hamburger-inner::before {
left: 0;
transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in;
}
.hamburger--emphatic-r .hamburger-inner::after {
top: 6px;
right: 0;
transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
}
.hamburger--emphatic-r.is-active .hamburger-inner {
transition-delay: 0s;
transition-timing-function: ease-out;
background-color: transparent !important;
}
.hamburger--emphatic-r.is-active .hamburger-inner::before {
left: -40px;
top: 40px;
transform: translate3d(40px, -40px, 0) rotate(-45deg);
transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.hamburger--emphatic-r.is-active .hamburger-inner::after {
right: -40px;
top: 40px;
transform: translate3d(-40px, -40px, 0) rotate(45deg);
transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}  .hamburger--minus .hamburger-inner::before, .hamburger--minus .hamburger-inner::after {
transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear;
}
.hamburger--minus.is-active .hamburger-inner::before, .hamburger--minus.is-active .hamburger-inner::after {
opacity: 0;
transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear;
}
.hamburger--minus.is-active .hamburger-inner::before {
top: 0;
}
.hamburger--minus.is-active .hamburger-inner::after {
bottom: 0;
}  .hamburger--slider .hamburger-inner {
top: 1px;
}
.hamburger--slider .hamburger-inner::before {
top: 6px;
transition-property: transform, opacity;
transition-timing-function: ease;
transition-duration: 0.15s;
}
.hamburger--slider .hamburger-inner::after {
top: 12px;
}
.hamburger--slider.is-active .hamburger-inner {
transform: translate3d(0, 6px, 0) rotate(45deg);
}
.hamburger--slider.is-active .hamburger-inner::before {
transform: rotate(-45deg) translate3d(-2.8571428571px, -4px, 0);
opacity: 0;
}
.hamburger--slider.is-active .hamburger-inner::after {
transform: translate3d(0, -12px, 0) rotate(-90deg);
}  .hamburger--slider-r .hamburger-inner {
top: 1px;
}
.hamburger--slider-r .hamburger-inner::before {
top: 6px;
transition-property: transform, opacity;
transition-timing-function: ease;
transition-duration: 0.15s;
}
.hamburger--slider-r .hamburger-inner::after {
top: 12px;
}
.hamburger--slider-r.is-active .hamburger-inner {
transform: translate3d(0, 6px, 0) rotate(-45deg);
}
.hamburger--slider-r.is-active .hamburger-inner::before {
transform: rotate(45deg) translate3d(2.8571428571px, -4px, 0);
opacity: 0;
}
.hamburger--slider-r.is-active .hamburger-inner::after {
transform: translate3d(0, -12px, 0) rotate(90deg);
}  .hamburger--spin .hamburger-inner {
transition-duration: 0.22s;
transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin .hamburger-inner::before {
transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}
.hamburger--spin .hamburger-inner::after {
transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin.is-active .hamburger-inner {
transform: rotate(225deg);
transition-delay: 0.12s;
transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spin.is-active .hamburger-inner::before {
top: 0;
opacity: 0;
transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}
.hamburger--spin.is-active .hamburger-inner::after {
bottom: 0;
transform: rotate(-90deg);
transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}  .hamburger--spin-r .hamburger-inner {
transition-duration: 0.22s;
transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin-r .hamburger-inner::before {
transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}
.hamburger--spin-r .hamburger-inner::after {
transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin-r.is-active .hamburger-inner {
transform: rotate(-225deg);
transition-delay: 0.12s;
transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spin-r.is-active .hamburger-inner::before {
top: 0;
opacity: 0;
transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}
.hamburger--spin-r.is-active .hamburger-inner::after {
bottom: 0;
transform: rotate(90deg);
transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}  .hamburger--spring .hamburger-inner {
top: 1px;
transition: background-color 0s 0.13s linear;
}
.hamburger--spring .hamburger-inner::before {
top: 6px;
transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring .hamburger-inner::after {
top: 12px;
transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring.is-active .hamburger-inner {
transition-delay: 0.22s;
background-color: transparent !important;
}
.hamburger--spring.is-active .hamburger-inner::before {
top: 0;
transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
transform: translate3d(0, 6px, 0) rotate(45deg);
}
.hamburger--spring.is-active .hamburger-inner::after {
top: 0;
transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
transform: translate3d(0, 6px, 0) rotate(-45deg);
}  .hamburger--spring-r .hamburger-inner {
top: auto;
bottom: 0;
transition-duration: 0.13s;
transition-delay: 0s;
transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring-r .hamburger-inner::after {
top: -12px;
transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear;
}
.hamburger--spring-r .hamburger-inner::before {
transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring-r.is-active .hamburger-inner {
transform: translate3d(0, -6px, 0) rotate(-45deg);
transition-delay: 0.22s;
transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spring-r.is-active .hamburger-inner::after {
top: 0;
opacity: 0;
transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.22s linear;
}
.hamburger--spring-r.is-active .hamburger-inner::before {
top: 0;
transform: rotate(90deg);
transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
}  .hamburger--stand .hamburger-inner {
transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
}
.hamburger--stand .hamburger-inner::before {
transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--stand .hamburger-inner::after {
transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--stand.is-active .hamburger-inner {
transform: rotate(90deg);
background-color: transparent !important;
transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
}
.hamburger--stand.is-active .hamburger-inner::before {
top: 0;
transform: rotate(-45deg);
transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--stand.is-active .hamburger-inner::after {
bottom: 0;
transform: rotate(45deg);
transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}  .hamburger--stand-r .hamburger-inner {
transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
}
.hamburger--stand-r .hamburger-inner::before {
transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--stand-r .hamburger-inner::after {
transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--stand-r.is-active .hamburger-inner {
transform: rotate(-90deg);
background-color: transparent !important;
transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
}
.hamburger--stand-r.is-active .hamburger-inner::before {
top: 0;
transform: rotate(-45deg);
transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--stand-r.is-active .hamburger-inner::after {
bottom: 0;
transform: rotate(45deg);
transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}  .hamburger--squeeze .hamburger-inner {
transition-duration: 0.075s;
transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--squeeze .hamburger-inner::before {
transition: top 0.075s 0.12s ease, opacity 0.075s ease;
}
.hamburger--squeeze .hamburger-inner::after {
transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--squeeze.is-active .hamburger-inner {
transform: rotate(45deg);
transition-delay: 0.12s;
transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--squeeze.is-active .hamburger-inner::before {
top: 0;
opacity: 0;
transition: top 0.075s ease, opacity 0.075s 0.12s ease;
}
.hamburger--squeeze.is-active .hamburger-inner::after {
bottom: 0;
transform: rotate(-90deg);
transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}  .hamburger--vortex .hamburger-inner {
transition-duration: 0.2s;
transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex .hamburger-inner::before, .hamburger--vortex .hamburger-inner::after {
transition-duration: 0s;
transition-delay: 0.1s;
transition-timing-function: linear;
}
.hamburger--vortex .hamburger-inner::before {
transition-property: top, opacity;
}
.hamburger--vortex .hamburger-inner::after {
transition-property: bottom, transform;
}
.hamburger--vortex.is-active .hamburger-inner {
transform: rotate(765deg);
transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex.is-active .hamburger-inner::before, .hamburger--vortex.is-active .hamburger-inner::after {
transition-delay: 0s;
}
.hamburger--vortex.is-active .hamburger-inner::before {
top: 0;
opacity: 0;
}
.hamburger--vortex.is-active .hamburger-inner::after {
bottom: 0;
transform: rotate(90deg);
}  .hamburger--vortex-r .hamburger-inner {
transition-duration: 0.2s;
transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex-r .hamburger-inner::before, .hamburger--vortex-r .hamburger-inner::after {
transition-duration: 0s;
transition-delay: 0.1s;
transition-timing-function: linear;
}
.hamburger--vortex-r .hamburger-inner::before {
transition-property: top, opacity;
}
.hamburger--vortex-r .hamburger-inner::after {
transition-property: bottom, transform;
}
.hamburger--vortex-r.is-active .hamburger-inner {
transform: rotate(-765deg);
transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex-r.is-active .hamburger-inner::before, .hamburger--vortex-r.is-active .hamburger-inner::after {
transition-delay: 0s;
}
.hamburger--vortex-r.is-active .hamburger-inner::before {
top: 0;
opacity: 0;
}
.hamburger--vortex-r.is-active .hamburger-inner::after {
bottom: 0;
transform: rotate(-90deg);
}
*, *::before, *::after {
box-sizing: border-box;
}
* {
margin: 0;
overflow-wrap: break-word;
}
html {
font-size: 62.5%;
scroll-behavior: smooth;
overflow-x: hidden;
}
body {
line-height: 1.5;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
background-color: var(--color-dark-grey-d);
font-family: "Inter", sans-serif;
}
body.nav-is-active {
overflow-y: clip !important;
}
body.nav-is-active .nav {
height: 100lvh;
}
img, picture, figure, video, canvas, svg {
display: block;
max-width: 100%;
}
input, button, textarea, select {
font: inherit;
}
.-margin-lg {
margin-top: 10rem;
margin-bottom: 10rem;
}
@media (max-width: 992px) {
.-margin-lg {
margin-top: 8rem;
margin-bottom: 8rem;
}
}
@media (max-width: 768px) {
.-margin-lg {
margin-top: 6rem;
margin-bottom: 6rem;
}
}
@media (max-width: 480px) {
.-margin-lg {
margin-top: 6rem;
margin-bottom: 6rem;
}
}
.-margin-b-0 {
margin-bottom: 0 !important;
}
.-margin-t-0 {
margin-top: 0 !important;
}
.-padding-lg {
padding-top: 10rem;
padding-bottom: 10rem;
}
@media (max-width: 992px) {
.-padding-lg {
padding-top: 8rem;
padding-bottom: 8rem;
}
}
@media (max-width: 768px) {
.-padding-lg {
padding-top: 6rem;
padding-bottom: 6rem;
}
}
@media (max-width: 480px) {
.-padding-lg {
padding-top: 6rem;
padding-bottom: 6rem;
}
}
.-background {
background-color: var(--color-dark-grey-l);
padding-top: 10rem;
padding-bottom: 10rem;
}
@media (max-width: 992px) {
.-background {
padding-top: 8rem;
padding-bottom: 8rem;
}
}
@media (max-width: 768px) {
.-background {
padding-top: 6rem;
padding-bottom: 6rem;
}
}
@media (max-width: 480px) {
.-background {
padding-top: 6rem;
padding-bottom: 6rem;
}
}
h1,
h2,
h3,
h4,
h5,
h6 {
line-height: 125%;
color: var(--color-white);
margin: 0;
letter-spacing: 0.05ch;
font-family: "thndr", sans-serif;
line-height: 1;
}
h1,
.type-1 {
font-size: clamp(4rem, calc(4rem - 0.0545454545 * 36rem) + 100vw * 0.0545454545, 11.8rem);
text-transform: uppercase;
font-weight: 700;
}
h2,
.type-2 {
font-size: clamp(3.2rem, calc(3.2rem - 0.0195804196 * 36rem) + 100vw * 0.0195804196, 6rem);
font-weight: 600;
}
h2.heavy,
.type-2.heavy {
font-size: clamp(4rem, calc(4rem - 0.041958042 * 36rem) + 100vw * 0.041958042, 10rem);
font-weight: 700;
line-height: normal;
letter-spacing: 0.2rem;
text-transform: uppercase;
}
h3,
.type-3 {
font-size: clamp(2.8rem, calc(2.8rem - 0.0083916084 * 36rem) + 100vw * 0.0083916084, 4rem);
font-weight: 400;
}
h4,
.type-4 {
font-size: clamp(1.8rem, calc(1.8rem - 0.0013986014 * 36rem) + 100vw * 0.0013986014, 2rem);
font-weight: 600;
font-family: "Inter", sans-serif;
letter-spacing: 0;
line-height: 1.2;
}
h5,
.type-5 {
font-size: clamp(1.6rem, calc(1.6rem - 0.0013986014 * 36rem) + 100vw * 0.0013986014, 1.8rem);
}
h6,
.type-6 {
font-size: 1.4rem;
text-transform: uppercase;
letter-spacing: 1px;
}
.subtitle {
font-size: clamp(1.8rem, calc(1.8rem - 0.0041958042 * 36rem) + 100vw * 0.0041958042, 2.4rem);
color: var(--color-primary-l);
}
h2 .subtitle {
font-size: clamp(2.4rem, calc(2.4rem - 0.0111888112 * 36rem) + 100vw * 0.0111888112, 4rem);
color: var(--color-grey);
font-weight: 400;
text-transform: none;
display: block;
}
p,
li, span, div[dir="auto"] {
line-height: 160%;
color: var(--color-grey);
font-size: clamp(1.6rem, calc(1.6rem - 0.0020979021 * 36rem) + 100vw * 0.0020979021, 1.9rem);
}
a {
font-size: clamp(1.6rem, calc(1.6rem - 0.0020979021 * 36rem) + 100vw * 0.0020979021, 1.9rem);
color: var(--color-red-ll);
transition: all 0.2s ease-in-out;
}
a:hover {
color: var(--color-red-l);
text-decoration: none;
}
.container {
max-width: 1600px;
margin: 0 auto;
padding: 0 6.4rem;
}
@media (max-width: 992px) {
.container {
padding: 0 3.2rem;
}
}
@media (max-width: 480px) {
.container {
padding: 0 1.6rem;
}
}
.container.-xl {
max-width: 1790px;
}
@media (min-width: 1200px) {
.container.-xl {
padding: 0 6.4rem;
}
}
@media (max-width: 1200px) {
.container.-xl {
padding: 0 2.4rem;
}
}
@media (max-width: 992px) {
.container.-xl {
padding: 0 2.4rem;
}
}
@media (max-width: 992px) {
.container.-xl {
padding: 0 0.8rem;
}
}
@media (max-width: 480px) {
.container.-xl {
padding: 0 1.6rem;
}
}
.container.-sm {
max-width: 920px;
}
.content > :first-child {
margin-top: 0;
}
.content > :last-child {
margin-bottom: 0;
}
.content p {
margin: 3.2rem 0;
line-height: 170%;
}
.content p + h1, .content p + h2, .content p + h3, .content p + h4, .content p + h5, .content p + h6,
.content ul + h1, .content ul + h2, .content ul + h3, .content ul + h4, .content ul + h5, .content ul + h6,
.content ol + h1, .content ol + h2, .content ol + h3, .content ol + h4, .content ol + h5, .content ol + h6,
.content a + h1, .content a + h2, .content a + h3, .content a + h4, .content a + h5, .content a + h6 {
margin-top: 4.8rem;
}
.content h1, .content h2, .content h3 {
margin: 2.4rem 0;
}
.content h4, .content h5, .content h6 {
margin-top: 2.4rem;
}
.content ul, .content ol {
padding-left: 3.2rem;
}
.content ul.checklist, .content ol.checklist {
font-weight: 500;
color: var(--color-grey);
}
.content ul.checklist li, .content ol.checklist li {
color: var(--color-grey);
list-style-type: none;
position: relative;
margin-bottom: 8px;
}
.content ul.checklist li:before, .content ol.checklist li:before {
content: "";
background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M6 10L4 12L10 18L20 8L18 6L10 14L6 10Z' fill='%23EA6D41'/%3E%3C/svg%3E%0A");
width: 24px;
height: 24px;
position: absolute;
display: block;
left: -30px;
top: 2px;
}
.content li {
margin-bottom: 0.4rem;
color: var(--color-grey);
}
.content li::marker {
color: var(--color-red);
}
.content img {
height: 100%;
}
.content a {
color: var(--color-red-ll);
}
.content a:hover {
color: var(--color-red);
text-decoration: none;
}
.content table {
font-size: 1.5rem;
text-align: left;
border-collapse: collapse;
color: var(--color-text);
border-top: 1px solid var(--color-secondary-dd);
margin: 2.4rem 0;
width: 100%;
}
@media (max-width: 480px) {
.content table {
font-size: 1.4rem;
}
}
.content table tr {
border-bottom: 1px solid var(--color-secondary-dd);
}
.content table th, .content table td {
padding: 0.8rem 0;
padding-right: 0.4rem;
vertical-align: top;
}
.content table th {
color: var(--color-thirtiary);
font-weight: 500;
}
.content strong {
color: var(--color-black);
font-weight: 600;
}
.cards__list {
display: grid;
grid-column-gap: 4rem;
grid-row-gap: 4rem;
grid-template-columns: repeat(4, 1fr);
margin: 3.2rem 0;
}
@media (max-width: 992px) {
.cards__list {
grid-template-columns: repeat(2, 1fr);
grid-gap: 4rem;
}
}
@media (max-width: 768px) {
.cards__list {
grid-template-columns: repeat(1, 1fr);
}
}
.cards--with-icon .card__image {
aspect-ratio: 1;
border-radius: 100px;
max-width: 4.8rem;
margin-bottom: 1.6rem;
}
.cards--with-icon .card__image:hover img {
transform: none;
}
.grid--2 {
grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 768px) {
.grid--2 {
grid-template-columns: repeat(1, 1fr);
}
}
.grid--3 {
grid-template-columns: repeat(3, 1fr);
}
@media (max-width: 768px) {
.grid--3 {
grid-template-columns: repeat(1, 1fr);
}
}
.grid--4 {
grid-template-columns: repeat(4, 1fr);
}
@media (max-width: 992px) {
.grid--4 {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 768px) {
.grid--4 {
grid-template-columns: repeat(1, 1fr);
}
}
.card {
cursor: pointer;
display: flex;
flex-direction: column;
gap: 1.2rem;
}
.card__number {
width: 6rem;
height: 6rem;
background-color: var(--color-red);
padding: 1.6rem;
display: flex;
justify-content: center;
align-items: center;
font-size: 2.1rem;
font-weight: 600;
border-radius: 100px;
color: var(--color-white);
margin-bottom: 1.6rem;
}
.card__image {
aspect-ratio: 16/10;
overflow: hidden;
border-radius: 1.2rem;
transition: all 0.3s ease-in-out;
}
.card__image:hover img {
transform: scale(1.05);
}
.card__image img {
object-fit: cover;
height: 100%;
width: 100%;
transition: all 0.3s ease-in-out;
}
.card__text {
line-height: 160%;
}
.card__link {
display: inline-block;
margin-top: 0.8rem;
font-size: 1.6rem;
font-weight: 500;
color: var(--color-red-ll);
transition: 0.3s ease-in-out;
}
.card__link:after {
content: "";
display: inline-block;
width: 8px;
height: 12px;
margin-left: 0.2rem;
background-color: currentColor;
-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='12' viewBox='0 0 8 12' fill='none'%3E%3Cpath d='M1 1L6 6L1 11' stroke='currentColor' stroke-width='1.5'/%3E%3C/svg%3E");
mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='12' viewBox='0 0 8 12' fill='none'%3E%3Cpath d='M1 1L6 6L1 11' stroke='currentColor' stroke-width='1.5'/%3E%3C/svg%3E"); mask-size: contain; transition: 0.3s ease-in-out;
}
.card__link:hover {
color: var(--color-red-l);
}
.card__link:hover:after {
transform: translateX(4px);
}
.cards--with-image {
--wrapper-padding-inline: 6.4rem;
padding: 0 !important;
display: grid;
grid-template-columns: minmax(var(--wrapper-padding-inline), 1fr) minmax(0, calc(1600px / 2)) minmax(0, calc(1600px / 2)) minmax(var(--wrapper-padding-inline), 1fr);
}
@media (max-width: 992px) {
.cards--with-image {
--wrapper-padding-inline: 3.2rem;
}
}
@media (max-width: 768px) {
.cards--with-image {
display: block;
}
}
@media (max-width: 480px) {
.cards--with-image {
--wrapper-padding-inline: 1.6rem;
}
}
.cards--with-image .cards__image {
grid-column: 1/3;
margin-right: 6rem;
position: relative;
bottom: -3.2rem;
max-height: 100vh;
}
.cards--with-image .cards__image img {
width: 100%;
height: 100%;
object-fit: cover;
}
@media (max-width: 768px) {
.cards--with-image .cards__image {
margin-right: 0;
bottom: 0;
}
}
.cards--with-image .cards__list {
display: grid;
grid-column-gap: 4rem;
grid-row-gap: 4rem;
grid-template-columns: repeat(2, 1fr);
margin: 3.2rem 0;
}
@media (max-width: 992px) {
.cards--with-image .cards__list {
grid-template-columns: repeat(1, 1fr);
grid-gap: 4rem;
}
}
@media (max-width: 768px) {
.cards--with-image .cards__list {
grid-template-columns: repeat(1, 1fr);
}
}
.cards--with-image .cards__content {
padding-inline: 3.2rem;
align-self: center;
}
@media (max-width: 992px) {
.cards--with-image .cards__content {
padding-inline: 3.2rem;
}
}
@media (max-width: 768px) {
.cards--with-image .cards__content {
display: block;
}
}
@media (max-width: 480px) {
.cards--with-image .cards__content {
padding-inline: 1.6rem;
}
}
.btn {
display: inline-flex;
justify-content: center;
align-items: center;
text-decoration: none;
}
@media (max-width: 768px) {
.btn .btn__content {
padding: 0 1.6rem;
min-height: 5rem;
font-size: 1.5rem;
}
}
.btn.-primary {
color: var(--color-white);
background-color: var(--color-red);
font-weight: 600;
}
.btn.-primary .btn__content {
display: flex;
justify-content: center;
align-items: center;
padding: 0 2.4rem;
height: 6rem;
background-color: var(--color-red);
color: var(--color-white);
font-weight: 600;
font-size: 1.8rem;
position: relative;
z-index: 0;
}
@media (max-width: 768px) {
.btn.-primary .btn__content {
padding: 0 2rem;
height: 5rem;
font-size: 1.5rem;
}
}
.btn.-primary .btn__content:before {
content: "";
position: absolute;
inset: 0;
background-color: var(--color-red-l);
z-index: -1;
transform: scaleY(0);
transition: transform 0.3s cubic-bezier(0.77, 0, 0.175, 1);
transform-origin: top center;
}
.btn.-primary .btn__arrow {
background-color: var(--color-white);
height: 6rem;
width: 6rem;
display: flex;
justify-content: center;
align-items: center;
perspective: 700px;
transition: transform 0.3s ease-in-out;
}
@media (max-width: 768px) {
.btn.-primary .btn__arrow {
height: 5rem;
width: 5rem;
}
}
.btn.-primary .btn__arrow svg {
transition: all 0.3s cubic-bezier(0.77, 0, 0.175, 1);
color: var(--color-black);
}
.btn.-primary:hover .btn__content:before {
transform: scaleY(1);
transform-origin: bottom center;
}
.btn.-primary:hover .btn__arrow svg {
transform: rotate(-45deg);
color: var(--color-red);
}
.btn.-secondary .btn__content {
display: flex;
justify-content: center;
align-items: center;
padding: 0 2.4rem;
height: 6rem;
background-color: var(--color-white);
color: var(--color-black);
font-weight: 600;
font-size: 1.8rem;
position: relative;
z-index: 0;
}
@media (max-width: 768px) {
.btn.-secondary .btn__content {
padding: 0 2rem;
height: 5rem;
font-size: 1.5rem;
}
}
.btn.-secondary .btn__content:before {
content: "";
position: absolute;
inset: 0;
background-color: var(--color-white-d);
z-index: -1;
transform: scaleY(0);
transition: transform 0.3s cubic-bezier(0.77, 0, 0.175, 1);
transform-origin: top center;
}
.btn.-secondary .btn__arrow {
background-color: var(--color-black);
height: 6rem;
width: 6rem;
display: flex;
justify-content: center;
align-items: center;
perspective: 700px;
transition: transform 0.3s ease-in-out;
}
@media (max-width: 768px) {
.btn.-secondary .btn__arrow {
height: 5rem;
width: 5rem;
}
}
.btn.-secondary .btn__arrow svg {
transition: all 0.3s cubic-bezier(0.77, 0, 0.175, 1);
color: var(--color-red);
}
.btn.-secondary:hover .btn__content:before {
transform: scaleY(1);
transform-origin: bottom center;
}
.btn.-secondary:hover .btn__arrow svg {
transform: rotate(-45deg);
color: var(--color-white);
}
.btn.-thirtiary {
font-weight: 600;
display: inline-flex;
align-items: center;
gap: 0.8rem;
transition: color 0.2s ease-in-out;
}
.btn.-thirtiary:hover:after {
transform: translateX(4px);
}
.btn.-thirtiary:after {
content: "";
display: inline-block;
width: 16px;
height: 16px;
background-color: currentColor; -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M11.9484 8.05193L2.26057 8.05193" stroke="white"/><path d="M7 3L12.0002 8.00018L7 13.0004" stroke="white"/></svg>') no-repeat center/contain;
mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M11.9484 8.05193L2.26057 8.05193" stroke="white"/><path d="M7 3L12.0002 8.00018L7 13.0004" stroke="white"/></svg>') no-repeat center/contain;
transition: transform 0.2s ease;
}
.main-bar-wrapper {
pointer-events: none;
position: sticky;
top: 0;
z-index: 999;
padding-top: 0.2rem;
}
@media (max-width: 768px) {
.main-bar-wrapper {
position: fixed;
top: 0;
width: 100%;
}
}
.top-bar-wrapper {
position: relative;
z-index: 999;
}
.main-bar {
display: flex;
justify-content: space-between;
min-height: 8rem;
margin-top: 1.6rem;
background: rgba(37, 39, 45, 0.7);
backdrop-filter: blur(7px);
pointer-events: auto;
margin-bottom: -14.5rem;
}
@media (max-width: 992px) {
.main-bar {
min-height: 6.4rem;
}
}
.main-bar__left {
display: flex;
align-items: center;
margin: 1.6rem 0 1.6rem 1.6rem;
flex-shrink: 1;
}
.main-bar__right {
display: flex;
align-items: center;
flex-shrink: 0;
}
.main-bar__logo {
height: 100%;
flex-basis: 200px;
max-height: 40px;
transition: opacity 0.3s ease-in-out;
flex-shrink: 1;
}
@media (max-width: 992px) {
.main-bar__logo {
height: 30px;
}
}
.main-bar__logo:hover {
opacity: 0.8;
}
.top-bar {
display: flex;
justify-content: flex-end;
margin-top: 1.6rem;
}
@media (max-width: 992px) {
.top-bar {
display: none;
}
}
.top-bar__menu-wrapper > .top-bar__menu {
margin: 0;
padding: 0;
list-style-type: none;
display: flex;
justify-content: flex-end;
align-items: center;
height: 100%;
gap: 2.7rem;
}
.top-bar__menu-wrapper > .top-bar__menu li {
height: 100%;
}
.top-bar__menu-wrapper > .top-bar__menu li.has-arrow a {
display: inline-flex;
align-items: center;
gap: 0.8rem;
}
.top-bar__menu-wrapper > .top-bar__menu li.has-arrow a:hover:after {
transform: translateX(4px);
}
.top-bar__menu-wrapper > .top-bar__menu li.has-arrow a:after {
content: "";
display: inline-block;
width: 16px;
height: 16px;
background-color: currentColor; -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M11.9484 8.05193L2.26057 8.05193" stroke="white"/><path d="M7 3L12.0002 8.00018L7 13.0004" stroke="white"/></svg>') no-repeat center/contain;
mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M11.9484 8.05193L2.26057 8.05193" stroke="white"/><path d="M7 3L12.0002 8.00018L7 13.0004" stroke="white"/></svg>') no-repeat center/contain;
transition: transform 0.2s ease;
}
.top-bar__menu-wrapper > .top-bar__menu li a {
height: 100%;
display: flex;
justify-content: center;
align-items: center;
text-decoration: none;
color: var(--color-white);
font-weight: 400;
font-size: 1.5rem;
transition: all 0.3s ease-in-out;
}
.top-bar__menu-wrapper > .top-bar__menu li a:hover {
opacity: 0.7;
}
.main-bar__menu-wrapper {
height: 100%;
}
@media (max-width: 992px) {
.main-bar__menu-wrapper {
display: none;
}
}
.main-bar__menu-wrapper > .main-bar__menu {
margin: 0;
padding: 0;
list-style-type: none;
display: flex;
justify-content: flex-end;
align-items: stretch;
height: 100%;
}
.main-bar__menu-wrapper > .main-bar__menu:hover li a {
opacity: 0.7;
}
.main-bar__menu-wrapper > .main-bar__menu li {
height: 100%;
}
.main-bar__menu-wrapper > .main-bar__menu li:last-child a {
background-color: var(--color-red);
padding: 0 2.4rem;
margin-left: 1.6rem;
position: relative;
z-index: 0;
opacity: 1 !important;
}
@media (max-width: 1200px) {
.main-bar__menu-wrapper > .main-bar__menu li:last-child a {
padding: 0 1.6rem;
}
}
.main-bar__menu-wrapper > .main-bar__menu li:last-child a:before {
content: "";
position: absolute;
inset: 0;
background-color: var(--color-red-l);
z-index: -1;
transform: scaleY(0);
transition: transform 0.3s cubic-bezier(0.77, 0, 0.175, 1);
transform-origin: top center;
}
.main-bar__menu-wrapper > .main-bar__menu li:last-child a:hover {
background-color: var(--color-red);
}
.main-bar__menu-wrapper > .main-bar__menu li:last-child a:hover:before {
transform: scaleY(1);
transform-origin: bottom center;
}
.main-bar__menu-wrapper > .main-bar__menu li a {
height: 100%;
display: block;
display: flex;
justify-content: center;
align-items: center;
padding: 0 1.4rem;
text-decoration: none;
color: var(--color-white);
font-weight: 600;
font-size: 1.6rem;
transition: all 0.2s ease-in-out;
}
.main-bar__menu-wrapper > .main-bar__menu li a:hover {
opacity: 1;
}
@media (max-width: 1200px) {
.main-bar__menu-wrapper > .main-bar__menu li a {
font-size: 1.5rem;
padding: 0.8rem;
}
}
.hamburger {
display: none;
}
@media (max-width: 992px) {
.hamburger {
display: block;
}
}
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
background-color: var(--color-white);
}
@keyframes pulse {
0% {
transform: scale(1);
opacity: 0.8;
}
20% {
transform: scale(3);
opacity: 0;
}
100% {
transform: scale(1);
opacity: 0;
}
}
.mobile-menu {
position: absolute;
top: 0;
left: 0;
width: 100%;
pointer-events: none;
width: 100%;
padding: 1.6rem;
padding-top: 10rem;
clip-path: inset(0 0 100% 0);
transition: clip-path 0.5s cubic-bezier(0.77, 0, 0.175, 1);
background: var(--color-dark-grey-ll);
overflow: hidden;
height: 100lvh;
z-index: 0;
}
@media (max-width: 992px) {
.mobile-menu.show-menu {
display: block;
clip-path: inset(0 0 0 0);
visibility: visible;
pointer-events: all;
overflow-y: scroll;
}
}
.mobile-menu .main-bar__mobile-menu {
margin: 0;
padding: 0;
list-style-type: none;
}
.mobile-menu .main-bar__mobile-menu li a {
display: block;
text-decoration: none;
color: var(--color-white);
font-weight: 600;
padding: 1.2rem;
border-bottom: 1px solid rgba(157, 163, 177, 0.2);
font-size: clamp(1.6rem, calc(1.6rem - 0.0027972028 * 36rem) + 100vw * 0.0027972028, 2rem);
}
.mobile-menu .main-bar__mobile-menu li:last-child a {
background-color: var(--color-red);
}
.mobile-menu .main-bar__mobile-menu li:last-child a:hover {
background-color: var(--color-red-l);
}
.mobile-menu .top-bar__mobile-menu {
margin: 0;
padding: 0;
list-style-type: none;
margin-top: 2.4rem;
}
.mobile-menu .top-bar__mobile-menu li a {
display: block;
text-decoration: none;
color: var(--color-grey);
padding: 0.8rem 1.2rem;
font-size: 1.4rem;
}
.has-job-counter a {
gap: 0.8rem !important;
display: flex !important;
justify-content: flex-start !important;
align-items: center !important;
}
.has-job-counter a .job-counter {
position: relative;
display: flex;
justify-content: center;
align-items: center;
color: var(--color-white);
font-size: 1.2rem;
background-color: var(--color-red-l);
border-radius: 20px;
padding: 0.4rem;
height: 2.2rem;
width: 2.2rem;
line-height: 1;
font-weight: 600;
text-align: center;
}
.has-job-counter a .job-counter:before {
content: "";
position: absolute;
inset: 0;
width: 100%;
height: 100%;
border-radius: 50%;
background: var(--color-red);
transform: scale(1);
z-index: -1;
animation: pulse 10s infinite;
}
.footer__top__wrapper {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 6rem 4rem;
margin-bottom: 10rem;
}
@media (max-width: 992px) {
.footer__top__wrapper {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 768px) {
.footer__top__wrapper {
grid-template-columns: 1fr;
}
}
.footer__bottom__wrapper {
padding: 2.4rem;
display: flex;
justify-content: space-between;
column-gap: 4rem;
row-gap: 1.6rem;
align-items: center;
border-top: 1px solid var(--color-dark-grey-l);
}
@media (max-width: 992px) {
.footer__bottom__wrapper {
flex-wrap: wrap;
justify-content: center;
}
.footer__bottom__wrapper > * {
width: 100%;
text-align: center;
}
}
.footer__bottom__wrapper .credits {
color: var(--color-grey);
font-size: 1.4rem;
}
.footer__bottom__wrapper .legal-links {
font-size: 1.4rem;
color: var(--color-grey);
display: flex;
flex-wrap: wrap;
column-gap: 2.4rem;
list-style-type: none;
justify-content: center;
margin: 0;
padding: 0;
}
.footer__bottom__wrapper .legal-links a {
text-decoration: none;
color: var(--color-grey);
font-size: 1.4rem;
transition: all 0.2s ease-in-out;
}
.footer__bottom__wrapper .legal-links a:hover {
color: var(--color-white);
}
.footer__socials {
padding: 2.4rem;
display: flex;
justify-content: flex-end;
align-items: center;
gap: 1.2rem;
}
.footer__logos {
display: flex;
flex-wrap: wrap;
gap: 2.4rem;
justify-content: flex-end;
}
.footer-menu ul {
padding: 0;
margin: 0;
list-style: none;
}
.footer-menu ul li {
border-bottom: 1px solid var(--color-dark-grey-l);
}
.footer-menu ul a {
display: block;
text-decoration: none;
color: var(--color-grey);
padding: 1.2rem 0;
transition: all 0.2s ease-in-out;
font-size: 1.7rem;
}
.footer-menu ul a:hover {
color: var(--color-white);
transform: translateX(6px);
}
.footer__contact-list {
padding: 0;
margin: 0;
list-style: none;
margin-top: 2.4rem;
}
.footer__contact-list li {
margin-bottom: 0.4rem;
}
.footer__contact-list li a {
text-decoration: none;
color: var(--color-grey);
transition: all 0.2s ease-in-out;
font-size: 1.7rem;
}
.footer__contact-list li a:hover {
color: var(--color-white);
}
@media (max-width: 992px) {
.col--menu {
order: 3;
}
}
@media (max-width: 768px) {
.col--menu {
order: unset;
}
}
.socials__item {
padding: 0.8rem;
color: var(--color-red);
transition: all 0.2s ease-in-out;
}
.socials__item:hover {
color: var(--color-white);
}
.hero {
height: 70vh;
max-height: 950px;
min-height: fit-content;
position: relative;
display: flex;
align-items: flex-end;
overflow-x: clip;
padding-top: 14rem;
margin-bottom: clamp(6rem, 5vw, 12rem);
}
@media (max-width: 992px) {
.hero {
padding-top: 12.4rem;
}
}
@media (max-width: 768px) {
.hero {
padding-top: 8rem;
}
}
.hero__image {
position: absolute;
inset: 0;
z-index: -2;
width: 100%;
height: calc(100% + 14rem);
object-fit: cover;
opacity: 0.7;
overflow: hidden;
}
.hero__image:after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(180deg, rgba(37, 39, 45, 0) 54.92%, rgba(37, 39, 45, 0.86) 84.52%, var(--dark-grey-d, #1C1D1F) 100%), linear-gradient(180deg, var(--dark-grey-d, rgba(28, 29, 31, 0.3)) 0%, rgba(37, 39, 45, 0) 24.04%), linear-gradient(0deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.15) 100%);
z-index: 1;
}
.hero__image img {
width: 100%;
height: 100%;
object-fit: cover;
}
.hero__video {
position: absolute;
inset: 0;
height: 100%;
width: 100%;
object-fit: cover;
}
.hero__shapes {
position: absolute;
inset: 0;
z-index: -1;
pointer-events: none;
}
.hero__shapes .container {
position: relative;
height: 100%;
}
.hero__shapes:before {
content: "";
position: absolute;
background-color: var(--color-red);
aspect-ratio: 1/1;
height: 100%;
z-index: -1;
left: 10vw;
background: radial-gradient(105.48% 81.83% at 100% 0%, #DB0032 0%, rgba(219, 0, 50, 0) 100%);
transform: skewX(25deg) translateX(-100%); transform-origin: top left;
z-index: 1;
}
.hero__shapes:after {
content: "";
position: absolute;
background-color: var(--color-red);
aspect-ratio: 1/1;
height: 80%;
z-index: -1;
right: -500px;
background: radial-gradient(105.48% 81.83% at 100% 0%, #DB0032 0%, rgba(219, 0, 50, 0) 100%);
transform: skewX(-25deg); transform-origin: top left;
z-index: 1;
}
.hero__content {
margin-top: clamp(10rem, 5vw, 30rem);
width: 100%;
display: flex;
flex-direction: row;
column-gap: 2.4rem;
row-gap: 2.4rem;
justify-content: space-between;
flex-wrap: wrap;
position: relative;
z-index: 1;
}
.hero__content .container {
width: 100%;
}
.hero__title {
max-width: 70%;
margin-bottom: 6rem;
}
@media (max-width: 768px) {
.hero__title {
max-width: 90%;
margin-bottom: 3.2rem;
}
}
.services__grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 4rem;
align-items: stretch;
}
@media (max-width: 768px) {
.services__grid {
grid-template-columns: repeat(1, 1fr);
gap: 2.4rem;
}
}
.service-card {
position: relative;
background-color: var(--color-dark-grey-l);
transition: transform 0.2s ease-in-out, background-color 0.2s ease-in-out;
}
.service-card:after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(90deg, var(--color-dark-grey-l, #383B42) 40%, rgba(56, 59, 66, 0.4) 100%);
transition: opacity 0.2s;
opacity: 1;
}
@media (max-width: 480px) {
.service-card:after {
background: linear-gradient(0deg, var(--color-dark-grey-l, #383B42) 50%, rgba(56, 59, 66, 0.4) 100%);
}
}
.service-card:before {
content: "";
position: absolute;
z-index: 1;
inset: 0;
background: linear-gradient(90deg, var(--color-dark-grey-ll) 40%, rgba(56, 59, 66, 0) 100%);
transition: opacity 0.2s;
opacity: 0;
}
@media (max-width: 480px) {
.service-card:before {
background: linear-gradient(0deg, var(--color-dark-grey-ll) 50%, rgba(56, 59, 66, 0.4) 100%);
}
}
.service-card:hover {
transform: translateY(-4px);
background-color: var(--color-dark-grey-ll);
}
.service-card:hover:after {
opacity: 1;
}
.service-card:hover:before {
opacity: 1;
}
.service-card:hover .arrow {
transform: translate(10px, -10px);
color: var(--color-white);
}
.service-card__image {
position: absolute;
top: 0;
right: 0;
width: 60%;
height: 100%;
overflow: hidden;
}
@media (max-width: 480px) {
.service-card__image {
width: 100%;
height: 50%;
top: 0;
left: 0;
}
}
.service-card__image img {
width: 100%;
height: 100%;
object-fit: cover;
}
.service-card__content {
position: relative;
display: flex;
flex-direction: column;
z-index: 1;
gap: 1.2rem;
}
.service-card__text {
font-size: clamp(1.6rem, calc(1.6rem - 0.0013986014 * 36rem) + 100vw * 0.0013986014, 1.8rem);
}
.service-card a {
display: flex;
gap: 4rem;
text-decoration: none;
padding: 4.8rem 4.8rem 6.4rem;
}
@media (max-width: 480px) {
.service-card a {
flex-direction: column-reverse;
padding: 3.2rem;
}
.service-card a .arrow {
align-self: flex-end;
}
}
.service-card .arrow {
position: relative;
z-index: 1;
flex-shrink: 0;
color: var(--color-red);
transition: all 0.3s ease-in-out;
}
.cta__wrapper {
background-color: var(--color-red);
position: relative;
padding: 12rem 6rem;
}
@media (max-width: 768px) {
.cta__wrapper {
padding: 8rem 2.4rem 20rem 2.4rem;
}
}
.cta__image {
position: absolute;
top: 0;
right: 0;
width: 60%;
height: 100%;
overflow: hidden;
}
.cta__image:after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(269deg, rgba(219, 0, 50, 0) 0.7%, #DB0032 99.55%);
}
@media (max-width: 768px) {
.cta__image {
width: 100%;
height: 50%;
top: auto;
left: auto;
bottom: 0;
}
.cta__image:after {
background: linear-gradient(0deg, rgba(219, 0, 50, 0) 0.7%, #DB0032 99.55%);
}
}
.cta__image img {
width: 100%;
height: 100%;
object-fit: cover;
}
.cta__title {
max-width: 50%;
}
@media (max-width: 768px) {
.cta__title {
max-width: 100%;
}
}
.cta__content {
position: relative;
display: flex;
flex-direction: column;
z-index: 1;
gap: 2.4rem;
}
.project-card {
background-color: var(--color-dark-grey-l);
display: block;
text-decoration: none;
height: 100%;
transition: color 0.3s ease-in-out;
}
.project-card:hover {
background-color: var(--color-dark-grey-ll);
}
.project-card:hover img {
transform: scale(1.05);
}
.project-card__image {
width: 100%;
aspect-ratio: 4/3;
object-fit: cover;
overflow: hidden;
}
.project-card__image img {
width: 100%;
height: 100%;
object-fit: cover;
transition: all 0.2s ease-in-out;
}
.project-card__info {
display: flex;
flex-direction: column;
gap: 0.8rem;
padding: 2.4rem 3.2rem;
}
.project-card__surface {
display: flex;
justify-content: flex-start;
align-items: center;
gap: 0.8rem;
color: var(--color-grey);
font-size: 1.6rem;
}
.splide__projects-slider {
position: relative;
}
.projects-slider {
overflow-x: clip;
}
.projects-slider__wrapper {
overflow: visible;
}
.splide__arrows {
position: absolute;
left: 0;
top: 0;
z-index: 1;
display: flex;
justify-content: center;
align-items: center;
}
.splide__arrow {
background-color: var(--color-white);
display: flex;
justify-content: center;
align-items: center;
width: 6.4rem;
height: 6.4rem;
color: var(--color-black);
border: none;
transition: all 0.2s ease-in-out;
cursor: pointer;
}
@media (max-width: 768px) {
.splide__arrow {
width: 4.8rem;
height: 4.8rem;
}
}
.splide__arrow:first-child {
border-right: 1px solid var(--color-white-d);
}
.splide__arrow:hover {
background-color: var(--color-red);
color: var(--color-white);
}
.splide__arrow:disabled {
pointer-events: none;
background-color: var(--color-white-d);
}
.splide__arrow:disabled svg {
opacity: 0.4;
}
.splide__arrow--prev svg {
transform: rotate(180deg);
}
.projects-slider__title {
margin-bottom: 8rem;
}
.projects-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
column-gap: 4rem; row-gap: 3.2rem;
}
@media (max-width: 992px) {
.projects-grid {
grid-template-columns: repeat(2, 1fr);
column-gap: 2.4rem;
row-gap: 2.4rem;
}
}
@media (max-width: 480px) {
.projects-grid {
grid-template-columns: repeat(1, 1fr);
}
}
.project-nav {
display: flex;
justify-content: space-between;
border-top: 1px solid var(--color-dark-grey-l);
padding: 4.8rem 0;
gap: 6rem;
}
@media (max-width: 768px) {
.project-nav {
flex-direction: column;
gap: 4rem;
}
.project-nav > * {
flex-basis: auto !important;
text-align: center !important;
}
}
.project-nav__item {
flex-basis: 400px;
}
.project-nav__item.prev a:hover {
transform: translateX(-4px);
}
.project-nav__item.next a:hover {
transform: translateX(4px);
}
.project-nav__item a {
display: flex;
flex-direction: column;
align-items: center;
text-decoration: none;
gap: 0.8rem;
transition: all 0.2s ease-in-out;
}
.project-nav__item a > * {
transition: all 0.3s ease-in-out;
}
.project-nav__item a:hover .project-nav__text {
color: var(--color-red);
}
.project-nav__item a:hover .project-nav__title {
color: var(--color-white-d);
}
.project-nav .prev a {
align-items: flex-start;
text-align: left;
}
@media (max-width: 768px) {
.project-nav .prev a {
text-align: center;
align-items: center;
}
}
.project-nav .prev a .project-nav__title svg {
transform: rotate(90deg);
flex-shrink: 0;
}
.project-nav .prev a:hover .project-nav__title svg {
transform: rotate(135deg);
}
.project-nav .next a {
align-items: flex-end;
text-align: right;
}
@media (max-width: 768px) {
.project-nav .next a {
text-align: center;
align-items: center;
}
}
.project-nav .next a .project-nav__title svg {
flex-shrink: 0;
}
.project-nav .next a:hover .project-nav__title svg {
transform: rotate(-45deg);
}
.project-nav__title {
display: inline-flex;
justify-content: center;
align-items: flex-start;
gap: 2.4rem;
color: var(--color-white);
font-weight: 600;
font-size: clamp(1.6rem, calc(1.6rem - 0.0034965035 * 36rem) + 100vw * 0.0034965035, 2.1rem);
}
.project-nav__title svg {
transition: all 0.3s ease-in-out;
margin-top: 0.6rem;
}
.project-nav__text {
font-size: 1.6rem;
color: var(--color-red-ll);
}
.splide__image-slider {
position: relative;
}
.image-slider {
overflow-x: clip;
}
.image-slider__wrapper {
overflow: visible;
}
.image-slider__image-wrapper img {
height: 100%;
}
.image-loop {
width: 100%;
overflow-x: clip;
}
.image-loop__track {
display: flex;
flex-wrap: nowrap;
}
.slide {
flex: 0 0 auto;
}
.slide img {
display: block;
max-width: 500px;
width: 25vw;
height: auto;
object-fit: cover;
aspect-ratio: 4/5;
margin-right: 3.2rem;
}
@media (max-width: 992px) {
.slide img {
width: 33vw;
margin-right: 2.4rem;
}
}
@media (max-width: 768px) {
.slide img {
width: 40vw;
margin-right: 1.6rem;
}
}
.slide:nth-child(5n) {
margin-top: 60px;
}
.slide:nth-child(5n+1) {
margin-top: 40px;
}
.slide:nth-child(5n+2) {
margin-top: 70px;
}
.slide:nth-child(5n+3) {
margin-top: 20px;
}
.slide:nth-child(5n+4) {
margin-top: 0px;
}
.image-with-text.-image-left .image-with-text__image {
order: -1;
}
@media (max-width: 768px) {
.image-with-text.-image-left .image-with-text__image {
clip-path: none;
order: 1;
}
}
.image-with-text.-image-right .image-with-text__image__wrapper {
right: 4rem;
}
@media (max-width: 768px) {
.image-with-text.-image-right .image-with-text__image__wrapper {
right: 0;
}
}
.image-with-text.-background {
background-color: white;
}
.image-with-text__wrapper {
display: flex;
justify-content: center;
align-items: center;
height: 100%;
min-height: 600px;
}
.image-with-text__wrapper > * {
flex: 0 1 50%;
}
@media (max-width: 768px) {
.image-with-text__wrapper {
flex-direction: column-reverse;
}
}
.image-with-text__content {
display: flex;
flex-direction: column;
flex: 0 1 50%;
background-color: var(--color-neutral-creme);
padding: 6rem;
position: relative;
z-index: 2;
gap: 2.4rem;
}
@media (max-width: 768px) {
.image-with-text__content {
padding: 3.2rem 2.4rem 4.8rem;
}
}
.image-with-text__content .button {
margin-top: 2.4rem;
}
.image-with-text__content-wrapper {
display: flex;
gap: 1.2rem;
}
.image-with-text__content-wrapper:before {
content: "";
display: block;
width: 3.2rem;
flex-shrink: 0;
height: 0.1rem;
margin-top: 1.2rem;
background-color: var(--color-red);
}
.image-with-text__image {
flex: 0 1 50%;
align-self: stretch;
position: relative;
overflow: hidden;
}
.image-with-text__image a:after {
content: "";
position: absolute;
inset: 0;
z-index: 2;
background: rgba(0, 0, 0, 0.2);
transition: background 0.8s cubic-bezier(0.77, 0, 0.175, 1);
}
.image-with-text__image a img {
transition: transform 0.8s cubic-bezier(0.77, 0, 0.175, 1);
}
.image-with-text__image a:hover:after {
background: rgba(0, 0, 0, 0.4);
}
.image-with-text__image a:hover img {
transform: scale(1.02);
}
.image-with-text__image img {
object-fit: cover;
height: 100%;
width: 100%;
max-height: 800px;
}
.image-with-text__image__wrapper {
position: relative;
height: 100%;
width: calc(100% + 4rem);
z-index: 1;
overflow: hidden;
}
@media (max-width: 768px) {
.image-with-text__image__wrapper {
margin-bottom: 0;
width: 100%;
}
}
.image-with-text__video-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
display: flex;
align-items: center;
justify-content: center;
text-decoration: none;
z-index: 4;
}
.image-with-text.-jobs .image-with-text__content-wrapper {
display: block;
}
.image-with-text.-jobs .image-with-text__content-wrapper:before {
display: none;
} .fb-video .fancybox__content {
width: min(90vw, 1200px);
max-height: 90vh;
aspect-ratio: 16/9;
}
.fb-video .fancybox__content > * {
width: 100%;
height: 100%;
}
.page-header {
height: clamp(300px, 30vw, 600px);
max-height: 600px;
min-height: fit-content;
position: relative;
display: flex;
align-items: flex-end;
overflow-x: clip;
padding-top: 14rem;
}
@media (max-width: 992px) {
.page-header {
padding-top: 8rem;
}
}
.page-header .content {
margin-top: 6rem;
max-width: 760px;
}
.page-header__image {
position: absolute;
inset: 0;
z-index: -2;
width: 100%;
height: calc(100% + 14rem);
object-fit: cover;
opacity: 0.7;
max-height: 740px;
overflow: hidden;
}
@media (max-width: 992px) {
.page-header__image {
max-height: 540px;
}
}
.page-header__image:after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(180deg, rgba(37, 39, 45, 0) 54.92%, rgba(37, 39, 45, 0.86) 84.52%, var(--dark-grey-d, #1C1D1F) 100%), linear-gradient(180deg, var(--dark-grey-d, rgba(28, 29, 31, 0.3)) 0%, rgba(37, 39, 45, 0) 24.04%), linear-gradient(0deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.15) 100%);
}
.page-header__image img {
width: 100%;
height: 100%;
object-fit: cover;
}
.page-header__image.is-fallback img {
filter: grayscale(1) brightness(0.5);
opacity: 0.5;
}
.page-header__shapes {
position: absolute;
inset: 0;
z-index: -1;
pointer-events: none;
max-height: 70rem;
}
.page-header__shapes .container {
position: relative;
height: 100%;
}
.page-header__shapes:before {
content: "";
position: absolute;
background-color: var(--color-red);
aspect-ratio: 1/1;
height: 100%;
z-index: -1;
left: 10vw;
background: radial-gradient(105.48% 81.83% at 100% 0%, #DB0032 0%, rgba(219, 0, 50, 0) 100%);
transform: skewX(25deg) translateX(-100%); transform-origin: top left;
z-index: 1;
}
.page-header__shapes:after {
content: "";
position: absolute;
background-color: var(--color-red);
aspect-ratio: 1/1;
height: 80%;
z-index: -1;
right: -500px;
background: radial-gradient(105.48% 81.83% at 100% 0%, #DB0032 0%, rgba(219, 0, 50, 0) 100%);
transform: skewX(-25deg); transform-origin: top left;
z-index: 1;
}
.page-header__content {
margin-top: clamp(10rem, 15vw, 25rem);
width: 100%;
display: flex;
flex-direction: row;
column-gap: 2.4rem;
row-gap: 2.4rem;
justify-content: space-between;
flex-wrap: wrap;
position: relative;
z-index: 1;
}
.page-header__content .container {
width: 100%;
}
.page-header__title {
max-width: 70%;
margin-bottom: 1.2rem;
}
@media (max-width: 768px) {
.page-header__title {
max-width: 90%;
margin-bottom: 1.2rem;
}
}
.page-header__title .word {
overflow: hidden;
}
.page-header__info-bar {
display: flex;
column-gap: 3.2rem;
row-gap: 1.6rem;
flex-wrap: wrap;
color: var(--color-white);
font-size: 1.7rem;
}
.page-header__info-bar__category {
background-color: var(--color-red);
padding: 0.8rem 1.6rem;
font-weight: 600;
}
.page-header__info-bar__item {
display: flex;
justify-content: center;
align-items: center;
gap: 0.8rem;
}
.page-header.-projects .page-header__content {
margin-bottom: 0;
}
.page-header.-contact {
max-height: 900px !important;
}
.page-header.-contact .page-header__image {
max-height: 900px;
}
.page-header.-contact .page-header__image img {
object-position: top;
}
@media (max-width: 992px) {
.page-header.-contact .page-header__image {
max-height: 600px;
}
}
@media (max-width: 768px) {
.page-header.-contact .page-header__image {
max-height: 400px;
}
}
.form-container {
width: 100%;
background-color: var(--color-dark-grey);
padding: clamp(2.4rem, 5vw, 8rem);
}
.gform_required_legend {
display: none;
}
body .gform_wrapper .gform_body .gform_fields .gfield input[type=text],
body .gform_wrapper .gform_body .gform_fields .gfield select,
body .gform_wrapper .gform_body .gform_fields .gfield textarea,
body .gform_wrapper .gform_body .gform_fields .gfield input[type=email],
body .gform_wrapper .gform_body .gform_fields .gfield input[type=tel] {
border: none;
block-size: 56px;
border-radius: 0;
background-color: var(--color-dark-grey-l);
color: var(--color-grey);
font-size: 1.6rem;
box-shadow: none;
}
body .gform_wrapper .gform_body .gform_fields .gfield input[type=text]:active, body .gform_wrapper .gform_body .gform_fields .gfield input[type=text]:focus,
body .gform_wrapper .gform_body .gform_fields .gfield select:active,
body .gform_wrapper .gform_body .gform_fields .gfield select:focus,
body .gform_wrapper .gform_body .gform_fields .gfield textarea:active,
body .gform_wrapper .gform_body .gform_fields .gfield textarea:focus,
body .gform_wrapper .gform_body .gform_fields .gfield input[type=email]:active,
body .gform_wrapper .gform_body .gform_fields .gfield input[type=email]:focus,
body .gform_wrapper .gform_body .gform_fields .gfield input[type=tel]:active,
body .gform_wrapper .gform_body .gform_fields .gfield input[type=tel]:focus {
background-color: var(--color-dark-grey-ll);
}
.gform-theme--foundation .gform_fields {
row-gap: 20px;
}
body .gform_wrapper .gform_footer input[type=submit] {
border-radius: 0 !important;
display: inline-flex !important;
font-size: 1.7rem !important;
font-weight: 600 !important;
align-items: center !important;
transition: all 0.3s ease-in-out !important;
color: var(--color-white) !important;
text-decoration: none !important;
color: white !important;
position: relative !important;
border: none !important;
font-family: "Inter", sans-serif !important;
position: relative !important;
background-color: var(--color-red) !important;
overflow: hidden !important;
display: flex;
justify-content: center;
align-items: center;
padding: 2rem 2.4rem !important;
}
body .gform_wrapper .gform_footer input[type=submit]:hover, body .gform_wrapper .gform_footer input[type=submit]:active, body .gform_wrapper .gform_footer input[type=submit]:focus {
background-color: var(--color-red-l) !important;
}
body .gform_wrapper .gform_body .gform_fields .gfield label {
color: var(--color-grey);
}
body .gform_wrapper .gform_body .gform_fields .gfield_error .validation_message {
color: #da4141;
}
body .gform_wrapper .gform_validation_errors {
display: none;
}
body .gform_wrapper .gform_body .gform_fields .gfield .gfield_label {
color: white;
font-size: 1.6rem;
font-weight: 500;
}
body .gform_wrapper {
width: 100%;
}
.gform-theme--foundation .gform_fields {
grid-row-gap: 20px !important;
}
body .gform_wrapper .gform_body .gform_fields .gfield .ginput_container_fileupload .gform_drop_area {
border-color: var(--color-dark-grey-ll);
border-width: 2px;
border-radius: 0px;
box-shadow: none;
background-color: transparent;
}
body .gform_wrapper .gform_body .gform_fields .gfield .ginput_container_fileupload .gform_button_select_files {
border: 2px solid var(--color-dark-grey-ll);
color: white;
padding: 1.2rem 2.4rem;
font-weight: 500;
transition: all 0.2s ease;
text-decoration: none;
display: inline-block;
background-color: transparent;
}
body .gform_wrapper .gform_body .gform_fields .gfield .ginput_container_fileupload .gform_button_select_files:hover {
opacity: 0.8;
}
.gform-theme--framework .gfield:where(.gfield--type-fileupload, .gfield--input-type-fileupload) .ginput_preview .gfield_fileupload_filename {
color: var(--color-white) !important;
}
.gform-theme--framework .gfield:where(.gfield--type-fileupload, .gfield--input-type-fileupload) .ginput_preview .gfield_fileupload_progressbar_progress {
background-color: #37d05b !important;
}
body .gform_wrapper .gform_body .gform_fields .gfield .ginput_container_fileupload .validation_message {
color: red;
}
.gform_drop_instructions {
color: white !important;
}
body .gform-theme--framework .gfield:where(.gfield--type-fileupload, .gfield--input-type-fileupload) .gform_drop_area::before {
color: white !important;
}
.gform-theme--framework select:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)):where(:not([multiple])) {
background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0.292893 0.292893C0.683417 -0.097631 1.31658 -0.097631 1.70711 0.292893L5 3.58579L8.29289 0.292893C8.68342 -0.0976311 9.31658 -0.0976311 9.70711 0.292893C10.0976 0.683417 10.0976 1.31658 9.70711 1.70711L5.70711 5.70711C5.31658 6.09763 4.68342 6.09763 4.29289 5.70711L0.292893 1.70711C-0.0976311 1.31658 -0.0976311 0.683418 0.292893 0.292893Z' fill='rgba(255, 255, 255, 0.65)'/%3E%3C/svg%3E") !important;
}
body .gform_wrapper .gform_body .gform_fields .gfield select {
display: flex;
align-items: center;
}
body .gform_wrapper .gform_body .gform_fields .gfield .gfield_radio input[type=radio] {
border: 1px solid var(--color-dark-grey-ll) !important;
background-color: transparent;
}
.gform-theme--framework input[type=checkbox]::before, .gform-theme--framework input[type=radio]::before {
background-color: var(--color-red) !important;
}
body .gform_wrapper .gform_body .gform_fields .gfield .gfield_radio .gchoice .gform-field-label {
color: var(--color-white) !important;
}
body .gform_wrapper .gform_body .gform_fields .gfield .gfield_radio {
margin-top: 8px;
}
.contact-grid {
display: grid;
grid-template-columns: 1fr 1fr;
column-gap: 6rem;
}
@media (max-width: 768px) {
.contact-grid {
grid-template-columns: 1fr;
row-gap: 4rem;
}
}
.contact-grid__iconlist {
margin: 0;
padding: 0;
list-style-type: none;
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 1.2rem;
margin: 4rem 0;
}
.contact-grid__iconlist li a {
display: flex;
align-items: center;
justify-content: flex-start;
gap: 0.8rem;
text-decoration: none;
font-size: 2.4rem;
color: var(--color-white);
}
.contact-grid__iconlist li a:hover {
color: var(--color-white-d);
}
@media (max-width: 768px) {
.contact-grid__iconlist li a {
font-size: 2rem;
}
}
.contact-grid__address {
margin: 2.4rem 0;
}
.contact-grid__address__eyebrow {
color: var(--color-grey);
font-size: 1.5rem;
font-weight: 600;
text-transform: uppercase;
margin-bottom: 1.6rem;
}
.contact-grid__address__link {
color: var(--color-white);
text-decoration: none;
}
.contact-grid__address__link:hover {
color: var(--color-white-d);
}
.contact-grid__btw {
margin-top: 0.8rem;
color: var(--color-white);
}
.contact-grid__socials {
display: flex;
}
.jobs-list {
list-style-type: none;
margin: 0;
padding: 0;
margin-top: 3.2rem;
}
.jobs-list__item:first-child a {
border-top: 1px solid var(--color-dark-grey-l);
}
.jobs-list__item a {
display: flex;
justify-content: space-between;
align-items: center;
text-decoration: none;
color: white;
padding: 3.2rem 2.4rem;
border-bottom: 1px solid var(--color-dark-grey-l);
position: relative;
transition: all 0.2s ease-in-out;
gap: 1.6rem;
}
@media (max-width: 480px) {
.jobs-list__item a {
padding: 2.4rem 1.6rem;
}
}
.jobs-list__item a:hover:before {
transform: scaleY(1);
transform-origin: bottom center;
background-color: var(--color-dark-grey-l);
}
.jobs-list__item a:hover .jobs-list__item__title {
transform: translateX(4px);
}
.jobs-list__item a:hover .jobs-list__item__title svg {
color: var(--color-white);
transform: rotate(-45deg);
}
.jobs-list__item a:before {
content: "";
position: absolute;
inset: 0;
background-color: var(--color-dark-grey-l);
z-index: -1;
transform: scaleY(0);
transition: transform 0.3s cubic-bezier(0.77, 0, 0.175, 1);
transform-origin: top center;
}
.jobs-list__item__title {
display: flex;
gap: 2.4rem;
justify-content: center;
align-items: center;
font-weight: 600;
font-size: 2.1rem;
transition: all 0.3s cubic-bezier(0.77, 0, 0.175, 1);
font-size: clamp(1.7rem, calc(1.7rem - 0.0027972028 * 36rem) + 100vw * 0.0027972028, 2.1rem);
}
@media (max-width: 480px) {
.jobs-list__item__title {
gap: 1.2rem;
}
}
.jobs-list__item__title svg {
flex-shrink: 0;
color: var(--color-red);
transition: all 0.3s cubic-bezier(0.77, 0, 0.175, 1);
}
.jobs-list__item__type {
display: flex;
gap: 0.8rem;
justify-content: center;
align-items: center;
font-size: 1.7rem;
color: var(--color-grey);
}
@media (max-width: 480px) {
.jobs-list__item__type {
font-size: 1.5rem;
}
}
.jobs-list__item__type svg {
flex-shrink: 0;
}
.pagination {
display: flex;
justify-content: center;
align-items: center;
margin: 4rem 0;
font-size: 1.7rem;
color: var(--color-grey);
}
.pagination .page-numbers {
padding: 1.2rem;
display: block;
}
.pagination .page-numbers.current {
color: var(--color-white);
font-weight: 600;
}
.pagination .page-numbers.next {
transition: all 0.2s ease-in-out;
}
.pagination .page-numbers.next svg {
transform: rotate(-45deg);
color: var(--color-red);
transition: all 0.2s ease-in-out;
}
.pagination .page-numbers.next:hover {
transform: translate(4px);
}
.pagination .page-numbers.next:hover svg {
color: var(--color-white);
transform: rotate(-45deg);
}
.pagination .page-numbers.prev {
transition: all 0.2s ease-in-out;
}
.pagination .page-numbers.prev svg {
transition: all 0.2s ease-in-out;
transform: rotate(135deg);
color: var(--color-red);
}
.pagination .page-numbers.prev:hover {
transform: translate(-4px);
}
.pagination .page-numbers.prev:hover svg {
color: var(--color-white);
}
.pagination a.page-numbers {
background-color: var(--color-background);
text-decoration: none;
transition: color 0.3s, color 0.3s;
color: var(--color-grey);
}
.pagination a.page-numbers:hover {
color: var(--color-white);
}
.fourohfour-content {
margin-top: 12rem;
padding: 16rem 3.2rem;
text-align: center;
}
@media (max-width: 768px) {
.fourohfour-content {
padding: 12rem 3.2rem;
}
}
.breadcrumb a {
color: var(--color-white);
text-decoration: none;
display: flex;
align-items: center;
line-height: 1;
padding: 0.8rem 0;
gap: 0.8rem;
margin-bottom: 2.4rem;
}
.breadcrumb a:before {
content: "";
display: inline-block;
width: 16px;
height: 16px;
background-color: currentColor; -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M11.9484 8.05193L2.26057 8.05193" stroke="white"/><path d="M7 3L12.0002 8.00018L7 13.0004" stroke="white"/></svg>') no-repeat center/contain;
mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M11.9484 8.05193L2.26057 8.05193" stroke="white"/><path d="M7 3L12.0002 8.00018L7 13.0004" stroke="white"/></svg>') no-repeat center/contain;
transition: transform 0.2s ease;
transform: rotate(180deg);
}
.breadcrumb a:hover:before {
transform: translateX(-4px) rotate(180deg);
}
.logo-banner {
--logo-grid-gap: 3.2rem;
}
.logo-banner .container.-sm .logo-banner__item {
flex: 0 1 calc(25% - var(--logo-grid-gap));
}
@media (max-width: 768px) {
.logo-banner .container.-sm .logo-banner__item {
flex: 0 1 calc(33.33% - var(--logo-grid-gap));
}
}
@media (max-width: 480px) {
.logo-banner .container.-sm .logo-banner__item {
flex: 0 1 calc(50% - var(--logo-grid-gap));
}
}
.logo-banner .container.-md .logo-banner__item {
flex: 0 1 calc(16.66% - var(--logo-grid-gap));
}
@media (max-width: 768px) {
.logo-banner .container.-md .logo-banner__item {
flex: 0 1 calc(33.33% - var(--logo-grid-gap));
}
}
@media (max-width: 480px) {
.logo-banner .container.-md .logo-banner__item {
flex: 0 1 calc(50% - var(--logo-grid-gap));
}
}
.logo-banner .container.-lg .logo-banner__item {
flex: 0 1 calc(12.5% - var(--logo-grid-gap));
}
@media (max-width: 768px) {
.logo-banner .container.-lg .logo-banner__item {
flex: 0 1 calc(33.33% - var(--logo-grid-gap));
}
}
@media (max-width: 480px) {
.logo-banner .container.-lg .logo-banner__item {
flex: 0 1 calc(50% - var(--logo-grid-gap));
}
}
.logo-banner__track {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: var(--logo-grid-gap);
}
.logo-banner__item {
flex: 0 0 200px;
aspect-ratio: 4/3;
}
.logo-banner__item img {
width: 100%;
height: 100%;
object-fit: contain;
}
.intro-text .button-bar {
margin-top: 2.4rem;
}