body{
	margin: 0;
	font-family: 'Montserrat', sans-serif;

	font-size: 15px;
	line-height: 1.6;

	background: #6b706e;

	overflow-x:hidden;
}

*,
*:after,
*:before {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	padding: 0;
	margin: 0;
	transition: .5s ease-in-out; 
}

h1,h2,h3,h4,h5,h6{
	margin: 0;
}

/*=====================CONTAINER==============================*/

.container{
	width: 100%;
	max-width: 1230px;
	margin: 0 auto;

	padding: 0 15px;
}

.template{

	height: auto;
	width: 100%;
	max-width: 1250px;

	margin: 0 auto;
}

/*=====================HEADER==============================*/

.header{
	position: absolute;
	top: 30px;
	left: 0;
	right: 0;
	z-index: 100;
}

.header_inner.fixed{
	

	background: transparent;

	position: fixed;
	top: 0;
	left: 0;
	right: 0;

	box-shadow: 0 3px 10px rgba(0, 0, 0, .2);	

	transform: translate3d(0, 0, 0);
}

.header_inner.active{
	background: transparent;
}

.nav{
	display: flex;
	justify-content: space-around;
	

	border: 1px #999 solid;
	border-radius: 7px;
	
	opacity: .7;

	background: #fff;
	height: 40px;

	box-shadow: 10px 5px 7px #333;
}

.nav_toggle{
	width: 30px;

	position: absolute;
	top: 24px;
	right: 24px;
	z-index: 1;
	display: none;

	font-size: 0px;
	color: transparent;

	border: 0;
	background: none;
	cursor: pointer;

	padding: 10px 0;
}

.nav_toggle_item{
	display: block;
	width: 100%;
	height: 3px;

	background-color: #333;

	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;

	margin: auto;

	transition: background .2s linear;
}

.nav_toggle_item:before,
.nav_toggle_item:after {
	content: "";
	width: 100%;
	height: 3px;

	background-color: #333;

	position: absolute;
	left: 0;
	z-index: 1;

	transition: transform .2s linear;
}

.nav_toggle_item:before {
	top: -8px;
}

.nav_toggle_item:after {
	bottom: -8px;
}

.nav_toggle.active .nav_toggle_item{
	background: none;
}

.nav_toggle.active .nav_toggle_item:before {
	transform-origin: left top;
	transform: rotate(45deg) translate3d(0px, -2px, 0);
}

.nav_toggle.active .nav_toggle_item:after {
	transform-origin: left bottom;
	transform: rotate(-45deg) translate3d(0px, 3px, 0);
}


.nav_link{
	margin-top: 4px;
	

	font-size: 18px;
	text-decoration: none;

	color: #222;

	transform: color .2s linear, opacity .2s linear;
}

.nav_link:hover {
	color: #000;
	opacity: 1;
}

.active{
	top:10%;
	font-size: 20px;
	color: #9e9e9e;
}

/*=====================INTRO==================================*/

.intro{
	width: 100%;
	height: 120vh;

	background: url(../img/slide/bg.jpg) center no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
}

.intro_social{
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	text-align: center;

	width: 90px;
	height: 90px; /*height: 210px;*/
	
	border: 1px #666 solid;
	border-radius: 7px;
	
	opacity: .9;
	background: #666;

	position: absolute;
	top: 150px;
	right: 0;
	z-index: 50;

	box-shadow: -10px 5px 7px #333;
}

.intro_social:hover {
	right: 10px;
}

.social_link{
	text-decoration: none;
	
	opacity: .6;
	transform: opacity .1s linear;
}

.social_link:hover {
	opacity: 1;
}

.intro_contact{
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	text-align: center;

	width: 450px;
	height: 130px;
	
	border: 1px #666 solid;
	border-radius: 7px;
	
	opacity: .9;
	background: #666;

	position: absolute;
	top: 150px;
	left: 0;
	z-index: 50;

	box-shadow: -10px 5px 7px #333;
}

.intro_contact:hover {
	left: 10px;
}

