:root {
  --black: #0c0c0c;
  --heading: Coconat, sans-serif;
  --text: Montserrat, sans-serif;
  --primary-400: #929f7c;
  --primary-200: #ced4c2;
  --linen: #fff4e8;
  --white: white;
  --primary-950: #151811;
  --primary-900: #343a2d;
  --primary-700: #47503b;
  --secondary-100: #e8edf0;
  --primary-300: #afb99d;
  --primary-100: #cecece;
  --primary-50: #f3f5f0;
  --primary-500: #75835f;
  --primary-800: #3b4232;
  --primary-600: #5b6749;
  --success: #22c254;
  --silver: #c3c9cd;
  --tan: #bb9d8b;
  --error: #8d1819;
  --light-grey: #d1cac6;
  --warning: #dab326;
  --transparent: #fff0;
  --c3c9cd: var(--silver);
  --color: white;
}

body {
  color: var(--black);
  font-family: Montserrat, sans-serif;
  font-size: 1rem;
  line-height: 2rem;
}

h1 {
  font-family: var(--heading);
  margin-top: 0;
  margin-bottom: 20px;
  font-size: 4em;
  font-weight: 400;
  line-height: 1.2;
}

h2 {
  font-family: var(--heading);
  margin-top: 1rem;
  margin-bottom: 1rem;
  font-size: 2.75em;
  font-weight: 400;
  line-height: 56px;
}

h3 {
  font-family: var(--heading);
  margin-top: 2rem;
  margin-bottom: 1rem;
  font-size: 1.5em;
  font-weight: 400;
  line-height: 40px;
}

h4 {
  font-family: var(--heading);
  margin-top: 0;
  margin-bottom: 12px;
  font-size: 1.3em;
  font-weight: 400;
  line-height: 32px;
}

h5 {
  font-family: var(--text);
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 10px;
  font-size: 1em;
  font-weight: 700;
  line-height: 28px;
}

h6 {
  font-family: var(--text);
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 20px;
  font-size: .8em;
  font-weight: 400;
  line-height: 24px;
}

p {
  letter-spacing: 0;
  margin-bottom: 2rem;
  font-family: Montserrat, sans-serif;
  font-size: 1rem;
  font-weight: 300;
  line-height: 2;
}

a {
  cursor: pointer;
}

li {
  margin-bottom: .8rem;
  font-weight: 300;
}

img {
  max-width: 100%;
  height: auto;
  display: inline-block;
}

blockquote {
  border-left: 5px solid var(--primary-400);
  margin-top: 1.5rem;
  margin-bottom: 1.4rem;
  padding: 1rem 1.3rem 1rem 1.5rem;
  font-size: 18px;
  line-height: 2;
}

