@charset "UTF-8";

/* -------------- Import general sans font family --------------------- */
@font-face {
  font-family: "GeneralSans-Variable";
  src: url("../fonts/generalsans/GeneralSans-Variable.woff2") format("woff2"), url("../fonts/generalsans/GeneralSans-Variable.woff") format("woff"), url("../fonts/generalsans/GeneralSans-Variable.ttf") format("truetype");
  font-weight: 200 700;
  font-display: swap;
  font-style: normal;
}

@font-face {
  font-family: "GeneralSans-VariableItalic";
  src: url("../fonts/generalsans/GeneralSans-VariableItalic.woff2") format("woff2"), url("../fonts/generalsans/GeneralSans-VariableItalic.woff") format("woff"), url("../fonts/generalsans/GeneralSans-VariableItalic.ttf") format("truetype");
  font-weight: 200 700;
  font-display: swap;
  font-style: italic;
}

@font-face {
  font-family: "GeneralSans-Extralight";
  src: url("../fonts/generalsans/GeneralSans-Extralight.woff2") format("woff2"), url("../fonts/generalsans/GeneralSans-Extralight.woff") format("woff"), url("../fonts/generalsans/GeneralSans-Extralight.ttf") format("truetype");
  font-weight: 200;
  font-display: swap;
  font-style: normal;
}

@font-face {
  font-family: "GeneralSans-ExtralightItalic";
  src: url("../fonts/generalsans/GeneralSans-ExtralightItalic.woff2") format("woff2"), url("../fonts/generalsans/GeneralSans-ExtralightItalic.woff") format("woff"), url("../fonts/generalsans/GeneralSans-ExtralightItalic.ttf") format("truetype");
  font-weight: 200;
  font-display: swap;
  font-style: italic;
}

@font-face {
  font-family: "GeneralSans-Light";
  src: url("../fonts/generalsans/GeneralSans-Light.woff2") format("woff2"), url("../fonts/generalsans/GeneralSans-Light.woff") format("woff"), url("../fonts/generalsans/GeneralSans-Light.ttf") format("truetype");
  font-weight: 300;
  font-display: swap;
  font-style: normal;
}

@font-face {
  font-family: "GeneralSans-LightItalic";
  src: url("../fonts/generalsans/GeneralSans-LightItalic.woff2") format("woff2"), url("../fonts/generalsans/GeneralSans-LightItalic.woff") format("woff"), url("../fonts/generalsans/GeneralSans-LightItalic.ttf") format("truetype");
  font-weight: 300;
  font-display: swap;
  font-style: italic;
}

@font-face {
  font-family: "GeneralSans-Regular";
  src: url("../fonts/generalsans/GeneralSans-Regular.woff2") format("woff2"), url("../fonts/generalsans/GeneralSans-Regular.woff") format("woff"), url("../fonts/generalsans/GeneralSans-Regular.ttf") format("truetype");
  font-weight: 400;
  font-display: swap;
  font-style: normal;
}

@font-face {
  font-family: "GeneralSans-Italic";
  src: url("../fonts/generalsans/GeneralSans-Italic.woff2") format("woff2"), url("../fonts/generalsans/GeneralSans-Italic.woff") format("woff"), url("../fonts/generalsans/GeneralSans-Italic.ttf") format("truetype");
  font-weight: 400;
  font-display: swap;
  font-style: italic;
}

@font-face {
  font-family: "GeneralSans-Medium";
  src: url("../fonts/generalsans/GeneralSans-Medium.woff2") format("woff2"), url("../fonts/generalsans/GeneralSans-Medium.woff") format("woff"), url("../fonts/generalsans/GeneralSans-Medium.ttf") format("truetype");
  font-weight: 500;
  font-display: swap;
  font-style: normal;
}

@font-face {
  font-family: "GeneralSans-MediumItalic";
  src: url("../fonts/generalsans/GeneralSans-MediumItalic.woff2") format("woff2"), url("../fonts/generalsans/GeneralSans-MediumItalic.woff") format("woff"), url("../fonts/generalsans/GeneralSans-MediumItalic.ttf") format("truetype");
  font-weight: 500;
  font-display: swap;
  font-style: italic;
}

@font-face {
  font-family: "GeneralSans-Semibold";
  src: url("../fonts/generalsans/GeneralSans-Semibold.woff2") format("woff2"), url("../fonts/generalsans/GeneralSans-Semibold.woff") format("woff"), url("../fonts/generalsans/GeneralSans-Semibold.ttf") format("truetype");
  font-weight: 600;
  font-display: swap;
  font-style: normal;
}

@font-face {
  font-family: "GeneralSans-SemiboldItalic";
  src: url("../fonts/generalsans/GeneralSans-SemiboldItalic.woff2") format("woff2"), url("../fonts/generalsans/GeneralSans-SemiboldItalic.woff") format("woff"), url("../fonts/generalsans/GeneralSans-SemiboldItalic.ttf") format("truetype");
  font-weight: 600;
  font-display: swap;
  font-style: italic;
}

@font-face {
  font-family: "GeneralSans-Bold";
  src: url("../fonts/generalsans/GeneralSans-Bold.woff2") format("woff2"), url("../fonts/generalsans/GeneralSans-Bold.woff") format("woff"), url("../fonts/generalsans/GeneralSans-Bold.ttf") format("truetype");
  font-weight: 700;
  font-display: swap;
  font-style: normal;
}

@font-face {
  font-family: "GeneralSans-BoldItalic";
  src: url("../fonts/generalsans/GeneralSans-BoldItalic.woff2") format("woff2"), url("../fonts/generalsans/GeneralSans-BoldItalic.woff") format("woff"), url("../fonts/generalsans/GeneralSans-BoldItalic.ttf") format("truetype");
  font-weight: 700;
  font-display: swap;
  font-style: italic;
}

:root {
  scroll-behavior: inherit;
}

/* ---------------- Header CSS ------------------- */
/* ------------ Content ---------------- */
body {
  font-family: "GeneralSans-Variable";
  padding-right: 0 !important;
}

@media (min-width: 1200px) {
  .container {
    max-width: 93.5rem;
  }
}

body {
  overflow-x: hidden !important;
  padding-right: 0 !important;
}

body,
html .page-without-sidebar-section {
  overflow: visible !important;
}

h1,
h2,
h3,
h4 {
  letter-spacing: 0.1px !important;
  word-spacing: 1px !important;
  text-wrap: balance !important;
}

p {
  word-spacing: 1px !important;
  letter-spacing: 0.02em !important;
  text-wrap: balance !important;
}

.text-shaddow {
  text-shadow: 0 1px 4px rgba(0, 0, 0, .4);
}

.why-us-details {
  font-size: 1.0625rem !important;
}

/* a{
  cursor: pointer;
} */

header {
  border-bottom: 0.0625rem solid rgba(255, 255, 255, 0.2);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  z-index: 9999 !important;
  padding-right: 0 !important;
}

header.scrolled {
  background-color: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(10px);
  box-shadow: 1px 5px 5px #0000004f;
}


@media (min-width: 1200px) {
  header {
    /* padding: 1.75rem 0; */
  }
}

header#header-dark {
  background-color: #141414;
  border-bottom: 0;
}

