@font-face {
  font-family: Helveticanowdisplay;
  src: url('../fonts/HelveticaNowDisplay-Regular.woff') format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Helveticanowdisplay;
  src: url('../fonts/HelveticaNowDisplay-Black.woff') format("woff");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Helveticanowdisplay;
  src: url('../fonts/HelveticaNowDisplay-Medium.woff') format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Helveticanowdisplay;
  src: url('../fonts/HelveticaNowDisplay-ExtraBold.woff') format("woff");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Helveticanowdisplay;
  src: url('../fonts/HelveticaNowDisplay-Bold.woff') format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Helveticanowdisplay Regita;
  src: url('../fonts/HelveticaNowDisplay-RegIta.woff') format("woff");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

:root {
  --black: #333;
  --header-black: #0a0a0a;
  --white: white;
  --brand-green: #016d5b;
  --gainsboro: #d9d9d9;
  --accent-green: #c7d3b6;
  --transparent: #fff0;
  --accent-green-2: #02967e;
  --white-smoke: #f6f6f6;
  --gray: #6b6b6b;
  --light-gray: #9b9b9b;
  --brand-blue: #273347;
}

body {
  color: var(--black);
  letter-spacing: .01em;
  font-family: Helveticanowdisplay, sans-serif;
  font-size: 1.125rem;
  line-height: 1.4;
}

h1 {
  letter-spacing: -.02em;
  font-weight: 800;
  line-height: 1.15;
  font-size: var(--h1);
  margin-top: 0;
  margin-bottom: 1.5rem;
}

h2 {
  letter-spacing: -.02em;
  margin-top: 0;
  margin-bottom: var(--margin-32);
  font-weight: 700;
  line-height: 1.15;
  font-size: var(--h2);
}

h3 {
  letter-spacing: .01em;
  text-transform: capitalize;
  margin-top: 0;
  margin-bottom: 1rem;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.25;
}

h4 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}

p {
  margin-bottom: 0;
}

a {
  text-decoration: underline;
}

ul, ol {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 40px;
}

