/*!*********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[4].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./assets/sass/app.scss ***!
  \*********************************************************************************************************************************************************************************************************************************************/
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  margin: 0;
  overflow-x: hidden;
  position: relative;
}

img {
  max-width: 100%;
  height: 100%;
  -o-object-position: center;
     object-position: center;
  -o-object-fit: cover;
     object-fit: cover;
}

section {
  padding-top: 3em;
  padding-bottom: 3em;
}

#cms-cookie-consent {
  font-size: 1.65em;
}
#cms-cookie-consent > div > div {
  border-radius: 5px;
}

.button {
  font-family: inherit;
  font-size: 16px;
  padding: calc(0.667em + 2px) calc(1.333em + 2px);
  border: none;
  border-radius: 5px;
  cursor: pointer;
  background: #666666;
  color: #fff;
}

.wp-block-button__link {
  border-radius: 5px;
}

.reveal {
  opacity: 0;
  transition: 1s all ease 0.5s;
}

.reveal.up {
  position: relative;
  transform: translateY(150px);
  transition: 1s all ease 0.5s;
}

.reveal.down {
  position: relative;
  transform: translateY(-150px);
  transition: 1s all ease 0.5s;
}

.reveal.right {
  position: relative;
  transform: translateX(150px);
  transition: 1s all ease 0.5s;
}

.reveal.left {
  position: relative;
  transform: translateX(-150px);
  transition: 1s all ease 0.5s;
}

.reveal.active {
  transform: translate(0);
  opacity: 1;
}

body {
  font-family: "Raleway", sans-serif;
  font-size: 50% !important;
}
@media (min-width: 1300px) {
  body {
    font-size: 62.5% !important;
  }
}

h1 {
  font-size: 3.2em;
  margin-bottom: 0.5em;
  font-weight: 400;
}

h2 {
  font-size: 2.7em;
  line-height: 1.3;
  margin-bottom: 0.5em;
  font-weight: 400;
}

h3 {
  margin-bottom: 0.5em;
  line-height: 1.1;
  font-size: 2.2em;
}

p, .ginput_container input, .ginput_container textarea, .ginput_container select,
li {
  font-size: 1.85em;
  line-height: 1.6;
  font-weight: 400;
}

p, .ginput_container input, .ginput_container textarea, .ginput_container select {
  margin-bottom: 0.5em;
}

a {
  text-decoration: none !important;
}

i {
  padding-bottom: 0.5em;
}

.wp-block-post-title {
  margin: auto;
  margin: 2em;
  text-align: center;
  text-transform: uppercase;
  font-size: 4.2em;
}
@media screen and (max-width: 999px) {
  .wp-block-post-title {
    margin-top: 4em;
  }
}
@media (max-width: 599px) {
  .wp-block-post-title {
    font-size: 3.5em;
    margin: 1em;
    margin-top: 2em;
  }
}

.full-height img {
  max-height: -moz-fit-content !important;
  max-height: fit-content !important;
}

.full-width, .hero-quote {
  max-width: none !important;
}
.full-width img, .hero-quote img {
  width: 100%;
}

.wp-block-columns {
  padding: 5em 2em 2em 2em;
  gap: 4em !important;
}
.wp-block-columns ul {
  margin-left: 4em;
  padding-left: 2em;
  margin-bottom: 0.5em;
}

.wp-block-gallery {
  flex-wrap: nowrap;
}

.wp-block-button__link {
  font-size: 2em;
}

.wp-block-image {
  margin: 0 !important;
}

.inner-body h2 {
  font-size: 23px;
  padding: 20px 0;
}
.inner-body p, .inner-body .ginput_container input, .ginput_container .inner-body input, .inner-body .ginput_container textarea, .ginput_container .inner-body textarea, .inner-body .ginput_container select, .ginput_container .inner-body select {
  font-size: 17px;
  font-weight: 300;
  color: #292929;
  line-height: 1.5em;
  margin-bottom: 24px;
}

.home-carousel {
  max-width: 100% !important;
  position: relative;
  margin: 0;
}
.home-carousel .wp-block-gallery {
  gap: 0 !important;
}
.home-carousel .wp-block-gallery img {
  transition: transform 0.2s;
}
.home-carousel .wp-block-image {
  max-height: 94em;
  min-height: 40em;
}
.home-carousel .glide__arrows {
  position: absolute;
  top: 50%;
  width: 100%;
  pointer-events: none;
  transform: translateY(-50%);
}
.home-carousel .glide__arrow {
  position: absolute;
  pointer-events: auto;
  background: rgba(255, 255, 255, 0.8);
  border: none;
  border-radius: 50%;
  font-size: 35px;
  font-weight: 400;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #000;
}
.home-carousel .glide__arrow--left {
  left: 0.5em;
}
.home-carousel .glide__arrow--right {
  right: 0.5em;
}

