@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-Light.woff2') format('woff2'),
        url('../fonts/Gilroy-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Gilroy';
    src: url('../fonts/Gilroy-ExtraBold.woff2') format('woff2'),
        url('../fonts/Gilroy-ExtraBold.woff') format('woff');
    font-weight: 800;
    font-style: normal;
}

* {
	box-sizing: border-box;
}

body {
	margin: 0;
	font-family: "Open Sans",sans-serif;
	color: #3c3c3c;
}

body.fixed {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	width: 100%;
}

ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.site-header {
	padding: 25px 0;
}

.phone-block {
	text-align: right;
	margin-bottom: 15px;
}

.mobile-header-block {
	display: none;
}

.mobile-menu-btn {
	width: 45px;
	height: 45px;
	border: 2px solid #ef3e42;
	padding: 10px 5px;
	display: inline-block;
	position: relative;
	z-index: 1000;
	margin-left: 30px;
}

.mobile-menu-btn .mobile-menu-wrapper.closed {
	transition: .25s;
}

.mobile-menu-btn.opened .mobile-menu-wrapper.closed {
	opacity: 0;
	transition: .25s;
}

.mobile-menu-btn .mobile-menu-wrapper.closed span {
	display: block;
	height: 2px;
	width: 100%;
	transition: .25s;
	background: #2b2b2b;
}

.mobile-menu-btn .mobile-menu-wrapper.opened {
	opacity: 0;
	transition: .25s;
}

.mobile-menu-btn.opened .mobile-menu-wrapper.opened {
	opacity: 1;
	transition: .25s;
}

.mobile-menu-btn .mobile-menu-wrapper.opened span:nth-child(1) {
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	height: 2px;
	width: 100%;
	left: 0;
	transition: .25s;
	background: #2b2b2b;
}

.mobile-menu-btn.opened  .mobile-menu-wrapper.opened span:nth-child(1) {
	transform: translateY(-50%) rotate(45deg);
}

.mobile-menu-btn.opened  .mobile-menu-wrapper.opened span:nth-child(2) {
	transform: translateY(-50%) rotate(-45deg);
}

.mobile-menu-btn .mobile-menu-wrapper.opened span:nth-child(2) {
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	height: 2px;
	width: 100%;
	left: 0;
	transition: .25s;
	background: #2b2b2b;
}

.mobile-menu-wrapper {
	display: flex;
	height: 100%;
    flex-direction: column;
    justify-content: space-between;
}

.phone-block a {
	font-size: 25px;
	text-decoration: none;
	color: #3c3c3c;
}

.phone-block a span {
	color: #ef3e42;
	font-weight: bold;
}

.main-menu li {
	display: inline-block;
	margin: 0 13px;
	line-height: 1;
}

.main-menu li:first-child {
	margin-left: 0;
}

.main-menu li:last-child {
	margin-right: 0;
}

.main-menu li a {
	font-size: 18px;
	line-height: 1;
	color: #3c3c3c;
	text-decoration: none;
}

.first-screen {
	height: 685px;
	background: url(../img/first-screen-bg.jpg) no-repeat;
	background-size: cover;
	display: flex;
	align-items: center;
}

.first-screen .site-slogan {
	font-size: 50px;
	color: #fff;
	display: inline-block;
	font-family: "Gilroy";
	font-weight: 800;
	line-height: 1;
	margin: 0;
	margin-left: 70px;
}

.first-screen .site-slogan span {
	display: block;
}

.first-screen .site-slogan .first-line {
	padding: 20px 0;
	padding-bottom: 17px;
	padding-left: 30px;
	padding-right: 100px;
	background: #2b2b2b;
	text-transform: uppercase;
	margin-bottom: 3px;
	position: relative;
}

.first-screen .site-slogan .first-line::after {
	content: '';
	position: absolute;
	top: 0;
	left: 100%;
	width: 80px;
	bottom: 0;
	background: url(../img/red-icon.jpg) no-repeat;
	background-size: 100% 100%;
}

.first-screen .site-slogan .last-line {
	background: #ef3e42;
	padding: 15px 30px;
	text-transform: uppercase;
	font-size: 40px;
	display: inline-block;
}

.about-us {
	padding: 80px 0;
}

.about-us-title {
	margin: 0;
	margin-bottom: 30px;
	display: inline-block;
	line-height: 1;
	padding-bottom: 20px;
	font-size: 30px;
	font-family: "Gilroy";
	font-weight: 800;
	text-transform: uppercase;
	border-bottom: 3px solid #ef3e42;
}

