

/* ==========================================================================
	ОБЩИЕ СТИЛИ
========================================================================== */

@font-face {
	font-family: 'ProximaNovaRegular';
	src: url('fonts/ProximaNovaRegular.woff2') format('woff2'),
		url('fonts/ProximaNovaRegular.woff') format('woff'),
		url('fonts/ProximaNovaRegular.ttf') format('truetype');
}
@font-face {
	font-family: 'ProximaNovaSemiBold';
	src: url('fonts/ProximaNovaSemiBold.woff2') format('woff2'),
		url('fonts/ProximaNovaSemiBold.woff') format('woff'),
		url('fonts/ProximaNovaSemiBold.ttf') format('truetype');
}
@font-face {
	font-family: 'ProximaNovaBold';
	src: url('fonts/ProximaNovaBold.woff2') format('woff2'),
		url('fonts/ProximaNovaBold.woff') format('woff'),
		url('fonts/ProximaNovaBold.ttf') format('truetype');
}
@font-face {
	font-family: 'MontserratMedium';
	src: url('fonts/MontserratMedium.woff2') format('woff2'),
		url('fonts/MontserratMedium.woff') format('woff'),
		url('fonts/MontserratMedium.ttf') format('truetype');
}
@font-face {
	font-family: 'MontserratSemiBold';
	src: url('fonts/MontserratSemiBold.woff2') format('woff2'),
		url('fonts/MontserratSemiBold.woff') format('woff'),
		url('fonts/MontserratSemiBold.ttf') format('truetype');
}
@font-face {
	font-family: 'MontserratBold';
	src: url('fonts/MontserratBold.woff2') format('woff2'),
		url('fonts/MontserratBold.woff') format('woff'),
		url('fonts/MontserratBold.ttf') format('truetype');
}

*:not(.ab-icon):not(.ab-item):not(.dashicons):not(.fa):not(ymaps),
*:after, *:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
body {
	font: 16px/1.3 'ProximaNovaRegular',sans-serif;
	color: #000;
}
h1, h2, h3, h4, h5, h6 {
	margin: 0;
}
a { transition: 0.3s; text-decoration: none; }
a img { vertical-align: bottom; }
em { font-style: italic; }
p { margin: 0;}
ul { margin: 0; padding: 0; list-style: none; }
ol { list-style: decimal inside; }
ol li { margin: 1rem 0; }
input[type='submit'] { cursor: pointer; }
*:focus {
	outline: none !important;
	border-color: inherit;
	-webkit-box-shadow: none;
	box-shadow: none;
}
img {max-width: 100%; max-height: 100%; height: auto; border-style: none; }
iframe { display: block; max-width: 100%; border: none; }
table { width: 100%; }
input, textarea {
	font: 16px/1.3 'ProximaNovaRegular',sans-serif;
	max-width: 100%;
	border: 0;
}
input:focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder {
   color: transparent !important;
}
input:focus:-moz-placeholder,
textarea:focus:-moz-placeholder {
    color: transparent !important;
}
input:focus::-moz-placeholder,
textarea:focus::-moz-placeholder {
    color: transparent !important;
}
input:focus:-ms-input-placeholder,
textarea:focus:-ms-input-placeholder {
    color: transparent !important;
}

.clearfix:after {
	clear: both;
    content: "";
    display: block;
    height: 0;
}
.container {
	max-width: 1140px;
	margin: 0 auto;
}
.btn {
	display: inline-block;
	color: #fff;
	font-family: 'ProximaNovaSemiBold';
	padding: 12px 60px;
	cursor: pointer;
	border-radius: 5px;
	background: #c11f43;
}
.btn:not(.wait):hover {
	background: #ec3a61;
}
.btn.wait {
	cursor: default;
}

#modal div {
	font: 25px/1.2 'ProximaNovaBold';
	margin: 0 0 30px;
}
#modal p {
	font: 20px/1.2 'ProximaNovaSemiBold';
}



/* ==========================================================================
	ШАПКА
========================================================================== */

#header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 11px 0;
}
#header img {
	display: block;
	margin: 0 0 12px;
}
#header span {
	color: #a5a5a5;
}
.phone_block {
	padding-left: 45px;
	background: url(img/phone.png) no-repeat 0 30px;
}
.phone_block a {
	display: block;
	color: #141414;
	font-size: 24px;
	font-family: 'ProximaNovaBold';
}



/* ==========================================================================
	БЛОК 1
========================================================================== */