/* ------------- Main menu (header nav) ------------------ */
.nav-item {
  font-size: 1rem;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
}

.nav-link {
  color: white;
}

.menu a {
  padding: 0 0 0.5rem;
  text-transform: uppercase;
}


.logo-footer {
  width: 15.625rem;
  margin: auto;
}

@media (min-width: 992px) {
  .logo {
    /* height: 5rem; */
    padding: 16px 20px;
  }

  .logo img {
    width: 220px;
  }

  .logo-footer {
    width: 19.375rem;
    margin: 0.1px;
  }
}

@media (max-width: 992px) {
  .mobile-phone-link {
    border-left: 0.0625rem solid rgba(255, 255, 255, 0.2);
  }
}

.menu {
  color: white;
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style-type: none;
  margin-top: 0;
  margin-bottom: 0;
}

.menu a {
  color: white;
  text-decoration: none;
  font-weight: 600;
  transition: all 0.3s;
}

.menu a:hover {
  color: #EA2127;
}

#menu-main-menu a {
  padding-right: 2.25rem;
}

#menu-main-menu-1 a {
  padding-right: 2.25rem;
}

.ul {
  margin-top: 31.25rem;
}

#menu-main-menu .menu-item-has-children .sub-menu {
  display: none;
  position: absolute;
}

#menu-main-menu .menu-item-has-children a {
  padding-right: 1.5625rem !important;
}

#menu-main-menu .menu-item-has-children a:after {
  font-family: "Font Awesome 5 Free";
  color: white;
}

#menu-main-menu .menu-item-has-children a:after {
  content: "\f078";
  /* Unicode character for the Font Awesome chevron-down icon */
  padding-left: 0.625rem;
}

#menu-main-menu .menu-item-has-children:hover .sub-menu {
  display: block;
  padding-top: 1.25rem;
  list-style-type: none !important;
  padding-left: 0;
}

#menu-main-menu .menu-item-has-children:hover .sub-menu li {
  margin: 0 !important;
  border-bottom: 0.0625rem solid #dedede;
  padding: 1rem !important;
  background-color: white;
}

#menu-main-menu .menu-item-has-children:hover .sub-menu li a {
  color: black;
  border-bottom: 0.0625rem black;
}

#menu-main-menu .menu-item-has-children:hover .sub-menu li a:hover {
  color: #EA2127;
}

.mobile-socials a {
  color: #292B40;
}

#not-content {
  padding-top: 0 !important;
}

.content {
  overflow-y: visible !important;
}


.gallery-section {
  background-color: #f1f1f1;
  padding: 100px 0;
}

/* ---------------- Footer ------------------ */
.main-footer {
  background-color: #292828;
}

#menu-item-1291 {
  color: #9a9a9a;
}

.grey-outer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 0.0625rem solid #9a9a9a;
  padding: 0.3125rem 1rem 0.3125rem 1rem;
  border-radius: 2.0625rem;
  font-size: 0.875rem;
  color: #9a9a9a;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media (min-width: 1200px) {
  .grey-outer {
    font-size: 1rem;
    padding: 0.125rem 0.625rem 0.125rem 0.625rem;
  }
}

/* ------------- Legal and business ------------------- */
.legals {
  font-size: 0.875rem;
}

.legals-menu li {
  padding-right: 0.5rem;
}

.business-info {
  font-size: 0.75rem;
}

@media (min-width: 1200px) {
  .business-info {
    font-size: 1rem;
  }
}

.social-icons {
  width: 3.125rem;
  height: auto;
  cursor: pointer;
}

@media (min-width: 1200px) {
  .social-icons {
    width: 5rem;
  }
}

.licensing {
  background-color: #141414;
  color: red;
  text-align: center;
}

.social-icons {
  border: 0.0625rem solid white;
  border-radius: 50%;
  height: 3rem;
  width: 3rem;
}

@media (min-width: 1000px) {
  .social-icons {
    width: 4.5rem;
    height: 4.5rem;
  }
}

.social-icons a {
  color: white;
}

@media (min-width: 1000px) {

  .social-icons .fa-brands,
  .social-icons .fa-solid {
    font-size: 1.875rem;
  }
}

/* --------------------- Mobile Menu --------------------- */
.menu {
  left: 0;
}

.mobile-menu {
  border-left: 0.0625rem solid rgba(255, 255, 255, 0.2);
  border-right: 0.0625rem solid rgba(255, 255, 255, 0.2);
  padding: 0.625rem 1.125rem;
  height: 100%;
  padding: 1rem;
}

@media (min-width: 992px) {
  .mobile-menu {
    border-left: 0;
    height: auto;
    padding: 0;
  }
}

.mobile-menu .connect {
  font-weight: 600;
  color: #292828;
}

.mobile-menu .connect .connect-text {
  font-size: 1.125rem;
}

.mobile-menu .connect .mobile-socials {
  border: 0.125rem solid #292828;
  border-radius: 50%;
  width: 3.125rem;
  height: 3.125rem;
}

.mobile-menu .connect .mobile-socials .fa-instagram {
  font-size: 1.75rem;
}

.mobile-menu .connect .mobile-socials .fa-facebook-f {
  font-size: 1.5rem;
}

.mobile-menu .connect p {
  margin-bottom: 0;
}

.mobile-menu .menu-main-menu-container ul {
  padding-left: 0;
  list-style: none;
}

.mobile-menu .menu-main-menu-container li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.mobile-menu .menu-main-menu-container li a {
  text-decoration: none;
  text-transform: uppercase;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.25rem;
  color: #292828;
  width: 100%;
}

.mobile-menu .menu-main-menu-container a:hover {
  color: #EA2127;
}

.mobile-menu .menu-main-menu-container li:after {
  content: "›";
  font-size: 1.875rem;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.mobile-menu .menu-main-menu-container li.menu-item-has-children:after {
  content: "" !important;
}

.mobile-menu .menu-main-menu-container .menu-item-has-children {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start !important;
  -ms-flex-align: start !important;
  align-items: flex-start !important;
}

.mobile-menu .menu-main-menu-container .menu-item-has-children a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  padding-right: 0 !important;
  margin-bottom: 0.625rem;
}

.mobile-menu .menu-main-menu-container .menu-item-has-children a:after {
  content: "›";
  font-size: 1.875rem;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.mobile-menu .menu-main-menu-container .menu-item-has-children .sub-menu li:after {
  content: "" !important;
}

.mobile-menu .menu-main-menu-container .menu-item-has-children .sub-menu {
  width: 100%;
}

.mobile-menu .menu-main-menu-container .menu-item-has-children .sub-menu li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start !important;
  -ms-flex-align: start !important;
  align-items: flex-start !important;
  margin-left: 1.25rem;
}

.mobile-menu .menu-main-menu-container .menu-item-has-children .sub-menu li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  padding-right: 0 !important;
  margin-bottom: 0;
  font-size: 1rem;
}

