:root {
  --white: white;
  --black: black;
}

.w-layout-hflex {
  flex-direction: row;
  align-items: flex-start;
  display: flex;
}

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

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

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

@media screen and (max-width: 410px) {
  .w-tab-content {
    padding-left: 6%;
    padding-right: 4%;
  }
}

body {
  color: #1a1b1f;
  font-family: Montserrat, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
}

h1 {
  margin-top: 20px;
  margin-bottom: 15px;
  font-size: 44px;
  font-weight: 400;
  line-height: 62px;
}

h2 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 36px;
  font-weight: 400;
  line-height: 50px;
}

h3 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 30px;
  font-weight: 400;
  line-height: 46px;
}

h4 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 24px;
  font-weight: 400;
  line-height: 38px;
}

h5 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 20px;
  font-weight: 500;
  line-height: 34px;
}

h6 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 16px;
  font-weight: 500;
  line-height: 28px;
}

p {
  margin-bottom: 10px;
}

a {
  color: #1a1b1f;
  text-decoration: underline;
  transition: opacity .2s;
  display: block;
}

a:hover {
  color: #32343a;
}

a:active {
  color: #43464d;
}

ul {
  margin-top: 20px;
  margin-bottom: 10px;
  padding-left: 40px;
  list-style-type: disc;
}

li {
  margin-bottom: 10px;
}

img {
  display: block;
}

label {
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: 500;
  line-height: 20px;
}

blockquote {
  border-left: 5px solid #e2e2e2;
  margin-top: 25px;
  margin-bottom: 25px;
  padding: 15px 30px;
  font-size: 20px;
  line-height: 34px;
}

figcaption {
  opacity: 1;
  text-align: center;
  margin-top: 5px;
  font-size: 14px;
  line-height: 26px;
}

.divider {
  background-color: #eee;
  height: 1px;
}

.styleguide-content-wrap {
  text-align: center;
}

.section {
  margin-left: 30px;
  margin-right: 30px;
  padding-top: 100px;
  padding-bottom: 100px;
}

.section.cc-cta {
  background-color: #f4f4f4;
  padding-left: 80px;
  padding-right: 80px;
}

.section.cc-home-wrap {
  padding-top: 0;
  padding-bottom: 0;
}

.section.cc-store-home-wrap {
  padding-top: 0;
}

.styleguide-block {
  text-align: left;
  flex-direction: column;
  align-items: center;
  margin-top: 80px;
  margin-bottom: 80px;
  display: block;
}