.block1 {
	padding: 35px 0 40px;
	background: #e9eaec;
}
.block1 h1 {
	text-align: center;
	margin: 0 0 30px;
}
.block1 .t1 {
	font-family: 'ProximaNovaBold';
	font-size: 50px;
}
.block1 .t2 {
	color: #c11f43;
}
.block1 .t3 {
	font: 45px/1 'ProximaNovaRegular';
}
.block1 .t4 {
	display: block;
	font-family: 'ProximaNovaBold';
	font-size: 30px;
}
.block1 .list {
	display: flex;
}
.block1 .text {
	max-width: 655px;
	margin-right: 30px;
}
.block1 .text ul {
	padding-left: 55px;
}
.block1 .text li {
	position: relative;
	margin: 0 0 30px;
}
.block1 .text li:before {
	content: '';
	position: absolute;
	left: -55px; top: -5px;
	width: 36px;
	height: 36px;
	background: url(img/check.png) no-repeat 50% 50% / cover;
}
.block1 .text strong {
	font: 20px/1.2 'ProximaNovaBold';
}
.block1 .text p {
	margin: 10px 0 0;
}
.block1 .img {
	flex-shrink: 0;
}
.block1 form {
	position: relative;
	z-index: 1;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	max-width: 1020px;
	margin: -20px 0 0 55px;
	padding: 25px 100px;
	background: #fff;
	border-radius: 15px;
}
.block1 h4 {
	margin: 0 0 15px;
	font: 14px/1 'MontserratBold';
}
.block1 .left {
	width: 365px;
	margin-right: 30px;
}
.block1 .left input {
	display: block;
	width: 100%;
	height: 40px;
	margin-top: 14px;
	border-bottom: 1px solid #d2d2d2;
}
.block1 .select2-container {
	margin-top: 14px;
}
.block1 .select2-selection--single {
	height: 40px;
	border-radius: 0;
	border: 0;
	border-bottom: 1px solid #d2d2d2;
}
.block1 .select2-selection__rendered {
	height: 40px;
	line-height: 40px !important;
	padding-left: 0 !important;
}
.block1 .select2-selection__placeholder {
	color: #777 !important;
}
.block1 .select2-selection__arrow {
	height: 38px !important;
}

