:root {
  --brand_colour_1: #6b71d8;
  --brand_colour_2: #108f96;
  --gradient-start: #ff7e5f;
  --gradient-end: #feb47b;
  --gradient-bg: linear-gradient(45deg, var(--gradient-start), var(--gradient-end));
}

html {
  font-family: "niveau-grotesk", sans-serif;
  font-weight: 300;
  font-style: normal;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "niveau-grotesk", sans-serif;
  font-weight: 400;
  font-style: normal;
  margin-bottom: 20px;
  color: #000000;
  font-size: 24px;
  margin-top: 0;
  margin-bottom: 20px;
  font-weight: bold;
  line-height: 34px;
}
@media screen and (min-width: 768px) {
  h1, h2, h3, h4, h5, h6 {
    font-size: 24px;
    line-height: 34px;
  }
}
h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
  display: block;
}
h1 i, h2 i, h3 i, h4 i, h5 i, h6 i {
  color: var(--brand_colour_1);
}

h4 {
  font-size: 18px;
  line-height: 29.124px;
}

h5, h6 {
  font-size: 15px;
  line-height: 22.652px;
}

p {
  font-family: "niveau-grotesk", sans-serif;
  font-weight: 300;
  font-style: normal;
  padding-bottom: 20px;
  float: left;
  width: 100%;
  color: #000000;
  font-size: 18px;
  line-height: 30px;
  margin: 0;
}

li {
  font-family: "niveau-grotesk", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 18px;
  line-height: 30px;
  color: #000000;
}

a {
  -webkit-transition: 0.4s;
  -moz-transition: 0.4s;
  -ms-transition: 0.4s;
  transition: 0.4s;
  text-decoration: none;
  font-family: "niveau-grotesk", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.wrap, .service-col .wrap {
  margin: 0 auto;
  max-width: 1450px;
  padding: 0 50px;
  width: 100%;
}
@media (max-width: 768px) {
  .wrap, .service-col .wrap {
    padding: 0 20px;
  }
}

section {
  width: 100%;
  padding: 60px 0;
}

.grid {
  display: grid;
  grid-gap: 20px;
  width: 100%;
  grid-template-columns: 1fr;
}
.grid::after {
  content: "";
  display: table;
  clear: both;
}

.col {
  display: flex;
  flex-direction: column;
  width: 100%;
}

@media (min-width: 769px) {
  .grid--2-col {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 769px) {
  .grid--3-col {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (min-width: 769px) {
  .grid--4-col {
    grid-template-columns: repeat(4, 1fr);
  }
}

html {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  -moz-box-sizing: inherit;
  box-sizing: inherit;
}

.clearfix {
  overflow: auto;
}

::selection {
  background: var(--brand_colour_1);
  color: #FFF;
}

html {
  overflow-x: hidden;
}

.First {
  margin-left: 0;
  clear: left;
}

.sitRight {
  float: right;
  clear: right;
}

img {
  width: 100%;
  height: auto;
  vertical-align: middle;
}

ul {
  clear: both;
  padding-left: 0px;
  margin: 0;
}

.no-margin {
  margin: 4px 0;
}

a {
  color: #000000;
  -webkit-transition: 0.4s;
  -moz-transition: 0.4s;
  -ms-transition: 0.4s;
  transition: 0.4s;
}

a:hover {
  text-decoration: underline;
}

.page {
  margin-bottom: 0;
}

select {
  cursor: pointer;
  background: #FFF url(../images/icons/select-arrow.png) !important;
  background-repeat: no-repeat !important;
  background-size: 10px !important;
  background-position-y: 50% !important;
  background-position-x: calc(100% - 20px) !important;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
}

.owl-nav {
  width: 100%;
  position: absolute;
  top: 45%;
}
.owl-nav div {
  position: absolute;
}
.owl-nav div i {
  font-weight: 800;
  font-size: 30px;
}
.owl-nav .owl-prev {
  left: 0;
}
.owl-nav .owl-next {
  right: 0;
}

#breadcrumbs ul {
  font-size: 15px;
  line-height: 22.652px;
}
#breadcrumbs ul a {
  font-weight: 800;
}

#sticky {
  position: fixed;
  right: 0px;
  top: 240px;
  overflow: hidden;
  z-index: 9999;
}
#sticky ul {
  margin: 0;
  padding: 0;
}
#sticky ul li {
  list-style-type: none;
}
#sticky ul li a {
  margin-bottom: 4px;
  text-align: left;
  display: inline-block;
  width: 100px;
  background: var(--brand_colour_1);
  text-decoration: none;
  position: relative;
  right: -62px;
  color: #FFF;
  line-height: 35px;
}
#sticky ul li a:hover {
  right: 0px;
}
#sticky ul li a span {
  height: 33px;
  display: inline-block;
  margin: 0;
  float: left;
  font-size: 13px;
  color: #fff;
  padding: 0 13px;
  line-height: 35px;
  width: auto;
}
#sticky ul li:nth-child(2) a {
  background: var(--brand_colour_2);
}
#sticky ul li:nth-child(3) a {
  background: var(--brand_colour_1);
}

.button,
button,
.wpcf7-submit,
.directions-input,
.button-text,
.nav-links a,
.omsc-button,
.wp-block-search__button,
input[type=submit] {
  padding: 14px 44px;
  background: var(--brand_colour_1);
  text-align: center;
  color: #FFF;
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -ms-transition: 0.2s;
  transition: 0.2s;
  min-width: 162px;
  display: inline-block;
  border: none;
  cursor: pointer;
  font-size: 16px;
  font-weight: 500;
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  -ms-border-radius: 12px;
  border-radius: 12px;
  position: relative;
  overflow: hidden;
  will-change: transform;
}
.button:hover,
button:hover,
.wpcf7-submit:hover,
.directions-input:hover,
.button-text:hover,
.nav-links a:hover,
.omsc-button:hover,
.wp-block-search__button:hover,
input[type=submit]:hover {
  color: #FFF;
  text-decoration: none;
  background: var(--brand_colour_2);
}

.btn-info:hover {
  background: none;
}

.button-alt {
  background: #FFF;
  color: #262626;
}
.button-alt:hover {
  background: #262626;
}

.button-text {
  display: inline-block;
  width: auto;
  margin-top: 0;
}

.intro {
  width: 100%;
  margin: 0 auto;
  float: none;
  overflow: hidden;
}
.intro p {
  padding: 0;
  margin: 0 0 20px 0;
}

.intro p:first-of-type {
  padding-top: 0px;
  margin-top: 0;
}

