@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600&display=swap');

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}
a{text-decoration-skip-ink:auto}a[href^="tel"]{text-decoration:none}button{outline:0}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}
textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"]{
	-webkit-appearance:none;
	appearance:none;
}
input[type="search"]{
	-webkit-appearance:textfield
}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{
	display:block
}
/* html{scroll-behavior:smooth} */
*{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	outline:none
}
html, body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	width:100%;
	height: 100%;
}
body{
	font-family: 'Poppins', sans-serif;
	margin:0;
	padding:0;
	text-size-adjust: none ;
	-webkit-text-size-adjust:none;
	overflow-x:hidden;
	background: #031F11;
	font-size: 18px;
	line-height: 28px;
	font-weight: 400;
}
img{
	display: block;
	max-width: 100%;
}
.container{
	width: 100%;
	max-width: 1320px;
	margin: 0 auto;
	position: relative;
	padding: 0 20px;
}
a{
	color: rgba(255,255,255,.5);
	text-decoration: none;
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}
a:hover{
	color: #22B46B;
}

/* Comman CSS Start */
.s-py{
	padding-top: 150px;
	padding-bottom: 150px;
}
.s-pt{
	padding-top: 150px;
}
.s-pb{
	padding-bottom: 150px;
}
.ml-auto{
	margin-left: auto;
}
.d-flex{
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
}
.justify-content-center{
	-webkit-justify-content: center;
	justify-content: center;
}
.justify-content-between{
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.justify-content-end{
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}
.align-items-center{
	-webkit-align-items: center;
	align-items: center;
}
.border-btn{
	display: inline-block;
	font-size: 16px;
	font-weight: 500;
	color: #fff;
	padding: 14px 32px;
	border: #fff solid 1px;
	-webkit-border-radius: 8px;
	border-radius: 8px;
}
.border-btn:hover{
	background: #fff;
	color: #031F11;
}
.cta-btn{
	display: inline-block;
	background: #22B46B;
	font-size: 16px;
	font-weight: 500;
	color: #fff;
	padding: 14px 32px;
	-webkit-border-radius: 8px;
	border-radius: 8px;
	border: transparent solid 1px;
}
.cta-btn:hover{
	background: none;
	border: #fff solid 1px;
	color: #fff;
}
/* Comman CSS End */

/* Typography CSS Start */
p{
	font-size: 18px;
	line-height: 28px;
	color: rgba(255,255,255,.5);
	margin-bottom: 16px;
}
p:last-child{
	margin-bottom: 0;
}
h1{
	font-size: 80px;
	font-weight: 600;
	margin-bottom: 16px;
	line-height: 1.1;
}
h2{
	font-size: 48px;
	font-weight: 600;
	margin-bottom: 16px;
	line-height: 64px;
}
h3{
	font-size: 32px;
	font-weight: 600;
	margin-bottom: 16px;
}
h4{
	font-size: 24px;
	font-weight: 500;
	margin-bottom: 16px;
}
p:last-child,
h1:last-child,
h2:last-child,
h3:last-child{
	margin-bottom: 0;
}
/* Typography CSS End */


/* Header CSS Start */
header{
	padding: 32px 40px;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1;
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}
header.fixed{
	padding: 16px 40px;
}
header.fixed:before{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	background: rgba(2, 24, 13, .8);
	backdrop-filter: blur(8px);
}
.header-wrapper{
	justify-content: space-between;
	align-items: center;
}
.header-wrapper .header_logo img{
	width: auto;
	height: 34px;
}
.header-wrapper .navbar{
	align-items: center;
}
.header-wrapper .navbar ul{
	padding-right: 40px;
}
.header-wrapper .navbar ul li{
	display: inline-block;
	margin-left: 48px;
}
.header-wrapper .navbar ul li a{
	color: rgba(255,255,255,.5);
	position: relative;
	font-size: 16px;
}
.header-wrapper .navbar ul li a:after{
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 0%;
	height: 1px;
	background: #fff;
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}
.header-wrapper .navbar ul li a:hover:after,
.header-wrapper .navbar ul li a.active:after{
	width: 100%;
}
.header-wrapper .navbar ul li a:hover,
.header-wrapper .navbar ul li a.active{
	color: #fff;
}
/* Header CSS End */


/* Page CSS Start */
.home-top-bg{
	background:
	url(../images/home-top-bg.png) no-repeat center top / contain,
	url(../images/home-top-pattern.svg) no-repeat 300px bottom / cover;
	height: 100vh;
}
.top-bg{
	background:
	url(../images/home-top-bg.png) no-repeat center top / contain;
	height: 100vh;
}
.hero-banner{
	min-height: 100vh;
	align-items: center;
}
.hero-banner .banner-img{
	max-width: 300px;
	position: absolute;
	top: 200px;
	overflow: hidden;
	-webkit-border-radius: 170px;
	border-radius: 170px;
}
.hero-banner .content{
	max-width: 700px;
	margin: 0 auto;
	text-align: center;
	position: relative;
}
.hero-banner .content > *{
	color: #fff;
}
.hero-banner .content p{
	color: rgba(255,255,255,.5);
	margin-bottom: 32px;
}
.hero-banner .content .shape{
	position: absolute;
	bottom: -28px;
	left: 60px;
	z-index: -1;
}
.line-shape{
	position: absolute;
	top: 85px;
}
.round-shape{
	position: absolute;
	top: auto;
	bottom: -50px;
	left: 50%;
	margin-left: -50px;
}
.title{
	text-align: center;
	color: #fff;
	margin-bottom: 56px;
}
.title span{
	color: #22B46B;
	font-size: 18px;
	margin-bottom: 16px;
	font-weight: 400;
	display: block;
}
.service-wrapper{
	width: 100%;
	position: relative;
}
.service-box{
	margin-bottom: 80px;
}
.service-box:last-child{
	margin-bottom: 0;
}
.service-box .content{
	max-width: 50%;
	padding-right: 60px;
}
.service-box .content span{
	font-size: 40px;
	font-weight: 600;
	color: rgba(255,255,255,.2);
	margin-bottom: 24px;
	display: inline-block;
}
.service-box .content h3{
	color: #fff;
	font-weight: 500;
}
.service-box .content h3 img{
	display: inline-block;
	vertical-align: middle;
	margin-left: 16px;
}
.service-box .img-block{
	max-width: 50%;
	width: 100%;
	order: 12;
	overflow: hidden;
	-webkit-border-radius: 250px;
	border-radius: 250px;
}
.service-box.img-left .content{
	order: 12;
	padding-right: 0;
	padding-left: 60px;
}
.line-shape-2{
	display: inline-block;
	margin-bottom: -30px;
}
.services-section .dots-pattern{
	position: absolute;
	top: 0;
}
.services-section .round-pattern-large{
	top: -150px;
	right: 40px;
	left: auto;
}
.top-space{
	padding-top: 150px;
}
.selected-work-title{
	overflow: hidden;
	background: rgba(255,255,255,.05);
	padding: 50px 0;
	position: relative;
	-webkit-transform: rotate(-5deg);
	-moz-transform: rotate(-5deg);
	transform: rotate(-5deg);
	margin: 100px 0;
}
.selected-work-title span{
	margin: 0 8px;
}
.selected-work-title .str_move{
	position: absolute;
	top: 50%;
	left: -50%;
	font-size: 40px;
	font-weight: 500;
	color: rgba(255,255,255,.2);
	white-space: nowrap;
	text-transform: uppercase;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	transform: translateY(-50%);
	padding-left: 16px;
}
.services-section .green-shadow{
	position: absolute;
	width: 80%;
	height: 80%;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	z-index: -1;
	opacity: .7;
}
.about-section{
	position: relative;
}
.about-section .content,
.about-section .img-block{
	max-width: 50%;
	width: 100%;
}
.about-section .img-block img{
	width: 100%;
}
.about-section .content{
	padding-right: 100px;
}
.about-section .img-block{
	order: 12;
}
.about-section .content .title{
	text-align: left;
	margin-bottom: 16px;
}
.about-section .content h4{
	font-weight: 500;
	color: #fff;
	margin-bottom: 24px;
}
.about-section .content .cta-btn{
	margin-top: 32px;
}
.about-section .white-shadow{
	position: absolute;
	top: -25%;
	right: -25%;
	width: 50%;
	height: 50%;
	z-index: -1;
}
.about-section .line-shape{
	position: static;
	margin-bottom: 40px;
}
.round-pattern-large{
	position: absolute;
	top: -90px;
	left: 455px;
	-webkit-animation: rotate 20s infinite linear;
}
@keyframes rotate{
    from{ transform: rotate(-360deg); }
    to{ transform: rotate(360deg); }
}
.triangle-shape{
	position: absolute;
	top: -150px;
	right: 20px;
}
.what-we-offer{
	position: relative;
}
.what-we-offer .white-shadow{
	position: absolute;
	max-width: 40%;
	left: 50%;
	transform: translateX(-50%);
	top: -100px;
	opacity: .7;
	z-index: -1;
}
.what-we-offer .img-block{
	max-width: 50%;
	padding-right: 80px;
}
.what-we-offer .content-box{
	max-width: 50%;
	width: 100%;
}
.what-we-offer .content-box .box{
	padding: 40px;
	border: solid 1px rgba(255,255,255,.13);
	-webkit-border-radius: 24px;
	border-radius: 24px;
	margin-bottom: 24px;
}
.what-we-offer .content-box .box:hover{
	border: transparent solid 1px;
	background: rgb(45,75,64);
	background: linear-gradient(145deg, rgba(45,75,64,1) 0%, rgba(30,67,48,0.20) 100%);
}
.what-we-offer .content-box .box:last-of-type{
	margin-bottom: 0;
}
.what-we-offer .content-box .box span.icon{
	width: 64px;
	display: inline-flex;
	align-self: flex-start;
}
.what-we-offer .content-box .box span.icon > img{
	width: 100%;
}
.what-we-offer .content-box .box .details{
	max-width: calc(100% - 88px);
	padding-left: 24px;
	color: #fff;
}
.what-we-offer .content-box .box .details h4{
	margin-bottom: 8px;
}
.what-we-offer .content-box .box .details p{
	font-size: 16px;
	line-height: 24px;
}
.what-we-offer .line-shape-2{
	position: absolute;
	top: -50px;
}
.what-we-offer .dot-round{
	position: absolute;
	top: -76px;
	right: 20px;
}
.cta-section{
	width: 100%;
}
.cta-section .content-area{
	max-width: 50%;
	width: 100%;
	padding: 64px;
	background: rgb(45,75,64);
	background: linear-gradient(145deg, rgba(45,75,64,1) 0%, rgba(30,67,48,0.20) 100%);
	border-radius: 24px 0 0 24px;
	position: relative;
}
.cta-section .content-area:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/wave-pattern.svg) no-repeat;
	background-size: cover;
	mix-blend-mode: luminosity;
	z-index: -1;
}
.cta-section .content-area h2{
	font-weight: 600;
	color: #fff;
}
.cta-section .content-area p{
	margin-bottom: 40px;
}
.logo-shape{
	width: 120px;
	display: inline-block;
	margin-bottom: 40px;
}
.cta-section .img-block{
	max-width: 50%;
	width: 100%;
	background-size: cover !important;
	border-radius: 0 24px 24px 0;
	background-position: center !important;
}
.cta-section .content-area .round-pattern-large{
	width: 110px;
	left: auto;
	right: 0;
	top: -55px;
}
.services-section .close-shape{
	position: absolute;
	top: 0;
}
.services-section .line-shape{
	position: absolute;
	top: 0;
	right: 20px;
}

