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

@font-face {
  font-family: Inter;
  src: url('../fonts/Inter_18pt-Regular.ttf') format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Inter;
  src: url('../fonts/Inter_18pt-Medium.ttf') format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Inter;
  src: url('../fonts/Inter_18pt-SemiBold.ttf') format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

:root {
  --neutral-100: white;
  --_typography---text-large--font-family: Inter, Arial, sans-serif;
  --neutral-200: #2a2626;
  --_typography---text-large--font-size: 1.125rem;
  --_typography---text-large--line-height: 140%;
  --_typography---text-large--weight: 500;
  --_typography---text-large--letter-spacing: -.031rem;
  --_typography---heading-h1--font-family: Anton, Arial, sans-serif;
  --_typography---heading-h1--color: var(--neutral-200);
  --_typography---heading-h1--font-size: 12.5rem;
  --_typography---heading-h1--line-height: 110%;
  --_typography---heading-h1--weight: 400;
  --_typography---heading-h1--letter-spacing: -.25rem;
  --_typography---heading-h2--font-family: Anton, Arial, sans-serif;
  --_typography---heading-h2--color: var(--neutral-200);
  --_typography---heading-h2--font-size: 5.313rem;
  --_typography---heading-h2--line-height: 110%;
  --_typography---heading-h2--weight: 400;
  --_typography---heading-h2--letter-spacing: -.08rem;
  --_typography---heading-h3--font-family: Anton, Arial, sans-serif;
  --_typography---heading-h3--color: var(--neutral-200);
  --_typography---heading-h3--font-size: 4.375rem;
  --_typography---heading-h3--line-height: 110%;
  --_typography---heading-h3--weight: 400;
  --_typography---heading-h3--letter-spacing: 0rem;
  --_typography---heading-h4--font-family: Anton, Arial, sans-serif;
  --_typography---heading-h4--color: var(--neutral-200);
  --_typography---heading-h4--font-size: 3.125rem;
  --_typography---heading-h4--line-height: 110%;
  --_typography---heading-h4--weight: 400;
  --_typography---heading-h4--letter-spacing: 0rem;
  --_typography---heading-h5--font-family: Anton, Arial, sans-serif;
  --_typography---heading-h5--color: var(--neutral-200);
  --_typography---heading-h5--font-size: 2.5rem;
  --_typography---heading-h5--line-height: 110%;
  --_typography---heading-h5--weight: 400;
  --_typography---heading-h5--letter-spacing: 0rem;
  --_typography---heading-h6--font-family: Anton, Arial, sans-serif;
  --_typography---heading-h6--color: var(--neutral-200);
  --_typography---heading-h6--font-size: 1.875rem;
  --_typography---heading-h6--line-height: 110%;
  --_typography---heading-h6--weight: 400;
  --_typography---heading-h6--letter-spacing: 0rem;
  --_typography---text-large--color: var(--neutral-200);
  --neutral-400: #1d623c;
  --neutral-500: #dde8e2;
  --_typography---text-small--font-size: .875rem;
  --_spacing---space-l: 3.125rem;
  --_gap---gap-xl: 3.125rem;
  --_gap---gap-s: .625rem;
  --_typography---text-medium--font-size: 1rem;
  --_typography---text-medium--line-height: 130%;
  --_typography---text-medium--weight: 500;
  --_typography---text-medium--letter-spacing: -.031rem;
  --_spacing---space-xs: .625rem;
  --_spacing---space-s: 1.875rem;
  --_spacing---space-m: 3.125rem;
  --_typography---text-huge--font-family: Anton, Arial, sans-serif;
  --_typography---text-huge--color: var(--neutral-100);
  --_typography---text-huge--font-size: 2.5rem;
  --_typography---text-huge--line-height: 110%;
  --_typography---text-huge--weight: 400;
  --_typography---text-huge--letter-spacing: 0rem;
  --_typography---text-medium--font-family: Inter, Arial, sans-serif;
  --_typography---text-medium--color: var(--neutral-200);
  --neutral-300: #2a2626b3;
  --_spacing---space-xl: 6.25rem;
  --_spacing---space-xxl: 9.375rem;
  --_typography---text-small--font-family: Inter, Arial, sans-serif;
  --_typography---text-small--color: var(--neutral-200);
  --_typography---text-small--line-height: 110%;
  --_typography---text-small--weight: 500;
  --_typography---text-small--letter-spacing: -.031rem;
  --_gap---gap-m: 1.25rem;
  --_gap---gap-l: 1.875rem;
}

.w-layout-layout {
  grid-row-gap: 20px;
  grid-column-gap: 20px;
  grid-auto-columns: 1fr;
  justify-content: center;
  padding: 20px;
}

.w-layout-cell {
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

body {
  background-color: var(--neutral-100);
  font-family: var(--_typography---text-large--font-family);
  color: var(--neutral-200);
  font-size: var(--_typography---text-large--font-size);
  line-height: var(--_typography---text-large--line-height);
  font-weight: var(--_typography---text-large--weight);
  letter-spacing: var(--_typography---text-large--letter-spacing);
}

h1 {
  font-family: var(--_typography---heading-h1--font-family);
  color: var(--_typography---heading-h1--color);
  font-size: var(--_typography---heading-h1--font-size);
  line-height: var(--_typography---heading-h1--line-height);
  font-weight: var(--_typography---heading-h1--weight);
  letter-spacing: var(--_typography---heading-h1--letter-spacing);
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
}

h2 {
  font-family: var(--_typography---heading-h2--font-family);
  color: var(--_typography---heading-h2--color);
  font-size: var(--_typography---heading-h2--font-size);
  line-height: var(--_typography---heading-h2--line-height);
  font-weight: var(--_typography---heading-h2--weight);
  letter-spacing: var(--_typography---heading-h2--letter-spacing);
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
}

h3 {
  font-family: var(--_typography---heading-h3--font-family);
  color: var(--_typography---heading-h3--color);
  font-size: var(--_typography---heading-h3--font-size);
  line-height: var(--_typography---heading-h3--line-height);
  font-weight: var(--_typography---heading-h3--weight);
  letter-spacing: var(--_typography---heading-h3--letter-spacing);
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
}

h4 {
  font-family: var(--_typography---heading-h4--font-family);
  color: var(--_typography---heading-h4--color);
  font-size: var(--_typography---heading-h4--font-size);
  line-height: var(--_typography---heading-h4--line-height);
  font-weight: var(--_typography---heading-h4--weight);
  letter-spacing: var(--_typography---heading-h4--letter-spacing);
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
}

h5 {
  font-family: var(--_typography---heading-h5--font-family);
  color: var(--_typography---heading-h5--color);
  font-size: var(--_typography---heading-h5--font-size);
  line-height: var(--_typography---heading-h5--line-height);
  font-weight: var(--_typography---heading-h5--weight);
  letter-spacing: var(--_typography---heading-h5--letter-spacing);
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
}

h6 {
  font-family: var(--_typography---heading-h6--font-family);
  color: var(--_typography---heading-h6--color);
  font-size: var(--_typography---heading-h6--font-size);
  line-height: var(--_typography---heading-h6--line-height);
  font-weight: var(--_typography---heading-h6--weight);
  letter-spacing: var(--_typography---heading-h6--letter-spacing);
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
}

p {
  font-family: var(--_typography---text-large--font-family);
  color: var(--_typography---text-large--color);
  font-size: var(--_typography---text-large--font-size);
  line-height: var(--_typography---text-large--line-height);
  font-weight: var(--_typography---text-large--weight);
  letter-spacing: var(--_typography---text-large--letter-spacing);
  margin-bottom: 0;
}

a {
  font-family: var(--_typography---text-large--font-family);
  color: var(--_typography---text-large--color);
  font-size: var(--_typography---heading-h6--font-size);
  line-height: var(--_typography---text-large--line-height);
  font-weight: var(--_typography---text-large--weight);
  letter-spacing: var(--_typography---text-large--letter-spacing);
  text-decoration: underline;
}

ul, ol {
  font-family: var(--_typography---text-large--font-family);
  color: var(--_typography---text-large--color);
  font-size: var(--_typography---text-large--font-size);
  line-height: var(--_typography---text-large--line-height);
  font-weight: var(--_typography---text-large--weight);
  letter-spacing: var(--_typography---text-large--letter-spacing);
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 2rem;
}

li {
  font-family: var(--_typography---text-large--font-family);
  color: var(--_typography---text-large--color);
  font-size: var(--_typography---text-large--font-size);
  line-height: var(--_typography---text-large--line-height);
  font-weight: var(--_typography---text-large--weight);
  letter-spacing: var(--_typography---text-large--letter-spacing);
}

img {
  object-fit: cover;
  width: 100%;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  display: inline-block;
}

strong {
  font-family: var(--_typography---text-large--font-family);
  color: var(--_typography---text-large--color);
  font-size: var(--_typography---text-large--font-size);
  line-height: var(--_typography---text-large--line-height);
  font-weight: var(--_typography---text-large--weight);
  letter-spacing: var(--_typography---text-large--letter-spacing);
  -webkit-text-stroke-width: .04rem;
  -webkit-text-stroke-color: var(--_typography---text-large--color);
}

em {
  font-family: var(--_typography---text-large--font-family);
  color: var(--_typography---text-large--color);
  font-size: var(--_typography---text-large--font-size);
  line-height: var(--_typography---text-large--line-height);
  font-style: italic;
  font-weight: var(--_typography---text-large--weight);
  letter-spacing: var(--_typography---text-large--letter-spacing);
}

blockquote {
  border-left: .5rem solid var(--neutral-400);
  background-color: var(--neutral-500);
  font-family: var(--_typography---text-large--font-family);
  color: var(--_typography---text-large--color);
  font-size: var(--_typography---text-large--font-size);
  line-height: var(--_typography---text-large--line-height);
  font-weight: var(--_typography---text-large--weight);
  letter-spacing: var(--_typography---text-large--letter-spacing);
  margin-bottom: .5rem;
  padding: 1.3rem 1.6rem;
}

figcaption {
  font-size: var(--_typography---text-small--font-size);
  text-align: center;
  margin-top: 5px;
}

.body {
  --neutral-100: white;
  --neutral-200: #2a2626;
  --neutral-400: #1d623c;
  --neutral-500: #dde8e2;
  --neutral-300: #2a2626b3;
  --_spacing---space-l: 3.125rem;
  --_spacing---space-xs: .625rem;
  --_spacing---space-s: 1.875rem;
  --_spacing---space-m: 3.125rem;
  --_spacing---space-xl: 6.25rem;
  --_spacing---space-xxl: 9.375rem;
  --_gap---gap-xl: 3.125rem;
  --_gap---gap-s: .625rem;
  --_gap---gap-m: 1.25rem;
  --_gap---gap-l: 1.875rem;
  --_typography---text-large--font-family: Inter, Arial, sans-serif;
  --_typography---text-large--font-size: 1.125rem;
  --_typography---text-large--line-height: 140%;
  --_typography---text-large--weight: 500;
  --_typography---text-large--letter-spacing: -.031rem;
  --_typography---heading-h1--font-family: Anton, Arial, sans-serif;
  --_typography---heading-h1--color: var(--neutral-200);
  --_typography---heading-h1--font-size: 12.5rem;
  --_typography---heading-h1--line-height: 110%;
  --_typography---heading-h1--weight: 400;
  --_typography---heading-h1--letter-spacing: -.25rem;
  --_typography---heading-h2--font-family: Anton, Arial, sans-serif;
  --_typography---heading-h2--color: var(--neutral-200);
  --_typography---heading-h2--font-size: 5.313rem;
  --_typography---heading-h2--line-height: 110%;
  --_typography---heading-h2--weight: 400;
  --_typography---heading-h2--letter-spacing: -.08rem;
  --_typography---heading-h3--font-family: Anton, Arial, sans-serif;
  --_typography---heading-h3--color: var(--neutral-200);
  --_typography---heading-h3--font-size: 4.375rem;
  --_typography---heading-h3--line-height: 110%;
  --_typography---heading-h3--weight: 400;
  --_typography---heading-h3--letter-spacing: 0rem;
  --_typography---heading-h4--font-family: Anton, Arial, sans-serif;
  --_typography---heading-h4--color: var(--neutral-200);
  --_typography---heading-h4--font-size: 3.125rem;
  --_typography---heading-h4--line-height: 110%;
  --_typography---heading-h4--weight: 400;
  --_typography---heading-h4--letter-spacing: 0rem;
  --_typography---heading-h5--font-family: Anton, Arial, sans-serif;
  --_typography---heading-h5--color: var(--neutral-200);
  --_typography---heading-h5--font-size: 2.5rem;
  --_typography---heading-h5--line-height: 110%;
  --_typography---heading-h5--weight: 400;
  --_typography---heading-h5--letter-spacing: 0rem;
  --_typography---heading-h6--font-family: Anton, Arial, sans-serif;
  --_typography---heading-h6--color: var(--neutral-200);
  --_typography---heading-h6--font-size: 1.875rem;
  --_typography---heading-h6--line-height: 110%;
  --_typography---heading-h6--weight: 400;
  --_typography---heading-h6--letter-spacing: 0rem;
  --_typography---text-large--color: var(--neutral-200);
  --_typography---text-small--font-size: .875rem;
  --_typography---text-medium--font-size: 1rem;
  --_typography---text-medium--line-height: 130%;
  --_typography---text-medium--weight: 500;
  --_typography---text-medium--letter-spacing: -.031rem;
  --_typography---text-huge--font-family: Anton, Arial, sans-serif;
  --_typography---text-huge--color: var(--neutral-100);
  --_typography---text-huge--font-size: 2.5rem;
  --_typography---text-huge--line-height: 110%;
  --_typography---text-huge--weight: 400;
  --_typography---text-huge--letter-spacing: 0rem;
  --_typography---text-medium--font-family: Inter, Arial, sans-serif;
  --_typography---text-medium--color: var(--neutral-200);
  --_typography---text-small--font-family: Inter, Arial, sans-serif;
  --_typography---text-small--color: var(--neutral-200);
  --_typography---text-small--line-height: 110%;
  --_typography---text-small--weight: 500;
  --_typography---text-small--letter-spacing: -.031rem;
}

.padding-global {
  z-index: 2;
  padding-right: var(--_spacing---space-l);
  padding-left: var(--_spacing---space-l);
  font-family: var(--_typography---text-large--font-family);
}

.container-large {
  width: 100%;
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
}

.hero_component {
  flex-flow: column;
  display: flex;
}

.hero_intro-layout {
  grid-column-gap: var(--_gap---gap-xl);
  grid-row-gap: var(--_gap---gap-xl);
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.hero_intro-left {
  width: 100%;
  max-width: 45rem;
}

.hero_intro-right {
  flex-flow: column;
  width: 100%;
  max-width: 9rem;
}

.hero_social-list {
  grid-column-gap: var(--_gap---gap-s);
  grid-row-gap: var(--_gap---gap-s);
  flex-flow: column;
  display: flex;
}

.hero_social-link {
  grid-column-gap: var(--_gap---gap-s);
  grid-row-gap: var(--_gap---gap-s);
  color: var(--neutral-200);
  font-size: var(--_typography---text-medium--font-size);
  line-height: var(--_typography---text-medium--line-height);
  font-weight: var(--_typography---text-medium--weight);
  letter-spacing: var(--_typography---text-medium--letter-spacing);
  cursor: pointer;
  justify-content: flex-start;
  align-items: center;
  text-decoration: none;
  transition: all .35s;
  display: flex;
}

.hero_social-link:hover {
  opacity: .6;
  text-decoration: underline;
}

.hero_social-line {
  background-color: var(--neutral-200);
  width: 100%;
  max-width: 2.25rem;
  height: .063rem;
}

.margin-bottom.margin-small {
  padding-bottom: var(--_spacing---space-xs);
}

.margin-bottom.margin-medium {
  padding-bottom: var(--_spacing---space-s);
}

.spacer-medium {
  padding-bottom: var(--_spacing---space-m);
}

.heading-style-h1.is-center {
  text-align: center;
}

.heading-style-h1._404 {
  font-size: var(--_typography---heading-h3--font-size);
  letter-spacing: var(--_typography---heading-h3--letter-spacing);
}

.hero_visuals-grid {
  grid-column-gap: var(--_gap---gap-s);
  grid-row-gap: var(--_gap---gap-s);
  grid-template-rows: auto;
  grid-template-columns: 1fr .5fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.heading-wrapper {
  flex-flow: column;
  align-items: stretch;
  display: flex;
}

.image {
  transition: all .4s;
}

.image:hover {
  transform: scale(1.1);
}

.hero_image-wrapper {
  overflow: hidden;
}

.hero_card {
  background-color: var(--neutral-200);
  background-image: url('../images/hero_gradient_1hero_gradient.avif');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-end;
  display: flex;
  position: relative;
}

.hero_card-content {
  z-index: 2;
  width: 100%;
  max-width: 15rem;
  position: absolute;
  bottom: 2rem;
}

.text-size-huge {
  font-family: var(--_typography---text-huge--font-family);
  color: var(--_typography---text-huge--color);
  font-size: var(--_typography---text-huge--font-size);
  line-height: var(--_typography---text-huge--line-height);
  font-weight: var(--_typography---text-huge--weight);
  letter-spacing: var(--_typography---text-huge--letter-spacing);
  text-transform: uppercase;
}

.text-size-huge.is-black {
  color: var(--neutral-200);
}

.text-size-medium {
  font-family: var(--_typography---text-medium--font-family);
  color: var(--_typography---text-medium--color);
  font-size: var(--_typography---text-medium--font-size);
  line-height: var(--_typography---text-medium--line-height);
  font-weight: var(--_typography---text-medium--weight);
  letter-spacing: var(--_typography---text-medium--letter-spacing);
}

.text-size-medium.is-white {
  color: var(--neutral-100);
  text-transform: uppercase;
}

.text-size-medium.is-white.is-center {
  text-align: center;
}

.text-size-medium.is-gray {
  color: var(--neutral-300);
  text-transform: uppercase;
}

.spacer-large {
  padding-bottom: var(--_spacing---space-xl);
}

.spacer-huge {
  padding-bottom: var(--_spacing---space-xxl);
}

.hero_marquee-track {
  grid-column-gap: var(--_gap---gap-s);
  grid-row-gap: var(--_gap---gap-s);
  background-color: var(--neutral-400);
  align-items: center;
  display: flex;
  overflow: hidden;
}

.hero_marquee-list {
  grid-column-gap: var(--_gap---gap-s);
  grid-row-gap: var(--_gap---gap-s);
  background-color: var(--neutral-400);
  flex: none;
  align-items: center;
  padding-top: 1.125rem;
  padding-bottom: 1.125rem;
  display: flex;
}

.text-size-small {
  font-family: var(--_typography---text-small--font-family);
  color: var(--_typography---text-small--color);
  font-size: var(--_typography---text-small--font-size);
  line-height: var(--_typography---text-small--line-height);
  font-weight: var(--_typography---text-small--weight);
  letter-spacing: var(--_typography---text-small--letter-spacing);
  text-transform: uppercase;
}

.text-size-small.is-white {
  color: var(--neutral-100);
  font-size: var(--_typography---text-small--font-size);
  letter-spacing: var(--_typography---text-small--letter-spacing);
}

.text-size-small.is-white.is-center {
  text-align: center;
}

.marquee-divider {
  background-color: var(--neutral-100);
  width: .625rem;
  height: .625rem;
}

.spacer-small {
  padding-bottom: var(--_spacing---space-s);
}

.services_component {
  flex-flow: column;
  display: flex;
}

.heading-style-h2.is-center {
  text-align: center;
}

.heading-style-h2.is-center.is-white {
  color: var(--neutral-100);
}

.is-green {
  color: var(--neutral-400);
}

.services_intro-layout {
  grid-column-gap: var(--_gap---gap-xl);
  grid-row-gap: var(--_gap---gap-xl);
  justify-content: space-between;
  align-items: stretch;
  display: flex;
}

.services_intro-left {
  grid-column-gap: var(--_gap---gap-xl);
  grid-row-gap: var(--_gap---gap-xl);
  flex-flow: column;
  display: flex;
}

.services_intro-right {
  grid-column-gap: var(--_gap---gap-m);
  grid-row-gap: var(--_gap---gap-m);
  flex-flow: column;
  width: 100%;
  max-width: 33rem;
  display: flex;
}

.text-size-large.is-center {
  text-align: center;
}

.text-size-large.is-italic {
  font-style: italic;
}

.text-size-large.is-superscript, .text-size-large.is-subscript {
  font-size: var(--_typography---text-small--font-size);
}

.services_image-wrapper {
  width: 100%;
  max-width: 40.625rem;
  height: 100%;
  max-height: 12.063rem;
  overflow: hidden;
}

.services_intro-content {
  width: 100%;
  max-width: 32.625rem;
}

.services_list {
  grid-column-gap: var(--_gap---gap-m);
  grid-row-gap: var(--_gap---gap-m);
  flex-flow: column;
  display: flex;
}

.services_item {
  grid-column-gap: var(--_gap---gap-m);
  grid-row-gap: var(--_gap---gap-m);
  background-color: var(--neutral-500);
  justify-content: space-between;
  align-items: center;
  padding: 1.875rem;
  display: flex;
}

.projects_list {
  grid-column-gap: var(--_gap---gap-m);
  grid-row-gap: var(--_gap---gap-xl);
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.projects_link {
  grid-column-gap: var(--_gap---gap-s);
  grid-row-gap: var(--_gap---gap-s);
  cursor: pointer;
  flex-flow: column;
  text-decoration: none;
  display: flex;
}

.projects_image-wrapper {
  aspect-ratio: 1;
  width: 100%;
  max-width: 39.375rem;
  height: 100%;
  max-height: 39.375rem;
  overflow: hidden;
}

.project_heading {
  flex-flow: column;
  transition: all .35s;
  display: flex;
}

.project_heading:hover {
  transform: translate(1.5rem);
}

.section_footer {
  z-index: 1;
  background-color: var(--neutral-200);
}

.marquee_component {
  z-index: 2;
}

.footer_top-layout {
  grid-column-gap: var(--_gap---gap-m);
  grid-row-gap: var(--_gap---gap-m);
  justify-content: space-between;
  align-items: stretch;
  display: flex;
}

.footer_cta-wrapper {
  grid-column-gap: var(--_gap---gap-l);
  grid-row-gap: var(--_gap---gap-l);
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  max-width: 46.25rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.footer_logo-wrapper {
  aspect-ratio: 1;
  width: 100%;
  max-width: 5.25rem;
  height: 100%;
  max-height: 5.25rem;
  overflow: hidden;
}

.button {
  border: .063rem solid var(--neutral-400);
  background-color: var(--neutral-400);
  font-family: var(--_typography---text-small--font-family);
  color: var(--neutral-100);
  font-size: var(--_typography---text-small--font-size);
  line-height: var(--_typography---text-small--line-height);
  font-weight: var(--_typography---text-small--weight);
  letter-spacing: var(--_typography---text-small--letter-spacing);
  text-transform: uppercase;
  cursor: pointer;
  padding: .938rem 1.25rem;
  transition: all .35s;
}

.button:hover {
  border: .063rem solid var(--neutral-400);
  background-color: var(--neutral-200);
}

.button.is-form-submit {
  height: 3.75rem;
}

.footer_nav-list {
  grid-column-gap: var(--_gap---gap-m);
  grid-row-gap: var(--_gap---gap-m);
  flex-flow: row;
  justify-content: center;
  align-items: center;
  display: flex;
}

.footer_nav-link {
  font-family: var(--_typography---text-small--font-family);
  color: var(--neutral-100);
  font-size: var(--_typography---text-small--font-size);
  line-height: var(--_typography---text-small--line-height);
  font-weight: var(--_typography---text-small--weight);
  letter-spacing: var(--_typography---text-small--letter-spacing);
  text-transform: uppercase;
  text-decoration: none;
}

.footer_nav-link.is-gray {
  opacity: .7;
  cursor: pointer;
  transition: all .35s;
}

.footer_nav-link.is-gray:hover {
  opacity: 1;
}

.project_intro {
  width: 100%;
  max-width: 50rem;
  margin-left: auto;
  margin-right: auto;
}

.project_meta-grid {
  grid-column-gap: var(--_gap---gap-m);
  grid-row-gap: var(--_gap---gap-m);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.project_meta-item {
  border-bottom: .125rem solid var(--neutral-400);
  padding-bottom: 1rem;
}

.project_gallery-grid {
  grid-column-gap: var(--_gap---gap-s);
  grid-row-gap: var(--_gap---gap-s);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.project_rich-text h1, .project_rich-text h2, .project_rich-text h3, .project_rich-text p {
  margin-bottom: 2rem;
}

.project_rich-text blockquote {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.project_rich-text ol, .project_rich-text ul {
  margin-bottom: 2rem;
}

.project_rich-text h4, .project_rich-text h5 {
  margin-bottom: 1.5rem;
}

.project_rich-text h6 {
  margin-bottom: 1rem;
}

.project_featured-image-wrapper {
  width: 100%;
  max-width: 100%;
  height: 100%;
  max-height: 37.5rem;
  overflow: hidden;
}

.project-related_list {
  grid-column-gap: var(--_gap---gap-m);
  grid-row-gap: var(--_gap---gap-m);
  flex-flow: column;
  justify-content: flex-start;
  align-items: stretch;
  display: flex;
}

.project-related_link {
  justify-content: space-between;
  align-items: stretch;
  text-decoration: none;
  display: block;
}

.contact_form-wrapper {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 35rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.contact_form-block {
  width: 100%;
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;
}

.contact_form {
  grid-column-gap: var(--_gap---gap-s);
  grid-row-gap: var(--_gap---gap-s);
  flex-flow: column;
  display: flex;
}

.form_input {
  border: .063rem solid var(--neutral-200);
  height: 3.75rem;
  margin-bottom: 0;
  padding: 1.125rem 1.25rem;
}

.form_input:active {
  font-size: var(--_typography---text-large--font-size);
}

.form_input::placeholder {
  font-family: var(--_typography---text-large--font-family);
  color: var(--_typography---text-large--color);
  font-size: var(--_typography---text-large--font-size);
  line-height: var(--_typography---text-large--line-height);
  font-weight: var(--_typography---text-large--weight);
  letter-spacing: var(--_typography---text-large--letter-spacing);
}

.form_input:lang(en) {
  font-size: var(--_typography---text-large--font-size);
}

.form_input.is-text-area {
  height: 12rem;
}

.form_success, .form_error {
  background-color: var(--neutral-200);
  padding: 1.3rem;
}

.form_success-message, .form_error-message {
  color: var(--neutral-100);
  text-align: center;
}

.navbar {
  background-color: var(--neutral-100);
  padding-top: .3rem;
}

.navbar_container {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.navbar_logo-link {
  width: 7.563rem;
  height: 2.25rem;
}

.navbar_menu {
  align-items: center;
  display: flex;
}

.navbar_link {
  font-family: var(--_typography---text-small--font-family);
  color: var(--_typography---text-small--color);
  font-size: var(--_typography---text-small--font-size);
  line-height: var(--_typography---text-small--line-height);
  font-weight: var(--_typography---text-small--weight);
  letter-spacing: var(--_typography---text-small--letter-spacing);
  text-transform: uppercase;
  cursor: pointer;
  padding: 1.3rem 1.4rem;
  transition: all .35s;
}

.navbar_link:hover {
  opacity: .6;
  text-decoration: underline;
}

.navbar_link.w--current:lang(en) {
  color: var(--neutral-200);
}

.navbar_menu-wrapper {
  grid-column-gap: var(--_gap---gap-l);
  grid-row-gap: var(--_gap---gap-l);
  align-items: center;
  display: flex;
}

.utility-page-wrap {
  width: 100vw;
  max-width: 80rem;
  height: 100vh;
  max-height: 100%;
  padding-right: var(--_spacing---space-l);
  padding-left: var(--_spacing---space-l);
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.utility-page-content {
  grid-column-gap: var(--_gap---gap-m);
  grid-row-gap: var(--_gap---gap-m);
  text-align: center;
  flex-direction: column;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.utility-page-form {
  grid-column-gap: var(--_gap---gap-s);
  grid-row-gap: var(--_gap---gap-s);
  flex-direction: column;
  align-items: stretch;
  display: flex;
}

.guide_intro-layout {
  grid-column-gap: var(--_gap---gap-xl);
  grid-row-gap: var(--_gap---gap-xl);
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.guide_list {
  grid-column-gap: var(--_gap---gap-s);
  grid-row-gap: var(--_gap---gap-s);
  flex-flow: column;
  align-items: stretch;
  display: flex;
}

.guide_item {
  grid-column-gap: var(--_gap---gap-m);
  grid-row-gap: var(--_gap---gap-m);
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.license_list {
  grid-column-gap: var(--_gap---gap-l);
  grid-row-gap: var(--_gap---gap-l);
  flex-flow: column;
  width: 100%;
  display: flex;
}

.license_item {
  grid-column-gap: var(--_gap---gap-m);
  grid-row-gap: var(--_gap---gap-m);
  flex-flow: column;
  align-items: stretch;
  display: flex;
}

.utility_link {
  font-size: var(--_typography---text-medium--font-size);
}

.style_color-list {
  grid-column-gap: var(--_gap---gap-s);
  grid-row-gap: var(--_gap---gap-s);
  flex-flow: wrap;
  display: flex;
}

.style_color-item {
  grid-column-gap: var(--_gap---gap-s);
  grid-row-gap: var(--_gap---gap-s);
  flex-flow: column;
  display: flex;
}

.style_color {
  border: .063rem solid var(--neutral-200);
  background-color: var(--neutral-200);
  width: 12rem;
  height: 12rem;
}

.style_color._02 {
  background-color: var(--neutral-100);
}

.style_color._03 {
  background-color: var(--neutral-400);
}

.style_color._04 {
  background-color: var(--neutral-300);
}

.style_color._05 {
  background-color: var(--neutral-500);
}

.style_color.is-footer {
  height: 100%;
  padding-top: var(--_spacing---space-xs);
  padding-bottom: var(--_spacing---space-xs);
  flex-flow: column;
  align-items: center;
  display: flex;
}

.system_image-wrapper {
  width: 10rem;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
}

.text_bold {
  -webkit-text-stroke-width: .04rem;
}

.text-block {
  font-family: var(--_typography---heading-h1--font-family);
  font-size: var(--_typography---text-large--font-size);
}

.heading, .block-quote {
  font-size: var(--_typography---heading-h3--font-size);
}

.paragraph {
  color: var(--neutral-300);
  font-size: var(--_typography---heading-h4--line-height);
}

.paragraph-2 {
  color: var(--neutral-300);
  font-size: var(--_typography---heading-h5--line-height);
}

.paragraph-3 {
  font-family: var(--_typography---text-medium--font-family);
  color: var(--neutral-300);
  font-size: var(--_typography---text-medium--line-height);
  font-style: normal;
  font-weight: var(--_typography---heading-h6--weight);
  flex: 0 auto;
}

.paragraph-4 {
  font-style: italic;
}

.paragraph-5 {
  color: var(--neutral-300);
  font-weight: var(--_typography---text-medium--weight);
}

.paragraph-6 {
  font-family: var(--_typography---text-medium--font-family);
  font-size: var(--_typography---heading-h6--font-size);
}

.paragraph-7 {
  font-family: var(--_typography---text-large--font-family);
  font-size: var(--_typography---text-large--font-size);
}

.paragraph-8 {
  font-size: var(--_typography---heading-h6--font-size);
}

@media screen and (min-width: 1440px) {
  .body {
    --neutral-100: white;
    --neutral-200: #2a2626;
    --neutral-400: #1d623c;
    --neutral-500: #dde8e2;
    --neutral-300: #2a2626b3;
    --_spacing---space-l: 3.125rem;
    --_spacing---space-xs: .625rem;
    --_spacing---space-s: 1.875rem;
    --_spacing---space-m: 3.125rem;
    --_spacing---space-xl: 6.25rem;
    --_spacing---space-xxl: 9.375rem;
    --_gap---gap-xl: 3.125rem;
    --_gap---gap-s: .625rem;
    --_gap---gap-m: 1.25rem;
    --_gap---gap-l: 1.875rem;
    --_typography---text-large--font-family: Inter, Arial, sans-serif;
    --_typography---text-large--font-size: 1.125rem;
    --_typography---text-large--line-height: 140%;
    --_typography---text-large--weight: 500;
    --_typography---text-large--letter-spacing: -.031rem;
    --_typography---heading-h1--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h1--color: var(--neutral-200);
    --_typography---heading-h1--font-size: 12.5rem;
    --_typography---heading-h1--line-height: 110%;
    --_typography---heading-h1--weight: 400;
    --_typography---heading-h1--letter-spacing: -.25rem;
    --_typography---heading-h2--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h2--color: var(--neutral-200);
    --_typography---heading-h2--font-size: 5.313rem;
    --_typography---heading-h2--line-height: 110%;
    --_typography---heading-h2--weight: 400;
    --_typography---heading-h2--letter-spacing: 0rem;
    --_typography---heading-h3--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h3--color: var(--neutral-200);
    --_typography---heading-h3--font-size: 4.375rem;
    --_typography---heading-h3--line-height: 110%;
    --_typography---heading-h3--weight: 400;
    --_typography---heading-h3--letter-spacing: 0rem;
    --_typography---heading-h4--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h4--color: var(--neutral-200);
    --_typography---heading-h4--font-size: 3.125rem;
    --_typography---heading-h4--line-height: 110%;
    --_typography---heading-h4--weight: 400;
    --_typography---heading-h4--letter-spacing: 0rem;
    --_typography---heading-h5--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h5--color: var(--neutral-200);
    --_typography---heading-h5--font-size: 2.5rem;
    --_typography---heading-h5--line-height: 110%;
    --_typography---heading-h5--weight: 400;
    --_typography---heading-h5--letter-spacing: 0rem;
    --_typography---heading-h6--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h6--color: var(--neutral-200);
    --_typography---heading-h6--font-size: 1.875rem;
    --_typography---heading-h6--line-height: 110%;
    --_typography---heading-h6--weight: 400;
    --_typography---heading-h6--letter-spacing: 0rem;
    --_typography---text-large--color: var(--neutral-200);
    --_typography---text-small--font-size: .875rem;
    --_typography---text-medium--font-size: 1rem;
    --_typography---text-medium--line-height: 130%;
    --_typography---text-medium--weight: 500;
    --_typography---text-medium--letter-spacing: -.031rem;
    --_typography---text-huge--font-family: Anton, Arial, sans-serif;
    --_typography---text-huge--color: var(--neutral-100);
    --_typography---text-huge--font-size: 2.5rem;
    --_typography---text-huge--line-height: 110%;
    --_typography---text-huge--weight: 400;
    --_typography---text-huge--letter-spacing: 0rem;
    --_typography---text-medium--font-family: Inter, Arial, sans-serif;
    --_typography---text-medium--color: var(--neutral-200);
    --_typography---text-small--font-family: Inter, Arial, sans-serif;
    --_typography---text-small--color: var(--neutral-200);
    --_typography---text-small--line-height: 110%;
    --_typography---text-small--weight: 500;
    --_typography---text-small--letter-spacing: -.031rem;
  }
}

@media screen and (min-width: 1920px) {
  .body {
    --neutral-100: white;
    --neutral-200: #2a2626;
    --neutral-400: #1d623c;
    --neutral-500: #dde8e2;
    --neutral-300: #2a2626b3;
    --_spacing---space-l: 3.125rem;
    --_spacing---space-xs: .625rem;
    --_spacing---space-s: 1.875rem;
    --_spacing---space-m: 3.125rem;
    --_spacing---space-xl: 6.25rem;
    --_spacing---space-xxl: 9.375rem;
    --_gap---gap-xl: 3.125rem;
    --_gap---gap-s: .625rem;
    --_gap---gap-m: 1.25rem;
    --_gap---gap-l: 1.875rem;
    --_typography---text-large--font-family: Inter, Arial, sans-serif;
    --_typography---text-large--font-size: 1.125rem;
    --_typography---text-large--line-height: 140%;
    --_typography---text-large--weight: 500;
    --_typography---text-large--letter-spacing: -.031rem;
    --_typography---heading-h1--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h1--color: var(--neutral-200);
    --_typography---heading-h1--font-size: 12.5rem;
    --_typography---heading-h1--line-height: 110%;
    --_typography---heading-h1--weight: 400;
    --_typography---heading-h1--letter-spacing: -.25rem;
    --_typography---heading-h2--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h2--color: var(--neutral-200);
    --_typography---heading-h2--font-size: 5.313rem;
    --_typography---heading-h2--line-height: 110%;
    --_typography---heading-h2--weight: 400;
    --_typography---heading-h2--letter-spacing: -.08rem;
    --_typography---heading-h3--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h3--color: var(--neutral-200);
    --_typography---heading-h3--font-size: 4.375rem;
    --_typography---heading-h3--line-height: 110%;
    --_typography---heading-h3--weight: 400;
    --_typography---heading-h3--letter-spacing: 0rem;
    --_typography---heading-h4--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h4--color: var(--neutral-200);
    --_typography---heading-h4--font-size: 3.125rem;
    --_typography---heading-h4--line-height: 110%;
    --_typography---heading-h4--weight: 400;
    --_typography---heading-h4--letter-spacing: 0rem;
    --_typography---heading-h5--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h5--color: var(--neutral-200);
    --_typography---heading-h5--font-size: 2.5rem;
    --_typography---heading-h5--line-height: 110%;
    --_typography---heading-h5--weight: 400;
    --_typography---heading-h5--letter-spacing: 0rem;
    --_typography---heading-h6--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h6--color: var(--neutral-200);
    --_typography---heading-h6--font-size: 1.875rem;
    --_typography---heading-h6--line-height: 110%;
    --_typography---heading-h6--weight: 400;
    --_typography---heading-h6--letter-spacing: 0rem;
    --_typography---text-large--color: var(--neutral-200);
    --_typography---text-small--font-size: .875rem;
    --_typography---text-medium--font-size: 1rem;
    --_typography---text-medium--line-height: 130%;
    --_typography---text-medium--weight: 500;
    --_typography---text-medium--letter-spacing: -.031rem;
    --_typography---text-huge--font-family: Anton, Arial, sans-serif;
    --_typography---text-huge--color: var(--neutral-100);
    --_typography---text-huge--font-size: 2.5rem;
    --_typography---text-huge--line-height: 110%;
    --_typography---text-huge--weight: 400;
    --_typography---text-huge--letter-spacing: 0rem;
    --_typography---text-medium--font-family: Inter, Arial, sans-serif;
    --_typography---text-medium--color: var(--neutral-200);
    --_typography---text-small--font-family: Inter, Arial, sans-serif;
    --_typography---text-small--color: var(--neutral-200);
    --_typography---text-small--line-height: 110%;
    --_typography---text-small--weight: 500;
    --_typography---text-small--letter-spacing: -.031rem;
  }
}

@media screen and (max-width: 991px) {
  .body {
    --neutral-100: white;
    --neutral-200: #2a2626;
    --neutral-400: #1d623c;
    --neutral-500: #dde8e2;
    --neutral-300: #2a2626b3;
    --_spacing---space-l: 2.7rem;
    --_spacing---space-xs: .625rem;
    --_spacing---space-s: 1.875rem;
    --_spacing---space-m: 2.9rem;
    --_spacing---space-xl: 5rem;
    --_spacing---space-xxl: 6rem;
    --_gap---gap-xl: 2.5rem;
    --_gap---gap-s: .625rem;
    --_gap---gap-m: 1.25rem;
    --_gap---gap-l: 1.875rem;
    --_typography---text-large--font-family: Inter, Arial, sans-serif;
    --_typography---text-large--font-size: 1.125rem;
    --_typography---text-large--line-height: 140%;
    --_typography---text-large--weight: 500;
    --_typography---text-large--letter-spacing: -.031rem;
    --_typography---heading-h1--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h1--color: var(--neutral-200);
    --_typography---heading-h1--font-size: 8rem;
    --_typography---heading-h1--line-height: 110%;
    --_typography---heading-h1--weight: 400;
    --_typography---heading-h1--letter-spacing: -.25rem;
    --_typography---heading-h2--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h2--color: var(--neutral-200);
    --_typography---heading-h2--font-size: 3rem;
    --_typography---heading-h2--line-height: 110%;
    --_typography---heading-h2--weight: 400;
    --_typography---heading-h2--letter-spacing: 0rem;
    --_typography---heading-h3--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h3--color: var(--neutral-200);
    --_typography---heading-h3--font-size: 2.8rem;
    --_typography---heading-h3--line-height: 110%;
    --_typography---heading-h3--weight: 400;
    --_typography---heading-h3--letter-spacing: 0rem;
    --_typography---heading-h4--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h4--color: var(--neutral-200);
    --_typography---heading-h4--font-size: 2.5rem;
    --_typography---heading-h4--line-height: 110%;
    --_typography---heading-h4--weight: 400;
    --_typography---heading-h4--letter-spacing: 0rem;
    --_typography---heading-h5--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h5--color: var(--neutral-200);
    --_typography---heading-h5--font-size: 2rem;
    --_typography---heading-h5--line-height: 110%;
    --_typography---heading-h5--weight: 400;
    --_typography---heading-h5--letter-spacing: 0rem;
    --_typography---heading-h6--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h6--color: var(--neutral-200);
    --_typography---heading-h6--font-size: 1.5rem;
    --_typography---heading-h6--line-height: 110%;
    --_typography---heading-h6--weight: 400;
    --_typography---heading-h6--letter-spacing: 0rem;
    --_typography---text-large--color: var(--neutral-200);
    --_typography---text-small--font-size: .875rem;
    --_typography---text-medium--font-size: 1rem;
    --_typography---text-medium--line-height: 130%;
    --_typography---text-medium--weight: 500;
    --_typography---text-medium--letter-spacing: -.031rem;
    --_typography---text-huge--font-family: Anton, Arial, sans-serif;
    --_typography---text-huge--color: var(--neutral-100);
    --_typography---text-huge--font-size: 2rem;
    --_typography---text-huge--line-height: 110%;
    --_typography---text-huge--weight: 400;
    --_typography---text-huge--letter-spacing: 0rem;
    --_typography---text-medium--font-family: Inter, Arial, sans-serif;
    --_typography---text-medium--color: var(--neutral-200);
    --_typography---text-small--font-family: Inter, Arial, sans-serif;
    --_typography---text-small--color: var(--neutral-200);
    --_typography---text-small--line-height: 110%;
    --_typography---text-small--weight: 500;
    --_typography---text-small--letter-spacing: -.031rem;
  }

  .hero_card-content {
    max-width: 10rem;
    bottom: 5%;
    right: 5%;
  }

  .navbar {
    margin-top: .3rem;
  }

  .navbar_container {
    align-items: center;
  }

  .navbar_logo-link {
    width: 6.5rem;
    height: 100%;
  }

  .navbar_menu {
    background-color: var(--neutral-100);
    flex-flow: row;
    justify-content: flex-start;
  }

  .navbar_link {
    font-size: var(--_typography---text-medium--font-size);
    text-align: right;
  }

  .navbar_button-wrapper {
    flex-flow: column;
    align-items: flex-end;
    display: flex;
  }

  .menu-button {
    background-color: var(--neutral-400);
    padding: .7rem;
  }

  .menu-button.w--open {
    background-color: var(--neutral-400);
  }

  .menu_icon {
    color: var(--neutral-100);
  }

  .guide_item, .license_item {
    flex-flow: column;
    align-items: flex-start;
  }
}

@media screen and (max-width: 767px) {
  .body {
    --neutral-100: white;
    --neutral-200: #2a2626;
    --neutral-400: #1d623c;
    --neutral-500: #dde8e2;
    --neutral-300: #2a2626b3;
    --_spacing---space-l: 1.5rem;
    --_spacing---space-xs: .625rem;
    --_spacing---space-s: 1.5rem;
    --_spacing---space-m: 2.4rem;
    --_spacing---space-xl: 4rem;
    --_spacing---space-xxl: 4rem;
    --_gap---gap-xl: 2rem;
    --_gap---gap-s: .625rem;
    --_gap---gap-m: 1rem;
    --_gap---gap-l: 1.5rem;
    --_typography---text-large--font-family: Inter, Arial, sans-serif;
    --_typography---text-large--font-size: 1.125rem;
    --_typography---text-large--line-height: 140%;
    --_typography---text-large--weight: 500;
    --_typography---text-large--letter-spacing: -.031rem;
    --_typography---heading-h1--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h1--color: var(--neutral-200);
    --_typography---heading-h1--font-size: 6rem;
    --_typography---heading-h1--line-height: 110%;
    --_typography---heading-h1--weight: 400;
    --_typography---heading-h1--letter-spacing: -.25rem;
    --_typography---heading-h2--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h2--color: var(--neutral-200);
    --_typography---heading-h2--font-size: 2.7rem;
    --_typography---heading-h2--line-height: 110%;
    --_typography---heading-h2--weight: 400;
    --_typography---heading-h2--letter-spacing: 0rem;
    --_typography---heading-h3--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h3--color: var(--neutral-200);
    --_typography---heading-h3--font-size: 2.6rem;
    --_typography---heading-h3--line-height: 110%;
    --_typography---heading-h3--weight: 400;
    --_typography---heading-h3--letter-spacing: 0rem;
    --_typography---heading-h4--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h4--color: var(--neutral-200);
    --_typography---heading-h4--font-size: 2rem;
    --_typography---heading-h4--line-height: 110%;
    --_typography---heading-h4--weight: 400;
    --_typography---heading-h4--letter-spacing: 0rem;
    --_typography---heading-h5--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h5--color: var(--neutral-200);
    --_typography---heading-h5--font-size: 1.625rem;
    --_typography---heading-h5--line-height: 110%;
    --_typography---heading-h5--weight: 400;
    --_typography---heading-h5--letter-spacing: 0rem;
    --_typography---heading-h6--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h6--color: var(--neutral-200);
    --_typography---heading-h6--font-size: 1.25rem;
    --_typography---heading-h6--line-height: 110%;
    --_typography---heading-h6--weight: 400;
    --_typography---heading-h6--letter-spacing: 0rem;
    --_typography---text-large--color: var(--neutral-200);
    --_typography---text-small--font-size: .875rem;
    --_typography---text-medium--font-size: 1rem;
    --_typography---text-medium--line-height: 130%;
    --_typography---text-medium--weight: 500;
    --_typography---text-medium--letter-spacing: -.031rem;
    --_typography---text-huge--font-family: Anton, Arial, sans-serif;
    --_typography---text-huge--color: var(--neutral-100);
    --_typography---text-huge--font-size: 1.5rem;
    --_typography---text-huge--line-height: 110%;
    --_typography---text-huge--weight: 400;
    --_typography---text-huge--letter-spacing: 0rem;
    --_typography---text-medium--font-family: Inter, Arial, sans-serif;
    --_typography---text-medium--color: var(--neutral-200);
    --_typography---text-small--font-family: Inter, Arial, sans-serif;
    --_typography---text-small--color: var(--neutral-200);
    --_typography---text-small--line-height: 110%;
    --_typography---text-small--weight: 500;
    --_typography---text-small--letter-spacing: -.031rem;
  }

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

  .hero_image-wrapper {
    width: 100%;
    max-width: 100%;
    height: 25rem;
  }

  .hero_card {
    width: 100%;
    height: 15rem;
  }

  .hero_card-content {
    max-width: 15rem;
    right: 5%;
  }

  .services_intro-layout {
    flex-flow: column;
  }

  .services_image-wrapper {
    max-width: 100%;
    height: 18rem;
    max-height: 100%;
  }

  .services_item {
    flex-flow: column;
    align-items: flex-start;
  }

  .footer_top-layout {
    grid-column-gap: var(--_gap---gap-s);
    grid-row-gap: var(--_gap---gap-s);
    flex-flow: column;
    align-items: center;
  }

  .navbar_menu {
    padding-bottom: 1.5rem;
  }
}

@media screen and (max-width: 479px) {
  .body {
    --neutral-100: white;
    --neutral-200: #2a2626;
    --neutral-400: #1d623c;
    --neutral-500: #dde8e2;
    --neutral-300: #2a2626b3;
    --_spacing---space-l: 1rem;
    --_spacing---space-xs: .625rem;
    --_spacing---space-s: 1.5rem;
    --_spacing---space-m: 1.9rem;
    --_spacing---space-xl: 3.5rem;
    --_spacing---space-xxl: 3.8rem;
    --_gap---gap-xl: 1.5rem;
    --_gap---gap-s: .625rem;
    --_gap---gap-m: 1rem;
    --_gap---gap-l: 1.5rem;
    --_typography---text-large--font-family: Inter, Arial, sans-serif;
    --_typography---text-large--font-size: 1.125rem;
    --_typography---text-large--line-height: 140%;
    --_typography---text-large--weight: 500;
    --_typography---text-large--letter-spacing: -.031rem;
    --_typography---heading-h1--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h1--color: var(--neutral-200);
    --_typography---heading-h1--font-size: 3.5rem;
    --_typography---heading-h1--line-height: 110%;
    --_typography---heading-h1--weight: 400;
    --_typography---heading-h1--letter-spacing: -.06rem;
    --_typography---heading-h2--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h2--color: var(--neutral-200);
    --_typography---heading-h2--font-size: 2.2rem;
    --_typography---heading-h2--line-height: 110%;
    --_typography---heading-h2--weight: 400;
    --_typography---heading-h2--letter-spacing: 0rem;
    --_typography---heading-h3--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h3--color: var(--neutral-200);
    --_typography---heading-h3--font-size: 2.125rem;
    --_typography---heading-h3--line-height: 110%;
    --_typography---heading-h3--weight: 400;
    --_typography---heading-h3--letter-spacing: 0rem;
    --_typography---heading-h4--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h4--color: var(--neutral-200);
    --_typography---heading-h4--font-size: 1.625rem;
    --_typography---heading-h4--line-height: 110%;
    --_typography---heading-h4--weight: 400;
    --_typography---heading-h4--letter-spacing: 0rem;
    --_typography---heading-h5--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h5--color: var(--neutral-200);
    --_typography---heading-h5--font-size: 1.375rem;
    --_typography---heading-h5--line-height: 110%;
    --_typography---heading-h5--weight: 400;
    --_typography---heading-h5--letter-spacing: 0rem;
    --_typography---heading-h6--font-family: Anton, Arial, sans-serif;
    --_typography---heading-h6--color: var(--neutral-200);
    --_typography---heading-h6--font-size: 1.125rem;
    --_typography---heading-h6--line-height: 110%;
    --_typography---heading-h6--weight: 400;
    --_typography---heading-h6--letter-spacing: 0rem;
    --_typography---text-large--color: var(--neutral-200);
    --_typography---text-small--font-size: .875rem;
    --_typography---text-medium--font-size: 1rem;
    --_typography---text-medium--line-height: 130%;
    --_typography---text-medium--weight: 500;
    --_typography---text-medium--letter-spacing: -.031rem;
    --_typography---text-huge--font-family: Anton, Arial, sans-serif;
    --_typography---text-huge--color: var(--neutral-100);
    --_typography---text-huge--font-size: 1.3rem;
    --_typography---text-huge--line-height: 110%;
    --_typography---text-huge--weight: 400;
    --_typography---text-huge--letter-spacing: 0rem;
    --_typography---text-medium--font-family: Inter, Arial, sans-serif;
    --_typography---text-medium--color: var(--neutral-200);
    --_typography---text-small--font-family: Inter, Arial, sans-serif;
    --_typography---text-small--color: var(--neutral-200);
    --_typography---text-small--line-height: 110%;
    --_typography---text-small--weight: 500;
    --_typography---text-small--letter-spacing: -.031rem;
  }

  .section_hero {
    position: relative;
    overflow: hidden;
  }

  .hero_intro-layout {
    flex-flow: column;
    align-items: flex-start;
  }

  .hero_card {
    height: 12rem;
  }

  .hero_card-content {
    bottom: 8%;
  }

  .services_item {
    background-color: var(--neutral-500);
    position: sticky;
    top: 2rem;
  }

  .projects_list {
    flex-flow: column;
    display: flex;
  }

  .footer_nav-list {
    flex-flow: wrap;
  }

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

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

  .utility-page-wrap {
    overflow: hidden;
  }

  .guide_intro-layout {
    flex-flow: column;
    align-items: flex-start;
  }

  .style_color {
    width: 9rem;
    height: 9rem;
  }

  .system_image-wrapper {
    width: 6rem;
  }
}

#w-node-c498e108-271d-ef06-1aa2-c86249fdbb11-202458ce {
  grid-template-rows: auto;
  grid-template-columns: .5fr 1fr .5fr;
}

#w-node-f4d7f83a-aa1f-2cf8-873a-b5880130583b-202458ce, #w-node-b9c3d7f1-e9df-5b42-6ccb-c057b301e308-202458ce, #w-node-_61428dac-86c9-71db-30d6-f8dea9be624e-8b78f5f7 {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
}

#w-node-_60cf170e-3af9-36f7-62fc-8ab2c8432b8d-8b78f5f7 {
  grid-template-rows: auto;
  grid-template-columns: .5fr 5fr .75fr;
}


@font-face {
  font-family: 'Anton';
  src: url('../fonts/Anton-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter_18pt-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter_18pt-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter_18pt-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}