* {
	margin: 0;
	padding: 0;
	border: none;
	box-sizing: border-box;
}

body{
    font-family: 'Roboto Condensed Regular';
	font-size: 14px;
	background-color: #ffffff;
	position: relative;
}

a {
	text-decoration: none;
}

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

.container {
	padding: 0 15px;
	max-width: 1180px;
	margin: 0 auto;
	position: relative;
}

.section-title {
	font-size: 48px;
	font-family: 'Roboto Condensed Bold';
	color: #09152e;
	text-transform: uppercase;
	text-align: center;
}

.send-error {
	display: none;
	font-size: 16px;
	color: #d83f13;
}

.send-success {
	display: none;
	font-size: 16px;
	color: #61D20C;
}

.scrolloff {
	pointer-events: none;
}

.back-top {
	display: block;
	background: url(../img/arrow_top.png) center no-repeat;
	background-size: contain;
	width: 35px;
	height: 35px;
	position: fixed;
	bottom: 5%;
	right: 3%;
	z-index: 10;
	opacity: 0;
	-webkit-transition: ease .3s all;
	-moz-transition: ease .3s all;
	-o-transition: ease .3s all;
	transition: ease .3s all;
}

.back-top:hover {
	background: url(../img/arrow_top_hover.png) center no-repeat;
	background-size: contain;
	-webkit-transition: ease .3s all;
	-moz-transition: ease .3s all;
	-o-transition: ease .3s all;
	transition: ease .3s all;
}

.visible{
	opacity:1;
	-webkit-transition: ease .3s all;
	-moz-transition: ease .3s all;
	-o-transition: ease .3s all;
	transition: ease .3s all;
}

.hidden{
	opacity: 0;
	-webkit-transition: ease .3s all;
	-moz-transition: ease .3s all;
	-o-transition: ease .3s all;
	transition: ease .3s all;
}
	

/*
*************** Header ***************
*/

header {
	position: fixed;
	z-index: 10;
	background-color: #ffffff;
	top: 0;
	left: 0;
	width: 100%;
	border-bottom: solid 1px #7e7e7e;
}

.navbar {
	font-size: 0;
	margin: 0 auto;
	width: 100%;
	text-align: center;
	transition: linear 0.5s all;
}

.navbar__item {
	display: inline-block;
	vertical-align: middle;
}

.navbar__item a {
	display: block;
	font-size: 18px;
	color: #7e7e7e;
	text-transform: uppercase;
	border-left: solid 1px #7e7e7e;
	padding: 25px 10px;
	transition: ease 0.4s all;
}

.resized {
	font-size: 17px !important;
	padding: 15px 10px !important;
	transition: ease 0.4s all !important;
}

.navbar__item:last-child a {
	border-right: solid 1px #7e7e7e;
}

.navbar__item a:hover {
	background: #1a2233;
	color: #ffffff;
	transition: ease 0.4s all;
}

.show-menu {
	text-decoration: none;
	text-align: right;
	padding: 25px 10px;
	display: none;
	height: 20px;
	width: 20px;
	margin: 0 10px;
    background: url(../img/menu_open.png) center no-repeat;
	background-size: contain;
}

.show-menu:hover {
	cursor: pointer;
}

input[type=checkbox]{
    display: none;
    -moz-appearance: none;
    -webkit-appearance: none;
}

input[type=checkbox]:checked ~ .navbar{
    display: block;
	transition: ease 0.5s all;
}




/*
*************** Top ***************
*/

.top-section {
    height: 100vh;
    position: relative;
}

.top-section__container {
	background: url(../img/top_bg.jpg) top center no-repeat;
	background-size: cover;
	position: relative;
	padding: 72px 0 0 0;
	font-size: 0;
	height: calc(100vh - 71px);
}

.top__logo {
	margin: 10px 0 0 15px;
	display: block;
	width: 250px;
}

.top__phone {
	display: block;
	position: absolute;
	text-align: right;
	width: 100%;
	max-width: 190px;
	font-size: 24px;
	color: #ffffff;
	top: 20px;
	right: 35px;
}

