@charset "UTF-8";
/* Vars. */
/* Setup. */
@import "wordpress/login.css";
html, body {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}
html *, html:before, html:after, body *, body:before, body:after {
  padding: 0;
  margin: 0;
  box-sizing: inherit;
}

.container-fluid, .container {
  width: 100%;
  max-width: none;
  padding-left: 16px;
  padding-right: 16px;
}

.container {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

.row {
  display: flex;
  flex-wrap: wrap;
  margin-left: -16px;
  margin-right: -16px;
}

.row > * {
  padding-left: 16px;
  padding-right: 16px;
}

.col {
  flex: 1;
}

/* Responsive Columns. */
.col-0 {
  max-width: 0%;
  flex: 0 0 0%;
}

.col-1 {
  max-width: 8.3333333333%;
  flex: 0 0 8.3333333333%;
}

.col-2 {
  max-width: 16.6666666667%;
  flex: 0 0 16.6666666667%;
}

.col-3 {
  max-width: 25%;
  flex: 0 0 25%;
}

.col-4 {
  max-width: 33.3333333333%;
  flex: 0 0 33.3333333333%;
}

.col-5 {
  max-width: 41.6666666667%;
  flex: 0 0 41.6666666667%;
}

.col-6 {
  max-width: 50%;
  flex: 0 0 50%;
}

.col-7 {
  max-width: 58.3333333333%;
  flex: 0 0 58.3333333333%;
}

.col-8 {
  max-width: 66.6666666667%;
  flex: 0 0 66.6666666667%;
}

.col-9 {
  max-width: 75%;
  flex: 0 0 75%;
}

.col-10 {
  max-width: 83.3333333333%;
  flex: 0 0 83.3333333333%;
}

.col-11 {
  max-width: 91.6666666667%;
  flex: 0 0 91.6666666667%;
}

.col-12 {
  max-width: 100%;
  flex: 0 0 100%;
}

@media (min-width: 576px) {
  .col-sm-0 {
    max-width: 0%;
    flex: 0 0 0%;
  }
  .col-sm-1 {
    max-width: 8.3333333333%;
    flex: 0 0 8.3333333333%;
  }
  .col-sm-2 {
    max-width: 16.6666666667%;
    flex: 0 0 16.6666666667%;
  }
  .col-sm-3 {
    max-width: 25%;
    flex: 0 0 25%;
  }
  .col-sm-4 {
    max-width: 33.3333333333%;
    flex: 0 0 33.3333333333%;
  }
  .col-sm-5 {
    max-width: 41.6666666667%;
    flex: 0 0 41.6666666667%;
  }
  .col-sm-6 {
    max-width: 50%;
    flex: 0 0 50%;
  }
  .col-sm-7 {
    max-width: 58.3333333333%;
    flex: 0 0 58.3333333333%;
  }
  .col-sm-8 {
    max-width: 66.6666666667%;
    flex: 0 0 66.6666666667%;
  }
  .col-sm-9 {
    max-width: 75%;
    flex: 0 0 75%;
  }
  .col-sm-10 {
    max-width: 83.3333333333%;
    flex: 0 0 83.3333333333%;
  }
  .col-sm-11 {
    max-width: 91.6666666667%;
    flex: 0 0 91.6666666667%;
  }
  .col-sm-12 {
    max-width: 100%;
    flex: 0 0 100%;
  }
}
@media (min-width: 768px) {
  .col-md-0 {
    max-width: 0%;
    flex: 0 0 0%;
  }
  .col-md-1 {
    max-width: 8.3333333333%;
    flex: 0 0 8.3333333333%;
  }
  .col-md-2 {
    max-width: 16.6666666667%;
    flex: 0 0 16.6666666667%;
  }
  .col-md-3 {
    max-width: 25%;
    flex: 0 0 25%;
  }
  .col-md-4 {
    max-width: 33.3333333333%;
    flex: 0 0 33.3333333333%;
  }
  .col-md-5 {
    max-width: 41.6666666667%;
    flex: 0 0 41.6666666667%;
  }
  .col-md-6 {
    max-width: 50%;
    flex: 0 0 50%;
  }
  .col-md-7 {
    max-width: 58.3333333333%;
    flex: 0 0 58.3333333333%;
  }
  .col-md-8 {
    max-width: 66.6666666667%;
    flex: 0 0 66.6666666667%;
  }
  .col-md-9 {
    max-width: 75%;
    flex: 0 0 75%;
  }
  .col-md-10 {
    max-width: 83.3333333333%;
    flex: 0 0 83.3333333333%;
  }
  .col-md-11 {
    max-width: 91.6666666667%;
    flex: 0 0 91.6666666667%;
  }
  .col-md-12 {
    max-width: 100%;
    flex: 0 0 100%;
  }
}
@media (min-width: 992px) {
  .col-lg-0 {
    max-width: 0%;
    flex: 0 0 0%;
  }
  .col-lg-1 {
    max-width: 8.3333333333%;
    flex: 0 0 8.3333333333%;
  }
  .col-lg-2 {
    max-width: 16.6666666667%;
    flex: 0 0 16.6666666667%;
  }
  .col-lg-3 {
    max-width: 25%;
    flex: 0 0 25%;
  }
  .col-lg-4 {
    max-width: 33.3333333333%;
    flex: 0 0 33.3333333333%;
  }
  .col-lg-5 {
    max-width: 41.6666666667%;
    flex: 0 0 41.6666666667%;
  }
  .col-lg-6 {
    max-width: 50%;
    flex: 0 0 50%;
  }
  .col-lg-7 {
    max-width: 58.3333333333%;
    flex: 0 0 58.3333333333%;
  }
  .col-lg-8 {
    max-width: 66.6666666667%;
    flex: 0 0 66.6666666667%;
  }
  .col-lg-9 {
    max-width: 75%;
    flex: 0 0 75%;
  }
  .col-lg-10 {
    max-width: 83.3333333333%;
    flex: 0 0 83.3333333333%;
  }
  .col-lg-11 {
    max-width: 91.6666666667%;
    flex: 0 0 91.6666666667%;
  }
  .col-lg-12 {
    max-width: 100%;
    flex: 0 0 100%;
  }
}
@media (min-width: 1200px) {
  .col-xl-0 {
    max-width: 0%;
    flex: 0 0 0%;
  }
  .col-xl-1 {
    max-width: 8.3333333333%;
    flex: 0 0 8.3333333333%;
  }
  .col-xl-2 {
    max-width: 16.6666666667%;
    flex: 0 0 16.6666666667%;
  }
  .col-xl-3 {
    max-width: 25%;
    flex: 0 0 25%;
  }
  .col-xl-4 {
    max-width: 33.3333333333%;
    flex: 0 0 33.3333333333%;
  }
  .col-xl-5 {
    max-width: 41.6666666667%;
    flex: 0 0 41.6666666667%;
  }
  .col-xl-6 {
    max-width: 50%;
    flex: 0 0 50%;
  }
  .col-xl-7 {
    max-width: 58.3333333333%;
    flex: 0 0 58.3333333333%;
  }
  .col-xl-8 {
    max-width: 66.6666666667%;
    flex: 0 0 66.6666666667%;
  }
  .col-xl-9 {
    max-width: 75%;
    flex: 0 0 75%;
  }
  .col-xl-10 {
    max-width: 83.3333333333%;
    flex: 0 0 83.3333333333%;
  }
  .col-xl-11 {
    max-width: 91.6666666667%;
    flex: 0 0 91.6666666667%;
  }
  .col-xl-12 {
    max-width: 100%;
    flex: 0 0 100%;
  }
}
@media (min-width: 1400px) {
  .col-xxl-0 {
    max-width: 0%;
    flex: 0 0 0%;
  }
  .col-xxl-1 {
    max-width: 8.3333333333%;
    flex: 0 0 8.3333333333%;
  }
  .col-xxl-2 {
    max-width: 16.6666666667%;
    flex: 0 0 16.6666666667%;
  }
  .col-xxl-3 {
    max-width: 25%;
    flex: 0 0 25%;
  }
  .col-xxl-4 {
    max-width: 33.3333333333%;
    flex: 0 0 33.3333333333%;
  }
  .col-xxl-5 {
    max-width: 41.6666666667%;
    flex: 0 0 41.6666666667%;
  }
  .col-xxl-6 {
    max-width: 50%;
    flex: 0 0 50%;
  }
  .col-xxl-7 {
    max-width: 58.3333333333%;
    flex: 0 0 58.3333333333%;
  }
  .col-xxl-8 {
    max-width: 66.6666666667%;
    flex: 0 0 66.6666666667%;
  }
  .col-xxl-9 {
    max-width: 75%;
    flex: 0 0 75%;
  }
  .col-xxl-10 {
    max-width: 83.3333333333%;
    flex: 0 0 83.3333333333%;
  }
  .col-xxl-11 {
    max-width: 91.6666666667%;
    flex: 0 0 91.6666666667%;
  }
  .col-xxl-12 {
    max-width: 100%;
    flex: 0 0 100%;
  }
}
@media (min-width: 1920px) {
  .col-xxxl-0 {
    max-width: 0%;
    flex: 0 0 0%;
  }
  .col-xxxl-1 {
    max-width: 8.3333333333%;
    flex: 0 0 8.3333333333%;
  }
  .col-xxxl-2 {
    max-width: 16.6666666667%;
    flex: 0 0 16.6666666667%;
  }
  .col-xxxl-3 {
    max-width: 25%;
    flex: 0 0 25%;
  }
  .col-xxxl-4 {
    max-width: 33.3333333333%;
    flex: 0 0 33.3333333333%;
  }
  .col-xxxl-5 {
    max-width: 41.6666666667%;
    flex: 0 0 41.6666666667%;
  }
  .col-xxxl-6 {
    max-width: 50%;
    flex: 0 0 50%;
  }
  .col-xxxl-7 {
    max-width: 58.3333333333%;
    flex: 0 0 58.3333333333%;
  }
  .col-xxxl-8 {
    max-width: 66.6666666667%;
    flex: 0 0 66.6666666667%;
  }
  .col-xxxl-9 {
    max-width: 75%;
    flex: 0 0 75%;
  }
  .col-xxxl-10 {
    max-width: 83.3333333333%;
    flex: 0 0 83.3333333333%;
  }
  .col-xxxl-11 {
    max-width: 91.6666666667%;
    flex: 0 0 91.6666666667%;
  }
  .col-xxxl-12 {
    max-width: 100%;
    flex: 0 0 100%;
  }
}
/* Offset Classes. */
.offset-0 {
  margin-left: 0%;
}

.offset-1 {
  margin-left: 8.3333333333%;
}

.offset-2 {
  margin-left: 16.6666666667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.3333333333%;
}

.offset-5 {
  margin-left: 41.6666666667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.3333333333%;
}

.offset-8 {
  margin-left: 66.6666666667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.3333333333%;
}

.offset-11 {
  margin-left: 91.6666666667%;
}

.offset-12 {
  margin-left: 100%;
}

@media (min-width: 576px) {
  .offset-sm-0 {
    margin-left: 0%;
  }
  .offset-sm-1 {
    margin-left: 8.3333333333%;
  }
  .offset-sm-2 {
    margin-left: 16.6666666667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.3333333333%;
  }
  .offset-sm-5 {
    margin-left: 41.6666666667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.3333333333%;
  }
  .offset-sm-8 {
    margin-left: 66.6666666667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.3333333333%;
  }
  .offset-sm-11 {
    margin-left: 91.6666666667%;
  }
  .offset-sm-12 {
    margin-left: 100%;
  }
}
@media (min-width: 768px) {
  .offset-md-0 {
    margin-left: 0%;
  }
  .offset-md-1 {
    margin-left: 8.3333333333%;
  }
  .offset-md-2 {
    margin-left: 16.6666666667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.3333333333%;
  }
  .offset-md-5 {
    margin-left: 41.6666666667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.3333333333%;
  }
  .offset-md-8 {
    margin-left: 66.6666666667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.3333333333%;
  }
  .offset-md-11 {
    margin-left: 91.6666666667%;
  }
  .offset-md-12 {
    margin-left: 100%;
  }
}
@media (min-width: 992px) {
  .offset-lg-0 {
    margin-left: 0%;
  }
  .offset-lg-1 {
    margin-left: 8.3333333333%;
  }
  .offset-lg-2 {
    margin-left: 16.6666666667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.3333333333%;
  }
  .offset-lg-5 {
    margin-left: 41.6666666667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.3333333333%;
  }
  .offset-lg-8 {
    margin-left: 66.6666666667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.3333333333%;
  }
  .offset-lg-11 {
    margin-left: 91.6666666667%;
  }
  .offset-lg-12 {
    margin-left: 100%;
  }
}
@media (min-width: 1200px) {
  .offset-xl-0 {
    margin-left: 0%;
  }
  .offset-xl-1 {
    margin-left: 8.3333333333%;
  }
  .offset-xl-2 {
    margin-left: 16.6666666667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.3333333333%;
  }
  .offset-xl-5 {
    margin-left: 41.6666666667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.3333333333%;
  }
  .offset-xl-8 {
    margin-left: 66.6666666667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.3333333333%;
  }
  .offset-xl-11 {
    margin-left: 91.6666666667%;
  }
  .offset-xl-12 {
    margin-left: 100%;
  }
}
@media (min-width: 1400px) {
  .offset-xxl-0 {
    margin-left: 0%;
  }
  .offset-xxl-1 {
    margin-left: 8.3333333333%;
  }
  .offset-xxl-2 {
    margin-left: 16.6666666667%;
  }
  .offset-xxl-3 {
    margin-left: 25%;
  }
  .offset-xxl-4 {
    margin-left: 33.3333333333%;
  }
  .offset-xxl-5 {
    margin-left: 41.6666666667%;
  }
  .offset-xxl-6 {
    margin-left: 50%;
  }
  .offset-xxl-7 {
    margin-left: 58.3333333333%;
  }
  .offset-xxl-8 {
    margin-left: 66.6666666667%;
  }
  .offset-xxl-9 {
    margin-left: 75%;
  }
  .offset-xxl-10 {
    margin-left: 83.3333333333%;
  }
  .offset-xxl-11 {
    margin-left: 91.6666666667%;
  }
  .offset-xxl-12 {
    margin-left: 100%;
  }
}
@media (min-width: 1920px) {
  .offset-xxxl-0 {
    margin-left: 0%;
  }
  .offset-xxxl-1 {
    margin-left: 8.3333333333%;
  }
  .offset-xxxl-2 {
    margin-left: 16.6666666667%;
  }
  .offset-xxxl-3 {
    margin-left: 25%;
  }
  .offset-xxxl-4 {
    margin-left: 33.3333333333%;
  }
  .offset-xxxl-5 {
    margin-left: 41.6666666667%;
  }
  .offset-xxxl-6 {
    margin-left: 50%;
  }
  .offset-xxxl-7 {
    margin-left: 58.3333333333%;
  }
  .offset-xxxl-8 {
    margin-left: 66.6666666667%;
  }
  .offset-xxxl-9 {
    margin-left: 75%;
  }
  .offset-xxxl-10 {
    margin-left: 83.3333333333%;
  }
  .offset-xxxl-11 {
    margin-left: 91.6666666667%;
  }
  .offset-xxxl-12 {
    margin-left: 100%;
  }
}
/* Vars. */
/* Position. */
.position-relative {
  position: relative;
}

.position-absolute {
  position: absolute;
}

.position-fixed {
  position: fixed;
}

.position-sticky {
  position: sticky;
}

@media (min-width: 576px) {
  .position-sm-relative {
    position: relative;
  }
  .position-sm-absolute {
    position: absolute;
  }
  .position-sm-fixed {
    position: fixed;
  }
  .position-sm-sticky {
    position: sticky;
  }
}
@media (min-width: 768px) {
  .position-md-relative {
    position: relative;
  }
  .position-md-absolute {
    position: absolute;
  }
  .position-md-fixed {
    position: fixed;
  }
  .position-md-sticky {
    position: sticky;
  }
}
@media (min-width: 992px) {
  .position-lg-relative {
    position: relative;
  }
  .position-lg-absolute {
    position: absolute;
  }
  .position-lg-fixed {
    position: fixed;
  }
  .position-lg-sticky {
    position: sticky;
  }
}
@media (min-width: 1200px) {
  .position-xl-relative {
    position: relative;
  }
  .position-xl-absolute {
    position: absolute;
  }
  .position-xl-fixed {
    position: fixed;
  }
  .position-xl-sticky {
    position: sticky;
  }
}
@media (min-width: 1400px) {
  .position-xxl-relative {
    position: relative;
  }
  .position-xxl-absolute {
    position: absolute;
  }
  .position-xxl-fixed {
    position: fixed;
  }
  .position-xxl-sticky {
    position: sticky;
  }
}
@media (min-width: 1920px) {
  .position-xxxl-relative {
    position: relative;
  }
  .position-xxxl-absolute {
    position: absolute;
  }
  .position-xxxl-fixed {
    position: fixed;
  }
  .position-xxxl-sticky {
    position: sticky;
  }
}
/* Display. */
.d-none {
  display: none;
}

.flex-nowrap {
  flex-wrap: nowrap;
}

.flex-wrap {
  flex-wrap: wrap;
}

.d-flex {
  display: flex;
}

.d-block {
  display: block;
}

.d-inline-flex {
  display: inline-flex;
}

.d-inline-block {
  display: inline-block;
}

.d-inline {
  display: inline;
}

@media (min-width: 576px) {
  .d-sm-none {
    display: none;
  }
  .d-sm-flex {
    display: flex;
  }
  .d-sm-block {
    display: block;
  }
  .d-sm-inline-flex {
    display: inline-flex;
  }
  .d-sm-inline-block {
    display: inline-block;
  }
  .d-sm-inline {
    display: inline;
  }
}
@media (min-width: 768px) {
  .d-md-none {
    display: none;
  }
  .d-md-flex {
    display: flex;
  }
  .d-md-block {
    display: block;
  }
  .d-md-inline-flex {
    display: inline-flex;
  }
  .d-md-inline-block {
    display: inline-block;
  }
  .d-md-inline {
    display: inline;
  }
}
@media (min-width: 992px) {
  .d-lg-none {
    display: none;
  }
  .d-lg-flex {
    display: flex;
  }
  .d-lg-block {
    display: block;
  }
  .d-lg-inline-flex {
    display: inline-flex;
  }
  .d-lg-inline-block {
    display: inline-block;
  }
  .d-lg-inline {
    display: inline;
  }
}
@media (min-width: 1200px) {
  .d-xl-none {
    display: none;
  }
  .d-xl-flex {
    display: flex;
  }
  .d-xl-block {
    display: block;
  }
  .d-xl-inline-flex {
    display: inline-flex;
  }
  .d-xl-inline-block {
    display: inline-block;
  }
  .d-xl-inline {
    display: inline;
  }
}
@media (min-width: 1400px) {
  .d-xxl-none {
    display: none;
  }
  .d-xxl-flex {
    display: flex;
  }
  .d-xxl-block {
    display: block;
  }
  .d-xxl-inline-flex {
    display: inline-flex;
  }
  .d-xxl-inline-block {
    display: inline-block;
  }
  .d-xxl-inline {
    display: inline;
  }
}
@media (min-width: 1920px) {
  .d-xxxl-none {
    display: none;
  }
  .d-xxxl-flex {
    display: flex;
  }
  .d-xxxl-block {
    display: block;
  }
  .d-xxxl-inline-flex {
    display: inline-flex;
  }
  .d-xxxl-inline-block {
    display: inline-block;
  }
  .d-xxxl-inline {
    display: inline;
  }
}
/* Flex. */
.flex-row {
  flex-direction: row;
}

.flex-row-reverse {
  flex-direction: row-reverse;
}

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

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

.justify-content-start {
  justify-content: flex-start;
}

.justify-content-center {
  justify-content: center;
}

.justify-content-end {
  justify-content: flex-end;
}

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

.justify-content-around {
  justify-content: space-around;
}

.justify-content-evenly {
  justify-content: space-evenly;
}

.align-items-start {
  align-items: flex-start;
}

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

.align-items-end {
  align-items: flex-end;
}

.align-items-baseline {
  align-items: baseline;
}

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

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

.align-self-center {
  align-self: center;
}

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

.align-self-baseline {
  align-self: baseline;
}

.align-self-stretch {
  align-self: stretch;
}

.align-content-start {
  align-content: flex-start;
}

.align-content-center {
  align-content: center;
}

.align-content-end {
  align-content: flex-end;
}

.align-content-between {
  align-content: space-between;
}

.align-content-around {
  align-content: space-around;
}

.align-content-stretch {
  align-content: stretch;
}

.flex-grow-0 {
  flex-grow: 0;
}

.flex-grow-1 {
  flex-grow: 1;
}

.flex-shrink-0 {
  flex-shrink: 0;
}

.flex-shrink-1 {
  flex-shrink: 1;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-9 {
  order: 9;
}

.order-10 {
  order: 10;
}

.order-11 {
  order: 11;
}

.order-12 {
  order: 12;
}

@media (min-width: 576px) {
  .flex-sm-row {
    flex-direction: row;
  }
  .flex-sm-row-reverse {
    flex-direction: row-reverse;
  }
  .flex-sm-column {
    flex-direction: column;
  }
  .flex-sm-column-reverse {
    flex-direction: column-reverse;
  }
  .justify-content-sm-start {
    justify-content: flex-start;
  }
  .justify-content-sm-center {
    justify-content: center;
  }
  .justify-content-sm-end {
    justify-content: flex-end;
  }
  .justify-content-sm-between {
    justify-content: space-between;
  }
  .justify-content-sm-around {
    justify-content: space-around;
  }
  .justify-content-sm-evenly {
    justify-content: space-evenly;
  }
  .align-items-sm-start {
    align-items: flex-start;
  }
  .align-items-sm-center {
    align-items: center;
  }
  .align-items-sm-end {
    align-items: flex-end;
  }
  .align-items-sm-baseline {
    align-items: baseline;
  }
  .align-items-sm-stretch {
    align-items: stretch;
  }
}
@media (min-width: 768px) {
  .flex-md-row {
    flex-direction: row;
  }
  .flex-md-row-reverse {
    flex-direction: row-reverse;
  }
  .flex-md-column {
    flex-direction: column;
  }
  .flex-md-column-reverse {
    flex-direction: column-reverse;
  }
  .justify-content-md-start {
    justify-content: flex-start;
  }
  .justify-content-md-center {
    justify-content: center;
  }
  .justify-content-md-end {
    justify-content: flex-end;
  }
  .justify-content-md-between {
    justify-content: space-between;
  }
  .justify-content-md-around {
    justify-content: space-around;
  }
  .justify-content-md-evenly {
    justify-content: space-evenly;
  }
  .align-items-md-start {
    align-items: flex-start;
  }
  .align-items-md-center {
    align-items: center;
  }
  .align-items-md-end {
    align-items: flex-end;
  }
  .align-items-md-baseline {
    align-items: baseline;
  }
  .align-items-md-stretch {
    align-items: stretch;
  }
}
@media (min-width: 992px) {
  .flex-lg-row {
    flex-direction: row;
  }
  .flex-lg-row-reverse {
    flex-direction: row-reverse;
  }
  .flex-lg-column {
    flex-direction: column;
  }
  .flex-lg-column-reverse {
    flex-direction: column-reverse;
  }
  .justify-content-lg-start {
    justify-content: flex-start;
  }
  .justify-content-lg-center {
    justify-content: center;
  }
  .justify-content-lg-end {
    justify-content: flex-end;
  }
  .justify-content-lg-between {
    justify-content: space-between;
  }
  .justify-content-lg-around {
    justify-content: space-around;
  }
  .justify-content-lg-evenly {
    justify-content: space-evenly;
  }
  .align-items-lg-start {
    align-items: flex-start;
  }
  .align-items-lg-center {
    align-items: center;
  }
  .align-items-lg-end {
    align-items: flex-end;
  }
  .align-items-lg-baseline {
    align-items: baseline;
  }
  .align-items-lg-stretch {
    align-items: stretch;
  }
}
@media (min-width: 1200px) {
  .flex-xl-row {
    flex-direction: row;
  }
  .flex-xl-row-reverse {
    flex-direction: row-reverse;
  }
  .flex-xl-column {
    flex-direction: column;
  }
  .flex-xl-column-reverse {
    flex-direction: column-reverse;
  }
  .justify-content-xl-start {
    justify-content: flex-start;
  }
  .justify-content-xl-center {
    justify-content: center;
  }
  .justify-content-xl-end {
    justify-content: flex-end;
  }
  .justify-content-xl-between {
    justify-content: space-between;
  }
  .justify-content-xl-around {
    justify-content: space-around;
  }
  .justify-content-xl-evenly {
    justify-content: space-evenly;
  }
  .align-items-xl-start {
    align-items: flex-start;
  }
  .align-items-xl-center {
    align-items: center;
  }
  .align-items-xl-end {
    align-items: flex-end;
  }
  .align-items-xl-baseline {
    align-items: baseline;
  }
  .align-items-xl-stretch {
    align-items: stretch;
  }
}
@media (min-width: 1400px) {
  .flex-xxl-row {
    flex-direction: row;
  }
  .flex-xxl-row-reverse {
    flex-direction: row-reverse;
  }
  .flex-xxl-column {
    flex-direction: column;
  }
  .flex-xxl-column-reverse {
    flex-direction: column-reverse;
  }
  .justify-content-xxl-start {
    justify-content: flex-start;
  }
  .justify-content-xxl-center {
    justify-content: center;
  }
  .justify-content-xxl-end {
    justify-content: flex-end;
  }
  .justify-content-xxl-between {
    justify-content: space-between;
  }
  .justify-content-xxl-around {
    justify-content: space-around;
  }
  .justify-content-xxl-evenly {
    justify-content: space-evenly;
  }
  .align-items-xxl-start {
    align-items: flex-start;
  }
  .align-items-xxl-center {
    align-items: center;
  }
  .align-items-xxl-end {
    align-items: flex-end;
  }
  .align-items-xxl-baseline {
    align-items: baseline;
  }
  .align-items-xxl-stretch {
    align-items: stretch;
  }
}
@media (min-width: 1920px) {
  .flex-xxxl-row {
    flex-direction: row;
  }
  .flex-xxxl-row-reverse {
    flex-direction: row-reverse;
  }
  .flex-xxxl-column {
    flex-direction: column;
  }
  .flex-xxxl-column-reverse {
    flex-direction: column-reverse;
  }
  .justify-content-xxxl-start {
    justify-content: flex-start;
  }
  .justify-content-xxxl-center {
    justify-content: center;
  }
  .justify-content-xxxl-end {
    justify-content: flex-end;
  }
  .justify-content-xxxl-between {
    justify-content: space-between;
  }
  .justify-content-xxxl-around {
    justify-content: space-around;
  }
  .justify-content-xxxl-evenly {
    justify-content: space-evenly;
  }
  .align-items-xxxl-start {
    align-items: flex-start;
  }
  .align-items-xxxl-center {
    align-items: center;
  }
  .align-items-xxxl-end {
    align-items: flex-end;
  }
  .align-items-xxxl-baseline {
    align-items: baseline;
  }
  .align-items-xxxl-stretch {
    align-items: stretch;
  }
}
/* Text. */
.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

@media (min-width: 576px) {
  .text-sm-left {
    text-align: left;
  }
  .text-sm-center {
    text-align: center;
  }
  .text-sm-right {
    text-align: right;
  }
}
@media (min-width: 768px) {
  .text-md-left {
    text-align: left;
  }
  .text-md-center {
    text-align: center;
  }
  .text-md-right {
    text-align: right;
  }
}
@media (min-width: 992px) {
  .text-lg-left {
    text-align: left;
  }
  .text-lg-center {
    text-align: center;
  }
  .text-lg-right {
    text-align: right;
  }
}
@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left;
  }
  .text-xl-center {
    text-align: center;
  }
  .text-xl-right {
    text-align: right;
  }
}
@media (min-width: 1400px) {
  .text-xxl-left {
    text-align: left;
  }
  .text-xxl-center {
    text-align: center;
  }
  .text-xxl-right {
    text-align: right;
  }
}
@media (min-width: 1920px) {
  .text-xxxl-left {
    text-align: left;
  }
  .text-xxxl-center {
    text-align: center;
  }
  .text-xxxl-right {
    text-align: right;
  }
}
/* Extras. */
.overflow-hidden {
  overflow: hidden;
}

