/* Imports */
/* Icons */
@import url("https://use.fontawesome.com/releases/v5.14.0/css/all.css");
@import url("https://unpkg.com/boxicons@2.0.9/css/boxicons.min.css");
@import url("https://fonts.googleapis.com/css?family=Material+Icons|Material+Icons+Outlined|Material+Icons+Two+Tone|Material+Icons+Round|Material+Icons+Sharp");
/* Fonts */
@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");

:root {
  --color-primary: #ed1b24;
  --color-primary-accent: #ed1b2420;
  --bg-color: #f5f5f5;
}
/*ul.header__nav li {*/
/*    width: fit-content;*/
/*    display: block;*/
/*    text-align: center;*/
/*    text-transform: capitalize;*/
/*    cursor: pointer;*/
/*    border-radius: 100vmax;*/
/*    padding: 5px 2rem;*/
/*    margin: 0.25rem 0;*/
/*    transition: all 300ms ease-in-out;*/
    /*color: var(--color-primary);*/
/*    background: transparent;*/
/*    border-color: var(--color-primary);*/
    /*border: 1px solid;*/
/*    margin-left: 1rem!important;*/
/*}*/
/* General Styling */
* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  text-decoration: none !important;
  list-style-type: none;
  font-family: "Poppins", sans-serif;
}
::selection {
  color: #fff;
  background: var(--color-primary);
}
a {
  display: inline-block;
  color: #000;
  transition: all 300ms ease-in-out;
}
a:hover,
a.active {
  color: var(--color-primary);
}
i[class^="bx"] {
  vertical-align: middle;
}
ul,
address {
  margin-bottom: 0;
}
address {
  display: inline-block;
}
.imgFluid {
  max-width: 100%;
}
.color--primary {
  color: var(--color-primary) !important;
  font-family: inherit;
}
.section {
  position: relative;
  isolation: isolate;
}
.section--fill {
  background: var(--bg-color);
}
.section__bg,
.section__bg::before {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.section__bg::before {
  content: "";
  background: #000;
  opacity: 0.65;
}
.section__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.section-content--fill {
  background: #fff;
  box-shadow: 0 0 20px 1px #00000020;
}
.section-content .subHeading {
  font-size: 1.325rem;
  font-weight: 600;
  letter-spacing: 0.25rem;
  text-transform: capitalize;
  margin-bottom: 0.5rem;
}
.section-content .heading {
  font-size: 3.325rem;
  font-weight: 700;
  line-height: 1.1;
  text-transform: capitalize;
}
.section-content .heading--lg {
  font-size: 4rem;
}
.section-content p {
  color: #777;
  line-height: 2;
}
.section-content > p:last-child {
  margin-bottom: 0;
}
.section-content.section-content--light *:not(.themeBtn) {
  color: #fff;
}
.themeBtn-group {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.themeBtn {
  width: fit-content;
  display: block;
  color: #fff;
  text-align: center;
  /*text-transform: uppercase;*/
  cursor: pointer;
  background: var(--color-primary);
  border: 1px solid transparent;
  border-radius: 100vmax;
  padding: 0.75rem 2rem;
  margin: 0.25rem 0;
  transition: all 300ms ease-in-out;
}
.themeBtn--outline {
  color: var(--color-primary);
  background: transparent;
  border-color: var(--color-primary);
}
.themeBtn--full {
  width: 100%;
}
.themeBtn--center {
  margin: 0.25rem auto;
}
.themeBtn:hover {
  color: #fff;
  background: var(--color-primary);
  transform: translateY(-5px);
}

.partner__logo ul li {
    display: inline-block;
    border: 1px solid rgb(204 204 204 / 32%);
}

.slick-dots li {
    border: 0 !important;
}

.slick-dots li button:before{
        font-size: 36px;
}

.slick-dots {
    bottom: auto;
}

@media (min-width: 1200px) {
  .container {
    max-width: 1170px;
  }
}
@media (min-width: 1400px) {
  .container {
    max-width: 1370px;
  }
}

/* Header */
.header-wrapper {
  --color-text: #fff;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  transition: all 300ms ease-in-out;
  z-index: 10;
}
.header-wrapper--sticky {
  --color-text: #000;
  /*top: -51px;*/
  background: #fff;
  box-shadow: 0 4px 20px -5px #00000020;
}
.header ul,
.header__main {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.header a:not(.themeBtn, .header__logo) {
  color: var(--color-text);
  padding: 0.75rem 0.5rem;
}
.header a:not(.themeBtn):hover {
  color: var(--color-primary);
}
.header__topbar-wrapper {
  border-bottom: 1px solid var(--color-text);
}
.header__topbar > li:not(:first-child) {
  border-left: 1px solid var(--color-text);
}
.header__logo {
  max-width: 200px;
}
.header__main {
  justify-content: space-between;
  padding: 1rem 0px;
  /*margin-top: 1rem;*/
}
.header__main_sticky {
  justify-content: space-between;
  padding: 1rem 0px;
  margin-top: 3rem;
}
.header__nav li {
  position: relative;
}
.header__nav a {
  font-weight: 600;
  text-transform: capitalize;
}
.header__nav .dropdown {
  min-width: max-content;
  position: absolute;
  top: 100%;
  left: 0;
  align-items: flex-start;
  flex-direction: column;
  gap: 0;
  background: #fff;
  border: none;
  border-radius: 0.5rem;
  box-shadow: 0 0 20px 1px #00000020;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  padding: 0.5rem 0;
  transform: translateY(-10px);
  transition: all 300ms ease-in-out;
}
.header__nav li:hover .dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.header__nav .dropdown li {
  width: 100%;
}
.header__nav .dropdown a {
  color: #000;
  display: block;
  padding: 0.75rem 1rem;
}
/*.header__hamburger {*/
/*    display:none;*/
/*    color: #000;*/
/*    background: inherit;*/
/*    border:none;*/
/*    border-radius: 1.25rem;*/
/*    padding: 1.25rem 0.325rem;*/
/*    z-index:11;*/
/*}*/
.header__hamburger {
  width: 40px;
  height: 40px;
  position: relative;
  display:none;
  cursor: pointer;
  background: transparent;
  border:none;
  /* overflow: hidden; */
  padding: 0.5rem;
  transition: background 300ms cubic-bezier(0.075, 0.82, 0.165, 1);
  z-index: 11;
}
.header__hamburgerLine {
  width: 70%;
  height: 3px;
  position: absolute;
  top: 50%;
  left: 50%;
  background: #fff;
  border-radius: 50px;
  transform: translate(-50%, 0%);
  transition: all 300ms cubic-bezier(0.075, 0.82, 0.165, 1);
}
.header__hamburgerLine:first-child {
  transform: translate(-50%, -10px);
}
.header__hamburgerLine:nth-child(3) {
  transform: translate(-50%, 10px);
}
/*.header__hamburger:is(:hover,.active) {*/
/*  background: var(--color-primary);*/
/*}*/
/*.header__hamburger:hover .header__hamburgerLine {*/
/*  background: var(--color-background);*/
/*}*/
/*.header__hamburger.active {*/
/*  background: var(--color-background-offset);*/
/*}*/
:is(.header-wrapper--sticky,.header__hamburger.active) .header__hamburgerLine {
    background:#000;
}
.header__hamburger.active {
    position:absolute;
    top:0.5rem;
    right:0.5rem;
}
.header__hamburger.active .header__hamburgerLine:first-child {
  transform: translate(-50%, 0px) rotate(135deg) scale(0.8);
}
.header__hamburger.active .header__hamburgerLine:nth-child(2) {
  opacity: 0;
  transform: translate(100%, 0px);
}
.header__hamburger.active .header__hamburgerLine:nth-child(3) {
  transform: translate(-50%, 0px) rotate(-135deg) scale(0.8);
}


/* Banner */
.banner {
  width: 100%;
  height: 100%;
  /* min-height: 60vh; */
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 16rem 0 6rem;
}
.banner--mini {
  min-height: 425px;
  align-items: flex-end;
}
.banner__bg,
.banner__bg::before {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.banner__bg::before {
  content: "";
  background: #000;
  opacity: 0.75;
}
.banner__bg * {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.banner .section-content .subHeading {
  font-size: 2.25rem;
  letter-spacing: 0.125rem;
  line-height: 1.4;
}

/* Services Card */
.services-card {
  min-height: 355px;
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 1.5rem;
  background: #fff;
  border-radius: 1rem;
  box-shadow: 0 0 20px 1px #00000020;
  overflow: hidden;
  padding: 1.5rem 2rem;
  margin: 1rem 0;
}
.services-card::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: linear-gradient(to top, var(--color-primary-accent), transparent);
  opacity: 0;
  transition: all 300ms ease-in-out;
  z-index: -1;
}
.services-card:hover::before {
  opacity: 1;
}
.services-card__icon {
    --icon-dimensions:125px;
    width:var(--icon-dimensions);
    height:var(--icon-dimensions);
    display:block;
    border-radius:100vmax;
    overflow:hidden;
    margin: 0 auto;
}
.services-card__icon img {
    width:100%;
    height:100%;
    object-fit:cover;
}
.services-card__content .title {
  color: #000;
  font-size: 1.25rem;
  font-weight: 600;
  text-align: center;
  text-transform: capitalize;
  margin-bottom: 0.25rem;
}
.services-card__content .title#ct .color--primary {
    color:#000 !important;
}
.services-card__content .title--lg {
  font-size: 2rem;
}
.services-card__content :is(.desc,p) {
  color: #777;
  font-size: 0.925rem;
  line-height: 2;
  text-align: center;
  margin-bottom: 1.5rem;
}
.services-card__content li,
.check-list li {
  display:flex;
  align-items:flex-start;
  gap:0.75rem;
  font-weight: 600;
  margin-bottom: 1rem;
}
.services-card__content li::before,
.check-list li::before {
  content: "\f00c";
  display: inline-block;
  color: #fff;
  font-family: "Font Awesome 5 Free";
  font-size: 0.875rem;
  line-height: 1;
  background: var(--color-primary);
  border-radius: 0.125rem;
  vertical-align: middle;
  padding: 0.25rem;
}

/* Auth Form */
.auth-form .input-field {
  width: 100%;
  margin-bottom: 1.25rem;
}
.auth-form .input-field label {
  font-size: 14px;
  font-weight: 600;
  text-transform: capitalize;
  margin-bottom: 0.5rem;
}
.auth-form .input-field label .required {
  color: var(--color-primary);
}
.auth-form
  .input-field
  :is(input:not([type="radio"], [type="checkbox"]), textarea, select) {
  width: 100%;
  display: block;
  font-size: 14px;
  background: #fff;
  border: 1px solid #00000020;
  resize: none;
  padding: 0.75rem;
}
.auth-form .input-field :is(input, textarea, select):focus {
  outline-color: var(--color-primary);
}
.auth-form .input-field--radio {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1rem;
}
.auth-form .input-field--radio input {
  display: none;
}
.auth-form .input-field--radio label {
  position: relative;
  user-select: none;
  text-transform: uppercase;
  color: #777;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  padding-left: 1.75rem;
  margin-bottom: 0;
}
.auth-form .input-field--radio label::before {
  content: "";
  width: 1.25rem;
  height: 1.25rem;
  position: absolute;
  top: 50;
  left: 0;
  background: #fff;
  border: 1px solid #00000020;
  border-radius: 0.25rem;
  box-shadow: 1px 1px 4px 0px #00000020;
}
.auth-form .input-field--radio label::after {
  content: "\f00c";
  width: 1.25rem;
  height: 1.25rem;
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 12px;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  background: var(--color-primary);
  border-radius: 0.25rem;
  transform: scale(0);
  transition: all 300ms cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.auth-form .input-field--radio input:checked + label::after {
  transform: scale(1);
}
.auth-form .note {
  position: relative;
  display: flex;
  align-items: center;
  color: #000;
  font-size: 14px;
  font-weight: 600;
  text-align: center;
  margin: 1.5rem 0;
}
.auth-form .note::before,
.auth-form .note::after {
  content: "";
  flex: 0.5;
  height: 1px;
  display: inline-block;
  background: var(--color-secondary);
}
.auth-form .note::before {
  margin-right: 0.5rem;
}
.auth-form .note::after {
  margin-left: 0.5rem;
}
.auth-form a {
  position: relative;
  isolation: isolate;
  color: var(--color-primary);
  font-size: 14px;
  font-weight: 500;
  padding: 0.15rem;
  margin: 0 0.15rem;
}
.auth-form a::before {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  background: var(--color-primary);
  transition: all 300ms ease-in-out;
  z-index: -1;
}
.auth-form a:hover::before {
  height: 100%;
}
.auth-form a:hover {
  color: #fff;
}

/* Footer */
.footer {
  background: #fff;
  border-top: 1px solid #00000020;
  padding-top: 3rem;
}
.footer p {
  color: #777;
  font-size: 0.875rem;
  line-height: 1.8;
  margin-bottom: 0.75rem;
}
:is(.footer__links, .footer__newsletter) .title {
  position: relative;
  color: #000;
  font-size: 1.125rem;
  font-weight: 600;
  text-transform: capitalize;
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
}
:is(.footer__links, .footer__newsletter) .title::after {
  content: "";
  width: 3rem;
  height: 0.125rem;
  position: absolute;
  bottom: 0;
  left: 0;
  background: var(--color-primary);
}
.footer__links a {
  color: #777;
  font-size: 0.875rem;
  text-transform: capitalize;
  margin-bottom: 1rem;
}
.footer__links a[href*="mailto"] {
  text-transform: lowercase;
}
.footer__links a:hover {
  color: var(--color-primary);
}
.footer__newsletter form {
  position: relative;
  display: flex;
}
.footer__newsletter form input {
  flex: 1;
  font-size:0.875rem;
  border: 1px solid #00000020;
  border-radius: 0.5rem;
  outline: none;
  padding: 0.75rem;
}
.footer__newsletter form button {
  position: absolute;
  top: 0.25rem;
  right: 0.25rem;
  padding: 0.5rem 1rem;
  border-radius: 0.5rem;
  margin: 0;
}
.footer__copyright,
.footer__social {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.footer__copyright {
  border-top: 1px solid #00000020;
  padding: 1.25rem 0;
  margin-top: 2rem;
}
.footer__copyright p {
  color: #000;
  line-height:1.6;
  margin-bottom: 0;
}

@media only screen and (max-width:991.98px){
    /*.header-wrapper--sticky {*/
    /*    top:-70px;*/
    /*}*/
    ul.header__topbar {
        justify-content: center;
        flex-wrap: wrap;
        gap: 0;
    }
    .header__topbar > li:not(:first-child) {
        border-left: none;
    }
    .header__logo {
        max-width:125px;
    }
    .header__nav {
        width: 320px;
        position: fixed;
        top: 0;
        right: 0;
        justify-content: center;
        flex-direction: column;
        background: #fff;
        border-radius:1.25rem;
        padding:2.5rem 1.25rem 1.5rem;
        transform: translateX(100%);
        transition:transform 300ms ease-in-out;
        z-index: 10;
    }
    .header__nav.active {
        transform: translateX(0);
    }
    .header__nav li {
        width:100%;
    }
    .header a:not(.themeBtn, .header__logo) {
        font-size:0.875rem;
        padding: 0.325rem 0.25rem;
    }
    .header .header__nav a:not(.themeBtn) {
        width:100%;
        display:block;
        color:#000;
        padding: 0.75rem 0 1.5rem;
    }
    .header .header__nav a:not(.themeBtn,.dropdown a){
        border-bottom:1px solid #00000020;
    }
    .header__nav .dropdown {
        min-width: 100%;
        max-height: 0;
        position: static;
        box-shadow: none;
        opacity: 1;
        visibility: visible;
        padding: 0 1rem;
    }
    .header__hamburger {
        display:block;
    }
}
@media only screen and (max-width:575.98px){
    .themeBtn {
        font-size:0.875rem;
        padding:0.5rem 1.25rem;
    }
    .banner {
        padding:15rem 0 3rem;
    }
    .banner--mini {
        min-height:auto;
    }
    .banner .section-content .subHeading {
        font-size:1.5rem;
        letter-spacing:0.125rem;
    }
    .section-content .subHeading {
        font-size:1.125rem;
        letter-spacing:0.125rem;
    }
    .section-content .heading {
        font-size:2.25rem;
        line-height:1.2;
    }
    .footer{
        padding-top:2rem;
    }
    .footer__copyright {
        flex-direction:column-reverse;
        text-align:center;
        margin-top:1rem;
    }
    .services-card {
        min-height:250px;
        gap:1rem;
        padding:1rem;
    }
    .services-card__icon {
        --icon-dimensions:75px;
    }
    .services-card__content .title {
        font-size:1.125rem;
        line-height:1.25;
    }
    .services-card__content li, .check-list li {
        font-size:0.875rem;
    }
    .services-card__content li::before, .check-list li::before {
        font-size:0.75rem;
        padding:0.175rem;
    }
}