.about-us-title span {
	color: #ef3e42;
}

.about-us-text {
	font-size: 15px;
}

.about-us-text p:first-child {
	margin-top: 0;
}

.about-us-text p:last-child {
	margin-bottom: 0;
}

.why-we-work li {
	font-size: 17px;
	font-weight: bold;
	margin-bottom: 30px;
	position: relative;
	padding-left: 25px;
}

.why-we-work li::before {
	content: "»";
	font-size: 17px;
	color: #ef3e42;
	font-weight: bold;
	position: absolute;
	top: 0;
	left: 0;
}

.why-we-work li:last-child {
	margin-bottom: 0;
}

.third-screen {
	height: 870px;
	background: url(../img/third-screen-bg.jpg) no-repeat;
	background-size: cover;
}

.third-screen .container {
	position: relative;
}

.danger-images img {
	transition: .25s;
}

.danger-images img:hover {
	z-index: 5 !important;
	transition: .25s;
}

.danger-images img:first-child {
	position: absolute;
	top: 190px;
	width: 800px;
	left: -150px;
	z-index: 1;
}

.danger-images img:nth-child(2) {
	position: absolute;
	top: 90px;
	width: 340px;
	left: 275px;
	z-index: 2;
}

.danger-images img:nth-child(3) {
	position: absolute;
	top: 513px;
	width: 450px;
	left: -63px;
	z-index: 2;
}

.danger-images img:nth-child(4) {
	position: absolute;
	top: 440px;
	width: 340px;
	left: 308px;
	z-index: 1;
}

.danger-block {
	background: #fff;
	padding: 30px 38px;
	position: absolute;
	top: 185px;
	right: 0;
	max-width: 604px;
	z-index: 11;
}

.danger-block .danger-title {
	font-size: 40px;
	text-transform: uppercase;
	font-family: "Gilroy";
	font-weight: 800;
	margin-top: 15px;
	margin-bottom: 50px;
	line-height: 1;
	margin-left: 100px;
}

.danger-sign {
	position: absolute;
	top: 35px;
	left: 35px;
	height: 64px;
	width: 64px;
}

.danger-sign::before {
	position: absolute;
	content: '';
	bottom: 0;
	top: 0;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	width: 40px;
	left: 12px;
	transform: rotate(45deg);
}

.danger-sign::after {
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	border-left: 1px solid #000;
	border-right: 1px solid #000;
	height: 40px;
	top: 12px;
	transform: rotate(45deg);
}

.danger-block .danger-title span {
	color: #ef3e42;
}

.danger-block .danger-text {
	font-size: 17px;
	line-height: 35px;
	padding-left: 20px;
	border-left: 1px solid #c7c7c7;
}

.using {
	background: #f3f4f4;
	padding-top: 90px;
	padding-bottom: 60px;
}

.section-title {
	font-size: 50px;
	text-transform: uppercase;
	font-family: "Gilroy";
	font-weight: 800;
	margin-top: 0;
	margin-bottom: 70px;
	line-height: 1;
	text-align: center;
}

.section-title span {
	color: #ef3e42;
}

.using-photo img {
	max-width: 100%;
	min-height: 100%;
	object-fit: cover;
}

.using-name {
	font-size: 20px;
	background: #ef3e42;
	color: #fff;
	font-size: 20px;
	text-align: center;
	padding: 20px 0;
	line-height: 1;
	margin-top: 7px;
}

.adv-items {
	padding: 75px 0;
	background: #16181f;
}


.adv-title {
	color: #ef3e42;
	font-size: 28px;
	font-family: "Gilroy";
	font-weight: 800;
	text-transform: uppercase;
	margin-bottom: 50px;
}

.adv-title span{
	font-size: 33px;
}

.adv-col-title {
	font-size: 25px;
	font-weight: bold;
	color: #fff;
	margin-bottom: 10px;
	line-height: 35px;
	height: 70px;
}

.adv-col-title.second {
	padding-left: 90px;
	margin-bottom: 5px;
}

.adv-problem-list {

}

.adv-problem-list li {
	font-size: 16px;
	padding: 20px 0;
	position: relative;
	padding-left: 25px;
	color: #fff;
}

.adv-problem-list li::before {
	content: "»";
	font-size: 17px;
	color: #ef3e42;
	font-weight: bold;
	position: absolute;
	top: 18px;
	left: 0;
}