.background_colour_white {
  background-color: #FFFFFF;
}
.background_colour_white h1, .background_colour_white h2, .background_colour_white h3, .background_colour_white h4, .background_colour_white h5, .background_colour_white h6, .background_colour_white p {
  color: #005757;
}

.background_colour_black {
  background-color: #03393B;
}
.background_colour_black h1, .background_colour_black h2, .background_colour_black h3, .background_colour_black h4, .background_colour_black h5, .background_colour_black h6, .background_colour_black p {
  color: #FFFFFF;
}

.background_colour_dark_green {
  background-color: #005757;
}
.background_colour_dark_green p {
  color: #FFFFFF;
}
.background_colour_dark_green h1, .background_colour_dark_green h2, .background_colour_dark_green h3, .background_colour_dark_green h4, .background_colour_dark_green h5, .background_colour_dark_green h6 {
  color: #FFFFFF;
}
.background_colour_dark_green h1 strong, .background_colour_dark_green h2 strong, .background_colour_dark_green h3 strong, .background_colour_dark_green h4 strong, .background_colour_dark_green h5 strong, .background_colour_dark_green h6 strong {
  color: #00A98F;
}

.background_colour_core_green {
  background-color: #00A98F;
}
.background_colour_core_green p {
  color: #FFFFFF;
}

.background_colour_pale_green {
  background-color: #A5D7B1;
}
.background_colour_pale_green p {
  color: #03393B;
}

.background_colour_latest_news_green {
  background-color: #dbefe0;
}
.background_colour_latest_news_green h1, .background_colour_latest_news_green h2, .background_colour_latest_news_green h3, .background_colour_latest_news_green h4, .background_colour_latest_news_green h5, .background_colour_latest_news_green h6 {
  color: #FFFFFF;
}
.background_colour_latest_news_green h1 strong, .background_colour_latest_news_green h1 span, .background_colour_latest_news_green h2 strong, .background_colour_latest_news_green h2 span, .background_colour_latest_news_green h3 strong, .background_colour_latest_news_green h3 span, .background_colour_latest_news_green h4 strong, .background_colour_latest_news_green h4 span, .background_colour_latest_news_green h5 strong, .background_colour_latest_news_green h5 span, .background_colour_latest_news_green h6 strong, .background_colour_latest_news_green h6 span {
  color: #00A98F;
}

.background_colour_vivid_green {
  background-color: #39B54A;
}
.background_colour_vivid_green p {
  color: #03393B;
}

.background_colour_citrus_green {
  background-color: #BFD730;
}
.background_colour_citrus_green p {
  color: #03393B;
}

.background_colour_gradient_green {
  position: relative;
  background-color: #ECF9F7;
}
.background_colour_gradient_green .container {
  position: relative;
  z-index: 2;
}
.background_colour_gradient_green p {
  color: #03393B;
}
.background_colour_gradient_green h1, .background_colour_gradient_green h2, .background_colour_gradient_green h3, .background_colour_gradient_green h4, .background_colour_gradient_green h5, .background_colour_gradient_green h6 {
  color: #005757;
}
.background_colour_gradient_green h1 strong, .background_colour_gradient_green h1 span, .background_colour_gradient_green h2 strong, .background_colour_gradient_green h2 span, .background_colour_gradient_green h3 strong, .background_colour_gradient_green h3 span, .background_colour_gradient_green h4 strong, .background_colour_gradient_green h4 span, .background_colour_gradient_green h5 strong, .background_colour_gradient_green h5 span, .background_colour_gradient_green h6 strong, .background_colour_gradient_green h6 span {
  color: #00A98F;
}

.background_colour_light_green {
  background: linear-gradient(0deg, rgba(57, 181, 74, 0.1) 0%, rgba(57, 181, 74, 0.1) 100%), #FFF;
}

.background_colour_grey {
  background: #EAE9E6;
}

.text-colour_white {
  color: #FFFFFF;
}

.text-colour_black {
  color: #03393B;
}

.error-text {
  color: #EB5757;
}

.success-text {
  color: #3FD599;
}

.dark_green {
  color: #005757 !important;
}

.core_green {
  color: #00A98F !important;
}

.pale_green {
  color: #A5D7B1 !important;
}

.vivid_green {
  color: #39B54A !important;
}

.citrus_green {
  color: #BFD730 !important;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Magnific Popup. */
.mfp-fade.mfp-bg {
  opacity: 0;
  transition: 0.4s cubic-bezier(0.51, 0.18, 0, 0.88);
}

.mfp-fade.mfp-bg.mfp-ready {
  opacity: 0.75;
}

.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}

.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  transition: 0.4s cubic-bezier(0.51, 0.18, 0, 0.88);
}

.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}

.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}

.mfp-iframe-holder .mfp-close {
  padding: 0;
  top: -60px;
  right: 0;
}

.mfp-form {
  width: calc(100% - 1.25rem);
  max-width: none;
  padding: 1rem;
  margin: auto;
  position: relative;
  background-color: #FFFFFF;
  border-radius: 0;
}

.mfp-form button.mfp-close {
  top: 0;
  right: 0;
  position: absolute;
  background-color: #00A98F;
  color: #FFFFFF;
  font-size: 32px;
  line-height: 32px;
  opacity: 1;
  width: 50px;
  height: 50px;
  transition: 0.4s cubic-bezier(0.51, 0.18, 0, 0.88);
}

.mfp-form h2 {
  margin: 0rem 0rem 1rem 0rem !important;
}

.mfp-form p:last-of-type {
  margin: 0rem 0rem 3rem 0rem;
}

/* transitions */
/* =========================================================
   APPLY FLOW — STEP ANIMATION (DROPZONE-SAFE)
   ========================================================= */
#step1,
#step2 {
  position: relative;
}

/* Hide Step 2 without display:none and WITHOUT transforms on the step itself */
#application-flow #step2.is-hidden-step {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  opacity: 0;
  pointer-events: none;
}

/* Show Step 2 */
#application-flow #step2.is-visible-step {
  position: static;
  width: auto;
  opacity: 1;
  pointer-events: auto;
}

/* Step 1 hidden state */
#step1.is-hidden-step {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  opacity: 0;
  pointer-events: none;
}

/* Animate ONLY the inner wrapper (not the step container) */
#step1 .step-inner,
#step2 .step-inner {
  transition: opacity 0.35s ease, transform 0.35s ease;
  will-change: opacity, transform;
}

/* Step 1 leaving animation */
#step1.is-leaving .step-inner {
  opacity: 0;
  transform: translateX(-30px);
}

/* Step 2 initial "off" state */
#step2 .step-inner {
  opacity: 0;
  transform: translateX(30px);
}

/* Step 2 active state */
#step2.is-active .step-inner {
  opacity: 1;
  transform: none;
}

/* =========================================================
   STEPPER
   ========================================================= */
.mfp-stepper {
  margin: 0 0 24px;
  position: sticky;
  top: 75px;
  background: #fff;
  padding: 32px 0;
  z-index: 2;
}

.mfp-stepper-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 10px;
  font-weight: 600;
}

.mfp-stepper-label {
  flex: 1;
  text-align: center;
  opacity: 0.55;
}

.mfp-stepper-label.is-active {
  opacity: 1;
}

.mfp-stepper-bar {
  position: relative;
  height: 16px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.1);
  overflow: hidden;
}

.mfp-stepper-fill {
  height: 100%;
  width: 0%;
  background-color: #00A98F;
  transition: width 0.45s ease;
}

.mfp-stepper-meta {
  display: flex;
  justify-content: space-between;
  margin-top: 10px;
  font-weight: 600;
  opacity: 0.8;
}

/* Hide the stepper once complete */
#application-flow .mfp-stepper.is-complete {
  display: none;
}

/* =========================================================
   "SUCCESS" STATE HIDING (optional)
   ========================================================= */
#step1.has-success form .frm_form_fields,
#step1.has-success form .frm_fields_container,
#step1.has-success form fieldset,
#step1.has-success form .frm_submit,
#step1.has-success form .frm_button_submit,
#step1.has-success form .frm_prev_page,
#step2.has-success form .frm_form_fields,
#step2.has-success form .frm_fields_container,
#step2.has-success form fieldset,
#step2.has-success form .frm_submit,
#step2.has-success form .frm_button_submit,
#step2.has-success form .frm_prev_page {
  display: none !important;
}

/* =========================================================
   FORMIDABLE DROPZONE — FORCE ENHANCED UPLOADER
   ========================================================= */
/* Keep fallback input in DOM (do not display:none) */
#application-flow .frm_dropzone .fallback {
  display: block !important;
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Ensure dropzone looks clickable */
#application-flow .frm_dropzone,
#application-flow .frm_dropzone .dz-message {
  cursor: pointer;
}

/* Ensure message area is visible */
#application-flow .frm_dropzone .dz-message {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Some themes hide buttons inside dz-message */
#application-flow .frm_dropzone .dz-message button {
  display: inline-block !important;
  visibility: visible !important;
}

/* Make sure Dropzone can receive drag/drop events */
#application-flow .frm_dropzone {
  pointer-events: auto !important;
  position: relative;
  z-index: 10;
}

/* File name line we inject */
#application-flow .mfp-file-name {
  margin-top: 8px;
  font-weight: 600;
  opacity: 0.9;
  word-break: break-word;
}

#application-flow .mfp-file-name.has-file {
  opacity: 1;
}

/* While dragging files, let drops pass through fixed headers */
#header.drag-pass-through,
#header_pre.drag-pass-through {
  pointer-events: none !important;
}

/* Make sure no section/container overlay pseudo-elements can block drops */
.block_contact_form::before,
.block_contact_form::after,
.block_contact_form .container::before,
.block_contact_form .container::after,
.block_contact_form .row::before,
.block_contact_form .row::after {
  pointer-events: none !important;
}

/* If you have a specific dropzone id, keep it above */
#file18_dropzone {
  position: relative;
  z-index: 50 !important;
}

#application-flow,
#step2,
#frm_form_3_container {
  position: relative;
}

.loadMoreBtn {
  display: inline-flex;
  height: 50px;
  line-height: 150%;
  padding: 8px 20px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  border-radius: 1px;
  overflow: hidden;
  position: relative;
  width: -moz-max-content;
  width: max-content;
  background: #00A98F;
  text-align: center;
  left: 50%;
  transform: translateX(-50%);
  margin-top: 8px;
  transition: all 0.25s ease-in-out;
}
.loadMoreBtn span {
  font-size: 18px;
  line-height: 150%;
  font-weight: 600;
  color: #FFFFFF;
}

.controls .previous, .controls .next {
  width: 48px;
  height: 48px;
  padding: 8px 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #005757;
  border: none;
  transition: all 0.25s ease-in-out;
}
.controls .previous i, .controls .next i {
  color: #FFFFFF;
  font-size: 18px;
  line-height: 18px;
  font-weight: 900;
  font-family: "Font Awesome 6 Sharp";
}
.controls .previous:hover, .controls .next:hover {
  background-color: rgba(0, 87, 87, 0.2);
}
.controls .previous:hover i, .controls .next:hover i {
  color: #005757;
}
.controls .previous.background_colour_vivid_green, .controls .next.background_colour_vivid_green {
  background-color: #39B54A;
}
.controls .previous.background_colour_vivid_green i, .controls .next.background_colour_vivid_green i {
  color: #005757;
}
.controls .previous.background_colour_vivid_green:hover, .controls .next.background_colour_vivid_green:hover {
  background-color: #A5D7B1;
}
.controls .previous.background_colour_white, .controls .next.background_colour_white {
  background-color: #FFFFFF;
}
.controls .previous.background_colour_white i, .controls .next.background_colour_white i {
  color: #005757;
}
.controls .previous.background_colour_white:hover, .controls .next.background_colour_white:hover {
  background-color: #FFFFFF;
  opacity: 0.3;
}
.controls .previous.swiper-button-disabled, .controls .next.swiper-button-disabled {
  pointer-events: none;
  opacity: 0.2;
}
.controls .previous.swiper-button-lock, .controls .next.swiper-button-lock {
  display: none !important;
}
.controls .previous {
  margin-right: 12px;
}

.news-card .image-wrapper {
  padding: 45% 0 0 0;
  overflow: hidden;
}
.news-card .image-wrapper img {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: all 0.25s ease-in-out;
  transition-delay: 0.2s;
}
.news-card .text-wrapper {
  display: flex;
  padding: 24px;
  flex-direction: column;
  align-items: flex-start;
  align-self: stretch;
  clip-path: polygon(100% 0, 100% calc(100% - 40px), calc(100% - 40px) 100%, 0 100%, 0 0);
}
.news-card .text-wrapper h1, .news-card .text-wrapper h2, .news-card .text-wrapper h3, .news-card .text-wrapper h4, .news-card .text-wrapper h5, .news-card .text-wrapper h6 {
  color: #005757;
  font-weight: 600;
}
.news-card .text-wrapper .tags-date-wrapper {
  margin-bottom: 16px;
}
.news-card .text-wrapper .tags-date-wrapper .tags .tag {
  z-index: 2;
  border: none;
  height: 40px;
  background-color: rgba(193, 242, 188, 0.3);
  backdrop-filter: blur(10px);
  color: #00A98F;
  display: inline-flex;
  gap: 6px;
  align-items: center;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  padding: 0px 17px;
  --cut: 8px;
  clip-path: polygon(100% 0, 100% calc(40px - var(--cut)), calc(100% - var(--cut)) 40px, 0 40px, 0 0);
}
.news-card .text-wrapper h6 {
  margin-bottom: 8px !important;
}
.news-card .text-wrapper p {
  color: #03393B;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 24px */
}
.news-card .text-wrapper p.date {
  color: #005757;
}
.news-card .text-wrapper .link_button {
  margin-top: 24px;
  height: 48px;
  padding-top: 0;
  padding-bottom: 0;
}
.news-card:hover .image-wrapper img {
  transform: scale(1.1);
}
.news-card:hover .link_button {
  background-color: #005757;
  border-color: #005757;
  color: #FFFFFF;
  padding-right: 55px;
}
.news-card:hover .link_button .arrow {
  opacity: 1;
  visibility: visible;
  right: 10px;
}
.news-card:hover .link_button .arrow:after {
  color: #FFFFFF !important;
}

.w-100 {
  width: 100%;
}

.h-100 {
  height: 100%;
}

.top-0 {
  top: 0;
}

.bottom-0 {
  bottom: 0;
}

.left-0 {
  left: 0;
}

.right-0 {
  right: 0;
}

.spacer {
  height: 60px;
}

.spacer_mini_global {
  height: 32px;
}

.spacer_mini {
  height: 20px;
}

.spacer_tiny {
  height: 1.25rem;
}

.padding-top {
  padding-top: 60px;
}

.padding-top_mini {
  padding-top: 30px;
}

.padding-top_small {
  padding-top: 60px;
}

.padding-top_large {
  padding-top: 120px;
}

.padding-bottom {
  padding-bottom: 60px;
}

.padding-bottom_mini {
  padding-bottom: 30px;
}

.padding-bottom_small {
  padding-bottom: 60px;
}

.padding-bottom_large {
  padding-bottom: 120px;
}

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

.margin-top_mini {
  margin-top: 30px;
}

.margin-top_small {
  margin-top: 60px;
}

.margin-top_large {
  margin-top: 120px;
}

.margin-bottom {
  margin-bottom: 60px;
}

.margin-bottom_mini {
  margin-bottom: 30px;
}

.margin-bottom_small {
  margin-bottom: 60px;
}

.margin-bottom_large {
  margin-bottom: 120px;
}

.background-colour_white {
  background-color: #FFFFFF;
}

.background-colour_black {
  background-color: #03393B;
}