.grid {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.grid.columns-3 {
  grid-template-columns: 1fr 1fr 1fr;
}

.grid.row-gap-56 {
  grid-row-gap: 3.5rem;
}

.flex-vertical {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.flex-vertical.text-center.max-width-440, .relative-wrapper {
  position: relative;
}

.section {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding: 8.75rem 6vw;
  display: flex;
  position: relative;
  overflow: hidden;
}

.section.hero-home {
  min-height: 100svh;
}

.section.footer {
  background-color: var(--header-black);
  color: var(--white);
  min-height: 33.3333svh;
  padding-top: 4.5rem;
  padding-bottom: 4.5rem;
}

.section.hero {
  padding-top: 9.75rem;
}

.section.overflow-none {
  overflow: visible;
}

.section.min-height-50svh {
  min-height: 50svh;
}

.section.bg-dark {
  background-color: var(--header-black);
  color: var(--white);
}

.section.cta-section {
  background-color: var(--brand-green);
  min-height: 100svh;
}

.section.min-height-100svh {
  min-height: 100svh;
}

.section.contact-section {
  background-color: var(--header-black);
  color: var(--white);
  min-height: 50svh;
  padding-top: 9.75rem;
}

.section-wrapper {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 1380px;
  display: flex;
}

.section-wrapper.left-align {
  align-items: flex-start;
}

.section-wrapper.left-align.relative-wrapper {
  overflow: hidden;
}

.section-wrapper.reviews {
  align-items: flex-start;
  overflow: hidden;
}

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

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

.margin-bottom-32 {
  margin-bottom: var(--margin-32);
}

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

.max-width-440 {
  width: 100%;
  max-width: 27.5em;
}

.max-width-1070 {
  width: 100%;
  max-width: 1070px;
}

.max-width-1000 {
  width: 100%;
  max-width: 1000px;
}

.max-width-485 {
  width: 100%;
  max-width: 485px;
}

.max-width-1170 {
  width: 100%;
  max-width: 1170px;
}

.margin-bottom-40 {
  margin-bottom: var(--margin-40);
}

.horizontal-line {
  background-color: var(--gainsboro);
  width: 100%;
  height: 1px;
}

.horizontal-line.green {
  background-color: var(--accent-green);
  opacity: .3;
  margin-bottom: 2rem;
}

.horizontal-line.green.margin-around-48 {
  transform-origin: 0%;
  margin-bottom: var(--margin-48);
  margin-top: var(--margin-48);
}

.max-width-900 {
  width: 100%;
  max-width: 900px;
}

.max-width-600 {
  width: 100%;
  max-width: 600px;
}

.max-width-380 {
  width: 100%;
  max-width: 380px;
}

.margin-bottom-48 {
  margin-bottom: var(--margin-48);
}

.margin-top-8 {
  margin-top: 8px;
}

.margin-bottom-8 {
  margin-bottom: .5rem;
}

.max-width-300 {
  width: 100%;
  max-width: 300px;
}

.max-width-500 {
  width: 100%;
  max-width: 500px;
}

.max-width-315 {
  width: 100%;
  max-width: 315px;
}

.max-width-400 {
  width: 100%;
  max-width: 400px;
}

.navbar {
  z-index: 99;
  background-color: var(--transparent);
  color: var(--white);
  justify-content: center;
  align-items: center;
  display: flex;
  position: fixed;
  inset: 0% 0% auto;
}

.navbar-wrapper {
  background-color: var(--transparent);
  border-bottom-right-radius: 16px;
  border-bottom-left-radius: 16px;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 1380px;
  margin-left: 6vw;
  margin-right: 6vw;
  padding: 16px 12px 16px 16px;
  display: flex;
}

.nav-link {
  padding: 0;
  font-size: 1rem;
}

.nav-link.w--current, .page-template-about .about-link, .page-template-facility-technologies-mounters .technologies-link{
  color: var(--accent-green-2);
  font-weight: 700;
}

.nav-menu {
  grid-column-gap: 32px;
  grid-row-gap: 32px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.hamburger-menu {
  grid-column-gap: .375rem;
  grid-row-gap: .375rem;
  background-color: var(--brand-green);
  border-radius: .25rem;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0 6px;
  display: none;
  position: relative;
}

.menu-bar {
  background-color: var(--white);
  width: 100%;
  height: 1px;
}

.mobile-menu {
  z-index: 98;
  grid-column-gap: 32px;
  grid-row-gap: 32px;
  opacity: 0;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  display: none;
  position: fixed;
  inset: 0%;
}

.text-link {
  text-decoration: none;
}

.link-line {
  background-color: var(--white);
  width: 100%;
  height: 1px;
  transition: transform .4s cubic-bezier(.55, .085, .68, .53);
  transform: translate(-101%);
}

.link-line.absolute {
  position: absolute;
  bottom: 0;
  transform: translate(-100%);
}

.form-block {
  z-index: 1;
  max-width: 380px;
  margin-bottom: 0;
  position: relative;
}

.text-field {
  background-color: var(--header-black);
  color: var(--white);
  -webkit-appearance: none;
  appearance: none;
  border-radius: .25rem;
  height: auto;
  margin-bottom: 2rem;
  padding: .75rem;
  font-size: 1rem;
}

.text-field.margin-bottom-24 {
  margin-bottom: 1.5rem;
}

.image-100 {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.image-100.saturation {
  filter: saturate(0%);
}

.margin-bottom-64 {
  margin-bottom: var(--margin-64);
}

.flex-vertical-start {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.button {
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
  border-top-style: solid;
  border-top-width: 1px;
  border-top-color: var(--brand-green);
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: var(--brand-green);
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: var(--brand-green);
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: var(--brand-green);
  background-color: var(--brand-green);
  color: var(--white);
  text-transform: capitalize;
  cursor: pointer;
  border-radius: 1rem;
  justify-content: center;
  align-items: stretch;
  padding: .25rem .25rem .25rem 1.25rem;
  text-decoration: none;
  transition-property: all;
  transition-duration: .4s;
  transition-timing-function: cubic-bezier(.55, .085, .68, .53);
  display: flex;
  position: relative;
}

.button:hover {
  color: var(--black);
}

.button.white {
  background-color: var(--white);
  color: var(--brand-green);
}

.button.white:hover {
  color: var(--white);
}

.button.show-mobile {
  display: none;
}

.icon-16 {
  justify-content: center;
  align-items: center;
  width: 1rem;
  height: 1rem;
  transition: transform .4s cubic-bezier(.55, .085, .68, .53);
  display: flex;
}

.link-block {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  color: var(--black);
  justify-content: flex-start;
  align-items: center;
  font-weight: 700;
  text-decoration: underline;
  transition: all .3s cubic-bezier(.55, .085, .68, .53);
  display: flex;
  position: relative;
  overflow: hidden;
}

.link-block:hover {
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
}

.link-block.auto {
  margin-top: auto;
}

.link-block.text-white {
  text-underline-offset: .25rem;
}

.link-block.text-white:active {
  text-decoration: none;
}

.link-block.text-white.w--current {
  display: none;
}

.link-block.text-dark-green:active {
  text-decoration: none;
}

.link-block.text-dark-green.w--current {
  display: none;
}

.bottom-line {
  background-color: #ffffff59;
  width: 100%;
  height: 1px;
  transition: transform .3s cubic-bezier(.55, .085, .68, .53);
  position: absolute;
  bottom: 0;
}

.slide-up {
  animation-name: slideup;
  animation-duration: .5s;
  animation-timing-function: ease-out;
  animation-delay: calc(var(--i) * .2s);
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-play-state: running;
  animation-fill-mode: both;
}

.scale-up {
  animation-name: scaleup;
  animation-duration: .5s;
  animation-timing-function: ease-out;
  animation-delay: calc(var(--i) * .2s);
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-play-state: running;
  animation-fill-mode: both;
}

.list-item {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  border-bottom: 1px solid var(--gainsboro);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding-top: 2rem;
  padding-bottom: 2rem;
  padding-left: 1rem;
  display: flex;
}

.list-item.padding-top-2-5rem {
  padding-top: 2.5rem;
}

.list-item.grid {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr .75fr;
  grid-auto-columns: 1fr;
  place-items: center stretch;
  display: grid;
}

.nav-dropdown-wrapper {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
  position: relative;
}

.nav-dropdown-toggle {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  background-color: #0000;
  justify-content: flex-start;
  align-items: center;
  padding: 0;
  display: flex;
}

.caret {
  justify-content: center;
  align-items: center;
  width: 1rem;
  height: 1rem;
  transition: transform .3s cubic-bezier(.55, .085, .68, .53);
  display: flex;
}

.dropdown-menu {
  background-color: var(--white-smoke);
  color: var(--header-black);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  min-width: 250px;
  display: none;
  position: absolute;
  bottom: -1.75rem;
  transform: translate(0%, 100%);
}

.bg-wrapper {
  z-index: -1;
  position: absolute;
  inset: 0%;
  overflow: hidden;
}

.bg-overlay {
  background-color: #00000080;
  position: absolute;
  inset: 0%;
}

.bg-overlay.linear {
  background-color: var(--transparent);
  background-image: linear-gradient(0deg, var(--header-black) 3%, var(--transparent) 63%);
}

.text-white {
  color: var(--white);
}

.button-bg {
  background-color: var(--white);
  border-radius: .75rem;
  flex: none;
  justify-content: center;
  align-items: center;
  width: 2.25rem;
  min-height: 2.25rem;
  display: flex;
  position: relative;
}

.button-bg.green {
  background-color: var(--brand-green);
}

.stats {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  margin-bottom: var(--margin-48);
  flex-flow: row;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.xlarge-text {
  font-weight: 800;
  line-height: 1;
  font-size: var(--xlarge--text);
  margin-bottom: var(--margin-24);
}

.features {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  margin-bottom: var(--margin-32);
  flex-flow: wrap;
  justify-content: center;
  align-items: center;
  width: 66.6667vw;
  max-width: 720px;
  display: flex;
}

.features.left-align {
  justify-content: flex-start;
  align-items: flex-start;
}

.tag {
  background-color: var(--white-smoke);
  color: var(--gray);
  text-align: center;
  letter-spacing: -.01em;
  text-transform: capitalize;
  border-radius: 4rem;
  justify-content: flex-start;
  align-items: center;
  padding: .75rem 1.25rem;
  font-size: .875rem;
  font-weight: 500;
  display: flex;
}

.tag.dark {
  background-color: var(--black);
  color: var(--gainsboro);
}

.tag.industry {
  border-left: 1px solid var(--black);
  background-color: var(--transparent);
  color: var(--black);
  text-align: left;
  border-radius: 0;
  padding-right: 0;
  font-size: 1rem;
  font-weight: 700;
}

.image-wrapper-40 {
  width: 100%;
  padding-top: 40%;
  position: relative;
  overflow: hidden;
}

.absolute-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.absolute-image.grayscale {
  filter: grayscale(25%);
}

.absolute-image.black-and-white-treatment {
  opacity: .5;
  filter: grayscale(80%);
}

.absolute-image.saturation {
  filter: saturate(0%);
}

.field-label {
  margin-bottom: .75rem;
  font-size: 1rem;
  font-weight: 400;
}

.submit-button {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  background-color: var(--brand-green);
  color: var(--white);
  border-radius: 1rem;
  justify-content: flex-start;
  align-items: center;
  margin-top: 2rem;
  padding: .75rem 2rem;
  font-weight: 500;
  text-decoration: none;
  transition: all .3s cubic-bezier(.55, .085, .68, .53);
  display: flex;
}

.submit-button:hover {
  background-color: var(--white);
  color: var(--black);
}

.submit-button.no-margin-top {
  margin-top: 0;
}

.logotype {
  text-transform: uppercase;
  justify-content: flex-start;
  align-items: center;
  width: 8rem;
  display: flex;
}

.footer-grid {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  grid-template-rows: auto;
  grid-template-columns: 1.5fr .75fr .75fr;
  grid-auto-columns: .75fr;
  width: 100%;
  margin-bottom: 4rem;
  display: grid;
}

.footer-link {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  color: var(--white);
  justify-content: flex-start;
  align-items: center;
  font-size: 1rem;
  text-decoration: none;
  transition: all .3s cubic-bezier(.55, .085, .68, .53);
  display: flex;
  position: relative;
  overflow: hidden;
}

.footer-bottom {
  grid-column-gap: 1rem;
  border-top: 1px solid var(--gray);
  color: var(--light-gray);
  justify-content: space-between;
  width: 100%;
  padding-top: 1rem;
  display: flex;
}

.dropdown-link {
  width: 100%;
  padding: 1.75rem 1.5rem;
  font-size: 1rem;
  font-weight: 500;
  transition: all .4s;
}

.dropdown-link:hover {
  background-color: var(--brand-green);
  color: var(--white);
}

.dropdown-link:active {
  box-shadow: inset 0 3px 5px #0003;
}

.dropdown-link.w--current {
  background-color: var(--brand-green);
  color: var(--white);
}

.breadcrumb {
  margin-bottom: var(--margin-64);
  flex-flow: wrap;
  justify-content: flex-start;
  align-self: flex-start;
  align-items: center;
  font-size: .75rem;
  font-weight: 700;
  display: flex;
}

.breadcrumb-link {
  color: var(--light-gray);
  font-weight: 400;
  text-decoration: none;
}

.timeline {
  z-index: 1;
  grid-column-gap: 6rem;
  grid-row-gap: 6rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
  position: relative;
}

.large-text {
  font-weight: 700;
  line-height: 1;
  font-size: var(--large--text);
  margin-bottom: 1rem;
}

.max-width-250 {
  max-width: 250px;
}

.timeline-line {
  z-index: -1;
  background-color: var(--brand-green);
  transform-origin: 50% 0;
  width: 1px;
  height: 84%;
  margin-top: .5rem;
  position: absolute;
  left: -1.75rem;
}

.timeline-bullet {
  z-index: 1;
  color: var(--brand-green);
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
  position: absolute;
  top: 0;
  left: -2.45rem;
}

.image-wrapper-140 {
  width: 100%;
  padding-top: 140%;
  position: relative;
  overflow: hidden;
}

.image-wrapper {
  width: 100%;
  padding-top: 100%;
  position: relative;
  overflow: hidden;
}

.no-margin-bottom {
  margin-bottom: 0;
}

.image-wrapper-50 {
  width: 100%;
  padding-top: 50%;
  position: relative;
  overflow: hidden;
}

.icon-24 {
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
}

.topic-header-large {
  font-size: var(--h3-large);
}

.contact-details-wrapper {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  flex-flow: row;
  grid-template-rows: auto;
  grid-template-columns: 1fr .5fr .5fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: flex-start;
  margin-bottom: 2rem;
  display: grid;
}

.nav-buttons {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.map {
  height: 500px;
}

.text-dark-green {
  color: var(--brand-green);
}

.max-width-200 {
  max-width: 200px;
}

.capabilities-content {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.hero-bg-image {
  object-fit: cover;
  width: 100%;
  height: 130%;
}

.font-size-20 {
  font-size: 1.25rem;
}

.parallax-wrapper {
  position: relative;
  overflow: hidden;
}

.bg-overlay-hero {
  opacity: .1;
  mix-blend-mode: normal;
  background-color: #000;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.bg-overlay-hero.z-index-2 {
  z-index: 2;
  opacity: .45;
  display: flex;
}

.bg-overlay-hero.z-index-2.darkest {
  opacity: .6;
}

.hero-video-wrapper {
  z-index: -1;
  width: 100%;
  height: 100%;
  position: absolute;
  overflow: hidden;
}

.hero-video-wrapper.vimeo {
  width: 1000%;
  padding-bottom: 56.25%;
}

.hero-video-wrapper.vimeo.top {
  z-index: 1;
}

.hero-parallax-wrapper {
  position: relative;
  overflow: hidden;
}

.background-video {
  z-index: 1;
  width: 100%;
  height: 100%;
}

.background-video.hero-video {
  position: absolute;
  inset: 0%;
}

.scroll-trigger {
  pointer-events: none;
  height: 100%;
  min-height: 100vh;
  position: absolute;
  inset: auto 0% 0%;
}

.hero-trigger {
  pointer-events: none;
  height: 100vh;
  position: absolute;
  inset: 0% 0% auto;
}

.hide {
  display: none;
}

.image-inner-wrapper {
  background-color: var(--white);
  width: 100%;
  height: 0%;
  position: absolute;
  bottom: 0;
  left: 0;
}

.image-inner-wrapper.dark {
  background-color: var(--header-black);
}

.margin-top--1-5rem {
  margin-top: -1.5rem;
}

.icon-32 {
  width: 32px;
  height: 32px;
}

.font-weight-500 {
  font-weight: 500;
}

.font-size-16 {
  font-size: 1rem;
}

.text-gray {
  color: var(--gray);
}

.text-dark {
  color: var(--black);
}

.text-green {
  color: var(--accent-green-2);
}

.radius-1rem {
  border-radius: 16px;
}

.align-self-bottom {
  align-self: flex-end;
}

.old-treatment {
  filter: saturate(50%) sepia(33%);
}

.absolute-button-bg {
  background-color: var(--white);
  border-radius: .75rem;
  width: 2.25rem;
  min-height: 2.25rem;
  transition: width .3s cubic-bezier(.55, .085, .68, .53);
  position: absolute;
  top: .25rem;
  bottom: .25rem;
  right: .25rem;
}

.absolute-button-bg.green {
  background-color: var(--brand-green);
}

.button-text {
  align-self: center;
  position: relative;
}

.features-grid {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.feature-content {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  border-bottom-style: solid;
  border-bottom-width: 1px;
  border-bottom-color: var(--gray);
  padding-left: 2rem;
  padding-top: var(--margin-48);
  padding-bottom: var(--margin-48);
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  min-height: 460px;
  display: flex;
}

.feature-image {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 500px;
  height: 350px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.feature-image.top {
  justify-content: flex-start;
  align-items: flex-start;
}

.feature-image.bottom {
  justify-content: flex-end;
  align-items: flex-start;
}

.feature-image.top-right {
  justify-content: flex-start;
  align-items: flex-start;
}

.approach-grid {
  grid-column-gap: 3.5rem;
  grid-row-gap: 3.5rem;
  grid-template-rows: auto;
  grid-template-columns: 2fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.number-bullet {
  margin-bottom: 1.5rem;
}

.point-wrapper {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  padding-bottom: var(--margin-64);
  padding-top: var(--margin-64);
  border-bottom: 1px solid #c7d3b64d;
  flex-flow: column;
  justify-content: space-between;
  display: flex;
}

.point-wrapper.first {
  padding-top: 0;
}

.bg-grey {
  background-color: var(--gray);
}

.sticky {
  position: sticky;
  top: 5rem;
}

.max-width-460 {
  max-width: 460px;
}

.max-width-420 {
  max-width: 420px;
}

.max-width-360 {
  max-width: 360px;
}

.text-light-gray {
  color: var(--light-gray);
}

.max-width-180 {
  max-width: 180px;
}

.approach-image {
  border-radius: 1rem;
  width: 100%;
  padding-top: 80%;
  position: sticky;
  top: 5rem;
  overflow: hidden;
}

.flex-start {
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.flex-start.gap-8 {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
}

.margin-left-1-5rem {
  margin-left: 1.5rem;
}

.margin-top-12 {
  margin-top: 12px;
}

.max-width-330 {
  max-width: 330px;
}

.max-width-270 {
  max-width: 270px;
}

.linked-list-grid {
  grid-column-gap: 3rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: .25fr .5fr .75fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.linked-list {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.linked-list-wrapper {
  flex-flow: column;
  display: flex;
}

.utility-page-wrap {
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  display: flex;
}

.utility-page-content {
  text-align: center;
  flex-direction: column;
  width: 260px;
  display: flex;
}

.utility-page-form {
  flex-direction: column;
  align-items: stretch;
  display: flex;
}

.logo-image {
  margin-bottom: 2rem;
}

.inline-link {
  color: var(--brand-green);
  text-underline-offset: .25rem;
  text-decoration: underline;
}

.feature-image-wrapper {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  border-bottom: 1px solid var(--gray);
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: flex-end;
  padding-right: 2rem;
  display: flex;
}

.tree-svg {
  aspect-ratio: 1059 / 1185;
  opacity: .2;
  width: 600px;
  max-width: 1059px;
  position: absolute;
}

.tree-svg._2 {
  transform: translate(-31px, -10px)rotate(45deg);
}

.tree-svg._3 {
  width: 700px;
  transform: translate(11px, 2px);
}

.tree-svg._4 {
  opacity: .25;
  mix-blend-mode: difference;
  width: 440px;
  left: -230px;
  transform: translate(0, 16px)rotate(90deg);
}

.chip {
  aspect-ratio: 1;
  opacity: .2;
  width: 440px;
  position: absolute;
  transform: rotate(-135deg)translate(-60px, 10px);
}

.chip._2 {
  transform: rotate(45deg);
}

.chip._3 {
  width: 460px;
  transform: rotate(-45deg);
}

.scroller-wrapper {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  max-width: 100%;
  display: flex;
  overflow: hidden;
}

.scroller-camera {
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
  overflow: hidden;
}

.scroller-track-brands {
  flex: 0 auto;
  display: flex;
}

.track-wrapper {
  grid-column-gap: 4rem;
  justify-content: flex-start;
  align-items: center;
  margin-right: 4rem;
  display: flex;
}

.brand-logo {
  min-width: 100px;
  max-height: 32px;
}

.brand-logo.transcelestial {
  min-width: 230px;
}

.brand-logo.intricon {
  min-width: 66px;
}

.brand-logo.besi-global {
  min-width: 150px;
}

.image-wrapper-200 {
  width: 100%;
  padding-top: 200%;
  position: relative;
  overflow: hidden;
}

.min-height-50svh {
  min-height: 50svh;
}

.overflow-hidden {
  overflow: hidden;
}

.video-external-wrapper {
  margin-bottom: var(--margin-48);
  border-radius: 1rem;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 500px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.cta-svg {
  aspect-ratio: 1;
  mix-blend-mode: soft-light;
  width: 33vw;
  max-width: 380px;
  position: absolute;
  right: 0;
  transform: translate(44%)rotate(-270deg);
}

.cta-svg.bottom {
  top: -3px;
  right: 1px;
  transform: none;
}

.cta-svg.bottom-left {
  top: -7px;
  left: -3rem;
  transform: rotate(90deg);
}

.cta-svg.top-left {
  top: auto;
  bottom: 0;
  left: -31px;
  transform: translate(-32%)rotate(90deg);
}

.cta-svg.top {
  bottom: 0;
}

.cta-svg-wrapper {
  position: absolute;
  inset: auto auto 33% 0%;
}

.cta-svg-wrapper.right {
  inset: 33% 0% auto auto;
}

.mobile-nav-link {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  justify-content: flex-start;
  align-items: center;
  font-weight: 700;
  text-decoration: none;
  transition: all .3s cubic-bezier(.55, .085, .68, .53);
  display: flex;
  position: relative;
  overflow: hidden;
}

.mobile-nav-link:hover {
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
}

@media screen and (max-width: 991px) {
  .grid.columns-3.tablet-columns-2 {
    grid-template-columns: 1fr 1fr;
  }

  .grid.tablet-stack, .grid.max-width-900 {
    grid-template-columns: 1fr;
  }

  .nav-link {
    display: none;
  }

  .hamburger-menu {
    display: flex;
  }

  .mobile-menu {
    background-color: var(--header-black);
    opacity: 1;
    color: var(--white);
    padding: 5rem 6vw;
    display: none;
  }

  .flex-vertical-start.gap-48 {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
  }

  .nav-dropdown-wrapper {
    display: none;
  }

  .stats {
    grid-column-gap: 7rem;
    flex-flow: wrap;
    display: flex;
  }

  .features {
    width: 100%;
  }

  .image-wrapper-40 {
    padding-top: 50%;
  }

  .footer-grid {
    grid-row-gap: 2rem;
    grid-template-columns: 1.25fr;
  }

  .timeline-line {
    height: 86%;
  }

  .contact-details-wrapper {
    grid-template-columns: 1fr .75fr .75fr;
  }

  .map {
    height: 400px;
  }

  .features-grid {
    grid-template-columns: .5fr 1fr;
  }

  .feature-content {
    padding-left: 1rem;
  }

  .approach-grid {
    grid-column-gap: 2.5rem;
    grid-row-gap: 2.5rem;
    grid-template-columns: .5fr 1fr;
  }

  .sticky.max-width-440 {
    position: static;
  }

  .approach-image {
    padding-top: 140%;
  }

  .tablet-spacer {
    display: none;
  }

  .linked-list-grid {
    grid-column-gap: 2rem;
    grid-template-columns: .5fr 1fr;
  }

  .feature-image-wrapper {
    padding-right: 1rem;
  }

  .feature-image-wrapper.no-bottom-border {
    border-bottom-style: none;
  }

  .tree-svg._4 {
    transform: translate(0, 24px)rotate(90deg);
  }

  .min-height-50svh {
    display: none;
  }

  .video-external-wrapper {
    height: 400px;
  }

  .cta-svg {
    width: 38vw;
    max-width: 380px;
  }

  .mobile-nav-link.w--current {
    color: var(--accent-green);
  }
}

@media screen and (max-width: 767px) {
  .grid {
    grid-template-columns: 1fr;
  }

  .grid.columns-3.tablet-columns-2 {
    grid-column-gap: 2.5rem;
    grid-row-gap: 2.5rem;
    grid-template-columns: 1fr;
  }

  .grid.landcape-flex {
    flex-flow: column;
    display: flex;
  }

  .section {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }

  .section.hero, .section.contact-section {
    padding-top: 7.5rem;
  }

  .margin-top-8.margin-bottom-32 {
    margin-top: 0;
  }

  .margin-top-8.margin-bottom-32.landscape-top--1-5rem {
    margin-top: -1.5rem;
  }

  .max-width-315.landscape-width-100 {
    max-width: none;
  }

  .brand {
    padding-left: 0;
  }

  .stats {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .tag {
    white-space: normal;
  }

  .image-wrapper-40 {
    padding-top: 60%;
  }

  .footer-grid {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr;
  }

  .footer-bottom {
    grid-row-gap: 1rem;
    flex-flow: column;
  }

  .timeline {
    grid-column-gap: 4rem;
    grid-row-gap: 4rem;
    margin-left: 2.5rem;
  }

  .timeline-line {
    height: 82%;
  }

  .image-wrapper-140 {
    padding-top: 80%;
  }

  .image-wrapper-50 {
    padding-top: 60%;
  }

  .contact-details-wrapper {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    grid-template-columns: 1fr;
  }

  .map {
    height: 300px;
  }

  .capabilities-content {
    padding: 3rem 1.5rem;
  }

  .features-grid {
    grid-template-columns: 1fr 2fr;
  }

  .feature-content {
    min-height: 300px;
  }

  .feature-image {
    justify-content: flex-start;
    align-items: flex-end;
    height: 100%;
  }

  .feature-image.top {
    justify-content: center;
    align-items: flex-start;
  }

  .feature-image.bottom {
    justify-content: flex-start;
    align-items: center;
  }

  .feature-image.top-right {
    justify-content: center;
    align-items: center;
  }

  .approach-grid {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .hide-landscape {
    display: none;
  }

  .margin-top-12 {
    margin-top: 0;
  }

  .linked-list-grid {
    grid-template-columns: 1fr;
    margin-bottom: 0;
  }

  .tree-svg._4 {
    opacity: .15;
    transform: translate(0, 64px)rotate(90deg);
  }

  .brand-logo {
    min-height: auto;
  }

  .image-wrapper-200 {
    padding-top: 80%;
  }

  .min-height-50svh {
    display: none;
  }
}

@media screen and (max-width: 479px) {
  .flex-vertical.text-center.max-width-440 {
    text-align: left;
    justify-content: center;
    align-items: flex-start;
  }

  .section-wrapper.mobile-left {
    justify-content: center;
    align-items: flex-start;
  }

  .text-center.mobile-left, .text-center.text-white.max-width-600 {
    text-align: left;
  }

  .link-line.absolute {
    display: none;
  }

  .button {
    font-size: 1rem;
  }

  .button.show-mobile {
    display: flex;
  }

  .bottom-line {
    display: none;
  }

  .list-item {
    padding-left: 0;
  }

  .list-item.grid {
    grid-column-gap: .75rem;
    grid-row-gap: .75rem;
  }

  .stats {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-flow: column;
  }

  .features {
    justify-content: flex-start;
    align-items: center;
  }

  .tag {
    text-align: left;
    white-space: normal;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .tag.dark.align-left-mobile {
    text-align: left;
  }

  .tag.industry {
    padding-left: .75rem;
  }

  .image-wrapper-40 {
    min-height: 200px;
  }

  .logotype {
    width: 6rem;
  }

  .footer-link {
    text-underline-offset: .25rem;
    text-decoration: underline;
  }

  .footer-bottom {
    grid-row-gap: 1rem;
    flex-flow: wrap;
  }

  .timeline {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
  }

  .image-wrapper-50 {
    min-height: 200px;
  }

  .hide-mobile {
    display: none;
  }

  .capabilities-content {
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    padding: 0;
  }

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

  .features-grid {
    grid-template-columns: auto 1fr;
  }

  .feature-image, .feature-image.top, .feature-image.bottom {
    justify-content: center;
    align-items: center;
  }

  .approach-grid {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    grid-template-columns: auto 1fr;
  }

  .approach-image {
    border-radius: 0;
    flex: none;
    width: 8vw;
    position: relative;
    top: 0;
  }

  .facilities-wrapper {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    display: flex;
  }

  .feature-image-wrapper {
    width: 8vw;
    padding-right: 0;
  }

  .tree-svg {
    opacity: .33;
  }

  .tree-svg._4 {
    opacity: .1;
  }

  .chip {
    opacity: .33;
  }

  .scroller-wrapper {
    margin-top: 2rem;
  }

  .video-external-wrapper {
    height: 300px;
  }

  .cta-svg {
    width: 46vw;
  }
}

#w-node-_64b85056-8143-6472-5143-13018c0b18a2-d1cf7162 {
  align-self: start;
}

#w-node-d56bf4da-2857-cdc1-875a-36023e2845be-d1cf7162, #w-node-f94f0abe-f716-45e8-f61e-9676d8d96c60-d1cf7162 {
  justify-self: end;
}

#w-node-d24c81f0-2a3e-70b1-3559-5c3f2ce9196e-d1cf7162 {
  justify-self: center;
}

#w-node-a0a29a90-d487-1f14-b371-86fc0136d2d1-d1cf7162 {
  align-self: start;
}

#w-node-e28a9f4d-33e6-53d6-dd6a-c92ddfb85e16-00dc4724 {
  grid-area: span 1 / span 3 / span 1 / span 3;
}

#w-node-b2f9620f-4d12-17f3-2788-500298df7b4f-98df7b4c, #w-node-_95b863be-a53b-2dee-998e-ea7c422a5f01-98df7b4c {
  grid-area: span 2 / span 1 / span 2 / span 1;
}

#w-node-b2f9620f-4d12-17f3-2788-500298df7b52-98df7b4c {
  align-self: end;
}

#w-node-_0207f46b-dd70-8d7b-f238-f8b42ae06d20-cfb31be7 {
  align-self: center;
}

#w-node-_69e7b60b-fe88-7bbd-1775-f7208564ab5f-cfb31be7 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_8a45c20c-ca06-a8a2-5559-4e94516b179f-76e37a47 {
  align-self: start;
}

#w-node-_78ab1d0a-b620-9064-df41-6c1bcc1fc5d0-76e37a47 {
  justify-self: end;
}

#w-node-_08e41a73-f6b6-8ba2-3617-707382be1bcb-76e37a47 {
  align-self: end;
}

#w-node-_06cf76f4-16ca-06c4-4168-3b3c315cd511-76e37a47 {
  grid-area: span 2 / span 1 / span 2 / span 1;
  justify-self: end;
}

#w-node-_7959953b-1e30-5891-ef65-c8b75001856b-50018568, #w-node-_7959953b-1e30-5891-ef65-c8b75001856d-50018568 {
  grid-area: span 2 / span 1 / span 2 / span 1;
}

#w-node-_7959953b-1e30-5891-ef65-c8b75001856f-50018568 {
  align-self: end;
}

#w-node-_2ea348cd-7d83-d0ba-5c30-bd9d63811008-39618a38 {
  align-self: start;
}

#w-node-f0baa13b-0524-c0f3-9e50-f9d4059e414d-39618a38 {
  grid-area: 1 / 2 / 2 / 3;
}

#w-node-e3071f31-306e-7e29-914c-80e44cfe0edf-39618a38, #w-node-e3071f31-306e-7e29-914c-80e44cfe0ee9-39618a38 {
  justify-self: end;
}

#w-node-_1c6829ac-fea9-f3dc-a20c-d484629e7be1-2f9db701 {
  align-self: start;
}