.block1 .right label {
	position: relative;
	display: inline-block;
	cursor: pointer;
	padding-left: 30px;
	margin: 0 0 10px;
	line-height: 1;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.block1 [type=checkbox] {
	display: none;
}
.block1 .right label span {
	position: relative;
	color: #3a3a3a;
	font: 14px/1.2 'MontserratSemiBold';
}
.block1 .right label span:before {
	content: '';
	position: absolute;
	width: 18px;
	height: 18px;
	left: -30px;
	top: -2px;
	background: url(img/check2.png);
}
.block1 .right label :checked + span:before {
	background-position: 0 -18px;
}
.block1 .right s {
	text-decoration: none;
	font: 12px/1 'MontserratMedium';
	color: #808080;
}
.block1 .total {
	font: 16px/1.3 'MontserratBold';
	color: #3a3a3a;
	margin: 20px 0 10px;
}
.block1 .note {
	font: 12px/1.3 'MontserratMedium';
	color: #909090;
	margin: 10px 0 0;
	max-width: 300px;
}
.tooltip {
	display: none;
	z-index: 9999;
	position: absolute;
	left: calc( 100% + 30px );
	width: 187px;
	padding: 15px;
	color: #404040;
	font-size: 12px;
	background-color: #fff;
	border: 1px solid #ccc8cd;
	border-radius: 4px;
	box-shadow: 1px 1px 20px 1px rgba(0, 0, 0, 0.3);
}
.tooltip:before {
	content: '';
	position: absolute;
	left: -12px;
	top: calc( 50% - 6px );
	width: 0;
	height: 0;
	border-top: 6px solid transparent;
	border-right: 12px solid #fff;
	border-bottom: 6px solid transparent;
}
.block1 label:hover .tooltip {
	display: block;
}
.block1 .btn.wait {
	position: relative;
}
.block1 .btn.wait:after {
	content: '';
	position: absolute;
	right: -50px; top: 0;
	width: 40px; height: 40px;
	background: url(img/ajax-loader-pink.svg) no-repeat 50% 50% / cover;
}



/* ==========================================================================
	БЛОК 2
========================================================================== */

.block2 {
	padding: 50px 0;
	background: url(img/block2-bg.jpg) no-repeat 100% 0 / auto 100%;
}
.block2 h2 {
	font: 34px/1 'ProximaNovaBold';
	margin: 0 0 40px;
}
.block2 h2 span {
	color: #c11f43;
}
.block2 .item {
	margin: 0 0 12px;
}
.block2 .item img {
	vertical-align: middle;
	margin-right: 40px;
}
.block2 .item div {
	display: inline-block;
	vertical-align: middle;
	max-width: 360px;
}
.block2 h3 {
	font: 22px/1 'ProximaNovaBold';
	margin: 0 0 12px;
}
.block2 .btn {
	margin: 10px 0 0 165px;
	padding: 18px 60px;
	font-size: 20px;
}



/* ==========================================================================
	БЛОК 3
========================================================================== */

.block3 {
	padding: 40px 0 30px;
	text-align: center;
	background: url(img/block3-bg.png) no-repeat 50% 50% / cover;
}
.block3 h2 {
	margin: 0 0 20px;
	font: 40px/1 'ProximaNovaBold';
	color: #c11f43;
}
.block3 h3 {
	max-width: 770px;
	margin: 0 auto 30px;
	font: 34px/1 'ProximaNovaBold';
	color: #fff;
}
.block3 .item {
	margin: 0 0 20px;
}
.block3 .text_wrp {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	text-align: left;
	margin-right: 75px;
}
.block3 i {
	position: absolute;
	z-index: 1;
	left: -48px;
	top: -54px;
	font-style: normal;
	color: #123a41;
	font: 200px/1 'ProximaNovaBold';
}
.block3 .item:last-of-type i {
	top: -67px;
}
.block3 .text_wrp span {
	position: relative;
	z-index: 2;
	font: 24px/1.2 'ProximaNovaBold';
	color: #60c0bc;
}
.block3 .item img {
	vertical-align: middle;
}
.block3 .btn {
	padding: 18px 60px;
	font-size: 20px;
}



/* ==========================================================================
	БЛОК 4
========================================================================== */

.block4 {
	padding: 40px 30px;
	text-align: center;
}
.block4 h2 {
	max-width: 500px;
	margin: 0 auto 50px;
	font: 34px/1.2 'ProximaNovaBold';
}
.block4 h2 span {
	color: #c11f43;
}
.block4 .flex {
	display: flex;
	justify-content: space-between;
}
.block4 .flex > div {
	max-width: 205px;
}
.block4 .flex > div:last-of-type {
	max-width: 250px;
}
.block4 h3 {
	position: relative;
	margin: 30px 0 40px;
	font: 22px/1 'ProximaNovaBold';
}
.block4 h3:after {
	content: '';
	position: absolute;
	left: 0; right: 0;
	bottom: -24px;
	margin: auto;
	width: 70px;
	height: 4px;
	background: #65c9c6;
}



/* ==========================================================================
	БЛОК 5
========================================================================== */

.block5 {
	padding: 45px 0;
	background: url(img/block3-bg.png) no-repeat 50% 50% / cover;
}
.block5 h2 {
	font: 34px/1 'ProximaNovaBold';
	margin: 0 0 20px;
	color: #fff;
}
.block5 h2:last-of-type {
	margin-top: 35px;
}
.block5 .flex {
	display: flex;
	align-items: flex-start;
}
.block5 img {
	margin: 40px 85px 0 0;
}
.block5 h3 {
	font: 20px/1 'ProximaNovaBold';
	text-transform: uppercase;
	color: #65c9c6;
	margin: 0 0 20px;
}
.block5 td {
	color: #fff;
	text-align: center;
	font: 12px/1 'MontserratMedium';
	padding: 9px 25px;
	background: #0c5263;
	border-bottom: 1px solid #093641;
}
.block5 tr:nth-of-type(odd) td {
	background: #0b4857;
}
.block5 td:nth-of-type(2) {
	width: 10px;
	padding: 0;
	background: none !important;
	border-bottom: none;
	border-left: 1px solid #7e9ba3;
	border-right: 1px solid #7e9ba3;
}



/* ==========================================================================
	ПОДВАЛ
========================================================================== */

#footer {
	padding: 20px 0;
	background: #dee1e5;
}
#footer .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#footer .text1 {
	font: 20px/1.2 'ProximaNovaBold';
}
#footer .text2 {
	font-size: 18px;
}
#footer .pdf {
	display: inline-block;
	margin: 15px 0 0;
}
#footer .pdf img {
	vertical-align: middle;
	margin-right: 10px;
}
#footer .pdf span {
	color: #c11f43;
	font: 16px/1 'MontserratMedium';
	text-decoration: underline;
}



/* ==========================================================================
	МЕДИА-ЗАПРОСЫ
========================================================================== */

@media screen and (max-width: 1180px) {
	.container { padding-left: 15px !important; padding-right: 15px !important; }
	.tooltip { display: none !important; }
}

@media screen and (max-width: 1100px) {
	.block2 { background-position: right -100px top 0; }
}

@media screen and (max-width: 1000px) {
	.block1 form { padding: 25px 30px; }
	.block2 { background-position: right -200px top 0; }
}