.register-login .content-area{
	width: calc(100% / 2 - 20px);
	border-radius: 24px !important;
}
.register-login .content-area p{
	margin-bottom: 24px;
}
.register-login .d-flex{
	justify-content: space-between;
}

/* Page CSS End */

/* Footer CSS Start */
footer{
	padding-top: 100px;
}
.logo-part{
	max-width: 30%;
	padding-right: 30px;
	width: 100%;
}
.footer_logo{
	margin-bottom: 24px;
	display: inline-block;
}
.footer_logo img{
	width: 218px;
	height: auto;
}
.logo-part p{
	font-size: 16px;
	line-height: 24px;
}
.footer-right{
	display: inline-grid;
	column-gap: 40px;
	grid-template-columns: 1fr 1.5fr 2fr;
	width: 70%;
}
.f-col{
	width: auto;
}
.f-col > *{
	font-size: 16px;
	color: rgba(255,255,255,.5);
}
.f-col:last-of-type{
	max-width: 370px;
}
.f-col h5{
	color: #fff;
	font-size: 18px;
	font-weight: 500;
	margin-bottom: 8px;
}
.f-col ul li{
	margin-bottom: 16px;
}
.f-col ul li:last-child{
	margin-bottom: 0;
}
.footer-social li{
	display: inline-block;
	vertical-align: top;
}
.footer-social li a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	border-radius: 40px;
	border: solid 1px rgba(255,255,255,.3);
}
.footer-social li a:hover{
	background: rgba(255,255,255,.1);
	color: #fff;
}
li.address{
	background: url(../images/icon-location.svg) no-repeat left 3px;
	padding-left: 32px;
	line-height: 22px;
}
li.email{
	background: url(../images/icon-sms.svg) no-repeat left center;
	padding-left: 32px;
	line-height: 22px;
}
li.phone{
	background: url(../images/icon-call.svg) no-repeat left center;
	padding-left: 32px;
	line-height: 22px;
}
.subscribe-form input[type="email"]{
	width: 100%;
	border-radius: 8px;
	min-height: 48px;
	border: 0;
	font-size: 14px;
	font-weight: 400;
	font-family: 'Poppins', sans-serif;
	padding: 12px 16px;
	margin-bottom: 16px;
}
.subscribe-form input[type="submit"],
.contact-form form input[type="submit"]{
	font-family: 'Poppins', sans-serif;
	cursor: pointer;
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}
.copyright{
	margin-top: 100px;
	border-top: solid 1px rgba(255,255,255,.1);
	padding: 30px 20px;
	text-align: center;
	color: rgba(255,255,255,.5);
	font-size: 14px;
}
/* Footer CSS End */

