/*======================
   01.fonts
========================*/
@import url('https://fonts.googleapis.com/css2?family=Archivo:ital,wght@0,100..900;1,100..900&display=swap');
:root{
	--blue: #3494B7;
	--darkBlue: #000F43;
	--light: #E6F9F9;
}

/*======================
   02. Basic css
========================*/
::-moz-selection{
    background-color: #cbcbcb;
    color: var(--darkBlue);
}
::selection {
    background-color: #cbcbcb;
    color: var(--darkBlue);
}
html{
	font-size: 62.5%;
}
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.5;
	font-family: "Archivo", sans-serif;
	background-color: #fff;
	color: var(--darkBlue);
	font-weight: 500;
	font-size: 2rem;
}
ul,
ol{
	padding-left: 2rem;
}
ul li::marker,
ol li::marker{
	color: var(--blue);
}
a{
	color: inherit;
}
a:hover {
	text-decoration: none;
	color: var(--blue);
}
p a{
	color: inherit;
}
p a:hover{
	color: var(--blue);
}

button:focus,
a:focus,
input:focus,
textarea:focus,
select:focus{
	outline: none;
}
h1{
	font-size: 5rem;
	font-weight: 900;
	line-height: 1.2;
}
h2{
	font-size: 5rem;
	font-weight: 900;
	line-height: 1.1;
}
h3{
	font-size: 4rem;
	font-weight: 900;
	line-height: 1.1;
}
h4{
	font-size: 3rem;
	font-weight: 900;
}
h5{
	font-size: 2.6rem;
	font-weight: 900;
}
h6{
	font-size: 2.2rem;
	font-weight: 900;
}


