@font-face {
  font-family: Inter;
  src: url('../fonts/Inter-Bold.ttf') format("truetype"), url('../fonts/Inter-ExtraBold.ttf') format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

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

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

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

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

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

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

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

:root {
  --light-gray: #e7e7e9;
  --black: #050505;
  --secondary: #4788bb;
  --white: whitesmoke;
  --primary: #003249;
  --borderradius: 12px;
  --dark-gray: #c7c7c7;
  --alternate: #81a3a5;
  --tertiary: #ccdbdc;
  --cardsize: 37vw;
  --cardsizemobile: 85vw;
  --transparent: transparent;
  --border-radius-large: 24px;
}

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

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

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

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

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

body {
  background-color: var(--light-gray);
  color: var(--black);
  font-family: Inter, Tahoma, sans-serif;
  font-size: 1vw;
  line-height: 1.4vw;
}

h1 {
  letter-spacing: -.07vw;
  text-transform: capitalize;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 5.55vw;
  font-weight: 300;
  line-height: 6.11vw;
}

h2 {
  letter-spacing: -.07vw;
  text-transform: capitalize;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 4.44vw;
  font-weight: 300;
  line-height: 5vw;
}

h3 {
  letter-spacing: -.07vw;
  text-transform: capitalize;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 3.33vw;
  font-weight: 300;
  line-height: 3.89vw;
}

h4 {
  letter-spacing: -.07vw;
  text-transform: capitalize;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 2.78vw;
  font-weight: 300;
  line-height: 3.33vw;
}

h5 {
  letter-spacing: .14vw;
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
  font-size: .89vw;
  font-weight: 400;
  line-height: 1.44vw;
}

h6 {
  letter-spacing: .14vw;
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
  font-size: .78vw;
  font-weight: 400;
  line-height: 1.33vw;
}

p {
  letter-spacing: .07vw;
  justify-content: center;
  align-items: flex-start;
  margin-bottom: 0;
  font-size: 1.11vw;
  font-weight: 300;
  line-height: 1.89vw;
  display: flex;
}

a {
  color: var(--black);
  letter-spacing: .07vw;
  font-size: 1.1vw;
  line-height: 1.44vw;
  text-decoration: none;
}

ul {
  grid-column-gap: 1.11vw;
  grid-row-gap: 1.11vw;
  flex-flow: column;
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 2.8vw;
  display: flex;
}

ol {
  grid-column-gap: 1.11vw;
  grid-row-gap: 1.11vw;
  flex-flow: column;
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 2.78vw;
  display: flex;
}

li {
  letter-spacing: .07vw;
  font-size: 1.11vw;
  font-weight: 300;
  line-height: 1.89vw;
}

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

sup {
  vertical-align: super;
  font-size: 2.78vw;
  line-height: 2.22vw;
  top: -.33vw;
}

blockquote {
  border-left: 5px solid var(--black);
  margin-bottom: 0;
  padding: .56vw 0 .56vw 1.67vw;
  font-size: 1.11vw;
  line-height: 1.89vw;
}

.utilities-wrapper-colors {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.utilities-wrapper-title {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  text-align: left;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 50%;
  display: flex;
}

.background-secondary {
  background-color: var(--secondary);
}

.space-page-top {
  min-height: 11.11vw;
}

.color-wrapper {
  border-radius: 6.25rem;
  min-width: 100%;
  max-width: 16rem;
  min-height: 8rem;
  max-height: 8rem;
  position: relative;
  overflow: hidden;
}

.color-wrapper.border {
  border: .0625rem solid var(--black);
}

.utilities-title-flex {
  grid-column-gap: 1.11vw;
  grid-row-gap: 1.11vw;
  justify-content: center;
  align-items: center;
  display: flex;
}

.container {
  width: 100%;
  max-width: none;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.container.overflow {
  overflow: visible;
}

.container.padding-4-5rem {
  padding-left: 4.5rem;
  padding-right: 4.5rem;
}

.container.padding-9rem {
  padding-left: 9rem;
  padding-right: 9rem;
}

.container.padding-13-5rem {
  padding-left: 13.5rem;
  padding-right: 13.5rem;
}

.container.rounded-corners-bottom {
  border-bottom-right-radius: 6.67vw;
  border-bottom-left-radius: 6.67vw;
}

.space-2rem {
  min-height: 2.2vw;
}

.rich-text {
  flex-direction: column;
  display: flex;
}

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

.utilities-flex {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  display: flex;
  position: relative;
}

.section {
  width: 100%;
}

.utilities-wrapper {
  text-align: left;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  width: 70%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 2rem;
  padding-right: 2rem;
  display: flex;
}

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

.utilities-wrapper-paragraph {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  text-align: left;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  width: 50%;
  display: flex;
}

.utilities-grid-thirds {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: grid;
}

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

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

.utilities-wrapper-rich-text-and-buttons {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  text-align: left;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.utilities-line {
  background-color: var(--black);
  min-width: 2.2vw;
  min-height: .3vw;
}

.utilities-title {
  grid-column-gap: 1.11vw;
  grid-row-gap: 1.11vw;
  text-align: left;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.utilities-line-spacer {
  background-color: var(--black);
  width: 100%;
  min-height: .1vw;
}

.utilities-flex-headings-and-paragraph {
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.line-spacer {
  width: 100%;
}

.space-4rem {
  min-height: 4.4vw;
}

.fill {
  position: absolute;
  inset: -1rem;
}

.caps {
  text-transform: uppercase;
  font-size: 3.5vw;
  line-height: 4vw;
}

.show-on-tab {
  display: none;
}

.font-black {
  color: var(--black);
}

.no-wrap {
  white-space: nowrap;
}

.space-1rem {
  min-height: 1.1vw;
}

.space-0-5rem {
  min-height: .56vw;
}

.space-7rem {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  min-height: 7.8vw;
  display: flex;
}

.max-width-38rem {
  max-width: 42.22vw;
}

.invert {
  filter: invert();
}

.button-text {
  margin-bottom: 0;
  font-size: 1.11vw;
  line-height: 1.89vw;
}

.arrow {
  min-width: .9vw;
  max-width: .9vw;
  min-height: .9vw;
  max-height: .9vw;
}

.button-with-circle-icon {
  grid-column-gap: 1.11vw;
  grid-row-gap: 1.11vw;
  border-radius: var(--borderradius);
  background-color: var(--dark-gray);
  -webkit-backdrop-filter: blur(1rem);
  backdrop-filter: blur(1rem);
  color: var(--black);
  text-transform: uppercase;
  cursor: pointer;
  justify-content: center;
  align-items: center;
  min-width: 12.22vw;
  min-height: 2.8vw;
  max-height: 2.8vw;
  padding: .14vw 2.22vw;
  transition: background-color .25s;
  display: flex;
  position: relative;
  overflow: hidden;
}

.button-with-circle-icon.button-light {
  border-color: var(--primary);
  background-color: var(--primary);
  color: var(--light-gray);
  -webkit-text-stroke-color: var(--black);
  border-radius: 12px;
}

.footer-link-wrapper {
  flex-direction: column;
  display: flex;
  position: relative;
  overflow: hidden;
}

.footer-logo-link-wrapper {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.footer-right-flex {
  grid-column-gap: 8vw;
  grid-row-gap: 8vw;
  justify-content: flex-end;
  align-items: flex-start;
  display: flex;
}

.footer-link {
  color: var(--light-gray);
  font-size: 1vw;
  line-height: 1.78vw;
}

.footer-link.move-down {
  position: absolute;
  top: 100%;
}

.footer-wrapper {
  grid-column-gap: 1.67vw;
  grid-row-gap: 1.67vw;
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.footer-logo {
  object-fit: cover;
  object-position: 50% 50%;
  min-height: 2.22vw;
  max-height: 2.22vw;
}

.footer-top {
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  max-width: 80vw;
  margin-left: auto;
  margin-right: auto;
  padding-top: 4.4vw;
  padding-bottom: 4.4vw;
  display: flex;
}

.footer-block {
  grid-column-gap: .6vw;
  grid-row-gap: .6vw;
  flex-flow: column;
  align-items: flex-start;
  display: flex;
}

.max-width-17vw {
  color: var(--dark-gray);
  max-width: 17vw;
  font-size: .6vw;
}

.utilities-side-bar {
  grid-column-gap: 2.2vw;
  grid-row-gap: 2.2vw;
  border-right: .07vw solid var(--dark-gray);
  color: var(--black);
  text-align: left;
  -webkit-text-stroke-color: var(--black);
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  min-width: 22.2vw;
  max-width: 22.2vw;
  height: 100vh;
  padding-left: 2.2vw;
  padding-right: 2.2vw;
  display: flex;
  position: sticky;
  top: 2.2vw;
}

.utilities-flex-title {
  grid-column-gap: .8vw;
  grid-row-gap: .8vw;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.utilities-icon {
  filter: invert();
  min-width: 2.8vw;
  height: 2.8vw;
}

.navbar {
  background-color: #0000;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 7.8vw;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10vw;
  padding-right: 10vw;
  display: flex;
  position: absolute;
  inset: 0% 0% auto;
}

.logo-link-wrapper {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.nav-link {
  color: var(--black);
  text-transform: uppercase;
  padding: 0 1.4vw;
  font-weight: 300;
  transition: color .25s;
}

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

.nav-link.move-down {
  position: absolute;
  top: 100%;
}

.nav-menu {
  margin-right: 2.2vw;
  display: flex;
}

.logo {
  object-fit: cover;
  object-position: 50% 50%;
  min-height: 2.78vw;
  max-height: 2.22vw;
}

.nav-link-wrapper {
  flex-direction: column;
  display: flex;
  position: relative;
  overflow: hidden;
}

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

.icon-wrapper {
  cursor: pointer;
  justify-content: center;
  align-items: center;
  min-width: 2.8vw;
  max-width: 2.8vw;
  min-height: 2.8vw;
  max-height: 2.8vw;
  display: flex;
  overflow: hidden;
}

.subheading-flex {
  grid-column-gap: .56vw;
  grid-row-gap: .56vw;
  flex-flow: row;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.card-flex {
  grid-column-gap: 2.22vw;
  grid-row-gap: 2.22vw;
  text-align: left;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.icon {
  min-width: 2.2vw;
  max-width: 2.2vw;
}

.card-text-block {
  grid-column-gap: 1.11vw;
  grid-row-gap: 1.11vw;
  flex-direction: column;
  align-items: flex-start;
  display: flex;
}

.large-card {
  border-radius: 24px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-width: 41.4vw;
  max-width: 41.4vw;
  padding: 4.4vw;
  display: flex;
}

.large-icon {
  min-width: 3.3vw;
  max-width: 3.3vw;
  min-height: 3.3vw;
  max-height: 3.3vw;
}

.features-image-wrapper {
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  min-width: 21.7vw;
  max-width: 21.7vw;
  min-height: 28.8vw;
  max-height: 28.8vw;
  display: flex;
  position: relative;
}

.features-image-wrapper.flip-from-left-animation {
  min-height: 450px;
  max-height: 450px;
}

.features-image {
  border-radius: var(--borderradius);
  object-fit: cover;
  object-position: 0% 41%;
  border: 5px solid #003249;
  min-width: 100%;
  min-height: 100%;
  max-height: 100%;
  position: absolute;
  inset: 0%;
  box-shadow: 0 8px 5px #0003;
}

.posts-flex {
  grid-column-gap: 2.22vw;
  grid-row-gap: 2.22vw;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.posts-card {
  text-align: left;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  min-width: 37.6vw;
  max-width: 37.6vw;
  display: flex;
  position: relative;
}

.avatar-line {
  background-color: var(--black);
  justify-content: flex-start;
  align-items: center;
  min-width: 2.2vw;
  max-width: 2.2vw;
  min-height: .07vw;
  max-height: .07vw;
  display: flex;
}

.posts-avatar-flex {
  grid-column-gap: 1.11vw;
  grid-row-gap: 1.11vw;
  border-radius: 40px;
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.avatar-text-block {
  grid-column-gap: .28vw;
  grid-row-gap: .28vw;
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.horizontal-line {
  background-color: var(--black);
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  min-height: .07vw;
  max-height: .07vw;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.posts-text-block {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  text-align: left;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.avatar-wrapper {
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  min-width: 3.3vw;
  max-width: 3.3vw;
  min-height: 3.3vw;
  max-height: 3.3vw;
  display: flex;
  overflow: hidden;
}

.latest-posts-details-flex {
  grid-column-gap: 2.2vw;
  grid-row-gap: 2.2vw;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  padding-top: 1.1vw;
  padding-bottom: .44vw;
  display: flex;
}

.posts-arrow-wrapper {
  background-color: var(--light-gray);
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  min-width: 2.8vw;
  max-width: 2.8vw;
  min-height: 2.8vw;
  max-height: 2.8vw;
  padding-bottom: .1vw;
  padding-left: .1vw;
  display: flex;
  position: absolute;
  inset: auto 2.22vw 2.22vw auto;
  overflow: hidden;
}

.posts-title-flex {
  grid-column-gap: 2.22vw;
  grid-row-gap: 2.22vw;
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
  max-width: 77vw;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.image-absolute {
  min-width: 100%;
  min-height: 100%;
  max-height: 100%;
  position: absolute;
  inset: 0%;
}

.posts-category-date-flex {
  grid-column-gap: 1.1vw;
  grid-row-gap: 1.1vw;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.badge-post {
  background-color: var(--white);
  border-radius: 24px;
  justify-content: center;
  align-items: center;
  padding: .6vw .9vw .6vw 1vw;
  display: flex;
}

.latest-image-wrapper {
  border-radius: 20px;
  min-width: 37.6vw;
  max-width: 37.6vw;
  min-height: 33.3vw;
  max-height: 33.3vw;
  position: relative;
  overflow: hidden;
}

.cta-title {
  color: #050505;
  text-align: center;
  text-transform: uppercase;
  white-space: normal;
}

.cta-container {
  background-color: var(--primary);
  background-image: url('../images/Wave-Cut-Out.svg');
  background-position: 100% 100%;
  background-repeat: repeat-x;
  background-size: cover;
  background-attachment: scroll;
  width: 100%;
  max-width: 100vw;
  max-height: 19.45vw;
  padding-left: 10vw;
  padding-right: 10vw;
}

.cta-card {
  z-index: 1;
  border-radius: var(--borderradius);
  background-color: var(--secondary);
  text-align: center;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  min-width: 62.2vw;
  max-width: 62.2vw;
  min-height: 275px;
  max-height: 600px;
  margin-left: auto;
  margin-right: auto;
  padding: 4.44vw 2.22vw;
  display: flex;
  position: relative;
  overflow: hidden;
  box-shadow: 0 1.11vw 2.22vw #0000001a;
}

.cta-wrapper {
  z-index: 999;
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 1.75fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: relative;
  top: -19.45vw;
}

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

.max-width-30rem {
  text-align: center;
  letter-spacing: .05vw;
  text-transform: none;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  max-width: 33.33vw;
  margin-bottom: 1rem;
  font-size: 1.15vw;
  font-weight: 300;
  line-height: 1.89vw;
  display: flex;
}

.max-width-30rem.contact {
  font-size: 1.2vw;
}

.title-block {
  grid-column-gap: 1.1vw;
  grid-row-gap: 1.1vw;
  text-align: center;
  flex-direction: column;
  align-items: center;
  display: flex;
}

.about-block {
  grid-column-gap: 1.11vw;
  grid-row-gap: 1.11vw;
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.hero-title {
  text-transform: uppercase;
  flex-flow: wrap;
  max-width: 90%;
  font-size: 4rem;
  line-height: 5.5rem;
  display: flex;
}

.max-width-20rem {
  max-width: 22.22vw;
}

.metrics-grid-quarter {
  grid-column-gap: 5vw;
  grid-row-gap: 5vw;
  flex-wrap: wrap;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.metrics-card {
  background-color: var(--white);
  border-radius: 1.5rem;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  min-width: 21.65vw;
  max-width: 21.65vw;
  min-height: 22.2vw;
  max-height: 22.2vw;
  padding: 3.3vw 2.2vw;
  display: flex;
}

.metrics-card.background-secondary {
  background-color: var(--secondary);
}

.metrics-card.background-alternate {
  background-color: var(--alternate);
}

.metrics-card.background-tertiary {
  border-radius: var(--borderradius);
  background-color: var(--tertiary);
}

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

.centered-block {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.blog-wrapper {
  grid-column-gap: .56vw;
  grid-row-gap: .56vw;
  text-align: center;
  flex-flow: column;
  align-items: center;
  display: flex;
}

.blog-block {
  grid-column-gap: .56vw;
  grid-row-gap: .56vw;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.avatar-large-wrapper {
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  min-width: 4.4vw;
  max-width: 4.4vw;
  min-height: 4.4vw;
  max-height: 4.4vw;
  display: flex;
  overflow: hidden;
}

.blog-image-wrapper {
  border-radius: var(--borderradius);
  min-width: 66.7vw;
  max-width: 66.7vw;
  min-height: 41.7vw;
  max-height: 41.7vw;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
}

.blog-post {
  flex-flow: column;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.form-wrapper {
  max-width: 40.3vw;
  margin-left: auto;
  margin-right: auto;
}

.text-field {
  background-color: var(--white);
  color: var(--black);
  border-radius: 20px;
  height: 3.3vw;
  padding-left: 1.1vw;
  padding-right: 1.1vw;
  font-size: .97vw;
}

.text-field:focus {
  border-color: #171f33;
}

.text-field::placeholder {
  color: #707070;
}

.message-area {
  background-color: var(--white);
  color: var(--black);
  border-radius: 20px;
  min-height: 7.8vw;
  margin-bottom: 8px;
  padding: 1.1vw;
  font-size: .97vw;
}

.message-area:focus {
  border-color: #171f33;
}

.message-area::placeholder {
  color: #707070;
}

.button {
  background-color: var(--primary);
  color: var(--white);
  border-radius: 10px;
  font-family: Inter, Tahoma, sans-serif;
  font-weight: 300;
  transition: background-color .25s;
}

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

.contact-success-message {
  border: 1px solid var(--black);
  background-color: var(--black);
  color: var(--white);
  text-align: center;
  border-radius: 20px;
  padding: 1.7vw 2.2vw;
}

.contact-success-message::placeholder {
  color: #aaa;
}

.contact-error-message {
  border: 1px solid var(--black);
  background-color: var(--black);
  color: var(--white);
  text-align: center;
  border-radius: 20px;
  margin-top: 32px;
  padding: 1.7vw 2.2vw;
}

.contact-error-message::placeholder {
  color: #aaa;
}

.field-label {
  font-size: .97vw;
  font-weight: 300;
}

.utilities-gallery-image-wrapper {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.utitlities-title-wrapper {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  text-align: left;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.utilities-rtb-wrapper {
  flex-direction: column;
  align-items: center;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.utility-page-wrap {
  background-image: linear-gradient(#000000b3, #000000b3), url('../images/StartDB_Zeichenfläche-1.png');
  background-position: 0 0, 50%;
  background-size: auto, cover;
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  display: flex;
}

.utility-page-content {
  grid-column-gap: 1.1vw;
  grid-row-gap: 1.1vw;
  text-align: center;
  flex-direction: column;
  flex: 1;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-self: auto;
  align-items: center;
  width: 18.06vw;
  margin: 140px auto auto;
  display: flex;
}

.move-down {
  position: absolute;
  top: 100%;
}

.faq-question {
  text-align: left;
  letter-spacing: 0;
  text-transform: none;
  white-space: normal;
  font-size: 1.67vw;
  font-weight: 400;
  line-height: 1.67vw;
}

.faq-icon {
  min-width: 1.8vw;
  max-width: 1.8vw;
  min-height: 1.8vw;
  max-height: 1.8vw;
}

.faq-flex {
  grid-column-gap: 2.1vw;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.faq-dropdown {
  min-width: 100%;
}

.dropdown-toggle {
  border-radius: var(--borderradius);
  background-color: var(--white);
  cursor: pointer;
  min-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 1.7vw 3.3vw .6vw;
  transition: background-color .25s;
  position: relative;
}

.dropdown-toggle:hover {
  background-color: #c7c7c733;
}

.dropdown-answer {
  text-align: left;
  width: 90%;
  display: block;
}

.faq-wrapper {
  grid-column-gap: 1.1vw;
  grid-row-gap: 1.1vw;
  text-align: center;
  flex-direction: column;
  min-width: 50vw;
  max-width: 50vw;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.faq-wrapper.slide-up-animation {
  max-width: 75vw;
}

.utilities-image {
  border-radius: 100%;
  min-width: 11.11vw;
  max-width: 11.11vw;
  min-height: 11.11vw;
  max-height: 11.11vw;
}

.hero-wrapper {
  border-radius: var(--borderradius);
  background-image: none;
  justify-content: center;
  align-items: flex-start;
  min-width: 100%;
  max-width: 100%;
  min-height: 50.6vw;
  max-height: 50.6vw;
  padding-top: 4rem;
  padding-bottom: 4rem;
  padding-right: 4rem;
  display: flex;
  position: relative;
  overflow: hidden;
}

.background-blur {
  z-index: 10;
  -webkit-backdrop-filter: blur(1rem);
  backdrop-filter: blur(1rem);
  background-color: #ffffff4d;
  position: relative;
}

.hero-image {
  border-radius: var(--borderradius);
  -webkit-text-fill-color: inherit;
  background-image: url('../images/StartDB_Zeichenfläche-1.png');
  background-position: 50% 100%;
  background-size: cover;
  background-clip: border-box;
  min-width: 100%;
  max-width: 100%;
  min-height: 50vw;
  max-height: 750px;
  position: absolute;
  inset: 0%;
}

.hero-block {
  grid-column-gap: 1.11vw;
  grid-row-gap: 1.11vw;
  border-radius: var(--borderradius);
  text-align: center;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  padding: 2.2vw 4.4vw;
  display: flex;
}

.hero-block.background-blur {
  border-radius: var(--borderradius);
}

.about-description {
  max-width: 80%;
}

.about-tab-wrapper {
  flex-flow: column;
  justify-content: flex-start;
  align-items: stretch;
  width: 100%;
  padding-left: 4.5rem;
  padding-right: 4.5rem;
  display: flex;
  position: relative;
}

.about-tabs {
  grid-column-gap: 4.44vw;
  grid-row-gap: 4.44vw;
  flex-flow: row;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-around;
  place-items: flex-end stretch;
  width: 100%;
  height: 40vh;
  display: flex;
}

.about-wrapper {
  grid-column-gap: 1.11vw;
  grid-row-gap: 1.11vw;
  opacity: .5;
  background-color: #0000;
  justify-content: flex-start;
  align-items: flex-start;
  margin-right: 5vw;
  padding: 1.11vw 0;
  display: flex;
}

.about-wrapper:hover {
  opacity: .75;
}

.about-wrapper.w--current {
  opacity: 1;
  background-color: #0000;
  border-left-color: #000;
}

.about-text-wrapper {
  grid-column-gap: 1.11vw;
  grid-row-gap: 1.11vw;
  text-align: left;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  max-width: 45%;
  margin-left: 4.44vw;
  display: flex;
  position: absolute;
  inset: 0% auto auto 4.5rem;
}

.reviews-right-arrow {
  min-width: 1.875rem;
  max-width: 1.875rem;
  min-height: 1.875rem;
  max-height: 1.875rem;
  margin: 0;
  transition: color .4s ease-in-out;
  display: block;
  inset: -5% 14% auto auto;
}

.reviews-right-arrow:hover {
  color: #eee;
}

.reviews-left-arrow {
  min-width: 1.875rem;
  max-width: 1.875rem;
  min-height: 1.875rem;
  max-height: 1.875rem;
  transition: color .4s ease-in-out;
  display: block;
  inset: -5% 16% auto auto;
}

.reviews-left-arrow:hover {
  color: #e67e22;
}

.reviews-listing-wrapper {
  grid-column-gap: 2.2vw;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.reviews-slider {
  background-color: #0000;
  height: auto;
}

.reviews-block {
  grid-column-gap: 2.22vw;
  grid-row-gap: 2.22vw;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-top: 1rem;
  display: flex;
}

.reviews-icon {
  color: var(--black);
  font-size: 1.5625rem;
  font-weight: 900;
}

.reviews-card {
  border-radius: var(--borderradius);
  background-color: var(--white);
  text-align: center;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  min-width: 21.7vw;
  max-width: 21.7vw;
  padding: 4.4vw 3.3vw;
  display: flex;
  position: relative;
}

.reviews-card.background-primary {
  background-color: var(--primary);
}

.reviews-card.background-secondary {
  background-color: var(--secondary);
}

.slide-nav-reviews {
  max-height: .8125rem;
  margin-top: 1.875rem;
  padding-top: 0;
  padding-bottom: 0;
  position: static;
  inset: auto 0% 0%;
}

.reviews-wrapper {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.reviews-mask {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}

.reviews-container {
  max-width: 100%;
}

.reviews-image-circle {
  border-radius: 100%;
  width: 6.7vw;
  height: 6.7vw;
  position: absolute;
  inset: -3.35vw auto auto;
}

.reviews-slide {
  width: 100%;
}

.faqs-block {
  grid-column-gap: 1.11vw;
  grid-row-gap: 1.11vw;
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.services-right {
  grid-column-gap: 2.2vw;
  grid-row-gap: 2.2vw;
  flex-flow: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: flex;
}

.services-block {
  z-index: 2;
  grid-column-gap: 1.11vw;
  grid-row-gap: 1.11vw;
  border-radius: 48px;
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 12rem 1fr;
  grid-auto-columns: 1fr;
  padding: 2.2vw;
  display: flex;
}

.services-block.background-blur {
  border-radius: var(--borderradius);
  background-color: var(--tertiary);
}

.services-flex {
  grid-column-gap: 2.22vw;
  grid-row-gap: 2.22vw;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  place-items: flex-start center;
  display: flex;
  position: relative;
}

.services-left {
  grid-column-gap: 1.11vw;
  grid-row-gap: 1.11vw;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  max-width: 50%;
  display: flex;
  position: sticky;
  top: 4rem;
}

.reviews-name-block {
  flex-flow: column;
  display: flex;
}

.max-width-58rem {
  max-width: 58vw;
}

.circle-absolute {
  z-index: -1;
  background-color: var(--primary);
  mix-blend-mode: soft-light;
  border-radius: 100px;
  min-width: 6.944vw;
  max-width: 6.944vw;
  min-height: 6.944vw;
  max-height: 6.944vw;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  top: 3.33vw;
}

.bold {
  font-weight: 400;
}

.text-span {
  text-transform: uppercase;
}

.link {
  color: var(--primary);
  font-weight: 400;
}

.paragraph {
  text-transform: none;
  font-size: 1.1vw;
  font-style: normal;
  font-weight: 300;
}

.image {
  width: 100px;
  margin-top: auto;
  margin-bottom: auto;
  display: block;
}

.image.featurepreviewimage {
  width: auto;
  min-width: 50px;
  max-width: 50px;
  margin-right: 20px;
}

.container-2, .featurepreviewcontainerimage {
  align-self: center;
  margin-right: 10px;
}

.heading {
  text-transform: none;
}

.big-metrics-card {
  grid-column-gap: 5vw;
  grid-row-gap: 5vw;
  flex-flow: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.big-card {
  border-radius: var(--borderradius);
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  min-width: 30vw;
  max-width: 30vw;
  min-height: 32vw;
  max-height: 32vw;
  padding: 5vw 3vw;
  display: flex;
}

.big-card.background-white {
  max-height: var(--cardsize);
  max-width: var(--cardsize);
  min-height: var(--cardsize);
  min-width: var(--cardsize);
}

.big-card.background-secondary {
  max-height: var(--cardsize);
  max-width: var(--cardsize);
  min-height: var(--cardsize);
  min-width: var(--cardsize);
  border-radius: var(--borderradius);
}

.big-card.background-dark-gray {
  max-height: var(--cardsize);
  max-width: var(--cardsize);
  min-height: var(--cardsize);
  min-width: var(--cardsize);
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  flex: 0 auto;
  order: 0;
  align-self: auto;
  padding: 5vw 3vw;
}

.big-card.background-alternate {
  max-height: var(--cardsize);
  max-width: var(--cardsize);
  min-height: var(--cardsize);
  min-width: var(--cardsize);
  background-color: var(--alternate);
}

.big-card.background-tertiary {
  max-height: var(--cardsize);
  max-width: var(--cardsize);
  min-height: var(--cardsize);
  min-width: var(--cardsize);
  background-color: var(--tertiary);
}

.big-card-text-block {
  color: var(--black);
  letter-spacing: 0;
  text-transform: none;
  margin-top: auto;
  margin-bottom: 60px;
  font-size: 2rem;
  font-weight: 200;
  line-height: 1.89rem;
}

.section-2, .section-3 {
  justify-content: center;
  align-items: center;
  display: flex;
}

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

.div-block {
  justify-content: center;
  align-items: center;
  max-width: 80%;
  display: flex;
}

.link-2 {
  color: var(--alternate);
  font-size: .6vw;
}

.section-4 {
  box-sizing: border-box;
  aspect-ratio: auto;
  object-fit: fill;
  max-width: none;
  min-height: 2em;
  max-height: 5em;
  display: flex;
}

.bold-text {
  font-size: .5vw;
}

.bold-text-2 {
  font-size: .6vw;
}

.background-alternate.fill {
  background-color: var(--alternate);
}

.div-block-2 {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.legaltext {
  max-width: 75%;
}

.legalblock {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  max-width: 80%;
  display: flex;
}

.heading-2 {
  font-size: 3.5vw;
}

.heading-2.legal {
  text-transform: none;
  font-size: 3vw;
}

.heading-3 {
  font-size: 3vw;
}

.heading-3.legal {
  text-transform: none;
  font-size: 2.5vw;
}

.heading-4 {
  font-size: 2.5vw;
}

.heading-4.legal {
  text-transform: none;
  font-size: 2vw;
}

.section-5 {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.subheader {
  letter-spacing: .1vw;
  max-width: 40%;
  font-size: 1.25vw;
  font-weight: 300;
  line-height: 1.5vw;
}

.cardheader {
  letter-spacing: -.07vw;
  text-transform: uppercase;
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 4rem;
}

@media screen and (max-width: 991px) {
  body {
    font-size: .88rem;
    line-height: 1.25rem;
  }

  h1 {
    letter-spacing: -.0625rem;
    font-size: 4rem;
    line-height: 4.5rem;
  }

  h2 {
    letter-spacing: -.06rem;
    font-size: 3.5rem;
    line-height: 4rem;
  }

  h3 {
    letter-spacing: -.0625rem;
    font-size: 3rem;
    line-height: 3.5rem;
  }

  h4 {
    letter-spacing: -.0625rem;
    font-size: 2.5rem;
    line-height: 3rem;
  }

  h5 {
    letter-spacing: .13rem;
    font-size: .8rem;
    line-height: 1.3rem;
  }

  h6 {
    letter-spacing: .125rem;
    font-size: .7rem;
    line-height: 1.2rem;
  }

  p, a {
    letter-spacing: .06rem;
    font-size: 1rem;
    line-height: 1.7rem;
  }

  ul, ol {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    padding-left: 2.5rem;
  }

  li {
    letter-spacing: .06rem;
    font-size: 1rem;
    line-height: 1.7rem;
  }

  sup {
    font-size: 2.5rem;
    line-height: 2rem;
    top: -.3rem;
  }

  blockquote {
    padding: .5rem 0 .5rem 1.5rem;
    font-size: 1rem;
    line-height: 1.7rem;
  }

  .space-page-top {
    min-height: 10rem;
  }

  .utilities-title-flex {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .container.padding-4-5rem, .container.padding-9rem, .container.padding-13-5rem {
    padding-left: 10%;
    padding-right: 10%;
  }

  .container.rounded-corners-bottom {
    border-bottom-right-radius: 6rem;
    border-bottom-left-radius: 6rem;
  }

  .space-2rem {
    min-height: 2rem;
  }

  .utilities-wrapper {
    width: 100%;
  }

  .utilities-line {
    min-width: 2rem;
    min-height: .25rem;
  }

  .utilities-title {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .utilities-line-spacer {
    min-height: .06rem;
  }

  .space-4rem {
    min-height: 4rem;
  }

  .show-on-tab {
    display: block;
  }

  .space-1rem {
    min-height: 1rem;
  }

  .space-0-5rem {
    min-height: .5rem;
  }

  .space-7rem {
    min-height: 7rem;
  }

  .hide-on-tab {
    display: none;
  }

  .max-width-38rem {
    max-width: 38rem;
  }

  .invert {
    filter: invert();
  }

  .button-text {
    font-size: 1rem;
    line-height: 1.7rem;
  }

  .arrow {
    min-width: .8rem;
    max-width: .8rem;
    min-height: .8rem;
    max-height: .8rem;
  }

  .button-with-circle-icon {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    border-width: .06rem;
    border-radius: 8rem;
    min-width: 11rem;
    min-height: 2.5rem;
    max-height: 2.5rem;
    padding: .125rem 2rem;
  }

  .footer-logo-link-wrapper {
    z-index: 1000000;
  }

  .footer-right-flex {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .footer-link {
    font-size: .9rem;
    line-height: 1.6rem;
  }

  .footer-wrapper {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .footer-logo {
    min-height: 2rem;
    max-height: 2rem;
  }

  .footer-top {
    max-width: 100%;
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .footer-block {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
  }

  .max-width-17vw {
    max-width: 15rem;
    font-size: 1.5vw;
  }

  .utilities-side-bar {
    border-right-width: .06rem;
    min-width: 20rem;
    max-width: 20rem;
    padding-left: 2rem;
    padding-right: 2rem;
    display: none;
    top: 2rem;
  }

  .utilities-flex-title {
    grid-column-gap: .75rem;
    grid-row-gap: .75rem;
  }

  .utilities-icon {
    min-width: 2.5rem;
    height: 2.5rem;
  }

  .navbar {
    height: 7rem;
    padding-left: 5%;
    padding-right: 5%;
  }

  .logo-link-wrapper {
    z-index: 999;
    min-height: auto;
  }

  .nav-link {
    text-align: center;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: 6rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    font-size: 4rem;
    line-height: 6rem;
    display: flex;
  }

  .nav-menu {
    background-color: var(--dark-gray);
    flex-direction: column;
    margin-left: 0;
    margin-right: 0;
    padding-top: 8rem;
    position: fixed;
    inset: 0%;
  }

  .logo {
    min-height: 2rem;
    max-height: 2rem;
  }

  .nav-container {
    justify-content: flex-start;
    margin-left: auto;
  }

  .menu-button {
    z-index: 999;
    background-color: #0000;
    padding: 1rem 0 1rem 1rem;
  }

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

  .burger-icon {
    color: var(--black);
    font-size: 1.875rem;
  }

  .icon-wrapper {
    min-width: 2.5rem;
    max-width: 2.5rem;
    min-height: 2.5rem;
    max-height: 2.5rem;
    top: 2.75rem;
    left: 2.75rem;
  }

  .subheading-flex {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
  }

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

  .card-flex.reverse-on-tab {
    flex-flow: column-reverse wrap-reverse;
  }

  .icon {
    min-width: 2rem;
    max-width: 2rem;
    min-height: 2rem;
    max-height: 2rem;
  }

  .card-text-block {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .large-card {
    justify-content: center;
    min-width: 100%;
    max-width: 100%;
    min-height: auto;
    max-height: none;
    padding: 2rem;
  }

  .large-icon {
    min-width: 2.5rem;
    max-width: 2.5rem;
    min-height: 2.5rem;
    max-height: 2.5rem;
  }

  .features-image-wrapper {
    min-width: 19.5rem;
    max-width: 19.5rem;
    min-height: 25.96rem;
    max-height: 25.96rem;
  }

  .posts-flex {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-direction: column;
    align-items: center;
  }

  .posts-card {
    min-width: 33.8rem;
    max-width: 33.8rem;
  }

  .avatar-line {
    min-width: 2rem;
    max-width: 2rem;
    min-height: .0625rem;
    max-height: .0625rem;
  }

  .posts-avatar-flex {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .avatar-text-block {
    grid-column-gap: .25rem;
    grid-row-gap: .25rem;
  }

  .horizontal-line {
    min-height: .0625rem;
    max-height: .0625rem;
  }

  .avatar-wrapper {
    min-width: 3rem;
    max-width: 3rem;
    min-height: 3rem;
    max-height: 3rem;
  }

  .latest-posts-details-flex {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    padding-top: 1rem;
    padding-bottom: .4rem;
  }

  .posts-arrow-wrapper {
    min-width: 2.5rem;
    max-width: 2.5rem;
    min-height: 2.5rem;
    max-height: 2.5rem;
    padding-bottom: .1rem;
    padding-left: .1rem;
    bottom: 2rem;
    right: 2rem;
  }

  .posts-title-flex {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    max-width: 80%;
  }

  .posts-category-date-flex {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .badge-post {
    padding: .5rem .8rem .5rem .9rem;
  }

  .latest-image-wrapper {
    min-width: 33.8rem;
    max-width: 33.8rem;
    min-height: 30rem;
    max-height: 30rem;
  }

  .cta-title {
    font-size: 3rem;
    line-height: 3rem;
  }

  .cta-container {
    flex-flow: column;
    justify-content: center;
    align-items: flex-end;
    max-width: 100%;
    min-height: 25rem;
    max-height: 30rem;
    padding-left: 10%;
    padding-right: 10%;
    display: flex;
  }

  .cta-card {
    background-image: none;
    min-width: 100%;
    max-width: 100%;
    min-height: 30rem;
    max-height: 30rem;
    padding: 4rem;
    box-shadow: 0 1rem 2rem #0003;
  }

  .cta-wrapper {
    grid-template-columns: 1fr;
    justify-content: flex-end;
    align-items: center;
    top: -22rem;
  }

  .max-width-30rem {
    max-width: 30rem;
    margin-bottom: 2rem;
    font-size: 2.25vw;
    line-height: 2.5vw;
  }

  .max-width-30rem.contact {
    font-size: 2vw;
    line-height: 2.5vw;
  }

  .title-block {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    margin-bottom: 0;
  }

  .about-block {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    text-align: center;
    flex-flow: column;
  }

  .hero-title {
    font-size: 3.5rem;
    line-height: 4rem;
  }

  .max-width-20rem {
    max-width: 20rem;
  }

  .metrics-grid-quarter {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .metrics-card {
    border-width: 1px;
    min-width: 18rem;
    max-width: 18rem;
    min-height: 20rem;
    max-height: 20rem;
    padding: 2rem;
  }

  .blog-wrapper, .blog-block {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
  }

  .avatar-large-wrapper {
    min-width: 4rem;
    max-width: 4rem;
    min-height: 4rem;
    max-height: 4rem;
  }

  .blog-image-wrapper {
    min-width: 37.25rem;
    max-width: 37.25rem;
    min-height: 23.28rem;
    max-height: 23.28rem;
  }

  .blog-post {
    width: 90%;
  }

  .form-wrapper {
    max-width: 36.3rem;
  }

  .text-field {
    height: 3rem;
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: .88rem;
  }

  .message-area {
    min-height: 7rem;
    padding-top: 1rem;
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: .88rem;
  }

  .contact-success-message, .contact-error-message {
    padding: 1.5rem 2rem;
  }

  .field-label {
    font-size: .88rem;
  }

  .utitlities-title-wrapper {
    grid-row-gap: 16px;
    text-align: center;
    align-items: center;
    width: 100%;
    height: auto;
  }

  .utility-page-content {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    width: 16.25rem;
  }

  .faq-question {
    font-size: 1.5rem;
    line-height: 1.5rem;
  }

  .faq-icon {
    min-width: 1.6rem;
    max-width: 1.6rem;
    min-height: 1.6rem;
    max-height: 1.6rem;
  }

  .faq-flex {
    grid-column-gap: 1.9rem;
  }

  .dropdown-toggle {
    padding: 1.5rem 3rem .5rem;
  }

  .dropdown-answer {
    text-align: left;
    width: auto;
    margin-left: auto;
    margin-right: auto;
  }

  .faq-wrapper {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    min-width: 90%;
    max-width: 90%;
  }

  .utilities-image {
    min-width: 10rem;
    max-width: 10rem;
    min-height: 10rem;
    max-height: 10rem;
  }

  .hero-wrapper {
    min-height: auto;
    max-height: none;
    padding-left: 4rem;
  }

  .hero-image {
    min-width: 100%;
    max-width: 100%;
    min-height: auto;
    max-height: none;
  }

  .hero-block {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    padding: 2rem 4rem;
  }

  .about-description {
    max-width: 30rem;
  }

  .about-tab-wrapper {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    padding-left: 10%;
    padding-right: 10%;
  }

  .about-tabs {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-flow: column-reverse;
    justify-content: flex-end;
    align-items: center;
    height: auto;
  }

  .about-wrapper {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    justify-content: center;
    align-items: flex-start;
    margin-left: 0;
    margin-right: 0;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .about-text-wrapper {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    text-align: center;
    justify-content: center;
    align-items: center;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    position: static;
  }

  .reviews-listing-wrapper {
    grid-column-gap: 6rem;
    grid-row-gap: 6rem;
    flex-flow: column;
  }

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

  .reviews-card {
    min-width: 19.5rem;
    max-width: 19.5rem;
    margin-left: auto;
    margin-right: auto;
    padding: 4rem 3rem;
  }

  .slide-nav-reviews {
    display: none;
  }

  .reviews-image-circle {
    width: 6rem;
    height: 6rem;
    top: -3rem;
  }

  .faqs-block {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    text-align: center;
    flex-flow: column;
  }

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

  .services-block {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    border-width: .0625rem;
    grid-template-columns: 1fr 10rem 1fr;
    padding: 2rem;
  }

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

  .services-left {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .max-width-58rem {
    max-width: 44rem;
  }

  .circle-absolute {
    min-width: 6.25rem;
    max-width: 6.25rem;
    min-height: 6.25rem;
    max-height: 6.25rem;
    display: none;
    inset: auto 0% -238% 18%;
  }

  .big-metrics-card {
    grid-column-gap: 6vw;
    grid-row-gap: 6vw;
    margin-bottom: 100px;
  }

  .big-card {
    min-width: 37vw;
    max-width: 37vw;
    min-height: 37vw;
    max-height: 37vw;
  }

  .big-card.background-secondary {
    max-height: var(--cardsize);
    max-width: var(--cardsize);
    min-height: var(--cardsize);
    min-width: var(--cardsize);
  }

  .big-card.background-light-gray {
    -webkit-text-stroke-color: var(--light-gray);
  }

  .big-card.background-dark-gray, .big-card.background-alternate {
    max-height: var(--cardsize);
    max-width: var(--cardsize);
    min-height: var(--cardsize);
    min-width: var(--cardsize);
  }

  .big-card.background-tertiary {
    max-height: var(--cardsize);
    max-width: var(--cardsize);
    min-height: var(--cardsize);
    min-width: var(--cardsize);
    padding: 4vw;
  }

  .icon-and-header {
    font-size: .5rem;
  }

  .big-card-text-block {
    letter-spacing: .13rem;
    text-transform: none;
    margin-bottom: 10px;
    font-size: .9rem;
    font-weight: 300;
    line-height: 1.2rem;
  }

  .flex-block {
    margin-top: 60px;
  }

  .link-2 {
    font-size: 1.5vw;
  }

  .subheader {
    max-width: 60%;
    margin-bottom: 0;
    font-size: 2vw;
    line-height: 2.5vw;
  }

  .cardheader {
    text-transform: uppercase;
    font-size: 1.75rem;
    font-weight: 300;
    line-height: 2rem;
  }
}

@media screen and (max-width: 767px) {
  h1 {
    font-size: 3.5rem;
    line-height: 4rem;
  }

  h2 {
    font-size: 3rem;
    line-height: 3.5rem;
  }

  h3 {
    font-size: 2.5rem;
    line-height: 3rem;
  }

  h4 {
    font-size: 2rem;
    line-height: 2.5rem;
  }

  .utilities-wrapper-title, .rich-text {
    width: 100%;
  }

  .section {
    margin-top: 0;
  }

  .utilities-wrapper-paragraph {
    width: 100%;
  }

  .utilities-wrapper-rich-text-and-buttons {
    max-width: 100%;
  }

  .utilities-flex-headings-and-paragraph {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-direction: column;
  }

  .show-on-tab {
    display: block;
  }

  .space-7rem {
    min-height: 5rem;
  }

  .max-width-38rem {
    max-width: 28rem;
  }

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

  .footer-right-flex {
    flex-flow: column;
    justify-content: center;
    align-items: center;
  }

  .footer-top {
    grid-row-gap: 1.5rem;
    flex-direction: column;
    align-items: center;
  }

  .footer-block {
    text-align: center;
    justify-content: center;
    align-items: center;
  }

  .max-width-17vw {
    font-size: 2.5vw;
    line-height: 2rem;
  }

  .utilities-side-bar {
    border: 1px solid var(--black);
  }

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

  .icon {
    min-width: 2rem;
    max-width: 2rem;
    min-height: 2rem;
    max-height: 2rem;
  }

  .large-card {
    padding: 0 2rem;
  }

  .large-icon {
    min-width: 3rem;
    max-width: 3rem;
    min-height: 3rem;
    max-height: 3rem;
  }

  .features-image-wrapper {
    min-width: 19.5rem;
    max-width: 19.5rem;
    min-height: 25.96rem;
    max-height: 25.96rem;
  }

  .posts-card {
    text-align: center;
    align-items: center;
    min-width: 27rem;
    max-width: 27rem;
  }

  .posts-text-block {
    text-align: center;
    align-items: center;
  }

  .latest-posts-details-flex {
    flex-direction: row;
    justify-content: center;
    padding-bottom: 1rem;
  }

  .posts-title-flex {
    text-align: center;
    flex-direction: column;
    align-items: center;
  }

  .posts-category-date-flex {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
    flex-direction: column;
  }

  .latest-image-wrapper {
    min-width: 27rem;
    max-width: 27rem;
  }

  .cta-container {
    max-height: 23.5rem;
  }

  .cta-card {
    background-image: none;
    min-height: 32rem;
    max-height: 47rem;
  }

  .cta-wrapper {
    top: -23.5rem;
  }

  .max-width-30rem {
    max-width: 21rem;
  }

  .max-width-30rem.contact {
    font-size: 2.25vw;
  }

  .hero-title {
    font-size: 3rem;
    line-height: 3rem;
  }

  .metrics-card {
    min-width: 20rem;
    max-width: 20rem;
  }

  .avatar-large-wrapper {
    min-width: 4rem;
    max-width: 4rem;
    min-height: 4rem;
    max-height: 4rem;
  }

  .blog-image-wrapper {
    min-width: 26.25rem;
    max-width: 26.25rem;
    min-height: 17.59rem;
    max-height: 17.59rem;
  }

  .form-wrapper {
    max-width: 24.38rem;
  }

  .utility-page-content {
    margin-top: 60px;
    margin-left: auto;
  }

  .dropdown-toggle {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .dropdown-answer {
    width: auto;
  }

  .hero-block {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .about-tab-wrapper {
    width: 100%;
  }

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

  .reviews-listing-wrapper {
    grid-column-gap: 0rem;
    grid-row-gap: 5.625rem;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
  }

  .reviews-slider {
    height: 100%;
    min-height: 100%;
    max-height: 100%;
  }

  .reviews-card {
    min-width: 19.5rem;
    max-width: 19.5rem;
  }

  .slide-nav-reviews {
    padding-top: 4%;
    bottom: -8%;
  }

  .services-right {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
    align-items: center;
  }

  .services-block {
    grid-template-rows: auto auto;
    grid-template-columns: 4rem 1fr;
    padding: 1.5rem;
  }

  .services-flex {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
    flex-flow: column;
    grid-template-columns: 1fr;
    justify-content: center;
    align-items: center;
  }

  .services-left {
    z-index: 1;
    max-width: 100%;
    padding-right: 0;
    position: static;
  }

  .max-width-58rem {
    max-width: 25rem;
  }

  .paragraph, .paragraph-2 {
    font-size: .8rem;
    line-height: 1.3rem;
  }

  .featurepreviewcontainerimage {
    min-width: 50px;
  }

  .big-metrics-card {
    grid-column-gap: 3.5vw;
    grid-row-gap: 3.5vw;
    margin-bottom: 220px;
  }

  .big-card.background-alternate {
    padding-top: 3vw;
    padding-bottom: 3vw;
  }

  .big-card.background-tertiary {
    padding: 3vw;
  }

  .icon-and-header {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    display: flex;
  }

  .big-card-text-block {
    letter-spacing: .05rem;
    margin-bottom: 0;
    font-size: .7rem;
    line-height: 1rem;
  }

  .section-3 {
    margin-bottom: 140px;
  }

  .link-2 {
    margin-left: 5px;
    font-size: 2.5vw;
    line-height: 2rem;
  }

  .subheader {
    font-size: 2.5vw;
    line-height: 2.75vw;
  }

  .cardheader {
    font-size: 1.25rem;
  }

  .div-block-3 {
    min-height: 8rem;
  }

  .section-6 {
    margin-left: 4px;
  }

  .code-embed {
    margin-bottom: 20px;
  }
}

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

  h2 {
    font-size: 2.5rem;
    line-height: 3rem;
  }

  h3 {
    font-size: 2rem;
    line-height: 2.5rem;
  }

  h4 {
    overflow-wrap: anywhere;
    font-size: 1.5rem;
    line-height: 2rem;
  }

  .container.rounded-corners-bottom {
    border-bottom-right-radius: 3rem;
    border-bottom-left-radius: 3rem;
  }

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

  .caps {
    font-size: 2.5rem;
    line-height: 3rem;
  }

  .max-width-38rem {
    max-width: 100%;
  }

  .button-with-circle-icon {
    border-radius: var(--borderradius);
    max-height: 4rem;
  }

  .footer-logo {
    z-index: 999;
    max-width: none;
    min-height: 2.25rem;
    max-height: 2.25rem;
    position: relative;
  }

  .max-width-17vw {
    font-size: 1rem;
    line-height: 1.5rem;
  }

  .navbar {
    padding-left: 5%;
    padding-right: 5%;
  }

  .nav-link {
    min-height: 4rem;
    font-size: 2.5rem;
    line-height: 3rem;
  }

  .nav-menu {
    z-index: 998;
  }

  .logo {
    z-index: 999;
    max-width: none;
    position: relative;
  }

  .nav-container {
    padding-right: 0;
  }

  .menu-button {
    padding-left: .5rem;
    padding-right: 0;
  }

  .burger-icon {
    z-index: 999;
    color: var(--black);
    position: relative;
  }

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

  .icon {
    min-width: 2rem;
    max-width: 2rem;
    min-height: 2rem;
    max-height: 2rem;
  }

  .card-text-block {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
    text-align: center;
    justify-content: flex-start;
    align-items: center;
  }

  .large-card {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
    padding-left: 0;
    padding-right: 0;
  }

  .large-icon {
    min-width: 2rem;
    max-width: 2rem;
    min-height: 2rem;
    max-height: 2rem;
    font-size: .4rem;
  }

  .features-image-wrapper {
    justify-content: space-between;
    align-items: center;
    min-width: 100%;
    max-width: 100%;
    min-height: 19.97rem;
    max-height: 19.97rem;
  }

  .features-image-wrapper.flip-from-left-animation {
    min-height: 350px;
    max-height: 350px;
  }

  .features-image {
    object-position: 100% 80%;
  }

  .posts-card {
    min-width: 100%;
    max-width: 100%;
  }

  .horizontal-line {
    display: none;
  }

  .latest-posts-details-flex {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
    flex-direction: column-reverse;
  }

  .latest-image-wrapper {
    min-width: 100%;
    max-width: 100%;
    min-height: 20rem;
    max-height: 20rem;
  }

  .cta-title {
    font-size: 2rem;
    line-height: 2.5rem;
  }

  .cta-container {
    max-height: 19rem;
    padding-left: 5%;
    padding-right: 5%;
  }

  .cta-card {
    text-align: center;
    background-image: none;
    justify-content: center;
    align-items: center;
    min-width: 100%;
    max-width: 100%;
    min-height: 30rem;
    max-height: 30rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .cta-wrapper {
    grid-template-columns: 1fr;
    top: -19rem;
  }

  .max-width-30rem {
    max-width: 90%;
    font-size: 5vw;
    line-height: 5.5vw;
  }

  .max-width-30rem.contact {
    max-width: 15rem;
    margin-bottom: 1rem;
    font-size: 1rem;
    line-height: 1.5rem;
  }

  .title-block {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .about-block {
    align-items: center;
  }

  .hero-title {
    font-size: 3.5rem;
    line-height: 3rem;
  }

  .max-width-20rem {
    max-width: 16rem;
  }

  .metrics-card {
    text-align: center;
    justify-content: space-between;
    align-items: center;
    min-width: 100%;
    max-width: 100%;
    min-height: 15rem;
    max-height: 15rem;
  }

  .avatar-large-wrapper {
    min-width: 4rem;
    max-width: 4rem;
    min-height: 4rem;
    max-height: 4rem;
  }

  .blog-image-wrapper {
    min-width: 100%;
    max-width: 100%;
    min-height: 11.25rem;
    max-height: 11.25rem;
  }

  .blog-post {
    width: 100%;
  }

  .form-wrapper {
    max-width: 16.25rem;
  }

  .utility-page-content {
    margin-left: auto;
  }

  .faq-question {
    text-align: left;
    overflow-wrap: normal;
  }

  .dropdown-toggle {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .dropdown-answer {
    text-align: left;
    margin-left: 0;
    margin-right: 0;
  }

  .faq-wrapper {
    max-width: 90%;
  }

  .hero-image {
    min-width: 100%;
    max-width: 100%;
  }

  .hero-block {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .about-description {
    max-width: 100%;
  }

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

  .about-text-wrapper {
    align-items: center;
  }

  .reviews-right-arrow, .reviews-left-arrow {
    display: none;
  }

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

  .reviews-card {
    text-align: center;
    flex-direction: column;
    justify-content: center;
    min-width: 100%;
    max-width: 100%;
  }

  .slide-nav-reviews {
    padding-top: 8%;
    bottom: -6%;
  }

  .reviews-mask {
    width: 75vw;
  }

  .reviews-image-circle {
    top: -3rem;
    left: auto;
  }

  .faqs-block {
    align-items: center;
  }

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

  .services-block {
    text-align: center;
    grid-template-columns: 3rem 1fr;
    align-items: center;
  }

  .services-left {
    text-align: center;
    justify-content: flex-start;
    align-items: center;
  }

  .max-width-58rem {
    max-width: 100%;
  }

  .big-metrics-card {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-flow: column;
    display: flex;
  }

  .big-card {
    min-width: 80vw;
    max-width: 80vw;
    min-height: 80vw;
    max-height: 80vw;
    padding: 10vw;
  }

  .big-card.background-white {
    max-height: var(--cardsizemobile);
    max-width: var(--cardsizemobile);
    min-height: var(--cardsizemobile);
    min-width: var(--cardsizemobile);
  }

  .big-card.background-secondary, .big-card.background-dark-gray, .big-card.background-alternate, .big-card.background-tertiary {
    max-height: var(--cardsizemobile);
    max-width: var(--cardsizemobile);
    min-height: var(--cardsizemobile);
    min-width: var(--cardsizemobile);
    padding: 7vw;
  }

  .icon-and-header {
    grid-column-gap: .25rem;
    grid-row-gap: .25rem;
    flex-flow: row;
  }

  .big-card-text-block {
    margin-bottom: 20px;
    font-size: .95rem;
    line-height: 1.1rem;
  }

  .link-2 {
    font-size: 1rem;
    line-height: 1.5rem;
  }

  .subheader {
    max-width: 80%;
    font-size: 5.5vw;
    line-height: 6vw;
  }

  .cardheader {
    font-size: 2rem;
    line-height: 2rem;
  }

  .div-block-3 {
    min-height: 0;
  }
}


@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter-Bold.ttf') format('truetype'), url('../fonts/Inter-ExtraBold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter-Black.ttf') format('truetype');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter-ExtraLight.ttf') format('truetype');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter-Thin.ttf') format('truetype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}