.adv-problem-list li:last-child {
	margin-bottom: 0;
}

.advanced-list li {
	font-size: 16px;
	padding: 25px 0;
	position: relative;
	padding-left: 95px;
	color: #fff;
	font-weight: bold;
}

.advanced-list li::before {
	content: "»";
	font-size: 17px;
	color: #ef3e42;
	font-weight: bold;
	position: absolute;
	top: 23px;
	left: 70px;
}

.advanced-list li:nth-child(1) {
	background: url(../img/advicon1.png) no-repeat left center;
}

.advanced-list li:nth-child(2) {
	background: url(../img/advicon2.png) no-repeat left center;
}


.advanced-list li:nth-child(3) {
	background: url(../img/advicon3.png) no-repeat left center;
}


.advanced-list li:nth-child(4) {
	background: url(../img/advicon4.png) no-repeat left center;
}


.advanced-list li:nth-child(5) {
	background: url(../img/advicon5.png) no-repeat left center;
}


.advanced-list li:nth-child(6) {
	background: url(../img/advicon6.png) no-repeat left center;
}


.advanced-list li:last-child {
	margin-bottom: 0;
}

.how-it-works {
	padding-top: 75px;
	padding-bottom: 90px;
	background: #e8eeef;
}

.how-text {
	border-left: 1px solid #c8c8c8;
	padding-left: 20px;
	font-size: 17px;
	line-height: 25px;
}

.how-images {
	display: flex;
	padding-left: 100px;
	justify-content: space-around;
	margin-top: 70px;
	align-items: flex-start;
}

.how-images img:nth-child(2) {
	margin-top: 45px;
}

.examples {
	padding-top: 60px;
	padding-bottom: 70px;
}

.examples-list li {
	font-size: 18px;
	margin-bottom: 15px;
	position: relative;
	padding-left: 25px;
	line-height: 28px;
}

.examples-list li::before {
	content: "»";
	font-size: 17px;
	color: #ef3e42;
	font-weight: bold;
	position: absolute;
	top: 0;
	left: 0;
}

.examples-list li:last-child {
	margin-bottom: 0;
}

.examples-gallery {
	padding-top: 75px;
	padding-bottom: 95px;
	background: #e8eeef url(../img/last-bg.png) no-repeat top center;
	background-size: 100% auto;
}

.examples-item {
	position: relative;
	margin-bottom: 30px;
	height: 340px;
	overflow: hidden;
}

.examples-item img {
	max-width: 100%;
	height: 100%;
	object-fit: cover;
}

.examples-name {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	background: rgba(249,40,15,.8);
	padding: 20px 0;
	padding-left: 35px;
}

.comparing-title {
	font-size: 30px;
	font-weight: 300;
	font-family: "Gilroy";
	color: #2e2e2e;
	text-transform: uppercase;
	text-align: center;
	margin-top: 40px;
	margin-bottom: 65px;
}

.comparing-title span {
	color: #ef3e42;
	font-weight: 800;
}

.example-big-photo {
	position: relative;
}

.example-big-photo img {
	max-width: 100%;
	object-fit: cover;
}

.example-big-text {
	color: #fff;
	font-size: 18px;
	font-weight: bold;
}

.example-big-text span {
	font-weight: 300;
	display: inline-block;
	margin-top: 10px;
}

.example-big-text.first {
	position: absolute;
	left: 190px;
	bottom: 100px;
}

.example-big-text.second {
	position: absolute;
	bottom: 68px;
	right: 300px;
}

.site-footer {
	padding: 30px 0;
	color: #fff;
}

.site-footer .container .row {
	justify-content: space-between;
	align-items: center;
}

.copyright {
	color: #2d2d2d;
	font-size: 15px;
}

.copyright a {
	color: #f12424;
	font-weight: bold;
	text-decoration: none;
}

.mindpro-block {
	width: 200px;
}

.mindpro-text  {
	margin-top: -5px;
}

.mindpro-text span {
	font-size: 14.6px;
	color: #282828;
	text-transform: uppercase;
	font-weight: bold;
	line-height: 1;
}

.mindpro-block img {
	float: left;
	margin-right: 10px;
}

.mindpro-text a {
	color: #194fa0;
	font-size: 13px;
	text-transform: uppercase;
	text-decoration: none;
	line-height: 1;
	display: block;
	margin-top: -3px;
}

.mobile-menu-popup {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	background: #ef3e42;
	display: none;
	z-index: 999;
}

.mm-wrapper {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
}

