*{
    padding: 0;
    margin: 0;
}
div#exampleModal {
    padding-right: 0 !important;
}
body.modal-open {
    padding-right: 0 !important;
}
@font-face{
  font-family: "generalsans-bold";
  src: url(../fonts/generalsans-bold.otf);
}
@font-face{
  font-family: "generalsans-bold";
  src: url(../fonts/generalsans-bold.ttf);
}

@font-face{
  font-family: "generalsans-light";
  src: url(../fonts/generalsans-light.otf);
}
@font-face{
  font-family: "generalsans-light";
  src: url(../fonts/generalsans-light.ttf);
}

@font-face{
  font-family: "generalsans-medium";
  src: url(../fonts/generalsans-medium.otf);
}
@font-face{
  font-family: "generalsans-medium";
  src: url(../fonts/generalsans-medium.ttf);
}

@font-face{
  font-family: "generalsans-regular";
  src: url(../fonts/generalsans-regular.otf);
}
@font-face{
  font-family: "generalsans-regular";
  src: url(../fonts/generalsans-regular.ttf);
}

@font-face{
  font-family: "generalsans-semibold";
  src: url(../fonts/generalsans-semibold.otf);
}
@font-face{
  font-family: "generalsans-semibold";
  src: url(../fonts/generalsans-semibold.ttf);
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none!important;
  margin: 0!important;
}
input:-internal-autofill-selected{
	background: transparent!important;
}
input[type=number] {
  -moz-appearance: textfield!important;
}

input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active{
    -webkit-box-shadow: 0 0 0 30px white inset !important;
}
::-webkit-scrollbar
{
  width: 0px;
  background-color: #000000;
}

div#exampleModal::-webkit-scrollbar
{
  width: 0px;
  background-color: #000000;
	height: 0px;
}
::-webkit-scrollbar-thumb
{
  background-color: #1C6BDF;
  border-radius: 10px;
	height: 0px;
}
.scrollable-element::-webkit-scrollbar {
  width: 0px;
	height: 0px;
}


body{
  background: #ffffff;
   transition: background 1s ease-in-out;
}
body, html{
  font-family: "generalsans-medium";
	scrollbar-width: none;
  -ms-overflow-style: none;
}
html::-webkit-scrollbar {
  display: none; /* For Chrome, Safari, etc. */
}
div#exampleModal {
    background: #ffffff33;
    background: rgb(0 0 0 / 20%);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}
.common_padding_top {
  padding-top: 100px;
}
.common_padding_bottom {
  padding-bottom: 100px;
}
.common_paragraph p {
    color: #404040;
    font-size: 14px;
    line-height: 20px;
    margin: 0;
    font-weight: 400;
    font-family: "generalsans-regular";
}
.common_title {
    color: #252525;
    font-size: 44px;
    margin: 0;
    transition: all .5s linear;
    text-transform: capitalize;
}
.text_dark{
  color: #fff;
  transition: all .5s linear;
}
.section.active .text_dark {
    color: #252525;
    transition: all .5s linear;
}
.small_title {
    color: #767676;
    font-size: 14px;
    font-weight: 500;
    margin: 0;
}
.section.active .text_blue {
    color: #0056D4;
    display: inline-block; 
    transform: translateY(100%);
    transition: all .5s linear;
}
.text_blue {
    color: #fff;
    transition: all .5s linear;
}

.ctasec.section.active .text_dark span {
    color: #1c6bdf!important;
    display: inline-block; 
    transition: all .5s linear;
}
.ctasec.section .text_dark span {
    color:  #fff!important;
    transition: all .5s linear;
}
.reveal-wrapper {
    display: inline-block;
    overflow: hidden;
    vertical-align: bottom; 
}
.common_btn {
    color: #fff;
    font-size: 16px;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 20px;
    transition: all .5s linear;
    border: 0;
    background: transparent;
	position: relative;
}
.common_btn .wpcf7-spinner {
    position: absolute;
    right: -60px;
}
.section.active .common_btn{
    color: #0056D4;
    transition: all .5s linear;
}
.ftr_logo a img {
     transition: all .5s linear;
}
.common_btn:hover {
  transition: all .5s linear;
  color: #252525;
}
.common_btn:hover .btn_arrow img {
    animation-name: bounceAlpha;
    animation-duration: 1.4s;
    animation-delay: 0.2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}
