/* плавное изменение прозрачности placeholder-а при фокусе */
input[type="text"]::-webkit-input-placeholder {opacity: 1; transition: opacity 0.3s ease;}
input[type="text"]::-moz-placeholder {opacity: 1; transition: opacity 0.3s ease;}
input[type="text"]:-moz-placeholder {opacity: 1; transition: opacity 0.3s ease;}
input[type="text"]:-ms-input-placeholder {opacity: 1; transition: opacity 0.3s ease;}
input[type="text"]:focus::-webkit-input-placeholder {opacity: 0; transition: opacity 0.3s ease;}
input[type="text"]:focus::-moz-placeholder {opacity: 0; transition: opacity 0.3s ease;}
input[type="text"]:focus:-moz-placeholder {opacity: 0; transition: opacity 0.3s ease;}
input[type="text"]:focus:-ms-input-placeholder {opacity: 0; transition: opacity 0.3s ease;}

body {
	margin: 0;
	color: #262626;
	font-family: 'Geometria';
	overflow-y: visible!important;
    padding-right: 0px!important;
}
:focus {outline: none}
.nopadding {padding: 0 !important}
.nomargin {margin: 0 !important}
.text-white {color: #fff}
.display-flex {
	display: flex;
	align-items: center;
	padding: 8px 0;
}

/* MENU */
.main_menu {
	margin: 17px 10px 0 0;
}

.main_menu li {
	float: left;
}

.main_menu li a {
	color: #fff;
	font-size: 12px;
	font-family: 'Geometria-Bold', sans-serif;
	text-transform: uppercase;
	transition: .5s;
	padding: 0;
	margin-left: 55px;
}

.main_menu li:first-child a {
	margin-left: 0;
}

.main_menu li a:hover {
	color: #ffe700;
	background-color: initial;
	transition: .5s;
}
.main_menu li a:focus{
	background-color: transparent;
	outline: none;
}
.vk_ico,
.inst_ico{
	width: 30px;
	height: 30px;
}
.vk_ico{
	background: url('../img/vk_ico.png') center center no-repeat;
}
.inst_ico{
	background: url('../img/instagram_ico.png') center center no-repeat;
}
.navbar-toggle{
	background: #ffe700;
}
.navbar-toggle:hover{
	background: #fff;
}
.navbar-toggle .icon-bar{
	background: #000;
}
/* END MENU */


/* MODAL WINDOW */
.modal-body input,
.modal-body textarea {
	width: 100%;
	margin-bottom: 20px;
}

.modal-footer input {
	width: 100%;	
}
/* END MODAL WINDOW */


/* HEADER */
header {
	padding: 15px 0;
	background-color: transparent;
}

header .main_menu li a {
	margin-left: 30px;
}

header .main_menu li:first-child a {
	margin-left: initial;
}

.main_logo {
	float: left;
	margin-top: 18px;
	/*margin: 23px 50px 23px 15px;*/
}


.soc_ico:hover {
	opacity: .6;
}
.social_icons{
	margin-top: 15px;
	padding-left: 5px;
	padding-right: 5px;
}

.header_phone {
	float: right;	
	text-align: right;
	font-size: 18px;
	font-family: 'Geometria-Bold', sans-serif;
}

.header_phone a {
	color: #262626;
	transition: .5s;
}

.header_phone a:hover {
	opacity: .6;
	text-decoration: none;
}

.open-call-modal {
    background-color: #ffe700;
}
.top_contacts_info{
    margin-top:-37px;
    float:right;
}
/* END HEADER */


/* CONTENT */

h1 {
	font-size: 89px;
	padding-left: 15px;
	border-left: 6px solid #ffe700;
	color: #fff;	
}

.subtitle_h1 {
	color: #ffe700;
	letter-spacing: 10px;
	font-size: 22px;
	font-family: 'Geometria-Bold', sans-serif;
    margin: 0 0 10px;
}

#main_block {
	padding-bottom: 260px;
	color: #e5e5e5;
	font-size: 18px;
	background-image: url('../img/main_bg.jpg');
	background-position: center bottom;
	background-repeat: no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
}

#main_block .btn-y{
	margin-top: 25px;
	margin-bottom: 50px;
}
.btn-y{
	background: #ffe700;
	border: 1px solid #ffe700;
	border-radius: 5px;
	color: #000;
	font-size: 14px;
	font-family: 'Geometria-Bold', sans-serif;
	text-transform: uppercase;
	padding: 12px 35px;
}

#company_block {
	padding-bottom: 30px;
	background-image: url('../img/company_bg.jpg');
	background-position: center center;
	background-repeat: no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
}

#company_block .row {
	width: 760px;
	margin: 0 auto;
}

.company_ico {
	margin-bottom: 60px;
}

.company_ico .head {
	color: #ffe700;
	font-size: 18px;
	font-family: 'Geometria-Bold', sans-serif;
}

.company_ico .body {
	color: #fff;
	font-size: 12px;
}