.contact-list li {
  list-style-type: none;
  font-family: "niveau-grotesk", sans-serif;
  font-weight: 300;
  font-style: normal;
}
.contact-list li a {
  color: var(--brand_colour_1);
  line-height: 34px;
  font-family: "niveau-grotesk", sans-serif;
  font-weight: 300;
  font-style: normal;
}
.contact-list li i {
  color: var(--brand_colour_2);
  margin-right: 5px;
}
.contact-list li .fa-facebook {
  color: #0f5ae4;
}
.contact-list li .fa-twitter {
  color: #6fd1f3;
}
.contact-list li .fa-linkedin {
  color: #0086b4;
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
textarea,
.wpcf7-select {
  width: 100%;
  margin: 0 0 10px 0;
  padding: 10px;
  font-size: 14px;
}

#faq {
  background: #e0e0e0;
  position: relative;
}
#faq .wrap {
  max-width: 1140px;
}
#faq .triangle,
#faq .triangle2 {
  background: #FFF;
}

#faq_container {
  border: 1px solid #e5e5e5;
  margin-bottom: 10px;
  padding: 10px 15px;
  background: #FFF;
}

.faq_question {
  margin: 0px;
  padding: 0px 0px 5px 0px;
  display: inline-block;
  cursor: pointer;
  font-weight: bold;
  display: table;
  font-size: 18px;
}

.question {
  margin-bottom: 5px;
  display: table-cell;
  width: 100%;
}

.faq_answer_container {
  height: 0px;
  overflow: hidden;
  padding: 0px;
}

.accordion-button-icon {
  display: table-cell;
  line-height: inherit;
  opacity: 0.5;
  filter: alpha(opacity=50);
  padding-left: 15px;
  vertical-align: middle;
}

.faq_answer span {
  font-weight: 400;
}

.post {
  overflow: hidden;
}

.privacy-policy h2 {
  margin-top: 0;
  font-size: 24px;
  line-height: normal;
}
.privacy-policy p {
  margin: 5px 0;
}

.btn-info:active, .btn-info.active, .open > .dropdown-toggle.btn-info {
  background: var(--brand_colour_1) !important;
  border: none !important;
}

#news .well-lg {
  background: #FFF;
}

.grecaptcha-badge {
  display: none !important;
}

.aol_app_form {
  width: 100%;
  float: left;
}

.split-line {
  height: 2px;
  background: #FFF;
  width: 100%;
  margin: 20px 0;
  clear: both;
}

.form-title {
  background: var(--brand_colour_1);
  padding: 10px !important;
  margin: 0 0 10px 0 !important;
  display: inline-block;
  width: auto;
  clear: both;
}

.wpcf7-form label {
  margin-bottom: 5px;
  display: block;
}
.wpcf7-form .wpcf7-radio, .wpcf7-form .wpcf7-checkbox {
  background: none !important;
  border: none !important;
  padding: 20px 0 !important;
}
.custom-slider {
  overflow: hidden;
  width: 100%;
  position: relative;
}

.slider-wrapper {
  display: flex;
  width: 100%;
}

.slider-item {
  flex: 0 0 auto;
  width: 200px; /* Adjust based on your design */
  height: 100px; /* Adjust based on your design */
  margin-right: 40px; /* Matches your Owl Carousel margin */
  background: #333; /* Placeholder style */
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Duplicate items for infinite loop */
.slider-wrapper.duplicated {
  position: absolute;
  top: 0;
  left: 0;
}

.error-404 {
  background: #000000;
}
.error-404 a {
  color: var(--brand_colour_1);
}

.sitemap a {
  color: var(--brand_colour_1);
}

.fa-facebook {
  color: #1877f2 !important;
}

.fa-linkedin {
  color: #0a66c2 !important;
}

header {
  width: 100%;
  float: left;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 200;
  min-height: 84px;
  padding-top: 20px;
}
header .logo,
header .alt-logo {
  float: left;
  width: 200px;
  margin: 10px 0 20px 20px;
}
@media screen and (min-width: 768px) {
  header .logo,
  header .alt-logo {
    width: 200px;
  }
}
@media screen and (min-width: 1024px) {
  header .logo,
  header .alt-logo {
    width: 200px;
    margin: 10px 0 20px 0;
  }
}
@media screen and (min-width: 1500px) {
  header .logo,
  header .alt-logo {
    width: 200px;
  }
}
header .logo img,
header .alt-logo img {
  width: 100%;
  height: auto;
}
.shrink {
  position: fixed;
  height: auto;
  z-index: 9999;
  top: 0px;
  background: #FFF;
  -webkit-box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, 0.14);
  -moz-box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, 0.14);
  box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, 0.14);
  -webkit-transition: 0.7s;
  -moz-transition: 0.7s;
  -ms-transition: 0.7s;
  transition: 0.7s;
  padding: 0;
}
.shrink .wrap:after {
  display: none;
}
.shrink .head-buttons {
  display: none;
}
.shrink .main-navigation li {
  border-right: solid 1px #262626;
}
.shrink .main-navigation li a {
  color: #262626;
}
.shrink .phone-navigation li a {
  color: #262626;
}
.shrink .logo,
.shrink .alt-logo {
  float: left;
  width: 75px;
  margin: 10px 0;
}
.shrink .logo img,
.shrink .alt-logo img {
  width: 100%;
  height: auto;
}
.shrink .menu-icon {
  top: 14px;
}
.head-buttons {
  float: right;
  width: auto;
  margin-top: 0px;
  text-align: center;
  padding-bottom: 0px;
  margin-right: 70px;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .head-buttons {
    float: right;
    text-align: inherit;
    margin-right: 70px;
    margin-top: 0px;
  }
}
@media screen and (min-width: 1024px) {
  .head-buttons {
    float: right;
  }
}
@media screen and (min-width: 1024px) {
  .head-buttons {
    margin-top: 0px;
    margin-right: 0;
  }
}
.head-buttons .button {
  min-width: auto;
  padding: 14px;
  float: right;
  background: none;
  color: #FFF;
  padding: 0;
  margin-top: 11px;
  font-size: 16px;
  text-transform: none;
  font-weight: 400;
  margin-left: 10px;
  letter-spacing: 0px;
  font-family: "niveau-grotesk", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.head-buttons .button i {
  color: #FFF;
}
@media screen and (min-width: 1024px) {
  .head-buttons .button {
    margin-left: 20px;
  }
}
.head-buttons .button-alt {
  display: none;
  font-family: "niveau-grotesk", sans-serif;
  font-weight: 400;
  font-style: normal;
}
@media screen and (min-width: 768px) {
  .head-buttons .button-alt {
    display: inline-block;
    color: #FFF;
    text-align: center;
    margin-top: 0px;
    text-decoration: none;
  }
  .head-buttons .button-alt .fas {
    font-size: 28px;
    margin-right: 8px;
    position: relative;
    bottom: -6px;
  }
  .head-buttons .button-alt:hover {
    color: var(--brand_colour_2);
  }
}

.head-buttons span {
  display: none;
}
@media screen and (min-width: 1024px) {
  .head-buttons span {
    display: inline-block;
    margin-left: 10px;
  }
}
.head-buttons .ico-letter {
  display: inline-block;
  color: var(--brand_colour_2);
}

#strapline {
  padding: 0;
  background: var(--brand_colour_2);
}
#strapline .strapline-area {
  text-align: center;
  width: 100%;
  padding: 0px;
}
#strapline .strapline-area p {
  color: #fff;
  margin: 0;
  padding: 10px;
}

