.gallery {
	margin-left: -15px ;
	margin-right: -15px ;
	margin-bottom: -30px ;
	margin: 0;
}

.gallery:after {
	content: '';
	display: table;
	clear: both;
}

.gallery .gallery-item {
	float: left;
	margin: 0 0 30px ;
	padding-left: 15px;
	padding-right: 15px;
	padding: 0;
	margin: 0;
	text-align: center;
	width: 33.33333333%;
}

.gallery-columns-2 .gallery-item {
	width: 50%;
}

.gallery-columns-3 .gallery-item{
	width: 33.33333333% ;
}

.gallery-columns-4 .gallery-item {
	width: 25%;
}

.gallery-columns-6 .gallery-item{
	width: 16.66666667%;
}

.gallery img {
	margin-bottom: 0 ;
	border: 0 ;
	width: 100%;
	height: auto;
}

.gallery .gallery-caption {
	font-size: 14px;
	margin: 10px 0 0 0;
}

.gallery dl, .gallery dt {
	margin: 0;
}

.gallery br+br {
	display: none;
}

@media only screen and (max-width : 768px) {
	.gallery .gallery-item {
		width: 50% ;
	}
}

@media only screen and (max-width : 480px) {
	.gallery .gallery-item {
		width: 100% ;
	}

	/*.wp-content .gallery {
		margin-bottom: 15px ;
	}

	.gallery img {
		margin-bottom: 15px ;
	}*/
}

img.aligncenter {
	margin: auto;
	display: block;
}

img.alignleft {
	float: left;
	margin-right: 30px;
}

img.alignright {
	float: right;
	margin-left: 30px;
}

img.size-large {
	width: 100%;
}

.wp-caption.aligncenter {
	margin: auto;
	margin-bottom: 30px;
	display: block;
}

.wp-caption.alignleft {
	float: left;
	margin-right: 30px;
}

.wp-caption.alignright {
	float: right;
	margin-left: 30px;
}

.wp-caption .wp-caption-text {
	font-size: 14px;
	text-align: center;
	margin: 10px 0 0;
}

.wp-caption {
	margin-bottom: 30px;
}

.full-width.wpb_single_image img {
	width: 100%;
}

.full-width.wpb_single_image .vc_single_image-wrapper, .full-width.wpb_single_image .vc_figure {
	display: block
}


/* forms */

form{
	margin-bottom: 30px;
	position: relative;
}

form p{
	margin: 0;
	padding: 0;
}

form br{
	display: none;
}

form textarea,
form input{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: block;
	font-size: 14px;
	width: 100%;
	border:1px solid #dedede;
	outline: none;
	padding: 10px 15px;
	margin-top: 5px;
	margin-bottom: 30px;
	font-weight: 400;
	color: #171717;
}

form textarea{
	height: 90px;
	resize: vertical;
	min-height: 90px;
}

form label{
	text-align: left;
	font-weight: 500;
	text-transform: uppercase;
	font-size: 12px;
	color: #878787;
	letter-spacing: .1em;
	display: block;
}

form input[type=submit]{
	max-width: 270px;
	font-weight: 500;
	text-transform: uppercase;
	font-size: 12px;
	color: #fff;
	letter-spacing: .1em;
	margin: 0 auto;
	margin: 0;

}



.law_checkbox_container {
	text-align: left;
	margin-bottom: 30px;
}

.law_checkbox_error {
	text-align: left;
	color: #f00;
	font-size: 11px;
	padding: 0 0 0 30px;
	letter-spacing: 0.1em;
	display: block;
}

.checkbox {
	vertical-align: top;
	margin: 0 3px 0 0;
	width: 17px;
	height: 17px;
}

.checkbox + label {
	cursor: pointer;
}

.checkbox:not(checked) {
	position: absolute;
	opacity: 0;
}
.checkbox:not(checked) + label {
	position: relative;
	padding: 3px 0 2px 30px;
	font-size: 14px;
	font-weight: 400;
	margin-right: 0;
	margin-bottom: 0;
	display: inline-block;
	font-size: 11px;
	text-transform: none;
	user-select: none;
}

.checkbox:not(checked) + label:before {
	content: '';
	position: absolute;
	top: 1px;
	left: 0;
	width: 19px;
	height: 19px;
	background-image: url(../img/icons/check.png);
	background-repeat: no-repeat;
	background-position: 0 0;
}

.checkbox:not(checked) + label:after {
	content: '';	
}

.checkbox:checked + label:before {
	content: '';
	background-position: 0 -19px;
}


.radio + label {
	cursor: pointer;
}