.mobile-menu .menu-main-menu-container .menu-item-has-children .sub-menu li a:after {
  content: "›";
  font-size: 1.875rem;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.offcanvas.offcanvas-start {
  border-right: 0;
  border-left: 0;
  top: 3.5rem;
  padding-top: 60px;
}

/* --------------- Image gallery --------------------*/
.image-gallery {
  border-bottom: 0.5rem solid red;
}

.service-icon {
  width: 38px;
}

.cta-button a {
  color: #EA2127;
  transition: all 0.3s;
}

.cta-button a:hover {
  color: #000000;
}


/* ---------------- Footer Menu -------------------- */
.footer-menu li {
  padding-bottom: 2rem;
  padding-right: 2.25rem;
}

@media (min-width: 1200px) {
  .footer-menu li {
    padding-bottom: 0;
  }
}

#menu-footer-menu {
  padding-left: 0;
}

@media (max-width: 1200px) {
  .menu-main-menu-container ul {
    margin-bottom: 0;
  }
}

#menu-footer-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

@media (min-width: 1000px) {
  #menu-footer-menu {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}

a {
  color: #EA2127;
  text-decoration: none;
}

.red {
  color: #EA2127;
}

.fa-triangle-exclamation {
  font-size: 80px;
}

li {
  margin-top: 0.625rem;
  margin-bottom: 0.625rem;
}

/* ---------------------- Banners ---------------------- */
.banner {
  padding-top: 3.75rem;
}

@media (min-width: 1200px) {
  .banner {
    padding-top: 6.25rem;
  }
}

.banner-description p {
  font-size: 2rem;
  line-height: 2.5rem;
  color: #F3CF07;
}

@media (min-width: 1350px) {
  .banner-description p {
    /* font-size: 4.625rem; */
    font-weight: 400;
    text-decoration: underline;
    /* line-height: 6.25rem; */
  }
}

.home-list{
  /* border-top: solid 1px rgba(197, 197, 197, 0.859); */
}

.home-list span{
  font-size: 19px;
}
.home-list div{
  margin-bottom: 5px;
}

.home-content p {
  font-size: 1.25rem;
  text-shadow: 0 1px 4px rgba(0, 0, 0, .4);
}

@media (min-width: 1200px) and (max-width: 1349px) {
  .banner-description p {
    font-size: 4rem;
    font-weight: 400;
    line-height: 5rem;
  }
}

.small-banner-description h1,
.small-banner-description h2,
.small-banner-description h3,
.small-banner-description h4,
.small-banner-description h5,
.small-banner-description h6,
.small-banner-description p {
  color: white;
  font-size: 1.5rem;
  line-height: 2rem;
}

@media (min-width: 1200px) {

  .small-banner-description h1,
  .small-banner-description h2,
  .small-banner-description h3,
  .small-banner-description h4,
  .small-banner-description h5,
  .small-banner-description h6,
  .small-banner-description p {
    font-size: 2rem;
    font-weight: 400;
    line-height: 2.5rem;
  }
}

.small-banner-left {
  padding: 4rem 1.25rem;
}

@media (min-width: 660px) {
  .small-banner-left {
    padding-bottom: 7.625rem;
    padding-top: 7.625rem;
  }
}

.small-banner-center {
  padding: 4rem 1.25rem;
}

@media (min-width: 660px) {
  .small-banner-center {
    padding-bottom: 7.625rem;
    padding-top: 7.625rem;
  }
}

.banner-google-review {
  width: 15rem;
}

/* ----------------------------- Content ----------------------- */
.padding {
  padding: 5.625rem 0.375rem 2.75rem;
}

@media (min-width: 1200px) {
  .padding {
    padding: 8.125rem 0;
  }
}

/* ------------------------- CTA Section ----------------------------- */
.cta-section {
  background-color: none;
  border-top: 0.0625rem solid rgba(255, 255, 255, 0.2);
}

@media (min-width: 1200px) {
  .cta-section {
    background: rgba(20, 20, 20, 0.6);
    backdrop-filter: blur(5px);
  }
}

.cta-section .cta-text {
  font-weight: 600;
  font-size: 1.0313rem;
  line-height: 1.75rem;
  color: white;
  padding-bottom: 1.5rem;
  padding-top: 1.5rem;
}

@media (max-width: 1200px) {
  .cta-section .cta-text {
    padding-bottom: 0.75rem;
    padding-top: 0.75rem;
    font-size: 1rem;
  }
}

/* ---------------------------- Buttons ---------------------------- */
.btn-red {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  border-radius: 4.125rem;
  background: #EA2127;
  color: white;
  text-decoration: none;
  font-size: 1rem;
  padding: 0.5rem 1rem 0.5rem 1rem;
  border: #EA2127;
  font-weight: 600;
}

.btn-red:hover {
  background: #F44348;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.btn-dark-red {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0.5rem 1rem 0.5rem 1rem;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  background: #C91C22;
  color: white;
  border-color: white;
}

.btn-white {
  color: #FFF;
  font-size: 1rem;
  font-weight: 600;
  line-height: normal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1rem 1rem;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  border-radius: 2.875rem;
  border: 1px solid #FFF;
  background: linear-gradient(44deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0) 100%);
  text-decoration: none;
}

.btn-white:hover,
.btn-white:active {
  background: none;
  border: 0.0625rem solid white;
  opacity: 120%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.btn-black {
  color: black;
  font-size: 1rem;
  font-weight: 600;
  line-height: normal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1rem 1.5rem;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  border-radius: 2.875rem;
  border: 0.0625rem solid black;
  background: linear-gradient(44deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0) 100%);
  text-decoration: none;
}

.btn-black:hover,
.btn-black:active {
  background: none;
  border: 0.0625rem solid black;
  opacity: 120%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: black;
}

.btn-text-red {
  color: #EA2127;
  font-size: 1rem;
  font-style: normal;
  font-weight: 600;
  line-height: 6.25rem;
  text-align: center;
}

@media (min-width: 1200px) {
  .btn-text-red {
    line-height: 1.25rem;
  }
}