/* Contact page CSS Start */
.contact-wrapper{
	width: 100%;
}
.contact-wrapper ~ .line-shape-2{
	position: absolute;
	bottom: -100px;
	margin-bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}
.contact-form{
	max-width: 50%;
	width: 100%;
	background: #274639 url(../images/contact-form-shape.svg) no-repeat right top;
	border-radius: 24px;
	padding: 40px;
}
.contact-form h3{
	color: #fff;
	font-weight: 600;
	margin-bottom: 32px;
}
.contact-form .form-group{
	margin-bottom: 24px;
}
.contact-form form label{
	color: #fff;
	display: block;
	font-size: 16px;
	line-height: 24px;
	margin-bottom: 4px;
}
.contact-form form label.error{
	color: #ff0000;
	font-size: 14px;
	margin: 4px 0 0 0;
	line-height: 1.1;
}
.contact-form form input[type="text"],
.contact-form form input[type="email"],
.contact-form form input[type="tel"],
.contact-form form textarea{
	width: 100%;
	font-family: 'Poppins', sans-serif;
	border: 0;
	min-height: 48px;
	background: #39574A;
	border-radius: 8px;
	padding: 12px 16px;
	resize: none;
	color: #fff;
	font-size: 16px;
}
.contact-form form textarea{
	min-height: 120px;
}
.contact-details{
	max-width: 50%;
	width: 100%;
	padding-left: 80px;
}
.contact-details > img{
	margin-bottom: 40px;
}
.contact-details .title{
	text-align: left;
	margin-bottom: 16px;
}
.contact-details .title span{
	margin-bottom: 8px;
}
.contact-details .col-2{
	display: inline-grid;
	column-gap: 40px;
	grid-template-columns: 1.2fr 1fr;
}
.contact-details .col-2 ul li{
	color: rgba(255,255,255,.5);
	margin-bottom: 16px;
}
.contact-details .col-2 ul li:last-child{
	margin-bottom: 0;
}
.contact-details .col-2 ul li a{
	font-size: 16px;
}
.contact-details .col-2 > *{
	font-size: 16px;
}
.map-section{
	position: relative;
}
.map-section .map{	
	overflow: hidden;
	background: #031F11;
	position: relative;
}
.map-section .map:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgb(3, 31, 17, .675);
	-webkit-mix-blend-mode: multiply;
	mix-blend-mode: multiply;
	pointer-events: none;
	border-radius: 24px;
}
.map-section .map iframe{
	border-radius: 24px;
	width: 100%;
	height: 700px;
	display: block;
	
}
.map-section .white-shadow{
	position: absolute;
	top: -25%;
	right: -25%;
	width: 50%;
	height: 50%;
	z-index: -1;
}
/* Contact page CSS End */