@keyframes bounceAlpha{
  0% {
    opacity: 1;
    transform: translateX(0px) scale(1);
}
25% {
    opacity: 0;
    transform: translate(20px, -20px) scale(0.9);
}
26% {
    opacity: 0;
    transform: translate(-20px, 20px) scale(0.9);
}
55% {
    opacity: 1;
    transform: translateX(0px) scale(1);
}
}
.btn_arrow {
    width: 42px;
    height: 42px;
    background: #252525;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    position: relative;
    color: #fff;
    font-size: 20px;
}
.btn_arrow img{
  width: 26px;
  transition: all 1.4s linear;
}
/* image reveal */
.reveal img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  transform-origin: top;
}
.reveal {
  visibility: hidden;
  position: relative;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
	height: 100%;
}
.image_reveal_wrap {
    overflow: hidden;
    height: 100%;
}
/* .bg_blue{
  background: #0056D4;
} */
.section.active .text_white{
  color: #FFFFFF;
  transition: all .5s linear;
}
.text_light{
  font-family: "generalsans-light";
}
.head_centre {
    text-align: center;
    margin-bottom: 80px;
}
.common_btn2 {
    position: relative;
    text-decoration: none;
    border: 1px solid #0000004d;
    padding: 8px 12px;
    border-radius: 50px;
    color: #000000d1;
    font-size: 15px;
    font-family: "generalsans-regular";
    overflow: hidden;
    display: inline-block;
    transition: all .5s linear;
    width: fit-content;
}
.section.active .common_btn2{
  border: 1px solid #ffffff;
  color: #ffffffd1;
  transition: all .5s linear;
}
.common_btn2::after{
  position: absolute;
  content: '';
  bottom: -100%;
  left: 0;
  width: 100%;
  height: 100%;
  background: #252525;
  transition: all .5s linear;
}
.common_btn2 span{
  position: relative;
  z-index: 9;
  transition: all .5s linear;
}
.common_btn2:hover::after{
  bottom: 0;
  transition: all .5s linear;
}
.common_btn2:hover{
  color: #fff;
  border-color: #252525;
}


/* cta */
.ctasec {
    border-top: 1px solid #b9b9b91c;
}
.cta h4 {
    font-size: 46px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 10px;
}
.line2 {
    width: 70px;
    background: #ffffff;
    height: 2px;
    display: block;
    transition: all .5s linear;
}
.section.active .line2 {
  background: #252525;
  transition: all .5s linear;
}
.ct_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 40px;
}
.cta_text {
    display: flex;
    justify-content: center;
}
.fix_icons {
    position: fixed;
    right: 10px;
    top: 50%;
    z-index: 99999;
}
.fix_icons a {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    color: #0056d4;
    font-size: 20px;
    margin-top: 2px;
    border-radius: 2px;
    border: 1px solid #0056d430;
}
.whatsapp {
    background: #0056d4 !important;
    color: #fff !important;
    font-size: 22px !important;
    border: 1px solid #ffffff24 !important;
}
.flex_title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 70px;
}
.section.active .common_btn {
    color: #252525;
}
.submit_btn {
    background: transparent;
    border: 0;
    color: #fff;
    font-size: 16px;
    font-weight: 500;
}
.contact_submit {
    display: flex;
    justify-content: center;
    margin-top: 40px;
}
/* 404 */
.four-not-four {
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
  }
  .error {
    width: 100%;
    height: 400px;
    margin: auto;
    margin: 0px auto;
	  text-align: center;
  }
.error img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
  .error-text {
    width: 100%;
    text-align: center;
    margin-top: 0px;
  }
.error-text p {
    font-size: 14px;
    color: #0000009d;
    font-weight: 400;
    margin: 0 auto;
    width: 380px;
}
.error svg {
    width: 100%;
    height: 110%;
}
.error-text a {
    background: #0056d4;
    color: #fff;
    font-size: 15px;
    font-weight: 500;
    padding: 12px 30px;
    border-radius: 50px;
    text-decoration: none;
    transition: all .5s linear;
    display: flex;
    align-items: center;
    width: fit-content;
    margin: 20px auto 0px;
}
  @media(max-width: 575px){
    .error{
        height: unset;
        text-align: center;
    }
    .error img{
        height: unset;
        width: 70%;
    }
    .error-text h2 {
        font-size: 24px;
    }
	  .error-text p{
		  width: unset;
	  }
  }

.product-table-wrapper table thead {
    background: #1c6bdf30;
}