.w-layout-blockcontainer {
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.w-layout-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

@media screen and (max-width: 991px) {
  .w-layout-blockcontainer {
    max-width: 728px;
  }
}

@media screen and (max-width: 767px) {
  .w-layout-blockcontainer {
    max-width: none;
  }
}

.nav {
  z-index: 1;
  background-color: var(--primary-200);
  color: var(--black);
  align-items: center;
}

.nav--link {
  color: var(--black);
  padding: 6px 12px;
  transition: opacity .3s;
}

.nav--link:hover {
  opacity: .7;
}

.nav--link.w--current {
  color: var(--black);
}

.nav--wrapper-right {
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.nav--menu {
  border-right: 1px solid var(--black);
  padding-right: 16px;
}

.nav--cta-btn {
  background-color: var(--white);
  color: var(--black);
  justify-content: center;
  align-items: center;
  padding: 16px 24px;
  text-decoration: none;
  transition: background-color .2s;
  display: flex;
}

.nav--cta-btn:hover {
  background-color: #ffffff80;
}

.nav--cta-btn.mobile {
  display: none;
}

.container {
  flex-direction: column;
  max-width: 1360px;
  padding-left: 3.5rem;
  padding-right: 3.5rem;
  display: block;
}

.container.container--large {
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
  position: relative;
}

.container.container--nav {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  padding-top: 1.2rem;
  padding-bottom: 1.2rem;
  display: flex;
  position: relative;
}

.container.container--featured-item {
  margin-bottom: 100px;
}

.hero--grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.section {
  flex-direction: column;
  justify-content: center;
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.section:where(.w-variant-7cdaff22-d007-c735-b59c-a2fab4b8a7b2) {
  background-color: var(--linen);
}

.section:where(.w-variant-7e619a76-ad46-24db-65ff-fef6b6825f65) {
  background-color: var(--primary-900);
}

.section:where(.w-variant-2296032e-08b5-fcf6-dcd6-6a2b7f7a681b) {
  background-color: var(--linen);
}

.section:where(.w-variant-2296032e-08b5-fcf6-dcd6-6a2b7f7a681c) {
  background-color: var(--primary-900);
}

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

.cta {
  margin-bottom: 1rem;
  font-size: 18px;
  line-height: 30px;
}

.limit {
  max-width: 410px;
}

.button-dark {
  background-color: var(--black);
  text-align: center;
  border-radius: 0;
  justify-content: center;
  padding: 16px 24px;
  font-size: 16px;
  transition: background-color .2s;
}

.button-dark:where(.w-variant-7cdaff22-d007-c735-b59c-a2fab4b8a7b2) {
  background-color: var(--primary-700);
  color: var(--white);
}

.button-dark:where(.w-variant-7e619a76-ad46-24db-65ff-fef6b6825f65) {
  background-color: var(--linen);
  color: var(--primary-950);
}

.button-dark:where(.w-variant-2296032e-08b5-fcf6-dcd6-6a2b7f7a681b) {
  background-color: var(--primary-900);
  color: var(--linen);
}

.button-dark:where(.w-variant-2296032e-08b5-fcf6-dcd6-6a2b7f7a681c) {
  background-color: var(--linen);
  color: var(--primary-950);
}

.button-dark:hover {
  background-color: #1b1d1ecc;
}

.button-dark:hover:where(.w-variant-7cdaff22-d007-c735-b59c-a2fab4b8a7b2) {
  background-color: var(--black);
}

.button-dark:hover:where(.w-variant-7e619a76-ad46-24db-65ff-fef6b6825f65) {
  background-color: var(--secondary-100);
}

.button-dark:hover:where(.w-variant-2296032e-08b5-fcf6-dcd6-6a2b7f7a681b) {
  background-color: var(--black);
}

.button-dark:hover:where(.w-variant-2296032e-08b5-fcf6-dcd6-6a2b7f7a681c) {
  background-color: var(--secondary-100);
}

.space-top-medium {
  margin-top: 60px;
}

.space-top-extra {
  margin-top: 120px;
}

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

.header-medium {
  max-width: 540px;
}

.callout-grid {
  grid-column-gap: 80px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.callout-grid.space-top-medium {
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

.limit-small {
  max-width: 320px;
}

.callout--img-wrap {
  margin-bottom: 22px;
  position: relative;
}

.featured--img {
  z-index: 1;
  border-radius: 10px;
  position: relative;
  box-shadow: 0 1px 4px -2px #000;
}

.featured--link {
  justify-content: flex-start;
  align-items: flex-start;
  margin-top: 2rem;
  text-decoration: none;
  transition: opacity .1s;
  display: flex;
}

.featured--link:hover {
  opacity: .5;
}

.featured--link.space-top-extra {
  align-items: center;
  display: flex;
}

.line-separator {
  background-color: var(--black);
  width: 1px;
  height: 80px;
  margin-top: 40px;
  margin-bottom: 40px;
}

.line-separator.is-dark {
  background-color: var(--primary-300);
  background-color: var(--primary-300);
}

.link__large-text {
  color: var(--black);
  font-family: Coconat, sans-serif;
  font-size: 20px;
  line-height: 32px;
  text-decoration: none;
  transition: opacity .3s;
}

.link__large-text:hover {
  opacity: .6;
}

.link__large-text.is-dark {
  color: var(--primary-100);
}

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

.container--small {
  max-width: 712px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 40px;
  padding-right: 40px;
}

.container--small.margin-top {
  margin-top: 4rem;
}

.footer {
  background-color: var(--primary-950);
}

.footer-top {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-top: 5rem;
  padding-bottom: 5rem;
  display: flex;
}

.footer-logo {
  opacity: .5;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 128px;
  height: 128px;
  transition: opacity 2s;
  display: flex;
}

.footer-logo:hover {
  opacity: 1;
  border-color: #ffffff80;
}

.footer-logo.w--current {
  opacity: .5;
  transition-property: opacity;
}

.footer-logo.w--current:hover {
  opacity: 1;
}

.footer-middle {
  padding-bottom: 4rem;
  transition: opacity .2s;
}

.footer-middle-content {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

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

.color_secondary.opacity {
  color: #fff9;
}

.footer-link {
  color: var(--white);
  margin-bottom: 16px;
  text-decoration: none;
  transition: opacity .3s;
}

.footer-link:hover {
  opacity: .6;
}

.footer-bottom {
  border-top: 1px solid #ffffff1a;
  padding-top: 40px;
  padding-bottom: 40px;
}

.footer-bottom-content-wrap {
  grid-column-gap: 28px;
  grid-row-gap: 28px;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.footer-link-span {
  color: #fff9;
  text-decoration: none;
  transition: color .3s;
}

.footer-link-span:hover {
  color: #fff;
}

.opacity {
  color: #1b1d1eb3;
}

.nav--logo.w--current {
  color: var(--black);
  font-family: Coconat, sans-serif;
  font-size: 1.2rem;
  line-height: 1;
}

.featured--link-icon {
  border-radius: 50%;
  margin-right: 24px;
}

.nav--cta-wrapper {
  padding-left: 16px;
}

.nav--logo-text {
  color: var(--black);
  letter-spacing: -.025em;
  font-family: Coconat, sans-serif;
  font-size: 1.1rem;
}

.hero--img {
  opacity: 1;
  mix-blend-mode: multiply;
}

.hero-eyebrow {
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 20px;
  font-size: 16px;
}

.header {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-top: 3rem;
  padding-bottom: 3rem;
  display: flex;
  position: relative;
}

.header.bg-image {
  background-image: url("https://d3e54v103j8qbb.cloudfront.net/img/background-image.svg");
  background-position: 50%;
  background-size: cover;
}

.header.bg-image.bg-dark.h-400 {
  height: 400px;
}

.header.is-hero {
  background-color: var(--linen);
  padding-top: 10rem;
  padding-bottom: 10rem;
}

.featured-text {
  margin-top: 1rem;
  font-size: 18px;
  line-height: 30px;
}

.callout--title {
  font-size: 20px;
  line-height: 1.5;
}

.callout-img {
  width: 100%;
  max-width: 250px;
  margin-left: auto;
  margin-right: auto;
}

.callout-container {
  text-align: center;
  flex-direction: column;
  align-items: center;
  margin-bottom: 40px;
  display: flex;
  position: relative;
}

.header-eyebrow {
  text-align: center;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-size: 1rem;
  line-height: 1rem;
}

.featured--item-header {
  max-width: 540px;
  margin-bottom: 1rem;
  font-size: 40px;
  line-height: 56px;
}

.featured--item-grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.featured--img-wrapper {
  z-index: 2;
  position: relative;
}

.featured--img-wrapper._2 {
  padding-top: 50px;
  padding-left: 50px;
}

.featured--img-wrapper._3 {
  padding-top: 50px;
  padding-right: 50px;
}

.featured--link-text {
  font-family: Coconat, sans-serif;
  font-size: 20px;
  line-height: 28px;
  text-decoration: none;
}

.featured--link-text-wrapper {
  max-width: 320px;
  color: var(--primary-950);
  text-decoration: none;
}

.footer-logo-container {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  max-width: 1360px;
  display: flex;
}

.footer-logo-text {
  color: var(--white);
  text-align: center;
  margin-bottom: 16px;
  font-family: Coconat, sans-serif;
  font-size: 2rem;
  line-height: 2.5rem;
}

.cta--heading-sm {
  text-align: center;
  margin-top: 24px;
  font-size: 24px;
  line-height: 40px;
}

.container--half {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-around;
  align-items: center;
  width: 100%;
  max-width: 1000px;
  display: flex;
}

.hero--img-wrapper {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.hero--img-wrapper._3 {
  width: 20rem;
}

.about--img-wrapper {
  z-index: 2;
  width: 50%;
  max-width: 500px;
  position: relative;
}

.about--image {
  aspect-ratio: 2 / 3;
  object-fit: cover;
  position: relative;
  overflow: hidden;
}

.about--content {
  text-align: center;
  flex-direction: column;
  align-items: center;
  width: 75%;
  max-width: 500px;
  padding-left: 2rem;
  padding-right: 2rem;
  display: flex;
}

.h6 {
  text-transform: uppercase;
  font-family: Montserrat, sans-serif;
  font-size: .8rem;
  font-weight: 400;
  line-height: 24px;
}

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

.grid.col-4 {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

.bg-dark {
  background-color: var(--primary-900);
  color: var(--white);
}

.bg-light {
  background-color: var(--linen);
}

.h3-style {
  font-family: var(--heading);
  font-size: 1.5em;
  font-weight: 400;
  line-height: 40px;
}

.p-0 {
  padding: 0;
}

.container--medium {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 40px;
  padding-right: 40px;
}

.dropdown {
  z-index: 1;
}

.nav-link {
  padding: 6px 12px;
  transition: opacity .3s;
}

.nav-link:hover {
  opacity: .7;
}

.nav-link.w--current {
  color: #1b1d1e;
}

.nav-link.drop {
  display: flex;
}

.icon-2 {
  margin-left: 8px;
  margin-right: 0;
}

.dropdown-list {
  padding-top: 6px;
}

.dropdown-list.w--open {
  background-color: #1b1d1e;
  padding: 8px;
}

.dropdown-link {
  color: #fff;
  padding: 8px 16px;
  transition: color .2s;
}

.dropdown-link:hover {
  color: #a6bfcd;
}

.dropdown-link.w--current {
  color: #fff;
}

.drop-separator {
  background-color: #ffffff1a;
  height: 1px;
  margin-top: 8px;
  margin-bottom: 8px;
}

.large-paragraph {
  font-size: 18px;
  line-height: 30px;
}

.usp-grid {
  grid-column-gap: 80px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

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

.white-text {
  color: #fff;
}

.white-text.underlined-metric {
  border-bottom: 1px solid #fff;
  margin-bottom: 24px;
  padding-bottom: 24px;
}

.footer-bottom-links {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

@media screen and (max-width: 991px) {
  body {
    font-size: 15px;
    line-height: 22px;
  }

  h1 {
    font-size: 48px;
    line-height: 64px;
  }

  h2 {
    font-size: 36px;
    line-height: 50px;
  }

  h3 {
    font-size: 30px;
    line-height: 36px;
  }

  h4 {
    font-size: 22px;
    line-height: 28px;
  }

  h5 {
    font-size: 19px;
    line-height: 26px;
  }

  h6 {
    font-size: 15px;
    line-height: 22px;
  }

  .nav--link {
    padding: 10px 0;
  }

  .nav--menu {
    z-index: 103;
    background-color: var(--linen);
    border-right-style: none;
    padding: 32px;
    box-shadow: 0 24px 24px #1b1d1e1a;
  }

  .nav--cta-btn.desktop {
    display: none;
  }

  .nav--cta-btn.mobile {
    margin-top: 24px;
    display: block;
  }

  .nav--cta-btn.mobile.button-dark {
    color: var(--white);
  }

  .container {
    padding-left: 32px;
    padding-right: 32px;
  }

  .secondary-nav--content {
    padding-left: 0;
  }

  .section {
    padding-top: 100px;
    padding-bottom: 100px;
  }

  .cta {
    font-size: 17px;
    line-height: 28px;
  }

  .space-top {
    margin-top: 36px;
  }

  .space-top-medium {
    margin-top: 52px;
  }

  .space-top-extra {
    margin-top: 90px;
  }

  .callout-grid {
    grid-column-gap: 40px;
  }

  .link__large-text {
    font-size: 19px;
    line-height: 29px;
  }

  .container--small {
    padding-left: 32px;
    padding-right: 32px;
  }

  .footer-top {
    padding-top: 60px;
    padding-bottom: 60px;
  }

  .footer-middle {
    padding-bottom: 100px;
  }

  .container__contact {
    padding-left: 32px;
    padding-right: 32px;
  }

  .wrapper--services-card {
    width: 100%;
    height: 320px;
  }

  .medium-container {
    padding-left: 32px;
    padding-right: 32px;
  }

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

  .menu-button.w--open {
    background-color: #0000;
  }

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

  .hero--img {
    position: relative;
  }

  .grid--services {
    grid-template-columns: 1fr 1fr;
    justify-items: center;
  }

  .featured-text {
    font-size: 17px;
    line-height: 28px;
  }

  .about--text-container {
    padding-left: 0;
    padding-right: 0;
  }

  .title--services {
    margin-top: 22px;
  }

  .footer-logo-container {
    padding-left: 32px;
    padding-right: 32px;
  }

  .container--half {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .styleguide-sidepanel {
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    height: auto;
    padding: 25px 10px;
    position: relative;
  }

  .styleguide-logo {
    margin-bottom: 0;
    margin-right: 10px;
  }

  .text-link {
    margin-right: 50px;
  }

  .text-highlight {
    padding: 20px;
  }

  .hide-ipad-down {
    display: none;
  }

  .flex-horiz-c-end {
    flex-wrap: wrap;
    place-content: center;
  }

  .flex-horiz-cc, .flex-horiz-cc-2 {
    flex-direction: row;
    align-items: flex-start;
  }

  .container-2 {
    flex-direction: column;
    width: 95vw;
  }

  .section-grid {
    grid-template-columns: .25fr minmax(80vw, 95vw) .25fr;
  }

  .container--medium {
    padding-left: 32px;
    padding-right: 32px;
  }

  .slider--wrapper {
    width: 90%;
  }

  .form-block {
    width: 100%;
  }

  .nav-link {
    padding: 10px 0;
  }

  .dropdown-list.w--open {
    position: relative;
  }

  .large-paragraph {
    font-size: 17px;
    line-height: 28px;
  }

  .usp-grid {
    grid-column-gap: 40px;
  }

  .container-3 {
    padding-left: 32px;
    padding-right: 32px;
  }

  .section-3 {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

@media screen and (max-width: 767px) {
  body {
    font-size: 14px;
    line-height: 21px;
  }

  h1 {
    font-size: 40px;
    line-height: 56px;
  }

  h2 {
    font-size: 32px;
    line-height: 40px;
  }

  h3 {
    font-size: 28px;
    line-height: 32px;
  }

  h4 {
    font-size: 20px;
    line-height: 26px;
  }

  h5 {
    font-size: 18px;
    line-height: 24px;
  }

  h6 {
    font-size: 14px;
    line-height: 21px;
  }

  .nav--menu {
    padding-bottom: 24px;
    padding-left: 24px;
    padding-right: 24px;
  }

  .secondary-nav {
    display: none;
  }

  .container {
    padding-left: 24px;
    padding-right: 24px;
  }

  .secondary-nav--content {
    justify-content: space-between;
  }

  .secondary-link {
    font-size: 13px;
    line-height: 21px;
  }

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

  .section--narrow {
    padding-top: 0;
  }

  .section {
    padding-top: 80px;
    padding-bottom: 80px;
  }

  .cta {
    text-align: center;
    font-size: 16px;
    line-height: 24px;
  }

  .button-dark.space-top-medium {
    line-height: 21px;
  }

  .space-top {
    margin-top: 32px;
  }

  .space-top-medium {
    margin-top: 48px;
  }

  .space-top-extra {
    margin-top: 80px;
  }

  .callout-grid {
    grid-column-gap: 16px;
    grid-template-columns: 1fr 1fr;
  }

  .callout-grid.space-top-medium {
    grid-template-columns: 1fr;
  }

  .img-doodle {
    bottom: -28px;
    right: 52px;
  }

  .img-doodle._3 {
    z-index: 0;
    z-index: 0;
  }

  .featured--img {
    width: 50%;
  }

  .bg-comp {
    width: 50%;
    left: 20%;
  }

  .bg-comp._2 {
    top: -1px;
    right: 57px;
  }

  .bg-comp.bg-comp-right {
    right: 20%;
  }

  .featured--link {
    margin-bottom: 40px;
  }

  .featured--link.space-top-extra {
    justify-content: center;
  }

  .link__large-text {
    font-size: 18px;
    line-height: 27px;
  }

  .container--small {
    padding-left: 24px;
    padding-right: 24px;
  }

  .faq--accoridan-item {
    margin-bottom: 24px;
    padding-bottom: 24px;
  }

  .footer-top {
    padding-top: 60px;
    padding-bottom: 60px;
  }

  .footer-middle {
    padding-bottom: 80px;
  }

  .footer-middle-content {
    grid-template-columns: 1fr;
  }

  .footer-bottom {
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .footer-bottom-content-wrap {
    flex-direction: column;
    align-items: center;
  }

  .section--contact {
    grid-template-columns: 1fr;
  }

  .container__contact {
    padding: 60px 24px;
  }

  .contact-form {
    grid-template-columns: 1fr;
  }

  .wrapper--services-card {
    aspect-ratio: 1;
  }

  .medium-container {
    padding-left: 24px;
    padding-right: 24px;
  }

  .nav--logo.w--current {
    padding-left: 0;
  }

  .featured--link-icon {
    margin-right: 16px;
  }

  .hero--cta {
    flex-direction: column;
    justify-content: center;
    display: flex;
  }

  .hero--img {
    display: none;
  }

  .card--services {
    margin-bottom: 2rem;
    margin-left: auto;
    margin-right: auto;
  }

  .grid--services {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
    grid-template-columns: 1fr;
  }

  .featured-text {
    font-size: 16px;
    line-height: 24px;
  }

  .featured--item-header {
    text-align: center;
  }

  .featured--item-grid {
    grid-template-columns: 1fr;
  }

  .featured--img-wrapper._2, .featured--img-wrapper._3, .featured--img-wrapper._2, .featured--img-wrapper._3 {
    flex-direction: column;
    align-items: center;
    display: flex;
  }

  .about--intro-container {
    max-width: none;
  }

  .title--services {
    text-align: center;
    margin-top: 20px;
  }

  .footer-logo-container {
    padding-left: 24px;
    padding-right: 24px;
  }

  .container--half {
    grid-column-gap: 0rem;
    grid-row-gap: 0rem;
    flex-direction: column;
  }

  .hero--img-wrapper._3 {
    width: 100%;
    margin-bottom: 2rem;
  }

  .styleguide-sidepanel {
    padding-bottom: 0;
    padding-right: 35px;
    overflow: auto;
  }

  .pt-10 {
    padding-top: 1.5rem;
  }

  .pr-0-25 {
    padding-right: .425rem;
  }

  .pb-2-5 {
    padding-bottom: .425rem;
  }

  .text-highlight {
    padding: 9px;
  }

  .hide-ls-down {
    display: none;
  }

  .p-10 {
    padding: 1.5rem;
  }

  .columns-2 {
    grid-template-rows: auto auto;
    grid-template-areas: "Area Area"
                         "Area-2 Area-2";
  }

  .px-5 {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .flex-horiz-cc-2.form {
    width: auto;
  }

  .pb-10 {
    padding-bottom: 1.5rem;
  }

  .pl-2-5 {
    padding-left: .425rem;
  }

  .content-grid.columns-3 {
    grid-column-gap: 48px;
    grid-row-gap: 48px;
    grid-column-gap: 48px;
    grid-row-gap: 48px;
    grid-template-columns: 1fr;
  }

  .flex-horiz-c-start-2 {
    justify-content: center;
  }

  .flex-horiz-c-start-2.no-gap {
    padding-left: 0;
  }

  .pr-5 {
    padding-right: 1rem;
  }

  .py-10 {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }

  .pt-5 {
    padding-top: 1rem;
  }

  .px-2-5 {
    padding-left: .425rem;
    padding-right: .425rem;
  }

  .pt-2-5 {
    padding-top: .425rem;
  }

  .p-5 {
    padding: 1rem;
  }

  .py-2-5 {
    padding-top: .425rem;
    padding-bottom: .425rem;
  }

  .pl-10 {
    padding-left: 1.5rem;
  }

  .form-field {
    margin-bottom: -2px;
  }

  .pb-5 {
    padding-bottom: 1rem;
  }

  .py-5 {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .section-grid {
    grid-column-gap: 1px;
    grid-template-columns: 2vw minmax(96vw, 96vw) 2vw;
  }

  .pl-5 {
    padding-left: 1rem;
  }

  .pr-10 {
    padding-right: 1.5rem;
  }

  .p2-5 {
    padding: .425rem;
  }

  .container--medium {
    padding-left: 24px;
    padding-right: 24px;
  }

  .list {
    margin-top: 10px;
  }

  .card {
    width: 20rem;
    margin-left: auto;
    margin-right: auto;
  }

  .card-content {
    min-height: 20rem;
  }

  .form--button-wrapper {
    justify-content: space-between;
  }

  .slider--wrapper {
    width: 100%;
    min-height: 0;
  }

  .error-message-3 {
    margin-left: 10px;
    margin-right: 10px;
  }

  .form_slider-container {
    width: 100%;
    min-height: 0;
    margin-bottom: 4rem;
  }

  .form-next, .form-back {
    min-height: 50px;
    padding-left: 20px;
    padding-right: 20px;
    font-size: 14px;
  }

  .dropdown-link {
    padding-left: 8px;
    padding-right: 8px;
  }

  .large-paragraph {
    font-size: 16px;
    line-height: 24px;
  }

  .usp-grid {
    grid-column-gap: 16px;
    grid-template-columns: 1fr 1fr;
  }

  .container-3 {
    padding-left: 24px;
    padding-right: 24px;
  }

  .section-3 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}

@media screen and (max-width: 479px) {
  .nav--menu {
    padding-bottom: 16px;
    padding-left: 16px;
    padding-right: 16px;
  }

  .container {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
    padding-left: 16px;
    padding-right: 16px;
    display: block;
  }

  .secondary-nav--content {
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    font-size: 14px;
    display: flex;
  }

  .hero__img-wrapper._3 {
    padding-top: 30px;
    padding-right: 30px;
    display: none;
  }

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

  .img-doodle, .img-doodle._3, .img-doodle._3 {
    display: none;
  }

  .container--small, .container__contact {
    padding-left: 16px;
    padding-right: 16px;
  }

  .filter-wrapper {
    flex-wrap: wrap;
    place-content: center;
  }

  .filter-item {
    padding: 6px 8px;
  }

  .medium-container {
    padding-left: 16px;
    padding-right: 16px;
  }

  .nav--logo {
    padding-left: 0;
  }

  .nav--logo-text {
    max-width: 200px;
    font-size: 25px;
    line-height: 30px;
  }

  .featured--img-wrapper._2 {
    padding-top: 30px;
    padding-left: 30px;
  }

  .featured--img-wrapper._3 {
    padding-top: 30px;
    padding-right: 30px;
  }

  .blurb--header {
    font-size: 20px;
    line-height: 34px;
  }

  .footer-logo-container {
    padding-left: 16px;
    padding-right: 16px;
  }

  .heading {
    font-size: 36px;
  }

  .hero--img-wrapper._3 {
    padding-top: 30px;
    padding-right: 30px;
    display: none;
  }

  .about--content {
    width: 100%;
  }

  .styleguide-type-row {
    flex-direction: column;
  }

  .grid.col-4 {
    grid-template-columns: 1fr;
  }

  .text-highlight {
    width: 32%;
    padding: 20px 10px;
  }

  .styleguide-block-parent {
    width: 30%;
    margin-right: 3%;
  }

  .sgtext-container {
    width: 68%;
  }

  .hide-mob {
    display: none;
  }

  .color-block {
    width: 100%;
    height: 55px;
    margin-bottom: 10px;
    margin-right: 0;
  }

  .color-row {
    flex-direction: row;
  }

  .container-2 {
    flex-direction: column;
  }

  .sg-text-container {
    width: 100%;
    margin-bottom: 10px;
    margin-right: 0;
  }

  .h1-style {
    font-size: 2.5em;
  }

  .h3-style.align-bottom.hide-mobile {
    display: none;
  }

  .container--medium {
    padding-left: 16px;
    padding-right: 16px;
  }

  .card {
    width: 100%;
  }

  .form--button-wrapper {
    justify-content: space-around;
  }

  .slider--wrapper {
    width: 100%;
    min-width: 0;
    padding-left: 2px;
    padding-right: 2px;
  }

  .error-message-3 {
    margin-left: 10px;
    margin-right: 10px;
    padding: 10px;
  }

  .form_slider-container {
    margin-top: 0;
    padding-bottom: 20px;
    padding-left: 0;
    padding-right: 0;
  }

  .form-button {
    width: 100%;
    min-height: 50px;
  }

  .form-next {
    flex: none;
    width: 100%;
    margin-bottom: 20px;
    margin-left: 0;
    margin-right: 0;
  }

  .form-back {
    flex: none;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    display: flex;
  }

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

  .container-3 {
    padding-left: 16px;
    padding-right: 16px;
  }

  .grid-2 {
    flex-flow: column;
    grid-template-columns: 1fr 1fr;
    grid-auto-flow: row;
    display: flex;
    overflow: auto;
  }
}

#w-node-_15be3434-5852-f423-2dcc-388c7252ff1b-c884b278 {
  place-self: center;
}

#w-node-bdb4ff09-7b6c-ceb6-a1fc-63ba9a2c20f3-c884b278, #w-node-d7ea93bd-36bc-486f-ab08-efe55d6772b8-c884b278 {
  justify-self: end;
}

#w-node-fa53f447-be94-337e-ad83-20884a42c546-c884b278, #w-node-e919f813-3e4c-f787-3ce5-5c2115005c78-c884b278 {
  justify-self: start;
}

#w-node-_3f67bfc1-872f-41ab-2c1c-f5b015d97409-c884b278, #w-node-_70dd5917-7f47-f61d-ea2a-300e0a44d2b4-c884b278, #w-node-_836febf2-655d-5e68-f194-1be12dd4c666-c884b278, #w-node-_836febf2-655d-5e68-f194-1be12dd4c662-c884b278 {
  place-self: center;
}

#w-node-_8649667c-e68e-7ff4-880a-05d7af0d2dcd-c884b278 {
  justify-self: end;
}

#w-node-_8649667c-e68e-7ff4-880a-05d7af0d2dd2-c884b278 {
  justify-self: center;
}

#w-node-_8649667c-e68e-7ff4-880a-05d7af0d2dd7-c884b278 {
  justify-self: start;
}

#w-node-_89b76aa2-cb83-82a8-6260-1b34d9750fda-c884b278, #w-node-_09f6abdb-4cee-ccd3-72fd-85fb7bc00141-c884b278, #w-node-fd28bcb2-6814-9795-fd17-5dce7bb42086-c884b278, #w-node-_0e203aba-64ac-f498-8c4a-1bf1cf151dd3-c884b278 {
  align-self: end;
}

#w-node-_41e24cc6-a8fd-7434-9390-745fe7313018-9ddd261d {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_15551d27-0957-9cee-6a96-15a93f4f6a8a-3f4f6a88 {
  place-self: center start;
}

@media screen and (max-width: 767px) {
  #w-node-_15be3434-5852-f423-2dcc-388c7252ff1b-c884b278 {
    justify-self: start;
  }

  #w-node-_70dd5917-7f47-f61d-ea2a-300e0a44d2b4-c884b278, #w-node-_836febf2-655d-5e68-f194-1be12dd4c666-c884b278 {
    order: -9999;
  }
}