.hero-quote {
  padding: 13em 2em;
}
.hero-quote i {
  font-size: 4em;
  padding-bottom: 1.4em;
}

.carousel-three-images {
  margin: 0 10em !important;
  overflow: visible !important;
}
.carousel-three-images figure {
  padding-bottom: 1em;
}
.carousel-three-images h2 {
  font-size: 2.75em;
  background-color: #fff;
  z-index: 10;
  position: relative;
  line-height: 1.3;
  margin: 0.5em auto;
  padding: 0 0.5em;
  transition: padding 1s;
  font-weight: 500;
  width: -moz-fit-content;
  width: fit-content;
  border-right: 1px solid #666666;
  border-left: 1px solid #666666;
}
.carousel-three-images h2:hover {
  padding: 0 2em;
  transition: padding 1s;
}
.carousel-three-images hr {
  position: relative;
  top: -3.3em;
  width: 100% !important;
  height: 1px !important;
}
.carousel-three-images p, .carousel-three-images .ginput_container input, .ginput_container .carousel-three-images input, .carousel-three-images .ginput_container textarea, .ginput_container .carousel-three-images textarea, .carousel-three-images .ginput_container select, .ginput_container .carousel-three-images select {
  font-size: 1.5em;
  margin: 1em;
  line-height: 1.3;
}
.carousel-three-images .wp-block-button__link {
  font-size: 1.5em;
  padding: 0.5em 1em;
}
.carousel-three-images .wp-block-gallery {
  gap: 1.3em !important;
}
.carousel-three-images .wp-block-image {
  margin: -5px 4px -5px -4px !important;
}
.carousel-three-images .glide__track {
  overflow: hidden;
}
.carousel-three-images .glide__arrows {
  display: flex;
  justify-content: space-between;
  transform: translateY(-220px);
  position: relative;
}
.carousel-three-images .glide__arrow {
  border: none;
  background-color: transparent;
  font-family: inherit;
  font-size: 2em;
  font-weight: 200;
  color: #070d10;
}
.carousel-three-images .glide__arrow--right {
  margin-right: -40px;
}
.carousel-three-images .glide__arrow--left {
  margin-left: -40px;
}
@media (max-width: 1300px) {
  .carousel-three-images .glide__arrow {
    display: none;
  }
}

.carousel-hero-caption {
  max-width: none !important;
  margin-bottom: 2em;
  padding-top: 0em !important;
}
.carousel-hero-caption .wp-block-cover {
  height: 100vh !important;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.carousel-hero-caption .glide__slides {
  gap: 0 !important;
}
.carousel-hero-caption h1,
.carousel-hero-caption h2 {
  font-size: 6em !important;
  font-weight: 500 !important;
  padding-bottom: 0.5em;
  padding-right: 0;
  padding-left: 0;
  margin-bottom: 0;
}
.carousel-hero-caption p, .carousel-hero-caption .ginput_container input, .ginput_container .carousel-hero-caption input, .carousel-hero-caption .ginput_container textarea, .ginput_container .carousel-hero-caption textarea, .carousel-hero-caption .ginput_container select, .ginput_container .carousel-hero-caption select {
  font-size: 2em;
  padding: 0.5em 2em;
}
.carousel-hero-caption .wp-block-buttons {
  margin-top: 3em;
}
.carousel-hero-caption .wp-block-group {
  padding-top: 0 !important;
}
.carousel-hero-caption .wp-block-cover img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100vh;
}