.garanty {
	max-width: 700px;
    margin: 3% auto;
}

.garanty__image {
	display: inline-block;
	vertical-align: middle;
	width: 200px;
}

.garanty__text {
	display: inline-block;
	vertical-align: middle;
	font-size: 52px;
	font-family: 'Roboto Condensed Light';
	color: #ffffff;
	padding: 0 0 0 30px;
	text-transform: uppercase;
	max-width: 500px;
}

.top-features {
	text-align: center;
}

.top-features__item {
	text-align: center;	
	width: 275px;
	display: inline-block;
	vertical-align: top;
	margin: 0 40px 40px;
}

.top-features__image {
	display: block;
	width: 100px;
	height: 100px;
	margin: 0 auto;
	transition: ease 0.5s all;
}

.top-features__item:nth-child(1) .top-features__image {
	background: url(../img/top_icon_1.png) center no-repeat;
	background-size: contain;
}

.top-features__item:nth-child(2) .top-features__image {
	background: url(../img/top_icon_2.png) center no-repeat;
	background-size: contain;
}

.top-features__item:nth-child(3) .top-features__image {
	background: url(../img/top_icon_3.png) center no-repeat;
	background-size: contain;
}

.top-features__item:nth-child(1):hover .top-features__image {
	background: url(../img/top_icon_1_yellow.png) center no-repeat;
	background-size: contain;
}

.top-features__item:nth-child(2):hover .top-features__image {
	background: url(../img/top_icon_2_yellow.png) center no-repeat;
	background-size: contain;
}

.top-features__item:nth-child(3):hover .top-features__image {
	background: url(../img/top_icon_3_yellow.png) center no-repeat;
	background-size: contain;
}

.top-features__text {
	display: block;
	font-size: 20px;
	color: #ffffff;
	padding: 10% 0;
}

.top__features_devider {
	display: block;
	height: 2px;
	width: 50px;
	background: #ffc42a;
	margin: 0 auto;
}





/*
*************** Partners ***************
*/

.partners {
	text-align: center;
	font-size: 0;
	background: #ffffff;
	width: 100%;
    padding: 1.5% 0 0;
    position: absolute;
    bottom: 0;
    left: 0;
}

.partners__item {
	width: 180px;
	display: inline-block;
	vertical-align: middle;
	padding: 0 0 20px;
}

.features-section {
	height: calc(100vh - 51.20px);
}

.features-section .section-title {
    padding: 40px 0 0;
}




/*
*************** Features ***************
*/

.features {
	font-size: 0;
	text-align: center;
	padding: 2% 0 0;
}

.features__item {
    display: inline-block;
    vertical-align: middle;
    font-size: 16px;
    width: 230px;
    /* margin: 90px 60px 0; */
    margin: 7% 60px 3.5%;
}

.features__image {
	display: block;
	width: 60px;
	height: 60px;
	/* margin: 0 auto 70px; */
	margin: 0 auto 25%;
}

.features__item:nth-child(1) .features__image {
	background: url(../img/feature_1.png) center no-repeat;
}

.features__item:nth-child(2) .features__image {
	background: url(../img/feature_2.png) center no-repeat;
}

.features__item:nth-child(3) .features__image {
	background: url(../img/feature_3.png) center no-repeat;
}

.features__item:nth-child(4) .features__image {
	background: url(../img/feature_4.png) center no-repeat;
}

.features__item:nth-child(5) .features__image {
	background: url(../img/feature_5.png) center no-repeat;
}

.features__item:nth-child(6) .features__image {
	background: url(../img/feature_6.png) center no-repeat;
}

.features__text {
	display: block;
	color: #09152e;
}




/*
*************** Sliders ***************
*/ 

.swiper-container {
	width: 50%;
	/* height: 525px; */
	height: calc(100vh - 51.2px);
	float: left;
}

.product__slider_right {
	float: right;
}

.product__description {
	width: 50%;
	float: left;
	position: relative;
	height: 525px;
}

.swiper-slide {
	background-position: center;
	background-size: cover;
}

