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

@font-face {
  font-family: Helvetica neue;
  src: url('../fonts/HelveticaNeueThin.otf') format("opentype");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Helvetica neue;
  src: url('../fonts/HelveticaNeueLight.otf') format("opentype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

:root {
  --font-family--main: "Helvetica neue", Arial, sans-serif;
  --blue-oxford: #102e4a;
  --off-black: #333;
  --font-family--alt: "Helvetica neue", Arial, sans-serif;
  --black: black;
  --padding-section--small: var(--margin--medium);
  --padding-section--large: var(--margin--xlarge);
  --grey: #eef1ef;
  --off-white: #fffcf5;
  --margin--small: 1rem;
  --font-family--heading-thin: "Helvetica neue", Arial, sans-serif;
  --white: white;
  --no-color: #fff0;
  --padding-section--medium: var(--margin--large);
  --margin--medium: 2rem;
  --margin--xsmall: .5rem;
  --margin--large: 4rem;
  --primary-dark\<deleted\|variable-fd875c8e\>: #c4bbaf;
  --margin--huge: 12rem;
  --margin--xlarge: 8rem;
}

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

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

body {
  font-family: var(--font-family--main);
  color: var(--blue-oxford);
  font-size: 14px;
  font-weight: 300;
  line-height: 20px;
}

h1 {
  font-family: var(--font-family--main);
  color: var(--off-black);
  letter-spacing: -2px;
  align-self: auto;
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 7.5rem;
  font-weight: 300;
  line-height: 1;
}

h2 {
  color: var(--off-black);
  letter-spacing: -2px;
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 5rem;
  font-weight: 300;
  line-height: 1;
}

h3 {
  color: var(--off-black);
  letter-spacing: -1px;
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 3rem;
  font-weight: 300;
  line-height: 1;
}

h4 {
  color: var(--off-black);
  letter-spacing: -1px;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 2rem;
  font-weight: 300;
  line-height: 1;
}

h5 {
  font-family: var(--font-family--alt);
  color: var(--off-black);
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: .8rem;
  font-weight: 400;
  line-height: 1;
}

h6 {
  color: var(--off-black);
  letter-spacing: 0;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 1.25rem;
  font-weight: 300;
  line-height: 1.4;
}

p {
  margin-bottom: 10px;
  font-size: .875rem;
  line-height: 1.5;
}

a {
  color: var(--black);
  text-decoration: none;
}

li {
  font-size: .875rem;
  line-height: 1.5;
}

blockquote {
  border-left: 5px solid #e2e2e2;
  margin-bottom: 10px;
  padding: 10px 20px;
  font-size: 1rem;
  line-height: 1.5;
}

figcaption {
  text-align: center;
  margin-top: 5px;
  font-size: .875rem;
  line-height: 1.5;
}

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

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

.max-width-small {
  width: 100%;
  max-width: 30rem;
}

.container {
  border: 1px #000;
  width: 100%;
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.container.sticky {
  overflow: visible;
}

.heading-style-h2 {
  font-family: var(--font-family--main);
  color: var(--off-black);
  text-align: left;
  letter-spacing: -.025em;
  -webkit-text-stroke-color: var(--off-black);
  margin-top: 0;
  margin-bottom: 0;
  font-size: 5rem;
  font-weight: 300;
  line-height: 1;
  overflow: visible;
}

.heading-style-h2.main-page {
  font-family: var(--font-family--main);
  color: var(--blue-oxford);
  font-weight: 300;
}

.heading-style-h6 {
  font-family: var(--font-family--main);
  color: var(--off-black);
  letter-spacing: 0;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.25rem;
  font-weight: 300;
  line-height: 1.4;
}

.padding-section-small {
  padding-top: var(--padding-section--small);
  padding-bottom: var(--padding-section--small);
}

.padding-xxlarge {
  padding: 5rem;
}

.global-styles {
  display: block;
  position: fixed;
  inset: 0% auto auto 0%;
}

.margin-bottom {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
}

.margin-bottom.margin-small {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  overflow: hidden;
}

.padding-xsmall {
  padding: 1rem;
}

.styleguide-header {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: center;
  padding-top: 3rem;
  padding-bottom: 3rem;
  display: flex;
}

.wrapper {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: column;
  margin-bottom: 2rem;
  display: flex;
  position: relative;
  top: 0;
  bottom: 0;
  overflow: hidden;
}

.margin-small {
  margin: 1.5rem;
}

.form-field-wrapper {
  margin-top: 0;
  position: relative;
}

.padding-section-large {
  padding-top: var(--padding-section--large);
  padding-bottom: var(--padding-section--large);
}

.max-width-medium {
  width: 100%;
  max-width: 35rem;
}

.styleguide-color-grid {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  margin-top: 2rem;
  margin-bottom: 0;
}

.text-size-small {
  color: var(--off-black);
  text-align: left;
  align-self: flex-start;
  margin-bottom: 0;
  font-size: .875rem;
  font-weight: 300;
  line-height: 1.5;
}

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

.sytleguide-color {
  background-color: #0000;
  padding-bottom: 8rem;
}

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

.sytleguide-color.white {
  background-color: #fff;
}

.sytleguide-color.black {
  background-color: var(--black);
  color: var(--black);
  flex: none;
  align-items: center;
  display: flex;
}

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

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

.icon-xxsmall {
  color: var(--off-black);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: .8rem;
  max-width: none;
  height: .8rem;
  margin-bottom: .125rem;
  margin-left: .25rem;
  display: flex;
  overflow: visible;
}

.background-color-primary-light {
  background-color: var(--off-white);
  color: var(--black);
}

.text-size-xsmall {
  color: var(--off-black);
  font-size: .75rem;
  font-weight: 300;
  line-height: 1.5;
}

.max-width-large {
  width: 100%;
  max-width: 48rem;
}

.text-size-medium {
  color: var(--off-black);
  -webkit-text-stroke-color: var(--off-black);
  margin-bottom: 0;
  font-family: Manrope, sans-serif;
  font-size: 1.125rem;
  font-weight: 300;
  line-height: 1.5;
  overflow: hidden;
}

.padding-medium {
  padding: 2rem;
  overflow: hidden;
}

.padding-bottom, .padding-bottom.padding-xxlarge {
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
}

.padding-bottom.padding-small {
  padding-bottom: var(--margin--small);
}

.padding-xxsmall {
  padding: .5rem;
  overflow: hidden;
}

.heading-style-h1 {
  font-family: var(--font-family--main);
  color: var(--blue-oxford);
  letter-spacing: -.025em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 6.25rem;
  font-weight: 300;
  line-height: 1;
}

.heading-style-h1.main-page {
  font-family: var(--font-family--heading-thin);
  color: var(--blue-oxford);
}

.heading-style-h1.caps {
  font-family: var(--font-family--main);
  letter-spacing: -.025em;
  text-transform: uppercase;
}

.heading-style-h5 {
  font-family: var(--font-family--alt);
  color: var(--blue-oxford);
  letter-spacing: -.025em;
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 300;
  line-height: 1;
}

.heading-style-h5.text-color-off-white {
  font-size: .8rem;
}

.heading-style-h5.text-color-grey {
  color: var(--grey);
}

.heading-style-h5.main-page {
  font-family: var(--font-family--heading-thin);
  color: var(--blue-oxford);
  text-transform: none;
  font-size: 2.25rem;
}

.heading-style-h5.text-color-grey {
  font-size: .8rem;
}

.button {
  color: var(--off-black);
  text-align: center;
  letter-spacing: 0;
  text-transform: none;
  background-color: #0000;
  border: 1px #000;
  padding: .5rem 0 0 .5rem;
  font-size: 11px;
  font-weight: 500;
}

.heading-style-h3 {
  color: var(--off-black);
  text-align: left;
  letter-spacing: -1px;
  margin-top: 0;
  font-size: 3rem;
  font-weight: 300;
  line-height: 1;
}

.heading-style-h3.text-color-off-white {
  margin-top: 0;
}

.heading-style-h4 {
  color: var(--off-black);
  text-align: left;
  letter-spacing: -1px;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 2rem;
  font-weight: 300;
  line-height: 1;
}

.heading-style-h4.text-color-off-white.is-cta, .heading-style-h4.text-color-off-white-copy.is-cta {
  font-family: var(--font-family--heading-thin);
  color: var(--grey);
  letter-spacing: -.025em;
  text-transform: uppercase;
}

.styleguide-subheading {
  z-index: 3;
  background-color: var(--grey);
  color: var(--white);
  padding: 1.15rem .5rem 1.15rem 1.1rem;
  position: sticky;
  top: 2.7rem;
}

.padding-vertical, .padding-vertical.padding-xxlarge {
  padding-left: 0;
  padding-right: 0;
}

.navbar-container {
  flex: 0 auto;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 1296px;
  height: 100%;
  margin-left: 0;
  margin-right: 0;
  display: flex;
}

.navbar-dropdown-link {
  color: var(--off-black);
  padding: .5rem 1rem;
}

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

.navbar-menu {
  align-items: center;
  display: flex;
  position: static;
}

.navbar-menu.is-page-height-tablet {
  overflow: hidden;
}

.navbar-menu-dropdown {
  color: var(--off-black);
  display: none;
}

.navbar-menu-button {
  color: var(--off-black);
  padding: 0;
}

.menu-icon, .navbar-dropdown-list {
  color: var(--off-black);
}

.navbar-dropdown-list.w--open {
  background-color: #0000;
  border: 1px solid #0000;
  padding: .5rem;
}

.navbar-dropdown-toggle {
  padding: .5rem 2.5rem .5rem 1rem;
}

.menu-icon-line-top {
  color: var(--off-black);
}

.nav-bar-component {
  background-color: #0000;
  border-bottom: 1px solid #0000;
  justify-content: center;
  align-items: center;
  width: auto;
  max-width: none;
  height: auto;
  min-height: 4.5rem;
  max-height: 4.5rem;
  padding-left: 5%;
  padding-right: 5%;
  display: flex;
}

.dropdown-icon {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 1rem;
  height: 1rem;
  margin-top: auto;
  margin-bottom: auto;
  margin-right: 1rem;
  display: flex;
  position: absolute;
  inset: 0% 0% 0% auto;
}

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

.navbar-link {
  color: var(--off-black);
  padding: .5rem 1rem;
  transition: border .2s;
  transform: translate(0);
}

.navbar-link:hover {
  text-decoration: none;
}

.navbar-link.w--current {
  color: var(--off-black);
  text-decoration: none;
  transition-property: none;
}

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

.navbar-logo {
  width: 100%;
  height: 100%;
  max-height: 14rem;
}

.image-wrapper {
  object-fit: cover;
  width: 100%;
  height: 100%;
  max-height: none;
  margin-bottom: 0;
  overflow: hidden;
}

.section {
  padding-left: 5%;
  padding-right: 5%;
  overflow: hidden;
}

.section.padding-section-large, .section.structure-classes {
  overflow: visible;
}

.section.sticky {
  background-color: var(--no-color);
  overflow: visible;
}

.section.is-vision {
  padding-top: var(--padding-section--medium);
  padding-bottom: var(--padding-section--medium);
  background-color: var(--grey);
}

.image-wrapper-grid {
  object-fit: cover;
  height: 30rem;
  position: relative;
  overflow: hidden;
}

.content-grid-wrapper {
  overflow: hidden;
}

.grid-1-layout {
  grid-column-gap: var(--margin--medium);
  grid-row-gap: var(--margin--xsmall);
  grid-template-rows: auto;
  grid-template-columns: .25fr .5fr .5fr;
  grid-auto-columns: .5fr;
  place-items: start stretch;
  display: grid;
  overflow: hidden;
}

.image-wrapper-project-hero {
  overflow: hidden;
}

.text-weight-semibold {
  -webkit-text-stroke-color: var(--off-black);
  font-weight: 600;
}

.grid-paragraph-wrapper {
  flex: 1;
  overflow: hidden;
}

.error-message {
  background-color: #ffb9b9;
  margin-top: 1.5rem;
  padding: .875rem 1rem;
}

.footer-social-list {
  grid-column-gap: .75rem;
  grid-row-gap: 0rem;
  white-space: normal;
  grid-template-rows: auto;
  grid-template-columns: max-content;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  place-items: start;
  display: grid;
}

.footer-link {
  color: var(--grey);
  letter-spacing: -.025em;
  padding-top: .5rem;
  padding-bottom: .5rem;
  font-size: 1rem;
  font-weight: 400;
  text-decoration: none;
  transition: all .2s;
}

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

.footer-legal-link {
  color: var(--off-black);
  font-size: .875rem;
  text-decoration: underline;
}

.footer.background-color-blue {
  background-color: var(--blue-oxford);
}

.footer-left-wrapper {
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.footer-link-list {
  color: var(--off-black);
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 100%;
  grid-auto-columns: 100%;
  place-items: flex-start start;
  display: flex;
}

.social-icon {
  color: var(--off-black);
  -webkit-text-stroke-color: var(--off-black);
  width: 1.5rem;
  height: 1.5rem;
  transition: color .2s;
}

.social-icon:hover {
  color: var(--off-white);
}

.social-icon.text-color-gray:hover {
  color: var(--off-black);
}

.social-link {
  align-items: center;
  font-size: 14px;
  text-decoration: none;
  display: flex;
}

.divider {
  background-color: #0000;
  width: 100%;
  height: 1px;
  margin-bottom: 1rem;
}

.footer-logo-link {
  padding-bottom: var(--margin--large);
  float: none;
  padding-left: 0;
  display: block;
}

.footer-legal-list {
  grid-column-gap: 1.5rem;
  grid-row-gap: 0rem;
  white-space: normal;
  grid-template-rows: auto;
  grid-template-columns: max-content;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  justify-content: center;
  display: grid;
}

.footer-credit-text {
  color: var(--white);
  letter-spacing: -.025em;
  font-size: 1rem;
  font-weight: 400;
}

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

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

.collection-item-projects {
  padding-top: var(--margin--small);
  padding-bottom: var(--margin--small);
  border-top: 1px solid #000;
  border-bottom: 1px #000;
  flex-direction: row;
  justify-content: space-between;
  margin-top: 0;
  display: block;
}

.faq-accordion {
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  overflow: hidden;
}

.project-main-image-container {
  object-position: 50% 50%;
  min-height: 20rem;
  max-height: 40rem;
  position: relative;
  overflow: hidden;
}

.image-medium {
  object-fit: cover;
  object-position: 50% 50%;
  width: 100%;
  max-width: none;
  height: 100%;
  min-height: auto;
  margin-bottom: 0;
  position: absolute;
  overflow: hidden;
}

.form-input {
  border-style: none none solid;
  border-width: 1px;
  border-color: transparent transparent var(--black);
  background-color: var(--grey);
  color: var(--off-black);
  flex: 0 auto;
  min-width: 20rem;
  max-width: none;
  height: auto;
  min-height: 2.75rem;
  margin-bottom: 0;
  padding: .5rem .75rem;
  font-size: .8rem;
  line-height: 1.6;
}

.form-input:focus {
  border-color: #000;
}

.form-input::placeholder {
  color: var(--black);
}

.image-card-blog-container {
  object-fit: cover;
  background-image: url('https://d3e54v103j8qbb.cloudfront.net/img/background-image.svg');
  background-position: 50%;
  background-size: cover;
  width: 100%;
  min-width: 30rem;
  height: 100%;
  min-height: 30rem;
  max-height: none;
  margin-top: 0;
  padding-left: 0;
  display: flex;
  position: relative;
  overflow: hidden;
}

.text-blog-card-wrapper {
  margin-top: var(--margin--xsmall);
  padding-right: var(--margin--xsmall);
  padding-left: var(--margin--xsmall);
  grid-column-gap: var(--margin--small);
  grid-row-gap: var(--margin--small);
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  max-width: 35rem;
  margin-bottom: 0;
  margin-right: 0;
  display: flex;
  overflow: hidden;
}

.blog-card-wrapper {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 2.5fr;
  grid-auto-columns: 1fr;
  padding: 0;
  display: grid;
  overflow: hidden;
}

.blog-card-wrapper.sticky {
  overflow: visible;
}

.collection-item {
  padding: 0;
}

.blog-categories-wrapper {
  position: sticky;
  top: 2rem;
}

.sticky-wrapper {
  position: sticky;
  top: 0;
  overflow: visible;
}

.main-button-black {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  color: var(--grey);
  white-space: nowrap;
  flex: none;
  justify-content: center;
  align-self: flex-start;
  align-items: center;
  margin: 0;
  padding-bottom: 0;
  padding-left: 0;
  padding-right: 0;
  font-weight: 600;
  display: block;
  position: relative;
  overflow: hidden;
}

.main-button-black.align-left {
  justify-content: flex-start;
  min-width: 8rem;
  padding-bottom: .8rem;
}

.main-button-black.align-left.scroll-in-to-view-slide-from-right-400ms {
  max-width: 12rem;
}

.align-left {
  padding-left: 0%;
  display: flex;
}

.navbar-link-wrapper {
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  display: block;
  overflow: hidden;
}

.navbar-link-wrapper:hover {
  transform: translate(0);
}

.navbar-link-line {
  background-color: var(--off-black);
  height: 1px;
}

.form {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 1rem;
  display: flex;
  overflow: hidden;
}

.collection-list-tabs {
  grid-column-gap: var(--margin--xsmall);
  grid-row-gap: var(--margin--xsmall);
  flex-flow: column;
  display: flex;
  overflow: hidden;
}

.link-block {
  margin-right: 0;
  font-size: 1rem;
  line-height: 1.5;
  transition: transform .2s;
  display: flex;
  overflow: hidden;
}

.link-block:hover {
  text-decoration: underline;
  transform: translate(1px, -2px);
}

.image-large {
  object-fit: cover;
  object-position: 50% 50%;
  width: 100%;
  height: 100%;
  min-height: 40rem;
  max-height: 45rem;
  overflow: hidden;
}

.styleguide-row-wrapper {
  align-items: center;
  min-height: 5rem;
  padding: .5rem 1rem .5rem 0;
  display: flex;
}

.styleguide-block-wrapper {
  border-top: 1px #000;
  border-bottom: 1px #000;
  margin-bottom: 2rem;
}

.button-text {
  background-color: var(--no-color);
  color: var(--off-black);
  letter-spacing: 0;
  -webkit-text-stroke-color: var(--off-black);
  text-transform: none;
  font-size: 1rem;
  font-weight: 300;
  line-height: 1;
}

.button-text.text-color-grey {
  color: var(--grey);
}

.line-button {
  background-color: var(--off-black);
  color: var(--black);
  max-width: 11rem;
  height: 1px;
  margin-top: .5rem;
}

.line-button.hide {
  background-color: var(--black);
  -webkit-text-stroke-color: var(--off-black);
  max-width: 7rem;
  display: block;
}

.line-button.xl {
  background-color: var(--off-black);
  color: var(--off-black);
  -webkit-text-stroke-color: var(--off-black);
  max-width: 12rem;
}

.content-button {
  flex-wrap: nowrap;
  align-content: space-between;
  align-items: flex-end;
  display: flex;
}

.icon-img {
  width: 10rem;
}

.utility-page-wrap {
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  display: flex;
}

.utility-page-wrap.background-color-primary-light {
  justify-content: center;
  align-items: center;
  height: 75vh;
}

.utility-page-content {
  grid-column-gap: var(--margin--medium);
  grid-row-gap: var(--margin--medium);
  color: var(--off-black);
  text-align: center;
  flex-direction: column;
  width: 260px;
  display: flex;
}

.utility-page-form {
  flex-direction: column;
  justify-content: flex-start;
  align-self: center;
  align-items: flex-start;
  display: flex;
}

.link-block-tab {
  color: var(--off-black);
}

.text-block-tab {
  margin-right: 1rem;
  font-size: 1rem;
  line-height: 1.1;
  transition: transform .2s;
}

.text-block-tab:hover {
  text-decoration: underline;
  transform: translate(2px, -2px);
}

.link, .text-block-3 {
  color: var(--off-black);
}

.heading {
  align-self: flex-start;
}

.rich-text-block {
  color: var(--off-black);
  max-width: 40rem;
}

.hide {
  display: none;
}

.submit-button {
  padding-top: 10px;
  display: block;
  overflow: hidden;
}

.heading-h5-wrapper, .text-block-wrapper, .cl-tabs-wrapper {
  margin-bottom: 1rem;
  overflow: hidden;
}

.heading-h2-wrapper {
  margin-bottom: var(--margin--medium);
  overflow: hidden;
}

.paragraph-medium-wrapper {
  width: 100%;
  max-width: 35rem;
  overflow: visible;
}

.flex-block {
  justify-content: space-between;
}

.link-block-projects {
  overflow: hidden;
}

.collection-list-projects {
  grid-column-gap: var(--margin--large);
  grid-row-gap: var(--margin--large);
  flex-flow: column;
  display: flex;
  overflow: hidden;
}

.collection-list-wrapper-projects, .empty-state {
  overflow: hidden;
}

.block-quote {
  color: var(--off-black);
  font-size: 1rem;
  line-height: 1.5;
}

.rich-text-element {
  grid-column-gap: var(--margin--xsmall);
  grid-row-gap: var(--margin--xsmall);
  color: var(--off-black);
  flex-flow: column;
  max-width: 40rem;
  display: flex;
}

.rich-text-element h1 {
  font-family: var(--font-family--main);
  letter-spacing: -2px;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 7.5rem;
  line-height: 1;
}

.rich-text-element h2 {
  letter-spacing: -2px;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 5rem;
  line-height: 1;
}

.rich-text-element h3 {
  letter-spacing: -2px;
  margin-top: 0;
  margin-bottom: 0;
  line-height: 1;
}

.rich-text-element h4 {
  letter-spacing: -1px;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 2rem;
  line-height: 1.2;
}

.rich-text-element h5 {
  font-family: var(--font-family--alt);
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
  font-size: .8rem;
  font-weight: 400;
  line-height: 1;
}

.rich-text-element h6 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.25rem;
  line-height: 1.4;
}

.rich-text-element blockquote {
  letter-spacing: -1px;
  font-size: 2rem;
  line-height: 1.2;
}

.rich-text-element p {
  margin-bottom: 0;
  font-size: 1rem;
}

.link-block-image {
  width: 100%;
  height: 100%;
}

.success-message-1 {
  background-color: var(--primary-dark\<deleted\|variable-fd875c8e\>);
  margin-top: 1rem;
  padding: .875rem;
}

.button-wrapper {
  flex: none;
  display: flex;
}

.button-wrapper.wrapper-align-right {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  justify-content: flex-end;
  align-items: flex-start;
}

.header-background-image-wrapper {
  z-index: -1;
  background-image: linear-gradient(#00000080, #00000080);
  position: static;
  inset: 0%;
  overflow: hidden;
}

.image-overlay-layer {
  z-index: 1;
  background-color: #00000080;
  position: absolute;
  inset: 0%;
}

.image-overlay-layer.is-blue {
  background-color: #102e4abf;
}

.header-background-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.header-background-image.is-cta {
  filter: grayscale();
}

.text-color-off-white {
  color: var(--off-white);
}

.line-divider {
  height: 1px;
}

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

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

.line-divider.line-color-blue {
  background-color: var(--blue-oxford);
}

.line-divider.line-color-blue.is-vision {
  margin-top: 4rem;
  margin-bottom: 2rem;
}

.collection-list-image-wrapper {
  width: 100%;
  height: 500px;
  margin-bottom: 0;
  position: relative;
  overflow: hidden;
}

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

.team-member-name-wrapper {
  padding-top: var(--margin--small);
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  text-align: left;
  border-bottom: 1px #222;
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  height: 100%;
  padding-bottom: .5rem;
  display: flex;
}

.team-name-wrapper {
  margin-top: var(--margin--xsmall);
  text-align: left;
  margin-bottom: 0;
  transition: transform .2s;
}

.team-name-wrapper:hover {
  transform: translate(2px, -2px);
}

.team-social-wrapper {
  margin-top: var(--margin--xsmall);
  text-align: left;
}

.team-collection-list {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto auto;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
  grid-auto-columns: 1fr;
  display: grid;
}

.team-item {
  margin-bottom: var(--margin--medium);
  flex-flow: column;
  display: flex;
}

.team-component {
  flex-flow: column;
  display: flex;
}

.tagline-side-wrapper {
  min-width: 150px;
}

.team-social-list {
  grid-column-gap: .75rem;
  grid-row-gap: 0rem;
  white-space: normal;
  grid-template-rows: auto;
  grid-template-columns: max-content;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  place-items: start;
  display: grid;
}

.team-social-link {
  align-items: center;
  font-size: 14px;
  text-decoration: none;
  transition: transform .2s;
  display: flex;
}

.team-social-link:hover {
  transform: translate(2px, -2px);
}

.icon {
  color: var(--grey);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 1.2rem;
  height: 1.2rem;
  display: flex;
}

.icon:hover {
  color: var(--black);
}

.collection-list-wrapper {
  flex: 1;
}

.header-layout-3 {
  padding-top: var(--margin--huge);
  padding-bottom: var(--margin--large);
  grid-column-gap: 8rem;
  grid-row-gap: 8rem;
  flex-flow: column;
  justify-content: flex-end;
  align-items: stretch;
  margin-top: 0;
  margin-bottom: 0;
  display: flex;
  overflow: hidden;
}

.h2-h3-wrapper {
  grid-column-gap: var(--margin--large);
  grid-row-gap: var(--margin--large);
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
  display: flex;
  overflow: hidden;
}

.content {
  grid-column-gap: var(--margin--medium);
  grid-row-gap: var(--margin--medium);
  flex-flow: column;
  justify-content: flex-end;
  align-items: stretch;
  display: flex;
}

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

.subheading-wrapper.align-bottom {
  justify-content: space-between;
  align-items: flex-end;
}

.h2-wrapper {
  padding-top: 0;
  padding-bottom: var(--margin--large);
  grid-column-gap: 8rem;
  grid-row-gap: 8rem;
  flex-flow: column;
  justify-content: flex-end;
  align-items: stretch;
  margin-top: 0;
  margin-bottom: 0;
  display: flex;
  overflow: hidden;
}

.tagline-line-wrapper {
  grid-column-gap: var(--margin--small);
  grid-row-gap: var(--margin--small);
  flex-flow: column;
  max-width: none;
  display: flex;
}

.news-collection-list {
  grid-column-gap: var(--margin--small);
  grid-row-gap: var(--margin--small);
  grid-template-rows: auto;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  grid-auto-columns: 1fr;
  display: grid;
}

.news-item {
  grid-column-gap: 0rem;
  grid-row-gap: 0rem;
  flex-flow: column;
  margin-bottom: 1rem;
  display: flex;
}

.news-name-wrapper {
  padding-top: var(--margin--small);
  padding-bottom: var(--margin--medium);
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  text-align: left;
  border-bottom: 1px #222;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  height: 100%;
  display: flex;
}

.paragraph-layout {
  padding-top: var(--margin--large);
  padding-bottom: var(--margin--large);
  grid-column-gap: 12rem;
  grid-row-gap: 12rem;
  flex-flow: column;
  display: flex;
}

.grid-stats {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: repeat(auto-fit, minmax(150px, .5fr));
  padding-top: 1rem;
}

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

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

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

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

.gallery21_slide-nav {
  height: 1.75rem;
  font-size: .5rem;
  inset: auto auto 0% 0%;
}

.gallery-slide {
  padding-right: var(--margin--small);
}

.gallery-mask {
  width: 50%;
  overflow: visible;
}

.gallery-slider {
  background-color: #0000;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  height: 100%;
  padding-bottom: 5rem;
  position: relative;
}

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

.gallery-component {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  align-items: start;
}

.gallery21_arrow-icon {
  color: var(--off-white);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 1rem;
  height: 1rem;
  display: flex;
}

.gallery21_arrow {
  background-color: var(--no-color);
  border: 1px #202020;
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  display: flex;
  inset: auto 0% 0% auto;
}

.gallery21_arrow.is-left {
  right: 4rem;
}

.gallery-image-wrapper {
  width: 100%;
  padding-top: 100%;
  position: relative;
}

.heading-2 {
  letter-spacing: 0;
  font-family: Manrope, sans-serif;
}

.section-home-hero-bg-image {
  background-color: #141414;
  height: 250vh;
  margin-top: -100vh;
  margin-bottom: -10vh;
}

.header-layout-1 {
  padding-top: var(--margin--xlarge);
  padding-bottom: var(--margin--large);
  grid-row-gap: 2.5em;
  flex-flow: column;
  grid-template-rows: auto;
  grid-template-columns: .75fr .5fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: flex-start;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.h1-h5-wrapper {
  grid-column-gap: var(--margin--small);
  grid-row-gap: var(--margin--small);
  flex-flow: column;
  width: 100%;
  max-width: none;
  display: flex;
}

.page-wrapper {
  width: 100%;
  font-size: 1em;
  position: relative;
  overflow: visible;
}

.section-home-hero {
  z-index: 2;
  background-color: var(--grey);
  border-radius: 0;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  min-height: 30vh;
  padding-left: 5%;
  padding-right: 5%;
  display: flex;
  position: relative;
}

.hero-bg-image-container {
  color: #000;
  text-align: center;
  mix-blend-mode: screen;
  background-color: #fff;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  height: 100vh;
  display: flex;
  position: sticky;
  top: 5px;
}

.services-item {
  padding-top: var(--margin--medium);
  padding-bottom: var(--margin--medium);
  grid-column-gap: var(--margin--small);
  grid-row-gap: var(--margin--small);
  border-top: 1px solid var(--off-black);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  place-items: end stretch;
  display: grid;
}

.services-item.first {
  grid-column-gap: var(--margin--small);
  grid-row-gap: var(--margin--small);
  border-top-style: none;
  border-top-color: var(--off-black);
  grid-template-columns: 1fr 1fr;
  place-items: end stretch;
  padding-top: 1.5rem;
}

.grid-services {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: .25fr 1fr;
  padding-top: 1rem;
}

.text-size-regular {
  color: var(--off-black);
  letter-spacing: 0;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1rem;
}

.text-size-regular.text-color-off-white {
  color: var(--off-white);
}

.text-size-regular.text-color-white {
  color: var(--white);
  letter-spacing: -.025em;
  font-weight: 400;
}

.header-main {
  background-color: var(--off-white);
  padding-left: 5%;
  padding-right: 5%;
}

.jobs-item {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border-top: 1px none var(--black);
  border-bottom: 1px solid #000;
  grid-template-rows: auto;
  grid-template-columns: .25fr 1fr 1fr .5fr;
  grid-auto-columns: 1fr;
  place-content: end space-between;
  place-items: end stretch;
  padding-top: 2rem;
  padding-bottom: 2rem;
  display: grid;
}

.jobs-heading {
  padding-left: 0;
}

.section-text-highlight {
  padding-left: 5%;
  padding-right: 5%;
  overflow: hidden;
}

.section-projects {
  background-color: var(--off-white);
  padding-left: 5%;
  padding-right: 5%;
  overflow: hidden;
}

.section-button {
  background-color: var(--off-white);
  padding-left: 5%;
  padding-right: 5%;
  display: block;
  position: relative;
  overflow: hidden;
}

.background-hover-color {
  z-index: 1;
  background-color: var(--grey);
  position: absolute;
  inset: 0%;
}

.container-button-section {
  z-index: 999999;
  border: 1px #000;
  width: 100%;
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
  padding-top: 2rem;
  padding-bottom: 2rem;
  position: relative;
  overflow: hidden;
}

.icon-embed-medium {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
}

.menu-icon-line-middle-top {
  z-index: 2;
  width: 24px;
  height: 2px;
  position: absolute;
  inset: 0;
}

.testimonial-author-wrapper {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-end;
  margin-top: 0;
  display: flex;
}

.testimonial-author-text {
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-end;
  display: flex;
}

.header_image {
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 0;
  width: 100%;
  max-height: 35rem;
}

.menu-icon4_line-bottom {
  background-color: #000;
  width: 24px;
  height: 2px;
}

.navbar-social-list {
  grid-column-gap: .75rem;
  grid-row-gap: 0rem;
  white-space: normal;
  grid-template-rows: auto;
  grid-template-columns: max-content;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  display: grid;
}

.navbar-links-wrapper {
  grid-column-gap: var(--margin--large);
  grid-row-gap: var(--margin--small);
  background-color: var(--grey);
  flex: 1;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-content: center;
  align-self: stretch;
  width: 100%;
  max-width: 80rem;
  margin-top: 8rem;
  display: grid;
}

.navbar-main-wrapper {
  grid-column-gap: 1rem;
  flex-direction: row;
  align-items: center;
  display: flex;
}

.navbar-link-main {
  padding: var(--margin--xsmall) 0rem;
  color: var(--blue-oxford);
  margin-left: 0;
  margin-right: 0;
  font-size: 3rem;
  font-weight: 400;
  line-height: 1.2;
  transition: all .2s;
}

.navbar-link-main:hover {
  opacity: .7;
}

.navbar-link-main.w--current {
  color: #202020;
}

.navbar-logo-link {
  z-index: 2;
  padding-left: 0;
}

.menu-icon_line-middle-base-2 {
  background-color: #000;
  width: 24px;
  height: 2px;
  position: absolute;
}

.navbar-social-link {
  align-items: center;
  font-size: 14px;
  text-decoration: none;
  display: flex;
}

.navbar-menu-wrapper {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  max-width: 80rem;
  height: 100%;
  padding-top: 4.5rem;
  display: flex;
  position: relative;
}

.menu-icon4_wrapper {
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.navbar-menu-main {
  background-color: var(--grey);
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  height: 100dvh;
  padding-left: 5%;
  padding-right: 5%;
  transition: height .5s;
  position: absolute;
  inset: 0% 0% auto;
  overflow: auto;
}

.navbar-component {
  padding: var(--margin--medium) 5%;
  background-color: var(--grey);
  border-bottom: 1px #000;
  align-items: center;
  width: 100%;
  min-height: 4.5rem;
  display: flex;
}

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

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

.navbar-bottom {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex: none;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  min-height: 4.5rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.menu-icon4_line-middle {
  background-color: #000;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 2px;
  margin-top: 6px;
  margin-bottom: 6px;
  display: flex;
}

.navbar-1-menu-button {
  z-index: 1;
  padding: 0;
}

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

.menu-icon4_line-top {
  background-color: #000;
  width: 24px;
  height: 2px;
  padding-bottom: 0;
  padding-right: 0;
}

.navbar-main-container {
  grid-template-rows: auto;
  grid-template-columns: 1fr max-content 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  max-width: 80rem;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.menu-icon-wrapper {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  display: flex;
  position: relative;
}

.section-team {
  padding: var(--margin--large) 5%;
  background-color: var(--off-white);
  overflow: hidden;
}

.content-horizontal-space {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.section-background-image {
  padding-left: 5%;
  padding-right: 5%;
  overflow: hidden;
}

.section-background-image.main {
  padding-top: var(--margin--medium);
  padding-bottom: var(--padding-section--small);
  justify-content: flex-start;
  align-items: flex-end;
  min-height: auto;
  display: flex;
  position: relative;
}

.section-testimonial, .section-all-projects {
  padding: var(--margin--xlarge) 5%;
  background-color: var(--off-white);
  overflow: hidden;
}

.section-news {
  padding: var(--margin--xlarge) 5%;
  overflow: hidden;
}

.section-gallery {
  padding: var(--margin--large) 5% var(--margin--medium);
  background-color: var(--black);
  overflow: hidden;
}

.section-offices {
  padding: var(--margin--xlarge) 5%;
  background-color: var(--grey);
  overflow: hidden;
}

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

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

.position-wrapper {
  text-align: left;
  margin-bottom: 0;
}

.collection-list {
  grid-column-gap: var(--margin--large);
  grid-row-gap: var(--margin--large);
  flex-flow: column;
  display: flex;
}

.categories-collection-list {
  grid-column-gap: var(--margin--xsmall);
  grid-row-gap: var(--margin--xsmall);
  flex-flow: column;
  display: flex;
}

.menu-dark-icon_wrapper {
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.menu-dark-icon-line-top {
  background-color: var(--blue-oxford);
  width: 24px;
  height: 2px;
  padding-bottom: 0;
  padding-right: 0;
}

.menu-dark-icon-line-middle {
  background-color: var(--blue-oxford);
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 2px;
  margin-top: 6px;
  margin-bottom: 6px;
  display: flex;
}

.menu-dark-icon-line-bottom {
  background-color: var(--blue-oxford);
  width: 24px;
  height: 2px;
}

.menu-dark-icon-line-middle-base {
  background-color: var(--blue-oxford);
  width: 24px;
  height: 2px;
  position: absolute;
}

.padding-navbar {
  padding-top: var(--margin--huge);
  padding-left: 5%;
  padding-right: 5%;
  overflow: hidden;
}

.line-button-white {
  background-color: var(--off-white);
  max-width: 11rem;
  height: 1px;
  margin-top: .5rem;
}

.main-button-white {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  color: var(--off-black);
  white-space: nowrap;
  flex: none;
  justify-content: center;
  align-self: flex-start;
  align-items: center;
  margin: 0;
  padding-bottom: 0;
  padding-left: 0;
  padding-right: 0;
  font-weight: 600;
  display: block;
  position: relative;
  overflow: hidden;
}

.section-paragraph-layout {
  padding-left: 5%;
  padding-right: 5%;
  overflow: hidden;
}

.section-blog {
  padding: var(--padding-section--small) 5%;
  overflow: hidden;
}

.section-blog.sticky {
  overflow: visible;
}

.section-blog-content {
  padding: var(--padding-section--medium) 5%;
  overflow: hidden;
}

.team-member-cms-page-image-wrapper {
  padding-top: var(--margin--small);
  object-fit: cover;
  object-position: 50% 100%;
  max-height: 25rem;
  overflow: hidden;
}

.team-member-img-cms-page {
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: 50% 50%;
  width: 100%;
  height: 100%;
  display: block;
}

.page-team-collection-list {
  grid-column-gap: var(--margin--xsmall);
  grid-row-gap: var(--margin--xsmall);
  grid-template-rows: auto;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  grid-auto-columns: 1fr;
  display: grid;
}

.collection-list-image-team-wrapper {
  margin-bottom: var(--margin--small);
  width: 100%;
  height: 300px;
  position: relative;
  overflow: hidden;
}

.heading-tagline {
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.tagline-wrapper {
  margin-top: var(--margin--small);
}

.tagline-wrapper.padding-none {
  margin-top: 0;
}

.tagline-wrapper.padding-large, .tagline-wrapper.tagline-padding-large {
  margin-top: var(--margin--medium);
}

.section-team-small {
  padding: var(--margin--large) 5%;
  background-color: var(--off-white);
  overflow: hidden;
}

.section-jobs {
  padding: var(--padding-section--medium) 5%;
  overflow: hidden;
}

.header-layout-2 {
  padding-bottom: var(--margin--large);
}

.office-item {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border-top: 1px none var(--off-white);
  border-bottom: 1px solid var(--black);
  grid-template-rows: auto;
  grid-template-columns: .25fr 1fr 1fr .5fr;
  grid-auto-columns: 1fr;
  place-content: end space-between;
  place-items: end stretch;
  padding-top: 2rem;
  padding-bottom: 2rem;
  display: grid;
}

.paragraph-small-horizontal-wrapper {
  margin-top: var(--margin--medium);
  grid-column-gap: var(--margin--xsmall);
  grid-row-gap: var(--margin--xsmall);
  display: flex;
}

.slide, .slider {
  background-color: var(--no-color);
}

.tetimonial-grid {
  padding-top: var(--margin--small);
  grid-column-gap: var(--margin--small);
  grid-row-gap: var(--margin--small);
  grid-template-rows: auto;
  grid-template-columns: .5fr 1fr .5fr;
}

.section-photo {
  padding: var(--padding-section--medium) 5%;
  overflow: hidden;
}

.section-photo.background-color-off-white {
  padding-top: var(--margin--small);
  padding-bottom: 0;
}

.h4-text-wrapper {
  grid-column-gap: var(--margin--small);
  grid-row-gap: var(--margin--small);
  flex-flow: column;
  display: flex;
}

.section-project-content {
  padding-left: 5%;
  padding-right: 5%;
  overflow: hidden;
}

.section-project-content.background-color-off-white {
  padding-top: var(--padding-section--medium);
  padding-bottom: var(--padding-section--medium);
}

.section-details {
  padding: var(--padding-section--medium) 5%;
  overflow: hidden;
}

.project-category-list {
  grid-column-gap: var(--margin--small);
  grid-row-gap: var(--margin--small);
  display: flex;
}

.h3-subheading-wrapper {
  justify-content: space-between;
  align-items: center;
  max-width: 48rem;
  display: flex;
}

.header-layout-4 {
  padding-top: var(--margin--huge);
  padding-bottom: var(--margin--large);
  grid-column-gap: 8rem;
  grid-row-gap: 8rem;
  flex-flow: column;
  justify-content: flex-end;
  align-items: stretch;
  margin-top: 0;
  margin-bottom: 0;
  display: flex;
  overflow: hidden;
}

.div-block-2 {
  grid-column-gap: var(--margin--medium);
  grid-row-gap: var(--margin--medium);
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-start;
  padding-top: 0;
  display: flex;
}

.button-social-icons-wrapper {
  padding-top: var(--margin--small);
  grid-column-gap: var(--margin--small);
  grid-row-gap: var(--margin--small);
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-end;
  display: flex;
}

.team-rich-text-wrapper {
  padding-top: var(--margin--medium);
  grid-column-gap: var(--margin--xlarge);
  grid-row-gap: var(--margin--xlarge);
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.slide-nav {
  font-size: var(--margin--xsmall);
}

.blog-labels-wrapper {
  grid-column-gap: var(--margin--small);
  grid-row-gap: var(--margin--small);
  justify-content: flex-start;
  align-items: flex-end;
  display: flex;
}

.button-wrapper-copy {
  grid-column-gap: var(--margin--medium);
  grid-row-gap: var(--margin--medium);
  flex-flow: column;
  flex: none;
  display: flex;
}

.button-wrapper-copy.wrapper-align-right {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  justify-content: flex-end;
  align-items: flex-start;
}

.social-list-team {
  grid-column-gap: .75rem;
  grid-row-gap: 0rem;
  white-space: normal;
  grid-template-rows: auto;
  grid-template-columns: max-content;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  place-items: start;
  display: grid;
}

.text-color-gray {
  color: var(--grey);
}

.padding-large, .padding-large-copy {
  padding: var(--margin--large) var(--padding-section--medium) var(--margin--large) var(--margin--large);
}

.section-404 {
  padding-left: 5%;
  padding-right: 5%;
  overflow: hidden;
}

.section-404.padding-section-large, .section-404.structure-classes, .section-404.sticky {
  overflow: visible;
}

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

.heading-3 {
  letter-spacing: 2px;
  font-size: .8rem;
}

.section-info {
  padding: var(--padding-section--medium) 5%;
  overflow: hidden;
}

.subheading-wrapper-copy {
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.subheading-wrapper-copy.align-bottom {
  justify-content: space-between;
  align-items: flex-end;
}

.button-group-wrapper-horizontal {
  grid-column-gap: var(--margin--small);
  grid-row-gap: var(--margin--small);
  display: flex;
}

.partners-text-wrapper {
  grid-column-gap: 11.875rem;
  grid-row-gap: 11.875rem;
  justify-content: flex-start;
  align-items: flex-end;
  margin-top: 11.875rem;
  display: flex;
}

.paragraph-large {
  letter-spacing: -.025em;
  margin-bottom: 5rem;
  font-size: 1.75rem;
  font-weight: 300;
  line-height: 1.35;
}

.paragraph-large.is-small {
  font-family: var(--font-family--main);
  max-width: 100%;
  margin-bottom: 0;
  font-size: 1.125rem;
  font-weight: 300;
}

.paragraph-large.max-width-800 {
  max-width: 50rem;
}

.paragraph-large.max-width-800.no-margin {
  margin-bottom: 0;
  font-weight: 300;
}

.partners-wrapper {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.partners-cards-wrapper {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  grid-auto-flow: row;
  width: 100%;
  display: grid;
}

.partners-card {
  flex-flow: column;
  display: flex;
}

.partners-photo-wrapper {
  aspect-ratio: 1;
  position: relative;
}

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

.partner-name-wrapper {
  margin-top: 1rem;
  margin-bottom: 2rem;
}

.partner-name {
  letter-spacing: -.025em;
  font-size: 2.25rem;
  line-height: 1.2;
}

.partner-link {
  background-color: var(--white);
  color: var(--blue-oxford);
  border-radius: 100vw;
  margin-top: 1rem;
  margin-right: 1rem;
  padding: 1rem;
  position: absolute;
  inset: 0% 0% auto auto;
}

.icon-embed-small {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  display: flex;
}

.section-partners {
  background-color: var(--off-white);
  padding-left: 5%;
  padding-right: 5%;
  overflow: hidden;
}

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

.vision-logo {
  align-self: flex-end;
  width: 13rem;
  margin-top: -1.5rem;
}

.icon-embed-xsmall {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
}

.max-width-500 {
  max-width: 31.25rem;
}

.nav-dropdown-column-2 {
  width: 33%;
}

.nav-dropdown-list-main {
  background-color: #fff;
  border: 1px solid #0000002e;
  width: 200px;
  padding: 15px 20px;
}

.nav-dropdown-list-main.w--open {
  border-radius: 12px;
  padding-top: 20px;
  padding-bottom: 20px;
  box-shadow: 0 0 10px #0000000a;
}

.nav-dropdown-list-main.megamenu {
  width: 360px;
}

.nav-dropdown-list-main.megamenu.w--open {
  width: 550px;
  margin-left: -340px;
  display: flex;
}

.brand-tablet {
  display: none;
}

.nav-menu-main {
  text-align: right;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
}

.menu-wrap-main {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.right-side-block {
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.nav-dropdown-link-main {
  width: 100%;
  margin-left: -20px;
  padding: 8px 8px 8px 0;
  font-size: 16px;
  transition: all .3s;
  display: flex;
}

.nav-dropdown-link-main:hover {
  margin-left: 0;
}

.nav-dropdown-link-main.w--current {
  color: #738fc9;
}

.nav-container-main {
  z-index: 1;
  justify-content: space-between;
  align-items: center;
  min-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
  display: flex;
  position: relative;
}

.nav-dropdown-icon-desktop {
  color: #9c7a67;
  margin-left: 5px;
  margin-right: 0;
  font-size: 10px;
  display: block;
  position: relative;
}

.nav-menu-wrapper-main {
  flex: 1;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.nav-dropdown-link-wrapper {
  flex-direction: column;
  align-items: center;
  padding-left: 0;
  padding-right: 0;
  display: flex;
  position: relative;
  overflow: hidden;
}

.nav-dropdown-toggle-main {
  color: #9c7a67;
  margin-left: 0;
  margin-right: 0;
  padding: 10px;
  display: flex;
}

.nav-dropdown-icon {
  font-size: 16px;
  display: none;
}

.nav-dropdown-link-line-main {
  background-color: #738fc9;
  width: 16px;
  height: 1px;
  margin-right: 15px;
  display: inline-block;
}

.nav-dropdown {
  color: #9c7a67;
}

.left-side-block {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.nav-right {
  grid-template-rows: auto;
  grid-template-columns: 1fr minmax(min-content, .25fr);
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
  position: relative;
}

.nav-item-title-main {
  color: #9c7a67;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  line-height: 1.2em;
  transition: color .3s;
}

.nav-item-title-main:hover {
  color: #ffffff80;
}

.logo-image {
  height: 52px;
}

.nav-link-main {
  color: var(--black);
  padding: 10px;
  font-size: 16px;
}

.nav-link-main:hover {
  opacity: 1;
  color: var(--blue-oxford);
}

.nav-link-main.w--current {
  color: #f4ede6;
}

.about-paragraph {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.regular-m {
  text-transform: none;
}

.regular-m.max-width-520 {
  color: #f9f3f2;
  letter-spacing: 0;
  text-transform: none;
  font-size: 18px;
  line-height: 120%;
}

.regular-m.max-width-520.text-color-tertiary {
  color: #867e59;
}

.newbutton {
  letter-spacing: 0;
  text-transform: uppercase;
  background-color: #a97859;
  border: 1px solid #a97859;
  border-radius: 30px;
  padding: 15px 25px;
  font-size: 14px;
  font-weight: 200;
  line-height: 14px;
  transition: all .5s;
}

.newbutton:hover {
  background-color: #0000;
  border-color: #ede9e3;
}

.newbutton.lightversion {
  border-color: var(--blue-oxford);
  background-color: var(--blue-oxford);
}

.newbutton.lightversion:hover {
  border-color: var(--blue-oxford);
  color: var(--grey);
}

@media screen and (min-width: 1280px) {
  .nav-container-main {
    padding-left: 50px;
    padding-right: 50px;
  }

  .nav-dropdown-toggle-main, .nav-link-main {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media screen and (min-width: 1440px) {
  .nav-container-main {
    padding-left: 80px;
    padding-right: 80px;
  }
}

@media screen and (min-width: 1920px) {
  .nav-container-main {
    padding-left: 160px;
    padding-right: 160px;
  }
}

@media screen and (max-width: 991px) {
  .heading-style-h2 {
    font-size: 2.75rem;
  }

  .padding-xxlarge {
    padding: 4.5rem;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .padding-section-large {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .heading-style-h1 {
    font-size: 3.25rem;
  }

  .heading-style-h3 {
    font-size: 2.25rem;
  }

  .heading-style-h4 {
    font-size: 1.75rem;
  }

  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }

  .menu-icon-line-middle {
    background-color: #0000;
    justify-content: center;
    align-items: center;
    width: 24px;
    height: 2px;
    margin-top: 6px;
    margin-bottom: 6px;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
  }

  .navbar-dropdown-link {
    width: auto;
    padding: .75rem 0 .75rem 5%;
  }

  .navbar-menu {
    -webkit-text-fill-color: inherit;
    background-color: #0000;
    background-clip: border-box;
    border-bottom: 1px solid #000;
    padding: 1rem 5% 2rem;
    position: absolute;
    overflow: auto;
  }

  .navbar-menu.is-page-height-tablet {
    background-color: var(--off-white);
    height: 100dvh;
    padding-bottom: 6.5rem;
    transition: height .5s;
  }

  .menu-icon-line-bottom {
    background-color: var(--black);
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
  }

  .navbar-menu-dropdown {
    width: 100%;
    font-size: 1.125rem;
  }

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

  .menu-icon {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 48px;
    height: 48px;
    margin-right: -.5rem;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
  }

  .navbar-dropdown-list {
    position: static;
    overflow: hidden;
  }

  .navbar-dropdown-list.w--open {
    border-style: none;
    padding: 0;
  }

  .navbar-dropdown-toggle {
    align-items: center;
    padding-top: .75rem;
    padding-bottom: .75rem;
    padding-left: 0;
    display: flex;
  }

  .menu-icon-line-top {
    background-color: var(--black);
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
  }

  .dropdown-icon {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
    inset: auto 0% auto auto;
  }

  .navbar-link {
    width: auto;
    padding: .75rem 0;
    font-size: 1.125rem;
  }

  .menu-icon-line-middle-inner {
    width: 4px;
    height: 0;
    padding-bottom: 0;
    padding-right: 0;
  }

  .navbar-logo {
    max-height: 8rem;
  }

  .image-wrapper {
    overflow: hidden;
  }

  .section {
    padding-left: 3%;
    padding-right: 3%;
  }

  .grid-1-layout {
    grid-column-gap: var(--margin--small);
    grid-row-gap: var(--margin--xsmall);
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    grid-auto-flow: row;
    min-height: auto;
  }

  .grid-paragraph-wrapper {
    margin-right: 0;
  }

  .image-medium {
    min-height: 30rem;
    margin-bottom: 0;
  }

  .main-button-black.align-left {
    margin-left: 0;
  }

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

  .section-home-hero-bg-image {
    height: 170vh;
  }

  .header-layout-1 {
    flex-direction: column;
    grid-template-columns: 1fr;
    justify-content: flex-start;
    max-width: none;
  }

  .h1-h5-wrapper {
    width: 100%;
  }

  .services-item, .jobs-item {
    grid-column-gap: 3rem;
    grid-row-gap: 4rem;
  }

  .section-text-highlight, .section-projects, .section-button {
    padding-left: 3%;
    padding-right: 3%;
  }

  .menu-icon-line-middle-top {
    z-index: 2;
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
    position: absolute;
    inset: 0;
  }

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

  .menu-icon4_line-bottom {
    background-color: #000;
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
  }

  .navbar-links-wrapper {
    margin-top: 0;
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .navbar-link-main {
    font-size: 2.5rem;
  }

  .menu-icon_line-middle-base-2 {
    background-color: #000;
    justify-content: center;
    align-items: center;
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
    position: absolute;
  }

  .navbar-menu-wrapper {
    justify-content: flex-start;
  }

  .menu-icon4_wrapper {
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    display: flex;
  }

  .navbar-menu-main {
    flex-direction: column;
    justify-content: center;
    position: absolute;
  }

  .navbar-bottom {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .menu-icon4_line-middle {
    background-color: #000;
    justify-content: center;
    align-items: center;
    width: 24px;
    height: 2px;
    margin-top: 6px;
    margin-bottom: 6px;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
    position: static;
  }

  .navbar-1-menu-button {
    margin-left: -.5rem;
    padding: 0;
  }

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

  .menu-icon4_line-top {
    background-color: #000;
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
  }

  .navbar-main-container {
    grid-auto-columns: 1fr;
  }

  .menu-icon-wrapper {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 48px;
    height: 48px;
    margin-right: -.5rem;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
    position: relative;
  }

  .section-team {
    padding-left: 3%;
    padding-right: 3%;
  }

  .content-horizontal-space {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .section-background-image, .section-testimonial, .section-all-projects, .section-news, .section-gallery, .section-offices {
    padding-left: 3%;
    padding-right: 3%;
  }

  .menu-dark-icon_wrapper {
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    display: flex;
  }

  .menu-dark-icon-line-top {
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
  }

  .menu-dark-icon-line-middle {
    justify-content: center;
    align-items: center;
    width: 24px;
    height: 2px;
    margin-top: 6px;
    margin-bottom: 6px;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
    position: static;
  }

  .menu-dark-icon-line-bottom {
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
  }

  .menu-dark-icon-line-middle-base {
    justify-content: center;
    align-items: center;
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
    position: absolute;
  }

  .padding-navbar, .section-paragraph-layout, .section-blog, .section-blog-content, .section-team-small, .section-jobs {
    padding-left: 3%;
    padding-right: 3%;
  }

  .office-item {
    grid-column-gap: 3rem;
    grid-row-gap: 4rem;
  }

  .section-photo, .section-project-content, .section-details {
    padding-left: 3%;
    padding-right: 3%;
  }

  .padding-large, .padding-large-copy {
    padding: 4.5rem;
  }

  .section-404, .section-info {
    padding-left: 3%;
    padding-right: 3%;
  }

  .partners-text-wrapper {
    margin-top: 4rem;
  }

  .paragraph-large {
    font-size: 1.5rem;
  }

  .partners-wrapper {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
    flex-flow: column;
  }

  .section-partners {
    padding-left: 3%;
    padding-right: 3%;
  }

  .vision-logo {
    margin-top: 0;
  }

  .image {
    align-self: flex-end;
  }

  .nav-dropdown-column-2 {
    justify-content: center;
    width: 180px;
  }

  .nav-dropdown-list-main {
    border-style: none;
    flex-direction: column;
    width: auto;
    padding: 0 40px 0 20px;
    display: flex;
    position: static;
  }

  .nav-dropdown-list-main.w--open {
    box-shadow: none;
    padding-top: 0;
    padding-bottom: 0;
    display: flex;
    position: static;
  }

  .nav-dropdown-list-main.megamenu {
    width: auto;
    height: 270px;
    padding-left: 20px;
    padding-right: 40px;
    overflow: scroll;
  }

  .nav-dropdown-list-main.megamenu.w--open {
    margin-left: 0;
  }

  .brand-tablet {
    display: block;
  }

  .nav-menu-main {
    background-color: #fff;
    flex-direction: column;
    width: 320px;
    height: auto;
    inset: 0% auto 0% 0%;
  }

  .menu-wrap-main {
    background-color: #fff;
    flex-direction: column;
    align-items: flex-start;
    padding-top: 20px;
    padding-left: 20px;
    padding-right: 20px;
    display: flex;
  }

  .right-side-block {
    flex-direction: column;
    width: 100%;
  }

  .nav-dropdown-link-main {
    margin-left: 0;
    margin-right: 0;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .nav-dropdown-icon-desktop {
    margin-right: 1.5px;
    display: none;
    inset: 0% 0 0% auto;
  }

  .nav-menu-wrapper-main {
    align-self: flex-end;
    align-items: flex-end;
  }

  .nav-dropdown-link-wrapper {
    flex-flow: wrap;
    padding-right: 0;
  }

  .nav-dropdown-link-wrapper:hover {
    padding-left: 0;
    padding-right: 0;
  }

  .nav-close-icon {
    z-index: 15;
    align-self: stretch;
  }

  .nav-dropdown-toggle-main {
    align-items: center;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 0;
    display: flex;
  }

  .close-menu-button, .close-menu-button.w--open {
    background-color: #0000;
    padding: 0 20px 0 0;
  }

  .nav-dropdown-icon {
    margin-right: 1.5px;
    font-size: 12px;
    display: block;
    inset: 0% 0 0% auto;
  }

  .nav-dropdown-link-line-main {
    display: none;
  }

  .nav-dropdown {
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    width: 100%;
    transition: opacity .5s;
    display: flex;
    overflow: hidden;
  }

  .left-side-block {
    flex-direction: column;
    width: 100%;
  }

  .nav-item-title-main {
    color: #080808;
  }

  .nav-item-title-main:hover {
    color: #1f1e1e;
  }

  .logo-image {
    height: 48px;
  }

  .tablet-menu-main {
    z-index: 15;
    justify-content: space-between;
    align-items: center;
    height: 80px;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 15px;
    display: flex;
    position: relative;
  }

  .nav-link-main {
    color: #1f1e1e;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding: 10px 0;
    display: flex;
  }

  .nav-link-main:hover, .nav-link-main.w--current {
    color: #425e44;
  }
}

@media screen and (max-width: 767px) {
  .heading-style-h2 {
    font-size: 2.25rem;
  }

  .heading-style-h6 {
    font-size: 1.125rem;
  }

  .padding-section-small {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .padding-xxlarge {
    padding: 3rem;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .padding-xsmall {
    padding: .75rem;
  }

  .margin-small {
    margin: 1.25rem;
  }

  .padding-section-large {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .text-size-medium {
    font-size: 1rem;
  }

  .padding-medium {
    padding: 1.5rem;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .heading-style-h1 {
    font-size: 3.5rem;
  }

  .heading-style-h5 {
    font-size: 1.25rem;
  }

  .heading-style-h3 {
    font-size: 2rem;
  }

  .heading-style-h4 {
    font-size: 1.5rem;
    line-height: 1.4;
  }

  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }

  .navbar-menu.is-page-height-tablet {
    padding-bottom: 6rem;
  }

  .nav-bar-component {
    height: auto;
    min-height: 4rem;
  }

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

  .navbar-logo {
    max-height: 5rem;
  }

  .grid-1-layout {
    grid-row-gap: 3rem;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    display: block;
  }

  .grid-paragraph-wrapper {
    margin-right: 0;
  }

  .footer-legal-list {
    grid-column-gap: 0rem;
    grid-row-gap: 1rem;
    grid-auto-flow: row;
  }

  .footer-credit-text {
    margin-top: 2rem;
  }

  .footer-bottom-wrapper {
    flex-direction: column-reverse;
    align-items: flex-start;
    padding-bottom: 1rem;
  }

  .project-main-image-container {
    object-fit: cover;
  }

  .blog-card-wrapper.sticky {
    flex-flow: column;
    display: flex;
  }

  .main-button-black {
    margin: -.5rem;
    padding: .5rem;
    font-size: 1rem;
  }

  .button-wrapper.wrapper-align-right {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .tagline-side-wrapper {
    padding-bottom: var(--margin--medium);
  }

  .header-layout-3, .h2-h3-wrapper, .h2-wrapper {
    flex-direction: column;
    align-items: flex-start;
  }

  .gallery-slide {
    padding-right: 1.5rem;
  }

  .gallery-mask {
    width: 100%;
  }

  .gallery21_arrow.is-left {
    right: 3.5rem;
  }

  .header-layout-1 {
    padding-top: var(--margin--small);
    padding-bottom: var(--margin--small);
  }

  .services-item, .jobs-item {
    grid-column-gap: 2.5rem;
    padding-top: 1.25rem;
    padding-bottom: 2.5rem;
  }

  .navbar-links-wrapper {
    margin-top: 0;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .navbar-link-main {
    font-size: 1.5rem;
  }

  .navbar-menu-wrapper {
    padding-top: 4rem;
  }

  .navbar-component {
    min-height: 4rem;
  }

  .navbar-main-container {
    justify-content: space-between;
    align-items: center;
  }

  .main-button-white {
    margin: -.5rem;
    padding: .5rem;
    font-size: 1rem;
  }

  .heading-tagline {
    grid-column-gap: var(--margin--small);
    grid-row-gap: var(--margin--small);
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .office-item {
    grid-column-gap: 2.5rem;
    padding-top: 1.25rem;
    padding-bottom: 2.5rem;
  }

  .header-layout-4 {
    flex-direction: column;
    align-items: flex-start;
  }

  .team-rich-text-wrapper {
    flex-flow: column;
  }

  .button-wrapper-copy.wrapper-align-right {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .padding-large, .padding-large-copy {
    padding: 3rem;
  }

  .partners-text-wrapper {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .paragraph-large {
    margin-bottom: 0;
    font-size: 1.25rem;
  }

  .partners-cards-wrapper {
    grid-template-columns: 1fr;
  }

  .vision-logo {
    width: 7rem;
    margin-top: 2rem;
  }

  .image {
    width: 50%;
  }

  .brand-tablet {
    justify-content: flex-start;
    padding-left: 0;
  }

  .nav-container-main {
    padding-left: 15px;
    padding-right: 15px;
  }

  .tablet-menu-main {
    padding-top: 18px;
  }

  .nav-link-main {
    margin-left: 0;
  }
}

@media screen and (max-width: 479px) {
  .heading-style-h2 {
    font-size: 3rem;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .heading-style-h1 {
    font-size: 4rem;
  }

  .heading-style-h5 {
    font-size: 1rem;
  }

  .heading-style-h4 {
    font-size: 2rem;
  }

  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }

  .image-wrapper {
    object-fit: cover;
  }

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

  .section.padding-section-large {
    padding-top: 6rem;
  }

  .content-grid-wrapper.align-end {
    padding-top: var(--margin--small);
  }

  .grid-1-layout {
    flex-flow: column;
    grid-template-columns: 1fr;
    display: block;
  }

  .footer-left-wrapper {
    margin-top: 2rem;
  }

  .collection-item-projects {
    margin-top: var(--margin--medium);
    padding-top: var(--margin--xsmall);
    border-bottom-style: none;
    flex-direction: column;
  }

  .project-main-image-container {
    min-height: 15rem;
  }

  .image-medium {
    min-height: 30rem;
  }

  .form-input {
    min-width: 8rem;
  }

  .image-card-blog-container {
    min-width: auto;
    min-height: 20rem;
    max-height: 30rem;
  }

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

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

  .blog-card-wrapper.sticky {
    overflow: hidden;
  }

  .main-button-black {
    justify-content: center;
    margin-left: 0;
    padding-left: 0;
  }

  .form {
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .image-large {
    overflow: hidden;
  }

  .line-button.hide {
    display: none;
  }

  .heading-h2-wrapper {
    width: auto;
  }

  .flex-block {
    flex-direction: column;
  }

  .button-wrapper.wrapper-align-right {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .header-layout-3, .h2-h3-wrapper {
    flex-direction: column;
    align-items: flex-start;
  }

  .subheading-wrapper {
    grid-column-gap: var(--margin--small);
    grid-row-gap: var(--margin--small);
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .h2-wrapper {
    flex-direction: column;
    align-items: flex-start;
  }

  .news-collection-list {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  }

  .services-item {
    grid-row-gap: 1rem;
    grid-template-columns: 1fr;
  }

  .jobs-item {
    grid-row-gap: 1rem;
    flex-flow: column;
    grid-template-columns: 1fr;
    justify-content: flex-start;
    place-items: flex-start stretch;
    display: flex;
  }

  .section-text-highlight, .section-projects, .section-button {
    padding-left: 5%;
    padding-right: 5%;
  }

  .icon-embed-medium {
    width: 2rem;
    height: 2rem;
  }

  .header_image {
    min-height: 25rem;
  }

  .navbar-links-wrapper {
    grid-template-columns: 1fr;
  }

  .navbar-logo-link.w--current {
    justify-content: flex-start;
    align-items: center;
    display: flex;
  }

  .section-team {
    padding-left: 5%;
    padding-right: 5%;
  }

  .content-horizontal-space {
    grid-column-gap: var(--margin--medium);
    grid-row-gap: var(--margin--medium);
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .section-background-image, .section-testimonial, .section-all-projects, .section-news, .section-gallery, .section-offices, .padding-navbar {
    padding-left: 5%;
    padding-right: 5%;
  }

  .main-button-white {
    justify-content: center;
    margin-left: 0;
    padding-left: 0;
  }

  .section-paragraph-layout, .section-blog, .section-blog-content, .section-team-small, .section-jobs {
    padding-left: 5%;
    padding-right: 5%;
  }

  .office-item {
    grid-row-gap: 1rem;
    flex-flow: column;
    grid-template-columns: 1fr;
    justify-content: flex-start;
    place-items: flex-start stretch;
    display: flex;
  }

  .tetimonial-grid {
    grid-column-gap: var(--margin--medium);
    grid-row-gap: var(--margin--medium);
    flex-flow: column;
    display: flex;
  }

  .section-photo, .section-project-content, .section-details {
    padding-left: 5%;
    padding-right: 5%;
  }

  .h3-subheading-wrapper {
    grid-column-gap: var(--margin--small);
    grid-row-gap: var(--margin--small);
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .header-layout-4 {
    flex-direction: column;
    align-items: flex-start;
  }

  .button-wrapper-copy.wrapper-align-right {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .section-404 {
    padding-left: 5%;
    padding-right: 5%;
  }

  .section-404.padding-section-large {
    padding-top: 6rem;
  }

  .section-info {
    padding-left: 5%;
    padding-right: 5%;
  }

  .subheading-wrapper-copy {
    grid-column-gap: var(--margin--small);
    grid-row-gap: var(--margin--small);
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .section-partners {
    padding-left: 5%;
    padding-right: 5%;
  }

  .nav-dropdown-list-main.megamenu {
    padding-right: 0;
  }

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

  .logo-image {
    height: 50px;
  }

  .nav-link-main {
    width: 99%;
  }

  .about-paragraph {
    align-items: stretch;
  }

  .regular-m.max-width-520 {
    text-align: left;
    text-transform: none;
  }

  .regular-m.max-width-520.text-color-tertiary {
    text-align: left;
    max-width: none;
    padding-left: 0;
    display: block;
  }

  .newbutton {
    text-align: center;
  }

  .newbutton.lightversion {
    padding-left: 25px;
  }
}

#w-node-_89526c48-d649-43d2-4b7c-5f7fbd8b5582-7da9ea3d {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_94e0edce-1de7-6f57-a602-be66bd837d7a-7da9ea40 {
  grid-area: 1 / 2 / 2 / 4;
}

#w-node-_74c2463d-8eb8-b7e3-bcc3-94fae410dda9-7da9ea40 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_74c2463d-8eb8-b7e3-bcc3-94fae410ddac-7da9ea40, #w-node-_717986f1-abb7-8a15-2bb0-5e70eb6f0dea-7da9ea40, #w-node-_4ec1412f-1bd9-5c27-6553-ba282509129c-7da9ea40, #w-node-_500ae6ae-9cbc-7e11-02ef-101f1f5a180b-7da9ea40, #w-node-_10da304c-6edc-10df-1a94-2ae4465fca0b-7da9ea40, #w-node-_10da304c-6edc-10df-1a94-2ae4465fca0e-7da9ea40, #w-node-_10da304c-6edc-10df-1a94-2ae4465fca11-7da9ea40, #w-node-_10da304c-6edc-10df-1a94-2ae4465fca14-7da9ea40, #w-node-_2d76df32-ba65-ae4d-5e2d-5acda8b82d5d-7da9ea40, #w-node-_2d76df32-ba65-ae4d-5e2d-5acda8b82d60-7da9ea40, #w-node-_2d76df32-ba65-ae4d-5e2d-5acda8b82d63-7da9ea40, #w-node-_2d76df32-ba65-ae4d-5e2d-5acda8b82d66-7da9ea40, #w-node-fc407a49-cda7-9b6f-fcf9-77b328c958f1-7da9ea40, #w-node-fc407a49-cda7-9b6f-fcf9-77b328c958f4-7da9ea40, #w-node-fc407a49-cda7-9b6f-fcf9-77b328c958f7-7da9ea40, #w-node-fc407a49-cda7-9b6f-fcf9-77b328c958fa-7da9ea40 {
  justify-self: center;
}

#w-node-_9d07fd64-ca9c-8630-2599-887fe0d2fb34-7da9ea41 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_671eba40-0600-1745-9916-88af735aba8e-7da9ea41 {
  grid-area: 1 / 1 / 2 / 2;
}

#w-node-_2a02b6e9-354d-ddae-76a6-9366d5af980a-7da9ea41 {
  grid-area: 1 / 2 / 2 / 3;
}

#w-node-_4b636e33-1426-d0f7-4a41-0242c7820b92-7da9ea41 {
  grid-area: 1 / 2 / 2 / 4;
}

#w-node-_55451dc4-8522-4485-7bf9-5dadbc442c09-bc442c02 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_55451dc4-8522-4485-7bf9-5dadbc442c0d-bc442c02 {
  grid-area: 2 / 2 / 3 / 4;
}

#w-node-_7e99edc2-a403-02d0-8feb-64870ee1de7d-7da9ea42 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_7e99edc2-a403-02d0-8feb-64870ee1de80-7da9ea42, #w-node-_7e99edc2-a403-02d0-8feb-64870ee1de83-7da9ea42, #w-node-_7e99edc2-a403-02d0-8feb-64870ee1de86-7da9ea42, #w-node-_7e99edc2-a403-02d0-8feb-64870ee1de89-7da9ea42, #w-node-_77beca35-31b6-1f39-4b93-29b9ab4e244c-7da9ea42, #w-node-_77beca35-31b6-1f39-4b93-29b9ab4e244f-7da9ea42, #w-node-_77beca35-31b6-1f39-4b93-29b9ab4e2452-7da9ea42, #w-node-_77beca35-31b6-1f39-4b93-29b9ab4e2455-7da9ea42, #w-node-_2c784fa4-27eb-1b1c-cbb4-ad77c0d90b7d-7da9ea42, #w-node-_2c784fa4-27eb-1b1c-cbb4-ad77c0d90b80-7da9ea42, #w-node-_2c784fa4-27eb-1b1c-cbb4-ad77c0d90b83-7da9ea42, #w-node-_2c784fa4-27eb-1b1c-cbb4-ad77c0d90b86-7da9ea42, #w-node-_75d0f9a9-2a92-3930-e2f5-3f2190cb3dba-7da9ea42, #w-node-_75d0f9a9-2a92-3930-e2f5-3f2190cb3dbd-7da9ea42, #w-node-_75d0f9a9-2a92-3930-e2f5-3f2190cb3dc0-7da9ea42, #w-node-_75d0f9a9-2a92-3930-e2f5-3f2190cb3dc3-7da9ea42 {
  justify-self: center;
}

#w-node-_5d9bade7-0edf-48ed-c78e-0ffaf83b6db4-7da9ea43 {
  grid-area: 1 / 2 / 2 / 4;
}

#w-node-c4e63989-bea7-cf6f-10b8-d310929bcc2a-7da9ea44 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-c4e63989-bea7-cf6f-10b8-d310929bcc24-7da9ea44 {
  grid-area: 1 / 3 / 2 / 4;
  align-self: end;
}

#w-node-_02137bff-8274-724c-9499-d86dff347ea6-ff347ea3 {
  grid-area: 1 / 2 / 2 / 4;
}

#w-node-_4239a6f1-02cc-45b3-d198-ad8670fba8c4-7da9ea45 {
  grid-area: 2 / 2 / 3 / 4;
}

#w-node-_4239a6f1-02cc-45b3-d198-ad8670fba8c7-7da9ea45 {
  grid-area: 1 / 2 / 2 / 3;
  align-self: end;
}

#w-node-_48decb29-5a0f-4bb0-e399-3f369178eb11-7da9ea46 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_48decb29-5a0f-4bb0-e399-3f369178eb12-7da9ea46 {
  grid-area: 1 / 1 / 2 / 2;
}

#w-node-_48decb29-5a0f-4bb0-e399-3f369178eb1e-7da9ea46 {
  grid-area: 1 / 2 / 2 / 3;
}

#w-node-d38c25a9-0151-897f-c5e5-254078855192-7da9ea47 {
  grid-area: 2 / 2 / 3 / 4;
}

#w-node-d38c25a9-0151-897f-c5e5-254078855195-7da9ea47 {
  grid-area: 1 / 2 / 2 / 3;
  align-self: end;
}

#w-node-_15378eb8-8108-f84f-5058-36e49a7c2da4-7da9ea48, #w-node-b0329169-a8af-d859-3441-60ab37944e90-7da9ea48, #w-node-b77ec21a-fc98-eeed-5889-116e6a55ea46-7da9ea48, #w-node-ac24054f-07f3-2078-ab71-65db351f3354-7da9ea48, #w-node-_843ae24d-bbe5-1b80-01d1-aef480cf0ce1-7da9ea48, #w-node-_11b985c4-e40a-8d70-7f46-544dab5576ba-7da9ea48, #w-node-a95fbe78-d3a5-c55d-f3fb-d9df1aef06e6-7da9ea48, #w-node-_11b985c4-e40a-8d70-7f46-544dab5576be-7da9ea48, #w-node-_11b985c4-e40a-8d70-7f46-544dab5576c2-7da9ea48, #w-node-d17a11bf-1330-647c-502d-1ee36b9193d9-7da9ea48, #w-node-_6af64ef5-f499-01e8-eeb7-91254472a862-7da9ea48 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_7e59fd60-3059-f4af-b114-ad733d993495-7da9ea48, #w-node-f7ffade4-e91b-9adf-c5ce-8b4047119573-7da9ea48 {
  grid-area: span 1 / span 1 / span 1 / span 1;
  align-self: center;
}

#w-node-_5131f5b7-8ec5-e8ee-61cf-602a531cb869-7da9ea48 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_5131f5b7-8ec5-e8ee-61cf-602a531cb86d-7da9ea48 {
  grid-area: span 1 / span 1 / span 1 / span 1;
  align-self: center;
}

#w-node-_6a69bfee-0704-45d0-998c-7ee2e3a50e85-7da9ea4a {
  grid-area: 2 / 2 / 3 / 4;
}

#w-node-a4cc599f-4b60-1c02-99db-f01e130facbc-7da9ea4a {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_39866034-3e9a-5285-987e-e8f427c7a1e2-7da9ea4a {
  grid-area: 1 / 2 / 2 / 4;
}

#w-node-_39866034-3e9a-5285-987e-e8f427c7a205-7da9ea4a {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_39866034-3e9a-5285-987e-e8f427c7a208-7da9ea4a, #w-node-_39866034-3e9a-5285-987e-e8f427c7a20b-7da9ea4a, #w-node-_39866034-3e9a-5285-987e-e8f427c7a20e-7da9ea4a, #w-node-_39866034-3e9a-5285-987e-e8f427c7a211-7da9ea4a, #w-node-_38d07887-2fcf-9715-7436-c9499f3e9b94-7da9ea4a, #w-node-_38d07887-2fcf-9715-7436-c9499f3e9b97-7da9ea4a, #w-node-_38d07887-2fcf-9715-7436-c9499f3e9b9a-7da9ea4a, #w-node-_38d07887-2fcf-9715-7436-c9499f3e9b9d-7da9ea4a, #w-node-_0627b30c-16b4-6985-136c-b6dd831aa7a7-7da9ea4a, #w-node-_0627b30c-16b4-6985-136c-b6dd831aa7aa-7da9ea4a, #w-node-_189f7257-a666-892d-854d-c922deca08f5-7da9ea4a, #w-node-_0627b30c-16b4-6985-136c-b6dd831aa7b0-7da9ea4a, #w-node-_63f1ea93-0b3a-5507-9b81-0d1defdd566d-7da9ea4a, #w-node-_63f1ea93-0b3a-5507-9b81-0d1defdd5670-7da9ea4a, #w-node-_63f1ea93-0b3a-5507-9b81-0d1defdd5673-7da9ea4a, #w-node-_63f1ea93-0b3a-5507-9b81-0d1defdd5676-7da9ea4a {
  justify-self: center;
}

#w-node-d1d2242f-2883-8243-3742-6e7a5c5c2ca0-5c5c2c94 {
  grid-area: 1 / 2 / 2 / 4;
}

#w-node-e61057a6-7172-d244-3ae4-a6f89d96cf85-c7075bd8 {
  grid-area: span 1 / span 1 / span 1 / span 1;
  align-self: end;
}

#w-node-_89526c48-d649-43d2-4b7c-5f7fbd8b5582-e90f76aa {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_2813abb1-6997-c2de-bcee-d1349a7e4885-e90f76aa {
  grid-area: 2 / 2 / 3 / 4;
}

#w-node-_2813abb1-6997-c2de-bcee-d1349a7e4887-e90f76aa {
  grid-area: 1 / 2 / 2 / 3;
  align-self: end;
}

@media screen and (max-width: 479px) {
  #w-node-_9d07fd64-ca9c-8630-2599-887fe0d2fb34-7da9ea41, #w-node-_2a02b6e9-354d-ddae-76a6-9366d5af980a-7da9ea41 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }

  #w-node-_02137bff-8274-724c-9499-d86dff347ea6-ff347ea3 {
    grid-area: 1 / 1 / 2 / 3;
  }

  #w-node-_48decb29-5a0f-4bb0-e399-3f369178eb11-7da9ea46, #w-node-_48decb29-5a0f-4bb0-e399-3f369178eb1e-7da9ea46 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
}


@font-face {
  font-family: 'Helvetica neue';
  src: url('../fonts/HelveticaNeueRoman.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica neue';
  src: url('../fonts/HelveticaNeueThin.otf') format('opentype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica neue';
  src: url('../fonts/HelveticaNeueLight.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}