#w-node-_1c6829ac-fea9-f3dc-a20c-d484629e7c7e-2f9db701 {
  justify-self: center;
}

#w-node-_4d5e2788-dded-a5ac-7c31-d08966930e17-2f9db701 {
  justify-self: end;
}

@media screen and (max-width: 991px) {
  #w-node-d56bf4da-2857-cdc1-875a-36023e2845be-d1cf7162, #w-node-f94f0abe-f716-45e8-f61e-9676d8d96c60-d1cf7162 {
    justify-self: start;
  }

  #w-node-e28a9f4d-33e6-53d6-dd6a-c92ddfb85e16-00dc4724 {
    grid-column: span 2 / span 2;
  }

  #w-node-_90e2aa57-0eb8-7a2c-4a3a-be4fdb8dd568-00dc4724 {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }
}

@media screen and (max-width: 767px) {
  #w-node-d56bf4da-2857-cdc1-875a-36023e2845be-d1cf7162, #w-node-f94f0abe-f716-45e8-f61e-9676d8d96c60-d1cf7162 {
    justify-self: start;
  }

  #w-node-e28a9f4d-33e6-53d6-dd6a-c92ddfb85e16-00dc4724, #w-node-_90e2aa57-0eb8-7a2c-4a3a-be4fdb8dd568-00dc4724 {
    grid-column: span 1 / span 1;
  }

  #w-node-b2f9620f-4d12-17f3-2788-500298df7b4f-98df7b4c {
    grid-row: span 1 / span 1;
  }

  #w-node-b2f9620f-4d12-17f3-2788-500298df7b52-98df7b4c {
    grid-area: 1 / 1 / 2 / 2;
  }

  #w-node-_78ab1d0a-b620-9064-df41-6c1bcc1fc5d0-76e37a47 {
    justify-self: start;
  }

  #w-node-_0297e9c5-5ed0-0837-f5ee-bbb37e076ac4-58934ae5, #w-node-b9551bdb-4358-cd16-7a95-c0196c327cb5-58934ae5, #w-node-_1614c6d1-5106-d00c-3bea-a7df00208c07-58934ae5 {
    grid-area: 1 / 1 / 2 / 2;
  }

  #w-node-_7959953b-1e30-5891-ef65-c8b75001856b-50018568 {
    grid-row: span 1 / span 1;
  }

  #w-node-_7959953b-1e30-5891-ef65-c8b75001856f-50018568 {
    grid-area: 1 / 1 / 2 / 2;
  }

  #w-node-f0baa13b-0524-c0f3-9e50-f9d4059e414d-39618a38 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }

  #w-node-e3071f31-306e-7e29-914c-80e44cfe0edf-39618a38, #w-node-e3071f31-306e-7e29-914c-80e44cfe0ee9-39618a38, #w-node-_1c6829ac-fea9-f3dc-a20c-d484629e7c75-2f9db701, #w-node-_1c6829ac-fea9-f3dc-a20c-d484629e7c7e-2f9db701, #w-node-_4d5e2788-dded-a5ac-7c31-d08966930e17-2f9db701 {
    justify-self: start;
  }
}

