@font-face {
	font-family: 'PT Sans';
	src: url(fonts/PTSans-Regular.ttf);
	font-weight: 400;
	font-stretch: semi-extended;
	font-variant: normal;
}
@font-face {
	font-family: 'PT Sans';
	src: url(fonts/PTSans-Bold.ttf);
	font-weight: 700;
	font-stretch: semi-extended;
	font-variant: normal;
}
html, body, div, span, h1, h2, h3, h4, h5, h6, p, em, img, strong, sub, sup, b, u, i, a, hr,
dl, dt, dd, ol, ul, li, fieldset, form, label, table, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	outline: 0;
	border: none;
	background: transparent;
	vertical-align: baseline;
	font-size: 100%;
}
ol, ul {
	list-style: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
input, select, button, textarea {
	margin: 0;
	font-size: 100%;
	border: 0;
	outline: none;
}
input[type="checkbox"] {
	vertical-align: text-top;
}
input[type="radio"] {
	vertical-align: text-bottom;
}
input::-moz-focus-inner {
	padding: 0 !important;
	border: none !important;
}
body {
	font: 15px 'PT Sans',Arial,sans-serif;
	color: #3a3953;
	font-size: 16px;
	margin: 0;
}
.hidden {
	display: none !important;
}
.head-pre {
	margin-bottom: 10px;
	font-size: 1.75rem;
	line-height: 1.15;
	letter-spacing: -0.022rem;
	font-weight: 400;
	color: #888;
	text-align: center;
}
.content-top .head {
	text-align: center;
	font-weight: 700;
	font-size: 3rem;
	letter-spacing: -0.022rem;
	color: #3a3953;
}
.header {
	height: 75px;
	position: fixed;
	display: flex;
	align-items: center;
	box-shadow: 0 2px 3px rgba(96, 96, 96, .1);
	background: #fff;
	top: 0;
	left: 0;
	right: 0;
	box-sizing: border-box;
	z-index: 3;
}
.footer {
	position: relative;
	background: #329dc7;
	box-sizing: border-box;
	color: #fff;
	border-top-left-radius: 15px;
	border-top-right-radius: 15px;
	width: 100%;
	z-index: 3;
}
.wrapper-footer {
	display: flex;
	justify-content: space-between;
	margin: 0px auto;
	padding: 15px 0;
	width: 75%;
}
.action-link {
	color: #fff;
}
.company-name {
	color: #92989b;
	font-size: 22px;
	margin: 40px auto;
	width: 75%;
}
.page-holder {
	position: relative;
	margin: 95px auto;
}
.page-holder::before {
	content: '';
	display: block;
	position: fixed;
	top: 0;
	bottom: 1px;
	right: 1px;
	left: 1px;
	opacity: 1;
	border-radius: 3px;
	background: url(./../images/pattern.png),#f5f5f5;
}
.page-holder::after {
	content: '';
	display: block;
	position: fixed;
	top: 0;
	bottom: 0px;
	right: 0px;
	left: 0px;
	background-position: center;
	background-size: contain;
	opacity: 0.05;
	background-image: url(./../images/mosaic.png);
}
.page-holder .content-top {
	position: relative;
	padding: 30px;
	margin: 0 auto;
	width: 75%;
	z-index: 2;
}
.page-holder .widget-installer {
	margin-top: 30px;
	text-align: center;
}
.page-holder .button-installer {
	display: inline-block;
	background: #f5f5f5;
	color: #4077d6;
	border: 1px solid #4077d6;
	border-radius: 3px;
	padding: 10px;
	font-size: 18px;
	font-weight: 700;
	line-height: 14px;
	white-space: nowrap;
	vertical-align: middle;
	text-decoration: none;
	outline: 0;
	cursor: pointer;
	user-select: none;
}
.policy .action-link {
	display: block;
}
.page-holder .button-installer:hover {
	background: #4c8bf7;
	color: #fff;
	border: 1px solid #4077d6;
}
.page-holder .box-contacts {
	position: relative;
	margin-top: 120px;
}
.content-preview {
	position: relative;
	margin: 110px auto;
	width: 85%;
	z-index: 2;
}
.base-fun .head {
	font-size: 40px;
	line-height: 1.2;
	color: #163e4e;
	font-weight: 600;
	margin-bottom: 10px;
	text-align: left;
}
.base-fun .head-desc {
	color: #426b7b;
	max-width: 400px;
}
.items-preview {
	display: flex;
	flex-wrap: wrap;
	margin: 30px 0;
	justify-content: center;
}
.item-preview {
	display: inline-block;
	background-color: #329dc7;
	width: calc(26% + 0px);
	padding: 30px;
	border-radius: 20px;
	margin-right: 15px;
	margin-bottom: 15px;
}
.preview-desc-head {
	font-size: 20px;
	line-height: 1.35;
	color: #fff;
	font-weight: 700;
	margin-bottom: 10px;
}
.preview-desc-inner {
	font-size: 14px;
	line-height: 1.55;
	color: #cfd6db;
}
.tariffs {
	display: flex;
	align-items: center;
	border-radius: 10px;
	box-shadow: 7px 7px 20px 0px rgba(121,154,167,0.1);
	background-color: #fff;
	padding: 30px;
	width: 50%;
	margin: 0 auto;
	box-sizing: border-box;
}
.tariffs .head {
	line-height: 28px;
	font-size: 20px;
	font-weight: 600;
}
.tariffs .head-desc {
	line-height: 20px;
	color: #426b7b;
	font-size: 14px;
}
.tariff-info, .tariff-demo {
	flex-grow: 1;
}
.tariff-demo-inner {
	line-height: 24px;
	color: #163e4e;
	font-size: 20px;
	font-weight: 600;
	padding-left: 50px;
	position: relative;
}
.tariff-demo-inner:before {
	content: '';
	display: block;
	position: absolute;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	background-image: url(./../images/present.svg);
	height: 35px;
	width: 35px;
	left: 0;
	top: 4px;
}
.preview-video {
	position: relative;
	margin-top: 30px;
	min-height: 310px;
}
.preview-video video {
	border-radius: 10px;
	height: 286px;
	width: 509px;
	box-shadow: 0px 3px 15px 0px rgb(0 0 0 / 43%);
}
.wrap-video {
	position: absolute;
	top: -90px;
	right: 8%;
	z-index: 1;
}
.sketch {
	position: absolute;
	bottom: 0;
	background-image: url(./../images/mosaic.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	height: 350px;
	width: 350px;
	transform: rotateX(45deg);
}
.view-form {
	display: flex;
	justify-content: space-between;
	margin: 90px auto;
	background-color: #329dc7;
	border-radius: 20px;
	padding: 30px;
	color: #fff;
	width: 80%;
}
.view-form .form-head {
	font-size: 26px;
}
.view-form .form-help,
.view-form .callback-form {
	width: 50%;
}
.view-form .text-input {
	box-sizing: border-box;
	padding: 0 20px;
	border-radius: 20px;
	background: #fff;
	margin-bottom: 20px;
	font-size: 18px;
	height: 50px;
	width: 100%;
}
.view-form .text-input.error {
	border: 2px solid #f8340a;
}
.view-form .button-input {
	cursor: pointer;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 5px 15px;
	text-decoration: none;
	color: #000;
}
.view-form .button-input-save {
	background: #f07418;
	border-color: #f07418;
	border-radius: 20px;
	height: 50px;
	font-size: 16px;
	width: 100%;
}
.view-form .button-input-save .button-input-inner {
	color: #fff;
}
.form-desc {
	margin-top: 20px;
	color: #cfd6db;
}
.modal {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 100;
	overflow: hidden;
	background: rgba(0, 0, 0, .3);
	display: flex;
	align-items: center;
	justify-content: center;
}
.modal-body {
	background-color: #fff;
	padding: 25px;
	box-shadow: 0 0 25px #333;
	border-radius: 5px;
	position: relative;
	min-width: 200px;
	min-height: 80px;
}
.success-icon {
	background-image: url(./../images/success.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	height: 55px;
	width: 55px;
}
.modal.modal-success .modal-content {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.success-message {
	font-size: 20px;
}
.reviews .carusel-images {
	overflow: auto;
	white-space: nowrap;
	padding: 15px;
	margin: -15px;
}
.reviews .carusel-images::-webkit-scrollbar {
	display: none;
}
.reviews .review-image {
	display: inline-block;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	height: 350px;
	width: 280px;
	border-radius: 10px;
	margin-right: 30px;
	box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.75);
}
.instructions {
	margin: 90px 0;
}
.content-detail-item {
	display: none;
	padding: 0 20px 20px 20px;
}
.head-item-instruction.active + .content-detail-item {
	display: block;
}
.detail-item-instruction {
	position: relative;
	margin-top: 20px;
}
.item-instruction {
	background-color: #fff;
	border-radius: 10px;
}
.head-item-instruction {
	display: flex;
	align-items: center;
	height: 50px;
	box-sizing: border-box;
}
.button-instruction-more {
	font-size: 40px;
	padding: 0 10px;
	cursor: pointer;
}
.button-instruction-more {
	background-image: url(./../images/plus.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	height: 35px;
	width: 35px;
}
.head-item-instruction.active .button-instruction-more {
	background-image: url(./../images/minus.svg);
}
.section-inner {
	margin-bottom: 10px;
}
.detail-item-instruction-image {
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	height: 600px;
	width: 100%;
}

@media only screen and (max-width: 768px) {
	.page-holder {
		margin: 85px auto;
		width: 90%;
	}
	.content-top .head-pre {
		font-size: 1.55rem;
	}
	.content-top .head, .base-fun .head {
		font-size: 2rem;
	}
	.content-preview {
		width: 100%;
	}
	.page-holder .button-installer {
		font-size: 16px;
	}
	.item-preview {
		padding: 14px;
		width: calc(37% + 0px);
	}
	.preview-desc-head {
		font-size: 15px;
		line-height: 1.25;
	}
	.wrapper-footer {
		width: 90%;
	}
	.tariffs {
		padding: 15px;
		width: 100%;
	}
	.tariffs .head-desc {
		font-size: 12px;
	}
	.tariff-demo-inner {
		font-size: 15px;
		line-height: 20px;
		padding-left: 40px;
	}
	.tariff-demo-inner:before {
		height: 30px;
		width: 30px;
	}
	.wrap-video {
		position: relative;
		top: unset;
		right: unset;
	}
	.preview-video video {
		height: 200px;
		width: 100%;
	}
	.sketch {
		height: 300px;
		width: 300px;
		bottom: -70px;
	}
	.view-form {
		flex-direction: column;
	}
	.view-form .form-help,
	.view-form .callback-form {
		width: 100%;
	}
	.view-form .callback-form {
		margin-top: 20px;
	}
	.detail-item-instruction-image {
		height: 250px;
	}
}