#work_block h2 {
	margin-bottom: 30px;
}
#work_block #map{
	width: 100%;
	height: 500px;
	margin-bottom: 35px;

-moz-border-radius: 14px 14px 14px 14px; /* Firefox */
-webkit-border-radius: 14px 14px 14px 14px; /* Safari, Chrome */
-khtml-border-radius: 14px 14px 14px 14px; /* KHTML */
border-radius: 14px 14px 14px 14px; /* CSS3 */

overflow: hidden;

position: relative;

/* chrome bug fix */
-webkit-mask-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC);

}

.panel_question h4 a {
    padding: 40px 70px 40px 40px;
}

#map  .popover {
    display: block;
}
#map .popover .close {
    position: absolute;
    right: 5px;
    top: 1px;
}

.map-block{
}

.subtitle {
	font-size: 16px;
	margin-bottom: 25px;
}

h2 {
	padding-left: 15px;
	margin: 80px 0;
	font-size: 34px;
	border-left: 6px solid #ffe700;
}

h2 span {
	font-family: 'Geometria-Bold', sans-serif;
}

.block_img_gallery div {
	border-radius: 10px;
	height: 180px;
	margin-bottom: 30px;
	background-position: center center;
	background-repeat: no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
}

.block_img_gallery div a {
	display: block;
	height: 100%;
}

.block_img_gallery.col-sm-6 div {
	height: 390px;
}

#calc_block {
	padding-bottom: 160px;
	min-height: 550px;
	background-image: url('../img/calc_bg.jpg');
	background-position: center bottom;
	background-repeat: no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
}

.form_block {
	position: relative;
	padding: 40px 30px;
	border-radius: 10px;
	background-color: #ffe700;
}

#calc_block .form_block:after {
	content: "";
	z-index: 5;
	position: absolute;
	left: 95%;
	top: 40%;
	width: 250px;
	height: 326px;
	background-image: url('../img/calc.png');
}
.calc_form_input .glyphicon{
position: absolute;
z-index: 999;
top: 23px;
pointer-events: none;
left: 15px;
color: #b3b3b3!important;
}
.form_block_head h3 {
	font-size: 26px;
	font-family: 'Geometria-Bold', sans-serif;
}

.form_block_head p {
	font-size: 16px;
	margin-bottom: 30px;
}

.form_block_body input[type="text"] {
	width: 100%;
	padding: 20px 40px;
	border: 1px solid #fff;
	border-radius: 10px;
}

.calc_form_input {
	position: relative;
	margin-bottom: 20px;
}

label.error{
	position: absolute;
    bottom: -25px;
    left: 0;
}
.calc_form_margin{
	margin-bottom: 15px;
    height: 90px;
}
.form_block_body input[type="text"].error{
	border: 1px solid red;
}

.form_block_body input[type="submit"] {
	width: 100%;
	padding: 20px;
	border: 2px solid #000;
	border-radius: 10px;
	font-size: 16px;
	font-family: 'Geometria-Bold', sans-serif;
	background-color: transparent;
	transition-duration: .5s;

}

.form_block_body input[type="submit"]:hover {
	background-color: #fff;
}

.btn-bordered {
	font: 11px 'Geometria-Bold', sans-serif;
	color: #000;
	border: 1px solid #000;
	border-radius: 16px;
	padding: 6px 16px;
	text-transform: uppercase;
	float: right;
	margin-top: 8px;
	transition-duration: .5s;
}

.btn-bordered:hover,
.btn-bordered:focus,
.btn-bordered:active {
	color: #000;
	text-decoration: none;
	outline: none;
}
.btn-bordered:hover{
	background-color: #fff;
}

#modal-call .modal-header {
	border: none;
}

#modal-call .modal-dialog {
	max-width: 450px;
}

button.close {
	font-size: 32px;
}

.btn-more {
	font: 11px 'Geometria-Bold', sans-serif;
	border-radius: 16px;
	padding: 6px 24px;
	color: #000;
	background-color: #ffe700;
	text-transform: uppercase;
}

.btn-more:hover,
.btn-more:focus,
.btn-more:active {
	color: #555;
	text-decoration: none;
}

.btn-cnt {
	text-align: center;
}

/* END CONTENT */


/* FOOTER */
footer {
	color: #8f8f8f;
	font-size: 12px;
	background-color: #262626;
}

.footer_phone {
	text-align: right;
	font-size: 18px;
	font-family: 'Geometria-Bold', sans-serif;
}

.footer_phone a {
	color: #fff;
	transition: .5s;
}

.call_phone div, 
.main-pr-block h1 div, 
.main-pr-block p div,
.main_logo a div,
.calc_block h2 div,
.work_block h2 div,
.work_block .subtitle div{
    display:inline-block;
}

.footer_phone a:hover {
	color: #ffe700;
	text-decoration: none;
}

.before_footer {
	border-bottom: 1px solid #4f4f4f;
}

.footer_right {
	color: #fff;
}

.footer_left {text-align:left;}
.footer_center {text-align:center;}
.footer_right {text-align:right; padding-right: 22px;}