.wrapper {
	position: absolute;
	left: 0;
	top: 0;
	padding: 45px 45px 1px;
}

.section-title_left {
	text-align: left;
}

.section-title_right,
.product__description_right {
	text-align: right;
}

.product__description_right .wrapper {
	right: 0;
	left: auto;
}


.product__text {
	color: #09152e;
	font-size: 18px;
	margin: 25px 0 0;
	max-width: 570px;
}

.product__subtitle {
	font-size: 26px;
}

.product__text p {
	padding: 0 0 25px;
}

.product__text_gray {
	color: #aaaaaa;
}

.product__text_number {
	font-size: 22px;
	font-family: 'Roboto Condensed Bold';
}




/*
*************** Diplomas ***************
*/

.dipmloma-section {
	padding: 80px 0;
}

.diplomas {
	width: 50%;
	float: left;
}

.diplomas__list,
.thanks__list {
	text-align: center;
	padding: 30px 0 0;
}

.diplomas__list li {
	display: inline-block;
	padding: 10px 5px;
}

.diplomas__list li a {
	display: block;
}

.thanks {
	width: 50%;
	float: right;
}

.thanks__list li {
	display: inline-block;
	padding: 10px 5px;
}

.thanks__list li a {
	display: block;
}

.thanks .section-title {
	text-transform: none;
}



/*
*************** Bottom form ***************
*/

.bottom-section {
	background: url(../img/bot_bg.jpg) top center no-repeat;
	background-size: cover;
}

.bottom-section .section-title {
	max-width: 450px;
	color: #ffffff;
	margin: 0 auto;
	padding: 40px 0 30px;
}



/*
*************** Callback form ***************
*/

.overlay {
	display: none;
	position: absolute;
	z-index: 10;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.5);
}

.error {
	font-style: italic;
	color: #d83f13;
	display: block !important;
}

.callback {
	display: none;
	width: 32%;
	max-width: 400px;
	min-width: 280px;
	padding: 20px;
	position: fixed;
	top: 10%;
	left: calc((100% - 0.32*(100vw))/2);
	background: #1a2233;
	z-index: 15;
	color: #ffffff;
	text-align: center;
}

.callback_bot {
	display: block;
	position: relative;
	margin: 0 auto;
	left: auto;
	top: auto;
	z-index: 2;
}

.show {
	display: block;
	transition: ease 0.5s all;
}

.callback input {
	font-size: 16px;
	color: #ffffff;
	width: 100%;
	padding: 15px 7px;
	border-bottom: solid 1px #615d60;
	margin: 0 0 10px;
	background: transparent;
}

.callback input:focus {
	outline: none;
}

.callback input::-webkit-input-placeholder {
	font-family: 'Roboto Condensed Light';
	font-size: 14px;
	color: #ffffff;
}
.callback input::-moz-placeholder {
	font-family: 'Roboto Condensed Light';
	font-size: 14px;
	color: #ffffff;
}
.callback input:-ms-input-placeholder {
	font-family: 'Roboto Condensed Light';
	font-size: 14px;
	color: #ffffff;
}
.callback input:-moz-placeholder {
	font-family: 'Roboto Condensed Light';
	font-size: 14px;
	color: #ffffff;
}

.product__btn,
.callback__submit {
	padding: 30px 60px;
	color: #ffffff;
	font-size: 18px;
	text-transform: uppercase;
	display: inline-block;
	background: #2d7cff;
	border-radius: 75px;
	margin: 50px 0 0;
	transition: ease 0.4s all;
}

.product__btn {
	margin: 15px 0 0;
}

.product__btn:hover,
.callback__submit:hover {
	cursor: pointer;
	background: #1a2233;
	transition: ease 0.4s all;
}

.callback input[type="submit"] {
	padding: 30px 60px;
	font-family: 'Roboto Condensed Regular';
	font-size: 16px;
	background: #2d7cff;
	border: none;
	color: #ffffff;
	margin: 40px 0 20px;
	width: auto;
}