.main-navigation,
.phone-navigation {
  float: right;
  width: auto;
  clear: none;
  margin-top: 10px;
  margin-bottom: 20px;
  display: none;
}
@media screen and (min-width: 1024px) {
  .main-navigation,
  .phone-navigation {
    display: inline-block;
  }
}
.main-navigation li,
.phone-navigation li {
  border-right: solid 1px #FFF;
  line-height: 10px;
  float: left;
  font-family: "niveau-grotesk", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.main-navigation li:last-child,
.phone-navigation li:last-child {
  border: none;
}
.main-navigation li:last-child a,
.phone-navigation li:last-child a {
  padding-right: 0;
  margin-right: 0;
}
.main-navigation li i,
.phone-navigation li i {
  color: var(--brand_colour_1);
  margin-right: 5px;
  background: #FFF;
  border-radius: 100%;
  width: 25px;
  height: 25px;
  text-align: center;
  line-height: 25px;
  font-size: 12px;
}
.main-navigation li a,
.phone-navigation li a {
  padding: 0px 10px;
  margin: 0 10px;
  color: #262626;
  text-decoration: none;
  font-family: "niveau-grotesk", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  position: relative;
}
@media screen and (min-width: 1151px) {
  .main-navigation li a,
  .phone-navigation li a {
    margin: 0 10px;
    padding: 0px 5px;
  }
}
@media screen and (min-width: 1200px) {
  .main-navigation li a,
  .phone-navigation li a {
    margin: 0 16px;
    padding: 0px 6px;
  }
}
@media screen and (min-width: 1300px) {
  .main-navigation li a,
  .phone-navigation li a {
    margin: 0 2px;
    padding: 0px 10px;
    font-size: 16px;
    margin: 0 20px;
  }
}
.main-navigation li a:hover,
.phone-navigation li a:hover {
  color: var(--brand_colour_1);
}
@media screen and (min-width: 1151px) {
  .main-navigation,
  .phone-navigation {
    display: inline-block;
  }
}
.main-navigation .menu-item-has-children a,
.phone-navigation .menu-item-has-children a {
  padding-right: 20px;
}
.main-navigation .menu-item-has-children:after,
.phone-navigation .menu-item-has-children:after {
  right: 18px;
  top: 0px;
  content: "\f107";
  position: absolute;
  font-size: 14px;
  width: auto;
  font-family: "Font Awesome 5 Free";
  display: inline-block;
  vertical-align: middle;
  font-weight: 900;
  color: var(--brand_colour_1);
}
.main-navigation .menu-item-has-children .sub-menu .menu-item-has-children:after,
.phone-navigation .menu-item-has-children .sub-menu .menu-item-has-children:after {
  content: "\f105";
  top: 8px;
}

.main-navigation .menu .sub-menu {
  background: rgb(255, 255, 255);
  display: block;
  top: 14px;
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px;
  overflow: hidden;
  box-shadow: none;
}
.main-navigation .menu .sub-menu li {
  border: none;
  line-height: 24px;
}
.main-navigation .menu .sub-menu li a {
  margin: 0;
  padding: 10px;
  text-decoration: none;
  color: #000000;
}
.main-navigation .menu .sub-menu li a:hover {
  background: var(--brand_colour_2);
  color: #FFF;
}

.main-navigation ul ul a {
  width: 314px;
}

button#responsive-menu-button {
  min-width: 50px;
  right: 20px;
}

button#responsive-menu-button .responsive-menu-box {
  color: #ffffff;
  margin-top: -3px;
}

.alt-logo {
  display: none;
}

.show {
  display: block;
}

.hide {
  display: none;
}

.head-content {
  float: right;
  width: auto;
  margin-top: 10px;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .head-content {
    display: inline-block;
    width: 79%;
  }
}
@media screen and (min-width: 1151px) {
  .head-content {
    margin-top: 0px;
    width: 74%;
  }
}

#rmp_menu_trigger-471 {
  min-width: auto;
  top: 26px;
  background: var(--brand_colour_2);
  right: 20px;
}

#rmp-menu-title-258 .rmp-menu-title-image {
  width: 200%;
  height: auto;
}

#rmp-container-471 {
  background: var(--brand_colour_2);
}

header .head-buttons .new-head-button {
  padding: 14px 16px 14px 38px;
  color: #FFF;
  background: var(--brand_colour_2);
  text-align: center;
  -webkit-transition: 0.2s;
  -moz-transition: 0.2s;
  -ms-transition: 0.2s;
  transition: 0.2s;
  min-width: 162px;
  display: inline-block;
  border: none;
  cursor: pointer;
  margin-top: 0;
  display: none;
}
header .head-buttons .new-head-button:before {
  left: 24px;
}
@media screen and (min-width: 1024px) {
  header .head-buttons .new-head-button {
    display: inline-block;
    margin-right: 0px;
    padding: 14px 26px 14px 48px;
  }
}
@media screen and (min-width: 1151px) {
  header .head-buttons .new-head-button {
    padding: 14px 26px 14px 48px;
    margin-right: 0;
  }
}
@media screen and (min-width: 1500px) {
  header .head-buttons .new-head-button {
    padding: 14px 46px 14px 68px;
    margin-right: 0;
  }
  header .head-buttons .new-head-button:before {
    left: 44px;
  }
}
header .head-buttons .new-head-button:hover {
  background: #55719a;
  color: #FFF;
  text-decoration: none;
}
header .head-buttons .new-head-button:before {
  content: "\f017";
}
header .head-buttons .new-head-button:nth-child(2):before {
  content: "\f093";
}
header .head-buttons .new-head-button:nth-child(3):before {
  content: "\f095";
}