/* 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: 5.0rem;
	height: 5.0rem;
	display: inline-block;
	padding: .0rem;
	text-align: left;
}

.loader3 span {
	position: absolute;
	display: inline-block;
	width: 5.0rem;
	height: 5.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;
	z-index: 999;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-column-gap: 2.2rem;
	   -moz-column-gap: 2.2rem;
	        column-gap: 2.2rem;
	position: relative;
}
.hamburger-menu>span{
	font-size: 3rem;
	font-weight: 700;
}
.hamburger-menu>div>span {
	background: var(--blue);
	width: 4rem;
	height: .5rem;
	display: block;
	margin: .7rem 0;
	border-radius: 2rem;
	-webkit-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.hamburger-menu .line-top.current {
	-webkit-transform: translateY(265%) rotate(135deg);
	-ms-transform: translateY(265%) rotate(135deg);
	transform: translateY(265%) rotate(135deg);
}
.hamburger-menu .line-center.current {
	opacity: 0;
}
.hamburger-menu .line-bottom.current {
	-webkit-transform: translateY(-225%) rotate(-135deg);
	-ms-transform: translateY(-225%) rotate(-135deg);
	transform: translateY(-225%) rotate(-135deg);
}
header.current .hamburger-menu>span{
	color: #fff;
}
.container{
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}
header {
	position: fixed;
	top: 0rem;
	left: 0;
	z-index: 1024;
	width: 100%;
	-webkit-transition: 0.3s;
	-o-transition:  0.3s;
	transition:  0.3s;
	background-color: #fff;
	padding: 2rem 0;
}
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::before{
	content: '';
	display: block;
	width: 100%;
	height: 1rem;
	left: 0;
	top: -2rem;
	position: relative;
	background: -webkit-gradient(linear, left top, right top, from(var(--darkBlue)), to(var(--blue)));
	background: -o-linear-gradient(left, var(--darkBlue) 0%, var(--blue) 100%);
	background: linear-gradient(90deg, var(--darkBlue) 0%, var(--blue) 100%);
}
.logo {
	max-width: 39rem;
	display: inline-block;
	width: 100%;
}
header.sticky .logo{
	max-width: 25rem;
}
.fa-phone{
	-webkit-transform: rotate(90deg);
	    -ms-transform: rotate(90deg);
	        transform: rotate(90deg);
}
.overlay{
	position: fixed;
	top: 0;
	left: 0%;
	width: 100%;
	z-index: 2;
	background-color: var(--darkBlue);
	height: 100%;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	opacity: 0;
	z-index: 1;
	pointer-events: none;
}
.overlay.current{
	opacity: 0.5;
	pointer-events: all;
	cursor: crosshair;
}
.menu{
	position: fixed;
	top: 0;
	left: -100%;
	width: auto;
	max-width: 100%;
	z-index: 2;
	background-color: var(--darkBlue);
	height: 100%;
	overflow: auto;
	padding-top: 16rem;
	padding-right: 8rem;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
.menu.current{
	left: 0;
}
.menu ul{
	list-style: none;
	padding: 0;
}
.menu ul li a{
	font-size: 2.4rem;
	font-weight: 700;
	text-transform: uppercase;
	display: block;
	min-width: 32rem;
	padding: 4rem 0;
	color: #fff;
}
.menu ul li:not(:last-child) a{
	border-bottom: 0.1rem solid #fff;
}
.menu ul li a:hover,
.menu ul li a.active{
	color: var(--blue);
}
/*button*/
.button {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	padding: 1.5rem 2.2rem 1.3rem;
	color: #fff;
	border-radius: 0rem;
	font-weight:900;
	font-size: 2.2rem;
	line-height: 1.2;
	text-align: left;
	border: none;
	background: var(--blue);
	-webkit-column-gap: 2.2rem;
	   -moz-column-gap: 2.2rem;
	        column-gap: 2.2rem;
}
.button::after{
	content: '\f178';
	font-family: 'Font Awesome 5 Pro';
	font-weight: 400;
}
.button:hover{
	background: var(--darkBlue);
	color: #fff;
	-webkit-box-shadow: 0rem 0rem 4rem rgba(255, 255, 255, 0.26);
	        box-shadow: 0rem 0rem 4rem rgba(255, 255, 255, 0.26);
}
.button_wrapper{
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-column-gap: 3rem;
	   -moz-column-gap: 3rem;
	        column-gap: 3rem;
	        row-gap: 2rem;
}
/*return-to-top START CSS*/
.back-to-top {
	font-size: 2.5rem;
	width: 5rem;
	height: 5rem;
	line-height: 5rem;
	text-align: center;
	display: none;
	position: fixed;
	bottom: 3.0rem;
	right: 2.0rem;
	border-radius: 50%;
	background: var(--blue);
	z-index: 1000;
}
.back-to-top i {
	color: #fff;
}
/*Home area*/
.home_area{
	margin-top: 18rem;
}
.home_area .owl-dots{
	position: absolute;
	left: 0;
	bottom: 5rem;
	width: 100%;
}
.home_area .owl-dots button{
	background-color: #fff;
}
.home_area .owl-stage{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.banner_item{
	background-size: cover;
	background-position: center center;
	position: relative;
	z-index: 1;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	height: 100%;
	min-height: 78rem;
	padding: 4rem 0;
}
.banner_item::before{
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	z-index: -1;
	mix-blend-mode: multiply;
	background-color: var(--darkBlue);
	opacity: 0.75;
}
.home_content{
	max-width: 80rem;
}



.row:not(.no-gutters){
	margin-left: -1.5rem;
	margin-right: -1.5rem;
}
.row:not(.no-gutters)>div{
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}
.lg_gutters:not(.no-gutters){
	margin-left: -4.5rem;
	margin-right: -4.5rem;
}
.lg_gutters:not(.no-gutters)>div{
	padding-left: 4.5rem;
	padding-right: 4.5rem;
}
.md_gutters:not(.no-gutters){
	margin-left: -3rem;
	margin-right: -3rem;
}
.md_gutters:not(.no-gutters)>div{
	padding-left: 3rem;
	padding-right: 3rem;
}
.owl-dots{
	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;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-column-gap: 1rem;
	   -moz-column-gap: 1rem;
	        column-gap: 1rem;
	row-gap: 1rem;
	margin-top: 4rem;
}
.owl-dots button{
	height: 1.2rem;
	width: 1.2rem;
	border-radius: 50%;
	background-color: var(--darkBlue);
	padding: 0.1rem;
	border: none;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}
.owl-dots button.active{
	background-color: var(--blue);
}
.owl-nav button {
	background-color: transparent;
	border-radius: 0;
	padding: 0;
	border: none;
	color: var(--darkBlue);
	position: absolute;
	top: 41%;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
	font-size: 3rem;
}
.owl-nav button.owl-prev{
	left: -6.5rem;
}
.owl-nav button.owl-next{
	right: -6.5rem;
}
.owl-nav button:hover{
	color: var(--blue);
}

/*about area*/
.about_area{
	position: relative;
	padding-top: 4rem;
}
.about_area::before{
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	width: 100%;
	background-color: var(--darkBlue);
	opacity: 0.05;
	height: calc(100% + 25rem);
}
.about_content{
	padding-bottom: 9rem;
}
.about_content p{
	margin-top: 3rem;
	max-width: 74rem;
}
.about_content p:nth-last-child(2){
	font-size: 2.4rem;
	font-weight: 600;
}
.owner_wrap{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-webkit-column-gap: 5rem;
	   -moz-column-gap: 5rem;
	        column-gap: 5rem;
	padding-right: 8rem;
}
.owner_wrap p{
	font-size: 3rem;
	font-weight: 600;
}
.owner_wrap h4{
	color: var(--blue);
	margin-top: 5rem;
}
.owner_content{
	width: 100%;
	max-width: 28rem;
}
.owner_wrap>img{
	width: 31.6rem;
}

/*service area*/
.service_box{
	color: #fff;
}
.service_box img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	aspect-ratio: 3.25/2;
}
.service_content{
	padding: 8rem;
	height: 100%;
	position: relative;
	background-color: var(--blue);
}
.service_content::before{
	content: '';
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%) rotate(45deg);
	    -ms-transform: translateY(-50%) rotate(45deg);
	        transform: translateY(-50%) rotate(45deg);
	width: 3rem;
	height: 3rem;
	left: -1.5rem;
	background-color: inherit;
}
.service_content p{
	margin-top: 3rem;
}
.service_box:nth-child(odd) .row{
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
}
.service_box:nth-child(odd) .service_content{
	background-color: var(--darkBlue);
}
.service_box:nth-child(odd) .service_content::before{
	left: auto;
	right: -1.5rem;
}