/* About Page CSS Start */
.about-top-section .content,
.about-top-section .img-block{
	max-width: 50%;
}
.about-top-section .img-block{
	order: 12;
}
.about-top-section .content{
	padding-right: 60px;
}
.about-top-section .content .title{
	margin-bottom: 16px;
	text-align: left;
}
.about-top-section .content p{
	margin-bottom: 24px;
}
.about-top-section .content p strong{
	color: #fff;
	font-weight: 500;
}
.about-top-section .content .cta-btn{
	margin-top: 8px;
}
.about-top-section .close-shape{
	display: block;
	margin: 0 auto;
	width: 80px;
}
.about-top-section .line-shape{
	top: 80px;
	right: 20px;
}
.about-points-wrapper{
	-webkit-justify-content: space-between;
	justify-content: space-between;
	margin: 0 -16px;
}
.about-box{
	text-align: center;
	color: #fff;
	max-width: 33.3333%;
	padding: 0 	16px;
}
.about-box h4{
	font-weight: 400;
}
.about-box img{
	margin-bottom: 32px;
}
.what-do-points{
	position: relative;
}
.what-do-points .container{
	justify-content: space-between;
}
.what-do-points .title{
	width: 100%;
}
.what-do-points .container .box{
	max-width: calc(100% / 3 - 24px);
	text-align: center;
}
.what-do-points .container .box h4{
	color: #fff;
	margin-bottom: 8px;
}
.what-do-points .container .box .number{
	background: #274639;
	width: 120px;
	height: 120px;
	border-radius: 100px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 32px;
	font-size: 32px;
	font-weight: 500;
	color: #fff;
}
.what-do-points .green-shadow{
	position: absolute;
	top: -200px;
	z-index: -1;
	width: 50%;
	left: 50%;
	transform: translateX(-50%);
	opacity: .7;
	text-align: center;
}
.what-do-points .green-shadow > img{
	display: inline-block;
}
.what-do-points .round-pattern-large{
	right: 30px;
	width: 110px;
	left: auto;
	top: -55px;
}
.timeline-wrapper{
	position: relative;
	padding: 32px 0;
}
.timeline-wrapper:before{
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -1px;
	width: 2px;
	height: 100%;
	background: rgba(255,255,255,.1);
}
.our-story-section .green-shadow{
	position: absolute;
	top: -100px;
	z-index: -1;
	/* width: 900px; */
	width: 90%;
	left: 50%;
	transform: translateX(-50%);
	opacity: .7;
}
.our-story-section .dots-pattern{
	position: absolute;
	top: 0;
	left: 20px;
}
.our-story-section .triangle-shape{
	left: 20px;
	bottom: -40px;
	top: auto;
}
.timeline-wrapper ul li{
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	align-items: center;
	position: relative;
	margin-bottom: 48px;
}
.timeline-wrapper ul li:last-child{
	margin-bottom: 0;
}
.timeline-wrapper ul li:before{
	content: '';
	position: absolute;
	width: 14px;
	height: 14px;
	left: 50%;
	margin-left: -12px;
	background: #fff;
	border: #22B46B solid 5px;
	border-radius: 24px;
}
.timeline-wrapper ul li h4{
	max-width: 50%;
	width: 100%;
	padding-right: 32px;
	text-align: right;
	margin-bottom: 0;
	font-weight: 500;
	color: #fff;
}
.timeline-wrapper ul li span{
	background: rgba(255,255,255,.1);
	border-radius: 8px;
	padding: 15px 24px;
	margin-left: 32px;
	color: #fff;
	max-width: calc(50% - 32px);
}
.timeline-wrapper ul li:nth-child(2n+2) h4{
	order: 12;
	padding-right: 0;
	padding-left: 32px;
	text-align: left;
}
.timeline-wrapper ul li:nth-child(2n+2) span{
	margin-left: auto;
	margin-right: 32px;
}
.why-choose-section .line-shape-2{
	right: 20px;
}
.letter{
	transform-origin: 50% 100%;
	display: inline-block;
	line-height: 1em;
}
/* About Page CSS End */

#loading {
	width: 100%;
	height: 100%;
	top:0;
	left: 0px;   
	position: fixed;
	display: block;
	opacity: 0.7;
	background-color: black;
	z-index: 99;
	text-align: center;
	color: #fff;
}

#loading-image {
    position: absolute;
    height: 50px;
    width: 50px;
    top: 40%; 
    left: 50%;
    right:0;
    z-index: 100;
    text-align: center;
}