.ico-letter {
  font-weight: 700;
  color: var(--brand_colour_1);
}

button.rmp_menu_trigger {
  min-width: auto;
}

#rmp_menu_trigger-356 {
  top: 10px !important;
  right: 20px !important;
}

#rmp_menu_trigger-370 {
  background: none;
  top: 0;
  width: 48px;
  height: 48px;
  right: 10px;
}
#rmp_menu_trigger-370:hover {
  background: none;
}

#rmp_menu_trigger-370.is-active {
  background: none;
}

#rmp_menu_trigger-370:focus {
  background: none;
}

.social {
  list-style-type: none;
  padding-left: 0;
  float: right;
}
.social li {
  float: left;
}
.social li a {
  margin-left: 10px !important;
}
.social li a .fa-facebook {
  color: var(--brand_colour_2);
}
.social li a .fa-linkedin {
  color: var(--brand_colour_2);
}
.social li a .fa-instagram {
  color: var(--brand_colour_2);
}

.head-info {
  margin-top: 3px;
  float: right;
  clear: both;
}
@media screen and (max-width: 600px) {
  .head-info {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .head-info {
    clear: none;
    margin-right: -70px;
    width: 100%;
  }
}
@media screen and (min-width: 1151px) {
  .head-info {
    margin-right: 0px;
    width: auto;
  }
}

.rmp_menu_trigger {
  background: var(--brand_colour_2) !important;
  right: 16px !important;
  top: 24px !important;
  position: absolute !important;
}

.rmp_menu_trigger.fixed {
  position: fixed !important;
  top: 14px !important;
}

.rmp-container .rmp-menu-title .rmp-menu-title-image {
  max-width: 160px !important;
}

.phone-navigation {
  list-style-type: none;
}

header .main-navigation li a,
header .phone-navigation li a {
  color: #FFF;
}
header .menu-item-has-children a {
  padding-right: 20px;
}
header .menu-item-has-children:after {
  color: #FFF !important;
}

.menu-icon {
  position: absolute;
  top: 24px;
  right: 20px;
  width: 58px;
  height: 58px;
  cursor: pointer;
  z-index: 2;
  border-radius: 100%;
  border: solid 2px #FFF;
  padding-top: 6px;
  z-index: 200;
}
@media screen and (min-width: 1024px) {
  .menu-icon {
    display: none;
  }
}
.menu-icon .bar1,
.menu-icon .bar2,
.menu-icon .bar3 {
  width: 34px;
  height: 3px;
  background-color: #ffffff;
  margin: 8px auto;
  transition: 0.4s;
  border-radius: 10px;
}
.menu-icon.change .bar1 {
  transform: rotate(-45deg) translate(-7px, 8px);
  background-color: #FFF;
}
.menu-icon.change .bar2 {
  opacity: 0;
}
.menu-icon.change .bar3 {
  transform: rotate(45deg) translate(-7px, -8px);
  background-color: #FFF;
}

.fullscreen-menu {
  opacity: 0;
  visibility: hidden;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.9);
  justify-content: center;
  align-items: center;
  z-index: 100;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}
.fullscreen-menu ul {
  list-style: none;
  padding: 0;
  text-align: center;
}
.fullscreen-menu ul li {
  margin: 14px 0 !important;
  border: none;
  clear: both;
  text-align: center;
  width: 100%;
  padding: 0;
  margin: 0;
  border: none;
}
.fullscreen-menu ul li a {
  color: #ffffff;
  text-decoration: none;
  font-size: 18px;
  transition: color 0.3s;
  display: block;
  padding: 0;
  margin: 0;
}
.fullscreen-menu ul li a:hover {
  color: var(--brand_colour_2);
}
.fullscreen-menu.active {
  opacity: 1;
  visibility: visible;
  display: flex;
}
.fullscreen-menu .main-navigation {
  display: block;
  width: 100%;
}
.fullscreen-menu .main-navigation ul {
  display: block;
}
.fullscreen-menu #primary-menu li {
  opacity: 0;
}
.fullscreen-menu .main-navigation .menu .sub-menu {
  background: none;
  color: #FFF;
}
.fullscreen-menu .main-navigation ul ul {
  position: static;
}

.shrink .menu-icon {
  border: solid 2px var(--brand_colour_2);
}
.shrink .menu-icon .bar1,
.shrink .menu-icon .bar2,
.shrink .menu-icon .bar3 {
  width: 34px;
  height: 3px;
  background-color: var(--brand_colour_2);
  margin: 8px auto;
  transition: 0.4s;
  border-radius: 10px;
}
.shrink .menu-icon.change .bar1 {
  transform: rotate(-45deg) translate(-7px, 8px);
  background-color: var(--brand_colour_2);
}
.shrink .menu-icon.change .bar2 {
  opacity: 0;
}
.shrink .menu-icon.change .bar3 {
  transform: rotate(45deg) translate(-7px, -8px);
  background-color: var(--brand_colour_2);
}
.shrink .change {
  border: solid 2px #FFF;
}
.shrink .change .bar1, .shrink .change .bar2, .shrink .change .bar3 {
  background-color: #FFF !important;
}
.shrink .active .menu li a {
  color: #FFF;
}

.phone-navigation .head-social a {
  margin: 0 5px;
}

.nav-wrap {
  width: 100%;
  clear: both;
}

.shrink li i {
  background: var(--brand_colour_1);
  color: #FFF;
}
.shrink .phone-navigation li {
  border-right: solid 1px #000000;
}
.shrink .phone-navigation li:last-child {
  border: none;
}
.shrink .phone-navigation .head-social i {
  background: #e0e0e0;
}

footer {
  padding-top: 20px;
  background: #000000;
  clear: both;
  overflow: hidden;
}
footer .wrap, footer .service-col .wrap, .service-col footer .wrap {
  position: relative;
}
footer .footer-1 {
  float: left;
  width: 100%;
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  footer .footer-1 {
    width: 50%;
  }
}
@media screen and (min-width: 1151px) {
  footer .footer-1 {
    width: 100%;
  }
}
footer .footer-2 {
  float: left;
  width: 100%;
}
@media screen and (min-width: 768px) {
  footer .footer-2 {
    width: 50%;
  }
}
@media screen and (min-width: 1151px) {
  footer .footer-2 {
    width: 100%;
  }
}
footer .footer-2 i {
  width: 18px;
}
footer .footer-3 {
  float: left;
  width: 100%;
}
@media screen and (min-width: 1024px) {
  footer .footer-3 {
    width: 33%;
  }
}
footer .footer-3 i {
  color: var(--brand_colour_2);
  width: 18px;
}
footer .footer-4 {
  float: left;
  width: 100%;
}
@media screen and (min-width: 1024px) {
  footer .footer-4 {
    width: 25%;
  }
}

