@media screen and (max-width: 1400px) {
	#banner .col2 img {
		max-width: calc(100% + 50px);
	}
}
@media screen and (max-width: 1250px) {
	.partners {
		flex-wrap: wrap;
		margin: 0 -15px;
	}
	.partners > img {
		margin: 0 15px 20px;
		max-width: calc(50% - 30px);
	}
	#partners {
		padding: 20px 0 1px;
	}
	header nav ul li a {
		margin: 0 20px;
	}
	header nav ul {
		margin: 0 -20px;
	}
	#banner .col1 {
		max-width: 60%;
	}
	#banner .col2 {
		max-width: 40%;
	}
	#banner h1 {
		font-size: 65px;
	}
	.btn1, .btn2 {
		font-size: 22px;
	}
	.section-title {
		font-size: 50px;
	}
	#info .col1 {
		max-width: 400px;
	}
	#info .col2 {
		max-width: calc(100% - 400px);
	}
	.advatages .desc {
		padding-right: 80px;
		font-size: 17px;
	}
	.ex .img {
		padding: 0 20px;
		height: 90px;
	}
	#video iframe {
		height: 35vw;
	}
	.video {
		min-height: 35vw;
	}
	.map .desc {
		font-size: 15px;
	}
	.map .slick-slide {
		margin: 0 15px;
	}
	.map .slick-list {
		padding: 0 15px;
	}
	.map .slick-arrow {
		transform: scale(0.65) rotate(180deg);
	}
	.map .slick-next {
		transform: scale(0.65) rotate(0deg);
	}
	#form .col1 {
		max-width: 45%;
	}
	#form .col2 {
		max-width: 55%;
	}
	#form .col1 img {
		max-width: calc(100% + 160px);
	}
}
@media screen and (max-width: 992px) {
	header nav ul li a {
		margin: 0 15px;
		font-size: 18px;
	}
	header nav ul {
		margin: 0 -15px;
	}
	header {
		padding: 20px 0;
	}
	main {
		padding-top: 97px;
	}
	#banner {
		padding: 20px 0 50px;
	}
	#banner h1 {
		line-height: 1.3;
		font-size: 50px;
		text-align: center;
	}
	#banner .d-flex {
		flex-wrap: wrap;
	}
	#banner .col1 {
		max-width: 100%;
		padding: 0;
	}
	#banner .col2 {
		max-width: 100%;
		padding: 0;
	}
	.btn1 {
		height: 60px;
	}
	.btn2 {
		height: 60px;
	}
	.buttons {
		justify-content: center;
	}
	.buttons a {
		margin: 0 10px !important;
	}
	#banner .desc1, #banner .desc2 {
		text-align: center;
	}
	.btn2 {
		border: 3px solid #F09D3E;
		background: transparent;
	}
	.btn2:hover {
		background: #fff;
	}
	#banner .desc2 {
		margin: 0 0 30px;
	}
	#banner .col2 img {
		margin: -15% auto -25%;
		max-width: 100%;
	}
	#about {
		padding: 60px 0 10px;
	}
	.section-title {
		font-size: 45px;
		margin: 0 0 30px;
		line-height: 1.3;
	}
	.about > div {
		margin: 0 auto 40px;
	}
	.about .col1 {
		max-width: 230px;
		font-size: 27px;
	}
	.about .col2 {
		font-size: 16px;
		max-width: calc(100% - 230px);
	}
	#how {
		padding: 40px 0 40px;
	}
	.how > div .d-flex {
		padding: 20px 30px;
		font-size: 20px;
		width: 100%;
		max-width: 500px;
		position: relative;
		z-index: 2;
	}
	.how {
		background: none;
	}
	.how > div {
		margin: 0 0 40px;
		justify-content: center !important;
		position: relative;
	}
	.how > div:before {
		content: ' ';
		width: 1px;
		left: 50%;
		height: 40px;
		top: 100%;
		position: absolute;
		border-right: 3px dashed #F5E6BD;
	}
	.how > div:last-child:before {
		display: none;
	}
	#how .btn1 {
		margin: 35px auto 0;
	}
	#info {
		padding: 50px 0 50px;
	}
	#info .d-flex {
		flex-wrap: wrap;
	}
	#info .col1 {
		max-width: 100%;
		order: 2;
	}
	#info .col2 {
		max-width: 100%;
		padding: 0;
	}
	#info .col1 img {
		margin: -8% auto -13%;
		max-width: 100%;
		display: block;
	}
	#info .section-title {
		justify-content: center;
	}
	#info .pr .p2 {
		font-size: 16px;
	}
	#info .pr .p1 {
		font-size: 45px;
	}
	#advatages {
		padding: 20px 0 40px;
	}
	.advatages > div {
		margin: 0 0 30px;
		max-width: 500px;
		min-height: unset;
	}
	.advatages {
		justify-content: center;
	}
	#ex {
		padding: 60px 0;
	}
	#ex .section-title {
		margin: 0 0 40px;
	}
	.ex .slick-dots {
		margin: 50px 0 0;
	}
	#video {
		padding: 60px 0 40px;
	}
	#video .d-flex {
		flex-wrap: wrap;
		justify-content: center;
	}
	#video .col1 {
		max-width: 100%;
		padding: 0;
		margin: 0 0 30px;
	}
	#video .col2 {
		max-width: 100%;
	}
	#video iframe {
		max-width: 100%;
		width: 100%;
		height: 70vw;
	}
	.video {
		min-height: 70vw;
	}
	#video .section-title {
		text-align: center;
	}
	#map {
		padding: 40px 0 250px;
	}
	#map .section-title {
		margin: 0 0 40px;
	}
	#form {
		padding: 60px 0;
	}
	#form .container > .d-flex {
		flex-wrap: wrap;
		justify-content: center;
	}
	#form .col1 {
		max-width: 100%;
		order: 2;
	}
	#form .col2 {
		max-width: 600px;
		padding: 0;
	}
	#form .col1 img {
		max-width: 100%;
		margin: -5% auto -15%;
	}
	footer .d-flex {
		flex-wrap: wrap;
	}
	footer .col1 {
		max-width: 100%;
		text-align: center;
		margin: 0 0 30px;
	}
	footer .home-link img {
		margin: 0 auto;
		width: 65px;
	}
	footer .home-link {
		margin: 0 0;
	}
	.copy1 {
		display: none;
	}
	.copy2 {
		display: block;
		margin: 10px 0 0;
		text-align: center;
	}
	.ex .slick-arrow {
		transform: scale(0.65);
		top: 17px;
	}
}
@media screen and (max-width: 767px) {
	.ex .img {
		height: 70px;
	}
	form .dop {
		margin: -10px 0 15px;
		font-size: 12px;
	}
	.open-menu {
		display: block;
	}
	header nav {
		position: absolute;
		top: 100%;
		right: 0;
		width: 100%;
		right: 0;
		background: #000;
		padding: 20px 20px;
		display: none;
		max-height: calc(100vh - 88px);
		overflow: auto;
	}
	header nav ul {
		display: block;
	}
	header nav ul li a {
		margin: 0 0 50px;
		font-size: 18px;
		line-height: 22px;
		color: #F5E6BD;
		font-weight: 600;
		text-align: center;
	}
	header nav ul li:last-child a {
		margin: 0;
	}
	header nav ul {
		margin: 0;
	}
	header {
		padding: 15px 0;
		transition: all linear .25s;
	}
	main {
		padding-top: 87px;
	}
	header nav ul li a:after {
		border-radius: 0;
		height: 2px;
		width: 100%;
		left: 0;
		top: calc(100% + 2px);
	}
	#banner h1 {
		font-size: 38px;
		line-height: 48px;
		margin: 0 0 10px;
	}
	#banner .desc1,#banner .desc2 {
		font-size: 16px;
		margin: 0 0 10px;
	}
	.btn1 {
		height: 50px;
		max-width: 350px;
		font-size: 18px;
	}
	.btn2 {
		height: 50px;
		max-width: 350px;
		font-size: 18px;
	}
	#banner .col2 img {
		max-width: 85%;
	}
	.buttons a {
		margin: 0 10px 15px !important;
	}
	#banner .buttons {
		margin-top: 20px;
	}
	#about {
		padding: 50px 0 10px;
	}
	.section-title, #info .section-title {
		margin: 0 0 30px;
		font-size: 28px;
		line-height: 1.2;
	}
	.about > div {
		flex-wrap: wrap;
		margin: 0 0 30px;
	}
	.about .col1 {
		max-width: 100%;
		font-size: 25px;
		display: block;
		margin: 0 0 20px;
		font-size: 22px;
		text-align: center;
	}
	.video span {
		transform: scale(0.75);
	}
	.up {
		transform: scale(0.65) rotate(-90deg);
		bottom: 10px;
		right: 10px;
	}
	.about .col1 span {
		width: 139px;
		height: 3px;
		margin: 15px auto 0;
		min-height: unset;
		max-width: unset;
	}
	.about .col2 {
		max-width: 100%;
		padding: 0;
	}
	.how .number {
		margin-right: 15px;
		font-size: 38px;
		line-height: 1.3;
	}
	.how > div .d-flex {
		font-size: 16px;
		padding: 10px 20px;
	}
	#how .btn1 {
		max-width: 350px;
	}
	#info {
		padding: 40px 0 30px;
	}
	#info .pr .p2 {
		font-size: 14px;
	}
	#info .section-title span {
		margin-left: 15px;
		padding: 0 12px;
		line-height: 35px;
	}
	#info .infos p span {
		font-size: 16px;
	}
	#info .infos p {
		font-size: 14px;
		overflow: auto;
	}
	#how {
		padding: 20px 0 20px;
	}
	.map .desc {
		font-size: 14px;
	}
	.map .title {
		font-size: 16px;
	}
	#info .col1 img {
		max-width: calc(100% + 150px);
		margin: -12% -75px -10%;
	}
	#info .pr .p1 {
		font-size: 38px;
	}
	#info .col1 {
		display: flex;
		justify-content: center;
	}
	#info .d-flex {
		margin: 0px 0 0;
		justify-content: flex-start;
	}
	#info .d-flex > div {
		max-width: 100%;
		margin: 0 0 20px;
	}
	#info .col1 {
		display: none;
	}
	#info .section-title {
		margin: 0 0 20px !important;
	}
	#info .infos p:nth-child(2) {
		display: block;
		font-size: 14px;
	}
	#info .infos p:nth-child(2) span {
		margin: 0 0 5px;
	}
	#info .infos p {
		margin: 0 0 12px;
	}
	.advatages {
		margin: 0;
	}
	.advatages > div {
		min-height: unset;
		padding: 20px;
	}
	.advatages .title {
		line-height: 1.3;
		margin: 0 0 15px;
		font-size: 22px;
	}
	.advatages .desc {
		font-size: 16px;
		padding-right: 50px;
	}
	.advatages .img {
		right: 15px;
		top: 5px !important;
		max-width: 40px;
	}
	.advatages .img img {
		max-height: 40px;
	}
	#advatages {
		padding: 20px 0 20px;
	}
	#ex {
		padding: 40px 0;
	}
	#ex .section-title {
		margin: 0 0 25px;
	}
	.ex .slick-arrow {
		top: 4%;
	}
	.ex {
		padding: 0 60px;
	}
	.ex .slick-dots {
		margin-top: 40px;
	}
	.ex .slick-dots li button {
		margin: 0 5px;
		width: 10px;
		height: 10px;
	}
	#video {
		padding: 50px 0 20px;
	}
	#video .section-title {
		margin: 0 0 25px;
	}
	#video .desc {
		font-size: 18px;
		text-align: center;
	}
	#video .col1 {
		margin: 0 0 20px;
	}
	#map .section-title {
		margin: 0 0 25px;
	}
	.map .slick-arrow {
		left: -15px;
	}
	.map .slick-next {
		left: auto;
		right: -15px;
	}
	#form {
		padding: 50px 0;
	}
	form label {
		margin: 0 0 35px;
		font-size: 16px;
	}
	form .d-flex {
		display: block !important;
	}
	form .d-flex > * {
		max-width: 100%;
	}
	form input {
		margin: 10px 0 0;
	}
	form .wpcf7-not-valid-tip {
		font-size: 12px;
	}
	form .btn1 {
		margin-top: 20px;
	}
	#form .col1 {
		display: none;
	}
	#partners {
		padding: 20px 0 1px;
	}
	#form .col1 img {
		margin: -3% auto -18%;
	}
	footer .ftitle {
		font-size: 18px;
		margin: 0 0 10px;
		text-align: center;
	}
	footer .copy {
		font-size: 12px;
		margin: 0px 0 0;
	}
	footer .col1 {
		margin: 0 0 20px;
	}
	footer .col2 {
		max-width: 100%;
		text-align: center;
		margin-bottom: 20px;
	}
	footer ul li a {
		font-size: 16px;
		margin: 0 0 20px;
	}
	footer .col3 {
		max-width: 100%;
	}
	.social {
		justify-content: center;
		max-width: 250px;
		margin: 0 auto;
	}
	.social a {
		margin: 0 10px 20px;
	}
	#thanks {
		padding: 30px 20px 20px;
	}
	#thanks img {
		margin: 0 auto;
	}
	#thanks .p1 {
		font-size: 40px;
		line-height: 1.2;
		margin: 0 0 10px;
	}
	#thanks .p2 {
		font-size: 18px;
	}
	.fancybox__content>.carousel__button.is-close {
		top: 10px !important;
		right: 10px !important;
	}
}
@media screen and (max-width: 550px) {
	.ex {
		margin: 0;
		padding: 0 60px;
	}
	.ex .slick-arrow {
		left: -15px;
	}
	.ex .slick-next {
		left: auto;
		right: -15px;
	}
	.ex .slick-list {
		padding: 0;
	}	
	.ex .slick-dots {
		margin-top: 40px;
	}
	.ex .img {
		height: 50px;
		padding: 0 30px;
	}
	.ex .slick-arrow {
	    top: -3%;
	}
}
@media screen and (max-width: 600px) {
	#info .col1 img {
		max-width: calc(100% + 150px);
		margin: -20% -75px -10%;
	}	
}