html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}nav ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}ins{background-color:#ff9;color:#000;text-decoration:none}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}ul{list-style: none;}input:focus,select:focus,textarea:focus{outline: none;}


body{
	font-family: 'Montserrat', sans-serif;
	background: #fff;
	font-size: 16px;
	line-height: normal;
	color: #1f1a17;
	min-width: 320px;
	overflow-x: hidden;
	position: relative;
}

html{overflow-x: hidden;}



.container{max-width: 1200px; width: 100%; padding: 0 40px; margin: 0 auto; box-sizing: border-box;}






header{position: fixed; top: 0; left: 0; width: 100%; z-index: 300; padding: 5px 0; background: #fff; box-shadow: 0px 7px 5px -7px rgba(0,0,0,0.15); transition: all 0.2s;}
	header.f-nav{padding: 20px 0}
	header.f-nav .logo{display: none;}
	header .flex{align-items: center;}
	header .logo{max-width: 200px}
	header .pull{display: none;}
	header li{display: inline-block; margin-left: 40px;}
	header li:first-child{margin-left: 0;}
		header li a{color: #1f1a17; border-bottom: 1px solid transparent;}
			header li a:hover{opacity: 1; border-bottom: 1px solid #1f1a17;}
	header .callback a{color: #1f1a17; font-weight: 700;}
		header .callback a:hover{color: #f8c301;}
	header .pull{display: none;}





#promo{position: relative; margin: 100px 0 0; color: #fff; background: url("../img/bg_promon.jpg") 50% 50% no-repeat; background-size: cover;}
	#promo #video-bg{position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden;}
		#promo #video-bg video{min-width: 100%; min-height: 100%;}
	#promo .container{position: relative; z-index: 2}
	#promo:after{position: absolute; top: 0; left: 0; width: 100%; height: 100%; content: ''; background: rgba(0, 0, 0, 0.7);}
	#promo .text{max-width: 650px; padding: 200px 0}
	#promo h1{font-size: 42px;}
	#promo p{margin: 20px 0; font-size: 20px; font-weight: 300; line-height: 1.5}





#about{padding: 50px 0;}
	#about .flex{align-items: center;}
	#about .text{width: 100%; max-width: 720px; max-width: 100%;}
	#about .image{width: calc(100% - 750px)}





#activity{padding: 50px 0 70px; background: #f9f9f9}
	.list__projects{position: relative; padding-bottom: 50px}
	#activity .item{text-align: left;}
		#activity .item .title{font-weight: 700; font-size: 24px; margin-bottom: 15px}
		#activity .item  .content li{display: inline-block; margin-bottom: 5px;}
		#activity .item .image{margin-bottom: 15px}
			#activity .item .image img{height: 90px}






#events{padding: 50px 0;}
	#events .btn{margin: 40px auto 0;}
	#events .item{background: #f0f0f0;}
		#events .item img{width: 100%; height: auto;}
		#events .item .data{padding: 20px}
		#events .item .title{text-transform: uppercase; font-weight: 600; margin: 10px 0; line-height: 1.3;}
		#events .item p{font-weight: 300; margin-bottom: 15px;}
		#events .item a.more{color: #000; border-bottom: 1px solid #000;}
			#events .item a.more:hover{border-color: transparent;}






#gallery{padding: 50px 0}
	.list__gallery{column-count: 3; gap: 30px}
		.list__gallery a{display: none; margin-bottom: 30px}
		.list__gallery a.tab1{display: block;}
		.list__gallery a.show{display: block!important;}





#video{padding: 50px 0; background: url("../img/bg_video.jpg") 50% 50% no-repeat; background-size: cover; position: relative; min-height: 600px}
	#video a{position: absolute; top: calc(50% - 75px); left: calc(50% - 75px); display: flex; align-items: center; justify-content: center; width: 150px; height: 150px; border-radius: 50%; background: rgba(255, 255, 255, 0.7);}
		#video a svg{width: 60px; height: 60px; position: relative; left: 5px}
		#video a:hover{background: #fff;}
	#video video{display: block; width: 100%; height: 500px}
	#video .bt{text-align: center; color: #fff}
	#video .bt:after{left: calc(50% - 40px)}





#contacts{padding: 50px 0;}
	#contacts .label{font-size: 20px; font-weight: 700; margin-bottom: 10px}
	#contacts .row{margin-bottom: 40px;}
		#contacts .socials a{width: 40px; height: 40px;}
		#contacts .row a{color: #000; font-size: 18px; font-weight: 500;}
			#contacts .row a:hover{color: #f8c301}
		#contacts .row p{margin-bottom: 7px}
	#contacts .form{max-width: 700px}
	#contacts .tab{display: none;}
	#contacts .tab.tab1{display: block;}





.filters__tabs{padding-bottom: 30px;}
	.filters__tabs.flex{justify-content: flex-start;}
	.filters__tabs a{margin-right: 15px; width: auto; height: 50px; line-height: 48px; box-sizing: border-box; padding: 0 20px; color: #000; border: 1px solid #EDC126; font-weight: 700;}
		.filters__tabs a.active,.filters__tabs a:hover{color: #fff; background: #EDC126;}





#article{margin: 0 0 50px;}
#breadcrumbs{margin: 140px 0 20px;}
#breadcrumbs a{color: #000; font-weight: 500; border-bottom: 1px solid transparent;}
	#breadcrumbs a:hover{border-color: #000}





footer{background: #000; color: #fff; padding: 30px 0;}
	footer a{color: #f8c301; border-bottom: 1px solid #f8c301}
		footer a:hover{border-color: transparent; color: #fff;}











.bt{margin-bottom: 50px; text-transform: uppercase; color: #000; font-weight: 700; font-size: 34px; position: relative;}
	.bt:after{position: absolute; bottom: -15px; left: 0; width: 80px; height: 4px; content: ''; background: #f8c301}







#activity .swiper-button-next, #activity .swiper-button-prev{width: 46px; height: 46px; background: transparent; box-sizing: border-box; top: calc(100% - 26px); margin-top: 0; transition: all 0.25s ease-out; display: flex; align-items: center; justify-content: center; border: 2px solid #000;}
#activity .swiper-button-next:hover, #activity .swiper-button-prev:hover{background: #000}
#activity .swiper-button-next:hover svg path, #activity .swiper-button-prev:hover svg path{stroke: #fff;}
#activity .swiper-button-next{right: calc(100% - 160px)}



.swiper-button-prev svg,.swiper-button-next svg{width: 14px!important;}

.swiper-button-prev{left: 8px;}
.swiper-button-next{right: 8px;}
.swiper-button-next:after, .swiper-button-prev:after{display: none;}

.swiper-scrollbar.swiper-scrollbar-horizontal{opacity: 1!important; max-width: 400px; left: calc(50% - 200px)!important}
.swiper-scrollbar-drag{background: #EDC126!important}



.form input[type="text"],.form input[type="email"],.form input[type="tel"],.form input[type="number"],.form textarea,.form select{width: 100%; max-width: 100%; height: 40px; margin-bottom: 10px; background: transparent; padding: 0 20px; border: 1px solid #222; font-size: 15px}
.form textarea{resize: none; height: 100px; padding: 15px 20px 0; max-width: 100%;}
.form select,.form .col{width: 100%; max-width: 100%;}
.form .label{font-size: 16px!important;}
.form .flex p{display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; width: 100%;}
.form .flex p span{width: 48%;}
.form .flex .col p span{max-width: 100%; width: 100%;}
.form .flex .col p span[data-name='y-message']{max-width: 100%; width: 100%;}
.wpcf7-not-valid-tip{display: block; margin-bottom: 10px; font-size: 12px!important; max-width: 100%!important; width: 100%!important; position: relative; top: -3px;}
.wpcf7-response-output{margin: 20px 0 0!important}
.tab2 p span{max-width: 100%!important; width: 100%!important}


label.checkbox{display: block; cursor: pointer; position: relative; padding: 0 0 0 25px; margin: 7px 0 24px; cursor: pointer; font-size: 14px; font-family: 'Arial', sans-serif;}
label.checkbox:after{position: absolute; top: calc(50% - 7px); left: 0; width: 14px; height: 14px; box-sizing: border-box; border: 1px solid #B2B2B2; content: ''; border-radius: 2px; background: #3A74E4;}
label.checkbox i{font-style: normal;}
label.checkbox i:after{position: absolute; top: calc(50% - 7px); left: 0px; width: 14px; height: 14px; content: ''; background: url("../img/check.svg") 50% 50% no-repeat; box-sizing: border-box; display: none; border-radius: 5px; z-index: 2;}
label.checkbox input:checked + i:after{display: block;}


.box__modal{display: none; font-family: 'Montserrat', sans-serif; background: #fff!important; max-width: calc(100% - 30px)!important; box-sizing: border-box!important; width: 1300px!important; padding: 200px 150px 130px 40px!important; border-radius: 0;}
	.box__modal .logo{position: absolute; top: 40px; left: 40px;}
	.box__modal .form{max-width: 384px;}
	.box__modal .flex{justify-content: end;}
	.box__modal .bt{margin-bottom: 24px; font-size: 34px;}
	.box__modal .bt strong{color: #EDC126}

	.fancybox__content>.f-button.is-close-btn{top: 40px!important; right: 40px!important; background: url("../img/close.svg") 50% 50% no-repeat!important;}
	.fancybox__content>.f-button.is-close-btn svg{display: none!important;}


#privacy{padding: 40px!important;}

.content{line-height: 1.5;}
.content p{margin-bottom: 20px;}
.content h1{margin-bottom: 20px; font-size: 32px; font-weight: 700;}
.content h2,.content h3,.content h4,.content h5,.content h6{margin-bottom: 15px; font-size: 24px; font-weight: 700;}
.content h3{font-size: 20px;}
.content h4,.content h5,.content h6{font-size: 18px;}
.content a{color: #EDC126; border-bottom: 1px solid #EDC126}
	.content a:hover{border-color: transparent;}
.content img{width: 100%; height: auto;}
.content .date{opacity: 0.7; margin-bottom: 20px}



.select{width: 100%; font-size: 18px; font-family: 'Montserrat', sans-serif; height: 50px; cursor: pointer; box-sizing: border-box; border: 1px solid #000; padding: 0 40px 0 24px; position: relative; display: flex; align-items: center; justify-content: flex-start;}
	.select:after{width: 20px; height: 10px; position: absolute; top: calc(50% - 5px); right: 25px; content: ''; background: url("../img/arr.svg") 50% 50% no-repeat; transform: rotate(180deg);}
	.select.open:after{transform: rotate(0deg);}
	.select .current{position: relative;}
	.select ul{position: absolute; top: 100%; display: none; left: -1px; width: calc(100% + 2px); z-index: 20; background: #EDC126; border: 1px solid #000; border-top: none;}
	.select ul li{padding: 10px 24px; font-size: 14px; border-top: 1px solid #000; cursor: pointer; transition: all 0.15s;}
		.select ul li:hover{color: #fff; background: #000;}

.hidden{display: none;}



.flex{display: flex; justify-content: space-between; flex-wrap: wrap;}
.grid{display: grid; grid-template-columns: repeat(3,1fr); gap: 24px;}




.clearfix{clear: both;}
.center{display: inline-block; width: 100%; text-align: center;}


a, svg, svg path{text-decoration: none; transition: all 0.25s ease-out;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
	a:hover{transition: all 0.25s ease-out;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
a:focus{outline: none;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}

div,img{display: block;-webkit-tap-highlight-color: rgba(0, 0, 0, 0); height: auto;}
img{max-width: 100%;}


.btn{display: inline-block; font-family: 'Montserrat', sans-serif; text-align: center; cursor: pointer; border: none; transition: all 0.25s ease-out; box-sizing: border-box;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
	.btn:hover{transition: all 0.25s ease-out;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}




.btn-yellow{width: 282px; height: 50px; display: flex; align-items: center; justify-content: space-between; padding: 0 17px 0 25px; background: #EDC126; text-transform: uppercase; color: #000; font-weight: 700; font-size: 14px;}
	.btn-yellow:hover svg{transform: rotate(-90deg);}



.btn-black{width: 100%; height: 50px; display: flex; align-items: center; justify-content: space-between; padding: 0 17px 0 25px; background: #000; text-transform: uppercase; color: #fff; font-weight: 700; font-size: 14px;}
	.btn-black:hover svg{transform: rotate(-90deg);}






#navigation{position: fixed; display: none; top: 0; right: 0; width: 100%; height: 100%; box-sizing: border-box; z-index: 199; padding: 90px 15px 20px; overflow-y: auto; background: #000}
#navigation li{margin-bottom: 24px; font-family: 'Arial', sans-serif;}
#navigation li a{color: #fff; font-size: 18px; font-weight: 700;}
#navigation .btn{width: 100%; margin-top: 70px}
#navigation p{margin-bottom: 7px;}
#navigation p.email{padding-top: 30px}
#navigation p a{color: #f8c301;}





input,textarea,select,button{-webkit-appearance: none; box-sizing: border-box; font-family: 'Montserrat', sans-serif;}

/*responsive*/




@media screen and (max-width: 1220px){
	.container{padding: 0 15px}
	header nav,header .callback{display: none;}
	header .pull{display: block; position: relative;}
	header .pull svg line{stroke: #000}
	header .pull:after{opacity: 0; transition: all 0.15s; background: url("../img/close.svg") 50% 50% no-repeat; position: absolute; top: 0; left: 0; width: 100%; height: 100%; content: ''}
	header.f-nav .pull:after{background: url("../img/closew.svg") 50% 50% no-repeat;}
	header .pull.open:after{opacity: 1}
	header .pull.open svg{opacity: 0}
	header.f-nav .pull svg line{stroke: #fff}
	header.f-nav .flex{justify-content: end;}
	header{position: fixed; z-index: 200;}
	header.f-nav{background: #000;}



	#services .item{width: 48%!important; height: 315px}
	#services .item .image img{height: 315px; object-fit: cover;}
	#services .item .inn{bottom: 55px}


	#about .flex{justify-content: flex-start;}
	#about .text{max-width: 100%;}
	#about .image{width: 100%; margin-bottom: 30px}
	.swiper-scrollbar.swiper-scrollbar-horizontal{width: 250px!important; left: calc(50% - 125px)!important}


	#video{min-height: 350px}


	.grid{grid-template-columns: repeat(2,1fr);}


	#contacts .form{max-width: 100%; width: 100%; order: 0}
	#contacts .data{max-width: 100%; width: 100%; order: 1; padding-top: 50px}
	#contacts .data .flex{justify-content: flex-start;}
	#contacts .data .flex a{margin-right: 10px}


	footer .col{max-width: 300px}


	.box__modal{padding: 60px 15px 325px!important}
	.box__modal .logo{display: none;}
	.box__modal .form{padding: 0}
	.fancybox__content>.f-button.is-close-btn{top: 15px!important; right: 15px!important}


	.box__modal,#privacy{padding: 60px 15px 325px!important; background-size: auto 280px!important; background-position: 0 100%!important}
	#privacy{padding-bottom: 20px!important}
	.box__modal .form{max-width: 100%; width: 100%;}
}


@media screen and (max-width: 767px){
	.bt,.box__modal .bt{margin-bottom: 40px; font-size: 26px;}
	.box__modal .bt{margin-bottom: 20px; font-size: 20px}


	header .logo{max-width: 130px}


	#promo{margin-top: 65px}
	#promo .text{padding: 100px 0}
	#promo .text h1{font-size: 24px; line-height: 1.2;}
	#promo .text p{font-size: 14px; padding: 32px 0}
	#promo .text .btn{width: 100%;}
	#promo .advantages{padding-left: 15px; padding-right: 15px;}
	#promo .advantages .data .item{width: 32%;}


	#services{padding: 50px 0 0; margin-top: 180px}
	#services .item{width: 100%!important}
	#services .item .data .title{position: absolute;}
	#services .item .data .btn{width: 100%;}
	#services .item:nth-child(4){height: 450px}
	#services .item:nth-child(4) .image,#services .item:nth-child(4) .image img{height: 450px}


	#about{padding: 60px 0 20px}
	#about .text{font-size: 18px; margin-bottom: 15px;}
	#about .image img{width: 100%;}
	#about .flex .item{background-size: 70px; height: 85px; margin-bottom: 30px!important;}

	.list__gallery{column-count: 2; gap: 15px}
	.list__gallery a{margin-bottom: 15px;}

	.grid{grid-template-columns: repeat(1,1fr);}
	.form input[type="text"], .form input[type="email"], .form input[type="tel"], .form input[type="number"], .form textarea, .form select{max-width: 100%;}

	#action .data{padding: 25px 15px}
	#action .data .bt{font-size: 14px;}
	#action .data a{width: 40px; height: 40px;}
	#action .data a svg{width: 20px;}


	#projects{margin-top: -60px; padding: 130px 0 120px}
	#projects .swiper-slide{width: 255px}
	#projects .list__projects{width: calc(100% + 30px); left: -15px; box-sizing: border-box;}
	#projects .swiper{padding: 0 15px}


	#arenda{padding: 130px 0 120px}
	#arenda .swiper-slide{width: 255px}
	#arenda .list__arenda{width: calc(100% + 30px); left: -15px; box-sizing: border-box;}
	#arenda .swiper{padding: 0 15px}
	#arenda .btn{max-width: 100%; font-size: 12px;}
	.swiper-scrollbar.swiper-scrollbar-horizontal{display: none!important;}


	#consultation{padding: 60px 0 275px}
	#consultation .bt{font-size: 26px;}
	#consultation:after{top: calc(100% - 240px)}


	#contacts{padding: 60px 0 10px}
	#contacts .text .item{width: 100%;}
	#contacts .text .item:first-child{margin-bottom: 30px}
	#contacts .socials{padding: 50px 0; justify-content: center;}
	#contacts .socials a{margin: 0 10px 0 0}


	.form .flex p span{width: 100%; max-width: 100%;}


	.filters__tabs.flex{justify-content: space-between;}
	.filters__tabs a{width: 48%; margin: 0; padding: 0; font-size: 14px;}


	.content h1{font-size: 26px; line-height: 1.3;}


	#breadcrumbs{margin: 100px 0 20px;}


	footer{font-size: 16px;}
	footer .flex{justify-content: center; text-align: center;}
	footer p{margin: 5px 0;}
}

/*responsive*/