.radio:not(checked) {
	position: absolute;
	opacity: 0;
}
.radio:not(checked) + label {
	position: relative;
	padding: 3px 0 2px 30px;
	font-size: 14px;
	font-weight: 400;
	margin-right: 0;
	margin-bottom: 0;
	display: inline-block;
	text-transform: none;
	user-select: none;
}

.radio:not(checked) + label:before {
	content: '';
	position: absolute;
	top: 3px;
	left: 0;
	width: 19px;
	height: 19px;
	background-image: url(../img/icons/radio.png);
	background-repeat: no-repeat;
	background-position: 0 0;
}

.radio:not(checked) + label:after {
	content: '';	
}

.radio:checked + label:before {
	content: '';
	background-position: 0 -19px;
}


/* forms */

div.wpcf7 div.wpcf7-response-output{
	margin: 30px 0 0;
	padding: 15px;
	text-align: center;
}

div.wpcf7 span.wpcf7-not-valid-tip {
	font-size: 14px;
	text-transform: none;
	margin: -20px 0 20px;
	display: block;
	letter-spacing: 0;
}

div.wpcf7 .ajax-loader {
	position: absolute;
	bottom: 10px;
}

div.wpcf7 .form-title {
	font-size: 24px;
	text-align: center;
}

div.wpcf7 .form-title + p{
	margin-top: -10px;
	margin-bottom: 30px;
}

form .wpcf7-not-valid{
	border-color: #f00;
}

.form-lead {
	text-align: center;
}

.form-lead p{
	color: #878787;
}

.form-lead p br{
	display: block;
}

div.wpcf7 .form-lead + div.wpcf7-response-output,
.form-lead .form-inner{
	max-width: 630px;
	margin-left: auto;
	margin-right: auto;
}


.form-lead .form-content br{
	display: none;
}

.form-lead .btn {
	margin: auto;
	margin-top: 30px;
	display: block;
}

div.wpcf7 .form-lead .ajax-loader {
	right: 15px;
}



.popup-form-cont {
	margin: auto;
	max-width: 320px;
	position: relative;
}

.popup-form-cont br {
	display: none;
}

.popup-form-cont p {
	margin: 0;
}

.popup-form-cont .btn{
	margin: auto;
	margin-top: 30px;
	display: block;
}

.popup-form-cont div.wpcf7 div.wpcf7-response-output{
	margin: 0;
}

.popup-form-cont div.wpcf7 .ajax-loader {
	position: absolute;
	bottom: 45px;
	right: 30px;
}

.popup-form-cont div.wpcf7 {
	padding: 30px;
	background: #fff;
}

.popup-form-cont form{
	margin-bottom: 0;
}


/* menus */


.mobile-menu-button {
	display: none;
	margin-right: 30px;	
	cursor: pointer;
	padding: 20px 0;
	padding-left: 7px;
	width: 42px;
	
}

.mobile-menu-button span{
	display: block;
	width: 28px;
	height: 2px;
	position: relative;
	transition: all .3s ease;
}

.mobile-menu-button span:before,
.mobile-menu-button span:after {
	display: block;
	content: '';
	width: 28px;
	height: 2px;	
	position: absolute;
	left: 0;
	transition: all .25s ease;
}

.mobile-menu-button span:before,
.mobile-menu-button span:after,
.mobile-menu-button span{
	background: #171717;
}

.mobile-menu-button span:before {
	top: -7px;
}

.mobile-menu-button span:after {
	bottom: -7px;
}

.mobile-menu-button.active span{
	width: 17px;
}

.mobile-menu-button.active span:after{
	width: 7px;
}


/*  mini-menu */


.mini-menu{
	text-align: right;
}

.mini-menu li{
	display: inline-block;
}

.mini-menu .sub-menu{
	display: none;
}

.mini-menu li:first-child a{
	margin-left: 0;
}

.mini-menu li a{
	font-size: 11px;
	text-transform: uppercase;
	font-weight: 500;
	letter-spacing: 0.1em;
	color: #878787;
	margin-left: 30px;
}


.mini-menu li.current-menu-item a,
.mini-menu li a:hover{
	color: #323232;
	text-decoration: none;
}



/* headers */

.main-header .custom-logo-link {
	text-transform: uppercase;
	font-size: 18px;
	letter-spacing: 0.1em;
	color: #171717;
	line-height: 1.2;
	font-weight: 500;
	text-decoration: none;
}

.main-header{
	margin-bottom: 30px;
}

.top-head-container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 90px;
}

.nav-container{
	border-top: 1px solid #ededed;
	border-bottom: 1px solid #ededed;
}

.main-nav{
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 70px;
}

.main-nav .btn{
	margin-bottom: 0;
}

.main-nav .menu{
	display: flex;
	height: 70px;
	align-items: center;
	justify-content: flex-start;
}

.main-nav .menu li{
	position: relative;
	list-style: none;
}

