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

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

@font-face {
  font-family: Inter;
  src: url('../fonts/inter-v20-latin-regular.woff2') format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Inter;
  src: url('../fonts/inter-v20-latin-italic.woff2') format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Inter;
  src: url('../fonts/inter-v20-latin-700.woff2') format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Inter;
  src: url('../fonts/inter-v20-latin-700italic.woff2') format("woff2");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

:root {
  --swatches--dark: black;
  --swatches--brand-800: #207442;
  --sizes--marign: clamp(2 * 1rem, ((2 - ((9.25 - 2) / (90 - 40) * 40)) * 1rem + ((9.25 - 2) / (90 - 40)) * 100vw), 9.25 * 1rem);
  --sizes--viewport-max: 120rem;
  --swatches--brand-500: #55e590;
  --swatches--light: white;
  --_typography---font-family: var(--text--primary-font);
  --_typography---font-size: var(--text--main);
  --_typography---line-height: 1.5;
  --_typography---font-weight: 400;
  --_typography---letter-spacing: .01em;
  --swatches--light-grey: #f3f3f3;
  --sizes--gutter: clamp(2 * 1rem, ((2 - ((6 - 2) / (90 - 20) * 20)) * 1rem + ((6 - 2) / (90 - 20)) * 100vw), 6 * 1rem);
  --icons---border-width--main: 1px;
  --swatches--brand-600: #43c277;
  --swatches--brand-700: #31995b;
  --sizes--viewport-min: 24rem;
  --text--display: clamp(2.5 * 1rem, ((2.5 - ((8 - 2.5) / (105 - 20) * 20)) * 1rem + ((8 - 2.5) / (105 - 20)) * 100vw), 8 * 1rem);
  --text--h1: clamp(3.75 * 1rem, ((3.75 - ((7.5 - 3.75) / (120 - 60) * 60)) * 1rem + ((7.5 - 3.75) / (120 - 60)) * 100vw), 7.5 * 1rem);
  --text--h2: clamp(1.375 * 1rem, ((1.375 - ((1.75 - 1.375) / (90 - 20) * 20)) * 1rem + ((1.75 - 1.375) / (90 - 20)) * 100vw), 1.75 * 1rem);
  --text--h3: clamp(1.25 * 1rem, ((1.25 - ((1.5 - 1.25) / (90 - 20) * 20)) * 1rem + ((1.5 - 1.25) / (90 - 20)) * 100vw), 1.5 * 1rem);
  --text--h4: clamp(1 * 1rem, ((1 - ((1.125 - 1) / (90 - 20) * 20)) * 1rem + ((1.125 - 1) / (90 - 20)) * 100vw), 1.125 * 1rem);
  --text--h5: 1rem;
  --text--h6: .875rem;
  --text--large: clamp(1.25 * 1rem, ((1.25 - ((1.75 - 1.25) / (120 - 30) * 30)) * 1rem + ((1.75 - 1.25) / (120 - 30)) * 100vw), 1.75 * 1rem);
  --text--main: clamp(1.125 * 1rem, ((1.125 - ((1.375 - 1.125) / (90 - 20) * 20)) * 1rem + ((1.375 - 1.125) / (90 - 20)) * 100vw), 1.375 * 1rem);
  --text--small: clamp(1 * 1rem, ((1 - ((1.125 - 1) / (90 - 20) * 20)) * 1rem + ((1.125 - 1) / (90 - 20)) * 100vw), 1.125 * 1rem);
  --text--primary-font: Inter, Arial, sans-serif;
  --text--secondary-font: Moderat, Verdana, sans-serif;
  --sizes--full-height: calc(100svh - (var(--sizes--gutter) * 2));
  --border-width--main: .125rem;
}

.w-layout-vflex {
  flex-direction: column;
  align-items: flex-start;
  display: flex;
}

body {
  color: var(--swatches--dark);
  font-family: Inter, Arial, sans-serif;
  font-size: 1.375rem;
  line-height: 1.5;
}

h1 {
  font-size: 38px;
  font-weight: 700;
  line-height: 44px;
}

p {
  margin-bottom: 0;
}

a {
  color: var(--swatches--dark);
  text-decoration: none;
  transition: color .4s;
}

a:hover {
  color: var(--swatches--brand-800);
}

li {
  margin-bottom: 1rem;
}

.page_main {
  z-index: 1;
  min-height: 100vh;
  position: relative;
}

.u-embed-css {
  display: none;
}

.footer {
  padding: 6rem var(--sizes--marign);
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  flex-flow: column;
  display: flex;
}

.footer_link {
  cursor: pointer;
  transition: color .4s;
}

.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;
}

.u-embed-js {
  display: none;
}

.hero_layout {
  max-width: var(--sizes--viewport-max);
  padding-right: var(--sizes--marign);
  padding-left: var(--sizes--marign);
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  padding-top: calc(var(--sizes--marign) * .75);
  padding-bottom: calc(var(--sizes--marign) * .75);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  min-height: 100vh;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  position: relative;
}

.u-brand-500 {
  color: var(--swatches--brand-500);
}

.hero_logo {
  width: 8vw;
  min-width: 8rem;
  max-width: 10rem;
}

.hero_content {
  width: 100%;
  container-type: inline-size;
}

.g_button {
  z-index: 10;
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  background-color: var(--swatches--brand-500);
  color: var(--swatches--light);
  cursor: pointer;
  border-radius: 999px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: center;
  width: max-content;
  height: 5rem;
  padding: 1.5rem;
  transition-property: background-color, color;
  transition-duration: .4s, .4s;
  transition-timing-function: ease, ease;
  display: flex;
  position: relative;
}

