/*======================
   01. Google fonts
========================*/
@import url('https://fonts.googleapis.com/css2?family=Bitter:wght@400;700&display=swap');

@font-face {
	font-family: 'Nexa';
	src: url('../webfonts/NexaRegular.eot');
	src: url('../webfonts/NexaRegular.eot?#iefix') format('embedded-opentype'),
	  url('../webfonts/NexaRegular.woff2') format('woff2'),
	  url('../webfonts/NexaRegular.woff') format('woff'),
	  url('../webfonts/NexaRegular.ttf') format('truetype'),
	  url('../webfonts/NexaRegular.svg#NexaRegular') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Nexa';
	src: url('../webfonts/Nexa-Bold.eot');
	src: url('../webfonts/Nexa-Bold.eot?#iefix') format('embedded-opentype'),
	  url('../webfonts/Nexa-Bold.woff2') format('woff2'),
	  url('../webfonts/Nexa-Bold.woff') format('woff'),
	  url('../webfonts/Nexa-Bold.ttf') format('truetype'),
	  url('../webfonts/Nexa-Bold.svg#Nexa-Bold') format('svg');
	font-weight: bold;
	font-style: normal;
	font-display: swap;
}
:root{
	--blue: #3576D8;
}

/*======================
   02. Basic css
========================*/
html{
	font-size: 62.5%;
}
/*font-family: 'Bitter', serif;*/
a, button, img{
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
html,
body,
div,
span,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
strong,
i,
ol,
ul,
li,
form,
label,
footer,
header,
menu,
nav,
section {
	margin: 0;
	padding: 0;
}

body {
	line-height: 1.27;
	font-family: 'Nexa';
	background-color: #F3F3F3;
	color: #000000;
	font-weight: 400;
	font-size: 1.8rem;
}

ol,
ul {
	list-style: none;
}

a:hover {
	text-decoration: none;
}

button:focus,
a:focus,
input:focus,
textarea:focus{
	outline: none !important;
	-webkit-box-shadow: none !important;
	        box-shadow: none !important;
}

/* page loader  */
#preloader {
	position: fixed;
	background: #fff;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 99999;
	height: 100vh;
	width: 100vw;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}
.loader3 {
	width: 6.0rem;
	height: 6.0rem;
	display: inline-block;
	padding: .0rem;
	text-align: left;
}

.loader3 span {
	position: absolute;
	display: inline-block;
	width: 6.0rem;
	height: 6.0rem;
	border-radius: 100%;
	background: var(--blue);
	-webkit-animation: loader3 1.5s linear infinite;
	animation: loader3 1.5s linear infinite;
}

.loader3 span:last-child {
	animation-delay: -0.9s;
	-webkit-animation-delay: -0.9s;
}

@keyframes loader3 {
  	0% {
    	-webkit-transform: scale(0, 0);
    	        transform: scale(0, 0);
    	opacity: 0.8;
  	}
  	100% {
    	-webkit-transform: scale(1, 1);
    	        transform: scale(1, 1);
    	opacity: 0;
  	}
}

@-webkit-keyframes loader3 {
  	0% {
    	-webkit-transform: scale(0, 0);
    	opacity: 0.8;
  	}
  	100% {
    	-webkit-transform: scale(1, 1);
    	opacity: 0;
  	}
}
/*Hamburger-menu START CSS*/
.hamburger-menu {
	cursor: pointer;
	display: none;
	z-index: 999;
	width: 3.5rem;
	margin-left: auto;
}
.hamburger-menu span {
	background: #000;
	width: 100%;
	height: .32rem;
	display: block;
	margin: .64rem 0;
	-webkit-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	border-radius: 1rem;
	margin-left: auto;
}
.hamburger-menu .line-top.current {
	-webkit-transform: translateY(1.1rem) rotate(135deg);
	-ms-transform: translateY(1.1rem) rotate(135deg);
	transform: translateY(1.1rem) rotate(135deg);
}
.hamburger-menu .line-center.current {
	opacity: 0;
}
.hamburger-menu .line-center {
	width: 80%;
}
.hamburger-menu .line-bottom{
	width: 60%;
}
.hamburger-menu .line-bottom.current {
	-webkit-transform: translateY(-0.88rem) rotate(-135deg);
	-ms-transform: translateY(-0.88rem) rotate(-135deg);
	transform: translateY(-0.88rem) rotate(-135deg);
	width: 100%;
}
header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1024;
	width: 100%;
	-webkit-transition: 0.3s;
	-o-transition:  0.3s;
	transition:  0.3s;
	padding: 2rem 0;
	background-color: #fff;
}
.logo{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 20.4rem;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	margin-right: 4rem;
}