.main-nav .menu li:hover > .sub-menu{
	display: block;
}

.main-nav .menu .sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	background-color: #fff;
	padding: 15px 0;
	z-index: 9999;
	display: none;
	border: 1px solid #ededed;
	width: 260px;
}



.main-nav .sub-menu li:hover > .sub-menu{
	display: block;
}

.main-nav .menu .sub-menu .sub-menu{
	left: 100%;
	top: 0;
	padding: 0;
}

.main-nav .menu .sub-menu > li{
	display: block;
}

.main-nav .menu .sub-menu > li > a{
	display: block;
	text-decoration: none;
	padding: 10px 25px;
	color: #878787;
}

.main-nav .menu .sub-menu > li > a:hover{
	color: #1e1e1e;
}	


.menu .togle-sub-menu {
	display: none;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 999;
	width: 42px;
	height: 42px;
	line-height: 42px;
	font-size: 16px;
	text-align: center;
}

.menu .togle-sub-menu .fas:before{
	content: "\f078";
}

.menu .togle-sub-menu.active .fas:before{
	content: "\f077";
}

.main-nav .menu > li > a {
	font-size: 14px;
	color: #1e1e1e;
	text-transform: uppercase;
	font-weight: 500;
	letter-spacing: 0.1em;
	padding: 25px 20px;
	display: block;
	text-decoration: none;
}

.main-nav .menu > li:first-child > a{
	padding-left: 0;
}

.head-contacts{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-shrink: 0;
}

.head-contacts li{
	list-style: none;
	margin-left: 30px;
	display: flex;
	justify-content: flex-end;
	align-items: flex-start;
	font-size: 14px;
}


.head-contacts i{
	margin-right: 10px;
	margin-top: 1px;
	font-size: 16px;
}


/* sidebar widget */

.sidebar .widget{
	background-color: #fff;
	margin-bottom: 30px;
	border: 1px solid #ededed;
}

.sidebar .widget-title {
	margin: 0;
	padding: 20px;
	font-size: 14px;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	border-bottom: 1px solid #ededed;
}

.sidebar {
	
}

.sidebar .widget ul{
	padding: 5px 20px 20px;
	margin: 0;
}

.sidebar .widget ul li{
	display: block;
	list-style: none;
	margin: 0;
	padding: 0;	
}

.sidebar .widget ul li:before{
	display: none;
}

.sidebar .widget ul li a{
	color: #171717;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: .1em;
	font-weight: 500;
	display: block;
	margin-top: 15px;
	text-decoration: none;
}

.sidebar .widget ul li:last-child a{
	margin-bottom: 0;
}

.sidebar .widget ul ul{
	padding: 0;
	margin: 0;
}

.sidebar .widget ul ul ul{
	padding-left: 10px;
	border-left: 1px solid #878787;
}

.sidebar .widget ul ul a{
	display: block;
	text-transform: none;
	font-weight: normal;
	letter-spacing: 0;
	color: #878787;
	font-size: 14px;
	margin-top: 5px;
}

.sidebar .widget ul.menu .sub-menu{
	display: none;
}

.sidebar .widget ul.menu .current-products-ancestor .sub-menu,
.sidebar .widget ul.menu .current-menu-parent .sub-menu,
.sidebar .widget ul.menu .current-menu-item .sub-menu{
	display: block;
}


.sidebar .widget_recent_entries ul li{
	border-bottom: 1px solid #ededed;
	padding-bottom: 20px;
	margin-bottom: 20px;
}

.sidebar .widget_recent_entries ul li:last-child{
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: 0;
}

.sidebar .widget_recent_entries ul li a{
	font-size: 14px;
	margin-bottom: 10px;
}

.sidebar .widget_recent_entries .post-date{
	display: block;
	color: #838383;
	font-size: 14px;
}

.widget_search form{
	padding: 20px;
	margin-bottom: 0;
}

.widget_search form label{
	display: none;
}

.widget_search form input{
	margin: 0;
}


.widget_search form input[type=submit]{
	font-size: 0;
	background: url(../img/icons/search.png);
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	right: 20px;
	bottom: 20px;
	width: 42px;
	height: 42px;
	z-index: 99;
	border: 0;
}

.wp-content .search-post {
	margin-bottom: 15px;
}

.wp-content .search-post a{
	color: #171717;
}

.wp-content .search-post:last-child{
	margin-bottom: 0;
}

.breadcrumbs {
	font-size: 13px;
	margin-bottom: 30px;
	color: #828282;
}

.breadcrumbs br{
	display: none;
}

.breadcrumbs a {
	color: #828282;
}

.wp-content .breadcrumbs a:hover{
	text-decoration: none;
}

.breadcrumbs .sep {
	margin: 0 5px;
	font-size: 14px;
}