.intro_contact_suptitle{
	font-size: 40px;

	color: #f0f0f0;

	font-weight: 700;
}

.intro_contact_number{
	font-size: 30px;

	text-decoration: none;
	opacity: .7;
	color: #f0f0f0;

	transform: opacity .1s linear;
}

.intro_contact_number:hover {
	opacity: 1;
}

.banner{
	width: 100%;

}

/*=====================SECTION==================================*/

.section{
	padding: 40px 0;
}

.section_header{
	margin: 0 auto 15px;
	
	text-align: center;

	font-size: 20px;
	
	width: 100%;
	max-width: 800px;
	height: 100px;
}

.section_title{
	border: 1px #444 solid;
	border-radius: 7px;

	color: #f0f0f0;

	background: #444;
	
	box-shadow: 3px 3px 7px #333;
}

/*=====================NEWS==================================*/

.news_outside{
	border: 1px #BBBBBB solid;
	border-radius: 1px;
	background: #BBBBBB;
}

.news{
	display: flex;
	justify-content: space-between;
}

.news_box{
	display: flex;
	flex-direction: column;
	justify-content: space-between;

	width: 33.3%;
	border: 1px #e5e5e5 solid;
	border-radius: 7px;
	background: #e5e5e5;
	
	margin: 10px;
	padding: 7px;
	text-align: center;
}

.news_img img{
	margin: 5px;
	width: 80%;
	border-radius: 10px;
}

/*=====================OURWORKS==================================*/

.ourworks{
	display: flex;
	justify-content: space-between;

	margin-bottom: 40px;
}

.ourworks_item{
	width: 300px;
	height: 300px;

	border-radius: 7px;
	
	background: #333 ;

	position: relative;
}

.ourworks_item:hover .ourworks_pic{
	transform: translate3d(-10px, -10px, 0);
}

.ourworks_item:hover .ourworks_pic img{
	opacity: .1;
}

.ourworks_item:hover .ourworks_text {
	opacity: 1;
}

.ourworks_item:hover .ourworks_suptext {
	opacity: 1;
}

.ourworks_item:hover .ourworks_icon {
	opacity: 1;
}