.foot-image {
  float: left;
}
.foot-image img {
  width: 100%;
  margin-top: 60px;
  max-width: 200px;
}

.footer-title {
  font-size: 18px;
  margin-bottom: 0;
  font-family: "niveau-grotesk", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-weight: 700;
}

footer ul {
  padding: 0;
  margin: 0;
}
footer ul li {
  width: auto;
  list-style-type: none;
  color: #FFF;
  font-size: 14px;
  line-height: 24px;
  margin-right: 7px;
  padding-right: 7px;
  font-weight: 400;
}
@media screen and (min-width: 1151px) {
  footer ul li {
    line-height: 14px;
    margin-right: 20px;
    float: left;
    border-right: solid 1px #8a8a8a;
  }
}
footer ul li:last-child {
  border: none;
}
footer ul li a {
  color: #FFF;
  font-weight: 400;
}
footer ul li a .fa-envelope {
  color: #50c995;
}
footer ul li a .fa-phone {
  color: #55719a;
}
footer p {
  color: #FFF;
  font-size: 12px;
}

.bottom-footer {
  float: left;
  width: 100%;
  background: #000000;
  margin-top: 40px;
}
.bottom-footer a {
  color: #FFF;
}
.bottom-footer .copy {
  float: left;
  width: 100%;
  padding-bottom: 0;
  font-size: 11px;
  letter-spacing: 0;
}
@media screen and (min-width: 700px) {
  .bottom-footer .copy {
    width: auto;
    padding-bottom: 0;
  }
}
.bottom-footer .by {
  float: left;
  width: 100%;
  font-size: 11px;
  letter-spacing: 0;
}
@media screen and (min-width: 700px) {
  .bottom-footer .by {
    width: auto;
    float: right;
    padding-bottom: 0;
  }
}
.social-media ul {
  float: left;
  width: 100%;
}
.social-media ul li {
  display: inline-block;
  width: auto;
  margin-right: 10px;
}
.social-media ul li a {
  background: var(--brand_colour_2);
  width: 40px;
  height: 40px;
  float: left;
  border-radius: 50px;
  text-align: center;
  color: #FFF;
  line-height: 40px;
}
.social-media ul li a:hover {
  background: #002f49;
}

.footer-title {
  font-size: 14px;
}

footer .site-info {
  padding: 20px 0 40px 0;
}
footer .fa-facebook {
  color: #0f5ae4;
}
footer .fa-linkedin {
  color: #0086b4;
}
footer .fa-twitter {
  color: #6fd1f3;
}
footer .fa-instagram {
  color: #f91acc;
}

.footer-3 a span {
  color: var(--brand_colour_2);
}

.menu-wrap {
  width: 100%;
  float: left;
}
.add-list {
  margin-top: 10px;
  overflow: hidden;
  clear: both;
  float: left;
}

.foot-logo {
  position: absolute;
  width: auto;
  height: 250px;
  top: 22%;
  right: 30px;
}
@media screen and (min-width: 1024px) {
  .foot-logo {
    width: 250px;
    top: 10%;
  }
}

#hero-banner {
  padding: 0;
  position: relative;
  background: var(--gradient-bg);
  overflow: hidden;
  height: 800px;
}
@media screen and (min-width: 768px) {
  #hero-banner {
    height: 800px;
  }
}
#hero-banner .image-fade {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 800px;
  z-index: 2;
  opacity: 0.45;
}
@media screen and (min-width: 768px) {
  #hero-banner .image-fade {
    height: 800px;
  }
}
#hero-banner .hero-content {
  position: absolute;
  top: 55%;
  transform: translateY(-50%);
  width: 100%;
  left: 0;
  right: 0;
  z-index: 25;
  max-width: 1450px;
  padding: 0 50px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  #hero-banner .hero-content {
    top: 52%;
    transform: translateY(-50%);
    width: 90%;
    padding: 0 15px;
  }
}
#hero-banner .hero-content .hero-heading {
  text-align: left;
  width: 100%;
  clear: both;
  overflow: hidden;
}
#hero-banner .hero-content .hero-heading p {
  color: #FFF;
  font-size: 54px;
  margin: 0;
  padding: 0;
  line-height: 64px;
  font-weight: bold;
}
#hero-banner .hero-content .hero-heading p span {
  color: var(--brand_colour_1);
}
#hero-banner .hero-content .hero-heading .subheading {
  font-size: 26px;
  margin: 20px 0 0 0;
  padding: 0;
  line-height: 38px;
  font-weight: normal;
}
@media (max-width: 768px) {
  #hero-banner .hero-content .hero-heading {
    width: 100%;
    text-align: center;
  }
  #hero-banner .hero-content .hero-heading p {
    font-size: 32px;
    line-height: 40px;
  }
  #hero-banner .hero-content .hero-heading .subheading {
    font-size: 26px;
    padding: 0;
    line-height: 38px;
  }
}
#hero-banner .hero-buttons {
  clear: both;
  margin-top: 40px;
  text-align: left;
}
@media (max-width: 768px) {
  #hero-banner .hero-buttons {
    text-align: center;
  }
}
#hero-banner .hero-buttons .button {
  color: #FFF;
}
#hero-banner .hero-slides {
  list-style-type: none;
}
#hero-banner .hero-slides img {
  opacity: 0.4; /* Adjust transparency */
  height: 800px;
  object-fit: cover;
}
@media screen and (min-width: 768px) {
  #hero-banner .hero-slides img {
    height: 800px;
  }
}

.privacy-policy .hero-buttons {
  display: none;
}