.mobile-menu li {
	margin-bottom: 20px;
	text-align: center;
}

.mobile-menu li a {
	color: #fff;
	text-decoration: none;
	font-size: 25px;
	font-weight: bold;
	text-transform: uppercase;
}

#map {
	height: 575px;
	position: relative;
}

.contact-info {
	background: rgba(2,2,2,.8);
	border-radius: 5px;
	padding: 22px 35px;
	color: #fff;
	position: relative;
}

.contact-info::after {
	content: '';
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translate(-50%,0);
	border: 10px solid transparent;
	border-top: 10px solid rgba(2,2,2,.8);
}

.contact-title {
	font-size: 20px;
	text-transform: uppercase;
	margin-bottom: 15px;
	font-weight: bold;
}

.contact-addr {
	background: url(../img/geo.png) no-repeat left center;
}

.contact-phone {
	background: url(../img/phone.png) no-repeat left center;
}

.contact-mail {
	background: url(../img/mail.png) no-repeat left center;
}

.contact-phone,.contact-mail,.contact-addr {
	padding-left: 25px;
	margin-bottom: 12px;
	font-size: 15px;
}

.contact-phone a,.contact-mail a {
	color: #fff;
	font-size: 15px;
	text-decoration: none;
}

.contact-phone a:hover,.contact-mail a:hover {
	text-decoration: underline;
}

.feedback-form {
	padding: 50px 15px;
	text-align: center;
}

.feedback-form input {
	border-radius: 5px;
	border: 1px solid #e2e2e2;
	padding: 10px;
	padding-left: 15px;
	font-size: 16px;
	margin-right: 10px;
	font-family: "Open Sans",sans-serif;
	margin-bottom: 20px;
}

.feedback-form input.not-valid {
	box-shadow: 0px 0px 3px 1px rgba(255,0,0,.8);
}

.feedback-form h2 {
	margin-top: 0;
}

.feedback-form input[type=submit] {
	background: rgba(249, 40, 15, .8);
	color: #ffffff;
	padding-left: 10px;
	border: 0;
	cursor: pointer;
}

.feedback-form input::-webkit-input-placeholder {
	font-family: "Open Sans",sans-serif;
}
.feedback-form input:-ms-input-placeholder {
	font-family: "Open Sans",sans-serif;
}
.feedback-form input::-ms-input-placeholder {
	font-family: "Open Sans",sans-serif;
}
.feedback-form input::placeholder {
	font-family: "Open Sans",sans-serif;
}

.error-validation-msg {
}

@media(max-width: 1199px) {
	.main-menu li {
		margin: 0 10px;
	}

	.first-screen .site-slogan {
		margin-left: 0;
	}

	.first-screen .site-slogan .first-line {
		padding-right: 30px;
	}

	.first-screen {
		height: 665px;
	}

	.danger-block {
		max-width: 460px;
	}

	.danger-block .danger-title {
		font-size: 30px;
	}

	.danger-block .danger-text {
		line-height: 30px;
	}

	.adv-title {
		font-size: 24px;
		letter-spacing: -.1px;
		text-align: center;
	}

	.adv-title span {
		font-size: 27px;
		margin-top: 15px;
		display: inline-block;
	}

	.how-images {
		padding-left: 55px;
	}

	.how-it-works {
		border-bottom: 0;
	}

	.examples-item {
		height: 280px;
	}

	.example-big-text.first {
		left: 80px;
	}

	.example-big-text.second {
		right: 215px;
	}
}