@media screen and (min-width: 768px) {
  .mfp-form {
    max-width: 1100px;
    padding: 5rem 2rem 2rem 2rem;
  }
  .spacer {
    height: 90px;
  }
  .spacer_mini {
    height: 45px;
  }
  .padding-top {
    padding-top: 90px;
  }
  .padding-top_mini {
    padding-top: 45px;
  }
  .padding-top_large {
    padding-top: 180px;
  }
  .padding-bottom {
    padding-bottom: 90px;
  }
  .padding-bottom_mini {
    padding-bottom: 45px;
  }
  .padding-bottom_large {
    padding-bottom: 180px;
  }
  .margin-top {
    margin-top: 90px;
  }
  .margin-top_mini {
    margin-top: 32px;
  }
  .margin-top_large {
    margin-top: 180px;
  }
  .margin-bottom {
    margin-bottom: 90px;
  }
  .margin-bottom_mini {
    margin-bottom: 32px;
  }
  .margin-bottom_large {
    margin-bottom: 180px;
  }
}
@media screen and (min-width: 1200px) {
  .spacer {
    height: 120px;
  }
  .spacer_mini {
    height: 60px;
  }
  .padding-top {
    padding-top: 120px;
  }
  .padding-top_mini {
    padding-top: 32px;
  }
  .padding-top_large {
    padding-top: 240px;
  }
  .padding-bottom {
    padding-bottom: 120px;
  }
  .padding-bottom_mini {
    padding-bottom: 32px;
  }
  .padding-bottom_large {
    padding-bottom: 240px;
  }
  .margin-top {
    margin-top: 120px;
  }
  .margin-top_mini {
    margin-top: 32px;
  }
  .margin-top_large {
    margin-top: 240px;
  }
  .margin-bottom {
    margin-bottom: 120px;
  }
  .margin-bottom_mini {
    margin-bottom: 32px;
  }
  .margin-bottom_large {
    margin-bottom: 240px;
  }
}
@font-face {
  font-family: "DM Sans";
  src: url("/wp-content/themes/mcavoy/assets/fonts/DMSans-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "DM Sans";
  src: url("/wp-content/themes/mcavoy/assets/fonts/DMSans-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "DM Sans";
  src: url("/wp-content/themes/mcavoy/assets/fonts/DMSans-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
* {
  font-family: "DM Sans";
  font-feature-settings: "ss02" on;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  font-weight: 700;
  font-feature-settings: "ss02" on;
}

strong {
  font-weight: 600;
}

a {
  text-decoration: none;
}

.default-content_text * {
  color: #03393B;
}
.default-content_text *:last-child:not(.ignore) {
  margin-bottom: 0;
}
.default-content_text h1, .default-content_text h2, .default-content_text h3 {
  margin: 2.8125rem 0rem 1.875rem 0rem;
}
.default-content_text h1:first-child, .default-content_text h1:first-of-type, .default-content_text h2:first-child, .default-content_text h2:first-of-type, .default-content_text h3:first-child, .default-content_text h3:first-of-type {
  margin: 0rem 0rem 1.875rem 0rem;
}
.default-content_text h4, .default-content_text h5, .default-content_text h6 {
  margin: 1.875rem 0rem 1.25rem 0rem;
}
.default-content_text h4:first-child, .default-content_text h4:first-of-type, .default-content_text h5:first-child, .default-content_text h5:first-of-type, .default-content_text h6:first-child, .default-content_text h6:first-of-type {
  margin: 0rem 0rem 1.25rem 0rem;
}
.default-content_text ul, .default-content_text ol {
  padding: 0;
  margin: 1rem 0rem 1rem 1.875rem;
}
.default-content_text ul li, .default-content_text ol li {
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 27px */
}
.default-content_text ul li:last-child, .default-content_text ol li:last-child {
  padding: 0;
}
.default-content_text ul {
  list-style: disc;
}
.default-content_text p:not(:last-of-type) {
  margin-bottom: 1.5rem;
}
.default-content_text a:not(.link_button):not(.ignore):not(.loadMoreBtn) {
  text-decoration: underline;
}
.default-content_text.background-colour_black * {
  color: #FFFFFF;
}

h1 {
  font-size: 36px;
  line-height: 115%;
}

h2 {
  font-size: 32px;
  line-height: 100%;
}

h3 {
  font-size: 28px;
  line-height: 130%;
  font-weight: 600;
}

h4 {
  font-size: 26px;
  line-height: 130%;
  font-weight: 500;
}

h5 {
  font-size: 18px;
  line-height: 140%;
}

h6 {
  font-size: 18px;
  line-height: 140%;
}

p {
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  opacity: 0.7;
}
p:not(:last-of-type) {
  margin-bottom: 1.5rem;
}

h1 br, h2 br, h3 br, h4 br, h5 br, h6 br, p br, ol li br, ul li br {
  display: none;
}

@media screen and (min-width: 768px) {
  .default-content_text ul, .default-content_text ol {
    margin: 1rem 0rem 1rem 2.8125rem;
  }
  .default-content_text ul li, .default-content_text ol li {
    font-size: 18px;
  }
  h1 {
    font-size: 46px;
  }
  h2 {
    font-size: 42px;
  }
  h3 {
    font-size: 40px;
  }
  h4 {
    font-size: 28px;
  }
  h5 {
    font-size: 24px;
  }
  p, ol li, ul li {
    font-size: 18px;
  }
  h1 br, h2 br, h3 br, h4 br, h5 br, h6 br, p br, ol li br, ul li br {
    display: block;
  }
}
@media screen and (min-width: 992px) {
  h1 {
    font-size: 56px;
    line-height: 120%;
  }
  h2 {
    font-size: 48px;
  }
  h4 {
    font-size: 32px;
    line-height: 130%;
  }
}
.link_button-group {
  display: flex;
  flex-direction: column;
}
.link_button-group div[class^=col-] {
  margin-bottom: 1.5rem;
}
.link_button-group div[class^=col-]:last-of-type {
  margin-bottom: 0;
}

.link_button {
  display: inline-flex;
  height: 50px;
  font-size: 16px;
  line-height: 150%;
  padding: 8px 20px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  font-weight: 600;
  color: #FFFFFF;
  border-radius: 1px;
  transition: all 0.25s ease-in-out;
  overflow: hidden;
  position: relative;
  width: -moz-max-content;
  width: max-content;
}
.link_button .arrow {
  width: 30px;
  height: 30px;
  position: absolute;
  right: -20px;
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  visibility: hidden;
  transition: all 0.25s ease-in-out;
}
.link_button .arrow:after {
  content: "\f061";
  font-family: "Font Awesome 6 Sharp";
  font-weight: 400;
  font-size: 18px;
  position: relative;
}
.link_button:not(.ignore) {
  margin-top: 1.5rem;
}
.link_button.background_colour_white {
  background-color: #FFFFFF;
  color: #005757;
}
.link_button.background_colour_white span {
  color: #005757;
}
.link_button.background_colour_white .arrow:after {
  color: #005757;
}
.link_button.background_colour_white.outline {
  border: 1px solid rgba(0, 87, 87, 0.3);
}
.link_button.background_colour_black {
  background-color: #03393B;
  color: #FFFFFF;
}
.link_button.background_colour_black span {
  color: #FFFFFF;
}
.link_button.background_colour_black .arrow:after {
  color: #FFFFFF;
}
.link_button.background_colour_citrus_green {
  color: #005757;
}
.link_button.background_colour_citrus_green span {
  color: #005757;
}
.link_button.background_colour_citrus_green .arrow:after {
  color: #005757;
}
.link_button.background_colour_core_green {
  color: #FFFFFF;
}
.link_button.background_colour_core_green span {
  color: #FFFFFF;
}
.link_button.background_colour_core_green .arrow:after {
  color: #FFFFFF;
}
.link_button.background_colour_dark_green {
  color: #FFFFFF;
}
.link_button.background_colour_dark_green span {
  color: #FFFFFF;
}
.link_button.background_colour_dark_green .arrow:after {
  color: #FFFFFF;
}
.link_button.outline {
  border: 1px solid rgba(0, 87, 87, 0.3);
  color: #005757;
}
.link_button.outline .arrow:after {
  color: #005757;
}

@media screen and (min-width: 576px) {
  .link_button-group {
    flex-direction: row;
  }
  .link_button-group div[class^=col-] {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 768px) {
  .link_button {
    font-size: 18px;
  }
}
@media screen and (min-width: 992px) {
  .link_button:hover {
    padding-right: 55px;
  }
  .link_button:hover .arrow {
    right: 10px;
    opacity: 1;
    visibility: visible;
  }
}
.frm_forms form .frm_form_fields fieldset {
  padding: 0;
  margin: 0;
  background-color: transparent;
  border: none;
  border-radius: 0;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-auto-rows: max-content;
  grid-gap: 24px;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field {
  margin: 0;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field .frm_primary_label {
  padding: 0;
  margin: 0rem 0.3125rem 0rem 0rem;
  text-align: left;
  color: #03393B;
  font-feature-settings: "ss02" on;
  font-family: "DM Sans", sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  margin-bottom: 8px;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field .frm_primary_label .frm_required {
  left: -3px;
  position: relative;
  font-weight: 600;
  color: #03393B;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field input[type=text], .frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field input[type=email], .frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field input[type=tel], .frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field select, .frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field textarea {
  width: 100%;
  height: 48px;
  padding: 0px 12px 0px 12px;
  margin: 0;
  background-color: #F2F7F7 !important;
  border: 1px solid rgba(82, 119, 114, 0.2) !important;
  border-radius: 0;
  outline: none;
  box-shadow: none;
  color: #03393B !important;
  font-size: 18px;
  font-weight: 400;
  line-height: 150%;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field input[type=text]::-moz-placeholder, .frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field input[type=email]::-moz-placeholder, .frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field input[type=tel]::-moz-placeholder, .frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field select::-moz-placeholder, .frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field textarea::-moz-placeholder {
  color: #527772;
  font-size: 18px;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field input[type=text]::placeholder, .frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field input[type=email]::placeholder, .frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field input[type=tel]::placeholder, .frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field select::placeholder, .frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field textarea::placeholder {
  color: #527772;
  font-size: 18px;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field input[type=checkbox] {
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  padding: 0;
  margin: 0;
  position: relative;
  background-color: #f2f7f7 !important;
  border: 1px solid #005757;
  border-radius: 0 !important;
  outline: none;
  box-shadow: none;
  color: #03393B;
  font-size: 12px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field select {
  background: url("../images/select_arrow_dark.svg") calc(100% - 12px) 12px/24px no-repeat;
  background-color: #F2F7F7 !important;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field select .frm-select-placeholder {
  color: #527772 !important;
  font-size: 18px !important;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field select option {
  color: #03393B;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field textarea {
  height: 180px;
  padding: 12px;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field .frm_opt_container .frm_checkbox:not(:last-of-type) {
  margin-bottom: 20px !important;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field .frm_opt_container .frm_checkbox:last-of-type {
  margin-bottom: 0 !important;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field .frm_opt_container .frm_checkbox label {
  padding: 0px 0px 0px 22px;
  color: #03393B;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  text-indent: -20px;
  cursor: pointer;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field .frm_opt_container .frm_checkbox label a {
  text-decoration: underline;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field .frm_opt_container .frm_checkbox label input {
  top: -1px;
  left: -2px;
  cursor: pointer;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field .frm_opt_container .frm_checkbox input[type=checkbox]:not([disabled]):checked {
  background-color: #005757 !important;
  border-color: #005757 !important;
  box-shadow: none !important;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field .frm_opt_container .frm_checkbox input[type=checkbox]:focus {
  box-shadow: none !important;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field .frm_error {
  padding: 0;
  margin: 0;
  color: #EB5757;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field ::-webkit-input-placeholder {
  color: rgb(71.3387096774, 239.435483871, 245.6612903226);
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field :-moz-placeholder {
  color: rgb(71.3387096774, 239.435483871, 245.6612903226);
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field ::-moz-placeholder {
  color: rgb(71.3387096774, 239.435483871, 245.6612903226);
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field :-ms-input-placeholder {
  color: rgb(71.3387096774, 239.435483871, 245.6612903226);
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_submit {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_submit .frm_button_submit {
  margin: 0;
  border: none;
  border-bottom: none !important;
  outline: none;
  box-shadow: none;
  display: inline-flex !important;
  min-height: 48px !important;
  font-size: 18px !important;
  line-height: 150% !important;
  padding: 8px 20px !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px;
  font-weight: 600 !important;
  color: #FFFFFF !important;
  border-radius: 1px !important;
  background-color: #005757 !important;
  transition: all 0.25s ease-in-out;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_submit .frm_button_submit .arrow {
  color: #FFFFFF;
}
.frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_submit .frm_button_submit:hover {
  padding-right: 55px !important;
}

.frm_dropzone {
  max-width: unset !important;
}
.frm_dropzone .mfp-file-name {
  display: none !important;
}
.frm_dropzone .dz-preview {
  margin-top: 10px;
  border-radius: 0 !important;
}
.frm_dropzone .dz-preview.dz-complete .dz-progress {
  background: #005757 !important;
}
.frm_dropzone .frm_small_text {
  display: none !important;
}
.frm_dropzone .dz-message {
  padding-top: 50px !important;
  padding-bottom: 50px !important;
  clip-path: polygon(100% 0, 100% calc(100% - 40px), calc(100% - 40px) 100%, 0 100%, 0 0) !important;
  background-color: #ECF9F7 !important;
  border: none !important;
  border-radius: 0 !important;
}
.frm_dropzone .dz-message button {
  font-size: 16px !important;
}

.frm_hidden,
.frm_hidden_container {
  display: none !important;
}

.frm_error_style {
  padding: 0;
  margin: 0px 0px 30px 0px !important;
  background-color: rgba(246, 185, 170, 0.2) !important;
  border: 1px solid #EB5757 !important;
  border-radius: 0 !important;
  outline: none;
  box-shadow: none;
  color: #EB5757 !important;
  font-size: 16px !important;
}

.frm_success_style, .frm_message {
  border-radius: 0 !important;
  margin-top: 0px !important;
  background: none !important;
  border: none !important;
  color: #005757 !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  padding: 0 !important;
}
.frm_success_style p, .frm_message p {
  color: #005757 !important;
  font-size: 18px;
  font-weight: 600 !important;
  line-height: 140% !important;
}
.frm_success_style:before, .frm_message:before {
  width: 48px;
  height: 48px;
  background-color: #A5D7B1;
  content: "\f00c";
  font-size: 20px;
  color: #005757;
  position: relative;
  font-family: "Font Awesome 5 Pro";
  display: flex;
  align-items: center;
  justify-content: center;
  left: 50%;
  transform: translateX(-50%);
  margin-bottom: 24px;
}

.form-field input:focus, .form-field select:focus, .form-field textarea:focus {
  box-shadow: none !important;
  border-color: rgba(0, 169, 143, 0.34) !important;
}

/* Hide Form #2's success/confirmation message so it never flashes */
#frm_form_2_container .frm_message,
#frm_form_2_container .frm_error_style,
#frm_form_2_container .frm_success_style {
  display: none !important;
}

@media screen and (min-width: 768px) {
  .frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_submit {
    justify-content: flex-end;
  }
  .frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field .frm_primary_label {
    font-size: 18px;
  }
  .frm_forms form .frm_form_fields fieldset .frm_fields_container .frm_form_field .frm_opt_container .frm_checkbox label {
    font-size: 18px;
  }
  #form_contact-form #frm_field_11_container {
    padding-right: 110px;
  }
  #form_contact-form #frm_field_6_container {
    position: absolute;
    bottom: 40px;
    right: 56px;
  }
  .frm_success_style p, .frm_message p {
    font-size: 24px;
  }
}
.mf-cursor {
  z-index: 97;
}
.mf-cursor .mf-cursor-inner .mf-cursor-text {
  width: 60px;
  height: 60px;
  top: -30px;
  left: -30px;
  transform: scale(0) rotate(-30deg);
  color: #03393B;
  transition: transform 0.3s cubic-bezier(0.51, 0.18, 0, 0.88), opacity 0.3s cubic-bezier(0.51, 0.18, 0, 0.88);
}
.mf-cursor .mf-cursor-inner .mf-cursor-media {
  width: 360px;
  height: 360px;
  margin: -180px 0px 0px -180px;
}
.mf-cursor .mf-cursor-inner .mf-cursor-media .mf-cursor-media-box {
  width: 100%;
  height: 100%;
  padding: 0;
  transform: translateZ(0) scale(0) rotate(-15deg);
  border-radius: 100%;
  transition: transform 0.3s, opacity 0.15s 0.15s;
}
.mf-cursor:before {
  width: 60px;
  height: 60px;
  top: -30px;
  left: -30px;
  transform: scale(0.3);
  background-color: rgb(4.7274193548, 89.8209677419, 92.9725806452);
  border-radius: 100%;
  opacity: 1;
  transition: transform 0.3s cubic-bezier(0.51, 0.18, 0, 0.88), opacity 0.3s cubic-bezier(0.51, 0.18, 0, 0.88);
}
.mf-cursor.-pointer:before {
  transform: scale(0.15);
  opacity: 1;
}
.mf-cursor.-pointer.-text:before {
  transform: scale(2);
  opacity: 1;
}
.mf-cursor.-pointer.-text .mf-cursor-inner .mf-cursor-text {
  transform: scale(1) rotate(0deg);
}
.mf-cursor.-pointer.-media .mf-cursor-inner .mf-cursor-media .mf-cursor-media-box {
  transform: translateZ(0) scale(1) rotate(0deg);
  transition-duration: 0.45s, 0.45s;
  transition-delay: 0s, 0s;
}
.mf-cursor.-hidden:before {
  transform: scale(0.3);
  opacity: 0;
}

.html.lenis {
  height: auto;
}
.html.lenis .body {
  height: auto;
}
.html.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}
.html.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}
.html.lenis.lenis-stopped {
  overflow: hidden;
}
.html.lenis.lenis-scrolling iframe {
  pointer-events: none;
}

.cky-consent-container .cky-consent-bar {
  border-radius: 0 !important;
}
.cky-consent-container .cky-consent-bar .cky-notice-des a {
  color: #005757 !important;
  text-decoration: underline !important;
}

.cky-btn-customize, .cky-btn-reject {
  color: #005757 !important;
  border: 2px solid #005757 !important;
}

.cky-consent-container {
  background-color: #000000 !important;
}

.cky-btn-accept {
  background-color: #005757 !important;
  color: #ffffff !important;
  border-color: #005757 !important;
}

.cky-btn-preferences {
  border-color: #005757 !important;
  color: #005757 !important;
}

.cky-preference-content-wrapper .cky-show-desc-btn {
  color: #005757 !important;
}

.cky-modal {
  border-radius: 0 !important;
}

.cky-audit-table .cky-cookie-des-table li {
  font-size: 16px !important;
  line-height: 22px !important;
}

.cky-btn-revisit-wrapper {
  background: #005757 !important;
}

/* While dragging files, let the page underneath receive the drop */
#mega-and-mobile-underlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.65);
  opacity: 0;
  pointer-events: none;
  transition: all 0.5s cubic-bezier(0.82, 0.15, 0.15, 0.91);
  z-index: 8;
}
#mega-and-mobile-underlay.is-active {
  opacity: 1;
  pointer-events: auto;
}

.mega-menu {
  position: relative;
  z-index: 999;
}

.mega-menu-custom {
  width: 100%;
  padding: 35px 0 0 0;
  top: 120px;
  z-index: 92;
  background: linear-gradient(0deg, #F2FBF9 0%, #F2FBF9 100%), #FFF;
  position: fixed;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-1000px);
  transition: all 0.3s ease-in-out;
  bottom: 0;
  display: flex;
  flex-direction: column;
}
.mega-menu-custom.no-image-active {
  bottom: auto;
}
.mega-menu-custom.no-image-active .mega-menu-images {
  display: none;
}
.mega-menu-custom.move-up {
  top: 80px;
}
.mega-menu-custom.is-active {
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
  pointer-events: all;
}
.mega-menu-custom a {
  margin-bottom: 40px;
}
.mega-menu-custom a .title {
  width: -moz-fit-content;
  width: fit-content;
  color: #005757;
  font-size: 20px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  position: relative;
  transition: all 0.25s ease-in-out;
}
.mega-menu-custom a .title:after {
  content: "";
  position: absolute;
  display: block;
  left: 0;
  bottom: 5px;
  background-color: #005757;
  width: 100%;
  height: 1px;
  transition: all 0.25s ease-in-out;
}
.mega-menu-custom a .description {
  color: #005757;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  opacity: 0.7;
  max-width: 285px;
}
.mega-menu-custom a .arrow {
  width: 48px;
  height: 48px;
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: all 0.25s ease-in-out;
}
.mega-menu-custom a .arrow i {
  color: #FFFFFF;
}
.mega-menu-custom a:hover .title {
  text-shadow: 0px 0px 1px #005757;
}
.mega-menu-custom a:hover .arrow {
  opacity: 1;
}

.mega-link.is-current-page {
  font-weight: 600;
}

.mega-link.is-current-page .arrow {
  opacity: 1;
}

.mega-link.is-current-page .title {
  text-shadow: 0px 0px 1px #005757;
}

.mega-menu-images {
  position: relative;
  flex: 1;
  overflow: hidden;
}

.mega-image {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease-in-out;
}
.mega-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.mega-image.is-active {
  opacity: 1;
  pointer-events: auto;
}

.mobile-navigation {
  width: 100%;
  height: 100vh;
  top: 0;
  right: 0;
  transform: translateX(100%);
  opacity: 0;
  visibility: hidden;
  z-index: 9;
  transition: 0.6s cubic-bezier(0.2, 0.6, 0.3, 1);
  will-change: transform, opacity, visibility;
  overscroll-behavior: contain;
  -ms-overflow-style: none;
  scrollbar-width: none;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.mobile-navigation.is-active {
  transform: translateX(0);
  opacity: 1;
  visibility: visible;
}
.mobile-navigation nav {
  padding: 140px 24px 155px 0;
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  height: 100%;
  /* Hide scrollbar (Firefox) */
  scrollbar-width: none;
  /* Hide scrollbar (IE/Edge legacy) */
  -ms-overflow-style: none;
  /* Hide scrollbar (Chrome, Safari, iOS) */
}
.mobile-navigation nav::-webkit-scrollbar {
  display: none;
}
.mobile-navigation nav ul {
  margin: 0;
  list-style: none;
}
.mobile-navigation nav ul li {
  padding: 0;
  margin: 0 0 32px 0;
}
.mobile-navigation nav ul li.back {
  margin-bottom: 40px;
  font-weight: 600;
  left: -14px;
  position: relative;
}
.mobile-navigation nav ul li.back a {
  color: #BFD730;
  font-size: 20px;
  display: flex;
  align-items: center;
}
.mobile-navigation nav ul li.menu-item-has-children > a, .mobile-navigation nav ul li.menu-item-has-children > button {
  position: relative;
}
.mobile-navigation nav ul li.menu-item-has-children > a:after, .mobile-navigation nav ul li.menu-item-has-children > button:after {
  width: 10px !important;
  height: 10px !important;
  top: 50% !important;
  left: auto !important;
  right: 10px !important;
  transform: translateY(-50%) rotate(45deg) !important;
  position: absolute;
  display: block;
  background-color: transparent !important;
  border-top: 2px solid;
  border-right: 2px solid;
  content: "";
}
.mobile-navigation nav ul li.current-menu-item a, .mobile-navigation nav ul li.current-menu-item button {
  color: #BFD730;
  text-decoration: underline;
}
.mobile-navigation nav ul li a, .mobile-navigation nav ul li button {
  width: 100%;
  display: block;
  color: #FFFFFF;
  font-family: "DM Sans", sans-serif;
  font-size: 18px;
  font-style: normal;
  line-height: 95%;
  text-decoration: none !important;
  background: none;
  border: none;
  text-align: left;
}
.mobile-navigation nav ul li ul {
  width: 100%;
  height: 100vh;
  padding: 140px 32px 60px 32px;
  top: 0;
  left: 0;
  transform: translateX(100%);
  position: absolute;
  background-color: #005757;
  opacity: 0;
  visibility: hidden;
  z-index: 1;
  transition: 0.3s cubic-bezier(0.2, 0.6, 0.3, 1);
  will-change: transform, opacity, visibility;
}
.mobile-navigation nav ul li ul.is-active {
  transform: translateX(0);
  opacity: 1;
  visibility: visible;
}
.mobile-navigation .link_button {
  margin-top: 3rem;
  background: #BFD730;
  color: #005757;
  font-weight: 800;
  font-size: 16px;
}
.mobile-navigation .link_button .arrow:after {
  color: #005757;
}
.mobile-navigation > .container-fluid {
  flex: 1 1 auto;
  min-height: 0; /* critical */
  overflow: hidden; /* contain scroll area */
}

/* make the bootstrap wrappers fill the available height */
.mobile-navigation > .container-fluid,
.mobile-navigation > .container-fluid > .container,
.mobile-navigation > .container-fluid > .container > .row,
.mobile-navigation > .container-fluid > .container > .row > .col-12 {
  height: 100%;
  min-height: 0;
}

.navigation {
  z-index: 94;
}

.header_pre {
  transition: transform 0.3s ease-in-out;
}
.header_pre.is-hidden {
  transform: translateY(-100%);
}
.header_pre .container {
  max-width: 1320px;
}

.header {
  width: 100%;
  height: 80px;
  top: 0px;
  left: 0;
  transform: translateY(0);
  z-index: 99;
  border-bottom: 1px solid rgba(218, 214, 205, 0.3);
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(8px);
  transition: transform 0.3s ease-in-out;
}
.header.move-up {
  transform: translateY(-40px);
}
.header .header_navigation {
  height: 100%;
}
.header .header_navigation .row {
  height: 100%;
}
.header .container {
  max-width: 1320px;
}
.header .hamburger_container {
  padding: 0;
  background-color: rgba(255, 255, 255, 0);
  border: none;
  cursor: pointer;
}
.header .hamburger_container.is-active .hamburger_wrapper .hamburger .bun.top {
  width: 28px;
  transform: translateX(3.5px) rotate(-135deg);
}
.header .hamburger_container.is-active .hamburger_wrapper .hamburger .bun.bottom {
  width: 28px;
  transform: translateX(3.5px) rotate(135deg);
}
.header .hamburger_container .hamburger_wrapper {
  width: 35px;
  height: 35px;
}
.header .hamburger_container .hamburger_wrapper .hamburger {
  width: 100%;
  height: 100%;
}
.header .hamburger_container .hamburger_wrapper .hamburger .bun {
  width: 100%;
  height: 2px;
  margin: auto;
  top: 0;
  left: 0;
  bottom: 0;
  background-color: #FFFFFF;
  transition: 0.3s width cubic-bezier(0.2, 0.6, 0.3, 1), transform 0.3s cubic-bezier(0.2, 0.6, 0.3, 1);
  will-change: width, transform;
}
.header .hamburger_container .hamburger_wrapper .hamburger .bun.top {
  transform: translateY(-5.5px);
}
.header .hamburger_container .hamburger_wrapper .hamburger .bun.bottom {
  transform: translateY(5.5px);
}
.header .company-logo {
  z-index: 2;
}
.header .company-logo img {
  transition: all 0.25s ease-in-out;
}
.header .company-logo .logo--default {
  display: block;
}
.header .company-logo .logo--invert {
  display: none;
}
.header nav {
  width: 100%;
  height: 100%;
}
.header nav > div {
  height: 100%;
}
.header nav ul {
  display: flex;
  justify-content: flex-end;
  height: 100%;
}
.header nav ul li {
  height: 100%;
  list-style: none;
  margin: 0 12px;
  display: flex;
  align-items: center;
}
.header nav ul li.active a, .header nav ul li.active button {
  font-family: "DM Sans", sans-serif;
}
.header nav ul li.active a svg, .header nav ul li.active button svg {
  transform: translateY(-50%) scaleY(-1);
}
.header nav ul li:first-of-type {
  margin: 0 12px 0 0;
}
.header nav ul li:last-of-type {
  margin: 0 0 0 12px;
}
.header nav ul li.current-menu-item a, .header nav ul li.current-menu-item button {
  color: #00A98F !important;
}
.header nav ul li.menu-item-has-children {
  position: relative;
}
.header nav ul li.menu-item-has-children:before {
  content: "\f078";
  font-family: "Font Awesome 5 Pro";
  font-weight: 400;
  display: block;
  position: absolute;
  width: 12px;
  height: 8px;
  font-size: 12px;
  color: #FFFFFF;
  right: 4px;
  top: 48%;
  transform: translateY(-50%);
}
.header nav ul li.menu-item-has-children > a, .header nav ul li.menu-item-has-children > button {
  padding: 0rem 1.5rem 0rem 0rem;
}
.header nav ul li.menu-item-has-children.is-active a, .header nav ul li.menu-item-has-children.is-active button {
  color: #00A98F;
}
.header nav ul li.menu-item-has-children.is-active:before {
  transform: translateY(10%) scaleY(-1);
  color: #00A98F;
}
.header nav ul li:hover:before {
  color: #00A98F !important;
}
.header nav ul li a, .header nav ul li button {
  background: none;
  border: none;
  height: 100%;
  color: #FFFFFF;
  font-size: 18px;
  line-height: 150%;
  position: relative;
  font-weight: 500;
  display: flex;
  align-items: center;
  transition: all 0.25s ease-in-out;
}
.header nav ul li a:hover, .header nav ul li button:hover {
  color: #00A98F !important;
}
.header nav ul li .sub-menu {
  display: none;
}
.header .link_button {
  border: 1px solid #FFFFFF;
  min-width: -moz-fit-content;
  min-width: fit-content;
  margin-left: 45px;
  margin-top: 0;
  height: 43px;
  display: none;
}
.header .link_button:hover {
  background-color: #00A98F;
  border-color: #00A98F;
}

.scrolled-100vh, .invert {
  background-color: #FFFFFF !important;
  border-bottom: 1px solid rgba(5, 81, 83, 0.2) !important;
}
.scrolled-100vh .company-logo .logo--default, .invert .company-logo .logo--default {
  display: none;
}
.scrolled-100vh .company-logo .logo--invert, .invert .company-logo .logo--invert {
  display: block;
}
.scrolled-100vh nav ul li a, .scrolled-100vh nav ul li button, .invert nav ul li a, .invert nav ul li button {
  color: #005757 !important;
}
.scrolled-100vh nav ul li.menu-item-has-children:before, .invert nav ul li.menu-item-has-children:before {
  color: #005757 !important;
}
.scrolled-100vh nav ul li.menu-item-has-children:hover:before, .invert nav ul li.menu-item-has-children:hover:before {
  color: #00A98F !important;
}
.scrolled-100vh nav ul li.is-active a, .scrolled-100vh nav ul li.is-active button, .invert nav ul li.is-active a, .invert nav ul li.is-active button {
  color: #00A98F !important;
}
.scrolled-100vh nav ul li.is-active:before, .invert nav ul li.is-active:before {
  color: #00A98F !important;
}
.scrolled-100vh .link_button, .invert .link_button {
  border: none;
  background-color: #005757;
}
.scrolled-100vh .hamburger_container .hamburger_wrapper .hamburger .bun, .invert .hamburger_container .hamburger_wrapper .hamburger .bun {
  background-color: #005757 !important;
}

@media screen and (min-width: 576px) {
  .header .link_button {
    display: inline-flex;
  }
}
@media screen and (min-width: 768px) {
  .header {
    top: 40px;
  }
  .mobile-navigation {
    width: 50vw;
  }
  .mobile-navigation nav {
    padding-top: 185px;
  }
  .mobile-navigation nav ul li ul {
    padding-top: 185px;
  }
  .mobile-navigation .link_button {
    font-size: 18px;
  }
  .header_pre {
    width: 100%;
    height: 40px;
    top: 0;
    left: 0;
    transform: translateY(0);
    z-index: 99;
    border-bottom: 1px solid rgba(218, 214, 205, 0.3);
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(8px);
  }
  .header_pre .header_pre_navigation {
    height: 100%;
  }
  .header_pre .header_pre_navigation .row {
    height: 100%;
  }
  .header_pre nav ul {
    display: flex;
  }
  .header_pre nav ul li {
    list-style: none;
    margin: 0 16px;
  }
  .header_pre nav ul li:first-of-type {
    margin: 0 16px 0 0;
  }
  .header_pre nav ul li:last-of-type {
    margin: 0 0 0 16px;
  }
  .header_pre nav ul li.current-menu-item a {
    color: #00A98F !important;
  }
  .header_pre nav ul li a {
    position: relative;
    color: #FFFFFF;
    font-family: "DM Sans", sans-serif;
    font-size: 16px;
    line-height: 150%;
    transition: 0.3s cubic-bezier(0.51, 0.18, 0, 0.88);
    font-weight: 500;
    transition: all 0.25s ease-in-out;
  }
  .header_pre nav ul li a:hover {
    color: #00A98F !important;
  }
}
@media screen and (max-width: 1330px) {
  .header nav ul li a, .header nav ul li button {
    font-size: 16px;
  }
  .header .link_button {
    margin-left: 25px;
  }
}
.block .container {
  z-index: 2;
}

.breadcrumbs__list {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
  padding: 0 !important;
  margin: 0 !important;
}

.breadcrumbs p {
  width: -moz-fit-content;
  width: fit-content;
  display: inline-block;
  margin: 0 !important;
}
.breadcrumbs a {
  font-size: 18px;
  text-decoration: none !important;
  transition: all 0.25s ease-in-out;
}
.breadcrumbs a:hover {
  opacity: 0.5;
}

.breadcrumbs-wrapper {
  top: 210px;
  z-index: 9;
}
.breadcrumbs-wrapper .container {
  z-index: 9;
}
.breadcrumbs-wrapper .container * {
  color: #FFFFFF;
  opacity: 1;
}
.breadcrumbs-wrapper p {
  width: -moz-fit-content;
  width: fit-content;
  display: inline-block;
}
.breadcrumbs-wrapper.breadcrumbs--plain .container * {
  color: #005757;
}

.post_banner {
  padding-bottom: 80px;
}
.post_banner.news * {
  padding-right: 0;
}
.post_banner.news p {
  padding-right: 90px;
}
.post_banner .container {
  z-index: 3;
}
.post_banner .breadcrumbs a {
  color: #005757;
  font-size: 18px;
  line-height: 150%;
  opacity: 0.7;
  transition: all 0.25s ease-in-out;
}
.post_banner .breadcrumbs a.tag {
  height: 40px;
  margin-left: 15px;
  backdrop-filter: blur(75px);
  color: #00A98F;
  padding: 4px 12px;
  opacity: 1;
  --cut: 8px;
  clip-path: polygon(100% 0, 100% calc(40px - var(--cut)), calc(100% - var(--cut)) 40px, 0 40px, 0 0);
  background-color: #ecfceb;
}
.post_banner .breadcrumbs a:hover {
  opacity: 1;
}
.post_banner .breadcrumbs span {
  opacity: 0.7;
}
.post_banner .introduction {
  z-index: 2;
}
.post_banner .introduction * {
  opacity: 1;
}
.post_banner .introduction h1, .post_banner .introduction h2, .post_banner .introduction h3, .post_banner .introduction h4, .post_banner .introduction h5, .post_banner .introduction h6 {
  font-weight: 750;
}
.post_banner .introduction h1, .post_banner .introduction h2, .post_banner .introduction h3, .post_banner .introduction h4, .post_banner .introduction h5, .post_banner .introduction h6, .post_banner .introduction p, .post_banner .introduction ol li, .post_banner .introduction ul li, .post_banner .introduction a:not(.link_button) {
  color: #005757;
}

.block_banner p {
  margin-bottom: 2rem;
  opacity: 1;
  font-size: 18px;
}
.block_banner.large_banner {
  height: calc(100vh - 115px);
}
.block_banner.large_banner .container {
  height: 100%;
  z-index: 2;
}
.block_banner.large_banner .container * {
  color: #FFFFFF;
}
.block_banner.large_banner .shape-wrapper {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.block_banner.large_banner .shape-wrapper video, .block_banner.large_banner .shape-wrapper img, .block_banner.large_banner .shape-wrapper .overlay {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.block_banner.large_banner .shape-wrapper .overlay {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 100%);
}
.block_banner.large_banner .text-wrapper {
  padding: 0 0 48px 0;
  max-width: 272px;
}
.block_banner.large_banner .text-wrapper * {
  color: #03393B;
}
.block_banner.large_banner .play-button {
  display: inline-flex;
  align-items: center;
  z-index: 2;
  height: 48px;
  padding: 16px;
  background-color: #BFD730;
  text-decoration: none !important;
  transition: background-color 0.25s ease-in-out;
}
.block_banner.large_banner .play-button span {
  font-weight: 600;
  font-size: 18px;
  color: #005757;
  white-space: nowrap;
  opacity: 0;
  transform: translateX(-8px);
  margin-left: 0;
  max-width: 0;
  overflow: hidden;
  transition: opacity 0.2s ease, transform 0.35s ease, margin-left 0.35s ease, max-width 0.35s ease;
}
.block_banner.large_banner .play-button svg {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  transition: transform 0.35s ease;
}
.block_banner.large_banner .triangle {
  bottom: -2px;
  right: -1px;
  width: 180px;
  height: 180px;
}
.block_banner.small_banner {
  min-height: 420px;
  margin-top: 80px;
}
.block_banner.small_banner * {
  color: #FFFFFF;
}
.block_banner.small_banner .container {
  position: relative;
  z-index: 3;
  height: 100%;
  padding-top: 40px;
  padding-bottom: 40px;
}
.block_banner.small_banner #breadcrumbs * {
  color: #FFFFFF;
}
.block_banner.small_banner .modular-children .link_button {
  margin-top: 1rem;
  padding-right: 32px;
  font-weight: 400;
  --cut: 12px;
  clip-path: polygon(100% 0, 100% calc(50px - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 0);
}
.block_banner.small_banner .modular-children .link_button:hover {
  background-color: #BFD730;
  color: #005757;
}
.block_banner.small_banner .modular-children .link_button:hover .link-off:after {
  color: #005757;
}
.block_banner.small_banner .modular-children .link_button:not(:last-of-type) {
  margin-right: 20px;
}
.block_banner.small_banner .modular-children .link_button .link-off {
  right: -12px;
  opacity: 1;
  visibility: visible;
  position: relative;
  transition: all 0.25s ease-in-out;
}
.block_banner.small_banner .modular-children .link_button .link-off:after {
  content: "\f08e";
  font-family: "Font Awesome 6 Sharp";
  font-weight: 400;
  font-size: 18px;
  position: relative;
  color: #BFD730;
}
.block_banner.small_banner p {
  opacity: 1;
  max-width: 511px;
}
.block_banner.small_banner .shape-wrapper {
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  clip-path: polygon(0 0, 100% 0, 100% 60%, 92% 88%, 80% 100%, 0 100%);
}
.block_banner.small_banner .shape-wrapper video, .block_banner.small_banner .shape-wrapper img, .block_banner.small_banner .shape-wrapper .overlay {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.block_banner.small_banner .shape-wrapper .overlay {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%);
}

.block_modular_solutions.has-hexagon {
  padding-top: 165px;
}
.block_modular_solutions.background_colour_dark_green .introduction h1 strong, .block_modular_solutions.background_colour_dark_green .introduction h2 strong, .block_modular_solutions.background_colour_dark_green .introduction h3 strong, .block_modular_solutions.background_colour_dark_green .introduction h4 strong, .block_modular_solutions.background_colour_dark_green .introduction h5 strong, .block_modular_solutions.background_colour_dark_green .introduction h6 strong {
  color: #BFD730;
}
.block_modular_solutions.background_colour_dark_green .solutions .solution * {
  color: #005757;
}
.block_modular_solutions .hexagon {
  top: -210px;
  left: 0;
  z-index: 2;
}
.block_modular_solutions .solutions {
  margin-top: 32px;
}
.block_modular_solutions .solutions .solution {
  padding: 55px 24px 0 24px;
  clip-path: polygon(100% 0, 100% calc(100% - 80px), calc(100% - 80px) 100%, 0 100%, 0 0);
}
.block_modular_solutions .solutions .solution h1, .block_modular_solutions .solutions .solution h2, .block_modular_solutions .solutions .solution h3, .block_modular_solutions .solutions .solution h4, .block_modular_solutions .solutions .solution h5, .block_modular_solutions .solutions .solution h6 {
  font-weight: 500;
  font-size: 26px;
  margin-bottom: 0.688rem;
}
.block_modular_solutions .solutions .solution img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  width: 608.196px;
  height: 320.81px;
  aspect-ratio: 608.2/320.81;
  transition: all 0.25s ease-in-out;
}
.block_modular_solutions .solutions .solution .shape {
  bottom: 20px;
  transition: all 0.25s ease-in-out;
}
.block_modular_solutions .solutions .solution .arrow {
  display: flex;
  width: 64px;
  height: 64px;
  padding: 16px;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1/1;
  position: absolute;
  top: 0;
  right: 0;
  opacity: 0;
  transition: all 0.25s ease-in-out;
}
.block_modular_solutions .solutions .solution .arrow i {
  font-size: 24px;
}
.block_modular_solutions .solutions .solution:hover img {
  z-index: 2;
  transform: scale(1.1);
}
.block_modular_solutions .solutions .solution:hover .shape {
  z-index: 1;
}
.block_modular_solutions .solutions .solution:hover .arrow {
  opacity: 1;
}

.block_statistics .introduction h1, .block_statistics .introduction h2, .block_statistics .introduction h3, .block_statistics .introduction h4, .block_statistics .introduction h5, .block_statistics .introduction h6 {
  margin-bottom: 20px;
}
.block_statistics .statistics > * {
  padding-left: 12px;
  padding-right: 12px;
}
.block_statistics .statistics .col-12 {
  padding-left: 12px;
  padding-right: 12px;
}
.block_statistics .statistics-wrapper {
  padding: 0 32px;
}
.block_statistics .statistic {
  padding: 24px;
  background: linear-gradient(0deg, rgba(165, 215, 177, 0.3) 0%, rgba(165, 215, 177, 0.3) 100%), #FFF;
  backdrop-filter: blur(3.5px);
  min-height: 245px;
  margin-bottom: 24px;
  display: flex;
  align-items: center;
}
.block_statistics .statistic .number-wrapper {
  flex-wrap: wrap;
}
.block_statistics .statistic i {
  width: 49px;
  height: 49px;
  flex-shrink: 0;
  aspect-ratio: 49/49;
  color: #005757;
  font-size: 20px;
  background-color: #A5D7B1;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.block_statistics .statistic h3 {
  font-style: normal;
  font-weight: 600;
  color: #005757;
  margin: 0 !important;
}
.block_statistics .statistic p {
  margin-top: 12px;
  max-width: 215px;
  opacity: 1;
  color: #005757;
}
.block_statistics .statistic:nth-of-type(n+3) {
  margin-top: 62px;
}

.block_testimonials {
  position: relative;
  z-index: 2;
  overflow: visible;
}
.block_testimonials_v2:before {
  content: "";
  display: block;
  position: absolute;
  top: -240px;
  left: 0;
  width: 100%;
  height: 50%;
  background-color: #005757;
  z-index: 1;
}
.block_testimonials:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background-color: #005757;
  z-index: 1;
}
.block_testimonials .triangle-background {
  top: -155px;
  right: 0;
  width: 100vw;
  z-index: 2;
}
.block_testimonials .image-wrapper {
  width: 50%;
  overflow: hidden;
  padding: 40% 0 0 0;
  clip-path: polygon(0 0, 100% 60%, 100% 100%, 0% 100%);
  z-index: 2;
  top: -205px;
}
.block_testimonials .image-wrapper img {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: right;
     object-position: right;
}
.block_testimonials .title {
  position: relative;
  z-index: 3;
}
.block_testimonials .title h1, .block_testimonials .title h2, .block_testimonials .title h3, .block_testimonials .title h4, .block_testimonials .title h5, .block_testimonials .title h6, .block_testimonials .title p, .block_testimonials .title ol li, .block_testimonials .title ul li {
  width: 281px;
  color: #005757;
}
.block_testimonials .title h1 strong, .block_testimonials .title h2 strong, .block_testimonials .title h3 strong, .block_testimonials .title h4 strong, .block_testimonials .title h5 strong, .block_testimonials .title h6 strong, .block_testimonials .title p strong, .block_testimonials .title ol li strong, .block_testimonials .title ul li strong {
  color: #39B54A;
}
.block_testimonials .testimonials {
  z-index: 2;
  position: relative;
}
.block_testimonials .swiper_testimonials {
  min-width: 885px;
  margin: 0;
}
.block_testimonials .swiper_testimonials p {
  color: #005757;
  font-feature-settings: "ss02" on;
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: 140%;
  opacity: 1;
}
.block_testimonials .swiper_testimonials .author {
  margin-top: 25px;
  color: #005757;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  opacity: 0.7;
  width: calc(100% - 55px);
}
.block_testimonials .speech-mark {
  min-width: 40px;
  width: 40px;
  min-height: 55px;
  height: 55px;
  aspect-ratio: 12/11;
  -o-object-fit: contain;
     object-fit: contain;
  padding: 0;
}
.block_testimonials .speech-mark.top {
  top: -75px;
  left: 0;
  transform: rotate(180deg);
}
.block_testimonials .speech-mark.bottom {
  bottom: -10px;
  right: 8px;
}
.block_testimonials .controls {
  padding-right: 80px;
}
.block_testimonials .controls .previous, .block_testimonials .controls .next {
  background-color: rgba(0, 87, 87, 0.2);
}
.block_testimonials .controls .previous i, .block_testimonials .controls .next i {
  color: #005757;
}
.block_testimonials .controls .previous:hover, .block_testimonials .controls .next:hover {
  background-color: #005757;
}
.block_testimonials .controls .previous:hover i, .block_testimonials .controls .next:hover i {
  color: #FFFFFF;
}

.block_testimonials_full_width .title {
  position: relative;
  z-index: 3;
  margin-bottom: 75px;
}
.block_testimonials_full_width .title .padding-top_small {
  padding-top: 48px;
}
.block_testimonials_full_width .title h1, .block_testimonials_full_width .title h2, .block_testimonials_full_width .title h3, .block_testimonials_full_width .title h4, .block_testimonials_full_width .title h5, .block_testimonials_full_width .title h6, .block_testimonials_full_width .title p, .block_testimonials_full_width .title ol li, .block_testimonials_full_width .title ul li {
  color: #005757;
}
.block_testimonials_full_width .title h1 strong, .block_testimonials_full_width .title h2 strong, .block_testimonials_full_width .title h3 strong, .block_testimonials_full_width .title h4 strong, .block_testimonials_full_width .title h5 strong, .block_testimonials_full_width .title h6 strong, .block_testimonials_full_width .title p strong, .block_testimonials_full_width .title ol li strong, .block_testimonials_full_width .title ul li strong {
  color: #39B54A;
}
.block_testimonials_full_width .swiper_testimonials_full_width {
  margin: 0;
}
.block_testimonials_full_width .swiper_testimonials_full_width p {
  color: #005757;
  font-feature-settings: "ss02" on;
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: 140%;
  opacity: 1;
}
.block_testimonials_full_width .swiper_testimonials_full_width .author {
  margin-top: 25px;
  color: #005757;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  opacity: 0.7;
  width: calc(100% - 55px);
}
.block_testimonials_full_width .speech-mark {
  min-width: 40px;
  width: 40px;
  min-height: 55px;
  height: 55px;
  aspect-ratio: 12/11;
  -o-object-fit: contain;
     object-fit: contain;
  padding: 0;
}
.block_testimonials_full_width .speech-mark.top {
  top: -65px;
  left: -8px;
  transform: rotate(180deg);
}
.block_testimonials_full_width .speech-mark.bottom {
  bottom: -10px;
  right: 0;
}
.block_testimonials_full_width .logo {
  width: 149px;
  height: 74px;
  aspect-ratio: 149/74;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: right;
     object-position: right;
}
.block_testimonials_full_width .swiper_testimonials_logos {
  margin: 0;
}
.block_testimonials_full_width .swiper_testimonials_logos .swiper-slide {
  display: flex;
}
.block_testimonials_full_width .controls {
  padding-right: 16px;
}
.block_testimonials_full_width .controls .previous, .block_testimonials_full_width .controls .next {
  background-color: #39B54A;
}
.block_testimonials_full_width .controls .previous i, .block_testimonials_full_width .controls .next i {
  color: #005757;
}

#logos_swiper .swiper-wrapper {
  transition-timing-function: linear !important;
}

#logos_swiper .swiper-slide {
  width: auto;
  display: flex;
  align-items: center;
}

#logos_swiper .swiper-slide img {
  display: block;
  height: 60px;
  width: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.block_logos {
  z-index: 3;
  padding-bottom: 100px;
}
.block_logos .swiper-slide {
  width: -moz-fit-content !important;
  width: fit-content !important;
}
.block_logos .swiper-wrapper {
  transition-timing-function: linear !important;
}
.block_logos .swiper-slide {
  width: auto;
}
.block_logos .logos_swiper .logo-wrapper img {
  height: 80px;
  max-width: 155px;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: left;
     object-position: left;
}

.block_logos .logos-marquee {
  display: flex;
  overflow: hidden;
  position: relative;
  gap: 60px;
}
.block_logos .logos-track {
  display: flex;
  align-items: center;
  gap: 60px;
  flex-shrink: 0;
  min-width: 100%;
  animation: logos-scroll 50s linear infinite;
  will-change: transform;
}
.block_logos .logo img {
  display: block;
  max-width: 155px;
  height: 60px;
  width: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
@keyframes logos-scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@media (max-width: 991px) {
  .block_logos .logos-marquee {
    gap: 40px;
  }
  .block_logos .logos-track {
    gap: 40px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .block_logos .logos-track {
    animation: none;
  }
}

.block_accreditations .introduction h1 strong, .block_accreditations .introduction h2 strong, .block_accreditations .introduction h3 strong, .block_accreditations .introduction h4 strong, .block_accreditations .introduction h5 strong, .block_accreditations .introduction h6 strong {
  color: #00A98F;
}
.block_accreditations .logo_wrapper {
  padding-left: 12px;
  padding-right: 12px;
}
.block_accreditations .logo_wrapper .accred {
  padding: 10px 30px 10px 30px;
  width: 180px;
  height: 130px;
  background-color: rgba(0, 0, 0, 0.03);
}
.block_accreditations .logo_wrapper .accred .logo {
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
}
.block_accreditations .logos.top {
  margin-bottom: 24px;
}

.block_case_studies.background_colour_white h1 strong, .block_case_studies.background_colour_white h2 strong, .block_case_studies.background_colour_white h3 strong, .block_case_studies.background_colour_white h4 strong, .block_case_studies.background_colour_white h5 strong, .block_case_studies.background_colour_white h6 strong {
  color: #00A98F;
}
.block_case_studies.background_colour_white .controls .previous, .block_case_studies.background_colour_white .controls .next {
  background-color: #005757;
}
.block_case_studies.background_colour_white .controls .previous i, .block_case_studies.background_colour_white .controls .next i {
  color: #FFFFFF;
}
.block_case_studies.background_colour_white .v-nav .slide {
  color: #005757;
}
.block_case_studies.background_colour_white .v-nav:after {
  background: linear-gradient(360deg, #FFFFFF 10.61%, rgba(7, 105, 108, 0) 130.31%);
}
.block_case_studies.background_colour_gradient_green h1 strong, .block_case_studies.background_colour_gradient_green h2 strong, .block_case_studies.background_colour_gradient_green h3 strong, .block_case_studies.background_colour_gradient_green h4 strong, .block_case_studies.background_colour_gradient_green h5 strong, .block_case_studies.background_colour_gradient_green h6 strong {
  color: #00A98F;
}
.block_case_studies.background_colour_gradient_green .controls .previous, .block_case_studies.background_colour_gradient_green .controls .next {
  background-color: #005757;
}
.block_case_studies.background_colour_gradient_green .controls .previous i, .block_case_studies.background_colour_gradient_green .controls .next i {
  color: #FFFFFF;
}
.block_case_studies.background_colour_gradient_green .controls .previous:hover, .block_case_studies.background_colour_gradient_green .controls .next:hover {
  background-color: #00A98F;
}
.block_case_studies.background_colour_gradient_green .link_button {
  background-color: #00A98F;
  color: #FFFFFF;
}
.block_case_studies.background_colour_gradient_green .link_button .arrow:after {
  color: #FFFFFF;
}
.block_case_studies.background_colour_gradient_green .v-nav .slide {
  color: #005757;
}
.block_case_studies.background_colour_gradient_green .v-nav:after {
  background: linear-gradient(360deg, #edf9f7 10.61%, rgba(7, 105, 108, 0) 130.31%);
}
.block_case_studies {
  /* Vertical nav */
}
.block_case_studies .v-nav {
  height: 190px;
  position: absolute;
  overflow: hidden;
}
.block_case_studies .v-nav:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -30px;
  left: 0;
  width: 100%;
  height: calc(100% + 30px);
  background: linear-gradient(360deg, #005757 10.61%, rgba(7, 105, 108, 0) 130.31%);
  z-index: 1;
}
.block_case_studies .v-nav .slide {
  height: 60px;
  display: flex;
  align-items: center;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  color: #A5D7B1;
  font-feature-settings: "ss02" on;
  font-family: "DM Sans", sans-serif;
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%;
  background: none;
  border: none;
}
.block_case_studies {
  /* Horizontal main */
}
.block_case_studies .h-main {
  margin-top: 60px;
  margin-left: 20px;
  z-index: 2;
  width: 100%;
  max-width: 100%;
  flex: 1 1 auto;
  min-width: 0;
  overflow: visible !important;
}
.block_case_studies .h-main .slick-list {
  overflow: visible !important;
}
.block_case_studies .h-main .slick-list .slick-track {
  overflow: visible !important;
}
.block_case_studies .h-main .slick-track {
  display: flex;
}
.block_case_studies .h-main .slick-slide {
  margin: 0 20px;
  height: auto;
}
.block_case_studies .h-main .slick-list {
  margin: 0 -20px;
}
.block_case_studies .h-main .slide {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  font-size: 28px;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  clip-path: polygon(100% 0, 100% 85%, 92% 100%, 0 100%, 0 0);
}
.block_case_studies .h-main .slide .overlay {
  background: linear-gradient(182deg, rgba(0, 0, 0, 0) 15.97%, rgba(0, 0, 0, 0.6) 69.77%);
}
.block_case_studies .h-main .slide .case-study {
  height: 300px;
}
.block_case_studies .h-main .slide .case-study img {
  -o-object-fit: cover;
     object-fit: cover;
}
.block_case_studies .h-main .slide .case-study .tags {
  margin-bottom: 12px;
  gap: 16px;
}
.block_case_studies .h-main .slide .case-study .tags .tag {
  backdrop-filter: blur(75px);
  color: #BFD730;
  z-index: 2;
  max-height: 30px;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  padding: 4px 12px;
  line-height: 150%;
  --cut: 20px;
  clip-path: polygon(100% 0, 100% calc(40px - var(--cut)), calc(100% - var(--cut)) 40px, 0 40px, 0 0);
  background-color: rgba(200, 212, 0, 0.3);
}
.block_case_studies .h-main .slide .case-study .tags .tag.type {
  color: #FFFFFF;
  background: rgba(255, 255, 255, 0.3);
  backdrop-filter: blur(10px);
}
.block_case_studies .h-main .slide .case-study .text-wrapper {
  padding: 25px 30px;
}
.block_case_studies .h-main .slide .case-study h5 {
  color: #FFFFFF;
  font-feature-settings: "ss02" on;
  font-family: "DM Sans", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 120%;
  margin-bottom: 8px;
}
.block_case_studies .h-main .slide .case-study p {
  color: #FFFFFF;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
}
.block_case_studies .h-main .slick-prev, .block_case_studies .h-main .slick-next {
  z-index: 2;
}
.block_case_studies {
  /* Critical: allow the right column (slick) to shrink inside grid/flex */
}
.block_case_studies .wrap {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 18px;
  display: flex;
  gap: 18px;
}
.block_case_studies .wrap > * {
  min-width: 0;
}
.block_case_studies .controls {
  padding-right: 20px;
}
.block_case_studies .controls .previous, .block_case_studies .controls .next {
  background-color: #FFFFFF;
}
.block_case_studies .controls .previous i, .block_case_studies .controls .next i {
  color: #005757;
}
.block_case_studies .controls .previous:hover, .block_case_studies .controls .next:hover {
  background-color: #BFD730;
}
.block_case_studies .controls .previous:hover i, .block_case_studies .controls .next:hover i {
  color: #005757;
}

.block_latest_news:before {
  content: "";
  display: block;
  position: absolute;
  width: 175%;
  height: 900px;
  top: 0;
  left: 0;
  background-color: #005757;
  clip-path: polygon(100% 0, 0 0, 0 100%);
}
.block_latest_news .introduction {
  margin-bottom: 30px;
}
.block_latest_news .introduction h1, .block_latest_news .introduction h2, .block_latest_news .introduction h3, .block_latest_news .introduction h4, .block_latest_news .introduction h5, .block_latest_news .introduction h6, .block_latest_news .introduction p, .block_latest_news .introduction ol li, .block_latest_news .introduction ul li {
  color: #FFFFFF;
}
.block_latest_news .introduction p {
  opacity: 1;
}
.block_latest_news .news .col-12:not(:last-of-type) {
  margin-bottom: 32px;
}
.block_latest_news > .container > .row {
  align-items: stretch;
}
.block_latest_news .news-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
}
.block_latest_news .news-card .image-wrapper {
  position: relative;
  flex: 1;
  padding: 0;
  min-height: 180px;
}
.block_latest_news .news-card img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  top: 0;
  left: 0;
}
.block_latest_news .news-card .text-wrapper {
  flex: 0 0 auto;
}
.block_latest_news .latest-news-featured {
  display: flex;
  flex-direction: column;
}
.block_latest_news .latest-news-featured > .row {
  height: 100%;
  flex: 1;
}
.block_latest_news .latest-news-featured .ignore {
  display: flex;
  height: 100%;
  top: 6px;
  position: relative;
}
.block_latest_news .news {
  display: flex;
  flex-direction: column;
}
.block_latest_news .news > .row {
  height: 100%;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.block_latest_news .news .ignore {
  flex: 1;
  display: flex;
  min-height: 0;
}

.block_case_study_details {
  padding: 50% 0 0 0;
}
.block_case_study_details .image-wrapper {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  overflow: hidden;
}
.block_case_study_details .image-wrapper img {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.block_case_study_details .image-wrapper .overlay {
  background: linear-gradient(182deg, rgba(0, 0, 0, 0) 15.97%, rgba(0, 0, 0, 0.6) 69.77%);
  backdrop-filter: blur(12.5px);
  -webkit-backdrop-filter: blur(12.5px);
  mask-image: linear-gradient(to top, black 65%, transparent 100%);
  -webkit-mask-image: linear-gradient(to top, rgba(0, 0, 0, 0.8) 65%, transparent 100%);
  height: 600px;
}
.block_case_study_details .container {
  z-index: 2;
  margin-bottom: 60px;
}
.block_case_study_details .container * {
  color: #FFFFFF;
}
.block_case_study_details .container i {
  width: 24px;
  height: 21px;
  aspect-ratio: 8/7;
  font-size: 21px;
  font-weight: 300;
  margin-bottom: 12px;
}
.block_case_study_details .container p, .block_case_study_details .container h5 {
  max-width: 165px;
}

.block_related_case_studies h1, .block_related_case_studies h2, .block_related_case_studies h3, .block_related_case_studies h4, .block_related_case_studies h5, .block_related_case_studies h6, .block_other_posts h1, .block_other_posts h2, .block_other_posts h3, .block_other_posts h4, .block_other_posts h5, .block_other_posts h6 {
  color: #005757;
}
.block_related_case_studies h1 strong, .block_related_case_studies h2 strong, .block_related_case_studies h3 strong, .block_related_case_studies h4 strong, .block_related_case_studies h5 strong, .block_related_case_studies h6 strong, .block_other_posts h1 strong, .block_other_posts h2 strong, .block_other_posts h3 strong, .block_other_posts h4 strong, .block_other_posts h5 strong, .block_other_posts h6 strong {
  color: #00A98F;
}
.block_related_case_studies .careers, .block_other_posts .careers {
  margin-bottom: 0;
}
.block_related_case_studies .related_case_studies_swiper, .block_related_case_studies .other_posts_swiper, .block_other_posts .related_case_studies_swiper, .block_other_posts .other_posts_swiper {
  overflow: visible;
}
.block_related_case_studies .related_case_studies_swiper .swiper-slide, .block_other_posts .related_case_studies_swiper .swiper-slide {
  width: 615px !important;
}
.block_related_case_studies .careers .text-wrapper, .block_other_posts .careers .text-wrapper {
  background-color: #FFFFFF;
}
.block_related_case_studies .controls, .block_other_posts .controls {
  padding: 0;
}

.block_text_two_columns .container {
  z-index: 3;
}
.block_text_two_columns .introduction h1, .block_text_two_columns .introduction h2, .block_text_two_columns .introduction h3, .block_text_two_columns .introduction h4, .block_text_two_columns .introduction h5, .block_text_two_columns .introduction h6 {
  color: #005757;
}
.block_text_two_columns .introduction h1 strong, .block_text_two_columns .introduction h2 strong, .block_text_two_columns .introduction h3 strong, .block_text_two_columns .introduction h4 strong, .block_text_two_columns .introduction h5 strong, .block_text_two_columns .introduction h6 strong {
  color: #39B54A;
}
.block_text_two_columns .introduction p, .block_text_two_columns .introduction ol li, .block_text_two_columns .introduction ul li, .block_text_two_columns .introduction a:not(.link_button) {
  font-size: 16px;
  line-height: 140%;
  opacity: 1;
  color: #03393B;
}
.block_text_two_columns.background_colour_gradient_green .introduction p, .block_text_two_columns.background_colour_gradient_green .introduction ol li, .block_text_two_columns.background_colour_gradient_green .introduction ul li, .block_text_two_columns.background_colour_gradient_green .introduction a:not(.link_button) {
  color: #005757;
}
.block_text_two_columns.background_colour_dark_green h1, .block_text_two_columns.background_colour_dark_green h2, .block_text_two_columns.background_colour_dark_green h3, .block_text_two_columns.background_colour_dark_green h4, .block_text_two_columns.background_colour_dark_green h5, .block_text_two_columns.background_colour_dark_green h6, .block_text_two_columns.background_colour_dark_green p, .block_text_two_columns.background_colour_dark_green ol li, .block_text_two_columns.background_colour_dark_green ul li, .block_text_two_columns.background_colour_dark_green a:not(.link_button) {
  opacity: 1;
  color: #FFFFFF;
}

.block_full_width_image {
  z-index: 2;
}
.block_full_width_image .image-wrapper {
  position: relative;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  height: 175px;
  overflow: hidden;
}
.block_full_width_image .image-wrapper img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  z-index: 2;
}
.block_full_width_image .image-wrapper.has-hexagon {
  overflow: visible;
}
.block_full_width_image .image-wrapper.has-hexagon .hexagon {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
  height: 170%;
  width: auto;
  pointer-events: none;
  z-index: 1;
}
.block_full_width_image .image-wrapper.has-hexagon .line-over-image {
  position: absolute;
  top: 50%;
  transform: translate(-24.5%, -50%);
  height: 118%;
  width: auto;
  z-index: 2;
}
.block_full_width_image.has-hexagon {
  /* keep overlays visible outside the clipped wrapper */
  overflow: visible;
}
.block_full_width_image.has-hexagon .hexagon {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
  height: 170%;
  width: auto;
  pointer-events: none;
  z-index: 1;
}
.block_full_width_image.has-hexagon .line-over-image {
  position: absolute;
  top: 50%;
  transform: translate(-24.5%, -50%);
  height: 118%;
  width: auto;
  z-index: 2;
}

.full-width-image-block--bottom-flip + .block {
  margin-top: -4rem;
}

.block_text .container {
  z-index: 3;
}
.block_text .col-12 {
  padding-left: 16px;
  padding-right: 16px;
}
.block_text h1, .block_text h2, .block_text h3, .block_text h4, .block_text h5, .block_text h6, .block_text p, .block_text ol li, .block_text ul li, .block_text a:not(.link_button) {
  color: #005757;
}
.block_text h1 strong, .block_text h2 strong, .block_text h3 strong, .block_text h4 strong, .block_text h5 strong, .block_text h6 strong, .block_text p strong, .block_text ol li strong, .block_text ul li strong, .block_text a:not(.link_button) strong {
  color: #39B54A;
}
.block_text p {
  opacity: 1;
}
.block_text blockquote {
  margin: 85px 0 !important;
  position: relative;
}
.block_text blockquote:before, .block_text blockquote:after {
  content: "";
  display: block;
  position: absolute;
  background-image: url("../images/testimonials/speech.png");
  background-position: 50% 50%;
  background-size: cover;
  width: 40px;
  height: 40px;
}
.block_text blockquote:before {
  transform: scale(-1);
  left: -5px;
  top: -60px;
}
.block_text blockquote:after {
  right: -5px;
  bottom: -40px;
}
.block_text.background_colour_dark_green h1, .block_text.background_colour_dark_green h2, .block_text.background_colour_dark_green h3, .block_text.background_colour_dark_green h4, .block_text.background_colour_dark_green h5, .block_text.background_colour_dark_green h6, .block_text.background_colour_dark_green p, .block_text.background_colour_dark_green ol li, .block_text.background_colour_dark_green ul li, .block_text.background_colour_dark_green a:not(.link_button) {
  color: #FFFFFF;
}
.block_text.background_colour_dark_green h1 strong, .block_text.background_colour_dark_green h2 strong, .block_text.background_colour_dark_green h3 strong, .block_text.background_colour_dark_green h4 strong, .block_text.background_colour_dark_green h5 strong, .block_text.background_colour_dark_green h6 strong, .block_text.background_colour_dark_green p strong, .block_text.background_colour_dark_green ol li strong, .block_text.background_colour_dark_green ul li strong, .block_text.background_colour_dark_green a:not(.link_button) strong {
  color: #BFD730;
}
.block_text.background_colour_dark_green p, .block_text.background_colour_dark_green ol li, .block_text.background_colour_dark_green ul li, .block_text.background_colour_dark_green a:not(.link_button) {
  color: #FFFFFF;
}
.block_text.background_colour_gradient_green h1 strong, .block_text.background_colour_gradient_green h2 strong, .block_text.background_colour_gradient_green h3 strong, .block_text.background_colour_gradient_green h4 strong, .block_text.background_colour_gradient_green h5 strong, .block_text.background_colour_gradient_green h6 strong, .block_text.background_colour_gradient_green p strong, .block_text.background_colour_gradient_green ol li strong, .block_text.background_colour_gradient_green ul li strong, .block_text.background_colour_gradient_green a:not(.link_button) strong {
  color: #00A98F;
}

.pswp img {
  -o-object-fit: contain;
     object-fit: contain;
}

.pswp__button--arrow .pswp__icn {
  width: 46px;
  height: 46px;
}

.block_gallery_carousel {
  padding-left: 0;
  padding-right: 0;
  padding-top: 16px;
}
.block_gallery_carousel .image-wrapper {
  padding: 75% 0% 0% 0%;
}
.block_gallery_carousel .image-wrapper .image {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.block_gallery_carousel .row {
  grid-gap: 24px 0px;
}

.block_faqs .introduction h1:last-of-type, .block_faqs .introduction h2:last-of-type, .block_faqs .introduction h3:last-of-type, .block_faqs .introduction h4:last-of-type, .block_faqs .introduction h5:last-of-type, .block_faqs .introduction h6:last-of-type {
  margin-bottom: 0;
}
.block_faqs .accordion {
  max-width: 830px;
}
.block_faqs .accordion:not(:last-of-type) {
  border-bottom: 1px solid rgba(5, 81, 83, 0.2);
}
.block_faqs .accordion.open {
  background: #A5D7B1;
}
.block_faqs .accordion.open .accordion-header {
  padding-bottom: 0;
}
.block_faqs .accordion.open .accordion-header i {
  color: #A5D7B1;
  background-color: #005757;
}
.block_faqs .accordion .accordion-header {
  padding: 24px;
  border: none;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: none;
  text-align: left;
  font-weight: 500;
  cursor: pointer;
  outline: none;
  position: relative;
  width: 100%;
  transition: all 0.3s ease-in-out;
  transition: padding-bottom 0.3s ease;
}
.block_faqs .accordion .accordion-header * {
  color: #005757;
}
.block_faqs .accordion .accordion-header h6 {
  margin: 0;
  font-weight: 500;
  width: calc(100% - 65px);
}
.block_faqs .accordion .accordion-header i {
  font-size: 24px;
  color: #005757;
  display: flex;
  width: 56px;
  height: 56px;
  min-width: 56px;
  min-height: 56px;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1/1;
  background: #A5D7B1;
}
.block_faqs .accordion .accordion-content {
  overflow: hidden;
  height: 0;
  transition: height 0.3s ease;
}
.block_faqs .accordion .accordion-content .accordion-content-inner {
  padding: 24px 24px 32px 24px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-top: none;
}
.block_faqs .accordion .accordion-content .accordion-content-inner p, .block_faqs .accordion .accordion-content .accordion-content-inner ol li, .block_faqs .accordion .accordion-content .accordion-content-inner ul li {
  font-size: 16px;
}

.block_slider_cards .introduction h1 strong, .block_slider_cards .introduction h2 strong, .block_slider_cards .introduction h3 strong, .block_slider_cards .introduction h4 strong, .block_slider_cards .introduction h5 strong, .block_slider_cards .introduction h6 strong {
  color: #39B54A;
}
.block_slider_cards.background_colour_white .swiper .swiper-slide {
  background: #005757;
}
.block_slider_cards.background_colour_white .swiper .swiper-slide .swiper_slide_inner * {
  color: #FFFFFF;
}
.block_slider_cards .controls {
  padding: 0;
}
.block_slider_cards .swiper {
  overflow: visible;
}
.block_slider_cards .swiper .swiper-slide {
  width: 100%;
  background: linear-gradient(0deg, rgba(165, 215, 177, 0.2) 0%, rgba(165, 215, 177, 0.2) 100%), #FFF;
  clip-path: polygon(100% 0, 100% 85%, 92% 100%, 0 100%, 0 0);
}
.block_slider_cards .swiper .swiper-slide .swiper_slide_inner {
  padding: 24px;
}
.block_slider_cards .swiper .swiper-slide .swiper_slide_inner * {
  color: #005757;
}
.block_slider_cards .swiper .swiper-slide .swiper_slide_inner .title {
  margin-bottom: 24px;
}
.block_slider_cards .swiper .swiper-slide .swiper_slide_inner .title h6 {
  max-width: 225px;
  margin: 0;
}
.block_slider_cards .swiper .swiper-slide .swiper_slide_inner .title .icon {
  width: 49px;
  height: 49px;
  flex-shrink: 0;
  aspect-ratio: 49/49;
}
.block_slider_cards .swiper .swiper-slide .swiper_slide_inner .title .icon i {
  color: #39B54A;
  font-size: 35px;
}
.block_slider_cards .swiper .swiper-slide .swiper_slide_inner .title .icon.download {
  transition: all 0.25s ease-in-out;
}
.block_slider_cards .swiper .swiper-slide .swiper_slide_inner .title .icon.download i {
  color: #005757;
  font-size: 24px;
}
.block_slider_cards .swiper .swiper-slide .swiper_slide_inner .title .icon.download:hover {
  background-color: #A5D7B1;
}
.block_slider_cards .swiper .swiper-slide .swiper_slide_inner p {
  font-size: 16px;
  opacity: 1;
}

.block_contact_form .introduction {
  height: -moz-fit-content;
  height: fit-content;
  top: 120px;
}
.block_contact_form h1, .block_contact_form h2, .block_contact_form h3, .block_contact_form h4, .block_contact_form h5, .block_contact_form h6, .block_contact_form p:not(.breadcrumb-item), .block_contact_form ol li, .block_contact_form ul li, .block_contact_form a:not(.breadcrumb) {
  opacity: 1;
}
.block_contact_form h1 strong, .block_contact_form h2 strong, .block_contact_form h3 strong, .block_contact_form h4 strong, .block_contact_form h5 strong, .block_contact_form h6 strong, .block_contact_form p:not(.breadcrumb-item) strong, .block_contact_form ol li strong, .block_contact_form ul li strong, .block_contact_form a:not(.breadcrumb) strong {
  color: #00A98F;
}
.block_contact_form .breadcrumb {
  color: #005757;
  font-size: 18px;
  opacity: 0.7;
  transition: all 0.25s ease-in-out;
}
.block_contact_form .breadcrumb:hover {
  opacity: 1;
}
.block_contact_form .details {
  margin-top: 35px;
  display: block;
}
.block_contact_form .details .detail:not(:last-of-type) {
  margin-bottom: 25px;
}
.block_contact_form .details .detail i {
  width: 48px;
  height: 48px;
  aspect-ratio: 1/1;
  background-color: #00A98F;
  color: #005757;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  margin-right: 24px;
}
.block_contact_form .details .detail a {
  color: #005757;
  font-size: 18px;
  font-weight: 600;
  line-height: 140%;
  position: relative;
}
.block_contact_form .details .detail a:before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 1px;
  background-color: #005757;
  opacity: 0;
  left: 0;
  top: calc(100% - 5px);
  transition: all 0.25s ease-in-out;
}
.block_contact_form .details .detail a:hover:before {
  opacity: 1;
}
.block_contact_form .form {
  border-radius: 2px;
  padding: 24px;
  background-color: #FFFFFF;
  box-shadow: 0 4px 30px 3px rgba(0, 0, 0, 0.07);
}

.block_sector_cards .introduction h1 strong, .block_sector_cards .introduction h2 strong, .block_sector_cards .introduction h3 strong, .block_sector_cards .introduction h4 strong, .block_sector_cards .introduction h5 strong, .block_sector_cards .introduction h6 strong {
  color: #39B54A;
}
.block_sector_cards .sectors .card:nth-of-type(n+2) {
  margin-top: 32px;
}
.block_sector_cards .sectors .card a {
  width: 100%;
  display: block;
  padding: 65% 0 0 0;
  clip-path: polygon(100% 0, 100% 80%, 88% 100%, 0 100%, 0 0);
}
.block_sector_cards .sectors .card a img {
  -o-object-fit: cover;
     object-fit: cover;
  transition-delay: 0.1s !important;
  transition: all 0.25s ease-in-out;
}
.block_sector_cards .sectors .card a .overlay {
  background: linear-gradient(182deg, rgba(0, 0, 0, 0) 16.36%, rgba(0, 0, 0, 0.6) 69.92%);
}
.block_sector_cards .sectors .card a .content-wrapper {
  z-index: 2;
  text-align: center;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.block_sector_cards .sectors .card a .content-wrapper * {
  color: #FFFFFF;
}
.block_sector_cards .sectors .card a .content-wrapper i {
  font-size: 35px;
  margin-bottom: 12px;
}
.block_sector_cards .sectors .card a .content-wrapper h3 {
  font-size: 26px;
  line-height: 130%;
  font-weight: 600;
  max-width: 80%;
}
.block_sector_cards .sectors .card a:hover img {
  transform: scale(1.1);
}

.block_offices .container {
  position: relative;
  z-index: 2;
}
.block_offices #map-wrapper {
  width: 100%;
  height: 600px;
}
.block_offices #map-wrapper #map {
  width: calc(100% - 318px);
  height: 600px;
}
.block_offices .gmnoprint, .block_offices .gm-fullscreen-control {
  display: none !important;
}
.block_offices .offices-list {
  width: 318px;
  top: 80px;
  right: 32px;
  overflow: scroll;
  z-index: 9;
  height: 600px;
  background: linear-gradient(0deg, rgba(5, 81, 83, 0.05) 0%, rgba(5, 81, 83, 0.05) 100%), #FFF;
  backdrop-filter: blur(3.5px);
}
.block_offices .offices-list::-webkit-scrollbar {
  -webkit-appearance: none;
}
.block_offices .offices-list::-webkit-scrollbar:vertical {
  width: 6px;
}
.block_offices .offices-list::-webkit-scrollbar:horizontal {
  height: 6px;
}
.block_offices .offices-list::-webkit-scrollbar-thumb {
  border-radius: 8px;
  border: 2px solid #005757;
  background-color: #005757;
}
.block_offices .offices-list .office {
  width: 100%;
  padding: 20px;
}
.block_offices .offices-list .office.active {
  background: #BFD730;
  border: none !important;
}
.block_offices .offices-list .office.active .dropdown-toggle:before {
  content: "\f068";
}
.block_offices .offices-list .office.active .details {
  display: block;
}
.block_offices .offices-list .office:not(:last-of-type) {
  border-bottom: 1.5px solid rgba(5, 81, 83, 0.3);
}
.block_offices .offices-list .office .dropdown-toggle {
  width: 48px;
  height: 48px;
  border-radius: 1px;
  background: rgba(0, 87, 87, 0.2);
  backdrop-filter: blur(2px);
  border: none;
  pointer-events: all;
  font-size: 32px;
  line-height: 140%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.block_offices .offices-list .office .dropdown-toggle:before {
  content: "+";
  position: relative;
  display: block;
  font-size: 18px;
  font-weight: 900;
  font-family: "Font Awesome 6 Sharp";
}
.block_offices .offices-list .office h5 {
  margin: 0 !important;
}
.block_offices .offices-list .office h1, .block_offices .offices-list .office h2, .block_offices .offices-list .office h3, .block_offices .offices-list .office h4, .block_offices .offices-list .office h5, .block_offices .offices-list .office h6, .block_offices .offices-list .office p {
  color: #005757;
  opacity: 1;
}
.block_offices .offices-list .office .details {
  padding-top: 24px;
  display: none;
}
.block_offices .offices-list .office .contact .link_button {
  margin-top: 1rem;
  padding: 8px 16px;
  height: auto;
}
.block_offices .offices-list .office .contact .link_button i {
  color: #FFFFFF;
  font-size: 18px;
  font-weight: 400;
}
.block_offices .offices-list .office .contact .link_button:hover {
  padding: 8px 16px;
  background-color: #A5D7B1;
  color: #005757;
}
.block_offices .offices-list .office .contact .link_button:hover i {
  color: #005757;
}
.block_offices .offices-list .office .contact .link_button:not(:last-of-type) {
  margin-right: 16px;
}
.block_offices .map-zoom {
  position: absolute;
  left: 40px;
  bottom: 16px;
  display: flex;
  gap: 8px;
  z-index: 3;
}
.block_offices .map-zoom button {
  width: 48px;
  height: 48px;
  border: none;
  background: #005757;
  color: #A5D7B1;
  font-size: 32px;
  line-height: 140%;
  cursor: pointer;
  position: relative;
  transition: all 0.25s ease-in-out;
}
.block_offices .map-zoom button#zoom-in:after {
  content: "+";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 18px;
  font-weight: 900;
  font-family: "Font Awesome 6 Sharp";
}
.block_offices .map-zoom button#zoom-out:after {
  content: "\f068";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 18px;
  font-weight: 900;
  font-family: "Font Awesome 6 Sharp";
}
.block_offices .map-zoom button:hover {
  background: #A5D7B1;
  color: #005757;
}

.block_icon_grid.light.citrus_green {
  background-color: #ECF9F7;
}
.block_icon_grid.light.citrus_green .grid-item .icon {
  background-color: #BFD730;
}
.block_icon_grid.light.citrus_green .grid-item .text-wrapper {
  background-color: #FFFFFF;
}
.block_icon_grid.light.pale_green {
  background-color: #FFFFFF;
}
.block_icon_grid.light.pale_green .grid-item .icon {
  background-color: #A5D7B1;
}
.block_icon_grid.light.pale_green .grid-item .text-wrapper {
  background-color: rgba(165, 215, 177, 0.2);
  backdrop-filter: blur(3.5px);
}
.block_icon_grid.light.light_green {
  background: linear-gradient(0deg, rgba(57, 181, 74, 0.1) 0%, rgba(57, 181, 74, 0.1) 100%), #FFF;
}
.block_icon_grid.light.light_green .grid-item .icon {
  background-color: #A5D7B1;
}
.block_icon_grid.light.light_green .grid-item .text-wrapper {
  background-color: #FFFFFF;
  backdrop-filter: blur(3.5px);
}
.block_icon_grid.light.dark_green {
  background-color: #FFFFFF;
}
.block_icon_grid.light.dark_green .grid-item .icon {
  background-color: #A5D7B1;
}
.block_icon_grid.light.dark_green .grid-item .text-wrapper {
  background-color: #005757;
}
.block_icon_grid.light.dark_green .grid-item .text-wrapper h1, .block_icon_grid.light.dark_green .grid-item .text-wrapper h2, .block_icon_grid.light.dark_green .grid-item .text-wrapper h3, .block_icon_grid.light.dark_green .grid-item .text-wrapper h4, .block_icon_grid.light.dark_green .grid-item .text-wrapper h5, .block_icon_grid.light.dark_green .grid-item .text-wrapper h6, .block_icon_grid.light.dark_green .grid-item .text-wrapper p {
  color: #FFFFFF;
}
.block_icon_grid.light.core_green {
  background-color: #FFFFFF;
}
.block_icon_grid.light.core_green .grid-item .icon {
  background-color: rgba(0, 169, 143, 0.2);
}
.block_icon_grid.light.core_green .grid-item .text-wrapper {
  background: #ECF9F7;
  backdrop-filter: blur(3.5px);
}
.block_icon_grid.dark.citrus_green {
  background-color: #005757;
}
.block_icon_grid.dark.citrus_green .grid-item .icon {
  background-color: #BFD730;
}
.block_icon_grid.dark.citrus_green .grid-item .text-wrapper {
  background-color: #FFFFFF;
}
.block_icon_grid.dark.pale_green {
  background-color: #005757;
}
.block_icon_grid.dark.pale_green .grid-item .icon {
  background-color: #A5D7B1;
}
.block_icon_grid.dark.pale_green .grid-item .text-wrapper {
  background: linear-gradient(0deg, rgba(165, 215, 177, 0.4) 0%, rgba(165, 215, 177, 0.4) 100%), #FFF;
  backdrop-filter: blur(3.5px);
}
.block_icon_grid.dark.light_green {
  background: #005757;
}
.block_icon_grid.dark.light_green .grid-item .icon {
  background-color: #A5D7B1;
}
.block_icon_grid.dark.light_green .grid-item .text-wrapper {
  background-color: #FFFFFF;
  backdrop-filter: blur(3.5px);
}
.block_icon_grid.dark.dark_green {
  background-color: #005757;
}
.block_icon_grid.dark.dark_green .grid-item .icon {
  background-color: rgba(0, 87, 87, 0.2);
}
.block_icon_grid.dark.dark_green .grid-item .text-wrapper {
  background: #FFFFFF;
  backdrop-filter: blur(3.5px);
}
.block_icon_grid.dark.core_green {
  background-color: #005757;
}
.block_icon_grid.dark.core_green .grid-item .icon {
  background-color: rgba(0, 169, 143, 0.2);
}
.block_icon_grid.dark.core_green .grid-item .text-wrapper {
  background: #ECF9F7;
  backdrop-filter: blur(3.5px);
}
.block_icon_grid .title {
  margin-bottom: 1.875rem;
}
.block_icon_grid .icon-grid .grid-item {
  padding-left: 12px;
  padding-right: 12px;
  margin-bottom: 24px;
}
.block_icon_grid .icon-grid .grid-item .text-wrapper {
  padding: 24px;
}
.block_icon_grid .icon-grid .grid-item .icon {
  width: 48px;
  height: 48px;
  aspect-ratio: 1/1;
  background-color: rgba(0, 169, 143, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
}
.block_icon_grid .icon-grid .grid-item .icon i {
  font-size: 20px;
  color: #005757;
}
.block_icon_grid .icon-grid .grid-item h4 {
  margin-bottom: 8px;
}
.block_icon_grid .icon-grid .grid-item p {
  color: #005757;
  opacity: 1;
}

.block_team .introduction h1 strong, .block_team .introduction h2 strong, .block_team .introduction h3 strong, .block_team .introduction h4 strong, .block_team .introduction h5 strong, .block_team .introduction h6 strong {
  color: #00A98F;
}
.block_team .introduction p, .block_team .introduction ol li, .block_team .introduction ul li {
  font-size: 20px;
  line-height: 140%;
}
.block_team .team-card:nth-of-type(n+2) {
  margin-top: 48px;
}
.block_team .team-card .image-wrapper {
  padding-top: 110%;
}
.block_team .team-card .image-wrapper img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top;
     object-position: top;
}
.block_team .team-card .image-wrapper .linkedin-wrapper {
  width: 64px;
  height: 64px;
  background: #edf9f7;
  z-index: 2;
}
.block_team .team-card .image-wrapper .linkedin-wrapper a {
  width: 40px;
  height: 40px;
  background-color: #BFD730;
  border-radius: 1px;
  transition: all 0.25s ease-in-out;
}
.block_team .team-card .image-wrapper .linkedin-wrapper a i {
  color: #005757;
  font-size: 16px;
  transition: all 0.25s ease-in-out;
}
.block_team .team-card .image-wrapper .linkedin-wrapper a:hover {
  background-color: #005757;
}
.block_team .team-card .image-wrapper .linkedin-wrapper a:hover i {
  color: #BFD730;
}
.block_team .team-card .text-wrapper {
  margin-top: 15px;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
}
.block_team .team-card .text-wrapper p {
  opacity: 1;
  color: #005757;
  margin: 0;
  font-size: 18px;
}
.block_team .team-card .text-wrapper p strong {
  color: #005757;
  font-size: 20px;
  line-height: 140%;
}

.block_split_content_accordion:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 90px;
  background-color: #FFFFFF;
}
.block_split_content_accordion .accordion {
  min-width: 100%;
  background: rgba(255, 255, 255, 0.2);
  position: relative;
}
.block_split_content_accordion .accordion:not(:last-of-type) {
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}
.block_split_content_accordion .accordion.open {
  background: #A5D7B1;
}
.block_split_content_accordion .accordion.open .accordion-header {
  padding: 32px 24px 0 24px;
}
.block_split_content_accordion .accordion.open .accordion-header i {
  color: #A5D7B1;
  background-color: #005757;
  top: 50%;
  position: absolute;
  right: 24px;
  transform: translateY(-50%);
}
.block_split_content_accordion .accordion.open .accordion-header * {
  color: #005757;
}
.block_split_content_accordion .accordion .accordion-header {
  padding: 20px 24px 20px 24px;
  border: none;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: none;
  text-align: left;
  font-weight: 500;
  cursor: pointer;
  outline: none;
  width: 100%;
  transition: all 0.3s ease-in-out;
  transition: padding-bottom 0.3s ease;
}
.block_split_content_accordion .accordion .accordion-header * {
  color: #FFFFFF;
}
.block_split_content_accordion .accordion .accordion-header h5 {
  margin: 0;
}
.block_split_content_accordion .accordion .accordion-header i {
  font-size: 24px;
  color: #005757;
  display: flex;
  width: 40px;
  height: 40px;
  min-width: 40px;
  min-height: 40px;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1/1;
  background: #A5D7B1;
}
.block_split_content_accordion .accordion .accordion-content {
  overflow: hidden;
  height: 0;
  transition: height 0.3s ease;
}
.block_split_content_accordion .accordion .accordion-content .accordion-content-inner {
  padding: 16px 0 32px 24px;
  border-top: none;
  max-width: calc(100% - 100px);
}
.block_split_content_accordion .accordion .accordion-content .accordion-content-inner p, .block_split_content_accordion .accordion .accordion-content .accordion-content-inner ol li, .block_split_content_accordion .accordion .accordion-content .accordion-content-inner ul li {
  font-size: 16px;
}
.block_split_content_accordion .accordion .accordion-content .accordion-content-inner * {
  color: #005757;
}
.block_split_content_accordion .image-wrapper {
  margin-top: 45px;
  width: 100%;
  padding-top: 40%;
  clip-path: polygon(100% 0, 100% 91%, 96% 100%, 0 100%, 0 0);
}
.block_split_content_accordion .image-wrapper img {
  -o-object-fit: cover;
     object-fit: cover;
}

.block_large_statistics.citrus_green_on_pale_green {
  background-color: #EDF7EF;
}
.block_large_statistics.citrus_green_on_pale_green .introduction * {
  color: #005757;
}
.block_large_statistics.citrus_green_on_pale_green .grid-item i {
  background-color: #BFD730;
}
.block_large_statistics.citrus_green_on_pale_green .grid-item .text-wrapper {
  background: linear-gradient(0deg, #FFF 0%, #FFF 100%), #C8D400;
  backdrop-filter: blur(3.5px);
}
.block_large_statistics.citrus_green_on_pale_green .grid-item .text-wrapper * {
  color: #005757;
}
.block_large_statistics.pale_green_on_white {
  background-color: #FFFFFF;
}
.block_large_statistics.pale_green_on_white .introduction * {
  color: #005757;
}
.block_large_statistics.pale_green_on_white .grid-item i {
  background-color: #A5D7B1;
}
.block_large_statistics.pale_green_on_white .grid-item .text-wrapper {
  background: rgba(165, 215, 177, 0.2);
  backdrop-filter: blur(3.5px);
}
.block_large_statistics.pale_green_on_white .grid-item .text-wrapper * {
  color: #005757;
}
.block_large_statistics.dark_green_on_white {
  background-color: #FFFFFF;
}
.block_large_statistics.dark_green_on_white .introduction * {
  color: #005757;
}
.block_large_statistics.dark_green_on_white .grid-item i {
  background-color: #A5D7B1;
  color: #005757 !important;
}
.block_large_statistics.dark_green_on_white .grid-item .text-wrapper {
  background: #005757;
}
.block_large_statistics.dark_green_on_white .grid-item .text-wrapper * {
  color: #FFFFFF;
}
.block_large_statistics.core_green_on_white {
  background-color: #FFFFFF;
}
.block_large_statistics.core_green_on_white .introduction * {
  color: #005757;
}
.block_large_statistics.core_green_on_white .grid-item i {
  background-color: rgba(0, 169, 143, 0.2);
}
.block_large_statistics.core_green_on_white .grid-item .text-wrapper {
  background: #ECF9F7;
  backdrop-filter: blur(3.5px);
}
.block_large_statistics.core_green_on_white .grid-item .text-wrapper * {
  color: #005757;
}
.block_large_statistics.citrus_green_on_dark_green {
  background-color: #005757;
}
.block_large_statistics.citrus_green_on_dark_green .introduction * {
  color: #FFFFFF;
}
.block_large_statistics.citrus_green_on_dark_green .grid-item i {
  background-color: #BFD730;
}
.block_large_statistics.citrus_green_on_dark_green .grid-item .text-wrapper {
  background: #FFFFFF;
  backdrop-filter: blur(3.5px);
}
.block_large_statistics.citrus_green_on_dark_green .grid-item .text-wrapper * {
  color: #005757;
}
.block_large_statistics.pale_green_on_dark_green {
  background-color: #005757;
}
.block_large_statistics.pale_green_on_dark_green .introduction * {
  color: #FFFFFF;
}
.block_large_statistics.pale_green_on_dark_green .grid-item i {
  background-color: #A5D7B1;
}
.block_large_statistics.pale_green_on_dark_green .grid-item .text-wrapper {
  background: linear-gradient(0deg, rgba(165, 215, 177, 0.2) 0%, rgba(165, 215, 177, 0.2) 100%), #FFF;
  backdrop-filter: blur(3.5px);
}
.block_large_statistics.pale_green_on_dark_green .grid-item .text-wrapper * {
  color: #005757;
}
.block_large_statistics.white_on_dark_green {
  background-color: #005757;
}
.block_large_statistics.white_on_dark_green .introduction * {
  color: #FFFFFF;
}
.block_large_statistics.white_on_dark_green .grid-item i {
  background-color: rgba(0, 87, 87, 0.2);
}
.block_large_statistics.white_on_dark_green .grid-item .text-wrapper {
  background: #FFFFFF;
  backdrop-filter: blur(3.5px);
}
.block_large_statistics.white_on_dark_green .grid-item .text-wrapper * {
  color: #005757;
}
.block_large_statistics.core_green_on_dark_green {
  background-color: #005757;
}
.block_large_statistics.core_green_on_dark_green .introduction * {
  color: #FFFFFF;
}
.block_large_statistics.core_green_on_dark_green .grid-item i {
  background-color: rgba(0, 169, 143, 0.2);
}
.block_large_statistics.core_green_on_dark_green .grid-item .text-wrapper {
  background: #ECF9F7;
  backdrop-filter: blur(3.5px);
}
.block_large_statistics.core_green_on_dark_green .grid-item .text-wrapper * {
  color: #005757;
}
.block_large_statistics .introduction h1, .block_large_statistics .introduction h2, .block_large_statistics .introduction h3, .block_large_statistics .introduction h4, .block_large_statistics .introduction h5, .block_large_statistics .introduction h6 {
  margin-bottom: 24px !important;
}
.block_large_statistics .introduction p, .block_large_statistics .introduction ol li, .block_large_statistics .introduction ul li {
  opacity: 1;
  max-width: 730px;
}
.block_large_statistics .container {
  z-index: 3;
}
.block_large_statistics .grid-item {
  padding-left: 12px;
  padding-right: 12px;
  margin-bottom: 24px;
}
.block_large_statistics .grid-item i {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  aspect-ratio: 48/48;
  color: #005757;
  font-size: 20px;
  background-color: #A5D7B1;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
}
.block_large_statistics .grid-item .number-wrapper {
  margin-bottom: 8px;
}
.block_large_statistics .grid-item .text-wrapper {
  padding: 32px 24px;
}
.block_large_statistics .grid-item h3 {
  margin: 0 !important;
  color: #FFFFFF;
  line-height: 120%;
  font-size: 39px;
}
.block_large_statistics .grid-item p {
  opacity: 1;
}

.careers {
  margin-bottom: 32px;
}
.careers .image-wrapper {
  padding-top: 40%;
  overflow: hidden;
}
.careers .image-wrapper img {
  -o-object-fit: cover;
     object-fit: cover;
  transition: all 0.25s ease-in-out;
}
.careers .text-wrapper {
  background-color: #F2F7F7;
  padding: 24px;
  clip-path: polygon(100% 0, 100% calc(100% - 40px), calc(100% - 40px) 100%, 0 100%, 0 0);
}
.careers .text-wrapper .details {
  margin-bottom: 1.5rem;
}
.careers .text-wrapper .details p {
  margin-bottom: 0;
}
.careers .text-wrapper .link_button {
  max-height: 50px;
  padding-top: 0;
  padding-bottom: 0;
}
.careers .text-wrapper .link_button:not(:last-of-type) {
  margin-right: 12px;
}
.careers:hover .image-wrapper img {
  transform: scale(1.1);
}
.careers:hover .link_button {
  background-color: #005757;
  color: #FFFFFF;
  padding-right: 55px;
}
.careers:hover .link_button .arrow {
  opacity: 1;
  right: 10px;
  visibility: visible;
}
.careers:hover .link_button .arrow:after {
  color: #FFFFFF !important;
}

.block_careers .no-careers {
  padding-top: 50px;
  padding-bottom: 50px;
  clip-path: polygon(100% 0, 100% calc(100% - 40px), calc(100% - 40px) 100%, 0 100%, 0 0);
}

.block_case_studies_by_sector .controls {
  padding-right: 0;
}
.block_case_studies_by_sector .controls .previous:hover, .block_case_studies_by_sector .controls .next:hover {
  background-color: #BFD730;
  opacity: 1;
}
.block_case_studies_by_sector .swiper {
  overflow: visible;
}
.block_case_studies_by_sector .swiper .swiper-slide {
  width: 685px;
  height: 392px;
}
.block_case_studies_by_sector .swiper .swiper-slide .swiper_slide_inner {
  height: 100%;
}
.block_case_studies_by_sector .swiper .swiper-slide .swiper_slide_inner .case-study {
  height: 100%;
}
.block_case_studies_by_sector .swiper .swiper-slide .swiper_slide_inner .case-study .text-wrapper {
  padding: 35px 40px;
}

.block_framework_sectors svg {
  width: 25%;
  height: auto;
}
.block_framework_sectors .introduction h1 strong, .block_framework_sectors .introduction h2 strong, .block_framework_sectors .introduction h3 strong, .block_framework_sectors .introduction h4 strong, .block_framework_sectors .introduction h5 strong, .block_framework_sectors .introduction h6 strong {
  color: #39B54A;
}
.block_framework_sectors .introduction p, .block_framework_sectors .introduction ol li, .block_framework_sectors .introduction ul li {
  font-size: 20px;
  line-height: 140%;
  opacity: 1;
}
.block_framework_sectors .introduction h1, .block_framework_sectors .introduction h2, .block_framework_sectors .introduction h3, .block_framework_sectors .introduction h4, .block_framework_sectors .introduction h5, .block_framework_sectors .introduction h6, .block_framework_sectors .introduction p, .block_framework_sectors .introduction ol li, .block_framework_sectors .introduction ul li {
  max-width: 610px;
}
.block_framework_sectors .image-wrapper {
  height: 815px;
  width: 75%;
  clip-path: polygon(100% 100%, 100% 0, 0 0);
}
.block_framework_sectors .image-wrapper img {
  -o-object-fit: cover;
     object-fit: cover;
}
.block_framework_sectors .framework-sectors {
  width: 100%;
}
.block_framework_sectors .framework-sectors .framework-sectors__list {
  margin: 24px 0 0;
  padding: 0;
}
.block_framework_sectors .framework-sectors .framework-sectors__item {
  display: flex;
  justify-content: center;
}
.block_framework_sectors .framework-sectors {
  /* The hex itself */
}
.block_framework_sectors .framework-sectors .framework-sectors__hex {
  width: 100%;
  aspect-ratio: 1.4/1.6;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  text-align: center;
  padding: 18px;
  clip-path: polygon(0 25%, 50% 0, 100% 25%, 100% 77%, 50% 100%, 0 75%);
}
.block_framework_sectors .framework-sectors .framework-sectors__hex i {
  font-size: 32px;
  margin-bottom: 10px;
}
.block_framework_sectors .framework-sectors .framework-sectors__hex .framework-sectors__label {
  font-size: 20px;
  font-weight: 600;
  line-height: 140%;
}
.block_framework_sectors .framework-sectors__item {
  max-width: 19.666667%;
  flex: 0 0 19.666667%;
  padding: 0 13.5px;
}
.block_framework_sectors .framework-sectors__item:first-of-type .framework-sectors__hex, .block_framework_sectors .framework-sectors__item:nth-of-type(5n+5) .framework-sectors__hex {
  background: #FFFFFF;
  color: #005757;
}
.block_framework_sectors .framework-sectors__item:nth-of-type(2) .framework-sectors__hex, .block_framework_sectors .framework-sectors__item:nth-of-type(6n+6) .framework-sectors__hex {
  background: #00A98F;
  color: #FFFFFF;
}
.block_framework_sectors .framework-sectors__item:nth-of-type(3) .framework-sectors__hex, .block_framework_sectors .framework-sectors__item:nth-of-type(7n+7) .framework-sectors__hex {
  background: #39B54A;
  color: #FFFFFF;
}
.block_framework_sectors .framework-sectors__item:nth-of-type(4) .framework-sectors__hex, .block_framework_sectors .framework-sectors__item:nth-of-type(8n+8) .framework-sectors__hex {
  background: #CBC7C1;
  color: #005757;
}
.block_framework_sectors .framework-sectors__item:nth-of-type(5) .framework-sectors__hex, .block_framework_sectors .framework-sectors__item:nth-of-type(9n+9) .framework-sectors__hex {
  background: #BFD730;
  color: #005757;
}
.block_framework_sectors {
  /* Responsive: drop to fewer columns */
}
@media (max-width: 992px) {
  .block_framework_sectors .framework-sectors__list {
    grid-template-columns: repeat(3, 1fr);
  }
  .block_framework_sectors .framework-sectors__hex {
    width: 120px;
  }
}
@media (max-width: 576px) {
  .block_framework_sectors .framework-sectors__list {
    grid-template-columns: repeat(2, 1fr);
  }
  .block_framework_sectors .framework-sectors__hex {
    width: 110px;
  }
}

.block_framework_sectors {
  --hex-col: 19.666667%;
  --container-max: 100%;
}
@media (min-width: 576px) {
  .block_framework_sectors {
    --container-max: 540px;
  }
}
@media (min-width: 768px) {
  .block_framework_sectors {
    --container-max: 720px;
  }
}
@media (min-width: 992px) {
  .block_framework_sectors {
    --container-max: 960px;
  }
}
@media (min-width: 1200px) {
  .block_framework_sectors {
    --container-max: 1140px;
  }
}
@media (min-width: 1400px) {
  .block_framework_sectors {
    --container-max: 1320px;
  }
}
.block_framework_sectors {
  --container-pad: 12px;
}
.block_framework_sectors .framework-stage {
  display: grid;
  align-items: start;
  /*
    Left track ends exactly where the LAST hex column begins:
    = centered container width minus one hex column,
    + the left “viewport gutter” ( (100vw - container)/2 )
  */
  grid-template-columns: calc((100vw - min(100vw, var(--container-max))) / 2 + min(100vw, var(--container-max)) - min(100vw, var(--container-max)) * var(--hex-col)) 1fr;
  position: relative;
}
.block_framework_sectors .framework-stage > .container {
  grid-column: 1/2;
}
.block_framework_sectors .image-wrapper {
  grid-column: 2/3;
  height: 815px;
  clip-path: polygon(100% 100%, 100% 0, 0 0);
}
.block_framework_sectors .image-wrapper img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.block_angled_content_panel .introduction * {
  opacity: 1;
}
.block_angled_content_panel .introduction h1 strong, .block_angled_content_panel .introduction h2 strong, .block_angled_content_panel .introduction h3 strong, .block_angled_content_panel .introduction h4 strong, .block_angled_content_panel .introduction h5 strong, .block_angled_content_panel .introduction h6 strong {
  color: #BFD730;
}
.block_angled_content_panel .content-panel {
  margin: 32px 0 16px;
}
.block_angled_content_panel .content-panel * {
  color: #005757;
  opacity: 1;
}
.block_angled_content_panel .content-panel h3 {
  font-size: 32px;
  line-height: 130%;
}
.block_angled_content_panel .content-panel .col-12 {
  padding: 32px;
}
.block_angled_content_panel .content-panel .col-12:last-of-type {
  background-color: #FAF9F9;
  clip-path: polygon(100% 0, 100% calc(100% - 40px), calc(100% - 40px) 100%, 0 100%, 0 0);
}
.block_angled_content_panel .image-wrapper {
  padding-top: 35%;
  width: 100vw;
  left: -16px;
  border-radius: 0;
  margin-top: -70px;
}
.block_angled_content_panel .image-wrapper img {
  -o-object-fit: cover;
     object-fit: cover;
}

.block_tabs {
  margin-top: -24px;
}
.block_tabs.background_colour_dark_green .tabs-nav .tabs-nav__btn {
  color: rgba(255, 255, 255, 0.5);
  background-color: rgba(255, 255, 255, 0.05);
}
.block_tabs.background_colour_dark_green .tabs-panels * {
  color: #FFFFFF;
}
.block_tabs .container {
  z-index: 3;
}
.block_tabs .controls .previous, .block_tabs .controls .next {
  background-color: #39B54A;
}
.block_tabs .controls .previous i, .block_tabs .controls .next i {
  color: #005757;
}
.block_tabs .controls .previous:hover, .block_tabs .controls .next:hover {
  background-color: rgba(57, 181, 74, 0.3);
}
.block_tabs .swiper_tabs-control_navigation.is-disabled {
  opacity: 0.4;
  pointer-events: none;
  cursor: not-allowed;
}
.block_tabs .tabs-nav .swiper-wrapper, .block_tabs .tabs-panels .swiper-wrapper {
  height: -moz-fit-content !important;
  height: fit-content !important;
  align-items: stretch;
}
.block_tabs .tabs-panels {
  overflow: visible;
  margin: 32px auto 0;
}
.block_tabs .tabs-panels * {
  opacity: 1;
  color: #005757;
}
.block_tabs .tabs-nav {
  width: 100%;
  overflow: hidden;
}
.block_tabs .tabs-nav .swiper-slide {
  width: auto;
}
.block_tabs .tabs-nav .swiper-slide.is-active .tabs-nav__btn {
  background: rgba(193, 242, 188, 0.3);
  color: #39B54A;
  position: relative;
  font-weight: 600;
}
.block_tabs .tabs-nav .swiper-slide.is-active .tabs-nav__btn:before {
  content: "";
  display: block;
  position: relative;
  background-color: #39B54A;
  width: 14px;
  height: 17px;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  margin-right: 8px;
}
.block_tabs .tabs-nav .tabs-nav__btn {
  width: -moz-fit-content;
  width: fit-content;
  padding: 6px 20px 8px 18px;
  margin: 0px;
  background-color: transparent;
  border-radius: 0;
  outline: none;
  box-shadow: none;
  text-align: left;
  cursor: pointer;
  transition: 0.6s cubic-bezier(0.2, 0.6, 0.3, 1);
  height: 35px;
  display: inline-flex;
  gap: 6px;
  align-items: center;
  cursor: pointer;
  font-size: 18px;
  font-weight: 400;
  --cut: 12px;
  clip-path: polygon(100% 0, 100% calc(45px - var(--cut)), calc(100% - var(--cut)) 50px, 0 50px, 0 0);
  border: none;
  line-height: 150%;
  background-color: rgba(0, 87, 87, 0.05);
  backdrop-filter: blur(10px);
  color: rgba(0, 87, 87, 0.5);
}
.block_tabs .tabs-nav-wrapper {
  position: sticky !important;
  top: 60px;
  z-index: 2;
  padding: 40px 0 20px 0;
}
.block_tabs .tabs-nav-wrapper.core_green_colour .controls .previous, .block_tabs .tabs-nav-wrapper.core_green_colour .controls .next {
  background-color: #00A98F;
}
.block_tabs .tabs-nav-wrapper.core_green_colour .controls .previous i, .block_tabs .tabs-nav-wrapper.core_green_colour .controls .next i {
  color: #005757;
}
.block_tabs .tabs-nav-wrapper.core_green_colour .controls .previous:hover, .block_tabs .tabs-nav-wrapper.core_green_colour .controls .next:hover {
  background-color: rgba(0, 169, 143, 0.3);
}
.block_tabs .tabs-nav-wrapper.core_green_colour .tabs-nav .swiper-slide.is-active .tabs-nav__btn {
  background: rgba(0, 169, 143, 0.3);
  color: #00A98F;
  position: relative;
}
.block_tabs .tabs-nav-wrapper.core_green_colour .tabs-nav .swiper-slide.is-active .tabs-nav__btn:before {
  background-color: #00A98F;
}

@media screen and (min-width: 576px) {
  .block_testimonials_full_width .swiper_testimonials_logos .swiper-slide {
    justify-content: flex-end;
  }
  .block_team .team-card {
    margin-top: 0;
  }
  .block_team .team-card .text-wrapper p {
    font-size: 20px;
  }
  .block_team .team-card .text-wrapper p strong {
    font-size: 24px;
  }
  .block_team .team-card:nth-of-type(n+2) {
    margin-top: 0;
  }
  .block_team .team-card:nth-of-type(n+3) {
    margin-top: 65px;
  }
  .block_full_width_image .image-wrapper {
    height: 275px;
  }
  .block_slider_cards .swiper .swiper-slide {
    width: 470px;
  }
  .block_slider_cards .swiper .swiper-slide .swiper_slide_inner {
    padding: 36px;
  }
  .block_contact_form .details .detail a {
    font-size: 20px;
  }
}
@media screen and (min-width: 768px) {
  .block_icon_grid .title {
    margin-bottom: 48px;
  }
  .block_testimonials_full_width .title {
    margin-bottom: 100px;
  }
  .block_split_content_accordion .accordion .accordion-header i {
    width: 56px;
    height: 56px;
    min-width: 56px;
    min-height: 56px;
  }
  .post_banner .introduction h1, .post_banner .introduction h2, .post_banner .introduction h3, .post_banner .introduction h4, .post_banner .introduction h5, .post_banner .introduction h6 {
    padding-right: 25px;
  }
  .post_banner .introduction p, .post_banner .introduction ol li, .post_banner .introduction ul li {
    padding-right: 80px;
  }
  .block_banner.large_banner .play-button {
    height: 48px;
  }
  .block_banner.large_banner .play-button:hover span {
    opacity: 1;
    transform: translateX(0);
    margin-left: 14px;
    max-width: 240px;
  }
  .block_banner.large_banner .play-button:hover svg {
    transform: translateX(-2px);
  }
  .block_banner.small_banner {
    min-height: 525px;
    margin-top: 120px;
  }
  .block_banner.small_banner .shape-wrapper {
    clip-path: polygon(0 0, 100% 0, 100% 60%, 95% 85%, 87% 100%, 0 100%);
  }
  .block_banner.small_banner .modular-children {
    margin-top: 1rem;
  }
  .block_banner.small_banner .modular-children .link_button {
    margin-top: 1.5rem;
  }
  .block_banner.small_banner .modular-children .link_button:not(:last-of-type) {
    margin-right: 32px;
  }
  .block_modular_solutions .solutions {
    margin-top: 65px;
  }
  .block_modular_solutions .solutions .solution {
    padding: 55px 40px 0 40px;
  }
  .block_modular_solutions .solutions .solution h1, .block_modular_solutions .solutions .solution h2, .block_modular_solutions .solutions .solution h3, .block_modular_solutions .solutions .solution h4, .block_modular_solutions .solutions .solution h5, .block_modular_solutions .solutions .solution h6 {
    margin-bottom: 1.688rem;
  }
  .block_accreditations .logos.bottom {
    margin-top: 48px;
  }
  .block_accreditations .logo_wrapper {
    padding-left: 24px;
    padding-right: 24px;
  }
  .block_accreditations .logo_wrapper .accred {
    width: 220px;
    height: 150px;
  }
  .block_text_two_columns .introduction p, .block_text_two_columns .introduction ol li, .block_text_two_columns .introduction ul li, .block_text_two_columns .introduction a:not(.link_button) {
    font-size: 18px;
    line-height: 140%;
  }
  .block_text_two_columns .introduction .column-2 .column-1-button {
    display: none;
  }
  .block_text_two_columns .introduction .column-2:not(.col-md-6) p, .block_text_two_columns .introduction .column-2:not(.col-md-6) h1, .block_text_two_columns .introduction .column-2:not(.col-md-6) h2, .block_text_two_columns .introduction .column-2:not(.col-md-6) h3, .block_text_two_columns .introduction .column-2:not(.col-md-6) h4, .block_text_two_columns .introduction .column-2:not(.col-md-6) h5, .block_text_two_columns .introduction .column-2:not(.col-md-6) h6 {
    padding-left: 25px;
  }
  .block_case_studies .h-main .slide {
    width: 685px;
    height: 400px;
  }
  .block_case_studies .h-main .slide .case-study {
    height: 392px;
  }
  .block_case_studies .h-main .slide .case-study .text-wrapper {
    padding: 35px 40px;
  }
  .block_case_studies .h-main .slide .case-study h5 {
    font-size: 24px;
  }
  .block_latest_news:before {
    width: 100%;
  }
  .block_case_study_details .image-wrapper {
    clip-path: polygon(0 0, 100% 0, 100% 70%, 94% 90%, 85% 100%, 0 100%);
  }
  .block_tabs .tabs-nav .tabs-nav__btn {
    font-size: 20px;
  }
  .block_full_width_image .image-wrapper {
    height: 375px;
  }
  .block_full_width_image .image-wrapper.top {
    clip-path: polygon(0 31.4%, 84.2% 31.4%, 93.7% 20.9%, 100% 0, 100% 100%, 0 100%);
    margin-top: -180px;
    height: 575px;
  }
  .block_full_width_image .image-wrapper.bottom-flip {
    clip-path: polygon(0 68.6%, 84.2% 68.6%, 93.7% 79.1%, 100% 100%, 100% 0, 0 0);
    height: 575px;
  }
  .block_full_width_image .image-wrapper.bottom-alt {
    clip-path: polygon(0 0, 100% 0, 100% 60%, 95% 85%, 87% 100%, 0 100%);
    height: 400px;
  }
  .block_faqs .accordion .accordion-content .accordion-content-inner {
    padding: 0 100px 32px 24px;
  }
  .block_contact_form .form {
    padding: 40px;
  }
  .block_contact_form .details .detail a {
    font-size: 24px;
  }
  .block_contact_form .details .detail:not(:last-of-type) {
    margin-bottom: 40px;
  }
  .block_sector_cards .sectors .card:nth-of-type(n+2) {
    margin-top: 0;
  }
  .block_sector_cards .sectors .card:nth-of-type(n+3) {
    margin-top: 32px;
  }
  .block_sector_cards .sectors .card a .content-wrapper i {
    font-size: 40px;
  }
  .block_sector_cards .sectors .card a .content-wrapper h3 {
    font-size: 30px;
  }
  .block_angled_content_panel .content-panel {
    margin-top: 90px;
  }
  .block_angled_content_panel .content-panel .col-12 {
    padding: 50px;
  }
  .block_latest_news .introduction {
    margin-bottom: 60px;
  }
  .block_latest_news .introduction p {
    max-width: 380px;
  }
}
@media screen and (min-width: 992px) {
  .block_faqs .introduction {
    top: 130px;
  }
  .block_banner.large_banner {
    height: 100vh;
  }
  .block_banner.large_banner .triangle {
    width: 331px;
    height: 328px;
  }
  .block_modular_solutions .introduction .text h1, .block_modular_solutions .introduction .text h2, .block_modular_solutions .introduction .text h3, .block_modular_solutions .introduction .text h4, .block_modular_solutions .introduction .text h5, .block_modular_solutions .introduction .text h6, .block_modular_solutions .introduction .text p, .block_modular_solutions .introduction .text ol li, .block_modular_solutions .introduction .text ul li {
    max-width: 740px;
  }
  .block_modular_solutions .solutions {
    margin-top: 100px;
  }
  .block_modular_solutions .solutions .solution h1, .block_modular_solutions .solutions .solution h2, .block_modular_solutions .solutions .solution h3, .block_modular_solutions .solutions .solution h4, .block_modular_solutions .solutions .solution h5, .block_modular_solutions .solutions .solution h6 {
    font-size: 32px;
    line-height: 130%;
  }
  .block_statistics .introduction h1, .block_statistics .introduction h2, .block_statistics .introduction h3, .block_statistics .introduction h4, .block_statistics .introduction h5, .block_statistics .introduction h6 {
    margin-bottom: 60px;
  }
  .block_testimonials .swiper_testimonials p {
    font-size: 24px;
  }
  .block_testimonials .speech-mark {
    min-width: 60px;
    width: 60px;
  }
  .block_testimonials .speech-mark.bottom {
    bottom: -25px;
  }
  .block_testimonials_full_width .swiper_testimonials_full_width p {
    font-size: 24px;
  }
  .block_testimonials_full_width .swiper_testimonials_full_width .author {
    margin-top: 52px;
  }
  .block_testimonials_full_width .speech-mark {
    min-width: 60px;
    width: 60px;
  }
  .block_testimonials_full_width .speech-mark.top {
    top: -70px;
  }
  .block_logos .logos_swiper .logo-wrapper img {
    max-width: 185px;
  }
  .block_team .team-card {
    margin-top: 0;
  }
  .block_team .team-card:nth-of-type(n+3) {
    margin-top: 0;
  }
  .block_team .team-card:nth-of-type(n+5) {
    margin-top: 65px;
  }
  .block_full_width_image .image-wrapper {
    height: 475px;
  }
  .block_sector_cards .sectors .card:nth-of-type(n+3) {
    margin-top: 0;
  }
  .block_sector_cards .sectors .card:nth-of-type(n+4) {
    margin-top: 32px;
  }
  .block_text .col-12 {
    padding-left: 35px;
    padding-right: 35px;
  }
  .block_text blockquote {
    margin: 115px 0 !important;
  }
  .block_text blockquote:before, .block_text blockquote:after {
    width: 60px;
    height: 60px;
  }
  .block_text blockquote:before {
    top: -75px;
  }
  .block_text blockquote:after {
    bottom: -75px;
  }
  .block_tabs .tabs-panels {
    margin: 65px auto 0;
    max-width: 760px;
  }
  .block_tabs .tabs-nav-wrapper {
    top: 80px;
  }
}
@media screen and (min-width: 1200px) {
  .block_accreditations .logo_wrapper .accred {
    padding: 24px 32px 24px 32px;
  }
  .block_full_width_image .image-wrapper {
    height: 560px;
  }
  .block_full_width_image .image-wrapper.top {
    height: 645px;
  }
  .block_full_width_image .image-wrapper.bottom-flip {
    height: 645px;
  }
  .block_full_width_image .image-wrapper.bottom-alt {
    height: 460px;
  }
  .block_split_content_accordion .accordion {
    min-width: 593px;
  }
  .block_split_content_accordion .accordion .accordion-content .accordion-content-inner {
    max-width: 450px;
  }
}
@media screen and (min-width: 1400px) {
  .block_offices:before {
    height: 1000px;
  }
}
@media screen and (min-width: 1600px) {
  .block_offices:before {
    height: 1105px;
  }
}
.block_projects_listing .title {
  padding-top: 60px;
}
.block_projects_listing img {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 65% 100%);
  right: 0;
  top: 0;
  width: 60%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.block_projects_listing p {
  opacity: 1;
}

.projects_filters {
  position: relative;
}
.projects_filters .shape {
  bottom: 0;
  right: 0;
  width: 90%;
  min-height: 69px;
  height: 100%;
  z-index: 0;
  background-color: #FAFCFC;
  clip-path: polygon(4% 0, 100% 0, 100% 100%, 0 100%);
}
.projects_filters .container {
  border-bottom: 1px solid #b6e7df;
}
.projects_filters .filters {
  min-height: 69px;
}
.projects_filters .filters .filter-group_text {
  width: auto;
  flex: 0 0 auto;
  color: #005757;
  font-family: "DM Sans", sans-serif;
  font-size: 18px;
  font-weight: 400;
  font-style: normal;
  line-height: 27px;
  position: relative;
  cursor: pointer;
  opacity: 1;
  padding-bottom: 20px;
}
.projects_filters .filters .filter-group_text i {
  color: #005757;
  display: block !important;
  margin-right: 15px;
}
.projects_filters .filters .filter-group_wrapper {
  margin-bottom: 15px;
}
.projects_filters .filters .filter-groups {
  padding: 15px 20px;
}
.projects_filters .filters .filter-group .filter-group_button {
  width: 100%;
  padding: 7px 42px 7px 14px;
  margin: 0px;
  background-color: transparent;
  border-radius: 0;
  outline: none;
  box-shadow: none;
  text-align: left;
  cursor: pointer;
  transition: 0.6s cubic-bezier(0.2, 0.6, 0.3, 1);
  height: 40px;
  display: inline-flex;
  gap: 6px;
  align-items: center;
  cursor: pointer;
  font-size: 16px;
  --cut: 8px;
  clip-path: polygon(100% 0, 100% calc(40px - var(--cut)), calc(100% - var(--cut)) 40px, 0 40px, 0 0);
  border: 1px solid rgba(0, 87, 87, 0.1);
}
.projects_filters .filters .filter-group .filter-group_button:before {
  content: "";
  display: block;
  position: absolute;
  width: 1.5px;
  height: 10px;
  bottom: -2px;
  right: 2.5px;
  background-color: rgba(0, 87, 87, 0.1);
  transform: rotate(45deg);
}
.projects_filters .filters .filter-group .filter-group_button svg {
  display: none;
}
.projects_filters .filters .filter-group .filter-group_button span {
  color: #005757;
  z-index: 2;
  font-family: "DM Sans", sans-serif;
  font-size: 18px;
  font-weight: 400;
  font-style: normal;
  line-height: 150%;
}
.projects_filters .filters .filter-group .filter-group_button:after {
  top: 50%;
  right: 16px;
  transform: translateY(-50%) scaleY(1);
  position: absolute;
  color: #005757;
  font-family: "Font Awesome 6 Sharp";
  font-size: 16px;
  content: "\f107";
  transition: 0.6s cubic-bezier(0.2, 0.6, 0.3, 1);
}
.projects_filters .filters .filter-group .filter-group_button.is_active:after {
  top: calc(50% - 1px);
  transform: translateY(-50%) scaleY(-1);
}
.projects_filters .filters .filter-group .filter-group_checkboxes {
  width: 100% !important;
  height: auto;
  padding: 16px;
  margin: 0;
  top: 46px;
  left: 0;
  background-color: #fbfcfc;
  border: none;
  border-radius: 0;
  outline: none;
  box-shadow: none;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: 1;
  transition: 0.6s cubic-bezier(0.2, 0.6, 0.3, 1);
}
.projects_filters .filters .filter-group .filter-group_checkboxes .filter-group_checkbox {
  margin: 0px 0px 8px 0px;
}
.projects_filters .filters .filter-group .filter-group_checkboxes .filter-group_checkbox:last-of-type {
  margin: 0px;
}
.projects_filters .filters .filter-group .filter-group_checkboxes .filter-group_checkbox label {
  margin: 0px 0px 0px 8px;
  color: #005757;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-weight: 400;
  font-style: normal;
  line-height: 24px;
  text-transform: none;
}
.projects_filters .filters .filter-group .filter-group_checkboxes.is_active {
  opacity: 1;
  visibility: visible;
  pointer-events: all;
}

#active-filters {
  gap: 12px;
  margin-top: 40px;
}

.active-filter-chip {
  border: none;
  height: 40px;
  background: #00A98F;
  color: #FFFFFF;
  padding: 6px 10px;
  display: inline-flex;
  gap: 6px;
  align-items: center;
  cursor: pointer;
  font-size: 16px;
  --cut: 8px;
  clip-path: polygon(100% 0, 100% calc(40px - var(--cut)), calc(100% - var(--cut)) 40px, 0 40px, 0 0);
}
.active-filter-chip .chip-x {
  font-size: 16px;
  line-height: 1;
  opacity: 0.9;
  top: 1px;
  position: relative;
}

.case-study {
  height: 245px;
  clip-path: polygon(100% 0, 100% calc(100% - 40px), calc(100% - 40px) 100%, 0 100%, 0 0);
}
.case-study .arrow {
  display: flex;
  width: 64px !important;
  max-width: 64px !important;
  height: 64px !important;
  max-height: 64px !important;
  justify-content: center;
  align-items: center;
  aspect-ratio: 1/1;
  position: absolute;
  top: 0;
  right: 0;
  opacity: 0;
  z-index: 2;
  transition: all 0.25s ease-in-out;
}
.case-study .arrow i {
  font-size: 24px;
}
.case-study img {
  -o-object-fit: cover;
     object-fit: cover;
  transition: all 0.25s ease-in-out;
  transition-delay: 0.2s;
}
.case-study .overlay {
  background: linear-gradient(182deg, rgba(0, 0, 0, 0) 15.97%, rgba(0, 0, 0, 0.6) 69.77%);
}
.case-study .tags {
  margin-bottom: 12px;
}
.case-study .tags .tag {
  backdrop-filter: blur(75px);
  color: #BFD730;
  z-index: 2;
  max-height: 30px;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  padding: 4px 12px;
  line-height: 150%;
  background-color: rgba(200, 212, 0, 0.3);
  --cut: 20px;
  clip-path: polygon(100% 0, 100% calc(40px - var(--cut)), calc(100% - var(--cut)) 40px, 0 40px, 0 0);
}
.case-study .text-wrapper {
  padding: 25px 25px;
}
.case-study h5 {
  color: #FFFFFF;
  font-feature-settings: "ss02" on;
  font-family: "DM Sans", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 120%;
  margin-bottom: 8px !important;
}
.case-study p {
  color: #FFFFFF;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
}
.case-study:hover img {
  transform: scale(1.2);
}
.case-study:hover .arrow {
  opacity: 1;
}

.mixitup-control {
  width: 40px;
  height: 48px;
  color: #005757;
  box-shadow: none;
  border: none;
  font-size: 20px;
  line-height: 140%;
  background: none;
}
.mixitup-control .arrow_wrapper {
  height: 100%;
  width: 100%;
}
.mixitup-control .arrow_wrapper i {
  color: #005757;
  font-size: 18px;
}
.mixitup-control.mixitup-control-disabled {
  pointer-events: none;
  opacity: 0.2;
}
.mixitup-control.mixitup-control-active {
  font-family: "DM Sans", sans-serif;
  font-weight: 700;
}
.mixitup-control.mixitup-control-prev, .mixitup-control.mixitup-control-next {
  min-width: 48px;
  background-color: #BFD730;
  transition: all 0.25s ease-in-out;
}
.mixitup-control.mixitup-control-prev:hover, .mixitup-control.mixitup-control-next:hover {
  background: #005757;
  border-color: #005757;
}
.mixitup-control.mixitup-control-prev:hover i, .mixitup-control.mixitup-control-next:hover i {
  color: #BFD730;
}
.mixitup-control.mixitup-control-prev {
  margin-right: 25px;
}
.mixitup-control.mixitup-control-next {
  margin-left: 25px;
}

.mixitup-page-list {
  padding-top: 60px;
  padding-bottom: 120px;
}

@media screen and (min-width: 576px) {
  .case-study {
    height: 285px;
  }
  .case-study .text-wrapper {
    padding: 35px 40px;
  }
}
@media screen and (min-width: 768px) {
  .block_projects_listing .title {
    padding-top: 80px;
  }
  .case-study h5 {
    font-size: 24px;
  }
  .mixitup-control {
    font-size: 24px;
  }
  .mixitup-control.mixitup-control-prev {
    margin-right: 45px;
  }
  .mixitup-control.mixitup-control-next {
    margin-left: 45px;
  }
  .mixitup-page-list {
    padding-top: 80px;
  }
}
@media screen and (min-width: 992px) {
  .case-study {
    height: 340px;
  }
  .block_projects_listing .title {
    padding-top: 112px;
    padding-right: 50px;
  }
  .projects_filters:after {
    content: "";
    display: block;
    position: absolute;
    height: 99%;
    width: 30%;
    bottom: 0;
    right: 0;
    background-color: #FAFCFC;
    border-bottom: 1px solid #b6e7df;
  }
  .projects_filters .filters .filter-group {
    margin: 0;
  }
  .projects_filters .filters .filter-group .filter-group_button, .projects_filters .filters .filter-group .filter-group_checkboxes {
    width: -moz-fit-content;
    width: fit-content;
  }
  .projects_filters .filters .filter-group .filter-group_checkboxes {
    top: 56px;
  }
  .projects_filters .filters .filter-group_text {
    cursor: unset;
    font-size: 18px;
    line-height: 150%;
    margin-right: 65px;
    padding-bottom: 0;
  }
  .projects_filters .filters .filter-group_text i {
    display: none !important;
  }
  .projects_filters .filters .filter-group_wrapper {
    margin-bottom: 0;
  }
  .projects_filters .filters .filter-group .filter-group_button {
    font-size: 18px;
    line-height: 150%;
    margin: 0px 0px 0px 24px;
  }
  .projects_filters .filters .filter-group .filter-group_checkboxes {
    width: 215px !important;
    left: 16px;
  }
}
.posts_filters {
  position: relative;
}
.posts_filters .shape {
  bottom: 1px;
  right: 0;
  width: 90%;
  min-height: 69px;
  height: 100%;
  z-index: 0;
  background-color: #ECF9F7;
  clip-path: polygon(4% 0, 100% 0, 100% 100%, 0 100%);
}
.posts_filters .container {
  border-bottom: 1px solid #b6e7df;
}
.posts_filters .filters {
  min-height: 69px;
}
.posts_filters .filters .filter-group_text {
  width: auto;
  flex: 0 0 auto;
  color: #005757;
  font-family: "DM Sans", sans-serif;
  font-size: 18px;
  font-weight: 400;
  font-style: normal;
  line-height: 27px;
  position: relative;
  cursor: pointer;
  opacity: 1;
}
.posts_filters .filters .filter-group_text i {
  color: #005757;
  display: block !important;
  margin-right: 15px;
}
.posts_filters .filters .controls {
  padding-right: 0;
  width: 100%;
  gap: 12px;
  padding-top: 20px;
  padding-bottom: 20px;
}
.posts_filters .filters .controls .control {
  border: 1px solid rgba(0, 87, 87, 0.1);
  padding: 7px 15px 7px 15px;
  font-size: 18px;
  background: none;
  height: 40px;
  background-color: unset;
  display: flex;
  align-items: center;
  height: 40px;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  --cut: 8px;
  clip-path: polygon(100% 0, 100% calc(40px - var(--cut)), calc(100% - var(--cut)) 40px, 0 40px, 0 0);
  transition: all 0.25s ease-in-out;
}
.posts_filters .filters .controls .control:after {
  content: "";
  display: block;
  position: absolute;
  width: 1.5px;
  height: 10px;
  bottom: -2px;
  right: 2.5px;
  background-color: rgba(0, 87, 87, 0.1);
  transform: rotate(45deg);
}
.posts_filters .filters .controls .control span {
  color: #005757;
  position: relative;
  z-index: 2;
}
.posts_filters .filters .controls .control .chip-x {
  margin-left: 8px;
  display: none;
  top: 1px;
}
.posts_filters .filters .controls .control:hover {
  background-color: #00A98F;
}
.posts_filters .filters .controls .control:hover span {
  color: #FFFFFF;
}
.posts_filters .filters .controls .control.mixitup-control-active {
  background-color: #00A98F;
  border: #00A98F;
}
.posts_filters .filters .controls .control.mixitup-control-active:after {
  background-color: #00A98F;
}
.posts_filters .filters .controls .control.mixitup-control-active span {
  color: #FFFFFF;
}
.posts_filters .filters .controls .control.mixitup-control-active .chip-x {
  display: block;
}

/* Masonry container */
.posts-grid {
  position: relative;
}

/* 2 columns on md+ */
.posts-grid .grid-sizer,
.posts-grid .post {
  width: calc(50% - 12px);
}

/* 1 column on mobile */
@media (max-width: 767px) {
  .posts-grid .grid-sizer,
  .posts-grid .post {
    width: 100%;
  }
}
/* gutter */
.posts-grid .post {
  margin-bottom: 24px;
}

.blog {
  /* Normal cards */
}
.blog .news-card .image-wrapper {
  aspect-ratio: 16/10;
  position: relative;
  overflow: hidden;
}
.blog {
  /* Tall cards */
}
.blog .post.is-tall .news-card .image-wrapper {
  aspect-ratio: 16/16;
}
.blog .news-card .image-wrapper img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.blog .news-card .text-wrapper .excerpt,
.blog .news-card .text-wrapper p {
  display: -webkit-box;
  -webkit-line-clamp: 2; /* try 2–4 */
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.blog .news-card .text-wrapper {
  display: flex;
  flex-direction: column;
}
.blog {
  /* Reserve space for title + excerpt region */
}
.blog .news-card .text-wrapper h6 {
  min-height: 2.6em; /* ~2 lines depending on line-height */
}
.blog .news-card .text-wrapper p {
  min-height: 3.2em; /* ~3 lines depending on line-height */
}
.blog .news-card h6 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2; /* clamp to 2 lines */
  overflow: hidden;
}

@media screen and (min-width: 576px) {
  .posts_filters .filters .controls {
    padding-left: 40px;
  }
}
@media screen and (min-width: 992px) {
  .posts_filters:after {
    content: "";
    display: block;
    position: absolute;
    min-height: 69px;
    height: 100%;
    width: 30%;
    top: -1px;
    right: 0;
    background-color: #ECF9F7;
    border-bottom: 1px solid #b6e7df;
  }
  .posts_filters .filters .controls {
    padding-left: 100px;
    gap: 12px 24px;
  }
}
.page-template-page-apply .block_contact_form .introduction h1 {
  font-size: 48px;
  line-height: 100%;
}
.page-template-page-apply .block_contact_form .frm_form_title {
  font-size: 32px;
}

footer {
  padding: 0 64px 60px 64px;
  position: relative;
  z-index: 4;
}
footer .call-to-action {
  top: -1px;
  position: relative;
  padding: 50px 0 50px 0;
}
footer .call-to-action:before {
  content: "";
  display: block;
  position: absolute;
  height: 100%;
  width: 100vw;
  z-index: -1;
  top: 0px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--footer-bg);
}
footer .call-to-action h5 {
  color: #005757 !important;
  margin-bottom: 20px !important;
  margin-right: 0 !important;
}
footer .container {
  max-width: 1320px;
}
footer a {
  position: relative;
  text-decoration: none !important;
}
footer .footer-text {
  max-width: 400px;
}
footer .footer_top {
  padding-bottom: 20px;
}
footer .footer_top .row {
  z-index: 2;
  position: relative;
}
footer .footer_top svg {
  right: 0;
  position: absolute;
  top: -45px;
  width: 255px;
  height: 260px;
}
footer .footer_top h1, footer .footer_top h2, footer .footer_top h3, footer .footer_top h4, footer .footer_top h5, footer .footer_top h6 {
  color: #FFFFFF;
}
footer .footer_top h1 strong, footer .footer_top h1 em, footer .footer_top h2 strong, footer .footer_top h2 em, footer .footer_top h3 strong, footer .footer_top h3 em, footer .footer_top h4 strong, footer .footer_top h4 em, footer .footer_top h5 strong, footer .footer_top h5 em, footer .footer_top h6 strong, footer .footer_top h6 em {
  color: #BFD730;
}
footer .footer_top .menu {
  margin-top: 52px;
}
footer .footer_top .menu h6 {
  margin-bottom: 32px;
  font-weight: 600;
}
footer .footer_top nav ul {
  margin: 0;
}
footer .footer_top nav ul li {
  list-style: none;
  margin: 16px 0;
  padding: 0;
}
footer .footer_top nav ul li:first-of-type {
  margin-top: 0;
}
footer .footer_top nav ul li:last-of-type {
  margin-bottom: 0;
}
footer .footer_top nav ul li a {
  color: #FFFFFF;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 16px;
  line-height: 150%;
  transition: all 0.25s ease-in-out;
}
footer .footer_top nav ul li a:hover {
  color: #39B54A;
}
footer .footer_middle .line {
  opacity: 0.6;
  background: rgba(255, 255, 255, 0.4);
}
footer .footer_middle .company-logo {
  height: 48px;
}
footer .footer_middle * {
  color: #FFFFFF;
  font-size: 18px;
  line-height: 140%;
}
footer .footer_middle .contact-details span {
  display: flex;
  align-items: center;
}
footer .footer_middle .contact-details span:last-of-type {
  margin-right: 0;
}
footer .footer_middle .contact-details span a {
  font-weight: 500;
  transition: all 0.25s ease-in-out;
}
footer .footer_middle .contact-details span a:hover {
  color: #39B54A;
}
footer .footer_middle .contact-details span i {
  margin-right: 16px;
  font-size: 26px;
  color: #39B54A;
}
footer .footer_middle .social {
  width: 48px;
  height: 48px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 6px;
  transition: all 0.25s ease-in-out;
}
footer .footer_middle .social i {
  font-size: 16px;
  color: #FFFFFF;
}
footer .footer_middle .social:first-of-type {
  margin-left: 0;
}
footer .footer_middle .social:last-of-type {
  margin-right: 0;
}
footer .footer_middle .social:hover {
  background-color: #39B54A;
  border-color: #39B54A;
}
footer .footer_bottom hr {
  margin-bottom: 20px;
}
footer .footer_bottom * {
  color: #A5D7B1;
  font-size: 14px;
}
footer .footer_bottom .legal span {
  display: block;
  margin-bottom: 10px;
}
footer .footer_bottom .legal span.legal-text {
  color: #CBC7C1;
  margin-top: 10px;
  margin-bottom: 10px;
}
footer .footer_bottom .legal nav {
  margin-right: 10px;
}
footer .footer_bottom .legal nav ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
}
footer .footer_bottom .legal nav ul li {
  padding: 0;
  margin: 0 15px 0 0;
}
footer .footer_bottom .legal nav ul li a {
  transition: all 0.25s ease-in-out;
}
footer .footer_bottom .legal nav ul li a:hover {
  color: #39B54A;
}
footer .footer_bottom a {
  cursor: pointer;
  margin: 10px 0 !important;
  display: block;
}
footer .footer_bottom a.watermark {
  display: flex;
  align-items: center;
  transition: all 0.25s ease-in-out;
}
footer .footer_bottom a.watermark svg {
  width: 28px;
  height: 16px;
  -o-object-fit: contain;
     object-fit: contain;
  margin-left: 4px;
  top: -1px;
  position: relative;
}
footer .footer_bottom a.watermark svg path {
  transition: all 0.25s ease-in-out;
}
footer .footer_bottom a.watermark:hover {
  color: #39B54A;
}
footer .footer_bottom a.watermark:hover svg path {
  fill: #39B54A;
}
footer hr {
  height: 1px;
  color: #A5D7B1;
  background: rgba(165, 215, 177, 0.3);
  font-size: 0;
  border: 0;
  margin: 24px 0;
}

@media screen and (min-width: 576px) {
  footer:before {
    content: "";
    display: block;
    position: absolute;
    height: 75px;
    width: 30%;
    top: -1px;
    right: 0;
    background: var(--footer-bg);
  }
  footer .call-to-action-shape {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 10% 100%);
  }
  footer .call-to-action {
    padding: 0px 0 25px 0;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 10% 100%);
  }
  footer .call-to-action:before {
    display: none;
  }
  footer .call-to-action h5 {
    margin-bottom: 0 !important;
    margin-right: 38px !important;
  }
  footer .footer_middle .social:first-of-type {
    margin: 0 6px 0 12px;
  }
}
@media screen and (min-width: 768px) {
  footer .footer-text {
    max-width: unset;
  }
  footer .footer_middle * {
    font-size: 18px;
    line-height: 140%;
  }
  footer .footer_middle .contact-details span {
    margin: 0 40px 0 0;
  }
  footer .footer_middle .contact-details span:last-of-type {
    margin-right: 30px;
  }
  footer .footer_bottom .legal span {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 992px) {
  footer .footer_middle * {
    font-size: 20px;
    line-height: 140%;
  }
  footer .footer_middle .contact-details span {
    margin: 0 30px 0 0;
  }
}
@media screen and (min-width: 1200px) {
  footer .footer_top svg {
    width: 309px;
    height: 314px;
  }
  footer .footer_middle .contact-details span {
    margin: 0 40px 0 0;
  }
  footer .footer_middle .contact-details span:last-of-type {
    margin-right: 40px;
  }
  footer .footer_middle .social:first-of-type {
    margin: 0 12px 0 30px;
  }
}
@media screen and (max-width: 768px) {
  .link_button:hover {
    padding: 8px 20px !important;
  }
  .link_button:hover .arrow {
    opacity: 0 !important;
    visibility: hidden !important;
  }
  .news-card:hover .link_button, .careers:hover .link_button {
    padding: 8px 20px !important;
  }
  .news-card:hover .link_button .arrow, .careers:hover .link_button .arrow {
    opacity: 0 !important;
    visibility: hidden !important;
  }
  .post_banner.news .container {
    padding-right: 16px;
  }
  .post_banner.news .introduction {
    padding-right: 16px;
  }
  .post_banner.news p {
    padding-right: 0;
  }
  .default-content_text p span {
    font-size: 16px !important;
  }
  .full-width-image-block--bottom-flip + .block {
    margin-top: 0;
    padding-top: 4rem;
  }
  .block_angled_content_panel .link_button {
    margin-top: 0;
  }
  .block_modular_solutions .solutions .col-12:not(:last-of-type) .solution {
    margin-bottom: 32px;
  }
  .block_modular_solutions .solutions .solution span {
    margin-bottom: 30px;
  }
  .block_modular_solutions .solutions .solution img {
    width: 100%;
    height: auto;
  }
  .block_modular_solutions .solutions .solution .shape {
    bottom: -30px;
    width: 100%;
    height: auto;
  }
  .block_case_studies .h-main {
    margin-top: 40px;
  }
  .block_case_studies .h-main .slide {
    width: 500px;
  }
  .block_case_studies_by_sector .swiper .swiper-slide {
    height: 300px;
    width: 500px;
  }
  .post.is-tall .news-card .image-wrapper {
    aspect-ratio: 16/10 !important;
  }
  .block_testimonials_v2:before {
    top: -120px !important;
    height: 25% !important;
  }
  .block_text_two_columns .column-1 .column-1-button {
    display: none;
  }
  .block_text_two_columns .column-2 .column-1-button {
    display: inline-flex;
  }
  .block_offices {
    padding-left: 0;
    padding-right: 0;
  }
  .block_offices .introduction {
    padding-left: 16px;
    padding-right: 16px;
  }
  .block_offices #map-wrapper {
    width: 100vw;
    height: 50vh;
    left: -16px;
    position: relative;
  }
  .block_offices #map-wrapper #map {
    width: 100%;
    height: 100%;
  }
  .block_offices .offices-list {
    position: relative !important;
    width: 100vw;
    height: 50vh;
    top: 0;
    right: 0;
  }
  .block_framework_sectors .introduction p, .block_framework_sectors .introduction ol li, .block_framework_sectors .introduction ul li {
    font-size: 16px !important;
  }
  .block_framework_sectors .framework-sectors__item {
    max-width: 25.666667%;
    flex: 0 0 25.666667%;
  }
  .block_framework_sectors .framework-sectors .framework-sectors__list {
    margin: 80px 0 0;
  }
  .block_framework_sectors .framework-sectors .framework-sectors__item {
    margin-top: -25px !important;
  }
}
@media screen and (max-width: 992px) {
  .block_testimonials .image-wrapper {
    top: -65px !important;
    position: relative;
    width: 100%;
    clip-path: none;
    width: 100vw;
    left: -16px;
    padding: 35% 0 0 0;
  }
  .block_testimonials:after {
    display: none;
  }
  .block_testimonials .speech-mark.top {
    top: 0;
  }
  .block_testimonials .swiper_testimonials {
    min-width: unset !important;
    margin-top: 85px;
  }
  .block_testimonials .swiper_testimonials p {
    font-size: 20px;
  }
  .block_testimonials .controls {
    padding-right: 0;
    height: 100%;
  }
  .block_framework_sectors .framework-sectors__item {
    max-width: 30.666667%;
    flex: 0 0 30.666667%;
  }
  .block_framework_sectors .framework-sectors .framework-sectors__item {
    margin-top: -45px;
  }
}
@media screen and (max-width: 1200px) {
  .block_testimonials_v2:before {
    top: -180px;
  }
  .block_related_case_studies .related_case_studies_swiper .swiper-slide {
    width: 465px !important;
  }
  .block_framework_sectors .introduction h1, .block_framework_sectors .introduction h2, .block_framework_sectors .introduction h3, .block_framework_sectors .introduction h4, .block_framework_sectors .introduction h5, .block_framework_sectors .introduction h6, .block_framework_sectors .introduction p, .block_framework_sectors .introduction ol li, .block_framework_sectors .introduction ul li {
    max-width: unset;
  }
  .block_framework_sectors .introduction p, .block_framework_sectors .introduction ol li, .block_framework_sectors .introduction ul li {
    font-size: 18px;
    line-height: 150%;
  }
}
@media screen and (max-width: 1300px) {
  .block_framework_sectors .image-wrapper {
    height: 700px !important;
  }
}
@media screen and (max-width: 1440px) {
  .block_framework_sectors .image-wrapper {
    height: 725px;
  }
}
@media screen and (max-width: 1600px) {
  .block_framework_sectors svg {
    width: 10%;
  }
  .block_framework_sectors .image-wrapper {
    width: 90%;
    height: 755px;
  }
}
@media (max-width: 1100px) {
  .block_testimonials .triangle-background {
    top: -100px;
  }
  .block_testimonials .image-wrapper {
    top: -110px;
  }
  .block_testimonials .swiper_testimonials {
    min-width: 740px;
  }
}
@media screen and (max-width: 576px) {
  .frm_forms form .frm_form_fields fieldset .frm_fields_container {
    display: flex;
    flex-direction: column;
  }
  .block_case_studies .h-main .slide {
    width: 340px !important;
  }
  .block_case_studies .h-main .slide .case-study {
    height: 225px;
  }
  .block_testimonials .swiper_testimonials {
    margin-top: 55px !important;
  }
  .block_testimonials .swiper_testimonials p {
    font-size: 18px !important;
  }
  .block_testimonials .swiper_testimonials .author {
    width: calc(100% - 40px);
    margin-top: 25px;
  }
  .block_testimonials .speech-mark {
    min-width: 40px;
    width: 40px;
    min-height: 40px;
    height: 40px;
  }
  .block_testimonials .speech-mark.top {
    left: 10px;
  }
  .block_framework_sectors .framework-sectors__item {
    max-width: 80% !important;
    flex: 0 0 100% !important;
  }
  .block_case_studies_by_sector .swiper .swiper-slide {
    height: 225px !important;
    width: 340px !important;
  }
  .block_related_case_studies .related_case_studies_swiper .swiper_slide {
    width: 340px !important;
  }
  .block_related_case_studies .related_case_studies_swiper .swiper_slide .case-study {
    height: 225px !important;
  }
}
.skip-to_content {
  width: 1px;
  height: 1px;
  top: auto;
  left: -99999px;
  position: absolute;
  overflow: hidden;
}
.skip-to_content:focus {
  width: auto;
  height: auto;
  position: static;
}

.html, .body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  position: relative;
  background-color: #ECF9F7;
  overflow: visible;
}

.main {
  visibility: hidden;
}
.main:not(.is-home) {
  margin-top: 80px;
}

img.lazy-load {
  opacity: 0;
}
img.lazy-load:not(.initial) {
  transition: opacity 1.2s cubic-bezier(0.51, 0.18, 0, 0.88);
}
img.initial, img.loaded, img.error {
  opacity: 1;
}

@media screen and (min-width: 768px) {
  .main:not(.is-home) {
    margin-top: 120px;
  }
}/*# sourceMappingURL=app.css.map */