.content-repeater {
  position: relative;
  background: #FFF;
}
.content-repeater ul {
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
}
.content-repeater li {
  width: 100%;
  margin-bottom: 0;
}
.content-repeater .grid {
  display: grid;
  grid-gap: 20px;
  align-items: center;
  width: 100%;
}
@media (min-width: 769px) {
  .content-repeater .grid {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 768px) {
  .content-repeater .grid {
    grid-template-columns: 1fr;
  }
}
.content-repeater .col {
  padding: 0;
  width: 100%;
}
@media (max-width: 768px) {
  .content-repeater .col h1, .content-repeater .col h2, .content-repeater .col h3, .content-repeater .col h4, .content-repeater .col h5, .content-repeater .col h6 {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.content-repeater .col h2 {
  margin-top: 20px;
}
@media (min-width: 769px) {
  .content-repeater .col h2 {
    margin-top: 0;
  }
}
.content-repeater .col h1 {
  font-size: 38px;
  line-height: 36px;
  padding-left: 20px;
  padding-right: 20px;
}
.content-repeater .col p {
  margin: 0;
}
@media (max-width: 768px) {
  .content-repeater .col p {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.content-repeater .col img {
  object-fit: cover;
  margin: 20px 0;
  border-radius: 6px;
  display: block;
  width: 100%;
  height: auto;
}
@media (min-width: 769px) {
  .content-repeater .col img {
    margin: 40px 0;
  }
}
.content-repeater .col ul {
  margin: 20px 20px 20px 0;
  padding: 0;
}
@media (max-width: 768px) {
  .content-repeater .col ul {
    margin: 20px 20px 0 20px;
  }
}
.content-repeater .col ul li {
  position: relative;
  padding-left: 30px;
  margin-bottom: 16px;
  font-family: "niveau-grotesk", sans-serif;
  font-weight: 300;
  font-style: normal;
}
.content-repeater .col ul li:last-child {
  margin-bottom: 0;
}
.content-repeater .col ul li:before {
  content: "\f058";
  position: absolute;
  left: 0;
  top: 0;
  font-size: 17px;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: var(--brand_colour_2);
}
@media (max-width: 768px) {
  .content-repeater li:nth-child(even) .grid {
    display: grid;
    grid-template-rows: auto auto;
  }
  .content-repeater li:nth-child(even) .grid > .col:first-child {
    order: 2;
  }
  .content-repeater li:nth-child(even) .grid > .col:last-child {
    order: 1;
  }
}

.three-col {
  text-align: left;
  width: 100%;
  background: #e0e0e0;
}
.three-col .intro {
  margin-bottom: 20px;
}
.three-col .grid {
  grid-gap: 20px;
}
@media (min-width: 769px) {
  .three-col .grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.three-col .col {
  background: #FFF;
  -webkit-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
  -moz-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
  border-radius: 6px;
  overflow: hidden;
  padding: 30px;
}
@media (max-width: 768px) {
  .three-col .grid {
    grid-template-columns: 1fr;
  }
}

.call-back {
  position: relative;
  background: #000;
  overflow: hidden;
}
.call-back .call-image {
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: 0;
}
.call-back .call-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.8;
}
.call-back .wrap {
  position: relative;
  z-index: 3;
}
.call-back .grid {
  grid-gap: 20px;
  align-items: center;
}
@media (min-width: 769px) {
  .call-back .grid {
    grid-template-columns: 1fr 2fr;
  }
}
@media (max-width: 768px) {
  .call-back .grid {
    grid-template-columns: 1fr;
  }
}
.call-back .col:first-child h2, .call-back .col:first-child h3 {
  color: #FFF;
}
.call-back .col:first-child p {
  color: #FFF;
}
.call-back .col:first-child ul {
  padding-left: 20px;
}
.call-back .col:first-child ul li {
  color: #FFF;
}
.call-back .col:first-child ul li a {
  color: #FFF;
}
.call-back .wpcf7-form p {
  font-size: 18px;
  margin-bottom: 0;
  line-height: normal;
  padding: 0;
  color: #FFF;
}
.call-back .wpcf7-form p a {
  color: #FFF;
  text-decoration: underline;
}
.call-back .wpcf7-form .wpcf7-form-control-wrap {
  overflow: hidden;
}
.call-back .wpcf7-form .wpcf7-form-control-wrap .wpcf7-form-control {
  border: 1px solid #ccc;
  border-radius: 12px;
  padding: 14px;
  width: 100%;
  font-size: 14px;
  font-family: "niveau-grotesk", sans-serif;
  font-weight: 300;
  font-style: normal;
  color: #000000;
  outline: none;
  background: #FFF;
  display: block;
}
.call-back .wpcf7-form .wpcf7-form-control-wrap select {
  background: #FFF url(../images/icons/select-arrow.png) no-repeat;
  background-size: 10px;
  background-position: calc(100% - 20px) 50%;
}
.call-back .wpcf7-form .wpcf7-form-control-wrap .wpcf7-acceptance {
  color: #000000;
  clear: both;
  display: block;
  padding: 0;
  margin: 20px 0;
  background: none;
  border: none;
}
.call-back .wpcf7-form .wpcf7-form-control-wrap .wpcf7-list-item {
  margin-left: 0;
}
.call-back .wpcf7-form .wpcf7-file {
  margin: 10px 0;
  background: #FFF;
}
.call-back .wpcf7-form .wpcf7-submit {
  border: solid 1px #FFF;
}
.call-back .wpcf7-form .wpcf7-response-output {
  border-radius: 12px;
  text-align: center;
  padding: 10px;
  color: #FFF;
}
.call-back .wpcf7-form .wpcf7-list-item-label {
  color: #FFF;
}
.call-back .wpcf7-form .wpcf7-not-valid-tip {
  color: #FFF;
  font-size: 12px;
  display: block;
  clear: both;
  background: #f00;
  border-radius: 12px;
  padding: 5px;
  position: relative;
}
.call-back .wpcf7-form .wpcf7-not-valid-tip:after {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  border-width: 8px;
  border-style: solid;
  border-color: transparent transparent #f00 transparent;
}
@media (max-width: 768px) {
  .call-back textarea {
    margin-top: 10px;
  }
}

.cta-trio {
  text-align: left;
  width: 100%;
  background: #e0e0e0;
}
.cta-trio .intro {
  margin-bottom: 20px;
}
.cta-trio .grid {
  grid-gap: 20px;
}
@media (min-width: 769px) {
  .cta-trio .grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 768px) {
  .cta-trio .grid {
    grid-template-columns: 1fr;
  }
}
.cta-trio .col {
  background: #FFF;
  -webkit-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
  -moz-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
  border-radius: 6px;
  overflow: hidden;
}
.cta-trio .cta-block .cta-block-image img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  object-position: left top;
  display: block;
}
@media (min-width: 769px) {
  .cta-trio .cta-block .cta-block-image img {
    height: 280px;
  }
}
.cta-trio .cta-block .cta-block-content {
  padding: 30px;
}
.cta-trio .cta-block .cta-block-content p {
  margin: 0;
}
.cta-trio .cta-block .cta-block-content .button {
  margin-top: 20px;
  display: inline-block;
}

.one-col {
  background: #e0e0e0;
}
.one-col .intro p {
  tex-align: left;
}
.one-col .one-col-content {
  background: #FFF;
  padding: 40px;
  overflow: hidden;
  border-radius: 6px;
  -webkit-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
  -moz-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
}
.one-col .one-col-content .steps-form .steps-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px; /* Adjust as needed for spacing */
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .one-col .one-col-content .steps-form .steps-row {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 1024px) {
  .one-col .one-col-content .steps-form .steps-row {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media screen and (min-width: 1500px) {
  .one-col .one-col-content .steps-form .steps-row {
    grid-template-columns: repeat(7, 1fr);
  }
}
.one-col .one-col-content .steps-form .steps-row .steps-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  background: #e0e0e0;
  margin-bottom: 14px;
  padding: 0 10px 0;
}
.one-col .one-col-content .steps-form .steps-row:before {
  display: none;
}
.one-col .one-col-content .steps-form .steps-row .steps-step p {
  font-size: 13px;
  margin: 4px 0 12px;
  padding: 0;
  line-height: 18px;
}
.one-col .one-col-content .steps-form .steps-row .steps-step .btn-circle {
  margin-top: -14px;
  background: #e0e0e0 !important;
  cursor: default !important;
}
.one-col .one-col-content .steps-form .steps-row .steps-step .btn-circle.uacf7-btn-active {
  background: var(--brand_colour_1) !important;
  color: #FFF !important;
  box-shadow: none;
}
.one-col .one-col-content .steps-form .steps-row .steps-step .btn-circle.uacf7-btn-active p {
  color: #FFF !important;
}
.one-col .one-col-content .steps-form .steps-row .steps-step .completed {
  background: #32b30f !important;
  color: #FFF !important;
  cursor: pointer !important;
}
.one-col .one-col-content .uacf7-step ul, .one-col .one-col-content .uacf7-step ol {
  padding-left: 20px;
  margin-bottom: 20px;
}
.one-col .one-col-content .uacf7-step ul li, .one-col .one-col-content .uacf7-step ol li {
  font-size: 16px;
  line-height: 26px;
}
.one-col .one-col-content .uacf7-step p {
  margin: 5px 0 10px;
  padding: 0;
  float: left;
  clear: both;
  width: 100%;
  font-size: 16px;
  line-height: 26px;
}
.one-col .one-col-content .uacf7-step h2, .one-col .one-col-content .uacf7-step h3 {
  margin: 10px 0;
  clear: both;
  float: left;
  display: block;
  width: 100%;
}
.one-col .one-col-content .steps-form .steps-row .steps-step .btn-circle:hover, .one-col .one-col-content .steps-form .steps-row .steps-step .btn-circle:focus, .one-col .one-col-content .steps-form .steps-row .steps-step .btn-circle:active {
  box-shadow: none;
}
.one-col .one-col-content .wpcf7-form-control-wrap {
  margin-bottom: 10px;
  display: block;
  clear: both;
}
.one-col .one-col-content .wpcf7-form-control-wrap input {
  border-radius: 12px;
  background: #e0e0e0;
}
.one-col .one-col-content .wpcf7-form-control-signature-wrap, .one-col .one-col-content textarea {
  background: #e0e0e0;
  border-radius: 12px;
  color: #262626;
  border: 1px solid #ccc !important;
}
.one-col .one-col-content .wpcf7-form-control-clear-wrap {
  margin-top: 20px;
}
.one-col .one-col-content .wpcf7-submit {
  margin-top: 40px;
}
.one-col .one-col-content .wpcf7-checkbox .wpcf7-list-item {
  margin-left: 0;
  margin-right: 20px;
  margin-bottom: 10px;
}
.one-col .one-col-content .wpcf7-radio .first, .one-col .one-col-content .wpcf7-checkbox .first {
  margin-left: 0;
}
.one-col .one-col-content .wpcf7-form label {
  clear: both;
}
.one-col .one-col-content .wpcf7-select {
  padding: 10px;
  border: 1px solid #ccc !important;
  width: 100%;
  border-radius: 12px;
  margin-top: 0px;
  background: #e0e0e0;
}
.one-col .one-col-content .wpcf7-form-control {
  display: block !important;
}
.one-col .one-col-content .wpcf7 input[type=file] {
  padding: 10px;
  border: 1px solid #ccc !important;
  width: 100%;
  border-radius: 12px;
  margin-top: 0px;
  background: #e0e0e0;
}
.one-col .wpcf7 form.sent .wpcf7-response-output {
  border-radius: 12px;
  text-align: center;
  padding: 10px;
  clear: both;
}

.one-col .one-col-content .steps-form .steps-row .steps-step p {
  display: block;
}

.two-col .intro {
  text-align: left;
  width: 100%;
  margin-bottom: 20px;
}
.two-col .intro p,
.two-col .intro h2 {
  color: #000000;
}
.two-col .grid {
  grid-gap: 30px;
}
@media (min-width: 769px) {
  .two-col .grid {
    grid-template-columns: 1fr 1fr;
  }
}
.two-col .col {
  background: #e0e0e0;
  -webkit-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
  -moz-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  -ms-border-radius: 6px;
  border-radius: 6px;
  overflow: hidden;
}
.two-col .col .two-col-image img {
  width: 100%;
  height: auto;
  display: block;
}
.two-col .col .two-col-content {
  padding: 30px;
  flex-grow: 1;
}
.two-col .col .two-col-content ul li {
  list-style-position: inside;
  margin-bottom: 20px;
}
.two-col .col .two-col-content ul li:last-of-type {
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .two-col .grid {
    grid-template-columns: 1fr;
    grid-gap: 20px;
  }
  .two-col .col {
    width: 100%;
  }
}

.service-col {
  position: relative;
  overflow: hidden;
  background: #e0e0e0;
}
.service-col .intro {
  text-align: left;
  width: 100%;
}
.service-col ul {
  margin: 0;
  padding: 40px 0 0;
  text-align: left;
  display: grid;
  grid-gap: 20px;
  grid-template-columns: 1fr;
}
@media (min-width: 769px) {
  .service-col ul {
    grid-template-columns: 1fr;
  }
}
.service-col ul li {
  display: flex;
  align-items: center;
  background: #FFF;
  padding: 0;
  width: 100%;
  list-style: none;
  overflow: hidden;
  border-radius: 6px;
  -webkit-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
  -moz-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
}
.service-col ul li .service-image {
  flex: 0 0 30%;
  text-align: center;
}
.service-col ul li .service-image img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.service-col ul li .service-content {
  flex: 1;
  padding: 30px;
}
.service-col ul li h3 {
  margin: 0 0 20px 0;
  color: #000000;
}
.service-col ul li h3 i {
  color: var(--brand_colour_1);
}
.service-col ul li p {
  color: #000000;
  margin-bottom: 0;
}
.service-col ul li.reverse {
  flex-direction: row-reverse;
}
@media (max-width: 768px) {
  .service-col ul li.reverse {
    flex-direction: column;
  }
}
@media (max-width: 769px) {
  .service-col ul li {
    flex-direction: column;
    text-align: center;
  }
  .service-col ul li .service-image {
    flex: 0 0 auto;
    width: 100%;
    margin-bottom: 0px;
  }
  .service-col ul li .service-content {
    flex: 1;
  }
}
@media (max-width: 768px) {
  .service-col ul {
    gap: 20px;
  }
  .service-col ul li {
    flex-direction: column;
    align-items: center;
    width: 100%;
  }
  .service-col ul li .service-image {
    width: 100%;
    margin-bottom: 0px;
  }
  .service-col ul li .service-content {
    width: 100%;
    text-align: center;
  }
}

#welcome {
  background: #FFF;
  position: relative;
}
#welcome .welcome-inner-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (min-width: 768px) {
  #welcome .welcome-inner-wrap {
    flex-direction: row;
    align-items: flex-start;
  }
}
@media screen and (min-width: 768px) {
  #welcome .welcome-image {
    width: 30%;
  }
}
#welcome .welcome-image img {
  margin: 0 auto;
  display: block;
  object-fit: cover;
  height: auto;
  width: 100%;
}
#welcome .welcome-content {
  text-align: center;
  padding: 40px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  #welcome .welcome-content {
    width: 70%;
    float: left;
    text-align: left;
  }
}
#welcome .welcome-content h2 {
  margin-top: 0;
}
#welcome .welcome-content p {
  margin: 0;
  padding: 0;
}
#welcome .welcome-content p em {
  font-size: 22px;
  font-style: italic;
}
#welcome .welcome-content .button {
  margin-top: 20px;
}
#welcome .welcome-content .button:hover {
  background: #55719a;
  color: #FFF;
}
@media (max-width: 768px) {
  #welcome .welcome-inner-wrap {
    flex-direction: column;
    align-items: center;
  }
  #welcome .welcome-image {
    width: 100%;
    margin-bottom: 20px;
  }
  #welcome .welcome-content {
    width: 100%;
    text-align: center;
    padding: 20px;
  }
}