@media screen and (max-width: 900px) {
	.block1 .img { max-width: 300px; }
	.block1 form { margin: 0; }
	.block2 { background: none; }
	.block2 .item { display: flex; align-items: center; }
	.block2 .item div { max-width: 100%; }
	.block3 .item:first-of-type img { max-width: 36vw; }
	.block3 .item:last-of-type img { max-width: 31vw; }
	.phone_block { flex-shrink: 0; }
	#footer .text1, #footer .text2 { font-size: 16px; }
}

@media screen and (max-width: 800px) {
	#header span { display: inline-block; max-width: 255px; }
	#header img { max-width: 249px; }
	.phone_block { background-position: 0 26px; }
	.phone_block p { font-size: 14px; }
	.phone_block a { font-size: 20px; }
	.block1 .t1 { font-size: 40px; }
	.block1 .t4 { font-size: 24px; }
	.block1 .list { flex-direction: row-reverse; flex-wrap: wrap-reverse; }
	.block1 .img { max-width: 100%; width: 100%; text-align: center; }
	.block1 .img img { max-width: 300px; }
	.block1 .left {  width: 300px; margin-right: 20px; }
	.block1 .text { margin-right: 0; }
	.block2 h2, .block3 h2, .block4 h2, .block5 h2 { font-size: 28px; }
	.block2 .item img { max-width: 100px; }
	.block2 .btn { margin: 10px 0 0 142px; }
	.block3 h3 { font-size: 24px; }
	.block3 .text_wrp { margin-right: 50px; }
	.block3 i { left: -30px; }
	.block4 .flex { flex-wrap: wrap; justify-content: center; }
	.block4 .flex > div { margin: 0 4vw 30px; max-width: 250px; }
	.block5 h2, .block5 .img { text-align: center; }
	.block5 .flex { display: block; }
	.block5 img { margin: 30px 0 0; max-width: 250px; }
}

@media screen and (max-width: 782px) {
	body.admin-bar { padding-top: 46px; }
}

@media screen and (max-width: 600px) {
	.block1 form { display: block; }
	.block1 .left { width: 100%; margin: 0 0 30px; }
	.block1 .note { max-width: 100%; }
	.block1 .left input { height: 30px; }
	.block1 .select2-selection__rendered { height: 30px; line-height: 30px !important; }
	.block1 .select2-selection--single { height: 30px; }
	.block1 .select2-selection__arrow { height: 28px !important; }
	.block1 .right h4 { margin: 0 0 25px; }
	.block3 .text_wrp span { font-size: 18px; }
	.block3 i { font-size: 150px; top: -43px; left: -20px; }
	.block3 .item:last-of-type i { top: -52px; }
	#footer .pdf span { font-size: 12px; }
}

@media screen and (max-width: 540px) {
	#header { display: block; text-align: center; }
	#header img { display: inline-block; }
	#header .phone_block { display: inline-block; margin: 15px 10vw 0; text-align: left; }
	.block1 { padding: 20px 0; }
	.block1 .t1 { font-size: 34px; }
	.block1 .t4 { font-size: 20px; }
	.block2 h2, .block3 h2, .block4 h2, .block5 h2 { font-size: 24px; }
	#footer .container { display: block; }
}

@media screen and (max-width: 500px) {
	.block1 .text li:before { width: 25px; height: 25px; left: -40px; top: 0px; }
	.block1 .text ul { padding-left: 40px; }
	.block1 .text li { margin: 0 0 20px; }
	.block1 .text strong { font-size: 18px; }
	.block1 .text p { font-size: 14px; }
	.block2 { padding: 30px 0; }
	.block2 .item img { max-width: 60px; margin-right: 20px; }
	.block2 h3 { font-size: 18px; }
	.block2 .item p { font-size: 14px; }
	.block2 .btn, .block3 .btn { margin: 10px 0 0; font-size: 16px; padding: 12px 40px; }
	.block3 h3 { font-size: 17px; }
	.block3 .text_wrp { margin-right: 30px; }
	.block4 { padding: 20px 30px 0px; }
	.block4 h2 { margin: 0 auto 30px; }
	.block4 img { max-width: 100px; }
	.block4 h3 { font-size: 20px; margin: 10px 0 30px; }
	.block4 h3:after { bottom: -18px; }
	#modal { padding: 40px 30px; }
	#modal div { font-size: 22px; }
	#modal p { font-size: 17px; }
}

@media screen and (max-width: 400px) {
	.block1 .total { font-size: 14px; }
	.block1 form { padding: 20px; }
	.block1 .right label span { font-size: 12px; }
	.block3 { padding: 30px 0; }
	.block3 .text_wrp span { font-size: 16px; }
	.block3 .text_wrp { margin-right: 10px; }
	.block5 img { margin: 10px 0 0; max-width: 200px; }
	#modal { padding: 40px 30px; }
	#modal div { font-size: 19px; }
	#modal p { font-size: 16px; }
}



/* == IN CODE WE TRUST == */