.container {
  object-fit: fill;
  width: auto;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

.paragraph-tiny {
  font-size: 12px;
  line-height: 20px;
}

.paragraph-bigger {
  opacity: 1;
  margin-bottom: 10px;
  font-size: 20px;
  font-weight: 400;
  line-height: 34px;
}

.paragraph-bigger.cc-bigger-light, .paragraph-bigger.cc-bigger-white-light {
  opacity: .6;
}

.primary-button {
  color: #fff;
  letter-spacing: 2px;
  text-transform: uppercase;
  background-color: #1a1b1f;
  border-radius: 0;
  padding: 12px 25px;
  font-size: 12px;
  line-height: 20px;
  text-decoration: none;
  transition: background-color .4s, opacity .4s, color .4s;
}

.primary-button:hover {
  color: #fff;
  background-color: #32343a;
}

.primary-button:active {
  background-color: #43464d;
}

.primary-button.cc-jumbo-button {
  padding: 16px 35px;
  font-size: 14px;
  line-height: 26px;
}

.primary-button.cc-contact-us {
  z-index: 5;
  position: relative;
}

.primary-button.cc-white-button {
  color: #202020;
  background-color: #fff;
  padding: 16px 35px;
  font-size: 14px;
  line-height: 26px;
}

.primary-button.cc-white-button:hover {
  background-color: #fffc;
}

.primary-button.cc-white-button:active {
  background-color: #ffffffe6;
}

.label {
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: 500;
  line-height: 20px;
}

.label.cc-styleguide-label {
  margin-bottom: 25px;
}

.label.cc-light {
  opacity: .6;
}

.label.cc-blog-date {
  opacity: .6;
  margin-top: 20px;
}

.heading-jumbo-tiny {
  text-transform: uppercase;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: 500;
  line-height: 32px;
}

.rich-text {
  width: 70%;
  margin-bottom: 100px;
  margin-left: auto;
  margin-right: auto;
}

.rich-text p {
  opacity: .6;
  margin-top: 15px;
  margin-bottom: 25px;
}

.rich-text figcaption {
  opacity: .6;
}

.rich-text figure {
  margin-top: 25px;
  padding-bottom: 20px;
}

.paragraph-light {
  opacity: .6;
}

.heading-jumbo {
  text-transform: none;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 64px;
  line-height: 80px;
}

.heading-jumbo-small {
  text-transform: none;
  margin-top: 10px;
  margin-bottom: 15px;
  font-size: 36px;
  font-weight: 400;
  line-height: 50px;
}

.styleguide-button-wrap {
  margin-top: 10px;
  margin-bottom: 10px;
}

.styleguide-header-wrap {
  color: #fff;
  text-align: center;
  background-color: #1a1b1f;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 460px;
  padding: 30px;
  display: flex;
}

.paragraph-small {
  font-size: 14px;
  line-height: 26px;
}

.logo-link {
  z-index: 1;
}

.logo-link:hover {
  opacity: .8;
}

.logo-link:active {
  opacity: .7;
}

.menu {
  z-index: 0;
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  inset: 0%;
}

.navigation-wrap {
  flex: 1;
  justify-content: space-between;
  align-items: center;
  display: flex;
  position: relative;
}

.navigation {
  background-color: #0000;
  align-items: center;
  padding: 30px 50px;
  display: flex;
}

.navigation-item {
  opacity: .6;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding-top: 9px;
  padding-bottom: 9px;
  font-size: 12px;
  font-weight: 500;
  line-height: 20px;
}

.navigation-item:hover {
  opacity: .9;
}

.navigation-item:active {
  opacity: .8;
}

.navigation-item.w--current {
  opacity: 1;
  color: #1a1b1f;
  font-weight: 600;
}

.navigation-item.w--current:hover {
  opacity: .8;
  color: #32343a;
}

.navigation-item.w--current:active {
  opacity: .7;
  color: #32343a;
}

.logo-image {
  display: block;
}

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

.footer-wrap {
  justify-content: center;
  align-items: center;
  padding-top: 70px;
  padding-bottom: 70px;
  display: flex;
}

.webflow-link {
  opacity: .5;
  align-items: center;
  text-decoration: none;
  transition: opacity .4s;
  display: flex;
}

.webflow-link:hover {
  opacity: 1;
}

.webflow-link:active {
  opacity: .8;
}

.webflow-logo-tiny {
  margin-top: -2px;
  margin-right: 8px;
}

.cta-text {
  width: 70%;
  margin-bottom: 35px;
  margin-left: auto;
  margin-right: auto;
}

.cta-wrap {
  text-align: center;
  justify-content: center;
  display: flex;
}

.intro-header {
  color: #fff;
  background-color: #f4f4f4;
  background-image: url('../images/portfolio-2---wide.svg');
  background-position: 0 0;
  background-size: cover;
  justify-content: center;
  align-items: center;
  height: 620px;
  margin-bottom: 100px;
  display: flex;
}

.intro-header.cc-subpage {
  color: #fff;
  background-color: #000;
  background-image: none;
  height: 480px;
}

.intro-content {
  text-align: center;
  width: 70%;
  max-width: 1140px;
}

.intro-content.cc-homepage {
  margin-bottom: 20px;
}

.motto-wrap {
  text-align: center;
  width: 80%;
  margin-bottom: 85px;
  margin-left: auto;
  margin-right: auto;
}

.about-story-wrap {
  text-align: center;
  width: 80%;
  margin: 80px auto;
}

.our-services-grid {
  grid-column-gap: 80px;
  grid-row-gap: 60px;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-areas: ". . ."
                       ". . .";
  margin-bottom: 120px;
}

.section-heading-wrap {
  text-align: center;
  margin-bottom: 80px;
}

.service-icon {
  margin-bottom: 30px;
}

.status-message {
  color: #fff;
  text-align: center;
  background-color: #202020;
  padding: 9px 30px;
  font-size: 14px;
  line-height: 26px;
}

.status-message.cc-success-message {
  background-color: #12b878;
}

.status-message.cc-error-message {
  background-color: #db4b68;
}

.status-message.cc-no-data {
  width: 70%;
  margin: 100px auto;
  display: block;
}

.contact-form-wrap {
  border: 1px solid #eee;
  padding: 45px 50px 50px;
}

.contact-form-grid {
  grid-column-gap: 80px;
  grid-row-gap: 30px;
  grid-template: ". ."
  / 2.5fr 1fr;
  align-items: start;
}

.details-wrap {
  margin-bottom: 30px;
}

.get-in-touch-form {
  flex-direction: column;
  display: flex;
}

.text-field {
  border: 1px solid #e4e4e4;
  border-radius: 0;
  margin-bottom: 18px;
  padding: 21px 20px;
  font-size: 14px;
  line-height: 26px;
  transition: border-color .4s;
}

.text-field:hover {
  border-color: #e3e6eb;
}

.text-field:active, .text-field:focus {
  border-color: #43464d;
}

.text-field::placeholder {
  color: #32343a66;
}

.text-field.cc-contact-field {
  margin-bottom: 25px;
}

.text-field.cc-textarea {
  height: 200px;
  padding-top: 12px;
}

.contact-form {
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.contact-form-heading-wrap {
  margin-bottom: 40px;
}

.contact-heading {
  margin-top: 0;
  margin-bottom: 15px;
  font-weight: 400;
}

.map {
  height: 460px;
  line-height: 20px;
}

.contact-team-name-wrap {
  margin-bottom: 30px;
}

.our-contacts {
  grid-column-gap: 80px;
  grid-row-gap: 60px;
  text-align: center;
  grid-template: ". . ."
  / 1fr 1fr 1fr;
}

.contact-team-details-wrap {
  margin-top: 30px;
}

.contact-team-pic {
  background-color: #f4f4f4;
  height: 150px;
  margin-bottom: 30px;
}

.team-pic {
  background-color: #f4f4f4;
  width: 100%;
  height: 420px;
  margin-bottom: 40px;
}

.team-members {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-areas: ". . ."
                       ". . .";
}

.team-member-title-wrap {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-bottom: 60px;
  display: flex;
}

.team-member-name {
  opacity: 1;
  margin-bottom: 5px;
  font-size: 20px;
  font-weight: 400;
  line-height: 34px;
}

.projects-grid {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  grid-template: "."
                 "."
                 "."
                 / 1fr;
}

.project-name-wrap {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-bottom: 60px;
  display: flex;
}

.project-name-link {
  margin-bottom: 5px;
  font-size: 20px;
  font-weight: 400;
  line-height: 34px;
  text-decoration: none;
}

.project-name-link:hover {
  opacity: .8;
}

.project-name-link:active {
  opacity: .7;
}

.project-cover-link {
  margin-bottom: 40px;
}

.project-cover-link:hover {
  opacity: .8;
}

.project-cover-link:active {
  opacity: .7;
}

.project-overview-header {
  color: #fff;
  background-color: #f4f4f4;
  background-image: url('../images/portfolio-1---wide.svg');
  background-position: 50%;
  background-size: cover;
  justify-content: center;
  align-items: center;
  height: 620px;
  display: flex;
}

.project-overview-header.cc-project-2-header {
  background-image: url('../images/portfolio-2---wide.svg');
  background-position: 50%;
}

.project-overview-header.cc-project-3-header {
  background-image: url('../images/portfolio-3---wide.svg');
  background-size: cover;
}

.project-details-grid {
  grid-column-gap: 80px;
  grid-row-gap: 30px;
  grid-template: ". ."
  / 1fr 2fr;
  align-items: start;
}

.detail-image {
  width: 100%;
  margin-bottom: 30px;
}

.blog-detail-header-wrap {
  width: 70%;
  margin: 60px auto;
}

.detail-header-image {
  background-image: url('https://d3e54v103j8qbb.cloudfront.net/img/background-image.svg');
  background-position: 0 0;
  background-size: cover;
  width: 100%;
  height: 620px;
  margin-bottom: 60px;
  display: block;
}

.detail-header-image.w--current {
  margin-bottom: 60px;
}

.blog-list-wrap {
  margin-bottom: 100px;
}

.blog-item {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  margin-bottom: 80px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.blog-preview-image {
  background-image: url('https://d3e54v103j8qbb.cloudfront.net/img/background-image.svg');
  background-position: 0 0;
  background-size: cover;
  width: 100%;
  height: 620px;
  margin-bottom: 45px;
  transition: opacity .6s;
  display: block;
}

.blog-preview-image:hover {
  opacity: .8;
}

.blog-preview-image:active {
  opacity: .7;
}

.blog-summary-wrap {
  text-align: left;
  width: 70%;
  margin-bottom: 20px;
  margin-left: auto;
  margin-right: auto;
}

.blog-heading-link {
  margin-bottom: 10px;
  font-size: 30px;
  font-weight: 400;
  line-height: 46px;
  text-decoration: none;
}

.blog-heading-link:hover {
  opacity: .8;
}

.blog-heading-link:active {
  opacity: .7;
}

.contact-email-link {
  opacity: .6;
  margin-bottom: 5px;
}

.contact-email-link:hover {
  opacity: 1;
}

.contact-email-link:active {
  opacity: .8;
}

.protected-form {
  flex-direction: column;
  display: flex;
}

.protected-wrap {
  justify-content: center;
  padding-top: 90px;
  padding-bottom: 100px;
  display: flex;
}

.protected-heading {
  margin-bottom: 30px;
}

.utility-page-wrap {
  color: #fff;
  text-align: center;
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  padding: 30px;
  display: flex;
}

._404-wrap {
  background-color: #1a1b1f;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 30px;
  display: flex;
}

._404-content-wrap {
  margin-bottom: 20px;
}

.home-content-wrap {
  margin-top: 80px;
}

.home-section-wrap {
  margin-bottom: 30px;
}

.section-heading {
  margin-top: 10px;
  margin-bottom: 20px;
  font-weight: 400;
}

.about-grid {
  grid-column-gap: 80px;
  grid-row-gap: 30px;
  grid-template: ". ."
  / 1fr 2fr;
  align-items: center;
  margin-bottom: 80px;
}

.about-grid.cc-about-2 {
  grid-template-columns: 2fr 1fr;
  grid-template-areas: ". .";
}

.intro-text {
  width: 80%;
  margin-bottom: 35px;
  margin-left: auto;
  margin-right: auto;
}

.collection-wrap {
  flex-wrap: wrap;
  place-content: flex-start center;
  align-items: flex-start;
  margin-left: -15px;
  margin-right: -15px;
  display: flex;
}

.work-heading {
  margin-top: 10px;
  margin-bottom: 20px;
  font-weight: 400;
}

.blog-heading {
  text-align: center;
  margin-bottom: 60px;
}

.blog-preview-wrap {
  width: 33.33%;
  padding-bottom: 30px;
  padding-left: 15px;
  padding-right: 45px;
}

.business-article-heading {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 24px;
  font-weight: 500;
  line-height: 38px;
  text-decoration: none;
}

.business-article-heading:hover {
  opacity: .8;
}

.business-article-heading:active {
  opacity: .7;
}

.secondary-button {
  color: #000;
  letter-spacing: 2px;
  text-transform: uppercase;
  background-color: #fff;
  padding: 12px 25px;
  font-size: 12px;
  line-height: 20px;
  text-decoration: none;
}

.secondary-button.cc-jumbo-button {
  padding: 16px 35px;
  font-size: 14px;
  line-height: 26px;
}

.utility-margin-bottom-4rem {
  margin-bottom: 4rem;
}

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

.button-group {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  background-color: #0000;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.button-group.align-center {
  justify-content: center;
}

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

.utility-aspect-3x2 {
  aspect-ratio: 3 / 2;
}

.hero-heading-center {
  background-color: #f5f7fa;
  border-bottom: 1px solid #e4ebf3;
  padding: 80px 30px;
  position: relative;
}

.container-2 {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}

.centered-heading {
  text-align: center;
  margin-bottom: 16px;
}

.centered-heading.margin-bottom-32px {
  margin-bottom: 32px;
}

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

.hero-split {
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  max-width: 46%;
  display: flex;
}

.margin-bottom-24px {
  margin-bottom: 24px;
}

.button-primary {
  color: #fff;
  letter-spacing: 2px;
  text-transform: uppercase;
  background-color: #1a1b1f;
  padding: 12px 25px;
  font-size: 12px;
  line-height: 20px;
  transition: all .2s;
}

.button-primary:hover {
  color: #fff;
  background-color: #32343a;
}

.button-primary:active {
  background-color: #43464d;
}

.shadow-two {
  box-shadow: 0 4px 24px #96a3b514;
}

.section-2 {
  background-image: none;
  background-repeat: repeat;
  background-size: auto;
  background-attachment: scroll;
  padding: 60px;
}

.section-2.hero {
  background-image: url('../images/map-3.avif'), linear-gradient(#d4e8ff, #fff 66%);
  background-position: 50% 0, 0 0;
  background-repeat: no-repeat, repeat;
  background-size: cover, auto;
  background-attachment: fixed, scroll;
  padding-top: 140px;
  padding-bottom: 0;
}

.section-2.hero.side {
  background-image: url('../images/map-3.avif'), linear-gradient(#eef6ff, #fff 66%);
  background-position: 50% 0, 0 0;
  background-repeat: no-repeat, repeat;
  background-size: cover, auto;
  background-attachment: fixed, scroll;
  margin-top: 10px;
  padding-top: 140px;
  padding-bottom: 60px;
  overflow: visible;
}

.section-2.blue-bg {
  background-image: linear-gradient(170deg, #f8fafc, #f1f5f9);
  background-position: 0 0;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.section-2.grey-bg {
  background-color: #f9fafb;
  margin-top: 0;
}

.section-2.footer {
  background-image: linear-gradient(#020331 35%, #00024e);
  background-position: 0 0;
}

.section-2.dark-blue-bg {
  background-color: #010347;
  padding-top: 40px;
  padding-bottom: 40px;
}

.section-2.negative {
  margin-top: -40px;
  margin-bottom: 0;
  padding-bottom: 60px;
}

.container-3 {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: auto;
  max-width: 1300px;
  padding-left: 20px;
  padding-right: 20px;
  font-family: Figtree, sans-serif;
  font-size: 60px;
  font-weight: 700;
  display: flex;
  overflow: hidden;
}

.container-3.features {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}

.container-3.features.stroke {
  background-image: url('../images/Footer-bg-3.png');
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: auto;
  border: .5px solid #604bff26;
  border-radius: 24px;
  margin-bottom: 60px;
  padding-bottom: 0;
}

.container-3.cta {
  background-color: #1c1f26;
  background-image: url('../images/map-3.avif'), linear-gradient(#010347, #010347);
  background-position: 50%, 0 0;
  background-repeat: no-repeat, repeat;
  background-size: 1240px 345px, auto;
  border-radius: 30px;
  margin-top: -60px;
  margin-bottom: 100px;
  padding-top: 60px;
  padding-bottom: 60px;
}

.container-3.side {
  overflow: hidden;
}

.heading {
  outline-offset: 0px;
  color: #fff;
  letter-spacing: 1.12px;
  background-color: #fff;
  background-image: linear-gradient(135deg, #111047, #010347cf 33%, #c9a24d);
  border-radius: 8px;
  outline: 3px #fff;
  justify-content: center;
  align-items: center;
  max-width: 423px;
  margin-top: 0;
  margin-bottom: 10px;
  padding: 8px 16px;
  font-family: Inter, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  display: flex;
  box-shadow: inset 2px 2px 4px #ffffff80, inset -3px -1px 6px #01034766;
}

.heading-2 {
  clear: left;
  color: #010347;
  text-align: center;
  font-family: Inter, sans-serif;
  font-size: 60px;
  font-weight: 600;
}

.heading-2.side {
  text-align: left;
  margin-bottom: 0;
  font-family: Inter, sans-serif;
  font-weight: 600;
}

.heading-2.side.gold {
  color: #c9a24d;
}

.heading-2.side.small {
  color: #0e1252;
  margin-bottom: 10px;
  font-size: 30px;
}

.image {
  width: auto;
  height: auto;
  margin-left: 485px;
}

.paragraph {
  text-align: center;
  max-width: 840px;
  margin-top: 20px;
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
  font-family: Inter, sans-serif;
  font-size: 20px;
  font-weight: 400;
}

.paragraph.side {
  text-align: left;
}

.paragraph.side.small {
  color: #4a5565;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 18px;
}

.link {
  color: #fff;
  font-family: Inter, sans-serif;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none;
}

.link:hover {
  color: #fff;
}

.link.sec {
  color: #c9a24d;
  font-size: 14px;
  font-weight: 400;
}

.link.white {
  color: #010347;
}

.flex-block {
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  color: #fff;
  background-color: #0e1252;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  max-width: 160px;
  margin-top: 60px;
  margin-left: 540px;
  padding: 8px 16px;
  transition: background-color .2s, padding .5s;
}

.flex-block:hover {
  background-color: #1b2181;
  max-width: 160px;
  padding: 10px 20px;
}

.flex-block.sec-button {
  background-color: #0e125200;
  margin-top: 0;
  padding: 0;
}

.flex-block.sec-button.prima.features:hover {
  background-color: #1b218100;
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 0;
}

.flex-block.white {
  background-color: #fff;
}

.flex-block.white.prim {
  max-width: none;
  margin-top: 20px;
  margin-left: 0;
  transition: padding .5s;
}

.flex-block.white.prim:hover {
  background-color: #fff;
  padding: 10px 20px;
}

.flex-block.prima {
  max-width: none;
  margin-top: 20px;
  margin-left: 0;
  transition: padding .5s, background-color .3s;
}

.flex-block.prima:hover {
  background-color: #1b2181;
  padding: 10px 20px;
}

.image-2 {
  margin-top: 60px;
  margin-left: 20px;
  margin-right: 20px;
}

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

.grid-2 {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  margin-bottom: 40px;
}

.flex-block-2 {
  grid-column-gap: 22px;
  grid-row-gap: 22px;
  justify-content: center;
  align-items: center;
}

.heading-3 {
  margin-top: 0;
  margin-bottom: 0;
  font-family: Inter, sans-serif;
}

.heading-3.body {
  color: #1c1f26;
  font-weight: 500;
}

.heading-3.body.blue {
  color: #040770;
  font-size: 24px;
}

.heading-3.body.bold {
  font-weight: 600;
}

.heading-3.body.bold.white {
  color: #fff;
  font-size: 16px;
}

.heading-3.body.white {
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  text-decoration: none;
}

.heading-4 {
  font-size: 30px;
  font-weight: 500;
}

.paragraph-2 {
  color: #4a5565;
  text-align: center;
  max-width: 886px;
  font-family: Inter, sans-serif;
}

.paragraph-3 {
  color: #4a5565;
  text-align: left;
  max-width: 886px;
  margin-bottom: 0;
  font-family: Inter, sans-serif;
  font-size: 16px;
  font-weight: 400;
}

.paragraph-3.side {
  text-align: left;
}

.paragraph-3.side.step {
  width: auto;
  max-width: 340px;
}

.paragraph-3.side.footer {
  color: #ffffffb3;
  margin-bottom: 0;
  font-size: 14px;
  text-decoration: none;
}

.paragraph-3.side.footer.full {
  text-align: center;
  background-color: #c9a24d0d;
  border: .56px solid #c9a24d33;
  border-radius: 10px;
  max-width: none;
  margin-top: 40px;
  padding: 16px 90px;
}

.paragraph-3.white {
  color: #fff;
}

.paragraph-3.gs {
  color: #dbeafe;
}

.heading-5 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 40px;
  font-weight: 600;
}

.heading-5.steps {
  color: #c9a24d33;
  margin-bottom: 20px;
  font-family: Inter, sans-serif;
  font-size: 60px;
  font-weight: 700;
}

.heading-5.white, .heading-5.gs {
  color: #fff;
}

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

.flex-block-3 {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  justify-content: flex-start;
  align-items: flex-start;
}

.flex-block-3._2 {
  justify-content: flex-start;
  align-items: center;
}

.flex-block-4 {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  background-image: linear-gradient(#f6fafd 61%, #e9e9e9);
  border: .56px solid #e2e8f0;
  border-radius: 16px;
  justify-content: flex-start;
  align-items: center;
  padding: 33px 33px 0;
  transition: background-color .2s, border .2s;
}

.flex-block-4:hover {
  background-image: linear-gradient(#e9f6ff 61%, #e9e9e9);
  border-width: .56px;
  border-color: #e2e8f0;
}

.flex-block-5 {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  justify-content: flex-start;
  align-items: center;
}

.flex-block-5.social-proof {
  grid-column-gap: 80px;
  grid-row-gap: 80px;
}

.grid-4 {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
}

.tabs-menu {
  background-color: #f3f3f6;
  border: 1px solid #e9eaeb;
  border-radius: 9999px;
  max-width: 350px;
  margin-bottom: 60px;
  padding: 8px;
}

.tab-link-privy-app {
  background-color: #ddd0;
}

.text-block, .text-block-2 {
  font-family: Inter, sans-serif;
  font-size: 18px;
  font-weight: 500;
}

.tab-link-otc {
  background-color: #ddd0;
  border-radius: 9999px;
}

.tab-link-otc.w--current {
  background-color: #fff;
  box-shadow: 0 1px 2px -1px #0a0d121a, 0 1px 3px #0a0d121a;
}

.div-block {
  background-color: #c9a24d;
  width: 360px;
  height: 3px;
  margin-top: 20px;
  margin-left: -12px;
}

.div-block.inactive {
  background-color: #c9a24d33;
}

.div-block.divider {
  background-color: #e5e7eb;
  width: 1151px;
  height: 2px;
  margin-left: 0;
}

.div-block.divider.footer {
  background-color: #c9a24d33;
  height: 1px;
  margin-top: 40px;
  margin-bottom: 40px;
}

.image-3 {
  margin-bottom: 0;
  margin-left: -12px;
}

.flex-block-6 {
  justify-content: flex-start;
  align-items: flex-start;
}

.flex-block-7 {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
}

.tabs {
  grid-column-gap: 25px;
  grid-row-gap: 25px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

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

.flex-block-8 {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  border: .56px solid #e5e7eb;
  border-radius: 14px;
  padding: 16px;
}

.flex-block-9, .flex-block-10 {
  justify-content: flex-start;
  align-items: center;
}

.grid-6 {
  grid-column-gap: 80px;
  grid-row-gap: 80px;
  flex: 0 auto;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  align-self: flex-start;
  place-items: stretch stretch;
  width: auto;
}

.grid-6.contact {
  grid-column-gap: 80px;
  grid-row-gap: 80px;
  place-items: center start;
  width: auto;
}

.flex-block-11 {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  width: 317px;
}

.flex-block-12 {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
}

.flex-block-13 {
  grid-column-gap: 25px;
  grid-row-gap: 25px;
  flex-flow: row;
  justify-content: flex-start;
  align-items: flex-start;
}

.flex-block-14 {
  grid-column-gap: 580px;
  grid-row-gap: 580px;
  justify-content: flex-start;
  align-items: flex-start;
}

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

.flex-block-16 {
  grid-column-gap: 62px;
  grid-row-gap: 62px;
}

.grid-7 {
  grid-column-gap: 65px;
  grid-row-gap: 65px;
  grid-template-rows: auto;
  align-self: auto;
  place-items: center;
}

.grid-7.grey-bg {
  background-color: #f9f9f9;
  border-radius: 16px;
  place-items: center;
  padding-top: 40px;
  padding-left: 40px;
  padding-right: 20px;
}

.grid-7.grey-bg.right {
  padding-left: 20px;
  padding-right: 40px;
}

.navbar {
  background-color: #fff;
}

.flex-block-17 {
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  justify-content: flex-start;
  align-items: center;
  margin-top: 20px;
}

.flex-block-18 {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  justify-content: flex-start;
  align-items: flex-start;
  padding-bottom: 40px;
}

.navbar-2 {
  background-color: #fff;
}

.navbar-2.section.nav {
  width: auto;
  margin-left: 0;
  margin-right: 0;
  padding: 10px 60px;
  position: fixed;
  inset: 0% 0% auto;
}

.nav-link {
  color: #1a1b1f;
  font-family: Inter, sans-serif;
}

.nav-link:hover {
  color: #0e1252;
  font-weight: 500;
}

.nav-link.button {
  color: #fff;
  background-color: #0e1252;
  border-radius: 8px;
  margin-top: 12px;
  margin-left: 30px;
  padding-top: 8px;
  padding-bottom: 8px;
  transition: background-color .3s;
}

.nav-link.button:hover {
  background-color: #1b2181;
}

.nav-link.button.sec {
  color: #0e1252;
  background-color: #0e125200;
  border: .56px solid #0e125233;
}

.image-5 {
  flex: 0 auto;
  align-self: auto;
  width: 142px;
  margin-top: 10px;
  padding-top: 0;
}

.flex-block-19 {
  grid-column-gap: 120px;
  grid-row-gap: 120px;
  margin-top: 60px;
  margin-left: 0;
  margin-right: 0;
}

.flex-block-19.left {
  margin-left: 0;
  margin-right: 0;
}

.ng {
  padding-right: 10px;
}

.flex-block-20 {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}

.div-block-2 {
  margin-left: 60px;
}

.div-block-3 {
  margin-left: 60px;
  margin-right: 0;
}

.grid-8 {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  grid-template-rows: auto;
  align-self: auto;
  margin-top: 40px;
}

.flex-block-21 {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  justify-content: flex-start;
  align-items: flex-start;
  margin-left: -80px;
}

.image-6 {
  margin-left: 80px;
}

.image-7 {
  margin-left: 44px;
}

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

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

.flex-block-24 {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  justify-content: flex-start;
  align-items: center;
}

.image-8 {
  margin-left: -510px;
}

.flex-block-25 {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  justify-content: flex-start;
  align-items: center;
}

.features-dropdown {
  justify-content: flex-start;
  align-items: center;
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 20px;
}

.text-block-3 {
  color: #1a1b1f;
  line-height: 24px;
}

.image-11 {
  width: 24px;
  margin-left: 17px;
}

.dropdown-list {
  background-color: #ddd;
}

.dropdown-list.w--open {
  background-color: #fff;
  border: 1px solid #414651;
  border-radius: 16px;
  width: 400px;
  max-width: 400px;
  margin-top: -10px;
  margin-left: 18px;
  font-weight: 400;
  box-shadow: 0 2px 9px 3px #414651;
}

.dropdown-list.features.w--open {
  width: 240px;
  max-width: 240px;
}

.dropdown-list.features.solutions.w--open {
  width: auto;
  max-width: 400px;
}

.dropdown-list.features.solutions.mobile.w--open {
  box-shadow: none;
  border-color: #dde3f1;
  border-radius: 8px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  margin-top: 0;
  padding-top: 10px;
  padding-bottom: 10px;
  font-family: Inter, sans-serif;
  font-weight: 400;
  display: flex;
}

.nav-link-2 {
  color: #fff;
  font-family: Inter, sans-serif;
  font-size: 16px;
  font-weight: 600;
}

.dropdown-link {
  color: #414651;
  text-align: left;
  margin-left: auto;
  margin-right: auto;
  font-family: Inter, sans-serif;
  font-weight: 400;
}

.image-12 {
  width: 24px;
  margin-left: 17px;
}

.nav-menu {
  position: relative;
}

.flex-block-27 {
  padding-bottom: 40px;
}

.body-2, .body-3 {
  overflow: visible;
}

.body-4 {
  object-fit: fill;
  overflow: visible;
}

.body-5 {
  overflow: visible;
}

@media screen and (max-width: 991px) {
  .section.cc-cta {
    padding-left: 0;
    padding-right: 0;
  }

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

  .primary-button {
    justify-content: center;
  }

  .primary-button.cc-contact-us {
    display: none;
  }

  .heading-jumbo {
    font-size: 56px;
    line-height: 70px;
  }

  .logo-link.w--current {
    flex: 1;
  }

  .menu-icon {
    display: block;
  }

  .menu {
    margin-left: 30px;
    position: static;
  }

  .navigation-wrap {
    background-color: #fff;
  }

  .navigation {
    padding: 25px 30px;
  }

  .navigation-item {
    text-align: center;
    padding: 15px 30px;
    transition: background-color .4s, opacity .4s, color .4s;
  }

  .navigation-item:hover {
    background-color: #f7f8f9;
  }

  .navigation-item:active {
    background-color: #eef0f3;
  }

  .menu-button {
    padding: 0;
  }

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

  .navigation-items {
    background-color: #fff;
  }

  .cta-text {
    width: auto;
  }

  .cta-wrap {
    width: auto;
    padding: 80px 50px 90px;
  }

  .our-services-grid {
    text-align: center;
    grid-template: ". ."
                   ". ."
                   ". ."
                   / 1fr 1fr;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }

  .service-icon {
    display: inline-block;
  }

  .contact-form-grid {
    grid-row-gap: 50px;
    text-align: center;
    grid-template: "."
                   "."
                   / 1fr;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }

  .get-in-touch-form {
    text-align: left;
  }

  .our-contacts {
    grid-template: "."
                   "."
                   "."
                   / 1fr;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }

  .team-members {
    grid-template: ". ."
                   ". ."
                   ". ."
                   / 1fr 1fr;
  }

  .team-member-title-wrap {
    margin-bottom: 30px;
  }

  .project-details-grid {
    grid-row-gap: 50px;
    text-align: center;
    grid-template: "."
                   "."
                   / 1fr;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }

  .blog-detail-header-wrap {
    width: 70%;
  }

  .detail-header-image {
    height: 460px;
  }

  .blog-item {
    width: 80%;
  }

  .blog-preview-image {
    height: 460px;
  }

  .blog-summary-wrap {
    width: 100%;
  }

  .about-grid {
    grid-row-gap: 50px;
    text-align: center;
    grid-template: "."
                   "."
                   / 1fr;
  }

  .about-grid.cc-about-2 {
    grid-template-columns: 1fr;
    grid-template-areas: "."
                         ".";
  }

  .intro-text {
    width: auto;
  }

  .collection-wrap {
    flex-flow: column;
    align-items: center;
    margin-left: 0;
    margin-right: 0;
  }

  .blog-preview-wrap {
    text-align: center;
    width: 80%;
    padding-right: 15px;
  }

  .container-2 {
    max-width: 728px;
  }

  .hero-wrapper {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin-bottom: -40px;
  }

  .hero-split {
    max-width: 100%;
    margin-bottom: 40px;
  }

  .section-2 {
    padding-top: 40px;
  }

  .container-3.features {
    grid-column-gap: 40px;
    grid-row-gap: 40px;
  }

  .container-3.features.stroke {
    padding-left: 20px;
    padding-right: 20px;
  }

  .container-3.cta {
    margin-top: 0;
  }

  .heading-2 {
    font-size: 48px;
  }

  .heading-2.side.small {
    font-size: 24px;
  }

  .image {
    margin-left: 394px;
  }

  .paragraph.side.small {
    font-size: 16px;
  }

  .flex-block {
    margin-left: 210px;
  }

  .flex-block.sec-button.prima.features:hover {
    background-color: #1b218100;
    padding: 0 0 0 20px;
  }

  .heading-3.body {
    font-size: 16px;
  }

  .heading-4 {
    text-align: left;
    font-size: 24px;
  }

  .paragraph-3 {
    text-align: center;
    font-size: 16px;
  }

  .paragraph-3.side.footer.full {
    padding-left: 60px;
  }

  .paragraph-3.white {
    padding-left: 10px;
  }

  .heading-5 {
    text-align: center;
    font-size: 28px;
  }

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

  .flex-block-4.mobile {
    padding-bottom: 10px;
  }

  .flex-block-5.social-proof {
    grid-column-gap: 22px;
    grid-row-gap: 22px;
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }

  .grid-4 {
    grid-column-gap: 21px;
    grid-row-gap: 21px;
    grid-template-columns: 1fr;
    grid-auto-flow: row;
    width: auto;
  }

  .div-block {
    flex: 0 auto;
    width: 3px;
    height: 60px;
    margin-top: 0;
    margin-left: 31px;
  }

  .div-block.divider {
    width: 640px;
  }

  .image-3 {
    margin-left: -8px;
  }

  .flex-block-6 {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .flex-block-7 {
    grid-column-gap: 33px;
    grid-row-gap: 33px;
    flex-flow: row;
  }

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

  .grid-6 {
    width: auto;
  }

  .grid-6.contact {
    width: 648px;
  }

  .flex-block-14 {
    grid-column-gap: 68px;
    grid-row-gap: 68px;
    justify-content: center;
    align-items: flex-start;
  }

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

  .image-4 {
    font-size: 40px;
  }

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

  .grid-7.grey-bg {
    padding-bottom: 20px;
    padding-left: 40px;
  }

  .grid-7.grey-bg.right {
    padding-bottom: 20px;
    padding-left: 40px;
    padding-right: 20px;
  }

  .nav-link {
    float: none;
    justify-content: flex-start;
    align-items: flex-start;
    width: 710px;
    display: flex;
    position: relative;
  }

  .nav-link.button {
    width: 130px;
    margin-left: 20px;
    margin-right: 0;
  }

  .nav-link.button.sec {
    width: 130px;
    max-width: none;
    margin-left: 20px;
    display: block;
  }

  .flex-block-19, .flex-block-19.left {
    overflow: hidden;
  }

  .ng {
    padding-right: 0;
  }

  .grid-8 {
    grid-template-columns: 1fr;
    place-items: center;
    width: auto;
  }

  .flex-block-21 {
    justify-content: flex-start;
    align-items: center;
    width: 648px;
    margin-left: 0;
  }

  .image-6 {
    margin-left: 0;
  }

  .image-8 {
    margin-left: -504px;
  }

  .image-9 {
    width: auto;
  }

  .image-10 {
    width: 303.5px;
  }

  .features-dropdown {
    color: #fff;
    width: auto;
  }

  .text-block-3 {
    width: 708px;
  }

  .text-block-3:hover {
    color: #0e1252;
  }

  .dropdown-list.features.w--open {
    float: right;
    clear: none;
    box-shadow: none;
    background-color: #16171a;
    border-width: 0;
    width: 50%;
    max-width: none;
    position: relative;
  }

  .dropdown-list.features.solutions.w--open {
    width: auto;
    max-width: none;
    margin-top: 10px;
    inset: 0% 0% auto;
    overflow: visible;
  }

  .dropdown-list.features.solutions.mobile.w--open {
    background-color: #fff0;
    margin-top: 0;
    overflow: clip;
  }

  .nav-link-2 {
    width: 688px;
  }

  .nav-link-2:hover {
    background-color: #2d2e33;
  }

  .dropdown-link {
    color: #1a1b1f;
  }

  .dropdown-link:hover {
    background-color: #0d125217;
    border-radius: 4px;
  }

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

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

  .nav-menu {
    background-color: #f2f7fd;
    width: 710px;
    padding-bottom: 20px;
    box-shadow: 0 2px 5px #6b6b6b33;
  }

  .flex-block-26 {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    justify-content: flex-start;
    align-items: center;
  }

  .menu-button-2 {
    background-color: #c8c8c800;
  }

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

  .image-13 {
    margin-left: -22px;
  }

  .image-14 {
    margin-left: -22px;
    margin-right: 0;
  }

  .image-15, .image-16, .image-17 {
    margin-left: -22px;
  }
}

@media screen and (max-width: 767px) {
  .section {
    margin-left: 15px;
    margin-right: 15px;
  }

  .section.cc-cta {
    padding: 15px;
  }

  .section.cc-home-wrap, .section.cc-store-home-wrap {
    margin-left: 15px;
    margin-right: 15px;
  }

  .container {
    text-align: center;
  }

  .paragraph-bigger {
    font-size: 16px;
    line-height: 28px;
  }

  .rich-text {
    text-align: left;
    width: 90%;
    max-width: 470px;
  }

  .heading-jumbo {
    font-size: 50px;
    line-height: 64px;
  }

  .heading-jumbo-small {
    font-size: 30px;
    line-height: 52px;
  }

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

  .navigation {
    padding: 20px 30px;
  }

  .cta-wrap {
    padding-left: 30px;
    padding-right: 30px;
  }

  .intro-content {
    width: 80%;
  }

  .our-services-grid {
    grid-row-gap: 60px;
    grid-template: "."
                   "."
                   "."
                   "."
                   "."
                   "."
                   / 1fr;
  }

  .status-message.cc-no-data {
    width: 80%;
    max-width: 470px;
  }

  .contact-form-wrap {
    padding: 30px;
  }

  .text-field.cc-contact-field, .text-field.cc-textarea {
    text-align: left;
  }

  .team-pic {
    height: 300px;
    margin-bottom: 30px;
  }

  .team-member-name {
    font-size: 16px;
    line-height: 28px;
  }

  .project-name-wrap {
    margin-bottom: 30px;
  }

  .project-name-link {
    font-size: 16px;
    line-height: 28px;
  }

  .detail-image {
    margin-bottom: 15px;
  }

  .blog-detail-header-wrap {
    text-align: left;
    width: 90%;
    max-width: 470px;
  }

  .blog-item {
    width: 90%;
    max-width: 470px;
  }

  .blog-summary-wrap {
    text-align: center;
  }

  .utility-page-wrap {
    padding: 15px;
  }

  ._404-wrap {
    padding: 30px;
  }

  .utility-margin-bottom-4rem {
    margin-bottom: 2rem;
  }

  .hero-heading-center {
    padding: 60px 15px;
  }

  .section-2 {
    padding-bottom: 40px;
    padding-left: 40px;
    padding-right: 40px;
  }

  .section-2.hero.side {
    padding-top: 60px;
  }

  .section-2.blue-bg {
    padding-left: 40px;
    padding-right: 40px;
  }

  .container-3 {
    justify-content: center;
    align-items: center;
  }

  .heading-2 {
    font-size: 40px;
    line-height: 48px;
  }

  .heading-2.side.small {
    margin-top: 0;
    font-size: 18px;
  }

  .image {
    width: 220px;
    margin-left: 23px;
  }

  .paragraph, .paragraph.side.small {
    font-size: 16px;
  }

  .flex-block {
    margin-left: 145px;
  }

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

  .flex-block-2 {
    flex-flow: wrap;
    justify-content: flex-start;
    align-items: center;
  }

  .heading-3.body.blue {
    text-align: center;
    font-size: 20px;
  }

  .heading-4 {
    text-align: center;
    font-size: 20px;
    line-height: 36px;
  }

  .paragraph-3 {
    font-size: 14px;
  }

  .paragraph-3.side {
    margin-bottom: 0;
  }

  .heading-5 {
    font-size: 20px;
    line-height: 36px;
  }

  .heading-5.steps {
    font-size: 40px;
  }

  .flex-block-4.mobile {
    padding-bottom: 10px;
  }

  .flex-block-5.social-proof, .flex-block-5.social-proof.gs {
    grid-column-gap: 8px;
    grid-row-gap: 8px;
  }

  .grid-4 {
    padding-top: 10px;
  }

  .div-block.divider {
    width: 540px;
  }

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

  .grid-6 {
    grid-column-gap: 40px;
    grid-row-gap: 40px;
    grid-template-columns: 1fr;
  }

  .grid-6.contact {
    width: auto;
  }

  .grid-7.grey-bg {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
    padding-top: 30px;
    padding-right: 40px;
  }

  .grid-7.grey-bg.right {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
  }

  .nav-link {
    width: 510px;
    position: relative;
  }

  .nav-link.button {
    margin-left: 20px;
  }

  .flex-block-19, .flex-block-19.left {
    overflow: hidden;
  }

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

  .grid-8, .flex-block-21 {
    width: 400px;
  }

  .image-8 {
    margin-left: -375px;
  }

  .image-9 {
    width: auto;
  }

  .image-10 {
    width: 203.438px;
  }

  .dropdown-list.features.w--open {
    background-color: #16171a00;
    margin-top: 0;
    padding-left: 20px;
  }

  .nav-link-2 {
    width: 488px;
  }

  .nav-menu {
    width: 510px;
  }

  .image-17 {
    margin-left: 0;
  }
}

@media screen and (max-width: 479px) {
  h1 {
    font-size: 36px;
    line-height: 52px;
  }

  .container {
    max-width: 433%;
    padding-left: 0;
    padding-right: 0;
  }

  .rich-text {
    width: 100%;
    max-width: none;
  }

  .heading-jumbo {
    font-size: 36px;
    line-height: 48px;
  }

  .menu {
    margin-left: 15px;
  }

  .navigation {
    padding-left: 20px;
    padding-right: 20px;
  }

  .menu-button, .menu-button.w--open {
    flex: none;
  }

  .cta-wrap {
    padding-left: 15px;
    padding-right: 15px;
  }

  .status-message.cc-no-data, .contact-form-grid {
    width: 100%;
  }

  .our-contacts {
    width: 90%;
  }

  .team-members {
    grid-template: "."
                   "."
                   "."
                   "."
                   "."
                   "."
                   / 1fr;
  }

  .project-details-grid {
    width: 100%;
  }

  .blog-detail-header-wrap, .blog-item {
    width: 100%;
    max-width: none;
  }

  .container-2 {
    max-width: none;
  }

  .centered-heading {
    margin-bottom: 24px;
  }

  .section-2 {
    width: auto;
    padding-top: 10px;
    padding-left: 0;
    padding-right: 0;
  }

  .section-2.hero {
    padding-top: 100px;
    padding-left: 10px;
    padding-right: 10px;
  }

  .section-2.hero.side {
    max-width: none;
    overflow: visible;
  }

  .section-2.blue-bg {
    width: auto;
    padding-left: 10px;
    padding-right: 10px;
  }

  .section-2.grey-bg {
    padding-bottom: 40px;
    padding-left: 0;
    padding-right: 0;
  }

  .section-2.footer {
    padding-bottom: 40px;
  }

  .section-2.dark-blue-bg {
    padding-top: 10px;
  }

  .section-2.negative {
    padding-bottom: 10px;
  }

  .section-2.cta {
    padding-left: 10px;
    padding-right: 10px;
  }

  .container-3 {
    width: auto;
    margin-top: 20px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .container-3.features {
    justify-content: center;
    align-items: center;
    width: auto;
    padding-left: 20px;
    padding-right: 20px;
  }

  .container-3.features.stroke {
    margin-left: 10px;
    margin-right: 10px;
  }

  .container-3.cta {
    width: auto;
    margin-bottom: 40px;
    margin-left: 10px;
    margin-right: 10px;
    padding-left: 0;
    padding-right: 0;
  }

  .container-3.side {
    width: auto;
    max-width: none;
    overflow: hidden;
  }

  .container-3.value {
    padding-left: 0;
    padding-right: 0;
  }

  .heading {
    text-align: center;
    font-size: 12px;
  }

  .heading-2.side.small {
    line-height: 32px;
  }

  .flex-block {
    margin-left: 72px;
  }

  .flex-block-2 {
    clear: none;
    grid-column-gap: 16px;
    grid-row-gap: 16px;
  }

  .flex-block-22 {
    padding-left: 20%;
  }

  .flex-block-2.icon1 {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
  }

  .heading-4 {
    width: auto;
    font-size: 20px;
  }

  .paragraph-3 {
    width: auto;
  }

  .paragraph-3.white {
    padding-right: 10px;
  }

  .heading-5 {
    font-size: 20px;
  }

  .heading-5.steps {
    font-size: 40px;
  }

  .flex-block-5 {
    width: auto;
  }

  .flex-block-5.social-proof {
    grid-column-gap: 80px;
    grid-row-gap: 80px;
    grid-template-columns: 1fr 1fr;
  }

  .grid-4 {
    width: 380px;
    padding-left: 0;
    padding-right: 0;
  }

  .tabs-menu {
    justify-content: flex-start;
    align-self: auto;
    align-items: flex-start;
    width: 270px;
    max-width: none;
    display: flex;
  }

  .text-block {
    font-size: 16px;
  }

  .div-block {
    margin-left: 12px;
  }

  .image-3 {
    width: auto;
  }

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

  .grid-6 {
    grid-column-gap: 29px;
    grid-row-gap: 29px;
    grid-template-columns: 1fr;
    place-items: center start;
    width: 280px;
  }

  .flex-block-11 {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .flex-block-14 {
    flex-flow: column;
  }

  .navbar-2.section.nav {
    padding-top: 10px;
    padding-left: 10px;
    padding-right: 10px;
  }

  .nav-link {
    justify-content: flex-start;
    align-items: flex-start;
    width: 320px;
  }

  .nav-link.button {
    width: 240px;
    margin-left: 20px;
  }

  .nav-link.button.sec {
    width: 240px;
  }

  .flex-block-19, .flex-block-19.left {
    overflow: hidden;
  }

  .ng {
    overflow: visible;
  }

  .grid-8 {
    place-items: center;
    width: auto;
  }

  .flex-block-21 {
    justify-content: flex-start;
    align-items: center;
    width: auto;
  }

  .flex-block-21.value {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
  }

  .image-6, .flex-block-22 {
    width: auto;
  }

  .flex-block-24 {
    justify-content: center;
    align-items: center;
  }

  .image-8 {
    margin-left: -219px;
    padding: 10px;
  }

  .image-9 {
    width: auto;
  }

  .image-10 {
    width: 154.45px;
  }

  .nav-link-2 {
    width: 295.333px;
  }

  .nav-menu {
    width: 320px;
    margin-left: 0;
    padding-left: 0;
  }

  .flex-block-26 {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .image-15 {
    margin-left: 0;
  }

  .image-18 {
    box-sizing: content-box;
    object-fit: cover;
    overflow: visible;
  }

  .flex-block-28 {
    width: 100%;
  }

  .body-2, .body-3, .body-4, .body-5 {
    overflow: visible;
  }
}

#w-node-_72bff139-ab5b-a502-6d29-637a7f040a0d-d2e00a75 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_51d41041-5fc4-3889-e9a5-3cd2588e10c0-d2e00a75 {
  grid-area: span 2 / span 2 / span 2 / span 2;
}

#w-node-c2f969af-3675-afac-dd70-2700a994f9d6-d2e00a75, #w-node-_74b63923-b4b3-4581-8fa9-5e709a091e6d-d2e00a75 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_068ae061-35db-df63-d220-dde0dc0d8e03-d2e00a78, #w-node-e8b9ead8-72e9-63fd-7693-3b3450a4872a-d2e00a78, #w-node-a9e457a2-ba97-ff49-dc18-da89b5a187ea-f512a4ae, #w-node-f16f1fc5-d1a5-9aa5-ac6f-393137c00f81-f512a4ae, #w-node-_4febe58d-35a2-4d4b-1879-4333147fb21c-f512a4ae, #w-node-_7bf38bf0-aa53-51d8-a360-252ca63cdb02-22dde605, #w-node-_06507b80-2133-1fa6-c8a7-5a494e4b12b8-22dde605, #w-node-b022d29f-a8ca-4597-12bb-4ba67c4abd3c-4fdf3511 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_66217722-307b-95bc-c6ef-b9f7ef6b0dc1-4fdf3511 {
  grid-area: span 2 / span 2 / span 2 / span 2;
}

#w-node-_66217722-307b-95bc-c6ef-b9f7ef6b0dcc-4fdf3511, #w-node-_66217722-307b-95bc-c6ef-b9f7ef6b0dd7-4fdf3511 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}