#usp {
  background: #e0e0e0;
  height: auto;
  position: relative;
  /* Owl Carousel Navigation */
}
#usp .wrap {
  position: relative;
}
#usp ul {
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}
#usp ul li {
  list-style-type: none;
  text-align: center;
  overflow: hidden;
  padding: 20px 0;
  margin: 0px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex: 1 1 auto;
  min-height: 300px;
  -webkit-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
  -moz-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.19);
  border-radius: 6px;
  background: #FFF;
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -ms-transition: 0.5s;
  transition: 0.5s;
}
#usp ul li .usp-content {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 30px;
}
#usp ul li .usp-icon {
  width: 80px;
  margin: 0 auto 20px;
  color: var(--brand_colour_1);
  font-size: 44px;
}
#usp ul li h3 {
  color: #000000;
  margin-bottom: 20px;
}
@media screen and (min-width: 1024px) {
  #usp ul li h3 {
    font-size: 20px;
  }
}
#usp ul li .usp-info {
  flex-grow: 1;
}
#usp ul li .button {
  display: none;
}
#usp ul li:hover .button {
  display: block;
}
#usp .owl-nav {
  position: absolute;
  top: 45%;
  width: 100%;
  display: flex;
  justify-content: space-between;
  transform: translateY(-50%);
  z-index: 10;
}
#usp .owl-nav .owl-prev,
#usp .owl-nav .owl-next {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  color: #FFF;
  font-size: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s ease;
  min-width: auto;
}
#usp .owl-nav .owl-prev:hover,
#usp .owl-nav .owl-next:hover {
  background: var(--brand_colour_1);
}
#usp .owl-nav .owl-prev {
  position: absolute;
  left: -60px;
}
#usp .owl-nav .owl-next {
  position: absolute;
  right: -60px;
}
#usp .fa-angle-right:before,
#usp .fa-angle-left:before {
  color: #FFF;
}

