:root {
  --black: black;
  --grey-teal: #56a099;
  --white: white;
  --color-03\<deleted\|variable-5a367591-97b6-b113-2f8d-506bfa425ba5\>: white;
  --davy-grey: #535c62;
  --color-01\<deleted\|variable-cf762d23-1738-e38b-a2bc-5bfa46c49767\>: #2a2824;
}

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

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

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

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

.body {
  color: var(--black);
  font-family: Barlow, sans-serif;
  font-size: 18px;
  line-height: 28px;
}

.hp-projects-section {
  height: 200vh;
}

.hp-projects-wrapper {
  height: 100vh;
  position: sticky;
  top: 0;
}

.hp-projects-grid {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  display: grid;
  position: absolute;
  inset: 0%;
}

.hp-projects-grid._01, .hp-projects-grid._02, .hp-projects-grid._03 {
  grid-auto-columns: 1fr;
}

.hp-projects-image-overflow {
  aspect-ratio: auto;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

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

.hp-projects-text-background {
  background-color: var(--grey-teal);
  width: 100%;
  height: 100%;
}

.hp-projects-text-wrapper {
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  padding: 112px 120px 120px;
  display: flex;
  position: relative;
}

.hp-projects-text-heading {
  color: var(--white);
  margin-bottom: 27px;
  font-size: 58px;
  font-weight: 500;
  line-height: 65px;
}

.hp-projects-text-description {
  color: var(--white);
  margin-bottom: 38px;
}

.button {
  background-color: var(--grey-teal);
  color: var(--white);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 17px 25px 18px;
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
  text-decoration: none;
  transition: background-color .4s;
  position: relative;
}

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

.button.padding {
  margin-bottom: 10px;
}

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

.hp-about-section {
  background-color: var(--color-03\<deleted\|variable-5a367591-97b6-b113-2f8d-506bfa425ba5\>);
  position: relative;
  overflow: hidden;
}

.hp-projects-text-tag {
  opacity: .5;
  color: var(--white);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 23px;
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
}

.hp-about-padding {
  padding: 112px 45px 120px;
}

.hp-about-container {
  max-width: 1290px;
}

.hp-about-grid {
  grid-column-gap: 45px;
  grid-row-gap: 45px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.hp-about-number-grid {
  grid-column-gap: 25px;
  grid-row-gap: 25px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  height: 100%;
  display: grid;
}

.hp-about-text-tag {
  opacity: .5;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 23px;
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
}

.hp-about-text-heading {
  margin-bottom: 27px;
  font-size: 58px;
  font-weight: 500;
  line-height: 65px;
}

.hp-about-text-description {
  color: var(--davy-grey);
  margin-bottom: 38px;
}

.hp-about-text-padding {
  padding-top: 82px;
  padding-bottom: 90px;
}

.hp-about-number-background {
  background-color: #56a099;
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-start;
  height: 100%;
  padding: 25px 25px 18px;
  display: flex;
  position: relative;
}

.hp-about-number-description {
  color: var(--white);
  font-weight: 600;
}

.hp-about-number-heading {
  color: var(--white);
  margin-bottom: 8px;
  font-size: 58px;
  font-weight: 500;
  line-height: 65px;
}

.hp-about-number-icon-position {
  background-color: var(--white);
  padding: 10px;
  position: absolute;
  top: 25px;
  right: 25px;
}

.image-2 {
  width: 40px;
  height: 40px;
}

.hp-banner-section {
  flex-flow: column;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  min-height: 100vh;
  display: flex;
  position: relative;
  overflow: hidden;
}

.button-black {
  background-color: var(--white);
  color: var(--black);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 17px 25px 18px;
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
  text-decoration: none;
  transition: color .4s, background-color .4s;
  position: relative;
}

.button-black:hover {
  background-color: var(--black);
  color: var(--color-03\<deleted\|variable-5a367591-97b6-b113-2f8d-506bfa425ba5\>);
}

.hp-services-text-grid {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  margin-bottom: 35px;
  display: grid;
}

.hp-press-grid {
  grid-column-gap: 45px;
  grid-row-gap: 45px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.hp-services-list-image-size {
  height: 450px;
  overflow: hidden;
}

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

.hp-services-list-text-padding {
  padding-top: 17px;
}

.link-line-text-heading {
  color: var(--grey-teal);
  max-width: 330px;
  font-size: 26px;
  font-weight: 600;
  line-height: 33px;
}

.hp-services-text-heading {
  font-size: 58px;
  font-weight: 500;
  line-height: 65px;
}

.link-line {
  width: 100%;
  text-decoration: none;
  display: block;
}

.link-line-text-arrow {
  flex-flow: row;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 9px;
  display: flex;
}

.link-line-arrow {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 18px;
  height: 18px;
  margin-bottom: 6px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.link-line-arrow-icon-down {
  width: 18px;
  max-width: none;
  height: 18px;
}

.link-line-arrow-icon-up {
  width: 18px;
  max-width: none;
  height: 18px;
  position: absolute;
  transform: translate(-120%, 120%);
}

.link-line-flex {
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 3px;
  display: flex;
  position: relative;
}

.link-line-color {
  background-color: var(--grey-teal);
  width: 100%;
  height: 3px;
  position: absolute;
  inset: 0%;
}

.link-line-full {
  background-color: var(--black);
  width: 100%;
  height: 3px;
}

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

.hp-press-text-grid {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  place-items: end;
  margin-bottom: 27px;
  display: grid;
}

.hp-press-section {
  background-color: var(--color-03\<deleted\|variable-5a367591-97b6-b113-2f8d-506bfa425ba5\>);
  position: relative;
}

.hp-press-padding {
  padding: 112px 45px;
}

.hp-press-container {
  max-width: 1290px;
}

.hp-press-text-tag {
  opacity: .5;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 23px;
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
}

.hp-press-text-heading {
  font-size: 58px;
  font-weight: 500;
  line-height: 65px;
}

.hp-press-text-description {
  color: var(--davy-grey);
}

.hp-press-text-date-padding {
  padding-bottom: 9px;
}

.hp-press-text-description-padding {
  padding-top: 17px;
}

.navbar {
  background-color: var(--white);
  max-width: 1290px;
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  top: 30px;
  left: 81px;
  right: 81px;
  box-shadow: 0 5px 10px #0003;
}

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

.hp-press-text-date {
  color: var(--davy-grey);
}

.hp-services-grid {
  grid-column-gap: 45px;
  grid-row-gap: 45px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.hp-services-section {
  background-color: var(--color-03\<deleted\|variable-5a367591-97b6-b113-2f8d-506bfa425ba5\>);
  position: relative;
  overflow: hidden;
}

.hp-services-padding {
  padding: 112px 45px 120px;
}

.hp-services-container {
  max-width: 1290px;
}

.hp-services-text-tag {
  opacity: .5;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 23px;
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
}

.navbar-dropdown-toggle {
  color: var(--davy-grey);
  padding: 17px 25px 18px;
  transition: color .4s;
}

.navbar-dropdown-toggle:hover, .navbar-dropdown-toggle.w--open {
  color: var(--grey-teal);
}

.navbar-dropdown-list {
  background-color: var(--color-01\<deleted\|variable-cf762d23-1738-e38b-a2bc-5bfa46c49767\>);
}

.navbar-dropdown-list.w--open {
  background-color: var(--white);
  margin-top: 20px;
}

.logo {
  height: 62px;
}

.navbar-link {
  color: var(--davy-grey);
  margin-right: 15px;
  padding: 17px 25px 18px;
  transition: color .4s;
}

.navbar-link:hover, .navbar-link.w--current {
  color: var(--grey-teal);
}

.brand {
  padding: 14px;
}

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

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

.navbar-dropdown {
  margin-right: 15px;
}

.hp-banner-text-padding {
  z-index: 1;
  background-image: linear-gradient(180deg, #fff0, var(--black));
  width: 100%;
  padding: 104px 45px 120px;
  position: relative;
}

.navbar-dropdown-link {
  color: var(--davy-grey);
  padding: 17px 25px 18px;
  transition: color .4s;
}

.navbar-dropdown-link:hover, .navbar-dropdown-link.w--current {
  color: var(--grey-teal);
}

.hp-banner-text-flex {
  flex-flow: column;
  display: flex;
}

.hp-banner-text-link-grid {
  grid-column-gap: 45px;
  grid-row-gap: 45px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.hp-banner-text-heading-padding {
  margin-bottom: 102px;
}

.hp-banner-text-heading {
  color: var(--white);
  font-size: 70px;
  font-weight: 500;
  line-height: 74px;
}

.link-line-arrow-icon-up-white {
  width: 18px;
  max-width: none;
  height: 18px;
  position: absolute;
  transform: translate(-120%, 120%);
}

.hp-banner-text-container {
  max-width: 1290px;
}

.hp-banner-slider {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.hp-banner-slider-mask {
  overflow: hidden;
}

.hp-banner-slider-left-arrow, .hp-banner-slider-right-arrow, .hp-banner-slider-slide-nav {
  display: none;
}

.banner-slide {
  overflow: hidden;
}

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

.hp-participation-grid {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  display: grid;
  position: relative;
}

.hp-participation-text-wrapper {
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-start;
  width: 100%;
  padding: 112px 120px 120px;
  display: flex;
  position: relative;
}

.hp-participation-text-background {
  background-color: var(--black);
  width: 100%;
}

.hp-participation-image-overflow {
  aspect-ratio: auto;
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.button-white {
  background-color: var(--grey-teal);
  color: var(--white);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 17px 25px 18px;
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
  text-decoration: none;
  transition: background-color .4s;
  position: relative;
}

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

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

.hp-participation-section {
  position: relative;
}

.hp-participation-text-tag {
  opacity: .5;
  color: var(--white);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 23px;
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
}

.hp-participation-text-heading {
  color: var(--white);
  margin-bottom: 27px;
  font-size: 58px;
  font-weight: 500;
  line-height: 65px;
}

.hp-participation-text-description {
  color: var(--white);
  margin-bottom: 38px;
}

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

.footer-padding {
  padding-top: 112px;
  padding-left: 45px;
  padding-right: 45px;
}

.footer-container {
  max-width: 1290px;
}

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

.hp-footer-heading {
  color: var(--white);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
}

.hp-footer-contact-mail {
  opacity: .5;
  color: var(--white);
  width: 100%;
  margin-bottom: 18px;
  text-decoration: none;
  transition: opacity .4s;
}

.hp-footer-contact-mail:hover {
  opacity: 1;
}

.hp-footer-line {
  background-color: var(--white);
  width: 25px;
  height: 3px;
  margin-top: 18px;
  margin-bottom: 17px;
}

.hp-footer-contact-address {
  opacity: .5;
  color: var(--white);
  width: 100%;
  margin-bottom: 10px;
  text-decoration: none;
  transition: opacity .4s;
}

.hp-footer-contact-address:hover {
  opacity: 1;
}

.hp-footer-contact-social-media-flex {
  width: 100%;
  display: flex;
}

.hp-footer-contact-social-media-link {
  opacity: .5;
  border-radius: 100%;
  width: 40px;
  height: 40px;
  margin-right: 15px;
  transition: opacity .4s;
  overflow: hidden;
}

.hp-footer-contact-social-media-link:hover {
  opacity: 1;
}

.hp-footer-contact-social-media-icon {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.hp-footer-about-flex {
  flex-flow: column;
  display: flex;
}

.hp-footer-site-map-dropdown {
  width: 100%;
  margin-bottom: 10px;
}

.hp-footer-site-map-dropdown-toggle {
  opacity: .5;
  color: var(--white);
  width: 100%;
  padding: 0;
  transition: opacity .4s;
}

.hp-footer-site-map-dropdown-toggle:hover, .hp-footer-site-map-dropdown-toggle.w--open {
  opacity: 1;
}

.hp-footer-site-map-dropdown-icon {
  margin-right: 0;
}

.hp-footer-site-map-dropdown-list {
  position: relative;
}

.hp-footer-site-map-dropdown-list.w--open {
  background-color: #ddd0;
}

.hp-footer-site-map-dropdown-link {
  opacity: .5;
  color: var(--white);
  margin-top: 10px;
  padding: 0;
  transition: opacity .4s;
}

.hp-footer-site-map-dropdown-link:hover {
  opacity: 1;
}

.hp-footer-site-map-dropdown-link.w--current {
  opacity: 1;
  color: var(--white);
}

.hp-footer-contact-flex {
  flex-flow: column;
  display: flex;
}

.hp-footer-contact-phone {
  opacity: .5;
  color: var(--white);
  width: 100%;
  margin-bottom: 10px;
  text-decoration: none;
  transition: opacity .4s;
}

.hp-footer-contact-phone:hover {
  opacity: 1;
}

.hp-footer-site-map-flex {
  flex-flow: column;
  display: flex;
}

.hp-footer-site-map-link {
  opacity: .5;
  color: var(--white);
  width: 100%;
  margin-bottom: 10px;
  text-decoration: none;
  transition: opacity .4s;
}

.hp-footer-site-map-link:hover, .hp-footer-site-map-link.w--current {
  opacity: 1;
}

.hp-footer-about-text-padding {
  opacity: .5;
  color: var(--white);
  margin-bottom: 10px;
}

.hp-footer-about-text-link {
  color: var(--white);
  text-decoration: none;
}

.footer-bottom-line {
  background-color: var(--white);
  opacity: .5;
  width: 100%;
  height: 1px;
  margin-top: 28px;
}

.footer-bottom-text-padding {
  padding-top: 17px;
  padding-bottom: 17px;
}

.footer-bottom-text {
  opacity: .5;
  color: var(--white);
}

.ip-banner {
  flex-flow: column;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  min-height: 70vh;
  display: flex;
  position: relative;
  overflow: hidden;
}

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

.ip-banner-text-padding {
  z-index: 1;
  background-image: linear-gradient(180deg, #fff0, var(--black));
  width: 100%;
  padding: 113px 45px 111px;
  position: relative;
}

.hp-banner-text-heading-grid {
  grid-column-gap: 45px;
  grid-row-gap: 45px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.ip-banner-text-heading-grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.ip-banner-text-container {
  max-width: 1290px;
}

.ip-banner-text-flex {
  flex-flow: column;
  display: flex;
}

.ip-banner-text-heading {
  color: var(--white);
  font-size: 70px;
  font-weight: 500;
  line-height: 74px;
}

.ip-banner-text-tag {
  color: var(--white);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 23px;
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
}

.ip-content-section {
  position: relative;
}

.ip-content-padding {
  padding: 112px 45px 103px;
}

.ip-content-container {
  max-width: 860px;
}

.block-quote {
  border-left-color: var(--grey-teal);
  margin-top: 18px;
  margin-bottom: 17px;
  padding: 16px 0 18px 25px;
  font-size: 20px;
  font-weight: 600;
  line-height: 30px;
}

.ip-gallery-section {
  position: relative;
}

.ip-gallery-padding {
  padding-left: 45px;
  padding-right: 45px;
  position: relative;
}

.ip-gallery-grid {
  grid-column-gap: 25px;
  grid-row-gap: 25px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  grid-auto-flow: column;
  place-content: stretch;
  display: grid;
}

.ip-content-text-heading {
  font-size: 58px;
  font-weight: 500;
  line-height: 65px;
}

.ip-content-text-tag {
  opacity: .5;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 23px;
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
}

.ip-content-text-padding {
  margin-bottom: 27px;
}

.paragraph {
  margin-bottom: 10px;
}

.ip-gallery-lightbox-link {
  width: 100%;
  height: 100%;
}

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

.list {
  margin-bottom: 30px;
  padding-left: 17px;
}

.contact-section {
  position: relative;
}

.contact-grid {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  display: grid;
  position: relative;
}

.contact-image-overflow {
  aspect-ratio: auto;
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

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

.contact-text-background {
  background-color: var(--black);
  width: 100%;
}

.contact-text-wrapper {
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-start;
  width: 100%;
  padding: 112px 120px 120px;
  display: flex;
  position: relative;
}

.contact-text-tag {
  opacity: .5;
  color: var(--white);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 23px;
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
}

.contact-text-heading {
  color: var(--white);
  margin-bottom: 27px;
  font-size: 58px;
  font-weight: 500;
  line-height: 65px;
}

.contact-text-description {
  color: var(--white);
  margin-bottom: 38px;
}

.ip-button-padding {
  margin-top: 28px;
  margin-bottom: 17px;
}

.ip-press-grid {
  grid-column-gap: 45px;
  grid-row-gap: 29px;
  grid-template-rows: auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.ip-press-section {
  position: relative;
}

.ip-press-padding {
  padding: 112px 45px;
}

.ip-press-container {
  max-width: 860px;
}

.ip-projects-section {
  position: relative;
}

.ip-projects-padding {
  padding: 120px 45px;
}

.ip-projects-container {
  max-width: 860px;
}

.ip-projects-grid {
  grid-column-gap: 45px;
  grid-row-gap: 45px;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.ip-contact-section {
  position: relative;
}

.ip-contact-padding {
  padding: 120px 45px 112px;
}

.ip-contact-container {
  max-width: 860px;
}

.ip-contact-list-map {
  width: 100%;
  height: 100%;
}

.ip-contact-image-size {
  height: 450px;
  overflow: hidden;
}

.ip-contact-heading-padding, .ip-contact-text-padding {
  padding-top: 17px;
}

.ip-contact-list-description {
  color: var(--davy-grey);
}

.ip-contact-address {
  color: var(--davy-grey);
  margin-bottom: 10px;
  text-decoration: none;
  display: block;
}

.ip-contact-grid {
  grid-column-gap: 13px;
  grid-row-gap: 13px;
  grid-template-columns: 1fr;
}

.ip-contact-telephone {
  color: var(--davy-grey);
  margin-bottom: 10px;
  text-decoration: none;
  display: block;
}

.ip-contact-mail {
  color: var(--davy-grey);
  text-decoration: none;
  display: block;
}

.ip-contact-image-padding {
  margin-bottom: 20px;
}

@media screen and (max-width: 991px) {
  .hp-projects-section, .hp-projects-wrapper {
    height: auto;
  }

  .hp-projects-grid {
    flex-flow: column;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
    display: flex;
    position: static;
  }

  .hp-projects-image-overflow {
    height: 650px;
  }

  .hp-projects-text-wrapper {
    padding: 32px 40px 40px;
  }

  .hp-projects-text-heading {
    max-width: 75%;
    margin-bottom: 24px;
    font-size: 48px;
    line-height: 53px;
  }

  .hp-projects-text-description {
    margin-bottom: 32px;
  }

  .button.padding {
    margin-bottom: 0;
  }

  .hp-projects-text-tag {
    margin-bottom: 22px;
  }

  .hp-about-padding {
    padding-left: 40px;
    padding-right: 40px;
  }

  .hp-about-grid {
    grid-column-gap: 40px;
    grid-row-gap: 40px;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
  }

  .hp-about-number-grid {
    grid-template-rows: 250px 250px;
    grid-template-columns: 1fr 1fr;
  }

  .hp-about-text-tag {
    margin-bottom: 22px;
  }

  .hp-about-text-heading {
    margin-bottom: 24px;
    font-size: 48px;
    line-height: 53px;
  }

  .hp-about-text-description {
    margin-bottom: 32px;
  }

  .hp-about-text-padding {
    padding-top: 0;
    padding-bottom: 0;
  }

  .hp-about-number-heading {
    margin-bottom: 10px;
    font-size: 48px;
    line-height: 53px;
  }

  .hp-about-number-icon-position {
    top: 25px;
    right: 25px;
  }

  .hp-services-text-grid {
    grid-template-columns: 1fr;
    margin-bottom: 32px;
  }

  .hp-press-grid {
    grid-column-gap: 25px;
    grid-row-gap: 25px;
    grid-template-columns: 1fr;
  }

  .link-line-text-heading {
    max-width: 100%;
    font-size: 24px;
    line-height: 31px;
  }

  .hp-services-text-heading {
    font-size: 48px;
    line-height: 53px;
  }

  .link-line-arrow, .link-line-arrow-icon-down, .link-line-arrow-icon-up {
    width: 17px;
    height: 17px;
  }

  .hp-press-text-grid {
    grid-column-gap: 32px;
    grid-row-gap: 32px;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
    justify-items: start;
    margin-bottom: 31px;
  }

  .hp-press-padding {
    padding-left: 40px;
    padding-right: 40px;
  }

  .hp-press-text-tag {
    margin-bottom: 21px;
  }

  .hp-press-text-heading {
    font-size: 48px;
    line-height: 53px;
  }

  .hp-press-text-date-padding {
    padding-bottom: 10px;
  }

  .navbar {
    left: 55px;
    right: 55px;
  }

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

  .hp-services-padding {
    padding-left: 40px;
    padding-right: 40px;
  }

  .hp-services-text-tag {
    margin-bottom: 22px;
  }

  .navbar-dropdown-toggle {
    text-align: center;
    width: 100%;
    transition: background-color .4s, color .4s;
  }

  .navbar-dropdown-toggle:hover, .navbar-dropdown-toggle.w--open {
    background-color: var(--grey-teal);
    color: var(--color-03\<deleted\|variable-5a367591-97b6-b113-2f8d-506bfa425ba5\>);
  }

  .navbar-dropdown-list.w--open {
    margin-top: 0;
    position: relative;
  }

  .navbar-link {
    text-align: center;
    width: 100%;
    margin-right: 0;
    transition: background-color .4s, color .4s;
  }

  .navbar-link:hover, .navbar-link.w--current {
    background-color: var(--grey-teal);
    color: var(--color-03\<deleted\|variable-5a367591-97b6-b113-2f8d-506bfa425ba5\>);
  }

  .navbar-menu {
    background-color: var(--color-03\<deleted\|variable-5a367591-97b6-b113-2f8d-506bfa425ba5\>);
    flex-flow: column;
    margin-top: 5px;
    box-shadow: 0 5px 10px #0003;
  }

  .navbar-dropdown {
    width: 100%;
    margin-right: 0;
  }

  .menu-button {
    background-color: var(--grey-teal);
    color: var(--color-03\<deleted\|variable-5a367591-97b6-b113-2f8d-506bfa425ba5\>);
    right: 15px;
  }

  .menu-button.w--open {
    background-color: var(--color-01\<deleted\|variable-cf762d23-1738-e38b-a2bc-5bfa46c49767\>);
  }

  .hp-banner-text-padding {
    padding: 27px 40px 40px;
  }

  .navbar-dropdown-link {
    text-align: center;
  }

  .hp-banner-text-link-grid {
    grid-column-gap: 32px;
    grid-row-gap: 32px;
    grid-template-columns: 1fr;
  }

  .hp-banner-text-heading-padding {
    margin-bottom: 25px;
  }

  .hp-banner-text-heading {
    max-width: 100%;
    font-size: 60px;
    line-height: 62px;
  }

  .link-line-arrow-icon-up-white {
    width: 17px;
    height: 17px;
  }

  .hp-participation-grid {
    flex-flow: column;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
    display: flex;
    position: static;
  }

  .hp-participation-text-wrapper {
    padding: 32px 40px 40px;
  }

  .hp-participation-image-overflow {
    height: 650px;
  }

  .hp-participation-text-tag {
    margin-bottom: 22px;
  }

  .hp-participation-text-heading {
    max-width: 75%;
    margin-bottom: 24px;
    font-size: 48px;
    line-height: 53px;
  }

  .hp-participation-text-description {
    margin-bottom: 32px;
  }

  .footer-padding {
    padding-left: 40px;
    padding-right: 40px;
  }

  .footer-grid {
    grid-column-gap: 15px;
    grid-row-gap: 15px;
    grid-template-columns: 1fr;
  }

  .footer-bottom-line {
    margin-top: 40px;
  }

  .footer-bottom-text-padding {
    padding-top: 11px;
    padding-bottom: 12px;
  }

  .ip-banner-text-padding {
    padding: 33px 40px;
  }

  .ip-banner-text-heading {
    max-width: 100%;
    font-size: 60px;
    line-height: 62px;
  }

  .ip-banner-text-tag {
    margin-bottom: 21px;
  }

  .ip-content-padding, .ip-gallery-padding {
    padding-left: 40px;
    padding-right: 40px;
  }

  .ip-gallery-grid {
    grid-template-rows: auto auto auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-flow: row;
  }

  .ip-content-text-heading {
    font-size: 48px;
    line-height: 53px;
  }

  .ip-content-text-tag {
    margin-bottom: 22px;
  }

  .ip-content-text-padding {
    margin-bottom: 24px;
  }

  .contact-grid {
    flex-flow: column;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
    display: flex;
    position: static;
  }

  .contact-image-overflow {
    height: 650px;
  }

  .contact-text-wrapper {
    padding: 32px 40px 40px;
  }

  .contact-text-tag {
    margin-bottom: 22px;
  }

  .contact-text-heading {
    max-width: 75%;
    margin-bottom: 24px;
    font-size: 48px;
    line-height: 53px;
  }

  .contact-text-description {
    margin-bottom: 32px;
  }

  .ip-button-padding {
    margin-top: 23px;
  }

  .ip-press-grid {
    grid-column-gap: 25px;
    grid-row-gap: 25px;
    grid-template-rows: auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto;
    grid-template-columns: 1fr;
  }

  .ip-press-padding, .ip-projects-padding {
    padding-left: 40px;
    padding-right: 40px;
  }

  .ip-projects-grid {
    grid-column-gap: 40px;
    grid-row-gap: 40px;
  }

  .ip-contact-padding {
    padding-left: 40px;
    padding-right: 40px;
  }

  .ip-contact-grid {
    grid-column-gap: 8px;
    grid-row-gap: 8px;
  }

  .ip-contact-image-padding {
    margin-bottom: 15px;
  }
}

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

  .hp-projects-image-overflow {
    height: 600px;
  }

  .hp-projects-text-wrapper {
    padding: 27px 35px 35px;
  }

  .hp-projects-text-heading {
    margin-bottom: 20px;
    font-size: 38px;
    line-height: 42px;
  }

  .hp-projects-text-description {
    margin-bottom: 28px;
  }

  .hp-projects-text-tag {
    margin-bottom: 19px;
  }

  .hp-about-padding {
    padding-left: 35px;
    padding-right: 35px;
  }

  .hp-about-grid {
    grid-column-gap: 35px;
    grid-row-gap: 35px;
  }

  .hp-about-number-grid {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-template-rows: 200px 200px;
  }

  .hp-about-text-tag {
    margin-bottom: 19px;
  }

  .hp-about-text-heading {
    margin-bottom: 20px;
    font-size: 38px;
    line-height: 42px;
  }

  .hp-about-text-description {
    margin-bottom: 28px;
  }

  .hp-about-number-background {
    padding: 20px 20px 14px;
  }

  .hp-about-number-heading {
    margin-bottom: 6px;
    font-size: 38px;
    line-height: 42px;
  }

  .hp-about-number-icon-position {
    top: 20px;
    right: 20px;
  }

  .hp-services-text-grid {
    margin-bottom: 29px;
  }

  .hp-press-grid {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .hp-services-list-image-size {
    height: 400px;
  }

  .hp-services-list-text-padding {
    padding-top: 15px;
  }

  .link-line-text-heading {
    max-width: 350px;
    font-size: 22px;
    line-height: 25px;
  }

  .hp-services-text-heading {
    font-size: 38px;
    line-height: 42px;
  }

  .link-line-text-arrow {
    margin-bottom: 6px;
  }

  .link-line-arrow {
    width: 16px;
    height: 16px;
    margin-bottom: 4px;
  }

  .link-line-arrow-icon-down, .link-line-arrow-icon-up {
    width: 16px;
    height: 16px;
  }

  .hp-press-text-grid {
    grid-column-gap: 29px;
    grid-row-gap: 29px;
    margin-bottom: 27px;
  }

  .hp-press-padding {
    padding-left: 35px;
    padding-right: 35px;
  }

  .hp-press-text-tag {
    margin-bottom: 19px;
  }

  .hp-press-text-heading {
    font-size: 38px;
    line-height: 42px;
  }

  .hp-press-text-date-padding {
    padding-bottom: 8px;
  }

  .hp-press-text-description-padding {
    padding-top: 11px;
  }

  .navbar {
    left: 50px;
    right: 50px;
  }

  .hp-services-grid {
    grid-column-gap: 35px;
    grid-row-gap: 35px;
  }

  .hp-services-padding {
    padding-left: 35px;
    padding-right: 35px;
  }

  .hp-services-text-tag {
    margin-bottom: 19px;
  }

  .hp-banner-text-padding {
    padding: 25px 35px 35px;
  }

  .hp-banner-text-link-grid {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
  }

  .hp-banner-text-heading-padding {
    margin-bottom: 25px;
  }

  .hp-banner-text-heading {
    font-size: 50px;
    line-height: 50px;
  }

  .link-line-arrow-icon-up-white {
    width: 16px;
    height: 16px;
  }

  .hp-participation-text-wrapper {
    padding: 27px 35px 35px;
  }

  .hp-participation-image-overflow {
    height: 600px;
  }

  .hp-participation-text-tag {
    margin-bottom: 19px;
  }

  .hp-participation-text-heading {
    margin-bottom: 20px;
    font-size: 38px;
    line-height: 42px;
  }

  .hp-participation-text-description {
    margin-bottom: 28px;
  }

  .footer-padding {
    padding-left: 35px;
    padding-right: 35px;
  }

  .footer-grid {
    grid-column-gap: 15px;
    grid-row-gap: 15px;
  }

  .hp-footer-contact-mail {
    margin-bottom: 13px;
  }

  .hp-footer-line {
    margin-top: 13px;
    margin-bottom: 12px;
  }

  .hp-footer-contact-address, .hp-footer-site-map-dropdown {
    margin-bottom: 5px;
  }

  .hp-footer-site-map-dropdown-link {
    margin-top: 5px;
  }

  .hp-footer-contact-phone, .hp-footer-site-map-link {
    margin-bottom: 5px;
  }

  .footer-bottom-line {
    margin-top: 35px;
  }

  .footer-bottom-text-padding {
    padding-top: 7px;
    padding-bottom: 8px;
  }

  .ip-banner-text-padding {
    padding: 28px 35px 30px;
  }

  .ip-banner-text-heading {
    font-size: 50px;
    line-height: 50px;
  }

  .ip-banner-text-tag {
    margin-bottom: 19px;
  }

  .ip-content-padding {
    padding-bottom: 107px;
    padding-left: 35px;
    padding-right: 35px;
  }

  .block-quote {
    margin-top: 14px;
    margin-bottom: 12px;
    padding-top: 12px;
    padding-bottom: 13px;
    padding-left: 20px;
    font-size: 18px;
    line-height: 28px;
  }

  .ip-gallery-padding {
    padding-left: 35px;
    padding-right: 35px;
  }

  .ip-gallery-grid {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .ip-content-text-heading {
    font-size: 38px;
    line-height: 42px;
  }

  .ip-content-text-tag {
    margin-bottom: 19px;
  }

  .ip-content-text-padding {
    margin-bottom: 20px;
  }

  .paragraph {
    margin-bottom: 6px;
  }

  .contact-image-overflow {
    height: 600px;
  }

  .contact-text-wrapper {
    padding: 27px 35px 35px;
  }

  .contact-text-tag {
    margin-bottom: 19px;
  }

  .contact-text-heading {
    margin-bottom: 20px;
    font-size: 38px;
    line-height: 42px;
  }

  .contact-text-description {
    margin-bottom: 28px;
  }

  .ip-button-padding {
    margin-bottom: 13px;
  }

  .ip-press-grid {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .ip-press-padding, .ip-projects-padding {
    padding-left: 35px;
    padding-right: 35px;
  }

  .ip-projects-grid {
    grid-column-gap: 35px;
    grid-row-gap: 35px;
  }

  .ip-contact-padding {
    padding-left: 35px;
    padding-right: 35px;
  }

  .ip-contact-image-size {
    height: 400px;
  }

  .ip-contact-heading-padding {
    padding-top: 15px;
  }

  .ip-contact-text-padding {
    padding-top: 11px;
  }

  .ip-contact-address, .ip-contact-telephone {
    margin-bottom: 5px;
  }

  .ip-contact-image-padding {
    margin-bottom: 14px;
  }
}

@media screen and (max-width: 479px) {
  .hp-projects-image-overflow {
    height: 550px;
  }

  .hp-projects-text-wrapper {
    padding: 22px 30px 30px;
  }

  .hp-projects-text-heading {
    max-width: 100%;
    margin-bottom: 15px;
  }

  .hp-projects-text-description {
    margin-bottom: 23px;
  }

  .hp-projects-text-tag {
    margin-bottom: 14px;
  }

  .hp-about-padding {
    padding-left: 30px;
    padding-right: 30px;
  }

  .hp-about-number-grid {
    grid-template-rows: 200px 200px 200px 200px;
    grid-template-columns: 1fr;
  }

  .hp-about-text-tag {
    margin-bottom: 14px;
  }

  .hp-about-text-heading {
    margin-bottom: 15px;
  }

  .hp-about-text-description {
    margin-bottom: 23px;
  }

  .hp-services-text-grid {
    margin-bottom: 24px;
  }

  .hp-press-grid {
    grid-column-gap: 15px;
    grid-row-gap: 15px;
  }

  .hp-services-list-image-size {
    height: 350px;
  }

  .link-line-text-heading {
    max-width: 290px;
  }

  .hp-press-text-grid {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
    margin-bottom: 22px;
  }

  .hp-press-padding {
    padding-left: 30px;
    padding-right: 30px;
  }

  .hp-press-text-tag {
    margin-bottom: 14px;
  }

  .navbar {
    left: 45px;
    right: 45px;
  }

  .hp-services-grid {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
  }

  .hp-services-padding {
    padding-left: 30px;
    padding-right: 30px;
  }

  .hp-services-text-tag {
    margin-bottom: 14px;
  }

  .logo {
    height: 50px;
  }

  .menu-button {
    justify-content: center;
    align-items: center;
    width: 48px;
    height: 48px;
    padding: 0;
  }

  .hp-banner-text-padding {
    padding: 21px 30px 30px;
  }

  .menu-button-icon {
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    display: flex;
  }

  .hp-banner-text-link-grid {
    grid-column-gap: 25px;
    grid-row-gap: 25px;
  }

  .hp-banner-text-heading-padding {
    margin-bottom: 19px;
  }

  .hp-banner-text-heading {
    font-size: 40px;
    line-height: 43px;
  }

  .hp-participation-text-wrapper {
    padding: 22px 30px 30px;
  }

  .hp-participation-image-overflow {
    height: 550px;
  }

  .hp-participation-text-tag {
    margin-bottom: 14px;
  }

  .hp-participation-text-heading {
    max-width: 100%;
    margin-bottom: 15px;
  }

  .hp-participation-text-description {
    margin-bottom: 23px;
  }

  .footer-padding {
    padding-left: 30px;
    padding-right: 30px;
  }

  .footer-grid {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .footer-bottom-line {
    margin-top: 30px;
  }

  .ip-banner-text-padding {
    padding: 23px 30px 25px;
  }

  .ip-banner-text-heading {
    font-size: 40px;
    line-height: 43px;
  }

  .ip-banner-text-tag {
    margin-bottom: 14px;
  }

  .ip-content-padding, .ip-gallery-padding {
    padding-left: 30px;
    padding-right: 30px;
  }

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

  .ip-content-text-tag {
    margin-bottom: 14px;
  }

  .ip-content-text-padding {
    margin-bottom: 15px;
  }

  .contact-image-overflow {
    height: 550px;
  }

  .contact-text-wrapper {
    padding: 22px 30px 30px;
  }

  .contact-text-tag {
    margin-bottom: 14px;
  }

  .contact-text-heading {
    max-width: 100%;
    margin-bottom: 15px;
  }

  .contact-text-description {
    margin-bottom: 23px;
  }

  .ip-button-padding {
    margin-top: 18px;
  }

  .ip-press-grid {
    grid-column-gap: 15px;
    grid-row-gap: 15px;
  }

  .ip-press-padding, .ip-projects-padding {
    padding-left: 30px;
    padding-right: 30px;
  }

  .ip-projects-grid {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
  }

  .ip-contact-padding {
    padding-left: 30px;
    padding-right: 30px;
  }

  .ip-contact-image-size {
    height: 350px;
  }

  .ip-contact-grid {
    grid-column-gap: 3px;
    grid-row-gap: 3px;
  }

  .ip-contact-image-padding {
    margin-bottom: 9px;
  }
}

#w-node-_1f0b9131-8b23-9368-1bc0-e1036fe76823-a29c6265, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-1f426f6d, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-8d40a1f9, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-d5abc3fe, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-57de08e1, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-9610b919, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-76609eb0, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-7be2f6a8, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-86200d4e, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-408442f6, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-cd4a8233, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-0c8b966b, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-4d622545 {
  grid-area: 1 / 1 / 2 / 3;
}

@media screen and (max-width: 991px) {
  #w-node-_1f0b9131-8b23-9368-1bc0-e1036fe76823-a29c6265 {
    grid-area: 1 / 1 / 2 / 4;
  }

  #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-1f426f6d, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-8d40a1f9, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-d5abc3fe, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-57de08e1, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-9610b919, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-76609eb0, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-7be2f6a8, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-86200d4e, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-408442f6, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-cd4a8233, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-0c8b966b, #w-node-_293d1a84-f620-b4a6-c4b4-ad9f659f4bdc-4d622545 {
    grid-column-end: 4;
  }
}