/* The Modal (background) */
.modal {
	display: none; /* Hidden by default */
	position: fixed; /* Stay in place */
	z-index: 1; /* Sit on top */
	padding-top: 100px; /* Location of the box */
	left: 0;
	top: 0;
	width: 100%; /* Full width */
	height: 100%; /* Full height */
	overflow: auto; /* Enable scroll if needed */
	background-color: rgb(0,0,0); /* Fallback color */
	background-color: rgba(0,0,0,0.6); /* Black w/ opacity */
  }
  
  /* Modal Content */
  .modal-content {
	position: relative;
	background-color: #fefefe;
	margin: auto;
	padding: 0;
	border: 1px solid #888;
	width: 50%;
	box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);
	-webkit-animation-name: animatetop;
	-webkit-animation-duration: 0.4s;
	animation-name: animatetop;
	animation-duration: 0.4s
  }
  
  /* Add Animation */
  @-webkit-keyframes animatetop {
	from {top:-300px; opacity:0} 
	to {top:0; opacity:1}
  }
  
  @keyframes animatetop {
	from {top:-300px; opacity:0}
	to {top:0; opacity:1}
  }
  
  /* The Close Button */
.close {
	color: white;
	float: right;
	font-size: 28px;
	font-weight: bold;
}
.close:hover,
.close:focus {
	color: #000;
	text-decoration: none;
	cursor: pointer;
} 
.modal-header {
	padding: 2px 16px;
	background-color: #22B46B;
	color: white;
}  
.modal-body {padding: 2px 16px;}
.modal-footer {
	padding: 2px 16px;
	background-color: #22B46B;
	color: white;
}
.modal .modal-header{
	padding: 16px 24px;
	-webkit-border-radius: 16px 16px 0 0;
	border-radius: 16px 16px 0 0;
}
.modal .modal-content{
	max-width: 500px;
	width: 100%;
	border: 0;
	-webkit-border-radius: 16px;
	border-radius: 16px;
}
.modal .modal-content .modal-body{
	padding: 20px;
}
#newslatterFrm .invalid-feedback{
	width: 100%;
	display: block;
	margin: 16px 0;
}
#newslatterFrm input[type="button"]{
	border: 0;
	cursor: pointer;
	font-family: 'Poppins', sans-serif;
	cursor: pointer;
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}
#newslatterFrm input[type="button"]:hover{
	background: #031F11;
	color: #fff;
}

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

	h1{
		font-size: 64px;
	}

}

@media (min-width: 992px) and (max-width: 1439px){

	.container{
		padding: 0 40px;
	}
	.home-top-bg{
		background: url(../images/home-top-bg.png) no-repeat center top / contain, url(../images/home-top-pattern.svg) no-repeat -100px -400px / 1700px;
	}

}

@media (max-width: 1199px){

	.s-pt{
		padding-top: 100px;
	}
	.s-pb{
		padding-bottom: 100px;
	}
	.s-py{
		padding-top: 100px;
		padding-bottom: 100px; 
	}

	h1{
		font-size: 64px;
	}
	p,
	.logo-part p{
		line-height: 22px;
	}

	.line-shape{
		top: 50px;
	}
	.hero-banner .banner-img{
		top: 150px;
	}
	.hero-banner .container{
		margin-top: -100px;
	}
	.top-space{
		padding-top: 150px;
	}
	.service-box .content{
		padding-right: 40px;
	}
	.service-box.img-left .content{
		padding-left: 40px;
	}
	.service-box .content h3 img{
		width: 20px;
		margin-left: 8px;
	}
	.about-section .content,
	.what-we-offer .img-block{
		padding-right: 48px;
	}
	.what-we-offer .content-box .box .details{
		max-width: calc(100% - 65px);
	}
	.cta-section .content-area{
		padding: 40px;
	}
	.logo-shape{
		width: 80px;
		margin-bottom: 16px;
	}
	.contact-details .col-2{
		grid-template-columns: inherit;
	}
	.contact-details .col-2 ul{
		padding-bottom: 32px;
	}
}

@media (max-width: 991px){

	h1{
		font-size: 56px;
	}
	h2{
		font-size: 40px;
		line-height: 1.1;
	}
	.border-btn,
	.cta-btn{
		padding: 12px 24px;
	}

	.home-top-bg{
		background: url(../images/home-top-bg.png) no-repeat center top / contain, url(../images/home-top-pattern.svg) no-repeat 100px -100px / 120%;
	}

	header{
		padding: 16px 20px;
	}
	header.fixed{
		padding: 16px 20px;
	}
	.header-wrapper .navbar ul{
		padding-right: 24px;
	}
	.header-wrapper .navbar ul li{
		margin-left: 28px;
	}
	.about-section .white-shadow{
		display: none;
	}
	.top-space{
		padding-top: 150px;
	}
	.service-box .content p{
		font-size: 16px;
	}
}

@media (min-width: 768px) and (max-width: 991px){

	.hero-banner .banner-img{
		max-width: 28%;
	}
	h3{
		font-size: 25px;
	}
	.service-box .content h3 img{
		width: 16px;
		margin-left: 8px;
	}
	.service-box .content{
		padding-right: 32px;
	}
	.service-box.img-left .content{
		padding-left: 32px;
	}
	.about-section .content{
		padding-right: 32px;
	}
	.what-we-offer .img-block{
		padding-right: 32px;
	}
	.what-we-offer .content-box .box{
		padding: 24px;
	}
	.what-we-offer .content-box .box .details{
		max-width: calc(100% - 64px);
	}
	.logo-part{
		max-width: 100%;
		padding-right: 0;
		padding-bottom: 24px;
		margin-bottom: 48px;
		border-bottom: solid 1px rgba(255,255,255,.1);
	}
	.footer_logo{
		margin-bottom: 8px;
	}
	.footer-right{
		max-width: 100%;
		width: 100%;
	}
	.copyright{
		margin-top: 48px;
	}
	.about-top-section .close-shape{
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		width: 50px;
	}
	.about-top-section .content{
		padding-right: 24px;
	}
	.about-box h4{
		font-size: 20px;
	}
	.about-top-section .line-shape{
		width: 100px;
		top: 40px;
	}
	.map-section .map iframe{
		height: 450px;
	}
	.contact-wrapper ~ .line-shape-2{
		width: 110px;
		bottom: -65px;
	}
	.contact-details{
		padding-left: 32px;
	}
	.contact-form{
		padding: 24px;
	}
}