a.link_dev {
	color: #ffe700;
	text-decoration: underline;
}
a.link_dev:hover {
	color: #ffe700;
	text-decoration: none;
}
/* END FOOTER */


/* FORM */
.pr_form_field {
    height: 55px;
    text-align: center;
    margin-bottom: 0px;
}
.pr_form_field label {
    margin-bottom: 0px;
}
#modal-call .close {
    position: absolute;
    right: 15px;
    top: 10px;
}
/* END FORM */

/*__________________Медиа запросы___*/

@media (max-width: 1199px) { /*_0-md_*/
	#company_block .row {
		width: auto;
		margin: inherit;
	}
	.header_phone{
		font-size: 14px;
	}
	.main_logo{
		margin-top:20px;
	}
	#main_block{
		padding-bottom: 300px;
	}
    .top_contacts_info{
        margin-top:0px;
        float:none;
    }
	.vk_ico{
        background: url('../img/vk_ico_yellow.png') center center no-repeat;
	}
	.inst_ico{
		background: url('../img/instagram_ico_yellow.png') center center no-repeat;
	}
	.header_phone{
		margin-top: 20px;
	}
	.social_icons{
		margin-top: 27px;
        padding-left:0px;
	}	
    .soc_ico{
		float: left!important;
		margin-right: 10px;
	}
	.main-pr-block{
		background: rgba(0, 0, 0, 0.5);
	}
}

@media (max-width: 991px) { /*_0-sm_*/
	.before_footer .display-flex {
		display: initial;
	}

	.before_footer .main_menu li a {
		margin-left: 45px;
	}
	.before_footer .main_menu li:first-child a {
		margin-left: 0;
	}

	.footer_phone {
		text-align: center;
	}
	header .main_menu li a,
	header .main_menu li:first-child a{
		margin-left: 10px;
		margin-right: 10px;
	}
    .header_phone a{
		color: #ffe700;
	}
	.before_footer .main_menu li a{
		margin-left: 42px;		
	}
	.footer_phone{
		margin-top: 15px;
	}
}

@media (max-width: 767px) { /*_0-xs_*/
	.display-flex {
		display: block;
	}
	.footer_left,
	.footer_center,
	.footer_right {
		text-align:center;
		margin-bottom: 20px;
	}
    .footer_right {
		padding-right:0px;
        padding-bottom:40px;
	}

	.form_block:after {
		display: none;
	}

	.panel_question h4 a {
        padding: 20px 55px 20px 10px;
	}
    .panel_question h4 a:after {
        right: 10px;
    }
    

	.panel_question .panel-body {
		padding: 20px;
	}

	h1 {
		font-size: 51px;
	}

	.subtitle_h1 {
		letter-spacing: 6px;
		font-size: 14px;
	}

	h2 {
		margin: 40px 0;
	}

	.jumbotron_block {
		padding: 0;
	}

	#main_block {
		background-position: center left;
		padding-bottom: 30px;
	}
	.main_menu li{
		float: none;
		text-align: right;
	}

	header .main_menu li a,
	header .main_menu li:first-child a{
		margin-left: 0px;
		margin-right: 0px;
	}
    header .main_menu li a {
        padding-top:10px;
        padding-bottom:10px;
    }
    header .main_menu {
        padding-bottom:10px;
    }
	.mobile-menu{
		padding: 0px;
	}
	.mobile-menu ul{
		padding: 0px;
		margin-right: 0px;
	}
	.main_logo{
		margin-left: 15px;
	}
    .modal-dialog {
        margin:0 auto;
    }
}

/* 404 ERRR */
.content_404_error {
	position: relative;
	overflow: hidden;
	font-size: 550px;
	font-family: 'Arial', sans-serif;
	line-height: 480px;
	color: #c6c8cb;
}

.content_404_error_text {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	color: #5c5e69;
	font-size: 88px;
	text-shadow: 0px -4px 0px #fff, 4px 4px 0px #fff, -4px 4px 0px #fff, 4px -4px 0px #fff, -4px -4px 0px #fff;
}

.content_404_error_detail {
	margin-bottom: 70px;
	font-size: 16px;
}

.content_404_error_links a,
.content_404_error_links a:focus {
	display: inline-block;
	margin: 0 15px 20px 15px;
	padding: 20px 45px;
	border-radius: 10px;
	color: #fff;
	text-decoration: none;
	background-color: #62646e;
}

.content_404_error_links a:hover {
	color: #fff;
	background-color: #c6c8cb;
}

@media (max-width: 1199px) { /*_0-md_*/

	.content_404_error {
		font-size: 460px;
		font-family: 'Arial', sans-serif;
		line-height: 400px;
	}

	.content_404_error_text {
		font-size: 70px;
	}
}


@media (max-width: 767px) { /*_0-xs_*/
	.content_404_error {
		font-size: 200px;
		font-family: 'Arial', sans-serif;
		line-height: 180px;
	}
	.content_404_error_text {
		font-size: 30px;
	}
}

/* END 404 ERRR */