.links {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.links a {
  width: 100%;
  margin-bottom: 0.625rem;
}

.links button {
  width: 100%;
}

@media (min-width: 1457px) {
  .links {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
  }

  .links a {
    width: auto;
    margin-bottom: 0;
  }

  .links button {
    width: auto;
  }
}

.banner-links {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

@media (min-width: 1410px) {
  .banner-links {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}

/* ---------------------------- Images --------------------------- */
.sec-2-img {
  height: auto;
}

/* ------------------------- Paragraphs ----------------------------- */
.dark-grey-paragraph p {
  color: #292828;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 2rem;
}

@media (min-width: 1200px) {
  .dark-grey-paragraph p {
    font-size: 1.25rem;
  }
}

.dark-grey-paragraph-small p {
  line-height: 1.5rem;
  font-size: 1rem;
  font-weight: 400;
  color: #454545;
}

.grey-paragraph-small p {
  font-size: 0.875rem;
  color: #a2a0a0;
  font-weight: 400;
  line-height: 1.125rem;
}

.sec-3-paragraph p {
  color: #9a9a9a;
  font-size: 1.25rem;
  line-height: 2rem;
}

.grey-text p,
.grey-text a {
  color: #9a9a9a;
  font-size: 0.875rem;
}

@media (min-width: 1200px) {

  .grey-text p,
  .grey-text a {
    font-size: 1rem;
  }
}

.white-paragraph {
  color: #fff;
  font-size: 1rem;
}

@media (min-width: 1000px) {
  .white-paragraph {
    font-size: 1.25rem;
  }
}

.white-paragraph-small {
  font-size: 0.875rem;
  color: #000000;
  font-weight: 600;
}

@media (min-width: 1000px) {
  .white-paragraph-small {
    font-size: 1.125rem;
  }
}

/* --------------------------- Quote Form --------------------------- */
.form .gfield {
  margin-top: 1rem;
}

.form input[type=text],
.form input[type=email],
.form input[type=tel],
.form label[for=fileInput],
.form select,
.form .form-select,
.form textarea {
  padding: 1rem;
  border-radius: 0.375rem;
  border: 0.0625rem solid white;
  /* background: linear-gradient(44deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0) 100%); */
  background: #1a1c1d;
  color: white;
  text-align: start;
  width: 100%;
  font-weight: 500;
  font-size: 1rem;
}

@media (min-width: 1200px) {

  .form input[type=text],
  .form input[type=email],
  .form input[type=tel],
  .form label[for=fileInput],
  .form select,
  .form .form-select,
  .form textarea {
    padding: 1.25rem;
    font-size: 1.125rem;
  }
}

.form label[for=fileInput],
.form select {
  cursor: pointer;
}

.form label[for=fileInput]:after {
  font-family: "Font Awesome 5 Free";
  /* Adjust the font family based on the Font Awesome version you're using */
  content: "\e494";
  /* Use the correct Unicode value for the upload icon (e.g., \f093 for the Font Awesome 5 upload icon) */
  float: right;
  font-weight: 600;
}

.form .form-select option {
  background-color: #000;
}

.form div.ginput_container_fileupload span.gform_fileupload_rules {
  display: none;
}

.form .gfmc-field div:not(.gchoice) {
  padding: 0;
}

.form textarea {
  /* height: 3.75rem; */
}

@media (min-width: 1200px) {
  .form textarea {
    /* height: 18rem; */
  }
}

.form body .gform_wrapper_1 .gform_body .gform_fields .gfield .ginput_container_fileupload .gform_button_select_files {
  color: red;
  background-color: black;
}

.form .gfmc-container {
  -webkit-column-gap: 16px;
  -moz-column-gap: 16px;
  column-gap: 16px;
}

.gfield_label {
  line-height: 1.25rem;
  font-size: 1rem;
  color: white;
  font-weight: 500;
  padding-bottom: 0.25rem;
  margin-bottom: 8px;
}

.form .gform_wrapper select option {
  color: #5a5a5a;
  background-color: black;
  border: 0.0625rem solid white;
}

.form .gform_wrapper input::-webkit-input-placeholder,
.form .gform_wrapper textarea::-webkit-input-placeholder {
  color: white;
}

.form .gform_wrapper input::-moz-placeholder,
.form .gform_wrapper textarea::-moz-placeholder {
  color: white;
}

.form .gform_wrapper input:-ms-input-placeholder,
.form .gform_wrapper textarea:-ms-input-placeholder {
  color: white;
}

.form .gform_wrapper input::-ms-input-placeholder,
.form .gform_wrapper textarea::-ms-input-placeholder {
  color: white;
}

.form .gform_wrapper input::placeholder,
.form .gform_wrapper textarea::placeholder {
  color: white;
}

.form #filePickerLabel {
  padding-bottom: 0.125rem;
}

.form .gform_submission_error {
  color: #EA2127;
  text-align: center;
}

.form .validation_message {
  color: #EA2127;
}

label.error {
  font-size: 16px;
  color: #EA2127;
  margin: 0;
  text-shadow: none;
  line-height: 17px;
  padding-left: 5px;
  text-align: left;
  display: block;
  font-weight: normal;
  margin-top: 3px;
}

#gform_wrapper_1 .gform_submission_error {
  font-size: 1.25rem;
}

#gform_wrapper_2 .gform_submission_error {
  font-size: 1rem;
}

/* Remove the text inside the file upload button in a Gravity Forms File Upload field */
.gform_wrapper .ginput_container input[type=file]::-webkit-file-upload-button {
  display: none;
}

/* -------------------------- Headings ---------------------- */
.banner-title h1,
.banner-title h2,
.banner-title h3,
.banner-title h4,
.banner-title h5,
.banner-title h6,
.banner-title p {
  font-size: 3.375rem;
  line-height: 3.75rem;
  letter-spacing: -0.16rem;
  font-weight: 600;
}

@media (min-width: 1350px) {

  .banner-title h1 {
    font-size: 2.625rem;
    line-height: 1.3;
    letter-spacing: 0.1px;
    word-spacing: 1px;
  }

  .banner-title h1,
  .banner-title h2,
  .banner-title h3,
  .banner-title h4,
  .banner-title h5,
  .banner-title h6,
  .banner-title p {
    /* font-size: 8rem; */
    /* line-height: 7rem; */
    font-size: 2.625rem;
    line-height: 1.3;
    text-shadow: 0 1px 4px rgba(0, 0, 0, .4);
  }
}

@media (min-width: 1200px) and (max-width: 1349px) {

  .banner-title h1,
  .banner-title h2,
  .banner-title h3,
  .banner-title h4,
  .banner-title h5,
  .banner-title h6,
  .banner-title p {
    font-size: 6.25rem;
    line-height: 5.625rem;
  }
}

.centre-banner-heading h1,
.centre-banner-heading h2,
.centre-banner-heading h3,
.centre-banner-heading h4,
.centre-banner-heading h5,
.centre-banner-heading h6,
.centre-banner-heading p {
  color: white;
  font-weight: 600;
  font-size: 2.5rem;
  line-height: 3rem;
}

@media (min-width: 1200px) {

  .centre-banner-heading h1,
  .centre-banner-heading h2,
  .centre-banner-heading h3,
  .centre-banner-heading h4,
  .centre-banner-heading h5,
  .centre-banner-heading h6,
  .centre-banner-heading p {
    line-height: 4.875rem;
    font-size: 4.625rem;
  }
}

.white-heading-lg h1,
.white-heading-lg h2,
.white-heading-lg h3,
.white-heading-lg h4,
.white-heading-lg h5,
.white-heading-lg h6,
.white-heading-lg p {
  font-size: 2.8125rem;
  font-weight: 600;
  line-height: 3.5rem;
  color: white;
}

@media (min-width: 1200px) {

  .white-heading-lg h1,
  .white-heading-lg h2,
  .white-heading-lg h3,
  .white-heading-lg h4,
  .white-heading-lg h5,
  .white-heading-lg h6,
  .white-heading-lg p {
    font-size: 4rem;
    line-height: 5.25rem;
    letter-spacing: -0.12rem;
  }
}

.white-heading h1,
.white-heading h2,
.white-heading h3,
.white-heading h4,
.white-heading h5,
.white-heading h6,
.white-heading p {
  font-size: 2rem;
  color: white;
  font-weight: 600;
  font-style: normal;
  line-height: 2.5rem;
}

@media (max-width:575px) {

  .white-heading h1,
  .white-heading h2,
  .white-heading h3,
  .white-heading h4,
  .white-heading h5,
  .white-heading h6,
  .white-heading p {
    font-size: 1.9375rem;
  }
}