@media(max-width: 991px) {

	.main-menu,.phone-block.desktop {
		display: none;
	}

	.phone-block.mobile {
		display: inline-block;
		margin-bottom: 0;
	}

	.first-screen .site-slogan .first-line {
		font-size: 38px;
		padding: 15px 0;
		padding-right: 30px;
	}

	.first-screen .site-slogan .last-line {
		font-size: 30px;
	}

	.about-us-text {
		margin-bottom: 75px;
	}

	.about-us-text p {
		margin: 0;
		margin-bottom: 33px;
	}

	.about-us-text p:last-child {
		margin-bottom: 0;
	}
	
	.danger-images {
		display: none;
	}

	.danger-block {
		width: 600px;
		max-width: 100%;
		top: 105px;
		left: 50%;
		transform: translateX(-50%);
	}

	.third-screen {
		height: 600px;
	}

	.using-name {
		margin-top: 20px;
	}

	.adv-title {
		font-size: 18px;
		letter-spacing: -.3px;
	}

	.adv-title span {
		font-size: 21px;
	}

	.how-text {
		border-left: 0;
		padding-left: 0;
	}

	.how-images {
		margin-top: 15px;
		padding-left: 0;
		display: block;
		position: relative;
		overflow: hidden;
	}

	.how-images img {
		float: left;
		width: calc(50% - 25px);
	}

	.how-images img:nth-child(1) {
		margin-right: 25px;
	}

	.how-images img:nth-child(2) {
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		max-width: 180px;
		margin-top: 0;
	}

	.how-images img:nth-child(3) {
		margin-left: 25px;
	}

	.examples-item {
		height: 385px;
		margin-bottom: 40px;
	}

	.examples-item img {
		width: 100%;
	}

	.examples-gallery {
		padding-top: 25px;
		padding-bottom: 10px;
	}

	.adv-problem-list {
		margin-bottom: 88px;
	}

	.example-big-text.first {
		left: 30px;
		bottom: 64px;
	}

	.example-big-text.second {
		right: 30px;
		bottom: 30px;
	}

	.adv-items {
		text-align: center;
	}

	.adv-col-title.second {
		padding-left: 0;
	}

	.advanced-list li {
		padding-left: 70px;
		text-align: left;
	}

	.adv-problem-list li {
		text-align: left;
	}

	.advanced-list li::before {
		left: 50px;
	}

	.advanced-list,.adv-problem-list,.adv-col-title {
		display: inline-block;
	}

	.mobile-header-block {
		display: block;
		float: right;
		display: flex;
		align-items: center;
	}

	.logo {
		float: left;
	}

	.site-header .col-lg-3 {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

}

@media(max-width: 767px) {

	.first-screen .site-slogan {
		font-size: 24px;
	}
	.first-screen .site-slogan .first-line {
		font-size: 24px;
		padding: 8px 15px;
	}

	.first-screen .site-slogan .last-line {
		font-size: 19px;
		padding: 7px 15px;
	}

	.logo {
		float: left;
		max-width: 135px;
	}

	.logo img {
		max-width: 100%;
	}

	.first-screen .site-slogan .first-line::after {
		width: 40px;
		height: 40px;
		bottom: auto;
	}

	.danger-block {
		max-width: calc(100% - 30px);
	}

	.section-title {
		font-size: 30px;
		margin-bottom: 45px;
	}

	.using-item {
		margin-bottom: 25px;
	}

	.using-photo {
		height: 220px;
		overflow: hidden;
	}

	.using-photo img {
		width: 100%;
		height: 100%;
	}

	.using {
		padding-top: 70px;
	}

	.why-we-work li {
		font-size: 15px;
	}

	.about-us {
		padding-bottom: 108px;
	}

	.adv-title {
		font-size: 20px;
		line-height: 28px;
	}

	.adv-items {
		padding: 40px 0;
	}

	.adv-title span {
		font-size: 20px;
		margin-top: 0;
	}

	.adv-col-title {
		font-size: 20px;
	}

	.adv-problem-list li,
	.advanced-list li {
		font-size: 14px;
	}

	.how-it-works {
		padding-top: 55px;
	}

	.how-images {
		margin-top: 60px;
	}

	.examples-list li {
		font-size: 15px;
		line-height: 20px;
	}

	.examples-item {
		height: 260px;
	}

	.comparing-title {
		font-size: 19px;
		margin-top: 20px;
	}

	.example-big-text {
		font-size: 15px;
	}

	.example-big-photo {
		height: 265px;
		overflow: hidden;
	}
	
	.example-big-photo img {
		height: 100%;
		width: 100%;
	}

	.phone-block a {
		font-size: 20px;
	}
}


@media(max-width: 475px) {
	.danger-block .danger-text {
		font-size: 14px;
	}

	.danger-block .danger-title {
		font-size: 22px;
		margin-top: 40px;
	}

	.danger-block {
		padding: 15px 20px;
	}

	.first-screen .site-slogan .first-line::after {
		content: none;
	}

	.about-us-title {
		font-size: 24px;
	}

	.example-big-text {
		font-size: 10px;
	}

	.example-big-text span {
		margin-top: 0;
	}

	.mobile-menu-btn {
		margin-left: 10px;
	}

	.phone-block a {
		font-size: 16px;
	}

	.logo {
		max-width: 85px;
	}

	.copyright {
		padding-left: 15px;
	}

	.feedback-form input {
		width: 100%;
		margin-right: 0;
	}
}