/** mobile **/
@media (max-width:1590px){
	.trafaret:after {
		padding-top: 9%;
	}
	.node-8 .trafaret:after {
		padding-top: 15%;
		/*padding-top: 142px;*/
	}
	.node-8 .trafaret {
		/*
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
		*/
	}
	.trafaret {
		/*
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
		*/
	}
	.tel {
		display:none;
	}
	.first_tel {
		display: inline;
	}
}
@media (max-width:1400px){
	.uslugi_title {
		font-size: 20px;
	}
}
@media (max-width:1200px){
	.menu-item {
		font-size: 14px;
	}
	.scrolled .logo {
		width: 140px;
	}
	#port_unit_1 {
    width: calc(33.33% - 30px);
	height: 255px;
	}
	#port_unit_2, #port_unit_3 {
		width: calc(33.33% - 30px);
	}
	.uslugi_unit {
		    width: calc(33.33% - 30px);
	}
	.block_uslugi .uslugi_unit:last-child, .wp-block-lazyblock-spisok-uslug .uslugi_unit:last-child {
    width: calc(100% - 30px);
}
	.on_map, .node-8 .on_map {
		display:none;
	}
	.steps {
		display: inline-block;
	}
	.step {
		float: left; 
		min-width: 164px;
		max-width: 164px;
		text-align:center;
		padding: 0 15px;
	}
	.step img {
		width: 134px;
	}
}
@media (max-width:999px){
	.top-menu {
		display: none;
		position: absolute;
        left: 0px;
        right: 0px;
        top: 40px;
        background: #fff;
        padding-top: 30px;
        padding-bottom: 30px;
        z-index: 3;
		height: auto;
		float: unset;
		padding: 10px 20px;
		height: 100vh;
		
	}
	.top-menu .menu-item a { /*
		background-color: unset;
		*/
		float: unset;
		display: table;
		margin: 0;
	}
	.top-menu .menu-item {
		/*text-align:center;*/
		width: 100%;
		margin-bottom: 10px;
		
	}
	.h_contacts{
		float: unset;
		width: 100%;
		display: table;
	}
	header {
		padding: 15px 0;
	}
	.sandwich {
		display: block;
        top: 0;
        margin-top: -7px;
        float: right;
        position: unset;
	}
	.c-hamburger {
			z-index: 10;
	  display: block;
	  position: relative;
	  overflow: hidden;
	  margin: 0;
	  padding: 0;
	  width: 38px;
	  height: 38px;
	  font-size: 0;
	  text-indent: -9999px;
	  appearance: none;
	  box-shadow: none;
	  border-radius: none;
	  border: none;
	  cursor: pointer;
	  transition: background 0.3s;
	  border-radius: 5px;
	}
	 
	.c-hamburger:focus {
	  outline: none;
	}
	.c-hamburger span {
	  display: block;
	  position: absolute;
	  top: 17px;
		left: 0px;
		right: 0px;
	  height: 3px;
	  background: #000;
	}
	 
	.c-hamburger span::before,
	.c-hamburger span::after {
	  position: absolute;
	  display: block;
	  left: 0;
	  width: 100%;
	  height: 3px;
	  background-color: #000;
	  content: "";
	}

	.c-hamburger span::before {
	  top: -10px;
	}
	 
	.c-hamburger span::after {
	  bottom: -10px;
	}

	.c-hamburger--htx {
	  background-color: unset;
	}
	 
	.c-hamburger--htx span {
	  transition: background 0s 0.3s;
	}
	 
	.c-hamburger--htx span::before,
	.c-hamburger--htx span::after {
	  transition-duration: 0.3s, 0.3s;
	  transition-delay: 0.3s, 0s;
	}
	 
	.c-hamburger--htx span::before {
	  transition-property: top, transform;
	}
	 
	.c-hamburger--htx span::after {
	  transition-property: bottom, transform;
	}

	.c-hamburger--htx.is-active {
	  background-color: unset;
	}
	 
	.c-hamburger--htx.is-active span {
	  background: none;
	}
	 
	.c-hamburger--htx.is-active span::before {
	  top: 0;
	  transform: rotate(45deg);
	  background-color: #000;
	}
	 
	.c-hamburger--htx.is-active span::after {
	  bottom: 0;
	  transform: rotate(-45deg);
	  width: 100%;
	}
	 
	.c-hamburger--htx.is-active span::before,
	.c-hamburger--htx.is-active span::after {
	  transition-delay: 0s, 0.3s;
	}
	.logo {
        width: 215px;
        height: 40px;
        position: relative;
        top: -4px;
    }
	.h_contacts {
    line-height: 1.4;
    font-size: 14px;
	        text-align: center;
			padding: 14px 0;
}
    .tel {
        display: block;
		margin-bottom: 5px;
		width: 50%;
		float: left;
		margin-right: 0;
    }
	    .on_map, .node-8 .on_map {
        display: block;
		font-size: 12px;
		border-right: 0px solid #00000030;
		width: 50%;
		float: left;
		margin-right: 0;
		margin-bottom: 5px;
		        padding-right: 0;
    }
	.mainsl_img  {
		height: 100vw;
		object-fit: cover;
	}
	.menu-item {
        font-size: 18px;
    }
	.on_map img {
    width: 11px;
    height: 14px;
	}
	header {
		height: 120px;
	}
	body {
    padding-top: 128px;
}
.text_on_slider {
	font-size: 18px;
	bottom: 20px;
}
    .scrolled .logo {
        width: 140px;
        height: 26px;
    }
	.scrolled {
		height: 58px;
	}
	.block_uslugi {
    margin-top: 40px;
}
h1, h2 {
    font-size: 28px;
	    margin-bottom: 20px;
}
.block_uslugi p {
    font-size: 18px;
	    margin-bottom: 20px;
}
    .uslugi_unit {
        width: calc(100% - 30px);
		height: auto;
    }
	.block_uslugi .btn2 {
		    margin: 0px auto 0;
	}
	.block_about, .block_work, .block_portfolio {
    margin-top: 50px;
}
.content-mini {
    width: 100%;
}
h4 {
    font-size: 20px;
}
.steps {
	margin-top: 30px;
}
    .step {
        float: left;
        min-width: auto;
        max-width: unset;
		width: 50%;
		text-align: center;
		font-size: 14px;
        height: 190px;
	}
	.step img {
    margin-bottom: 20px;
		        width: 67px;
}
section .btn2 {
    margin: 10px auto 0;
}
#port_unit_1, #port_unit_2, #port_unit_3 {
        width: calc(100% - 30px);
}
.block_form {
    margin-top: 60px;
	    padding-top: 60px;
}
#form_1 .wpcf7-form-control-wrap {
	    margin-right: 0;
}
.wpcf7-form-control-wrap[data-name="imya"], .wpcf7-form-control-wrap[data-name="vopros"], .wpcf7-form-control-wrap[data-name="telefon"] {
    width: 100%;
}
.footer_line .h_contacts {
    padding: 0;
    line-height: 1.4;
    margin-left: 0;
}
footer {
	
}
#toTop {
    float: unset;
    position: absolute;
    right: 20px;
    top: 0;
}