@media (min-width: 1200px) {

  .white-heading h1,
  .white-heading h2,
  .white-heading h3,
  .white-heading h4,
  .white-heading h5,
  .white-heading h6,
  .white-heading p {
    font-size: 42px;
    line-height: 2.5rem;
  }
}



.white-heading-small h1,
.white-heading-small h2,
.white-heading-small h3,
.white-heading-small h4,
.white-heading-small h5,
.white-heading-small h6,
.white-heading-small p,
.white-heading-small span {
  color: white;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 2rem;
}

@media (min-width: 1200px) {

  .white-heading-small h1,
  .white-heading-small h2,
  .white-heading-small h3,
  .white-heading-small h4,
  .white-heading-small h5,
  .white-heading-small h6,
  .white-heading-small p,
  .white-heading-small span {
    font-size: 2.6875rem;
    line-height: 1.875rem;
  }
}

.white-heading-xs h1,
.white-heading-xs h2,
.white-heading-xs h3,
.white-heading-xs h4,
.white-heading-xs h5,
.white-heading-xs h6,
.white-heading-xs p {
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 600;
  color: #5a5a5a;
}

@media (min-width: 1200px) {

  .white-heading-xs h1,
  .white-heading-xs h2,
  .white-heading-xs h3,
  .white-heading-xs h4,
  .white-heading-xs h5,
  .white-heading-xs h6,
  .white-heading-xs p {
    font-size: 2rem;
    line-height: 2.3rem;
  }
}

.white-heading-banner h1,
.white-heading-banner h2,
.white-heading-banner h3,
.white-heading-banner h4,
.white-heading-banner h5,
.white-heading-banner h6,
.white-heading-banner p {
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 3rem;
  color: #fff;
}

@media (min-width: 1200px) {

  .white-heading-banner h1,
  .white-heading-banner h2,
  .white-heading-banner h3,
  .white-heading-banner h4,
  .white-heading-banner h5,
  .white-heading-banner h6,
  .white-heading-banner p {
    line-height: 3.375rem;
    font-size: 3rem;
  }
}

.black-heading h1,
.black-heading h2,
.black-heading h3,
.black-heading h4,
.black-heading h5,
.black-heading h6,
.black-heading p {
  font-size: 2.5rem;
  color: black;
  font-weight: 600;
}

@media (min-width: 1200px) {

  .black-heading h1,
  .black-heading h2,
  .black-heading h3,
  .black-heading h4,
  .black-heading h5,
  .black-heading h6,
  .black-heading p {
    font-size: 3.2rem;
    line-height: 3.375rem;
  }
}

.black-heading-small h1,
.black-heading-small h2,
.black-heading-small h3,
.black-heading-small h4,
.black-heading-small h5,
.black-heading-small h6,
.black-heading-small p {
  font-weight: 600;
  font-size: 1.5rem;
  color: black;
  line-height: 2rem;
}

@media (max-width:575px) {

  .black-heading-small h1,
  .black-heading-small h2,
  .black-heading-small h3,
  .black-heading-small h4,
  .black-heading-small h5,
  .black-heading-small h6,
  .black-heading-small p {
    font-size: 1.75rem;
  }
}

@media (min-width: 1200px) {

  .black-heading-small h1,
  .black-heading-small h2,
  .black-heading-small h3,
  .black-heading-small h4,
  .black-heading-small h5,
  .black-heading-small h6,
  .black-heading-small p {
    font-size: 2.5rem;
    line-height: 3.375rem;
  }
}

.black-heading-xs h1,
.black-heading-xs h2,
.black-heading-xs h3,
.black-heading-xs h4,
.black-heading-xs h5,
.black-heading-xs h6,
.black-heading-xs p {
  font-weight: 600;
  line-height: 2rem;
  font-size: 1.5rem;
  letter-spacing: -0.015rem;
}

@media (min-width: 1200px) {

  .black-heading-xs h1,
  .black-heading-xs h2,
  .black-heading-xs h3,
  .black-heading-xs h4,
  .black-heading-xs h5,
  .black-heading-xs h6,
  .black-heading-xs p {
    font-size: 2rem;
    color: black;
    line-height: 2.5rem;
    letter-spacing: -0.02rem;
  }
}

.black-heading-xxs h1,
.black-heading-xxs h2,
.black-heading-xxs h3,
.black-heading-xxs h4,
.black-heading-xxs h5,
.black-heading-xxs h6,
.black-heading-xxs p {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.5rem;
  color: black;
}