@media screen and (max-width: 479px) {
  #w-node-_64b85056-8143-6472-5143-13018c0b18a2-d1cf7162 {
    align-self: auto;
  }

  #w-node-_69e7b60b-fe88-7bbd-1775-f7208564ab5f-cfb31be7 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }

  #w-node-_2ea348cd-7d83-d0ba-5c30-bd9d63811008-39618a38, #w-node-_1c6829ac-fea9-f3dc-a20c-d484629e7be1-2f9db701 {
    align-self: auto;
  }
}
.disable-button {
  pointer-events: none; 
  opacity: 0.6;         
  cursor: not-allowed;  
}

@font-face {
  font-family: 'Helveticanowdisplay';
  src: url('../fonts/HelveticaNowDisplay-Regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helveticanowdisplay';
  src: url('../fonts/HelveticaNowDisplay-Black.woff') format('woff');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helveticanowdisplay';
  src: url('../fonts/HelveticaNowDisplay-Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helveticanowdisplay';
  src: url('../fonts/HelveticaNowDisplay-ExtraBold.woff') format('woff');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helveticanowdisplay';
  src: url('../fonts/HelveticaNowDisplay-Bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helveticanowdisplay Regita';
  src: url('../fonts/HelveticaNowDisplay-RegIta.woff') format('woff');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}