.mini_logo {
	display:none;
}
.trafaret:after {
        padding-top: 8.75%;
    }
	.top_logo {
		margin-bottom: 40px;
		
	}
	body:not([class="node-8"]) .top_logo {
		display:none;
	}
	.top-menu .menu-item > a{
		line-height: 40px;
	}
	.top-menu .menu-item a:hover, .top-menu .current-menu-item a {
		
		/*
		color: var(--hover);
		background-color: unset;
		*/
	}
	.top-menu .sub-menu .current-menu-item.menu-item a {
		color: var(--hover);
	}
	body:not([class="node-8"]) .h_contacts {
		display: none;
	}
	body:not([class="node-8"]) header {
		height: 58px;
	}
	body:not([class="node-8"]) {
		padding-top: 78px;
	}
	.archive .portfolio_unit {
		width: calc(100% - 30px);
	}
	.single .post_title {
    margin-top: 30px;
    margin-bottom: 30px;
	font-size: 24px;
	font-weight: 800;
}
.left_col, .right_col {
	width: 100%;
	padding: 0;
}
.right_col > div {
    float: unset;
    width: 100%;
	margin-top: 20px;
	display: inline-block;
}
.right_col img {
    float: unset;
}
.wp-block-lazyblock-face-and-text {
    margin: 50px 0;
}
.col_33 {
    width: 100%;
	padding: 30px 20px;
}
.col_33 h4 {
    min-height: unset;
}
.parent_menu_title {
	width: 100%;
}
.bg_image h3 {
    font-size: 16px;
}
.bg_image  {
	overflow: hidden;
}
.bg_image > div {
	    bottom: 20px;
    left: 20px;
	width: auto;
    right: 20px;
}
.child_menu_block ul li:not([class="parent_menu_title"]) a {
    line-height: 40px;
    height: 42px;
	margin-left: 0;
	margin-right: 10px;
	margin-bottom: 10px;
	width: 262px;
}
.wp-block-lazyblock-kartinka-s-tekstom {
    margin-bottom: 40px;
}
.wp-block-group.block_work {
    margin-bottom: 20px;
}
.blue {
	padding: 30px 20px;
}
.wp-block-button__link {
	padding: 15px 20px;
}
.bg_image > div p {
	display: none;
}
.wp-block-columns .bg_image > div p {
	display: inline;
}
.bg_image:after {
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0.35) 100%);
}
.sh_col1 {
	margin-bottom: 20px;
}
.container .content-mini {
	padding-left: 0;
	padding-right: 0;
}
.sub_title {
    margin-top: 30px;
}
.bg_image img {
	min-height: 150px;
    object-fit: cover;
}
.wp-block-column .bg_image > div {
    width: auto;
    left: 20px;
    bottom: 20px;
    right: 20px;
}
.sub-menu {
	padding-left: 30px;
    display: inline-block;
	margin-top: 20px;
}
.top-menu .sub-menu .menu-item a {
	background-color: unset;
	color: #000;
	line-height: 1.4;
	padding: 0;
	font-size: 14px;
}
h3 {
    font-size: 24px;
}
.wp-block-column .bg_image:after {
    background: rgba(255, 255, 255, 0);
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.3) 100%, rgba(0, 0, 0, 0.6) 100%);
}
#form_1 .wpcf7-form-control-wrap[data-name="vopros"], #form_1 .wpcf7-form-control-wrap[data-name="telefon"], #form_1 .wpcf7-form-control-wrap[data-name="imya"] {
	width: 100%;
	}
	.block_about p img.aligncenter {
		width: 150px;
    height: auto;
	}
	.child_menu_block ul {
		text-align: center;
	}
}