/*reference area*/
.reference_area{
	padding: 10rem 0;
}
.reference_area p{
	margin-top: 3rem;
	max-width: 141rem;
}
.ref_box {
	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;
	border: 0.1rem solid var(--darkBlue);
	height: 18rem;
	overflow: hidden;
	padding: 2rem 4rem;
}
.ref_box img{
	max-width: 100%;
	max-height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
}
.ref_box:hover img{
	-webkit-transform: scale(1.1);
	    -ms-transform: scale(1.1);
	        transform: scale(1.1);
}
/*cta area*/
.cta_area{
	color: #fff;
	padding: 8rem 0;
	position: relative;
	z-index: 1;
	overflow: hidden;
	background-color: var(--blue);
}
.cta_area h2{
	color: #fff;
}
.cta_area p{
	margin-top: 3rem;
	max-width: 67rem;
}
.cta_img{
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	z-index: -1;
	height: 100%;
	background-size: cover;
	background-repeat: no-repeat;
	max-width: 36%;
	opacity: 0.6;
}
.cta_img::after{
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	top: 0;
	left: 0rem;
	background: -webkit-gradient(linear, left top, right top, color-stop(0, var(--blue)), to(transparent));
	background: -o-linear-gradient(left, var(--blue) 0, transparent 100%);
	background: linear-gradient(to right, var(--blue) 0, transparent 100%);
	z-index: 1;
}

/*footer*/
footer{
	padding: 10rem 0;
	background-color: var(--darkBlue);
	color: #fff;
	line-height: 1.7;
}
footer p strong{
	display: inline-block;
	min-width: 7.7rem;
}
footer a{
	color: #fff;
	display: inline-block;
}
footer a:hover{
	color: var(--blue);
}
.first_col{
	max-width: 19%;
}
.icon_box{
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.icon_box a{
	width: 5rem;
	height: 5rem;
	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;
	color: #fff;
	fill: #fff;
	font-size: 2.2rem;
	background-color: var(--darkBlue);
}
.icon_box a svg{
	height: 2.2rem;
}
.icon_box a:hover {
	background-color: var(--blue);
	color: #fff;
	fill: #fff;
}
.icon_box a:not(:last-child){
	margin-right: 1.5rem;
}
.list_wrapper{
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-column-gap: 4rem;
	   -moz-column-gap: 4rem;
	        column-gap: 4rem;
	text-align: left;
}
.list_wrapper ul{
	padding-left: 0;
	list-style: none;
}
footer .icon_box a{
	color: var(--darkBlue);
	fill: var(--darkBlue);
	background-color: #fff;
}
footer .icon_box a:hover {
	background-color: var(--blue);
	color: #fff;
	fill: #fff;
}