.ourworks_pic{
	background: linear-gradient(to bottom, #686667 , #99B1D3);

	border-radius: 7px;

	transition: transform .2s linear
}

.ourworks_pic img{
	display: block;
	border-radius: 7px;
	transition: opacity .1s linear;
}

.ourworks_img{
	width: 300px;
}

.ourworks_text{
	width: 100%;

	color: #f0f0f0;
	font-size: 18px;
	font-weight: 700;
	text-align: center;

	text-decoration: none;

	opacity: 0;

	position: absolute;
	top: 60%;
	left: 0;
	z-index: 2;

	transform: translate3d(0, -50%, 0);

	transition: opacity .1s linear;
}

.ourworks_suptext{
	width: 100%;

	color: #f0f0f0;
	font-size: 23px;
	font-weight: 700;
	text-align: center;

	text-decoration: none;

	opacity: 0;

	position: absolute;
	top: 80%;
	left: 0;
	z-index: 2;

	transform: translate3d(0, -50%, 0);

	transition: opacity .1s linear;
}

.ourworks_icon{
	width: 40%;

	text-align: center;
	
	opacity: 0;

	position: absolute;
	top: 35%;
	left: 30%;
	right: 15%;
	z-index: 2;

	transform: translate3d(0, -50%, 0);

	transition: opacity .2s linear;
}

.modal_window{
	display: none;
	padding: 50px;
	max-width: 880px;

	border-radius: 20px;
}

.modal_window a img{
	width: 18%;
	border-radius: 15px;
}

/*=====================PRICE-LIST===============================*/

.price_list{
	border: 1px #BBBBBB solid;
	border-radius: 4px;
	background: #BBBBBB;
}

.price_list_img{
	display: none;
	width: 390px;
}

.price_list_title{
	display: flex;
	justify-content: space-between;

	border: 1px #99B1D3 solid;
	border-radius: 3px;
	background: #99B1D3;

	margin: 5px 10px;
}

.price_list_info_title{
	font-size: 18px;
	color: #f0f0f0;
}

.price_list_stroke{
	margin: 10px 10px;

	display: flex;
	flex-direction: row;
	justify-content: space-between;
	text-align: center;

	border: 1px #4F4A45 solid;
	border-radius: 3px;
	background: #4F4A45;
}

.price_list_info{
	margin: 0px 5px;
	font-size: 15px;
	color: #f0f0f0;
}

.price_list_bottom{
	max-width: 100%;
	width: 800px;

	text-align: center;

	margin: 20px auto;

	border: 1px #4F4A45 solid;
	border-radius: 10px;
	background: #4F4A45;
}

.price_list_bottom_text{
	font-size: 16px;
	font-weight: 700;
	color: #f0f0f0;
}

.price_list_bottom_text_next{
	font-size: 16px;
	font-weight: 700;
	color: #f0f0f0;
	margin: 5px auto;

	max-width: 100%;
	width: 680px;

	text-align: center;

	border: 1px #4F4A45 solid;
	border-radius: 7px;
	background: #4F4A45;	
}

/*=====================PARTNERS==============================*/

.partners_first{
	border: 1px #BBBBBB solid;
	background: #BBBBBB;
	border-radius: 10px;


}

.partners_title{
	font-size: 40px;

	text-align: center;

	color: #333;

}

.partners_img{
	text-align: center;
	
	margin: 20px 0;
}

.partners_img img{
	width: 80%;
}

.partners_all{
	display: flex;
	justify-content: space-between;
}

.partner{
	display: flex;
	flex-direction: column;
	justify-content: space-between;

	margin: 10px 0;

	width: 250px;
	height: 250px;

	border: 1px #BBBBBB solid;
	background: #BBBBBB;
	border-radius: 15px;

	position: relative;

	transition: opacity .1s linear;
}

.partner_suptitle{
	font-size: 20px;
	font-weight: 700;

	text-align: center;
}

.partner_text{
	border: 1px #4F4A45 solid;
	background: #4F4A45;
	border-radius: 5px;

	margin: 5px;
	padding: 0px 5px;

	color: #f0f0f0;
}

.partner_hidden{
	border-radius: 15px;

	background: linear-gradient(to bottom, #686667 , #99B1D3);

	transition: transform .2s linear;
}

.partner_bg{
	border-radius: 15px;
	background: #333;
}

.partner_outside:hover .partner{
	opacity: .1;
}

.partner_outside:hover .partner_hidden{
	transform: translate3d(-5px, -5px, 0);
}

.partner_outside:hover .partner_hidden_text{
	opacity: 1;
}

.partner_outside:hover .partner_hidden_icon{
	opacity: 1;
}


.partner_hidden_text{
	position: absolute;
	width: 100%;

	text-align: center;

	cursor: pointer;

	text-decoration: none;

	font-size: 18px;
	font-weight: 700;
	color: #f0f0f0;

	opacity: 0;

	top: 80%;
	left: 0;
	z-index: 3;

	transform: translate3d(0, -50%, 0);

	transition: opacity .2s linear;
}

.partner_hidden_icon{
	position: absolute;
	width: 100%;

	text-align: center;

	opacity: 0;

	top: 40%;
	left: 0;
	z-index: 3;

	transform: translate3d(0, -50%, 0);

	transition: opacity .2s linear;
}

/*=====================REVIEWS==============================*/

.reviews{
	display: flex;
	justify-content: space-between;

	margin: 20px 0;

}

.reviews_box{
	display: flex;
	flex-direction: column;
	justify-content: space-around;

	width: 550px;
	text-align: center;

	border: 1px #BBBBBB solid;
	background: #BBBBBB;
	border-radius: 15px;
}

.reviews_title{
	font-size: 20px;
	font-weight: 700;
}

.reviews_text{
	border: 1px #4F4A45 solid;
	background: #4F4A45;
	border-radius: 10px;

	color: #f0f0f0;

	margin: 5px;
}

.reviews_img img{
	width: 20%;
}

.reviews_comment{
	text-align: center;
	color: #dedede;
}

/*=====================MAP==============================*/

.map{
	text-align: center;
}

.map_inside{
	border: 3px #333 solid;
	border-radius: 15px;
	width:1200px;
	height:400px;
}

/*=====================CONTACTS==============================*/

.contacts{
	display: flex;
	justify-content: space-around;
}

.contacts_box{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.box{
	display: flex;
	flex-direction: column;
	justify-content: space-around;

	border: 1px #6C5F5B solid;
	background: #6C5F5B;
	border-radius: 15px;

	margin: 10px 0;

	text-align: center;
}

.box_line{
	display: flex;
	justify-content: space-between;
	
	
	border: 1px #6C5F5B solid;
	background: #6C5F5B;
	border-radius: 10px;

	margin: 5px;

	padding: 7px 7px 0 4px;

}

.box_line_text{
	font-size: 25px;

	color: #f0f0f0;	
}

.box_title{
	font-size: 30px;
	font-weight: 700;
	color: #333;

	padding: 5px;

	text-align: center;
}

.box_address{
	font-size: 25px;
	color: #333;

	margin: 0 5px;
}

.box_inside{
	border: 1px #BBBBBB solid;
	background: #BBBBBB;
	border-radius: 10px;

	margin: 5px;
}

.box_info{
	text-align: center;

	font-size: 18px;

	color: #f0f0f0;

	border: 1px #6C5F5B solid;
	background: #6C5F5B;
	border-radius: 15px;

	margin: 0 5px 5px 5px;
}

/*=====================FOOTER==============================*/

.footer{
	margin-top: 20px;

	border: 1px #333 solid;
	background: #333;

}

.footer_text{
	text-align: center;

	margin: 10px 0;

	color: #f0f0f0;
}

#designsailor{
	text-decoration: none;

	color: #99B1D3;
}

/*=====================MEDIA==============================*/

@media only screen and (min-device-width : 1025px) and (max-device-width : 1250px) {

	body{
		width: 1250px;


	}
	
	.map_inside{
	width: 1170px;
	height: 400px;
	}

	.container{
		width: 1170px;
	}

	.header{
		width: 100%;
	}

	.intro{
		width: 1250px;
		height: 100vh;
	}

	.nav_link:hover{
		color: #fff;
	}
	

	.ourworks{
		justify-content: space-around;
	}

	.ourworks_item{
		width: 200px;
		height: 200px;
	}

	.ourworks_img{
		width: 200px;
		height: 200px;
	}

	

	
	.partners_all{
		display: flex;
		flex-wrap: wrap;
		text-align: center;
	}

	


	.partner_outside{
		width: 22%;
		
	}
	
	.reviews_box{
		width: 350px;
	}

	.news_outside{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	}

	.news{
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.news_text{
		font-size: 15px;
	}

	.news_box{
		width: 97%;
		padding: 2px;
		text-align: center;
	}

	.news_img img{
		width: 50%;
		border-radius: 10px;
	}



	

}

@media only screen and (min-device-width : 831px) and (max-device-width : 1024px) {

	body{
		width: 1024px;
	}
	
	.map_inside{
	width: 994px;
	height: 400px;
	}

	.container{
		width: 994px;
	}

	.header{
		width: 1024px;
	}

	.intro{
		width: 1024px;
		height: 70vh;
	}

	.nav{
		

		display: flex;
		flex-direction: column;
		justify-content: space-around;

		width: 850px;
		height: auto;

		position: absolute;
		top: 50px;
		right: 60px;

		background: #fff;

		display: none;
	}

	.nav.active{
		display: block;
	}
	
	.nav_link{
		display: block;
		text-align: center;

		font-size: 30px;

	}

	.nav_link.active{
		display: block;
	}

	.ourworks{
		justify-content: space-around;
	}

	.ourworks_item{
		width: 200px;
		height: 200px;
	}

	.ourworks_img{
		width: 200px;
		height: 200px;
	}

	.nav_toggle{
		display: block;
	}

	.nav_link:hover{
		color: #999;
	}

	.partners_all{
		display: flex;
		flex-wrap: wrap;
		text-align: center;
	}

	


	.partner_outside{
		width: 25%;
		
	}
	
	.reviews_box{
		width: 350px;
	}

	.news_outside{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	}

	.news{
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.news_text{
		font-size: 14px;
	}

	.news_box{
		width: 97%;
		padding: 2px;
		text-align: center;
	}

	.news_img img{
		width: 40%;
		border-radius: 10px;
	}

	.intro_contact{

	width: 280px;
	height: 120px;

	position: absolute;
	top: 40px;
	left: 0;
	z-index: 50;
	}


	.intro_contact_suptitle{
		font-size: 35px;
	}

	.intro_contact_number{
		font-size: 25px;
	}

	.intro_social{

		width: 100px;
		height: 180px;

		position: absolute;
		top: 180px;
		left: 0;
	}

	.social_pic{
		width: 60px;
	}
	

}

@media only screen and (min-device-width : 769px) and (max-device-width : 830px) {

	body{
		width: 830px;
	}
	
	.map_inside{
	width: 800px;
	height: 400px;
	}

	.container{
		width: 800px;
	}

	.header{
		width: 830px;
	}

	.intro{
		width: 830px;
		height: 70vh;
	}

	.nav{
		

		display: flex;
		flex-direction: column;
		justify-content: space-around;

		width: 550px;
		height: auto;

		position: absolute;
		top: 50px;
		right: 60px;

		background: #fff;

		display: none;

		opacity: .9;
	}
	
	.nav_link{
		display: block;
		text-align: center;

		font-size: 30px;

	}

	.nav.active{
		display: block;
	}

	.ourworks{
		justify-content: space-around;
	}

	.ourworks_item{
		width: 200px;
		height: 200px;
	}

	.ourworks_img{
		width: 200px;
		height: 200px;
	}

	.nav_toggle{
		display: block;
	}

	.nav_link:hover{
		color: #999;
	}

	.partners_all{
		display: flex;
		flex-wrap: wrap;
		text-align: center;
	}

	.partner_outside:nth-child(3n) {
		margin-left: 265px;
	}


	.partner_outside{
		width: 32%;
		
	}
	
	.reviews_box{
		width: 350px;
	}

	.news_outside{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	}

	.news{
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.news_text{
		font-size: 12px;
	}

	.news_box{
		width: 95%;
		padding: 2px;
		text-align: center;
	}

	.news_img img{
		border-radius: 10px;
	}

	.intro_contact{

	width: 240px;
	height: 100px;

	position: absolute;
	top: 50px;
	left: 0;
	z-index: 50;
	}


	.intro_contact_suptitle{
		font-size: 30px;
	}

	.intro_contact_number{
		font-size: 20px;
	}

	.intro_social{

		width: 100px;
		height: 180px;

		position: absolute;
		top: 180px;
		left: 0;
	}

	.social_pic{
		width: 60px;
	}
	

}

@media only screen and (min-device-width : 426px) and (max-device-width : 768px) {

	body{
		width: 768px;
	}
	
	.map_inside{
	width: 738px;
	height: 400px;
	}

	.container{
		width: 738px;
	}

	.header{
		width: 768px;
	}

	.intro{
		width: 768px;
		height: 80vh;
	}

	.nav{
		

		display: flex;
		flex-direction: column;
		justify-content: space-around;

		width: 550px;
		height: auto;

		position: absolute;
		top: 50px;
		right: 60px;

		background: #fff;

		display: none;
	}

	.nav.active{
		display: block;
	}
	
	.nav_link{
		display: block;
		text-align: center;

		font-size: 30px;

	}

	.news_text{
		font-size: 12px;
	}

	.ourworks{
		justify-content: space-around;
	}

	.ourworks_item{
		width: 200px;
		height: 200px;
	}

	.ourworks_img{
		width: 200px;
		height: 200px;
	}

	.nav_toggle{
		display: block;
	}

	.nav_link:hover{
		color: #999;
	}

	.partners_all{
		display: flex;
		flex-wrap: wrap;
		text-align: center;
	}

	.partner_outside:nth-child(3n) {
		margin-left: 220px;
	}


	.partner_outside{
		width: 35%;
		
	}
	
	.reviews_box{
		width: 350px;
	}

	.news_outside{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	}

	.news{
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.news_text{
		font-size: 12px;
	}

	.news_box{
		width: 95%;
		padding: 2px;
		text-align: center;
	}

	.news_img img{
		border-radius: 10px;
	}

	.intro_contact{

	width: 240px;
	height: 100px;

	position: absolute;
	top: 50px;
	left: 0;
	z-index: 50;
	}


	.intro_contact_suptitle{
		font-size: 30px;
	}

	.intro_contact_number{
		font-size: 20px;
	}

	.intro_social{

		width: 100px;
		height: 180px;

		position: absolute;
		top: 200px;
		left: 0;
	}

	.social_pic{
		width: 60px;
	}
	

}
	
@media only screen and (min-device-width : 320px) and (max-device-width : 425px) {

	body{
		width: 425px;
	}
	
	.map_inside{
	width: 395px;
	height: 400px;
	}

	.container{
		width: 395px;
	}

	.header{
		width: 425px;
	}

	.intro{
		width: 425px;
		height: 40vh;
	}

	.intro_contact{

	width: 190px;
	height: 50px;

	position: absolute;
	top: 0px;
	left: 0;
	z-index: 50;
	}


	.intro_contact_suptitle{
		font-size: 20px;
	}

	.intro_contact_number{
		font-size: 10px;
	}

	.nav{
		

		display: flex;
		flex-direction: column;
		justify-content: space-around;

		width: 300px;
		height: auto;

		position: absolute;
		top: 50px;
		right: 60px;

		background: #fff;

		display: none;
	}

	.nav.active{
		display: block;
	}
	
	.nav_link{
		display: block;
		text-align: center;

		font-size: 15px;

	}

	.news_outside{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	}

	.news{
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.news_text{
		font-size: 8px;
	}

	.news_box{
		width: 95%;
		padding: 2px;
		text-align: center;
	}

	.news_img img{
		border-radius: 10px;
	}

	.ourworks{
		justify-content: space-around;
	}

	.ourworks_item{
		width: 120px;
		height: 120px;
	}

	.ourworks_img{
		width: 120px;
		height: 120px;
	}

	.ourworks_text{
		font-size: 10px;
	}

	.ourworks_suptext{
		font-size: 11px;
	}

	#modal1{
		height: 50vh;
	}

	#modal1 a img{
		width: 100px;
	}

	#modal2{
		height: 50vh;
	}

	#modal2 a img{
		width: 100px;
	}

	#modal3{
		height: 50vh;
	}

	#modal3 a img{
		width: 100px;
	}

	#modal4{
		height: 50vh;
	}

	#modal4 a img{
		width: 100px;
	}

	#modal5{
		height: 50vh;
	}

	#modal5 a img{
		width: 100px;
	}

	.nav_toggle{
		display: block;
	}

	.nav_link:hover{
		color: #999;
	}

	.partners_all{
		display: flex;
		flex-direction: column;
		justify-content: space-around;

		margin-left: 60px;
	}

	.partner_outside:nth-child(3n) {
		margin-left: 0px;
	}


	.partner_outside{
		width: 83%;
		
	}
	
	.reviews_box{
		width: 350px;
	}

	.section_header{
		max-width: 395px;
		height: 60px;

		margin: 0;
	}

	.section_title{
		font-size: 15px;
	}

	.price_list{
		display: none;
	}

	.price_list_img{
		display: block;

		padding-right: 21px;

	}
	
	.contacts{
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.reviews{
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.reviews_box{
		margin-bottom: 5px;
	}

	.intro_social{

		width: 40px;
		height: 100px;

		position: absolute;
		top: 90px;
		left: 0;
	}

	.social_pic{
		width: 30px;
	}

}
	