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

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

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

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

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

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

.main {
  position: relative;
}

.header {
  position: relative;
  inset: 0%;
}

.container-wide {
  width: 100%;
  max-width: min(100% - 100px, 1400px);
}

.mobile-margin-top-10 {
  flex: 0 auto;
  list-style-type: none;
  display: block;
}

.navbar-no-shadow-container-2 {
  z-index: 5;
  background-color: #0000;
  width: 100%;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0;
}

.nav-space.services-for-desktop {
  display: block;
}

.btn {
  color: #051328;
  cursor: pointer;
  background-color: #e7e7e7;
  border: 1px #000;
  justify-content: center;
  align-items: center;
  padding: 1.5rem 3rem;
  text-decoration: none;
  display: flex;
  position: relative;
}

.btn.btn-one {
  color: #fff;
  background-color: #121212;
  border: 0 #fff;
  border-radius: 3rem;
  width: 200px;
  margin-top: 10px;
  margin-bottom: 0;
  margin-right: 20px;
  padding: 1rem 2rem;
  display: flex;
  overflow: hidden;
}

.btn.btn-one.nav-cta {
  background-color: #121212;
  border-radius: 0;
  width: 160px;
  margin-left: 10px;
  padding: .9rem 1.5rem;
}

.btn.btn-one.btn-black {
  background-color: #e9e9e9;
  border-radius: 0;
  width: 170px;
  margin-top: 10px;
  display: flex;
}

.btn.btn-one.btn-black.bigger {
  width: 220px;
}

.text-block {
  font-family: Satoshi, Arial, sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 20px;
}

.navbar-brand {
  z-index: 1500;
  padding-top: 6px;
  padding-bottom: 6px;
}

.navbar-no-shadow {
  z-index: 1500;
  position: absolute;
  inset: 0% 0% auto;
}

.nav-button-wrapper {
  margin-left: 0;
}

.nav-link-5 {
  color: #fff;
  letter-spacing: .25px;
  margin-left: 5px;
  margin-right: 5px;
  padding: 5px 10px;
  font-family: Satoshi, Arial, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  text-decoration: none;
}

.nav-link-5:hover {
  color: #c5c5c5;
}

.nav-link-5:focus-visible, .nav-link-5[data-wf-focus-visible] {
  outline-offset: 0px;
  color: #0050bd;
  border-radius: 4px;
  outline: 2px solid #0050bd;
}

.nav-link-5.bl {
  color: #000;
}

.navbar-wrapper {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  display: flex;
}

.container-4 {
  width: 100%;
  max-width: min(100% - 100px, 1400px);
  margin-left: auto;
  margin-right: auto;
}

.container-4.phone-container {
  max-width: min(100% - 100px, 1400px);
  position: static;
}

.nav-menu {
  flex-flow: row;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 0;
  padding-bottom: 0;
  padding-left: 0;
  display: flex;
}

.div-block {
  background-image: url('../images/hero.jpg');
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 200vh;
  position: relative;
  overflow: visible;
}

.body {
  background-color: #121212;
  font-family: Satoshi, Arial, sans-serif;
  font-weight: 400;
}

.heading {
  color: #fff;
  text-transform: uppercase;
  width: 100%;
  margin-top: 0;
  font-family: Soehneschmaldreiviertelfett, Impact, sans-serif;
  font-size: 8rem;
  line-height: 7rem;
}

.div-block-2 {
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-start;
  width: 100%;
  height: 100vh;
  display: flex;
  position: sticky;
  top: 0;
  bottom: auto;
}

.heading-2 {
  color: #fff;
  text-transform: uppercase;
  font-size: 18px;
}

.div-block-3 {
  width: 100%;
  margin-bottom: 15vh;
}

.about {
  background-color: #121212;
  width: 100%;
  height: auto;
  margin-bottom: 15vh;
}

.div-block-4 {
  z-index: 4;
  background-image: url('../images/hero.jpg');
  background-position: 50%;
  background-size: cover;
  width: 100%;
  height: 200vh;
  position: relative;
  top: 0;
}

.div-block-5 {
  z-index: 1;
  position: relative;
  top: 0;
  overflow: visible;
}

.bg-img {
  z-index: 0;
  background-image: url('../images/hero.jpg');
  background-position: 50%;
  background-size: cover;
  position: absolute;
  inset: 0%;
}

.div-block-6 {
  aspect-ratio: auto;
  background-color: #fff;
  margin-top: 10px;
  display: inline-block;
  position: static;
}

.heading-3 {
  color: #000;
  text-transform: uppercase;
  width: auto;
  margin-top: 10px;
  padding: 4px 15px;
  font-size: 16px;
  font-weight: 500;
  display: block;
}

.link {
  color: #000;
  text-underline-offset: 4px;
  font-weight: 700;
}

.text-span {
  text-transform: uppercase;
  font-weight: 400;
}

.text-span-2 {
  text-transform: uppercase;
  margin-right: 9px;
}

.services {
  display: none;
}

.div-block-7 {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
  position: relative;
}