/*sticky START CSS*/
header.sticky {
   -webkit-box-shadow: 0 .8rem 2.0rem 0 rgba(0, 0, 0, .1);
   box-shadow: 0 .8rem 2.0rem 0 rgba(0, 0, 0, .1);
}
header .container{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.menu {
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.menu li {
	display: inline-block;
	padding: 0 2rem;
}
.menu li a {
	font-size: 1.8rem;
	color: #000000;
	padding: 0;
}
.menu ul:last-child li:last-child{
	padding-right: 0;
}
.menu>ul>li>a.active,
.menu>ul>li>a:hover {
	color: var(--blue);
}
.menu li a.button{
	border-radius: 7rem;
}
.button{
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	text-align: center;
	color: #fff !important;
	gap: 1rem;
	background-color: var(--blue);
	padding: 1.5rem 3rem !important;
	border-radius: 1.2rem;
	border: none;
}
.button img{
	width: 2.1rem;
}
.button:hover{
	background-color: #000;
}

/*home area*/
.home_area{
	position: relative;
	z-index: 1;
	padding: 35rem 0 25rem;
}
.map_img {
	position: absolute;
	z-index: -1;
	right: -11rem;
	top: 5rem;
	width: 50%;
	max-width: 99rem;
	pointer-events: none;
}
.home_content{
	max-width: 69.4rem;
}
.home_form{
	position: relative;
	height: 7rem;
	background-color: #FBFBFB;
	border: .1rem solid #3576D8;
	border-radius: 1.5rem;
	margin-top: 3.4rem;
	margin-bottom: 4.8rem;
}
.home_content h2{
	font-size: 5.4rem;
	text-transform: uppercase;
	font-family: 'Bitter', serif;
	line-height: 1.33;
	font-weight: 700;
}
.home_content h2 span{
	color: var(--blue);
}
.home_content p{
	margin-top: 2.5rem;
}
.home_form .button {
	position: absolute;
	right: 0.4rem;
	top: 50%;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
	z-index: 3;
	font-size: 2rem;
}
.input-phone,
.input-phone>div{
	height: 100%;
}
.caret{
	display: none;
}
.input-phone input {
	width: 100%;
	height: 100%;
	border: none;
	background-color: transparent;
	padding: 0 16rem 0 2rem;
}
button#btn-country {
	border: none;
	height: 100%;
	background-color: transparent;
	padding: 0 2rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	font-size: 2rem;
	position: relative;
}
button#btn-country:active:focus{
	-webkit-box-shadow: none;
	        box-shadow: none;
}
button#btn-country:before{
	position: absolute;
	content: '';
	right: 0;
	height: 90%;
	width: 0.1rem;
	background-color: #D6D6D6;
	top: 50%;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
}