@media (min-width: 1200px) {

  .black-heading-xxs h1,
  .black-heading-xxs h2,
  .black-heading-xxs h3,
  .black-heading-xxs h4,
  .black-heading-xxs h5,
  .black-heading-xxs h6,
  .black-heading-xxs p {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}

.services-page-title h1,
.services-page-title h2,
.services-page-title h3,
.services-page-title h4,
.services-page-title h5,
.services-page-title h6,
.services-page-title p {
  font-weight: 600;
  line-height: 2rem;
  font-size: 1.5rem;
  letter-spacing: -0.015rem;
}

@media (min-width: 1200px) {

  .services-page-title h1,
  .services-page-title h2,
  .services-page-title h3,
  .services-page-title h4,
  .services-page-title h5,
  .services-page-title h6,
  .services-page-title p {
    font-size: 1.875rem;
    color: black;
    line-height: 2.5rem;
    letter-spacing: -0.0175rem;
  }
}

.red-title,
.red-title h1,
.red-title h2,
.red-title h3,
.red-title h4,
.red-title h5,
.red-title h6,
.red-title p {
  color: #EA2127;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5rem;
  margin-bottom: 1rem;
  text-transform: uppercase;
  text-decoration: none;
}

@media (max-width:575px) {

  .red-title,
  .red-title h1,
  .red-title h2,
  .red-title h3,
  .red-title h4,
  .red-title h5,
  .red-title h6,
  .red-title p {
    font-size: .9063rem;
    margin-bottom: 5px;
  }
}

@media (min-width: 1200px) {

  .red-title,
  .red-title h1,
  .red-title h2,
  .red-title h3,
  .red-title h4,
  .red-title h5,
  .red-title h6,
  .red-title p {
    font-size: 1.125rem;
  }
}

@media (min-width: 1200px) {

  .red-title.red-big,
  .red-title h1.red-big,
  .red-title h2.red-big,
  .red-title h3.red-big,
  .red-title h4.red-big,
  .red-title h5.red-big,
  .red-title h6.red-big,
  .red-title p.red-big {
    font-size: 1.25rem;
  }
}

.red-title-small h1,
.red-title-small h2,
.red-title-small h3,
.red-title-small h4,
.red-title-small h5,
.red-title-small h6,
.red-title-small p {
  color: #EA2127;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5rem;
  margin-bottom: 1rem;
  text-transform: uppercase;
  text-decoration: none;
}

.small-title h1,
.small-title h2,
.small-title h3,
.small-title h4,
.small-title h5,
.small-title h6,
.small-title p {
  color: white;
  text-transform: uppercase;
  font-size: 1rem;
  line-height: 1.25rem;
  font-weight: 600;
}

@media (min-width: 1200px) {

  .small-title h1,
  .small-title h2,
  .small-title h3,
  .small-title h4,
  .small-title h5,
  .small-title h6,
  .small-title p {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}

.grey-heading h1,
.grey-heading h2,
.grey-heading h3,
.grey-heading h4,
.grey-heading h5,
.grey-heading h6,
.grey-heading p {
  color: #7a7777;
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1.25rem;
  padding-top: 0.75rem;
  padding-bottom: 1rem;
}

@media (min-width: 1200px) {

  .grey-heading h1,
  .grey-heading h2,
  .grey-heading h3,
  .grey-heading h4,
  .grey-heading h5,
  .grey-heading h6,
  .grey-heading p {
    font-size: 1.5rem;
    line-height: 2rem;
    padding-top: 1rem;
    padding-bottom: 1.5rem;
  }
}

/* ------------------------------ Testimonial Slider -------------------------- */
.testimonial-slider {
  padding: 0.625rem;
  position: relative;
  margin-right: -0.9375rem;
  /* Adjust the negative margin as needed */
  margin-left: -0.9375rem;
  /* Adjust the negative margin as needed */
  /* overflow: hidden; */
  /* Hide overflow if needed */
  z-index: 1;
  /* Ensure the testimonial slider is above other content */
}

/* .keen-slider {
  gap: 10px !important;
} */

.review-text {
  /* color: red !important; */
  font-size: 1.25rem !important;
}

.testimonial-slider .container {
  max-width: none;
  /* Remove max-width restriction */
  padding: 0;
  /* Remove padding to maintain full width */
}

.testimonial-slider .keen-slider {
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  /* gap: 10px; */
  width: 99%;
}

.move-left {
  /* margin-left: -15px; */
  /* margin-right: ; */
  /* background-color: teal; */
  /* margin-left: 20px; */
}

.testimonial-slider .arrow {
  font-size: 1.25rem;
  position: absolute;
  background-color: black;
  z-index: 99999;
  top: 102%;
  margin: -1.375rem;
  height: 3.25rem;
  width: 3.25rem;
  border-radius: 50%;
  color: #FFF;
  line-height: 3.25rem;
  text-align: center;
  cursor: pointer;
}

.testi-card-wrapper {
  background: teal;
  width: 20px;
}

@media (min-width: 1200px) {
  .testimonial-slider .arrow {
    font-size: 1.5625rem;
    width: 3.8125rem;
    height: 3.8125rem;
    line-height: 3.8125rem;
  }
}

.testimonial-slider .arrow.arrow--left {
  display: none;
}

.testimonial-slider .arrow.arrow--right {
  right: 3.125rem;
  display: block;
}

@media (min-width: 1200px) {
  .testimonial-slider .arrow {
    position: relative;
    top: 50%;
    margin: 0;
    margin-top: 2rem;
    margin-right: 1rem;
    margin-bottom: 0.625rem;
    background-color: #a9a9a9;
  }

  .testimonial-slider .arrow.arrow--left {
    display: inline-block;
  }

  .testimonial-slider .arrow.arrow--right {
    right: 0;
    display: inline-block;
  }
}

@media (min-width: 1200px) {
  .testimonial-slider .arrow:hover {
    background-color: #0C0C0C;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}

.testimonial-slider .testimonial-slide {
  background-color: #ffffff;
  color: white;
  width: 31.25rem !important;
  height: 25rem !important;
  border: solid 1px #dddddd;

}

@media (min-width: 1000px) {
  .testimonial-slider .testimonial-slide {
    height: 34.375rem !important;
  }
}

.testimonial-slider .testimonial-slide-content {
  padding: 1.25rem;
}

@media (min-width: 1000px) {
  .testimonial-slider .testimonial-slide-content {
    padding: 2rem;
  }
}

@media (min-width: 1200px) {
  .col-lg-6.text-start.testimonials {
    padding-left: 12%;
  }
}

/* ------------------------------- Services Slider --------------------------- */
.services-slider {
  position: relative;
  background-color: #000000;
  z-index: 1;
}

@media (min-width: 1200px) {
  .services-slider {
    padding: 6.125rem 0 6.125rem 0;
  }
}

.services-slider .arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 99999;
  margin-top: -1.9375rem;
  width: 3.8125rem;
  height: 3.8125rem;
  border-radius: 50%;
  background-color: #0C0C0C;
  color: #FFF;
  line-height: 3.8125rem;
  text-align: center;
  cursor: pointer;
  font-size: 1.5625rem;
  display: none;
}

.services-slider .arrow.arrow--right {
  right: 0;
  display: block;
}

@media (min-width: 1200px) {
  .services-slider .arrow.arrow--left {
    left: -1.9375rem;
    display: block;
  }

  .services-slider .arrow.arrow--right {
    right: -1.9375rem;
    display: block;
  }
}

.services-slider .card-item {
  text-align: center;
}


.services-slider .card-text p {
  font-size: 1rem;
}

.services-slider .navigation-wrapper {
  /* padding: 3rem 0 3rem 0; */
}

.services-slider .card-body {
  padding: 1rem;
  height: 16.375rem;
}

@media (min-width: 1200px) {
  .services-slider .card-body {
    padding: 2rem;
    height: 16.875rem;
  }
}

.gallery-card {
  position: relative;
}

.gallery-card:hover .inner-layer {
  /* top: 0; */
  opacity: 1;
}

.inner-layer {
  background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6));
  width: 100%;
  height: 100%;
  /* border-radius: 0.5rem; */
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: all 0.5s;
}

.inner-layer i {
  font-size: 30px;
  color: #fff;
}

.services-slider .keen-slider__slide:not(.slider-active) {
  opacity: 0.4;
}

.card-title h1,
.card-title h2,
.card-title h3,
.card-title h4,
.card-title h5,
.card-title h6,
.card-title p {
  font-size: 1.3rem;
  font-weight: 600;
  line-height: 2rem;
  margin-bottom: 0.5rem;
  margin-top: 0.5rem;
}

@media (max-width:575px) {

  .card-title h1,
  .card-title h2,
  .card-title h3,
  .card-title h4,
  .card-title h5,
  .card-title h6,
  .card-title p {
    font-size: 1.1875rem;
  }
}

.services-slider .navigation-wrapper {
  /* padding: 0 0 2rem 0; */
}

span.gfield_required.gfield_required_text {
  display: none;
}

.text-20 h1,
.text-20 h2,
.text-20 h3,
.text-20 h4,
.text-20 h5,
.text-20 h6,
.text-20 p {
  font-size: 1.25rem;
}

@media (max-width:575px){
  .text-20 h1,
.text-20 h2,
.text-20 h3,
.text-20 h4,
.text-20 h5,
.text-20 h6,
.text-20 p {
  font-size: 1.1875rem;
}
}

/* ---------------------- Content with images ------------------------ */
.content-with-images {
  position: relative;
}

.content-with-images .hi-page {
  position: relative;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border: 0.0625rem solid #dedede;
  margin-top: 1rem;
}

@media (min-width: 1400px) {
  .content-with-images .hi-page {
    left: 15.625rem;
    position: absolute;
    left: 250px;
    top: 95%;
    z-index: 99999;
    margin-top: -1.9375rem;
    width: auto;
    border: 0;
  }
}

.cwi-x-img {
  width: 100%;
  height: auto;
}

@media (min-width: 986px) {
  .cwi-x-img {
    height: 100%;
    width: auto;
  }
}

/* ----------------------- Backgrounds ------------------------- */
.bg-gray {
  background-color: #e8e8e8;
}

/* ----------------------------- Borders ---------------------------- */
.grey-border {
  border-bottom: 0.0625rem solid #c0c0c0;
}

/* -------------------------- Breadcrumbs ----------------------------- */
.breadcrumb-section {
  background-color: #f1f1f1;
}

.breadcrumb-section .rank-math-breadcrumb {
  color: #7a7777;
  padding: 1rem;
  padding-left: 0;
  line-height: 1.125rem;
  font-size: 0.875rem;
  font-weight: 600;
}

.breadcrumb-section .rank-math-breadcrumb p {
  margin-bottom: 0;
}

.breadcrumb-section .rank-math-breadcrumb a,
.breadcrumb-section .rank-math-breadcrumb .separator {
  color: #7a7777;
  text-decoration: none;
  text-transform: capitalize;
}

.breadcrumb-section .rank-math-breadcrumb .last {
  color: #292828;
}

.breadcrumb-dark {
  background-color: #141414;
}

.breadcrumb-dark .rank-math-breadcrumb {
  color: #7a7777;
  padding: 1rem;
  padding-left: 0;
  line-height: 1.125rem;
  font-size: 0.875rem;
  font-weight: 600;
}

.breadcrumb-dark .rank-math-breadcrumb p {
  margin-bottom: 0;
}

.breadcrumb-dark .rank-math-breadcrumb a,
.breadcrumb-dark .rank-math-breadcrumb .separator {
  color: #7a7777;
  text-decoration: none;
  text-transform: capitalize;
}

.breadcrumb-dark .rank-math-breadcrumb .last {
  color: white;
}

/* -------------------------- Benifits Cards --------------------------- */
.benifits-cards {
  background-color: #f1f1f1;
}

.fa-circle-check {
  border: 0.25rem #f1f1f1;
}

@media (min-width: 1000px) {
  .benifits-card {
    border: 0;
    height: 26.25rem;
  }
}

@media (min-width: 1400px) {
  .benifits-card {
    border: 0;
    height: 19.3125rem;
  }
}

/* --------------------------- Qualifications ----------------------------- */
@media (max-width: 1400px) {
  .fair-trading {
    width: 50%;
  }
}

/* ---------------------------- Blog Cards ----------------- */
.blog-cards .blog-card {
  background-color: #fafafa;
  height: 17.0625rem;
  padding: 1.25rem;
}

@media (min-width: 1200px) {
  .blog-cards .blog-card {
    padding: 2rem;
    height: 18.75rem;
  }
}

.blog-cards .blog-date h1,
.blog-cards .blog-date h2,
.blog-cards .blog-date h3,
.blog-cards .blog-date h4,
.blog-cards .blog-date h5,
.blog-cards .blog-date h6,
.blog-cards .blog-date p {
  text-transform: uppercase;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1rem;
  color: #a2a0a0;
  margin-bottom: 0;
}

.blog-cards .blog-card-text h1,
.blog-cards .blog-card-text h2,
.blog-cards .blog-card-text h3,
.blog-cards .blog-card-text h4,
.blog-cards .blog-card-text h5,
.blog-cards .blog-card-text h6,
.blog-cards .blog-card-text p {
  color: #292828;
  line-height: 1.5rem;
  font-weight: 400;
  font-size: 1rem;
}

.blog-cards .card-title h1,
.blog-cards .card-title h2,
.blog-cards .card-title h3,
.blog-cards .card-title h4,
.blog-cards .card-title h5,
.blog-cards .card-title h6,
.blog-cards .card-title p {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.5rem;
  color: #292828;
}

@media (min-width: 1200px) {

  .blog-cards .card-title h1,
  .blog-cards .card-title h2,
  .blog-cards .card-title h3,
  .blog-cards .card-title h4,
  .blog-cards .card-title h5,
  .blog-cards .card-title h6,
  .blog-cards .card-title p {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}

.blog-cards .card-image-ratio {
  aspect-ratio: 4/3;
}

@media (min-width: 1200px) {
  .blog-cards .card-image-ratio {
    aspect-ratio: 16/9;
  }
}

/* ----------------------------- Blog post ------------------------ */
.blog-post-image {
  aspect-ratio: 16/9;
}

@media (min-width: 1200px) {
  .blog-post-image {
    aspect-ratio: 21/9;
  }
}

/* -------------------- Services page -----------*/
.services-banner {
  max-height: 300px;
}

/* ----------------------------- Services info --------------------- */
.services-info-img {
  aspect-ratio: 13/9;
}

@media (min-width: 1200px) {
  .services-info-img {
    aspect-ratio: 21/9;
  }
}

.services-info-title h1,
.services-info-title h2,
.services-info-title h3,
.services-info-title h4,
.services-info-title h5,
.services-info-title h6,
.services-info-title p {
  padding: 0;
  margin-bottom: 0.5rem;
}

/* ---------------------- Services options -----------------*/
.services-options-description h1,
.services-options-description h2,
.services-options-description h3,
.services-options-description h4,
.services-options-description h5,
.services-options-description h6 {
  margin: 0;
}

.services-options-content {
  height: 20.3125rem;
}

@media (min-width: 1000px) {
  .services-options-content {
    height: 25rem;
  }
}

/* --------------------------- Our services cards ------------------------------*/
.card {
  border: 0;
}

.card-img-top {
  border-radius: 0.4rem;
}

.card-body {
  border-top: 0;
  border: 0.0625rem solid #dedede;
  border-radius: 0 0 0.4rem 0.4rem;
  background-color: #fafafa;
}

.card-link {
  text-decoration: none;
  color: #EA2127;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.25rem;
}

.cards .card-body {
  height: 15.125rem;
}

@media (min-width: 1200px) {
  .cards .card-body {
    height: 16.0625rem;
  }
}

/* ------------------------------ Services page ----------------------------- */
.service-page {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 1200px) {
  .services-image {
    border-radius: 0.4375rem 0.4375rem 0 0;
  }
}

@media (min-width: 1200px) {
  .rounded-right {
    border-radius: 0 0.4375rem 0.4375rem 0;
  }
}

@media (min-width: 1200px) {
  .rounded-left {
    border-radius: 0.4375rem 0 0 0.4375rem;
  }
}

.left-side {
  width: 100%;
}

@media (min-width: 1000px) {
  .left-side {
    width: 25%;
    height: auto;
    display: inline-block;
    float: left;
    position: sticky;
    top: 0;
  }
}

.main-section:before,
.main-section:after {
  content: "";
  display: table;
  clear: both;
}

.right-side {
  width: 100%;
}

@media (min-width: 1000px) {
  .right-side {
    width: 75%;
    display: inline-block;
    vertical-align: top;
    float: right;
  }
}

/* ----------------------------- Mini Quote Form --------------------------- */
.mini-quote-form {
  border-top: 0.4375rem solid var(--colours-primary-500, #EA2127);
}

.mini-quote-form label {
  display: none;
}

/* ----------------------- Services sidebar -------------------- */
.services-sidebar {
  background-color: #f1f1f1;
}

.services-sidebar li {
  border-bottom: 0.0625rem solid #bebebe;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.services-sidebar li a {
  text-decoration: none;
  text-transform: capitalize;
  color: #292828;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.75rem;
}

.services-sidebar li.current-menu-item a {
  color: red;
  font-weight: 600;
}

.services-sidebar li:last-child {
  border-bottom: 0;
}

/* ----------------------------- FAQ Accordion -------------------------- */
.faq-question {
  font-weight: 500;
  color: black;
  font-size: 1rem;
  line-height: 1.25rem;
  -webkit-transition: max-width 0.6s ease;
  transition: max-width 0.6s ease;
}

@media (min-width: 1200px) {
  .faq-question {
    line-height: 1.75rem;
    font-size: 1.25rem;
  }
}

.accordion {
  background-color: white;
  cursor: pointer;
  padding: 1.125rem 0;
  width: 100%;
  text-align: left;
  border: none;
  outline: none;
  border-bottom: 0.0625rem solid black;
  margin-bottom: 1rem;
  max-height: 100px;
  -webkit-transition: max-height 1s ease-in-out;
  transition: max-height 1s ease-in-out;
}

.panel {
  background-color: white;
  overflow: hidden;
  max-height: 0;
  -webkit-transition: max-height 0.4s ease-in-out;
  transition: max-height 0.4s ease-in-out;
}

.accordion:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  /* Use a specific font weight for the icons */
  font-size: 0.8125rem;
  float: right;
  margin-left: 0.3125rem;
}

.accordion:after {
  content: "\f078";
  /* Unicode character for the Font Awesome chevron-down icon */
}

.active-accordion:after {
  content: "\f077";
  /* Unicode character for the Font Awesome chevron-up icon */
}

/* ----------------- Dropdown menu ---------------------- */
.dropdown {
  position: relative;
  display: inline-block;
}

.dropdown .dropbtn {
  color: #292828;
  padding: 1rem;
  font-size: 1rem;
  border: none;
  cursor: pointer;
  font-weight: 600;
  line-height: 1.5rem;
  border: 0.0625rem solid #292828;
}

.dropdown .dropdown-content {
  display: none;
  position: absolute;
  background-color: #f1f1f1;
  min-width: 10rem;
  -webkit-box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
}

.dropdown .dropdown-content a {
  color: black;
  text-decoration: none;
  display: block;
  padding-left: 1rem;
  width: 100%;
}

.dropdown .show {
  display: block;
  width: 100%;
}

.dropdown .active:after {
  content: "\f077";
  /* Unicode character for the Font Awesome chevron-up icon */
  font-family: "Font Awesome 5 Free";
  /* Adjust the font family based on the Font Awesome version you're using */
}

.dropbtn:after {
  content: "\f078";
  /* Unicode character for the Font Awesome chevron-down icon */
  font-family: "Font Awesome 5 Free";
  /* Adjust the font family based on the Font Awesome version you're using */
}

/* ------------------ Gallery ----------- */
.gallery-tabs .gallery-item a {
  color: #292828;
  border: 0.0625rem solid #292828;
  padding: 0.5rem 1.25rem;
  border-radius: 2.0625rem;
  background: none;
  font-weight: 500;
}

.gallery-tabs .gallery-item .active {
  color: white;
  padding: 0.5rem 1.25rem;
  border-radius: 2.0625rem;
  background: #EA2127;
  font-weight: 500;
  border: 0;
}

.fade:not(.show) {
  display: none;
}

.gallery-dropdown .dropbtn {
  color: #292828;
  padding: 1rem;
  font-size: 1rem;
  border: none;
  cursor: pointer;
  line-height: 1.5rem;
  font-weight: 600;
  border: 0.0625rem solid #292828;
}

.gallery-dropdown .dropdown-content {
  background-color: #f1f1f1;
  min-width: 10rem;
  -webkit-box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
}

.gallery-dropdown .dropdown-content a {
  color: black;
  text-decoration: none;
  display: block;
  padding-left: 1rem;
  width: 100%;
  text-transform: capitalize;
  font-weight: 600;
}

.gallery-dropdown .dropdown-content li {
  border-bottom: 0.0625rem solid #bebebe;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.gallery-dropdown .gallery-item .active {
  color: #EA2127;
}

.gallery-dropdown .active-button:after {
  content: "\f077";
  /* Unicode character for the Font Awesome chevron-up icon */
  font-family: "Font Awesome 5 Free";
  /* Adjust the font family based on the Font Awesome version you're using */
}

.dropbtn:after {
  content: "\f078";
  /* Unicode character for the Font Awesome chevron-down icon */
  font-family: "Font Awesome 5 Free";
  /* Adjust the font family based on the Font Awesome version you're using */
}

/* ------- Thank you section------- */
.thank-you-section {
  padding-top: 3.125rem;
  padding-bottom: 3.125rem;
}

@media (min-width: 1000px) {
  .thank-you-section {
    padding-top: 9.375rem;
    padding-bottom: 9.375rem;
  }
}

.thank-you-section .thank-you-icon {
  font-size: 2.5rem;
}

#back-to-top {
  position: fixed;
  bottom: -45px;
  right: 10px;
  z-index: 999;
  cursor: pointer;
  border: 0;
  border-radius: 2px;
  text-decoration: none;
  -webkit-transition: all 0.5s;
  -ms-transition: all 0.5s;
  transition: all 0.3s;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  right: 4px;
  text-transform: uppercase;
  font-size: 14px;
  color: #EA2127;
  font-weight: bold;
}

#back-to-top.show {
  bottom: 60px;
}

