@font-face {
	font-family: 'main-r';
	src: url('../../resources/fonts/OpenSans-Regular.woff2') format('woff2'), url('../../resources/fonts/OpenSans-Regular.woff') format('woff'), url('../../resources/fonts/OpenSans-Regular.ttf') format('ttf'), url('../../resources/fonts/OpenSans-Regular.eot') format('eot');
}
@font-face {
	font-family: 'main-l';
	src: url('../../resources/fonts/OpenSans-Light.woff2') format('woff2'), url('../../resources/fonts/OpenSans-Light.woff') format('woff'), url('../../resources/fonts/OpenSans-Light.ttf') format('ttf'), url('../../resources/fonts/OpenSans-Light.eot') format('eot');
}
@font-face {
	font-family: 'main-m';
	src: url('../../resources/fonts/OpenSans-Medium.woff2') format('woff2'), url('../../resources/fonts/OpenSans-Medium.woff') format('woff'), url('../../resources/fonts/OpenSans-Medium.ttf') format('ttf'), url('../../resources/fonts/OpenSans-Medium.eot') format('eot');
}
@font-face {
	font-family: 'main-sb';
	src: url('../../resources/fonts/OpenSans-SemiBold.woff2') format('woff2'), url('../../resources/fonts/OpenSans-SemiBold.woff') format('woff'), url('../../resources/fonts/OpenSans-SemiBold.ttf') format('ttf'), url('../../resources/fonts/OpenSans-SemiBold.eot') format('eot');
}
@font-face {
	font-family: 'main-b';
	src: url('../../resources/fonts/OpenSans-Bold.woff2') format('woff2'), url('../../resources/fonts/OpenSans-Bold.woff') format('woff'), url('../../resources/fonts/OpenSans-Bold.ttf') format('ttf'), url('../../resources/fonts/OpenSans-Bold.eot') format('eot');
}
@font-face {
	font-family: 'main-xb';
	src: url('../../resources/fonts/OpenSans-ExtraBold.woff2') format('woff2'), url('../../resources/fonts/OpenSans-ExtraBold.woff') format('woff'), url('../../resources/fonts/OpenSans-ExtraBold.ttf') format('ttf'), url('../../resources/fonts/OpenSans-ExtraBold.eot') format('eot');
}
@font-face {
	font-family: 'second';
	src: url('../../resources/fonts/Pacifico-Regular.woff2') format('woff2'), url('../../resources/fonts/Pacifico-Regular.woff') format('woff'), url('../../resources/fonts/Pacifico-Regular.ttf') format('ttf'), url('../../resources/fonts/Pacifico-Regular.eot') format('eot');
}
@font-face {
	font-family: 'title-font';
	src: url('../../resources/fonts/Oswald-Bold.woff2') format('woff2'), url('../../resources/fonts/Oswald-Bold.woff') format('woff'), url('../../resources/fonts/Oswald-Bold.ttf') format('ttf'), url('../../resources/fonts/Oswald-Bold.eot') format('eot');
}
:root{
	--white-color:#fff;
	--black-color:#000;
	--light-color:#fa5a00;
	--main-color:#1f2229;
	--gray-color:#f9f9f9;
	--gray-color-200:#666666;
	--gray-color-300: #e7e7e7;
	--green-color: #009f00;
}
body{
	font-family: 'main-r';
	font-size:14px;
	line-height:25px;
	color:var(--main-color);
}
a, button{
	transition:all 350ms ease-in-out;
}
a{
	text-decoration:unset;
}
input, button{
	outline:none, 
}
.small-container{
	max-width:960px;
}
.large-container{
	max-width:1250px;
}
.main-wrap{
	display:flex;
	flex-direction:column;
	min-height:100vh;
}
.main-wrap main{
	flex:1;
}
.overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 138px;
    z-index: 2;
}
.padding-section{
	padding:40px 0;
}
.wrap{
	position:Relative;
	z-index:2;
}
.mask-section:before{
	content:'';
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0, .6);
}
a, a:hover {
	color: var(--green-color);
}
/* heading */
.small-heading{
	font-family:'second';
	text-align:center;
	font-size:30px;
	line-height:1.2;
	color:var(--light-color);
}
.small-heading.white{
	color:var(--white-color);
}
.main-heading{
	font-family: 'title-font';
	text-align:center;
	font-size:30px;
	line-height:1.6;
	color:var(--main-color);
	text-transform:uppercase;
}
.main-heading.big{
	font-size:40px;
}
.main-heading.white{
	color:var(--white-color);
}
.main-heading.small {
	text-align: left;
	margin-bottom: 25px;
	font-size: 25px;
	text-transform: none;
}
/* buttons */
.main-btn{
	height:50px;
	padding:0 25px;
	border:0;
	border-radius:30px;
	background:var(--main-color);
	color:var(--white-color);
	font-family:'main-b';
	font-size:16px;
	transition:all 400ms ease-in-out;
}
.main-btn:hover{
	background:var(--white-color);
	color:var(--main-color);
}
.main-btn.light{
	background:var(--light-color);
}
.main-btn.light:hover{
	background:var(--main-color);
	color:var(--white-color);
}
header{
	background:var(--white-color);
	box-shadow:1px 1px 3px rgba(0, 0, 0, .2);
	padding:10px 0;
	position:sticky;
	top:0;
	left:0;
	width:100%;
	z-index:3;
}
header .logo{
	width:100%;
	display:flex;
	flex-wrap:wrap;
}
header .logo img {
	width: 140px;
	max-width: 100%;
}
footer{
	background:var(--main-color);
	padding:15px 0;
}
footer p{
	color:var(--white-color);
	margin:0;
	font-size:14px;
	font-family:'main-r';
	text-align:center;
}
.hero{
	position:relative;
}
.hero video {
	width: 100%;
	height: 70vh;
	object-fit: cover;
}
.hero .text {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: var(--white-color);
	width:100%;
}
.hero .text .title {
	font-size: 52px;
	line-height: 62px;
	font-family: 'main-b';
	width: 100%;
	max-width: 100%;
	margin-bottom:15px;
}
.hero .text .subtitle {
	font-size: 19px;
	line-height: 24px;
	font-family: 'main-r';
	width: 100%;
	max-width: 100%;
	color: var(--gray-color);
	margin-bottom:30px;
}
.boxes{
	padding-bottom: 0 !important;
}
.boxes .box {
	background-color: #f1f1f1;
	padding: 30px 30px 10px;
	height: 100%;
	position: relative;
	overflow: hidden;
}
/* .boxes .box:hover h3, .boxes .box:hover p, .boxes .box:hover span {
	color: var(--white-color);
} */
.boxes .box h3 {
	font-size: 17px;
	line-height: 24px;
	font-family: 'main-b';
	margin-bottom: 20px;
	z-index: 1;
	transition: color .3s ease-out;
}
.boxes .box p {
	font-family: 'main-r';
	font-size: 14px;
	line-height: 22px;
	color: var(--gray-color-200);
	z-index: 1;
	position: relative;
	transition: color .3s ease-out;
}
.boxes .box span {
	font-family: 'main-r';
	vertical-align: top;
	font-size: .8125rem;
	letter-spacing: .25em;
	margin-right: 4px;
	color: var(--green-color);
	z-index: 1;
	transition: color .3s ease-out;
}
.boxes .service-thumb {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	transition: .4s ease-out;
	opacity: 0;
}
.boxes .service-thumb::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #00000054;
	opacity: 0;
}
/* .boxes .box:hover .service-thumb {
	opacity: 1;
	transform: scale(1.2);
} */
/* .boxes .box:hover .service-thumb::after {
	opacity: 1;
} */
.percentages .card-box {
	position: relative;
	transition: box-shadow .3s ease-out, transform .3s ease-out;
	box-shadow: 0 1px 6px 0 rgb(111, 125, 111, 15%);
	padding: 28px;
	height: 100%;
}
.percentages .card-box:hover {
	box-shadow: 0 20px 40px rgb(61, 65, 84, 15%);
	transform: translateY(-10px);
}
.percentages .card-box h5 {
	font-size: 16px;
	line-height: 21px;
	font-family: 'main-sb';
}
.percentages .card-box h3 {
	font-size: 26px;
	line-height: 32px;
	font-family: 'main-b';
	margin: 15px 0 15px 0px;
}
.percentages .card-box h3 span {
	color: var(--green-color);
}
.percentages .card-box p {
	font-size: 14px;
	line-height: 22px;
	color: var(--gray-color-200);
}
.percentages .card-box.black {
	background-color: var(--black-color);
	color: var(--white-color);
}
.percentages .card-box.black p{
	color: var(--gray-color);
}
.percentages .card-box:not(.black)::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 5px;
	background-color: var(--green-color);
}
.source {
	background-image: url('../../resources/images/methodology.jpg');
	background-size: cover;
	position: relative;
	background-position: center bottom;
}
.source::after {
	content: '';
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	position: absolute;
	background-image: linear-gradient(180deg,#0000005c 0%,#000 100%);
}
.source h3 {
	font-size: 2rem;
	line-height: 56px;
	font-family: 'main-sb';
	width: 100%;
	color: var(--white-color);
	text-align: center;
	margin-bottom: 30px;
	z-index: 1;
	position: relative;
}
.source p {
	font-size: 14px;
	line-height: 22px;
	color: var(--white-color);
	text-align: center;
	z-index: 1;
	position: relative;
}
footer {
	background-color: var(--black-color);
}
.map{
	padding-top:40px;
}
@media(max-width:991px){
	.main-heading.big{
		font-size:30px;
   }
	.small-heading{
		font-size:24px;
   }
}
@media(max-width:767px){
	.main-heading.big{
		font-size:25px;
   }
	.main-btn{
		font-size:13px;
   }
	.small-heading{
		font-size:20px;
   }
	.padding-section{
		padding:40px 0;
   }
	.hero .text .title {
		max-width: initial;
   }
	.map{
		padding-top:40px;
   }
}
@media(max-width:575px){
	.hero .text .title, .source h3 {
		font-size: 32px;
		line-height: 42px;
   }
	.boxes .box, .percentages .card-box {
		padding: 24px 24px 20px;
   }
	.source p {
		font-size: 14px;
		line-height: 22px;
   }
	footer p{
		font-size:12px;
   }
}
@keyframes slideAnime {
	0%{
		-webkit-transform: scale(1.5);
		transform: scale(1.5);
   }
	100%{
		-webkit-transform: scale(1);
		transform: scale(1);
   }
}