.callback input[type="submit"]:hover {
	cursor: pointer;
	background: #ffffff;
	color: #1a2233;
	transition: ease 0.4s all;
}

.manager {
	font-family: 'Roboto Condensed LightItalic';
	color: #aaaaaa;
	font-size: 16px;
	text-align: center;
	padding: 20px 0 40px;
}




/*
*************** Adaptive styles ***************
*/

.map {
	float: left;
	width: 45%;
}

.contacts {
	float: right;
	width: 55%;
	position: relative;
	height: 525px;
}

.contacts .section-title {
	text-align: left;
}

.contacts__email {
	text-decoration: underline;
	color: #2d7cff;
}

.contacts-right {
	margin: 150px 0 0;
}



/*
*************** Adaptive styles ***************
*/

@media (max-height: 720px) and (min-width: 978px) {
    .garanty {
        margin: 0 auto 3%;
    }
    .garanty__image {
        width: 180px;
    }
    .garanty__text {
        font-size: 48px;
    }
    .top-features__item {
        width: 225px;
    }
    .top-features__image {
        width: 80px;
        height: 80px;
    }
    .features__item {
        margin: 5% 60px 3.5%;
    }
    .features__image {
        margin: 0 auto 15%;
    }
}

@media screen and (max-width: 1200px) {
	.navbar__item a {
		font-size: 15px;
		padding: 22px 10px;
	}
	.product__text p {
		padding: 0 0 15px;
	}
}
	
@media screen and (max-width: 1024px) {
	header .container {
		padding: 0;
	}
	.navbar {
		display: none;
		position: relative;
		transition: ease 0.5s all;
	}
	.navbar__item {
		display: block;
	}
	.navbar__item a,
	.navbar__item:last-child a	{
		border-bottom: solid 1px #7e7e7e;
		border-left: none;
		border-right: none;
		padding: 15px 10px;
	}
	.show-menu {
		display:block;
		transition: ease 0.5s all;
	}
	input[type=checkbox]:checked + .show-menu {
		background: url(../img/menu_close.png) center no-repeat;
		background-size: contain;
	}
	.diplomas,
	.thanks {
		float: none;
		width: 100%;
	}
	.features-section,
	.top-section,
	.top-section__container {
		height: auto;
	}
	.partners {
	    padding: 20px 0;
	    position: relative;
	    bottom: auto;
	    left: auto;
	}
}

@media screen and (max-width: 978px) {
	.section-title {
		font-size: 39px;
	}
	.garanty__text {
		font-size: 48px;
		max-width: 440px;
	}
	.garanty {
		margin: 85px auto 85px;
		text-align: center;
	}
	.product__description,
	.product__slider,
	.map,
	.contacts {
		float: none;
		width: 100%;
	}
	.contacts {
		height: auto;
	}
	.contacts-right {
		margin: 100px 0 0;
	}
	.product__description {
		height: auto;
	}
	.wrapper {
		position: initial;
		padding: 30px 45px;
	}
	.product__text {
		max-width: 100%;
	}
	#modal-form input[type="submit"] {
		padding: 20px 40px;
	}
}

@media screen and (max-width: 768px) {
	.garanty__text {
		font-size: 38px;
		max-width: 100%;
		padding: 20px 0 0;
	}
	.top__phone {
		display: none;
	}
	.top__logo {
		margin: 20px auto;
		max-width: 100%;
	}
	.wrapper,
	.section-title {
		text-align: center;
	}
	.contacts .product__text {
		text-align: left;
	}
	#modal-form {
		width: 295px;
		left: calc((100% - 295px)/2);
	}
} 
@media screen and (max-width: 480px) {
	.top-features__item {
		margin: 0 0 65px;
	}
	.features__item {
		margin: 60px 0 0;
	}
	.features__image {
		margin: 0 auto 40px;
	}
	.wrapper {
		position: relative;
		padding: 15px 25px;
	}
	.product__btn, .callback__submit {
		padding: 20px 40px;
	}
	.thanks {
		display: none;
	}
	.contacts-right {
		text-align: center;
	}
}