.services-left {
  position: relative;
  top: 0;
  overflow: visible;
}

.services-image {
  background-image: url('../images/services-image.jpg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 100vh;
  position: sticky;
  top: 0;
}

.services-content {
  padding-left: 0;
  padding-right: 0;
}

.heading-4 {
  text-transform: uppercase;
  margin-top: 10px;
  margin-left: 0;
  font-size: 20px;
}

.heading-4.left-padding {
  color: #fff;
  text-align: left;
  width: 50%;
  margin-top: 0;
  padding-left: 0;
}

.heading-4.left-padding.ser {
  color: #000;
}

.service-card {
  -webkit-text-stroke-width: 0px;
  border: 1px solid #c8c8c8;
  border-radius: 0;
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  height: 50vh;
  padding: 32px 16px 32px 0;
  display: flex;
}

.service-heading {
  color: #000;
  text-transform: uppercase;
  margin-bottom: 20px;
  font-family: Soehneschmaldreiviertelfett, Impact, sans-serif;
  font-size: 3.5rem;
}

.service-heading.left-padding {
  padding-left: 20px;
  font-size: 3.2rem;
}

.paragraph {
  color: #999;
}

.paragraph.left-padding {
  padding-left: 20px;
}

.heading-5 {
  font-family: Soehneschmaldreiviertelfett, Impact, sans-serif;
}

.div-block-8 {
  flex-flow: column;
  justify-content: flex-start;
  align-items: stretch;
  height: 100vh;
  margin-top: 0;
  display: flex;
}

.div-block-8.about-subsection-2.ag {
  justify-content: center;
  align-items: stretch;
  height: auto;
  position: relative;
}

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

.about-paragraph {
  color: #fff;
  width: 50%;
  font-size: 18px;
  line-height: 24px;
}

.heading-6 {
  z-index: 10;
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  font-family: Soehneschmaldreiviertelfett, Impact, sans-serif;
  font-size: 7.2rem;
  line-height: 6rem;
  position: relative;
}

.about-image {
  z-index: 1;
  align-self: auto;
  width: 40%;
  margin-top: -20vh;
  padding-left: 0;
  position: relative;
}

.about-image.a1 {
  align-self: flex-end;
  margin-top: -42vh;
}

.about-image.a2 {
  margin-top: 0;
}

.paragraph-2 {
  color: #fff;
  width: 70%;
  font-size: 1.4rem;
  line-height: 1.8rem;
}

.div-block-10 {
  flex-flow: column;
  order: -1;
  justify-content: center;
  align-items: flex-end;
  height: 90vh;
  margin-top: 0;
  display: flex;
}

.heading-7 {
  color: #fff;
  width: 70%;
  margin-bottom: 20px;
  font-family: Soehneschmaldreiviertelfett, Impact, sans-serif;
  font-size: 2.9rem;
  line-height: 2.3rem;
}

.div-block-11 {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: center;
  height: 120vh;
  display: grid;
  position: relative;
  top: 0;
  overflow: hidden;
}

.about-image-three {
  z-index: 1;
  align-self: auto;
  width: 40%;
  margin-top: -31vh;
  padding-left: 0;
  position: sticky;
}

.about-image-three.a1 {
  align-self: flex-end;
  margin-top: -42vh;
}

.about-image-three.a2 {
  margin-top: 0;
}

.about-image-three.three-image {
  margin-top: -9vh;
}

.steel-image-1 {
  background-image: url('../images/steel-detailing-1.jpg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 60vh;
}

.div-block-12 {
  grid-column-gap: 16px;
  grid-row-gap: 18px;
  color: #000;
  background-color: #000;
  grid-template: "Area-3 Area-2 ."
                 "Area-3 Area-2 Area"
                 ". . ."
                 / 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  height: 100vh;
  display: grid;
  position: static;
  overflow: hidden;
}

.div-block-13 {
  z-index: 100;
  background-color: #000;
  position: static;
  inset: 0%;
}

.div-block-14 {
  background-image: url('../images/steel-detailing-1.jpg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  width: 40%;
  height: 70%;
}

.div-block-14.steel1 {
  position: static;
  inset: 0%;
}

.div-block-14.steel2 {
  background-image: url('../images/steel-detailing-2.jpg');
}

.div-block-14.steel3 {
  z-index: 12;
  position: relative;
  inset: 0%;
}

.div-block-15 {
  background-image: url('../images/steel-detailing-1.jpg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  width: 30%;
  height: 60%;
}

.div-block-15.steel2 {
  width: 100%;
}

.heading-8 {
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  font-family: Soehneschmaldreiviertelfett, Impact, sans-serif;
  font-size: 6rem;
  line-height: 5.9rem;
}

.div-block-16 {
  height: auto;
}

.services-2 {
  background-color: #121212;
}

.div-block-17 {
  background-color: #121212;
  width: 100%;
  height: auto;
  position: relative;
}

.service-background {
  background-color: #121212;
  background-image: linear-gradient(#0003, #0003), url('../images/services-image.jpg');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
  width: 100%;
  height: 100vh;
  position: relative;
  top: 0;
  overflow: hidden;
}

.paragraph-3 {
  color: #fff;
  width: 50%;
  margin-top: 0;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.8rem;
}

.div-block-18 {
  background-color: #121212;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  height: 50vh;
  display: flex;
}

.section {
  width: 100%;
  height: 100vh;
}

.div-block-19 {
  background-color: #ff9494;
  width: 100%;
  height: 100vh;
}

.projects {
  background-color: #fff;
  width: 100%;
}

.div-block-20 {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100vh;
  display: flex;
}

.div-block-21 {
  flex-flow: row;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  height: 30vh;
  display: flex;
}

.paragraph-4 {
  color: #fff;
  align-self: auto;
  width: 70%;
  font-size: 1.4rem;
  line-height: 1.8rem;
}

.services-holder {
  display: flex;
  position: relative;
}

.service-left {
  width: 30%;
  position: relative;
  top: 0;
}

.service-right {
  width: 70%;
}

.heading-9 {
  color: #fff;
  width: 100%;
  height: 200px;
  font-family: Soehneschmaldreiviertelfett, Impact, sans-serif;
  font-size: 4rem;
  line-height: 4rem;
  position: sticky;
  top: 0;
}

.service-big-card {
  background-color: #fff;
  height: 25vh;
}

.heading-10 {
  color: #000;
  font-family: Soehneschmaldreiviertelfett, Impact, sans-serif;
  font-size: 3rem;
  line-height: 3rem;
}

.learn_wrapper {
  position: sticky;
  top: 34%;
}

.col-left {
  flex: 1;
  align-self: stretch;
  position: relative;
}

.block-text {
  letter-spacing: -.01em;
}

.block-title {
  opacity: .2;
  color: #000;
  letter-spacing: -.04px;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1;
}

.section-2 {
  flex-direction: column;
  flex: 1;
  justify-content: center;
  padding-top: 140px;
  padding-bottom: 160px;
  position: relative;
}

.section-2.cc-no-padding-bottom {
  background-color: #121212;
  margin-top: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.block {
  color: #fff;
  background-color: #7946f3;
  align-items: stretch;
  min-height: 400px;
  margin-bottom: 100px;
  padding: 48px 50px 56px;
  font-size: 28px;
  font-weight: 300;
  line-height: 1.4;
  display: flex;
  position: sticky;
}

.block._3 {
  background-color: #7045af;
  top: 30%;
}

.block._4 {
  background-color: #e14594;
  margin-bottom: 0;
  top: 34%;
}

.block._2 {
  background-color: #2b3595;
  min-height: auto;
  top: 26%;
}

.block._1 {
  background-color: #000;
  border: 1px solid #363636;
  min-height: auto;
  padding: 0;
  top: 22%;
}

.block._1.s2 {
  top: 28%;
}

.block._1.s3, .block._1.s4 {
  top: 40%;
}

.block._1.s4.s1 {
  top: 22%;
}

.block._1.a2 {
  top: 28%;
}

.block._1.a3 {
  top: 34%;
}

.block._1.a4 {
  top: 40%;
}

.block._1.a6 {
  top: 46%;
}

.block._1.a7 {
  top: 52%;
}

.block._1.ss3 {
  top: 34%;
}

.container {
  width: 70%;
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
}

.container.cc-flex-h {
  flex: 1;
  justify-content: center;
  align-items: center;
  display: flex;
}

.col-right {
  flex-direction: column;
  flex: 1;
  display: flex;
}

.text_left {
  letter-spacing: -.02em;
  margin-top: 12px;
  margin-bottom: 0;
  padding-right: 180px;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
  display: inline-block;
}

.div-block-22 {
  flex-direction: column;
  flex: 1;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.div-block-23 {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template: "."
  / 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 24px;
  display: grid;
}

.heading-11 {
  color: #fff;
  text-transform: uppercase;
  font-family: Soehneschmaldreiviertelfett, Impact, sans-serif;
  font-size: 3rem;
  line-height: 3rem;
}

.heading-11.hw {
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 20px;
  font-size: 2.8rem;
  line-height: 2.5rem;
}

.div-block-24 {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding-top: 24px;
  padding-bottom: 24px;
  font-weight: 400;
  display: flex;
}

.heading-12 {
  color: #000;
  margin-right: 32px;
  font-size: 2rem;
}

.image {
  width: 100%;
  height: 50vh;
}

.paragraph-5 {
  color: #b9b9b9;
  width: 415.463px;
  padding-right: 24px;
  font-size: 18px;
}

.div-block-25 {
  width: 100%;
  height: 100%;
}

.heading-13 {
  color: #fff;
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 15px;
  font-family: Soehneschmaldreiviertelfett, Impact, sans-serif;
  font-size: 2.9rem;
  line-height: 2.4rem;
}

.heading-13.hw1.hh {
  font-size: 6rem;
  line-height: 5.1rem;
}

.paragraph-6 {
  color: #fff;
  width: 60%;
  margin-bottom: 10vh;
  font-family: Satoshi, Arial, sans-serif;
  font-size: 1.4rem;
  line-height: 1.7rem;
}

.div-block-26 {
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  height: auto;
  display: flex;
}

.heading-14 {
  color: #000;
  text-transform: uppercase;
  margin-top: 0;
  padding-top: 0;
  padding-bottom: 0;
  font-family: Soehneschmaldreiviertelfett, Impact, sans-serif;
  font-size: 5rem;
  line-height: 4.9rem;
}

.projects-holder {
  column-count: 2;
  width: 100%;
}

.heading-15 {
  color: #000;
  margin-top: 20vh;
  margin-bottom: 0;
  font-size: 1.4rem;
}

.div-block-27 {
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  height: auto;
  margin-top: 0;
  margin-bottom: 32px;
  display: flex;
}

.project-image {
  width: 100%;
  margin-top: 12px;
  overflow: hidden;
}

.image-2, .div-block-28 {
  width: 100%;
}

.heading-16 {
  color: #000;
  text-align: center;
  text-transform: uppercase;
  font-family: Soehneschmaldreiviertelfett, Impact, sans-serif;
  font-size: 6rem;
  line-height: 5.3rem;
}

.out-image-wrapper {
  background-image: url('../images/The-Royal-Poinciana-Playhouse.png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: contain;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100vh;
  display: flex;
  position: relative;
  inset: 0%;
  overflow: visible;
}

.out-image {
  background-image: url('../images/The-Royal-Poinciana-Playhouse.png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 130vh;
}

.div-block-29 {
  position: relative;
  inset: 0%;
}

.div-block-30 {
  margin-bottom: 0;
  display: flex;
}

.div-block-31 {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding-bottom: 15vh;
  display: flex;
}

.paragraph-7 {
  color: #000;
  text-align: center;
  width: 80%;
  margin-top: 20px;
  font-size: 18px;
  line-height: 28px;
}

.heading-17 {
  text-transform: uppercase;
  font-size: 1.3rem;
  line-height: 1.5rem;
  display: none;
}

.div-block-32 {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  align-self: center;
  place-items: center;
  width: 100%;
  margin-top: 5vh;
  display: grid;
}

.certification-logo {
  width: 92px;
}

.certification-logo.cisc {
  width: 130px;
}

.div-block-33 {
  border: 1px solid silver;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding-top: 20px;
  padding-bottom: 20px;
  display: flex;
}

.div-block-33.box {
  height: 100%;
}

.contact {
  background-color: #ece7d9;
  width: 100%;
  height: 100vh;
}

.contact-holder {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  height: 100%;
  display: grid;
}

.contact-img-wrapper {
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

.contact-img {
  width: 120%;
  height: 120vh;
  overflow: clip;
}

.div-block-34 {
  color: #000;
  text-transform: uppercase;
  width: 100%;
  height: 100vh;
  padding: 20px;
  font-family: Soehneschmaldreiviertelfett, Impact, sans-serif;
  font-size: 4rem;
  line-height: 4rem;
}

.heading-18 {
  color: #000;
  text-transform: uppercase;
  font-family: Soehneschmaldreiviertelfett, Impact, sans-serif;
  font-size: 2.8rem;
}

.heading-19 {
  color: #000;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2rem;
  text-decoration: underline;
}

.heading-20 {
  color: #000;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.1rem;
  font-weight: 500;
  line-height: 2rem;
}

.heading-20.contact-subtext {
  color: #6d6d6d;
}

.div-block-35, .div-block-36 {
  margin-top: 5vh;
}

.div-block-37 {
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  height: 100vh;
  display: flex;
}

.heading-21 {
  font-size: 5rem;
  line-height: 4.7rem;
}

.text-span-3 {
  text-transform: none;
  font-family: Satoshi, Arial, sans-serif;
  font-size: 18px;
}

.link-2 {
  color: #000;
  margin-top: 20px;
  font-family: Satoshi, Arial, sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 20px;
}

.div-block-38 {
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  height: 100vh;
  display: flex;
}

.footer {
  z-index: 0;
  background-color: #121212;
  width: 100%;
  height: 120vh;
  position: relative;
  inset: auto 0% 0%;
}

.div-block-39 {
  flex-flow: column;
  justify-content: space-around;
  width: 100%;
  height: 100vh;
  display: flex;
}

.link-3 {
  color: #fff;
  margin-top: 5vh;
  font-size: 3.5rem;
  font-weight: 500;
  line-height: 3.3rem;
}

.link-3.ctp2 {
  margin-top: 0;
  font-size: 2.3rem;
}

.div-block-40 {
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  padding-top: 7vh;
  display: flex;
}

.div-block-41 {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: flex-start;
  margin-top: 5vh;
  display: grid;
}

.footer-heading {
  color: #848484;
  font-weight: 500;
}

.list-item {
  margin-top: 10px;
  list-style-type: none;
}

.list-item.footer-list-item {
  margin-top: 6px;
  margin-right: 12px;
  padding-top: 6px;
  padding-bottom: 6px;
  padding-right: 6px;
}

.footer-link {
  color: #fff;
  font-size: 18px;
  font-weight: 400;
}

.footer-link.w--current {
  text-decoration: none;
}

.footer-bottom {
  margin-bottom: 5vh;
  display: flex;
}

.footer-copyright-text {
  color: #fff;
  margin-bottom: 0;
  font-size: 16px;
  font-weight: 500;
}

.section-3 {
  background-color: #fff;
}

.body-2 {
  background-color: #121212;
  font-family: Satoshi, Arial, sans-serif;
}

.heading-22 {
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  margin-top: 30vh;
  font-family: Soehneschmaldreiviertelfett, Impact, sans-serif;
  font-size: 8rem;
  line-height: 7.2rem;
}

.heading-22.ctp {
  font-size: 6rem;
  line-height: 6rem;
}

.about-hero-image-wrapper {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100vh;
  margin-top: 10vh;
  display: flex;
}

.about-hero-image {
  background-image: url('../images/dgaks-office-1.jpg');
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 100vh;
}

.about-header-paragraph {
  color: #fff;
  font-size: 1rem;
  line-height: 1.7rem;
}

.about-header-paragraph.sp {
  margin-top: 20px;
  margin-bottom: 30px;
}

.about-header-paragraph.gaq-para {
  text-align: center;
}

.heading-23 {
  color: #fff;
  text-transform: uppercase;
  font-family: Satoshi, Arial, sans-serif;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 2.3rem;
}

.heading-23.sl {
  margin-bottom: 0;
}

.div-block-42 {
  margin-top: 10vh;
}

.div-block-43 {
  margin-top: 20vh;
}

.office-photos-row-1 {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  flex-flow: row;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  margin-top: 20px;
  display: flex;
  overflow: hidden;
}

.office-photo {
  flex: 0 auto;
  align-self: flex-end;
  width: 35%;
}

.office-photo.p2 {
  width: 70%;
}

.office-photo.p2.p3 {
  align-self: flex-start;
}

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

.div-block-44.op2 {
  justify-content: flex-start;
  align-items: center;
}

.div-block-45 {
  margin-top: 10vh;
}

.div-block-46 {
  padding-bottom: 24px;
}

.awards {
  margin-top: 5vh;
}

.div-block-47 {
  flex-flow: row;
  justify-content: flex-end;
  align-items: flex-start;
  width: 100%;
  height: auto;
  margin-top: 5vh;
  display: flex;
}

.div-block-47.ab1 {
  justify-content: flex-start;
  align-items: flex-start;
}

.award-image {
  width: 100%;
}

.award-block {
  width: 60%;
}

.heading-24 {
  color: #fff;
  margin-top: 10px;
  margin-bottom: 0;
  font-size: 1.6rem;
  line-height: 2.2rem;
  display: inline-block;
}

.heading-25 {
  color: #626262;
  margin-top: 0;
  font-weight: 500;
}

.founders {
  margin-top: 15vh;
  margin-bottom: 10vh;
}

.div-block-48 {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  height: auto;
  display: grid;
}

.heading-26 {
  color: #fff;
  text-transform: uppercase;
  font-size: 1.5rem;
  line-height: 2.1rem;
}

.body-3 {
  background-color: #121212;
  font-family: Satoshi, Arial, sans-serif;
}

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

.div-block-50 {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  margin-top: 10vh;
  display: grid;
}

.div-block-50.sll {
  display: block;
}

.ms-input-wrap {
  padding: 0;
  display: flex;
  position: relative;
}

.ms-input-label {
  color: #121331;
  margin-bottom: 5px;
  font-weight: 700;
}

.ms-input-label.is-inset {
  z-index: 3;
  color: #fff;
  -webkit-text-stroke-color: #fff;
  font-size: 95%;
  display: inline-block;
  position: absolute;
  top: 8px;
  left: 12px;
}

.ms-input {
  color: #121331;
  background-color: #fff;
  border: 1px solid #12133140;
  border-radius: 5px;
  min-height: 40px;
  margin-bottom: 20px;
  padding: 8px 12px;
  transition: box-shadow .2s, border-color .2s;
  position: relative;
  box-shadow: 0 5px 10px -5px #0000001a;
}

.ms-input:hover {
  z-index: 2;
  box-shadow: none;
  border-color: #2962ff;
}

.ms-input::placeholder {
  color: #909090;
}

.ms-input.is-inset {
  color: #fff;
  background-color: #000;
  min-height: 60px;
  padding-top: 20px;
  padding-bottom: 0;
}

.submit-button {
  color: #000;
  background-color: #fff;
  border-radius: 0;
  padding: 12px 32px;
  font-size: 16px;
  font-weight: 500;
  transition: background-color .4s cubic-bezier(.86, 0, .07, 1);
}

.submit-button:hover {
  color: #000;
  background-color: #d1d1d1;
}

.body-4, .body-5, .body-6 {
  color: #fff;
  background-color: #121212;
  font-family: Satoshi, Arial, sans-serif;
}

.list {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  padding-left: 0;
  list-style-type: none;
  display: flex;
}

.div-block-51 {
  width: 100%;
  margin-bottom: 10vh;
}

.div-block-52 {
  margin-top: 20vh;
}

.heading-27 {
  margin-top: 5vh;
  margin-bottom: 5vh;
  font-size: 38px;
}

.paragraph-8 {
  margin-top: 27px;
}

.heading-28 {
  margin-top: 20px;
}

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

.scroll-track {
  height: 250svh;
  display: block;
  position: relative;
}

.quick-stack {
  height: 100svh;
}

.grid-mask {
  position: sticky;
  top: 0;
  overflow: hidden;
}

.other-image {
  object-fit: fill;
  width: 100%;
  height: 100%;
}

.image-4 {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.main-image-mask {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

@media screen and (max-width: 991px) {
  .nav-menu-wrapper {
    background-color: #0000;
  }

  .nav-space {
    text-align: left;
    width: 100%;
    margin-top: 15px;
  }

  .nav-space.services-for-desktop {
    display: none;
  }

  .btn.btn-one.nav-cta {
    margin-top: 15px;
  }

  .menu-button {
    color: #fff;
    padding: 12px;
  }

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

  .nav-button-wrapper {
    width: 100%;
    margin-left: 0;
  }

  .nav-link-5 {
    color: #000;
    width: 100%;
    padding-left: 5px;
    padding-right: 5px;
    display: block;
  }

  .nav-link-5.w--current {
    text-align: left;
    width: 100%;
    display: block;
  }

  .nav-link-5.cta-special-link {
    color: #03f;
    font-weight: 700;
  }

  .nav-menu {
    background-color: #fff;
    border-radius: 12px;
    flex-flow: column;
    justify-content: space-around;
    align-items: flex-start;
    padding: 24px;
    display: flex;
  }

  .heading {
    font-size: 6rem;
    line-height: 5.2rem;
  }

  .heading-2 {
    font-size: 16px;
    font-weight: 500;
  }

  .paragraph-2 {
    width: 100%;
  }

  .div-block-10 {
    height: auto;
    padding-top: 10vh;
    padding-bottom: 31px;
  }

  .heading-7 {
    width: 100%;
  }

  .block {
    top: 28%;
  }

  .block._1.s4.s1 {
    display: block;
  }

  .container.cc-flex-h {
    flex-direction: column;
  }

  .col-right {
    align-self: stretch;
    margin-top: 24px;
  }

  .heading-11 {
    font-size: 2.9rem;
    line-height: 3rem;
    display: inline-block;
  }

  .div-block-24 {
    flex-flow: column;
  }

  .image {
    height: 50vh;
    overflow: clip;
  }

  .paragraph-5 {
    width: auto;
    padding-right: 0;
    display: inline-block;
  }

  .heading-13.hw1.hh {
    font-size: 5.5rem;
    line-height: 4.9rem;
  }

  .paragraph-6 {
    width: 100%;
  }

  .div-block-26 {
    height: auto;
  }

  .heading-14 {
    font-size: 4rem;
    line-height: 4rem;
  }

  .heading-16 {
    font-size: 5rem;
    line-height: 4.9rem;
  }

  .paragraph-7 {
    width: 100%;
  }

  .contact {
    height: 200vh;
  }

  .contact-holder {
    grid-template-rows: auto;
    grid-template-columns: 1fr;
    height: 200vh;
  }

  .right-contact {
    background-color: #0000;
  }

  .footer {
    height: 110vh;
  }

  .link-3 {
    font-size: 2.4rem;
    line-height: 2.2rem;
  }

  .div-block-40 {
    padding-top: 5vh;
  }

  .heading-22 {
    font-size: 4.8rem;
    line-height: 4.4rem;
  }

  .founders {
    margin-top: 0;
    margin-bottom: 0;
  }

  .div-block-50 {
    grid-template-columns: 1fr;
    width: 100%;
  }

  .scroll-track {
    display: none;
  }

  .div-block-53 {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .mobile-margin-top-10 {
    margin-top: 10px;
  }

  .nav-space {
    padding-left: 20px;
  }

  .navbar-brand {
    padding-left: 0;
  }

  .nav-link-5 {
    padding-top: 10px;
    padding-bottom: 10px;
    display: inline-block;
  }

  .icon {
    color: #000;
  }

  .icon.light-icon {
    color: #fff;
  }

  .nav-menu {
    flex-direction: column;
    padding-bottom: 30px;
    padding-left: 0;
  }

  .heading {
    font-size: 5rem;
  }

  .heading-2 {
    font-weight: 500;
    line-height: 24px;
  }

  .about {
    height: auto;
  }

  .paragraph-2 {
    width: 100%;
    font-size: 1.2rem;
    line-height: 1.6rem;
  }

  .heading-7 {
    width: 100%;
    font-size: 3rem;
  }

  .div-block-16 {
    height: auto;
  }

  .block {
    margin-bottom: 40px;
  }

  .container {
    width: 100%;
    padding-left: 40px;
    padding-right: 40px;
  }

  .container.cc-flex-h {
    flex-direction: column;
  }

  .text_left {
    margin-bottom: 0;
    padding-bottom: 60px;
    padding-right: 40px;
  }

  .heading-13 {
    font-size: 3rem;
  }

  .heading-13.hw1.hh {
    font-size: 4.2rem;
    line-height: 4rem;
  }

  .paragraph-6 {
    font-size: 1.2rem;
    line-height: 1.6rem;
  }

  .div-block-26 {
    height: auto;
  }

  .heading-14 {
    font-size: 4rem;
    line-height: 4rem;
  }

  .heading-16 {
    font-size: 4rem;
    line-height: 3.9rem;
  }

  .div-block-29 {
    overflow: hidden;
  }

  .paragraph-7 {
    width: 100%;
  }

  .footer {
    height: 150vh;
  }

  .div-block-41 {
    grid-template-columns: 1fr;
  }

  .heading-22 {
    font-size: 4.5rem;
    line-height: 4.5rem;
  }

  .office-photos-row-1 {
    flex-flow: column;
  }

  .office-photo {
    align-self: flex-start;
    width: 70100%;
  }

  .office-photo.p2 {
    width: 100%;
  }

  .heading-24 {
    font-size: 1.2rem;
    line-height: 1.6rem;
  }

  .heading-25 {
    font-size: 19px;
  }

  .heading-26 {
    font-size: 1.1rem;
  }

  .div-block-50 {
    grid-template-columns: 1fr;
    margin-bottom: 10vh;
  }
}

@media screen and (max-width: 479px) {
  .navbar-no-shadow-container-2 {
    background-color: #0000;
    padding-left: 0;
    padding-right: 0;
  }

  .nav-space {
    text-align: left;
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    padding-left: 20px;
    display: block;
  }

  .btn.btn-one {
    width: 100%;
  }

  .btn.btn-one.btn-black {
    margin-top: 10px;
  }

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

  .navbar-no-shadow {
    position: absolute;
    inset: 0% 0% auto;
  }

  .nav-button-wrapper {
    width: auto;
  }

  .nav-link-5, .nav-link-5.w--current {
    width: 100%;
  }

  .navbar-wrapper {
    margin-top: 10px;
  }

  .icon {
    color: #000;
    border: 1px #000;
  }

  .icon.light-icon {
    color: #fff;
  }

  .container-4 {
    max-width: min(100% - 100px, 1400px);
  }

  .container-4.phone-container {
    max-width: min(100%, 1400px);
    padding-left: 15px;
    padding-right: 15px;
  }

  .nav-menu {
    background-color: #fff;
    flex-direction: column;
  }

  .heading {
    box-sizing: border-box;
    font-size: 3rem;
    line-height: 3.2rem;
  }

  .heading-2 {
    font-size: 14px;
    line-height: 20px;
  }

  .div-block-3 {
    margin-bottom: 20vh;
  }

  .about {
    height: auto;
  }

  .div-block-6 {
    margin-top: 0;
    display: block;
  }

  .heading-3 {
    display: inline-block;
  }

  .link {
    text-decoration: none;
  }

  .text-span-2 {
    margin-right: 0;
    line-height: 20px;
  }

  .paragraph-2 {
    font-size: 1rem;
    line-height: 1.4rem;
  }

  .heading-7 {
    font-size: 3rem;
  }

  .div-block-16 {
    height: auto;
  }

  .service-background {
    height: 50vh;
  }

  .block {
    padding: 28px 32px 32px;
    font-size: 24px;
    top: 24%;
  }

  .block._3 {
    top: 28%;
  }

  .block._4 {
    top: 32%;
  }

  .block._2 {
    top: 24%;
  }

  .block._1 {
    top: 20%;
  }

  .container {
    padding-left: 28px;
    padding-right: 28px;
    overflow: visible;
  }

  .container.phone-container {
    padding-left: 18px;
    padding-right: 18px;
  }

  .text_left {
    padding-bottom: 20px;
    padding-right: 0;
    font-size: 28px;
  }

  .div-block-23 {
    grid-template-columns: 1fr;
    padding-left: 0;
    padding-right: 6px;
  }

  .heading-11 {
    padding-left: 12px;
    font-size: 2rem;
    line-height: 2rem;
  }

  .image {
    height: auto;
  }

  .paragraph-5 {
    width: 100%;
    padding-left: 12px;
    font-size: 16px;
    line-height: 20px;
  }

  .heading-13.hw1.hh {
    font-size: 2.8rem;
    line-height: 2.6rem;
  }

  .paragraph-6 {
    font-size: 1rem;
    line-height: 1.4rem;
  }

  .heading-14 {
    font-size: 2.4rem;
    line-height: 2.1rem;
  }

  .projects-holder {
    column-count: 1;
  }

  .heading-15 {
    margin-top: 10vh;
    font-size: 1.2rem;
  }

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

  .out-image-wrapper {
    height: 50vh;
  }

  .paragraph-7 {
    line-height: 24px;
  }

  .div-block-32 {
    grid-template-columns: 1fr 1fr;
  }

  .contact-img-wrapper {
    height: 90vh;
  }

  .heading-21 {
    font-size: 3rem;
    line-height: 2.8rem;
  }

  .div-block-38 {
    height: 70vh;
  }

  .footer {
    height: 180vh;
    position: relative;
  }

  .link-3 {
    font-size: 1.7rem;
  }

  .link-3.ctp2 {
    font-size: 1.6rem;
    line-height: 1.5rem;
  }

  .div-block-40 {
    padding-top: 5vh;
  }

  .footer-link {
    font-size: 16px;
  }

  .footer-bottom {
    margin-bottom: 0;
  }

  .footer-copyright-text {
    font-size: 14px;
  }

  .image-3 {
    margin-top: 10vh;
  }

  .heading-22 {
    font-size: 3.6rem;
    line-height: 3.2rem;
  }

  .about-hero-image-wrapper, .about-hero-image {
    height: 50vh;
  }

  .about-header-paragraph.gaq-para {
    line-height: 1.4rem;
  }

  .heading-23.sl {
    padding-left: 12px;
  }

  .div-block-47 {
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
  }

  .award-block {
    width: 100%;
  }

  .div-block-48 {
    grid-template-columns: 1fr;
  }

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

#w-node-_147e4753-1c17-a090-bc81-cef610cc4a94-a29dee71 {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

#w-node-_897295ba-4381-1804-d375-ba62b9e1a186-a29dee71 {
  grid-template-rows: 20svh;
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

#w-node-_2f9a926c-0975-06a4-8251-201915d2f916-a29dee71, #w-node-_5f795e83-ed92-a8b0-9563-2977a2e3aff7-a29dee71 {
  grid-column: span 2 / span 2;
}

#w-node-_0eb81a90-5884-49bd-8ca9-14ee05abdb06-a29dee71 {
  grid-row: span 2 / span 2;
}

#w-node-aaca8df3-6546-4083-de25-e869828bb53e-a29dee71 {
  grid-column: span 2 / span 2;
}

#w-node-_1958f3ac-dee2-afcc-20f2-a1fa74d0dc8d-a29dee71, #w-node-_1cef542c-30e1-f3b2-b7cc-40b21fe53943-a29dee71, #w-node-_4d27ada9-526d-0feb-5c66-ea2ddc41356c-a29dee71, #w-node-_46d66d39-bd36-101d-0370-50ebead9d6be-a29dee71 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-b31afb23-d697-8b47-46cb-2ec0a87c5055-a29dee71, #w-node-b064751f-a90c-f999-4ec1-ae2c571babf5-a29dee71, #w-node-d4cd324d-3a50-6334-35bb-be11cfb79614-a29dee71, #w-node-e9659ec6-227e-5fb1-f332-5decbb121aa5-a29dee71, #w-node-_19b621a5-2905-1541-0826-6ff777281a87-a29dee71, #w-node-d6f02bfb-36e6-34d0-9456-f7805c9d5bb5-a29dee71 {
  place-self: center;
}

#w-node-cd220ee0-a2ce-c9a7-106d-e04b2dd95768-06013e43, #w-node-_183917ce-add8-3b38-7bfc-44170e8d67b3-06013e43, #w-node-ded852b7-6c6d-8e04-d911-70fb04854882-06013e43, #w-node-f49d8fd5-8bd8-2ea0-c7c8-35f2853567eb-06013e43, #w-node-d3232b0b-7412-5cb8-c960-2370e4b7308b-06013e43, #w-node-_0212aac6-9843-84b0-52d0-75084fa54673-06013e43 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

@media screen and (max-width: 991px) {
  #w-node-_1958f3ac-dee2-afcc-20f2-a1fa74d0dc8d-a29dee71 {
    place-self: auto start;
  }

  #w-node-_1cef542c-30e1-f3b2-b7cc-40b21fe53943-a29dee71, #w-node-_4d27ada9-526d-0feb-5c66-ea2ddc41356c-a29dee71 {
    justify-self: start;
  }
}

@media screen and (max-width: 479px) {
  #w-node-_1958f3ac-dee2-afcc-20f2-a1fa74d0dc93-a29dee71, #w-node-_1cef542c-30e1-f3b2-b7cc-40b21fe53949-a29dee71, #w-node-_4d27ada9-526d-0feb-5c66-ea2ddc413572-a29dee71, #w-node-_46d66d39-bd36-101d-0370-50ebead9d6c4-a29dee71 {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }
}


@font-face {
  font-family: 'Soehneschmaldreiviertelfett';
  src: url('../fonts/SoehneSchmalDreiviertelfett.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Satoshi';
  src: url('../fonts/Satoshi-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Satoshi';
  src: url('../fonts/Satoshi-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Satoshi';
  src: url('../fonts/Satoshi-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}