.carousel-three-slides-text {
  margin: 0 10em !important;
  overflow: visible !important;
  -webkit-user-select: none; /* Chrome, Safari, Opera */
  -moz-user-select: none; /* Firefox */ /* Internet Explorer/Edge */
  user-select: none;
}
.carousel-three-slides-text figure {
  padding-bottom: 1em;
}
.carousel-three-slides-text h2 {
  font-size: 2.75em;
  background-color: #fff;
  z-index: 10;
  position: relative;
  line-height: 1.3;
  margin: 13px 0;
  padding: 0 0;
  transition: padding 1s;
  font-weight: 500;
  width: -moz-fit-content;
  width: fit-content;
}
.carousel-three-slides-text h2:hover {
  padding: 0 2em;
  transition: padding 1s;
  border-bottom: 1px solid #666666;
  margin: 13px 0 12px 0;
}
.carousel-three-slides-text hr {
  position: relative;
  top: -3.3em;
  width: 100% !important;
  height: 1px !important;
}
.carousel-three-slides-text p, .carousel-three-slides-text .ginput_container input, .ginput_container .carousel-three-slides-text input, .carousel-three-slides-text .ginput_container textarea, .ginput_container .carousel-three-slides-text textarea, .carousel-three-slides-text .ginput_container select, .ginput_container .carousel-three-slides-text select {
  font-size: 1.5em;
  margin: 0;
  line-height: 1.3;
}
.carousel-three-slides-text .wp-block-button__link {
  font-size: 1.5em;
  padding: 0.5em 1em;
}
.carousel-three-slides-text .glide__slide img {
  height: 338px !important;
  width: auto;
}
.carousel-three-slides-text .wp-block-columns {
  gap: 0 !important;
}
.carousel-three-slides-text .wp-block-column {
  padding: 0 1.25em;
}
.carousel-three-slides-text .glide__track {
  overflow: hidden;
}
.carousel-three-slides-text .glide__arrows {
  display: flex;
  justify-content: space-between;
  transform: translateY(-272px);
  position: relative;
}
.carousel-three-slides-text .glide__arrow {
  border: none;
  background-color: transparent;
  font-family: inherit;
  font-size: 1em;
  font-weight: 200;
}
.carousel-three-slides-text .glide__arrow--right {
  margin-right: -25px;
}
.carousel-three-slides-text .glide__arrow--left {
  margin-left: -35px;
}

.carousel-hero-banner {
  max-width: none !important;
  margin-bottom: 2em;
  padding-top: 0em !important;
}
.carousel-hero-banner .wp-block-cover {
  height: 100vh !important;
}
.carousel-hero-banner .glide__slides {
  gap: 0 !important;
}
.carousel-hero-banner h1,
.carousel-hero-banner h2 {
  font-size: 6em !important;
  font-weight: 500 !important;
  padding-bottom: 0.5em;
  padding-right: 0;
  padding-left: 0;
  margin-bottom: 0;
}
.carousel-hero-banner p, .carousel-hero-banner .ginput_container input, .ginput_container .carousel-hero-banner input, .carousel-hero-banner .ginput_container textarea, .ginput_container .carousel-hero-banner textarea, .carousel-hero-banner .ginput_container select, .ginput_container .carousel-hero-banner select {
  font-size: 2em;
  padding: 0.5em 2em;
}
.carousel-hero-banner .wp-block-buttons {
  margin-top: 3em;
}
.carousel-hero-banner .wp-block-group {
  padding-top: 0 !important;
}
.carousel-hero-banner .wp-block-cover img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100vh;
}

.hero-quote.short {
  padding: 7em 2em !important;
}

.home-carousel.short .wp-block-gallery {
  max-height: 60em;
}
.home-carousel.short img {
  max-height: 60em;
}

/* WHAT MAKES US SPECIAL */
.process-column {
  padding-top: 70px;
}
.process-column .count {
  font-size: 70px;
  color: #321563;
  font-weight: 700;
  margin-bottom: 15px;
}
.process-column .title {
  margin-bottom: 15px;
}
.process-column P {
  font-size: 16px;
}

/* WHO WE ARE */
.who-we-are {
  padding: 0;
  gap: 0 !important;
}
.who-we-are .wp-block-cover {
  padding: 30px 60px;
}
.who-we-are .wp-block-cover .content {
  padding: 0 0 51em 0;
}
.who-we-are .column-2 {
  padding: 30px 60px;
}
@media (max-width: 781px) {
  .who-we-are .column-2 {
    padding: 30px 30px;
  }
}
.who-we-are .column-2 h2 {
  margin-bottom: 0.2em;
}
.who-we-are .column-2 .wp-block-button {
  margin-top: 2em;
}

/* Contact Us */
.contact-us {
  max-width: 1440px;
  margin: auto;
}
.contact-us .main-text h3 {
  font-size: 28px;
  color: #321563;
  font-weight: 500;
}
.contact-us .main-text h2 {
  font-size: 40px;
  color: #321563;
  font-weight: 700;
  margin-bottom: 15px;
}
.contact-us .contact-details h5 {
  font-size: 15px;
  margin-bottom: 10px;
}
.contact-us .contact-form .gform_wrapper {
  max-width: none !important;
  padding: 5em 0;
}