.g_button:hover {
  background-color: var(--swatches--dark);
  color: var(--swatches--brand-500);
}

.g_button.u-text {
  --_typography---font-family: var(--text--primary-font);
  --_typography---font-size: var(--text--main);
  --_typography---line-height: 1.5;
  --_typography---font-weight: 400;
  --_typography---letter-spacing: .01em;
}

.g_button_icon {
  aspect-ratio: 1;
  height: 100%;
}

.u-text {
  font-family: var(--_typography---font-family);
  font-size: var(--_typography---font-size);
  line-height: var(--_typography---line-height);
  font-weight: var(--_typography---font-weight);
  letter-spacing: var(--_typography---letter-spacing);
  --_typography---font-family: var(--text--secondary-font);
  --_typography---font-size: var(--text--h1);
  --_typography---line-height: 1;
  --_typography---font-weight: 700;
  --_typography---letter-spacing: 0em;
}

.u-text.h1 {
  --_typography---font-family: var(--text--secondary-font);
  --_typography---font-size: var(--text--h1);
  --_typography---line-height: 1;
  --_typography---font-weight: 700;
  --_typography---letter-spacing: 0em;
  margin-top: 0;
  margin-bottom: 1.5em;
  font-size: 10cqw;
}

.u-text.large {
  z-index: 10;
  --_typography---font-family: var(--text--primary-font);
  --_typography---font-size: var(--text--large);
  --_typography---line-height: 1.3;
  --_typography---font-weight: 400;
  --_typography---letter-spacing: 0em;
  margin-bottom: 2.5em;
  position: relative;
}

.u-text.base {
  --_typography---font-family: var(--text--primary-font);
  --_typography---font-size: var(--text--main);
  --_typography---line-height: 1.5;
  --_typography---font-weight: 400;
  --_typography---letter-spacing: .01em;
}

.hero_wrap {
  background-image: linear-gradient(180deg, white, var(--swatches--light-grey) 76%);
  justify-content: flex-start;
  align-items: center;
  position: relative;
  overflow: hidden;
}

.footer_layout {
  max-width: var(--sizes--viewport-max);
  grid-column-gap: var(--sizes--gutter);
  grid-row-gap: 3rem;
  grid-template-rows: auto;
  grid-template-columns: 20rem 1fr;
  grid-auto-columns: 1fr;
  place-items: stretch stretch;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: grid;
}

.logo_footer {
  max-width: 13rem;
  max-height: 10rem;
}

.footer_innergrid {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  flex-flow: row;
  grid-template-rows: auto;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  grid-auto-columns: 1fr;
  place-items: center;
  display: grid;
}

.svg {
  z-index: 5;
  opacity: .7;
  pointer-events: none;
  color: var(--swatches--brand-500);
  width: 102vw;
  min-width: 97rem;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
}

@media screen and (max-width: 991px) {
  .footer {
    padding-top: var(--sizes--marign);
    padding-bottom: var(--sizes--marign);
    grid-column-gap: 5rem;
    grid-row-gap: 5rem;
  }

  .hero_layout {
    grid-template-rows: auto auto auto;
  }

  .u-text.h1 {
    margin-bottom: 1em;
    font-size: 8.7vw;
  }

  .u-text.large {
    margin-bottom: 1em;
  }

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

  .footer_innergrid {
    place-items: start;
  }
}

@media screen and (max-width: 767px) {
  .hero_logo {
    min-width: 6rem;
    margin-bottom: 5rem;
  }

  .conditional_break {
    display: none;
  }

  .svg {
    min-width: 80rem;
    top: 51%;
    right: -2%;
  }
}

@media screen and (max-width: 479px) {
  .hero_layout {
    grid-template-columns: 1fr;
    justify-content: flex-start;
  }

  .hero_content {
    flex: 1;
  }

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

  .paragraph {
    text-align: center;
    font-size: 1rem;
  }

  .logo_footer {
    max-width: 8rem;
    max-height: 5rem;
  }

  .footer_innergrid {
    place-items: start center;
  }

  .svg {
    min-width: 47rem;
    top: 42%;
    right: auto;
  }
}

#w-node-_72f41900-5a96-be94-a7e2-388d0a1339e7-05ffa19d {
  grid-area: span 1 / span 8 / span 1 / span 8;
}

#w-node-eb6713fd-b283-ee4c-7df4-4f7a7f5f4d42-05ffa19d {
  grid-area: 2 / 3 / 3 / 9;
  align-self: end;
}

#w-node-c3f9f970-2ce8-e66c-e940-8e3555b8723b-a3097260 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

@media screen and (max-width: 991px) {
  #w-node-eb6713fd-b283-ee4c-7df4-4f7a7f5f4d42-05ffa19d {
    grid-area: 2 / 1 / 3 / 9;
    align-self: center;
  }
}

@media screen and (max-width: 479px) {
  #w-node-_72f41900-5a96-be94-a7e2-388d0a1339e7-05ffa19d, #w-node-eb6713fd-b283-ee4c-7df4-4f7a7f5f4d42-05ffa19d {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
}


@font-face {
  font-family: 'Moderat';
  src: url('../fonts/Moderat-Bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Moderat';
  src: url('../fonts/Moderat-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/inter-v20-latin-regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/inter-v20-latin-italic.woff2') format('woff2');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/inter-v20-latin-700.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/inter-v20-latin-700italic.woff2') format('woff2');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}