#back-to-top:hover {
  color: #000000;
}

@media (max-width: 575px) {

  .nav-phone {
    position: fixed;
    bottom: 13px;
    left: 50%;
    transform: translateX(-50%);
    padding: 10px 15px;
    width: 60%;
    text-align: center;
    border-radius: 56px;
    background-color: #EA2127;
    visibility: visible;
    color: white;
    z-index: 998;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
  }

  .black-heading p {
    font-size: 1.875rem;
  }

  .footer-cta-btn {
    padding: 10px;
  }

  .banner-title h1 {
    font-size: 2.25rem;
    line-height: 1.3;
  }

  .banner-description p {
    font-size: 1.25rem;
  }

  .white-heading-small h2 {
    font-size: 1.875rem;
    margin-top: 24px;
  }

  .black-heading-small h2 {
    font-size: 1.75rem;
    line-height: 1.2;
  }

  .black-heading h2 {
    font-size: 1.875rem;
  }

  .testimonial-slider .testimonial-slide {
    min-width: 100% !important;
  }

  .white-heading-xs p {
    height: 200px;
    width: 100%;
    overflow-y: auto;
    /* width: 90%; */
  }
}

.sec-padding {
  padding: 90px 0 !important;
}

.sec-padding-x {
  padding: 90px 0 !important;
}

.cta-sec-padding {
  padding: 60px 0 !important;
}

@media all and (max-width:575px) {

  .sec-padding-x {
    padding: 90px 24px !important;
  }

  p {
    word-spacing: normal !important;
  }
}