#usp {
  /* Ensures Owl Carousel items have equal heights */
}
#usp .owl-carousel .owl-stage {
  display: flex;
}
#usp .owl-carousel .owl-item {
  display: flex;
  align-items: stretch;
}
#usp .owl-carousel .owl-item li {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

#internal-banner {
  padding: 0;
  margin: 0;
  float: left;
  width: 100%;
  position: relative;
  overflow: hidden;
  max-height: 560px;
  overflow: hidden;
  background: var(--brand_colour_1);
}
@media screen and (min-width: 1024px) {
  #internal-banner {
    max-height: 560px;
    overflow: hidden;
  }
}
@media screen and (min-width: 1500px) {
  #internal-banner {
    max-height: 800px;
    overflow: 560px;
  }
}
#internal-banner .background-image img {
  height: 560px;
  object-fit: cover;
  opacity: 0.6;
}

#internal-banner {
  background: #000000;
}
#internal-banner .banner-content {
  position: absolute;
  z-index: 10;
  text-align: left;
  width: 100%;
  padding: 0 0px;
  left: 0px;
  right: 0px;
  max-width: 1350px;
  padding-left: 20px;
  padding-right: 20px;
  margin: 0 auto;
  top: 0px;
  padding-top: 200px;
}
@media screen and (min-width: 1024px) {
  #internal-banner .banner-content {
    padding-top: 250px;
    left: 0px;
    right: 0px;
  }
}
#internal-banner .banner-content .main-banner-title {
  color: #FFF;
  font-size: 32px;
  margin: 0;
  padding: 0;
  line-height: 40px;
  font-weight: bold;
}
@media screen and (min-width: 1024px) {
  #internal-banner .banner-content .main-banner-title {
    font-size: 54px;
    line-height: 64px;
  }
}
#internal-banner .banner-content p {
  color: #FFF;
  font-size: 26px;
  margin: 20px 0 0 0;
  padding: 0;
  line-height: 38px;
  font-weight: normal;
}
#internal-banner .banner-content p a {
  color: var(--brand_colour_2);
}
.internal-banner-content {
  margin: 0;
  padding: 0;
}
.internal-banner-content li {
  list-style-type: none;
}

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