.coming-soon {
  height: 95vh;
  display: flex;
  align-items: center;
}
.coming-soon h1 {
  text-align: center;
}

.projects {
  /*
  .side-menu {
      max-width: 25%;
      //mobile view
      @media (max-width: 768px) {
          max-width: 100%;
      }

      h2 {
          font-size: 20px;
      }

      .wp-block-columns {
          padding: 2em;
          padding-left: 0em;
          border-bottom: 1px solid rgba(0,0,0,.5);

          h2 {
              font-size: 15px;
          }

          p {
              font-size: 12px;
          }
      }
  }
  */
}
.projects .project-showcase-all h2 {
  color: white;
}
.projects .project-showcase-featured__projects {
  max-height: 94em;
  min-height: 40em;
}
.projects .project-showcase-featured h2 {
  font-size: 33px;
  color: white;
}
.projects .project-showcase-featured p, .projects .project-showcase-featured .ginput_container input, .ginput_container .projects .project-showcase-featured input, .projects .project-showcase-featured .ginput_container textarea, .ginput_container .projects .project-showcase-featured textarea, .projects .project-showcase-featured .ginput_container select, .ginput_container .projects .project-showcase-featured select {
  font-size: 17px;
  color: white;
}
.projects h2 {
  font-size: 23px;
  font-weight: 500;
  color: #292929;
  padding: 20px 0 15px;
}
.projects p, .projects .ginput_container input, .ginput_container .projects input, .projects .ginput_container textarea, .ginput_container .projects textarea, .projects .ginput_container select, .ginput_container .projects select {
  font-size: 17px;
  font-weight: 300;
  line-height: 1.5em;
  margin-bottom: 10px;
  color: #292929;
}
.projects .wp-block-separator {
  border-bottom: 1px solid;
  margin: 3em 0 3em;
}
.projects.child:hover img {
  transform: none;
}
.projects.child .wp-block-image {
  max-height: 83vh;
}

.editor-styles-wrapper .projects .showcase .wp-block-image figcaption {
  display: block;
}
.editor-styles-wrapper .projects .showcase .wp-block-image:hover img {
  transform: none;
}
.editor-styles-wrapper .projects .showcase .wp-block-image:hover figcaption {
  display: block;
  background: inherit !important;
  color: #fff;
  height: none;
  max-height: 100% !important;
}
.editor-styles-wrapper .projects .showcase .wp-block-image:hover figcaption a {
  color: white;
  position: relative;
  top: 94%;
  font-size: 22px;
}

.about.home-carousel .glide__arrows {
  display: none !important;
}

footer .wp-block-group {
  background-color: #292929;
  color: white;
}
footer .wp-block-group a {
  color: #e8947e;
}
footer .wp-block-group .footer-columns {
  max-width: 120em;
  padding: 7em 0em;
  margin: 4em auto 0 auto;
  gap: 0 !important;
}
footer .wp-block-group .footer-columns .wp-block-column {
  padding: 1em 3em;
}
footer .wp-block-group .footer-columns .wp-block-column .heading {
  font-size: 22px;
  margin-bottom: 2em;
}
footer .wp-block-group .footer-columns .footer-mid-col .wp-block-columns {
  padding: 0;
}
footer .wp-block-group .footer-columns .footer-mid-col .wp-block-column {
  padding: 0;
}
footer .wp-block-group .footer-columns .footer-mid-col .wp-block-column .menu-item {
  font-size: 22px;
}
footer .wp-block-group .footer-columns .footer-mid-col .title {
  margin-bottom: 0;
  font-size: 16px;
}
footer .wp-block-group .footer-columns .footer-mid-col p, footer .wp-block-group .footer-columns .footer-mid-col .ginput_container input, .ginput_container footer .wp-block-group .footer-columns .footer-mid-col input, footer .wp-block-group .footer-columns .footer-mid-col .ginput_container textarea, .ginput_container footer .wp-block-group .footer-columns .footer-mid-col textarea, footer .wp-block-group .footer-columns .footer-mid-col .ginput_container select, .ginput_container footer .wp-block-group .footer-columns .footer-mid-col select {
  margin-bottom: 0;
}
footer .wp-block-group .footer-columns .footer-mid-col .wp-block-separator {
  margin: 10px;
}
footer .wp-block-group .wp-block-social-links {
  padding: 1em 0 !important;
}
footer .wp-block-group .credits {
  max-width: 115em;
  margin: auto;
  padding: 2em 2em 6em 2em;
  border-top: solid 1px #ced4da;
}