@media (max-width: 767px){

	h1{
		font-size: 44px;
		line-height: 1.1;
	}
	h2{
		font-size: 32px;
		line-height: 1.1;
	}
	h3{
		font-size: 24px;
		line-height: 1.1;
	}
	p{
		font-size: 16px;
		line-height: 24px;
	}

	.hd-logo{
		z-index: 1;
	}
	.header-wrapper .header_logo img{
		height: 30px;
	}
	header,
	header.fixed::before{
		background: rgba(2, 24, 13, 1);
	}
	.header-wrapper .navbar ul{
		padding-right: 0;
	}
	.header-wrapper .navbar ul li{
		margin: 0 0 24px 0;
		display: block;
	}
	.header-wrapper .navbar ul li a{
		font-size: 18px;
	}
	.navbar{
		display: none;
		position: absolute;
		top: 62px;
		left: 0;
		width: 100%;
		height: 100vh;
		background: rgb(2, 24, 13);
		padding: 20px;
		overflow: auto;
	}
	.navbar ul{
		margin: 0 0 24px 0;
	}
	.navbar ul li{
		display: block;
		margin: 0 0 16px 0;
	}
	.navbar ul li a{
		font-size: 22px;
	}
	.navbar .cta-btn{
		width: 100%;
		text-align: center;
	}
	.hamburger-menu{
		margin-top: -2px;
		display:block;
		position:absolute;
		z-index: 1;
		right:20px;
		top: 50%;
		-moz-transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-o-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.hamburger-menu .line{
		height:2px;
		width:30px;
		border-radius: 4px;
		background:#fff;
		display:inline-block;
		position:relative;
		vertical-align:middle;
		-webkit-transition:all 0.5s ease-in-out;
		-moz-transition:all 0.5s ease-in-out;
		-ms-transition:all 0.5s ease-in-out;
		-o-transition:all 0.5s ease-in-out;
		transition:all 0.5s ease-in-out;
	}
	.hamburger-menu .line:before{
		content:'';
		position:absolute;
		background:#fff;
		height:2px;
		width:30px;
		border-radius: 4px;
		top:-8px;
		left:0;
		-webkit-transition:all 0.5s ease-in-out;
		-moz-transition:all 0.5s ease-in-out;
		-ms-transition:all 0.5s ease-in-out;
		-o-transition:all 0.5s ease-in-out;
		transition:all 0.5s ease-in-out;
	}
	.hamburger-menu .line:after{
		content:'';
		position:absolute;
		background:#fff;
		height:2px;
		width:30px;
		border-radius: 4px;
		top:8px;
		right:0;
		-webkit-transition:all 0.5s ease-in-out;
		-moz-transition:all 0.5s ease-in-out;
		-ms-transition:all 0.5s ease-in-out;
		-o-transition:all 0.5s ease-in-out;
		transition:all 0.5s ease-in-out;
	}
	.hamburger-menu.close .line{
		background: transparent;
	}
	.hamburger-menu.close .line:before{
		-webkit-transform:rotate(45deg);
		-moz-transform:rotate(45deg);
		-ms-transform:rotate(45deg);
		-o-transform:rotate(45deg);
		transform:rotate(45deg);
		top:-2px;
	}
	.hamburger-menu.close .line:after{
		-webkit-transform:rotate(-45deg);
		-moz-transform:rotate(-45deg);
		-ms-transform:rotate(-45deg);
		-o-transform:rotate(-45deg);
		transform:rotate(-45deg);
		top:-2px;
	}
	.s-py{
		padding-top: 72px;
		padding-bottom: 72px;
	}
	.s-pt{
		padding-top: 72px;
	}
	.s-pb{
		padding-bottom: 72px;
	}

	.home-top-bg{
		height: auto;
		background: url(../images/home-top-bg.png) no-repeat center top / contain, url(../images/home-top-pattern.svg) no-repeat 100px -100px / 120%;
	}
	.hero-banner{
		min-height: 500px;
		padding-top: 120px;
		position: relative;
		padding-bottom: 100px;
	}
	.line-shape{
		width: 120px;
		top: 30px;
		z-index: -1;
	}
	.hero-banner .container{
		margin-top: 0;
	}
	.hero-banner .banner-img{
		position: static;
		max-width: 300px;
		margin: 0 auto 32px auto;
	}
	.hero-banner .content{
		max-width: 100%;
		width: 100%;
	}
	.hero-banner .content .shape{
		width: 50px;
	}
	.round-shape{
		bottom: -32px;
		margin-left: -32px;
		width: 64px;
	}
	.top-space{
		padding-top: 120px;
	}
	.services-section .dots-pattern{
		width: 64px;
	}
	.services-section .round-pattern-large{
		top: -50px;
		right: 20px;
		left: auto;
		width: 100px;
	}
	.service-box .img-block{
		order: 1;
		-webkit-border-radius: 24px;
		border-radius: 24px;
	}
	.service-box .img-block img{
		width: 100%;
	}
	.service-box .content{
		order: 12;
		padding-right: 0;
		margin-top: 24px;
	}
	.service-box.img-left .content{
		padding-left: 0;
	}
	.service-box .content,
	.service-box .img-block{
		max-width: 100%;
	}
	.service-box{
		margin-bottom: 48px;
	}
	.selected-work-title{
		margin-top: 0px;
		margin-bottom: 60px;
		padding: 24px 0;
	}
	.selected-work-title .str_move{
		font-size: 24px;
	}
	.line-shape-2{
		width: 110px;
		margin-bottom: -40px;
	}
	.round-pattern-large{
		width: 110px;
	}
	.triangle-shape{
		width: 56px;
		top: -100px;
	}
	.about-section .line-shape{
		display: none;
	}
	.about-section .img-block,
	.what-we-offer .img-block{
		order: 1;
		margin: 0 auto 32px auto;
		max-width: 640px;
		padding: 0;
	}
	.about-section .content,
	.what-we-offer .content-box{
		max-width: 100%;
		width: 100%;
		order: 12;
		padding: 0;
	}
	.title span{
		line-height: 1.1;
	}
	.service-box .content h3 img{
		width: 16px;
	}
	.about-section .content .cta-btn{
		margin-top: 16px;
	}
	.services-section .round-pattern-large{
		width: 70px;
		top: -80px;
	}
	.service-box .content span{
		font-size: 24px;
		margin-bottom: 8px;
	}
	.round-pattern-large{
		width: 60px;
		left: 60px;
		top: -70px;
	}
	.triangle-shape{
		width: 40px;
	}
	.what-we-offer .white-shadow{
		width: 60%;
		max-width: 100%;
	}
	.what-we-offer .dot-round{
		width: 80px;
		top: -40px;
	}
	.cta-section .content-area .round-pattern-large{
		width: 70px;
		top: -35px;
	}
	.cta-section .content-area{
		padding: 40px;
		max-width: 100%;
		border-radius: 24px 24px 0 0;
	}
	.cta-section .img-block{
		max-width: 100%;
		min-height: 300px;
		border-radius: 0 0 24px 24px;
	}
	footer{
		padding-top: 64px;
	}
	.logo-part{
		padding-right: 0;
		border-bottom: solid 1px rgba(255,255,255,.1);
		padding-bottom: 32px;
	}
	.logo-part,
	.footer-right{
		max-width: 100%;
		width: 100%;
	}
	.footer-right{
		margin-top: 32px;
		grid-template-columns: auto;
	}
	.footer-right .f-col,
	.f-col:last-of-type{
		max-width: 100%;
		width: 100%;
		margin-bottom: 32px;
	}
	.footer-right .f-col:last-child{
		margin-bottom: 0;
	}
	.f-col ul li{
		margin-bottom: 8px;
	}
	.copyright{
		margin-top: 40px;
		padding: 24px 20px;
		line-height: 22px;
	}
	.selected-work-title{
		margin-bottom: 100px;
		margin-left: 0;
		margin-right: 0;
	}
	.services-section .close-shape{
		width: 50px;
	}
	.line-shape{
		width: 90px;
	}
	.title{
		margin-bottom: 32px;
	}
	.about-box{
		width: 100%;
		margin-bottom: 48px;
	}
	.about-box:last-child{
		margin-bottom: 0;
	}
	.about-box h4{
		margin-bottom: 0;
	}
	.about-box img{
		display: inline-block;
		margin-bottom: 16px;
	}
	.about-top-section .close-shape{
		position: absolute;
		left: 20px;
		width: 50px;
	}
	.about-top-section .img-block{
		order: 1;
	}
	.about-top-section .content{
		order: 12;
		padding-right: 0;
	}
	.about-top-section .content{
		max-width: 100%;
	}
	.about-top-section .img-block{
		margin: 0 auto 32px auto;
		max-width: 640px;
		padding: 0;
	}
	.about-top-section .content p{
		margin-bottom: 16px;
	}
	.about-top-section .content .title h2 br{
		display: none;
	}
	.what-do-points .container .box .number{
		margin-bottom: 16px;
	}
	.what-do-points .container .box{
		margin-bottom: 32px;
		max-width: calc(100% / 1 - 0px);
	}
	.what-do-points .container .box:last-child{
		margin-bottom: 0;
	}
	.what-do-points .round-pattern-large{
		width: 60px;
	}
	.our-story-section .dots-pattern{
		width: 60px;
		top: -40px;
	}
	.our-story-section .triangle-shape{
		left: 20px;
	}
	.about-top-section .line-shape{
		top: 10px;
	}
	.about-box{
		max-width: inherit;
	}
	.contact-form{
		max-width: 100%;
		padding: 24px;
		background: #274639 url(../images/contact-form-shape.svg) no-repeat right -20px;
	}
	.contact-details{
		margin-top: 64px;
		max-width: 100%;
		padding-left: 0;
	}
	.contact-details .col-2 ul{
		padding-bottom: 16px;
	}
	.contact-details .col-2 ul li{
		font-size: 16px;
	}
	.contact-details > img{
		margin: 0 auto 32px auto;
	}
	.contact-wrapper ~ .line-shape-2{
		bottom: -50px;
	}
	.map-section .map iframe{
		height: 350px;
	}
	.modal .modal-header{
		padding: 16px 24px;
		-webkit-border-radius: 16px 16px 0 0;
		border-radius: 16px 16px 0 0;
	}
	.modal .modal-content{
		max-width: 90%;
		width: 100%;
		border: 0;
		-webkit-border-radius: 16px;
		border-radius: 16px;
	}
	.modal .modal-content .modal-body{
		padding: 20px;
	}
	.selected-work-title{
		-moz-transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	.register-login .content-area{
		width: calc(100% / 1 - 0px);
		margin-bottom: 32px;
	}
	.register-login .content-area:last-child{
		margin-bottom: 0;
	}
}

@media (max-width: 575px){

	h1{
		font-size: 32px;
	}
	h2{
		font-size: 24px;
	}
	h3{
		font-size: 20px;
	}
	h4{
		font-size: 18px;
	}
	.border-btn,
	.cta-btn{
		width: 100%;
		text-align: center;
	}
	.hero-banner .content h1 br,
	.hero-banner .content p br{
		display: none;
	}
	.what-we-offer .content-box .box{
		padding: 24px;
	}
	.what-we-offer .content-box .box span.icon{
		width: 48px;
	}
	.what-we-offer .content-box .box .details{
		max-width: calc(100% - 50px);
	}
	.cta-section .content-area{
		padding: 28px;
	}
	.logo-shape{
		width: 80px;
		margin-bottom: 16px;
	}
	.cta-section .content-area p{
		margin-bottom: 24px;
	}
	
	.timeline-wrapper ul li h4{
		max-width: 100%;
		padding-right: 0;
		text-align: left;
		order: 1;
		padding-left: 40px;
		margin-bottom: 8px;
	}
	.timeline-wrapper ul li:nth-child(2n+2) h4{
		padding-left: 40px;
	}
	.timeline-wrapper ul li span{
		order: 12;
		margin-left: 40px;
		margin-right: 0;
		max-width: 100%;
		width: 100%;
	}
	.timeline-wrapper ul li:nth-child(2n+2) span{
		margin-left: 40px;
		margin-right: 0;
	}
	.timeline-wrapper::before{
		left: 12px;
	}
	.timeline-wrapper ul li::before{
		left: 12px;
		top: 2px;
	}

	
}

@media (max-height: 439px){

	.hero-banner{
		min-height: 600px;
		position: relative;
	}
	.round-shape{
		bottom: 0px;
	}

}

#loader-wrapper {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10;
	overflow: hidden;
  }
  .no-js #loader-wrapper {
	display: none;
  }
  
  #loader {
	display: block;
	position: relative;
	left: 50%;
	top: 50%;
	width: 150px;
	height: 150px;
	margin: -75px 0 0 -75px;
	border-radius: 50%;
	border: 3px solid transparent;
	border-top-color: rgba(255,255,255,.3);
	-webkit-animation: spin 1.7s linear infinite;
			animation: spin 1.7s linear infinite;
	z-index: 11;
  }
  #loader:before {
	content: "";
	position: absolute;
	top: 5px;
	left: 5px;
	right: 5px;
	bottom: 5px;
	border-radius: 50%;
	border: 3px solid transparent;
	border-top-color: rgba(255,255,255,.3);
	-webkit-animation: spin-reverse 0.6s linear infinite;
			animation: spin-reverse 0.6s linear infinite;
  }
  #loader:after {
	content: "";
	position: absolute;
	top: 15px;
	left: 15px;
	right: 15px;
	bottom: 15px;
	border-radius: 50%;
	border: 3px solid transparent;
	border-top-color: rgba(255,255,255,.3);
	-webkit-animation: spin 1s linear infinite;
			animation: spin 1s linear infinite;
  }
  
  @-webkit-keyframes spin {
	0% {
	  -webkit-transform: rotate(0deg);
	}
	100% {
	  -webkit-transform: rotate(360deg);
	}
  }
  @keyframes spin {
	0% {
	  transform: rotate(0deg);
	}
	100% {
	  transform: rotate(360deg);
	}
  }
  @-webkit-keyframes spin-reverse {
	0% {
	  -webkit-transform: rotate(0deg);
	}
	100% {
	  -webkit-transform: rotate(-360deg);
	}
  }
  @keyframes spin-reverse {
	0% {
	  transform: rotate(0deg);
	}
	100% {
	  transform: rotate(-360deg);
	}
  }
  #loader-wrapper .loader-section {
	position: fixed;
	top: 0;
	width: 51%;
	height: 100%;
	background: #031F11;
	z-index: 10;
  }
  
  #loader-wrapper .loader-section.section-left {
	left: 0;
  }
  
  #loader-wrapper .loader-section.section-right {
	right: 0;
  }
  
  /* Loaded styles */
  .loaded #loader-wrapper .loader-section.section-left {
	transform: translateX(-100%);
	transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  }
  
  .loaded #loader-wrapper .loader-section.section-right {
	transform: translateX(100%);
	transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  }
  
  .loaded #loader {
	opacity: 0;
	transition: all 0.3s ease-out;
  }
  
  .loaded #loader-wrapper {
	visibility: hidden;
	transform: translateY(-100%);
	transition: all 0.3s 1s ease-out;
  }

  .errorCaptcha {
	color: #ff0000;
	font-size: 14px;
	margin: 4px 0 0 0;
	line-height: 1.1;
  }