/*work area*/
.work_area{
	padding: 14.5rem 0;
}
.work_area .row{
	margin-left: -3.5rem;
	margin-right: -3.5rem;
}
.work_area .row>div{
	padding-left: 3.5rem;
	padding-right: 3.5rem;
	margin-top: 7rem;
}
.work_box{
	background: #FFFFFF;
	-webkit-box-shadow: 0 18.2rem 7.3rem rgba(0, 0, 0, 0.01), .0rem 10.2rem 6.1rem rgba(0, 0, 0, 0.05), 0 4.6rem 4.6rem rgba(0, 0, 0, 0.09), .0rem 1.1rem 2.5rem rgba(0, 0, 0, 0.1), .0rem .0rem .0rem rgba(0, 0, 0, 0.1);
	        box-shadow: 0 18.2rem 7.3rem rgba(0, 0, 0, 0.01), .0rem 10.2rem 6.1rem rgba(0, 0, 0, 0.05), 0 4.6rem 4.6rem rgba(0, 0, 0, 0.09), .0rem 1.1rem 2.5rem rgba(0, 0, 0, 0.1), .0rem .0rem .0rem rgba(0, 0, 0, 0.1);
	border-radius: 1.6rem;
	height: 100%;
	padding: 0 2.5rem 3.8rem;
}
.work_icon {
	width: 10.1rem;
	height: 10.1rem;
	background: #FFFFFF;
	margin-left: auto;
	margin-right: auto;
	border-radius: 50%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	font-size: 3.6rem;
	font-weight: 700;
	outline: 0.3rem solid var(--blue);
	outline-offset: -1.1rem;
	position: relative;
	top: -5rem;
}
.work_box>img{
	height: 23.5rem;
	max-width: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
	margin-top: -3rem;
}
.work_box h3{
	font-size: 2.4rem;
	font-weight: 700;
	margin-top: 4rem;
	margin-bottom: 2.2rem;
}
.title_wrap h2{
	font-size: 5.4rem;
	font-weight: 700;
}