header {
  position: fixed;
  width: 100%;
  z-index: 1000;
  background: 0;
  /*linear-gradient(
    0deg,
    rgba(255, 255, 255, 0.85),
    rgba(255, 255, 255, 1)
  );*/
  transition: background-color 1s;
}
header p, header .ginput_container input, .ginput_container header input, header .ginput_container textarea, .ginput_container header textarea, header .ginput_container select, .ginput_container header select {
  font-weight: 500;
  padding-left: 1.5em;
  align-self: flex-start;
}
header li {
  font-size: inherit !important;
}
header .header__container {
  max-width: 120em;
  margin: auto;
  padding: 1em 2em;
}
@media screen and (max-width: 999px) {
  header .header__container {
    align-items: center !important;
    flex-direction: column !important;
  }
}
@media (max-width: 599px) {
  header .header__container {
    align-items: space-between;
    flex-direction: row !important;
  }
}
header .wp-block-site-logo {
  max-width: 20em;
  transition: max-width 1s;
}
header .wp-block-navigation {
  font-size: 2em;
  gap: 2em !important;
}
header .wp-block-navigation span {
  color: white;
}
@media (max-width: 599px) {
  header .wp-block-navigation span {
    color: black;
  }
}
header .wp-block-navigation ul {
  color: white;
}
header .wp-block-navigation span:hover {
  color: #999999;
}
header .wp-block-navigation__submenu-container {
  background-color: transparent !important;
  left: 0 !important;
  font-size: 0.8em;
}
header .wp-block-navigation__submenu-container li {
  padding: 0.5em;
}
header .wp-block-navigation__responsive-container-open {
  color: white !important;
}
header .wp-block-navigation__responsive-container.has-modal-open ul {
  align-self: center;
  align-items: center !important;
}
header .wp-block-navigation__responsive-container.has-modal-open li {
  align-items: center !important;
}
header .wp-block-navigation__responsive-container.has-modal-open button {
  display: inline-block !important;
  width: 1em;
  height: 1em;
  padding-top: 0.5em;
}
header .wp-block-navigation__responsive-container.has-modal-open svg {
  pointer-events: none;
}
header .wp-block-navigation__responsive-container.has-modal-open .wp-block-navigation__submenu-container {
  padding-top: 1em !important;
  display: none;
}
header .wp-block-navigation__responsive-container.has-modal-open .wp-block-navigation__submenu-container.show {
  display: block;
}
header .phone-number {
  padding-top: 10px;
}
header .phone-number a {
  color: white;
}
header .phone-number a:hover {
  color: #999999;
}
@media (max-width: 999px) {
  header .phone-number {
    display: none;
  }
}
header.header__sticky {
  background-color: #f2f5f7;
  transition: background-color 1.3s;
}
header.header__sticky .wp-block-site-logo {
  max-width: 15em;
  transition: max-width 1s;
}
header.header__sticky .wp-block-navigation span {
  color: #666666;
}
header.header__sticky .wp-block-navigation ul {
  color: #666666;
}
header.header__sticky .wp-block-navigation span:hover {
  color: #999999;
}
header.header__sticky .wp-block-navigation__submenu-container {
  background-color: #f2f5f7 !important;
  border: none !important;
}
header.header__sticky .wp-block-navigation__submenu-container li {
  padding: 0.5em;
}
header.header__sticky .wp-block-navigation__responsive-container-open {
  color: black !important;
}
header.header__sticky .phone-number a {
  color: black;
}
header.header__sticky .phone-number a:hover {
  color: gray;
}

.text__body-container {
  margin: auto;
  padding-top: 20em;
}
.text__main-image {
  margin-bottom: 2em;
}
.text__main-image img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  max-height: 60em;
}
.text__wide-container {
  margin: auto;
  max-width: 130em;
  padding: 2em;
}

.gform_wrapper {
  max-width: 70em !important;
  padding: 2em;
}
.gform_title {
  text-transform: uppercase;
  text-align: center;
}
.gform_description {
  display: none;
}
.gform_required_legend {
  font-size: 1.35em;
}
.gform_confirmation_message {
  padding: 2em;
  font-size: 1.5em;
}
.gfield_label {
  font-size: 1.85em !important;
  font-weight: 400 !important;
}
.gfield_html {
  font-size: 1.1em;
}

.ginput_container input, .ginput_container textarea, .ginput_container select {
  border: 1px solid #ced4da;
  border-radius: 0.25em;
  font-family: "Raleway", sans-serif;
}

/*# sourceMappingURL=index.css.map*/