/*feature area*/
.feature_area{
	padding: 14.5rem 0;
}
.box{
	background: #FAFAFA;
	border: .1rem solid #1D191F;
	border-radius: 1.6rem;
	padding: 4rem;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.step_item::before{
	position: absolute;
	content: '';
	top: 50%;
}
.box:hover{
	background-color: var(--blue);
	color: #fff;
	border-color: var(--blue);
}
.icon_box {
	padding: 1.2rem;
	width: 7.5rem;
	height: 7.4rem;
	background: #3576D8;
	border-radius: .8rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin-right: 1.6rem;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}
.icon_box img{
	max-width: 100%;
	max-height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
}
.box:hover .icon_box img{
	-webkit-filter: brightness(0);
	        filter: brightness(0);
}
.box:hover .icon_box{
	background-color: #fff;
}
.box h3{
	font-size: 3.2rem;
	font-weight: 700;
}
.box p{
	margin-top: 2rem;
	margin-bottom: 1.5rem;
}
.box a{
	color: inherit;
	font-size: 2rem;
	font-weight: 700;
	-webkit-transition: initial;
	-o-transition: initial;
	transition: initial;
}
.box a:hover{
	color: #000;
}
.step_item{
	margin-left: -10.2rem;
	margin-right: -10.2rem;
	margin-top: 4rem;
	position: relative;
}
.step_item::before{
	position: absolute;
	content: '';
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	width: 2.3rem;
	height: 2.3rem;
	background: var(--blue);
	border-radius: 50%;
}
.step_item:nth-child(even){
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
}
.step_item>div{
	padding-left: 10.2rem;
	padding-right: 10.2rem;
}
.step_item>div>img{
	height: 59rem;
	max-width: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
}
.step_wrap{
	position: relative;
}
.step_wrap::before {
	content: '';
	left: 50%;
	top: 50%;
	position: absolute;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	height: 81%;
	width: 0.2rem;
	background-image: url(../img/line.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

/*testimonial area*/
.testi_area{
	padding: 3.5rem 0 10rem;
}
.testimonial_box{
	padding: 10.0rem 4.8rem;
	background: #FFFFFF;
	-webkit-box-shadow: .0rem 18.2rem 7.3rem rgba(0, 0, 0, 0.01), .0rem 10.2rem 6.1rem rgba(0, 0, 0, 0.05), .0rem 4.6rem 4.6rem rgba(0, 0, 0, 0.09), .0rem 1.1rem 2.5rem rgba(0, 0, 0, 0.1), .0rem .0rem .0rem rgba(0, 0, 0, 0.1);
	        box-shadow: .0rem 18.2rem 7.3rem rgba(0, 0, 0, 0.01), .0rem 10.2rem 6.1rem rgba(0, 0, 0, 0.05), .0rem 4.6rem 4.6rem rgba(0, 0, 0, 0.09), .0rem 1.1rem 2.5rem rgba(0, 0, 0, 0.1), .0rem .0rem .0rem rgba(0, 0, 0, 0.1);
	border-radius: 2.0rem;
	margin-top: 10rem;
	text-align: center;
	font-size: 2.4rem;
}
.testimonial_box .item>img{
	height: 11.8rem;
	width: 11.8rem;
	border-radius: 50%;
	-o-object-fit: cover;
	   object-fit: cover;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 4rem;
}
.author{
	padding-top: 1.2rem;
}
.author p{
	margin-top: 1.2rem;
}
.navigation{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	line-height: 1;
	margin-top: 4rem;
}
.navigation>button{
	padding: 0;
	background-color: transparent;
	border: none;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}
.navigation>button img{
	width: 6.2rem;
}
.owl-dots{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	padding: 0 0.6rem;
}
.owl-dots button{
	width: 1.6rem;
	height: 1.6rem;
	border: .1rem solid #000000;
	border-radius: 50%;
	margin: 0.6rem;
	background-color: transparent;
}
.owl-dots button.active{
	background-color: var(--blue);
	border-color: #E6E9F0;
}
.quote_box{
	position: relative;
}
.quote_box::before {
	position: absolute;
	content: '';
	height: 5.2rem;
	width: 3.9rem;
	background-image: url(../img/quote.svg);
	background-repeat: no-repeat;
	background-position: center center;
	top: -5.5rem;
	left: -1.2rem;
	background-size: contain;
}

/*faq area*/
.faq_area{
	padding: 10rem 0;
}
.faq_wrap{
	max-width: 115.6rem;
}
.faq_item{
	border-bottom: 0.1rem solid #C6C6C6;
	padding: 1.6rem 8rem 1.6rem 0;
	margin-top: 4rem;
}
.faq_item button{
	width: 100%;
	padding: 0;
	border: none;
	background-color: transparent;
	font-size: 3.2rem;
	font-weight: 700;
	text-align: left;
	position: relative;
}
.faq_item button::before {
	content: '+';
	position: absolute;
	right: -5rem;
	top: 50%;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
	width: 3.0rem;
	height: 3.0rem;
	background: #3576D8;
	border: .1rem solid #FFFFFF;
	border-radius: 2.5rem;
	color: #fff;
	font-weight: 400;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	padding-top: 0.3rem;
}
.faq_item button[aria-expanded="true"]::before {
	content: '-';
}
.faq_item p{
	margin-top: 2rem;
}

/*cta area*/
.cta_area{
	padding: 10rem 0 17.6rem;
}
.cta_box{
	background: #FFFFFF;
	-webkit-box-shadow: .0rem 18.2rem 7.3rem rgba(0, 0, 0, 0.01), .0rem 10.2rem 6.1rem rgba(0, 0, 0, 0.05), .0rem 4.6rem 4.6rem rgba(0, 0, 0, 0.09), .0rem 1.1rem 2.5rem rgba(0, 0, 0, 0.1), .0rem .0rem .0rem rgba(0, 0, 0, 0.1);
	        box-shadow: .0rem 18.2rem 7.3rem rgba(0, 0, 0, 0.01), .0rem 10.2rem 6.1rem rgba(0, 0, 0, 0.05), .0rem 4.6rem 4.6rem rgba(0, 0, 0, 0.09), .0rem 1.1rem 2.5rem rgba(0, 0, 0, 0.1), .0rem .0rem .0rem rgba(0, 0, 0, 0.1);
	border-radius: 2.0rem;
	padding: 5.8rem 3rem 4.8rem;
	text-align: center;
}
.cta_box h2{
	font-size: 4.8rem;
	font-weight: 700;
	margin-bottom: 4.4rem;
}
.cta_box .button{
	font-size: 2.4rem;
	height: 8.4rem;
	border-radius: 2rem;
}
.cta_box .button img{
	width: 2.8rem;
}

/*contact area*/
.contact_area{
	background-color: #E1F2FF;
	padding: 4rem 0 10rem;
	color: #333215;
}
.contact_area input,
.contact_area textarea{
	padding: 2.0rem 3.0rem;
	border: .1rem solid #000000;
	border-radius: .6rem;
	height: 6.2rem;
	width: 100%;
	color: #000;
	background-color: transparent;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
.contact_area input::-webkit-input-placeholder, .contact_area textarea::-webkit-input-placeholder{
	color: #000;
	opacity: 1;
}
.contact_area input::-moz-placeholder, .contact_area textarea::-moz-placeholder{
	color: #000;
	opacity: 1;
}
.contact_area input:-ms-input-placeholder, .contact_area textarea:-ms-input-placeholder{
	color: #000;
	opacity: 1;
}
.contact_area input::-ms-input-placeholder, .contact_area textarea::-ms-input-placeholder{
	color: #000;
	opacity: 1;
}
.contact_area input::placeholder,
.contact_area textarea::placeholder{
	color: #000;
	opacity: 1;
}
.contact_area input:focus,
.contact_area textarea:focus{
	background-color: #C8E6FF;
}
.contact_area textarea{
	resize: none;
	height: 10.2rem;
}
.contact_area h2{
	font-size: 4.4rem;
	font-weight: 700;
	margin-bottom: 3rem;
}
.check input{
	display: none;
}
.check label{
	cursor: pointer;
	color: #00467F;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	font-weight: 400;
}
.check label .rectangle{
	height: 2.5rem;
	width: 2.5rem;
	border: 0.2rem solid #000;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
	margin-right: 1.2rem;
	border-radius: 0.3rem;
	position: relative;
}
.check label .rectangle::before {
	position: absolute;
	content: '';
	height: 0.75rem;
	width: 1.5rem;
	border-left: 0.2rem solid #000;
	border-bottom: 0.2rem solid #000;
	left: 52%;
	top: 40%;
	-webkit-transform: translate(-50%, -50%) rotate(-45deg);
	    -ms-transform: translate(-50%, -50%) rotate(-45deg);
	        transform: translate(-50%, -50%) rotate(-45deg);
	display: none;
}
.check input:checked + label .rectangle::before{
	display: block;
}
.lg_gutters {
	margin-left: -3rem;
	margin-right: -3rem;
}
.lg_gutters>div{
	padding-left: 3rem;
	padding-right: 3rem;
}
.contact_area .button{
	width: 100%;
	font-size: 2rem;
	border: 0.1rem solid #546286;
	height: 6.4rem;
	border-radius: 0.6rem;
}
.contact_img{
	margin-left: -6rem;
	margin-bottom: -5rem;
}

/*footer area*/
footer{
	background-color: #E1F2FF;
	font-size: 1.6rem;
	padding-top: 10rem;
}
.footer_top p,
.footer_top ul li{
	margin-top: 1rem;
}
.footer_top a{
	color: #000;
}
.footer_top a:hover{
	color: var(--blue);
}
.footer_top  h4{
	font-size: 2rem;
	font-weight: 700;
	padding-bottom: 1rem;
}
.footer_bottom{
	background-color: var(--blue);
	color: #fff;
	font-size: 1.4rem;
	padding: 3.2rem 0;
	margin-top: 4rem;
}
.flogo{
	display: inline-block;
	width: 22rem;
	margin-bottom: 2rem;
}
.social_icons{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	margin-top: 4rem;
}
.social_icons a{
	color: #000;
	font-size: 2rem;
}
.social_icons a:not(:last-child){
	margin-right: 3.5rem;
}
.social_icons a:hover{
	color: var(--blue);
}
.footer_top .row>div:not(:first-child){
	margin-top: 16rem;
}
/*return-to-top START CSS*/

.back-to-top {
	font-size: 2.4rem;
	width: 4.5rem;
	height: 4.5rem;
	line-height: 4.7rem;
	text-align: center;
	display: none;
	position: fixed;
	bottom: 3.0rem;
	right: 2.0rem;
	border-radius: 50%;
	background: #000;
	z-index: 1000;
}

.back-to-top i {
	color: #fff;
}