/*
Theme Name: Дом в Крыму
Author: Digital Rising
Author URI: https://digital-rising.ru/
Description: Авторская тема "Дом в Крыму"
Version: 1.0
*/

@font-face {
    font-family: 'Gotham Pro';
    src: url('fonts/dehinted-subset-GothamPro-BlackItalic.eot');
    src: local('GothamPro-BlackItalic'),
    url('fonts/dehinted-subset-GothamPro-BlackItalic.eot?#iefix') format('embedded-opentype'),
    url('fonts/dehinted-subset-GothamPro-BlackItalic.woff2') format('woff2'),
    url('fonts/dehinted-subset-GothamPro-BlackItalic.woff') format('woff'),
    url('fonts/dehinted-subset-GothamPro-BlackItalic.ttf') format('truetype');
    font-weight: 900;
    font-style: italic;
}
@font-face {
    font-family: 'Gotham Pro';
    src: url('fonts/dehinted-subset-GothamPro-BoldItalic.eot');
    src: local('GothamPro-BoldItalic'),
    url('fonts/dehinted-subset-GothamPro-BoldItalic.eot?#iefix') format('embedded-opentype'),
    url('fonts/dehinted-subset-GothamPro-BoldItalic.woff2') format('woff2'),
    url('fonts/dehinted-subset-GothamPro-BoldItalic.woff') format('woff'),
    url('fonts/dehinted-subset-GothamPro-BoldItalic.ttf') format('truetype');
    font-weight: bold;
    font-style: italic;
}
@font-face {
    font-family: 'Gotham Pro';
    src: url('fonts/dehinted-subset-GothamPro-Black.eot');
    src: local('GothamPro-Black'),
    url('fonts/dehinted-subset-GothamPro-Black.eot?#iefix') format('embedded-opentype'),
    url('fonts/dehinted-subset-GothamPro-Black.woff2') format('woff2'),
    url('fonts/dehinted-subset-GothamPro-Black.woff') format('woff'),
    url('fonts/dehinted-subset-GothamPro-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
}
@font-face {
    font-family: 'Gotham Pro';
    src: url('fonts/dehinted-subset-GothamPro.eot');
    src: local('GothamPro'),
    url('fonts/dehinted-subset-GothamPro.eot?#iefix') format('embedded-opentype'),
    url('fonts/dehinted-subset-GothamPro.woff2') format('woff2'),
    url('fonts/dehinted-subset-GothamPro.woff') format('woff'),
    url('fonts/dehinted-subset-GothamPro.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Gotham Pro';
    src: url('fonts/dehinted-subset-GothamPro-Italic.eot');
    src: local('GothamPro-Italic'),
    url('fonts/dehinted-subset-GothamPro-Italic.eot?#iefix') format('embedded-opentype'),
    url('fonts/dehinted-subset-GothamPro-Italic.woff2') format('woff2'),
    url('fonts/dehinted-subset-GothamPro-Italic.woff') format('woff'),
    url('fonts/dehinted-subset-GothamPro-Italic.ttf') format('truetype');
    font-weight: normal;
    font-style: italic;
}
@font-face {
    font-family: 'Gotham Pro';
    src: url('fonts/dehinted-subset-GothamPro-Bold.eot');
    src: local('GothamPro-Bold'),
    url('fonts/dehinted-subset-GothamPro-Bold.eot?#iefix') format('embedded-opentype'),
    url('fonts/dehinted-subset-GothamPro-Bold.woff2') format('woff2'),
    url('fonts/dehinted-subset-GothamPro-Bold.woff') format('woff'),
    url('fonts/dehinted-subset-GothamPro-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}
@font-face {
    font-family: 'Gotham Pro';
    src: url('fonts/dehinted-subset-GothamPro-MediumItalic.eot');
    src: local('GothamPro-MediumItalic'),
    url('fonts/dehinted-subset-GothamPro-MediumItalic.eot?#iefix') format('embedded-opentype'),
    url('fonts/dehinted-subset-GothamPro-MediumItalic.woff2') format('woff2'),
    url('fonts/dehinted-subset-GothamPro-MediumItalic.woff') format('woff'),
    url('fonts/dehinted-subset-GothamPro-MediumItalic.ttf') format('truetype');
    font-weight: 500;
    font-style: italic;
}
@font-face {
    font-family: 'Gotham Pro';
    src: url('fonts/dehinted-subset-GothamPro-Light.eot');
    src: local('GothamPro-Light'),
    url('fonts/dehinted-subset-GothamPro-Light.eot?#iefix') format('embedded-opentype'),
    url('fonts/dehinted-subset-GothamPro-Light.woff2') format('woff2'),
    url('fonts/dehinted-subset-GothamPro-Light.woff') format('woff'),
    url('fonts/dehinted-subset-GothamPro-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'Gotham Pro';
    src: url('fonts/dehinted-subset-GothamPro-Medium.eot');
    src: local('GothamPro-Medium'),
    url('fonts/dehinted-subset-GothamPro-Medium.eot?#iefix') format('embedded-opentype'),
    url('fonts/dehinted-subset-GothamPro-Medium.woff2') format('woff2'),
    url('fonts/dehinted-subset-GothamPro-Medium.woff') format('woff'),
    url('fonts/dehinted-subset-GothamPro-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'Gotham Pro';
    src: url('fonts/dehinted-subset-GothamPro-LightItalic.eot');
    src: local('GothamPro-LightItalic'),
    url('fonts/dehinted-subset-GothamPro-LightItalic.eot?#iefix') format('embedded-opentype'),
    url('fonts/dehinted-subset-GothamPro-LightItalic.woff2') format('woff2'),
    url('fonts/dehinted-subset-GothamPro-LightItalic.woff') format('woff'),
    url('fonts/dehinted-subset-GothamPro-LightItalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    outline: none !important;
}
html {
    scroll-padding-top: 173px;
    scroll-behavior: smooth;
}
body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background: #fff;
    color: #000;
    font: 400 14px 'Gotham Pro', Arial, sans-serif;
    font-optical-sizing: auto;
    -webkit-font-smoothing: antialiased;
}
h1 {
    width: 100%;
    padding: 22px 0 32px 0;
    font-size: 30px;
    font-weight: 500;
    color: #519e28;
}
h2 {
    width: 100%;
    font-size: 30px;
    font-weight: 400;
}
h3 {
    width: 100%;
    font-size: 18px;
    font-weight: 400;
}
a,
a:hover,
a:active,
a:visited {
    color: #000;
    text-decoration: none;
}
div {
    line-height: 1.5;
}
p {
    margin-block-start: 1em;
    margin-block-end: 1em;
}

.wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 1140px;
    margin: 0 auto;
}
.wrap .content {
    flex-grow: 1;
}
.mob,
.mob.btn {
    display: none;
}
.btn,
a.btn {
    display: inline-block;
    padding: 17px 56px;
    background: linear-gradient(90deg, #529f29, #6ab143, #529f29);
    color: #fff;
    font-weight: 500;
    border-radius: 50px;
    cursor: pointer;
	transition: all .3s ease-in-out;
}

.center {
    text-align: center;
}
.underline {
    text-decoration: underline;
}
.line-through {
    text-decoration: line-through;
}
.flex {
    display: flex;
}
.grow {
    flex-grow: 1;
}

header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    background: #fff;
    box-shadow: 0 0 19px 16px rgba(0, 0, 0, 0.16);
}
header .wrap {
    height: 129px;
    padding-top: 15px;
    align-items: flex-start;
}
header .logo {
    width: 148px;
    height: 66px;
    background: url('img/logo.webp') no-repeat;
    background-size: contain;
}
header .messengers {
    flex-grow: 1;
    margin: 12px 10px 0 0;
    text-align: right;
}
header .messengers a {
    display: inline-block;
    width: 21px;
    height: 21px;
    margin-right: 7px;
    background-repeat: no-repeat;
    background-position: center center;
}
header .messengers .mess-max {
    background-image: url('img/max.webp');
    margin-right: 9px;
}
header .messengers .whatsapp {
    background-image: url('img/whatsapp.webp');
}
header .messengers .telegram {
    background-image: url('img/telegram.webp');
}
header .contacts {
    text-align: right;
}
header .phone {
    display: block;
    margin: 3px 0 0 0;
    color: #519e28;
    font-weight: 700;
    font-size: 25px;
}
header .callback {
    margin: 7px 0 0 21px;
    padding: 15px 27px 16px 27px;
    font-weight: 500;
    cursor: pointer;
}
header nav {
    width: 100%;
    flex: 0 0 100%;
    font-size: 16px;
}
header nav ul {
    display: flex;
    justify-content: space-between;
    padding: 0;
    list-style-type: none;
}
header nav li a {
    padding-bottom: 16px;
}
header nav > ul > li:first-child {
    display: none;
}
header nav li.has-child > a:hover {
    bborder-bottom: 3px solid #539f2a;
}
header nav li.has-child > a:after {
    content: '<';
    display: inline-block;
    margin-left: 11px;
    color: #4e4e4e;
    font-size: 13px;
    font-weight: 300;
    cursor: pointer;
    transform: rotate(270deg) scale(1.3, 2);
    transition: .3s;
}
header nav li.has-child:hover > a:after {
    transform: rotate(90deg) scale(1.3, 2);
}
header nav li {
    position: relative;
}
header nav li .sub-menu {
    position: absolute;
    top: 19px;
    margin: 13px 0;
    padding-bottom: 13px;
    background: #fff;
    overflow: hidden;
    flex-direction: column;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    box-shadow: 0 0 19px 1px rgba(0, 0, 0, 0.16);
    clip-path: inset(2px -36px -36px -36px);
    transition: opacity .25s;
    border: 1px solid #fff;
}
header nav li:hover .sub-menu {
    opacity: 1;
    pointer-events: auto;
}
header ul.sub-menu li {
    padding: 10px 0;
}
header ul.sub-menu a {
    padding: 10px 20px;
}

main,
body > div#primary.content-area {
    flex-grow: 1;
    padding: 154px 0 35px 0;
}
body > div#primary.content-area > main {
    padding: 0;
}

.breadcrumbs,
.woocommerce-breadcrumb {
    width: 100%;
}
nav.navigation,
nav.woocommerce-pagination {
    width: 100%;
}
.breadcrumbs a:first-child,
.woocommerce-breadcrumb a:first-child {
    display: inline-block;
    width: 18px;
    height: 18px;
    margin: 0 0 -2px 0;
    background: url('img/home.webp') no-repeat;
    background-size: contain;
}
.breadcrumbs,
.breadcrumbs a, .breadcrumbs a:hover, .breadcrumbs a:active, .breadcrumbs a:visited,
.woocommerce-breadcrumb,
.woocommerce-breadcrumb a, .woocommerce-breadcrumb a:hover,
.woocommerce-breadcrumb a:active, .woocommerce-breadcrumb a:visited {
    color: #8d8d8d;
    font-size: 16px;
    font-weight: 500;
}
.breadcrumbs span,
.woocommerce-breadcrumb span {
    font-weight: 400;
}
nav .nav-links {
    margin-top: -13px;
    padding-bottom: 30px;
    text-align: center;
}
nav .nav-links > * {
    display: inline-block;
    width: 38px;
    height: 38px;
    margin-right: 3px;
    line-height: 35px;
    font-size: 19px;
    color: #777;
    border: 1px solid #a9a7a1;
    border-radius: 4px;
}
nav .nav-links .prev,
nav .nav-links .next {
    color: #519e28;
    border: 1px solid #519e28;
}
nav .nav-links .current {
    background: #519e28;
    color: #fff;
    border: 1px solid #519e28;
}

footer {
    flex: 0 0;
    padding: 43px 0 90px 0;
    background: #222536;
}
footer .wrap {
    flex-wrap: nowrap;
    line-height: 2;
    color: #fff;
    font-size: 16px;
    position: relative;
}
footer .sm {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
}
footer .sm a {
    width: 27px;
    height: 26px;
    margin-left: 7px;
    background-size: contain;
    background-repeat: no-repeat;
}
footer .sm .telegram {
    background-image: url('img/telegram-b.webp');
}
footer .mess-max {
    background-image: url('img/max-b.webp');
}
footer .ok {
    background-image: url('img/ok.webp');
}
footer .vk {
    background-image: url('img/vk.webp');
}
footer .youtube {
    background-image: url('img/youtube.webp');
}
footer .vk-video {
    background-image: url('img/vk-video.webp');
}
footer .dzen {
    background-image: url('img/dzen.webp');
}
footer .rutube {
    background-image: url('img/rutube.webp');
}
footer .logo {
    display: inline-block;
    width: 124px;
    height: 65px;
    background: url('img/logo-w.webp') no-repeat;
    background-size: contain;
    margin-bottom: 52px;
}
footer .address {
    padding: 2px 0 2px 50px;
    background: url('img/address.webp') no-repeat left center;
}
footer .address + div {
    padding: 10px 0 11px 0;
}
footer .phone {
    padding: 3px 0 3px 50px;
    background: url('img/phone-w.webp') no-repeat left center;
}
footer .email {
    padding: 4px 0 4px 50px;
    background: url('img/email-w.webp') no-repeat left center;
}
footer .right-col {
    flex: 0 0 50%;
    display: flex;
    justify-content: right;
    align-items: flex-end;
    text-align: right;
    font-size: 11px;
}
footer .copyright {
    font-size: 13px;
    padding-bottom: 5px;
}
footer a,
footer a:hover,
footer a:active,
footer a:visited {
    color: #fff;
}

.modal {
    opacity: 0;
    pointer-events: none;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1000;
    padding: 30px 0;
    background: rgba(0, 0, 0, .9);
    overflow: hidden;
    transition: opacity .2s;
}
.modal.show {
    opacity: 1;
    pointer-events: auto;
    overflow: auto;
}
.modal-body {
    position: relative;
    width: 407px;
    padding: 20px 40px;
    background: #fff;
    border-radius: 9px;
}
.modal .close {
    position: absolute;
    top: 5px;
    right: 5px;
    width: 30px;
    height: 30px;
    background: url('img/cross1.webp') no-repeat center center;
    background-size: 20px 20px;
    border-radius: 50%;
    cursor: pointer;
    transform: rotate(45deg);
    opacity: 0.5;
}

form.dr-form {
    position: relative;
}
form.dr-form > * {
    width: 100%;
}
form.dr-form .alert {
    height: 15px;
    margin: -1px 0 1px 11px;
    font-size: 12px;
    color: red;
}
form.dr-form input,
form.dr-form textarea,
form.dr-form .attach,
#filters input[type='text'],
#filters input[type='number'],
#filters input[type='search'] {
    height: 35px;
    padding: 12px 17px;
    background: #f2f4f7;
    font: 400 14px 'Gotham Pro', Arial, sans-serif;
    border: 1px solid #f2f4f7;
    border-radius: 4px;
}
form.dr-form textarea {
    height: 124px;
    resize: none;
}
form.dr-form input::placeholder,
form.dr-form textarea::placeholder {
    font-size: 14px;
    color: #6a6a6a;
}
form.dr-form input.error {
    border-color: red;
}
form.dr-form input[type="file"] {
    display: none;
}
form.dr-form .attach {
    display: block;
    background: #c1c2c5 url('img/attach.webp') no-repeat 20px center;
    background-size: 21px 23px;
    margin-top: 10px;
    padding: 9px 19px 10px 52px;
    color: #fff;
    cursor: pointer;
}
form.dr-form .btn {
    margin: 16px 0 9px 0;
    padding: 12px 37px;
    font-size: 17px;
    font-weight: 500;
    cursor: pointer;
}
form.dr-form p.privacy,
form.dr-form p.privacy a {
    font-size: 12px;
    margin-block-end: 0;
}
form.dr-form .hidden {
    display: none;
}
form.dr-form .answer {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: none;
    background: #fff;
}
form.dr-form .answer.show {
    display: block;
}
form.dr-form .answer .cont {
    position: relative;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
form.dr-form .answer .text {
    opacity: 0;
    transition: .5s;
}
form.dr-form .answer .loader {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #fff url('img/loading.gif') no-repeat center center;
    transition: .5s;
}
form.dr-form .stop .text {
    opacity: 1;
}
form.dr-form .stop .loader {
    opacity: 0;
    user-select: none;
}
form.dr-form .answer h3,
body.post-type-archive-product .bespl-ras form.dr-form .answer h3 {
    width: auto;
    padding: 0;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
}

.zakaz-rasch {
    background: #f60 url('img/zakaz-rasch.webp') no-repeat center bottom;
    background-size: contain;
    padding-bottom: 85px;
    border-radius: 20px;
    text-align: center;
    cursor: pointer;
    text-transform: uppercase;
}
.zakaz-rasch h5 {
    padding: 44px 0 53px;
    font-size: 19px;
    font-weight: 700;
    color: #fff;
}
.zakaz-rasch .btn {
    display: inline-block;
    width: 83%;
    padding: 11px;
    background: #fff;
    color: #f60;
    font-weight: 700;
}
.badge .badge__more-reviews-link-wrap,
.badge .badge__more-reviews-link-wrap:after {
    display: none;
}

.one-post {
    display: flex;
    flex-direction: column;
    flex-grow: 0;
    flex-shrink: 0;
    width: 32%;
    margin-bottom: 31px;
    overflow: hidden;
    border: 1px solid #519e28;
    border-radius: 20px;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
}
span.one-post.empty {
    border: 0;
}
aside > .one-post {
    width: 100%;
}
.wpb_text_column .slide.dr-widget span:last-child {
    margin-bottom: 31px;
}
.one-post > * {
    /*flex: 0 0;*/
	flex: 0 0 auto;
}
.one-post img.wp-post-image {
    width: 100%;
    height: auto;
}
.one-post h3 {
    flex-grow: 1;
    padding: 17px 16px 3px 16px;
    font-size: 14px;
    font-weight: 500;
    color: #519e28;
}
.one-post .text {
    flex-grow: 1;
    padding: 10px 16px 10px 16px;
    font-size: 13px;
}
.one-post .date {
    display: flex;
    justify-content: space-between;
    padding: 6px 21px 20px 16px;
    font-size: 13px;
    font-style: italic;
    color: #606060;
}
.built-house a.one-post {
    border-radius: 12px;
}
.built-house .one-post h3 {
    padding: 17px 16px 17px 16px;
    background: #519e28;
    color: #fff;
    font-size: 16px;
    text-align: center;
}
.video .one-post h3,
.slide.dr-widget h3 {
    padding: 11px 16px 11px 16px;
}
.video .one-post h3 a,
.slide.dr-widget h3 a {
    font-size: 14px;
    font-weight: 500;
    color: #519e28;
}
.video .one-post .date,
.slide.dr-widget .date {
    padding: 6px 21px 13px 16px;
}
.video .one-post .date div + div,
.slide.dr-widget .date div + div {
    line-height: 30px;
}
.video .one-post .date a,
.slide.dr-widget  .date a {
    display: inline-block;
    width: 30px;
    height: 30px;
    margin-right: 10px;
    background-size: contain;
    font-size: 0;
}
.video .one-post .dzen,
.slide.dr-widget .dzen {
    background-image: url('img/dzen.webp');
}
.video .one-post .vk-video,
.slide.dr-widget .vk-video {
    background-image: url('img/vk-video.webp');
}
.video .one-post .rutube,
.slide.dr-widget .rutube {
    background-image: url('img/rutube.webp');
}

body.single-post main .wrap {
    flex-wrap: nowrap;
    align-items: flex-start;
}
body.single-post .content {
    padding: 0 118px 0 0;
}
body.single-post .post-image {
    margin-bottom: 13px;
}
.entry-content a, .entry-content a:hover, .entry-content a:visited, .entry-content a:active,
.product-description a {
    color: #519e28;
}
body.single-post .post-images {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 22px 0;
    padding-top: 10px;
}
body.single-post .post-images > a {
    width: 48.6%;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
body.single-post .post-images img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
}
body.single-post .entry-content .date {
    padding: 25px 0 0 0;
    font-style: italic;
    color: #606060;
}
aside {
    flex: 0 0 270px;
    overflow: hidden;
}
aside h3 {
    padding: 73px 0 14px 0;
    font-size: 18px;
    font-weight: 400;
}
aside h4 {
    padding: 8px 16px 0 16px;
    font-size: 14px;
    font-weight: 500;
    color: #519e28;
}
aside.built-house h4 {
    padding: 8px 16px;
    font-weight: 500;
    background: #519e28;
    color: #fff;
    font-size: 14px;
    text-align: center;
}
aside .one-post .date {
    padding: 0 21px 17px 16px;
    font-size: 12px;
}


a.one-project {
    display: flex;
    flex-direction: column;
}

.wpc-filters-widget-wrapper {
    display: flex;
    flex-wrap: wrap;
}

.wpc-filters-section {
    padding-right: 30px;
}

.woocommerce ul.products li.product a img {
    qheight: 20px !important;
}

.pswp__bg {
    opacity: 0.9 !important;
}

/* Главная страница */
body.home main {
    padding: 129px 0 35px 0;
}
body.home .top {
    background: url('img/top-bg.webp') no-repeat center;
    background-size: 100% auto;
    color: #fff;
}
body.home .top .wrap {
    min-height: 597px;
    flex-wrap: nowrap;
}
body.home h1 {
    padding: 49px 0 7px 0;
    font-size: 46px;
    font-weight: 500;
    line-height: 1.16;
    color: #fff;
}
body.home .top strong {
    display: block;
    padding: 0 0 20px 0;
    font-size: 29px;
    font-weight: 400;
}
body.home .top strong sup {
    font-size: 16px;
}
body.home .top .v {
    padding: 4px 0 4px 39px;
    background: url('img/v-circle.webp') no-repeat left center;
    background-size: 20px 20px;
    font-size: 18px;
    font-weight: 500;
}
body.home .top .last i {
    padding-right: 7px;
}
body.home .top .btn,
body.home .projects .btn,
body.home .built-house .center .btn {
    margin: 23px 0 30px 0;
    padding: 17px 47px;
    font-size: 18px;
    text-transform: uppercase;
}
body.home .top .right {
    display: flex;
    align-items: flex-end;
}
body.home .top .right a {
    display: block;
    margin: 0 0 45px 0;
    padding: 28px 27px 19px 26px;
    background: #fff;
    border-radius: 10px;
}
body.home .top .right img {
    vertical-align: top;
}
body.home .top .right img:first-child {
    width: 100px;
    height: auto;
    margin: 2px 0 0 0;
}
body.home .top .right img:nth-child(2) {
    width: 46px;
    height: auto;
    margin: 0 24px;
}
body.home .top .right img:nth-child(3) {
    width: 121px;
    height: auto;
    margin: 6px 0 0 0;
}
body.home .top .right span {
    display: block;
    padding-top: 13px;
    color: #519e28;
    font-size: 17px;
    font-weight: 500;
    text-transform: uppercase;
}

body.home .advantages > a,
.advantages-wrapp > a {
    display: block;
    width: 14%;
    padding: 129px 0 60px 0;
    background: url('img/advantages-price.webp') no-repeat center 36px;
    font-size: 16px;
    text-align: center;
    line-height: 1.3;
}
body.home .advantages > a:nth-child(2),
.advantages-wrapp > a:nth-child(2)  {
    background-image: url('img/advantages-garant.webp');
}
body.home .advantages > a:nth-child(3),
.advantages-wrapp > a:nth-child(3) {
    background-image: url('img/advantages-prochn.webp');
}
body.home .advantages > a:nth-child(4),
.advantages-wrapp > a:nth-child(4) {
    background-image: url('img/advantages-economy.webp');
}
body.home .advantages > a:nth-child(5),
.advantages-wrapp > a:nth-child(5) {
    background-image: url('img/advantages-5-years.webp');
}
body.home .advantages > a:nth-child(6),
.advantages-wrapp > a:nth-child(6) {
    background-image: url('img/advantages-eco.webp');
}
body.home .advantages span,
.advantages-wrapp span {
    display: block;
    color: #519e28;
    font-weight: 500;
}
body.home .advantages strong,
.advantages-wrapp strong {
    display: block;
    color: #519e28;
    font-size: 24px;
    font-weight: 700;
}

body.home .projects {
    background: #f7f7f7;
}
body.home .projects.hotels {
    background: #fff;
}
body.home .projects .wrap {
    flex-direction: column;
    padding-bottom: 59px;
}
body.home h2 {
    width: 100%;
    padding: 50px 0 35px 0;
    font-size: 30px;
    font-weight: 400;
}
body.home .projects .slide,
.slide.dr-widget {
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding-bottom: 27px;
}
body.home .projects a.one-project {
    width: 23.6%;
    overflow: hidden;
    background: #fff;
    border-radius: 5px;
    box-shadow: 0 0 19px 1px rgba(0, 0, 0, 0.12);
}
body.home .projects.hotels a.one-project {
    border: 1px solid #bebebe;
    box-shadow: none;
}
body.home .projects a.one-project > img {
    width: 100%;
    height: auto;
}
body.home .projects h3 {
    flex-grow: 1;
    padding: 14px 19px 0 19px;
    font-size: 18px;
    font-weight: 500;
    color: #519e28;
}
body.home .projects .details {
    display: flex;
    padding: 9px 16px 6px 16px;
}
body.home .projects .details > div {
    flex: 1 0 50%;
    padding: 0 0 10px 40px;
    font-size: 14px;
}
body.home .projects .details .area {
    background: url('img/ico-area.webp') no-repeat 0 3px;
    background-size: 32px 32px;
}
body.home .projects .details .house {
    padding: 0 0 5px 53px;
    background: url('img/ico-bedrooms.webp') no-repeat 6px 6px;
    background-size: 37px 27px;
}
body.home .projects .details .hotel {
    padding: 0 0 5px 55px;
    background: url('img/ico-rooms.webp') no-repeat 0 0;
    background-size: 49px 34px;
}
body.home .projects .details > div > div {
    font-size: 13px;
    font-weight: 500;
    margin-bottom: -3px;
}
body.home .projects .details sup {
    font-size: 10px;
}
body.home .projects .blue {
    display: flex;
    flex-direction: column;
    flex: 0 0 114px;
    height: 114px;
    padding: 7px 10px 9px 10px;
    background: #2ba8ff;
    color: #fff;
    font-size: 17px;
    font-weight: 500;
    text-align: center;
}
body.home .projects .price {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-size: 19px;
}
body.home .projects .price .line-through {
    margin: -1px 0 -3px 0;
    font-size: 16px;
    font-weight: 400;
}
body.home .projects .blue span {
    font-size: 14px;
    text-decoration: underline;
}
body.home .projects.hotels .center .btn {
    margin: 14px 0 0 0;
}
/*
.body.home .temp h2 {
    width: 50%;
    padding: 20px 0;
}
*/
body.home .projects-category {
    gap: 22px 21px;
    padding-bottom: 40px;
}
body.home .projects-category h2 {
    padding-bottom: 19px;
}
body.home .projects-category a {
    width: 31%;
    width: calc( 33.333% - 14px );
    padding: 195px 0 29px 0;
    background: #539f2a url('img/proj-cat-60.webp') no-repeat center 27px;
    background-size: auto 130px;
    color: #fff;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    border-radius: 6px;
}
body.home .projects-category a:nth-child(3) {
    background-image: url('img/proj-cat-60-100.webp');
}
body.home .projects-category a:nth-child(4) {
    background-image: url('img/proj-cat-100-150.webp');
}
body.home .projects-category a:nth-child(5) {
    background-image: url('img/proj-cat-150-200.webp');
}
body.home .projects-category a:nth-child(6) {
    background-image: url('img/proj-cat-200.webp');
}
body.home .projects-category a:nth-child(7) {
    background-image: url('img/proj-cat-hotels.webp');
}
body.home .projects-category a sup {
    font-size: 10px;
}

body.home .news.wrap {
    position: relative;
}
body.home .news.wrap .slide {
    width: 100%;
    display: flex;
    justify-content: space-between;
}
body.home .news.wrap .one-post {
    width: 23.5%;
    flex: 0 0 23.5%;
    margin-bottom: 12px;
}
body.home .news.wrap a.underline {
    position: absolute;
    top: 64px;
    right: 0;
    font-size: 17px;
    font-weight: 300;
}

body.home .reviews {
    width: 730px;
    height: 477px;
    margin: 12px auto 50px auto;
    overflow: hidden;
    position: relative;
}
.reviews iframe {
    width: 100%;
    height: 100%;
    border: 1px solid #e6e6e6;
    border-radius: 8px;
    box-sizing: border-box;
}
body.home main > div.video {
    max-width: 1436px;
    margin: 0 auto;
    background: #eef7de;
}
body.home main > div.video .wrap {
    justify-content: center;
    position: relative;
    padding-bottom: 50px;
}
.video-container {
    overflow: hidden;
    position: relative;
}
.video-container .wrapper {
    display: flex;
    transition: transform .15s;
}
.video-container .one-post {
    margin: 0 23px 22px 0;
}
.video-container + .prev,
.video-container + .prev + .next {
    width: 33px;
    height: 30px;
    background: url('img/arrow-grey.webp') no-repeat center;
    background-size: 12px 22px;
    cursor: pointer;
    transition: .25s;
}
.video-container + .prev {
    transform: rotate(180deg);
}
.video-container + .prev:hover,
.video-container + .prev + .next:hover {
    background-image: url('img/arrow-green.webp');
}

body.home main > div.video .one-post h3 {
    background: #fff;
}

body.home .razrab-proekt {
    width: 979px;
    height: 316px;
    margin: 66px auto -5px auto;
    padding: 38px 400px 20px 93px;
    background: url('img/razrab-proekt.webp') no-repeat;
    color: #fff;
    font-size: 29px;
    font-weight: 700;
    line-height: 1.3;
    cursor: pointer;
}
body.home .razrab-proekt .btn {
    margin-top: 30px;
    padding: 15px 66px 14px 66px;
    background: #fff;
    color: #f60;
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
}

body.home .wrap.remote {
    width: 948px;
}
body.home .built-house .one-post .green {
    background: #519e28;
    text-align: center;
}
body.home .built-house .one-post .green span {
    display: inline-block;
    margin: 1px 0 26px 0;
    padding: 6px 37px;
    color: #fff;
    font-weight: 500;
    border: 1px solid #fff;
    border-radius: 50px;
}
body.home .wrap.built-house > div {
    width: 100%;
}
body.home .wrap.built-house .slide {
    display: flex;
    gap: 20px;
}
body.home .built-house div.center .btn {
     margin: 23px 0 30px 0;
     padding: 17px 32px;
}
body.home .wrap.last {
    flex-wrap: nowrap;
    padding: 38px 0 23px 0;
}
body.home .wrap.last h2 {
    padding: 0 84px 18px 84px;
    color: #519e28;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
}
body.home .wrap.last .text {
    flex-grow: 1;
}
body.home .wrap.last .text > div {
    width: 485px;
    margin: 0 auto;
    padding: 36px 7px 54px 7px;
    font-size: 16px;
    text-align: center;
    border-top: 2px solid #97bc84;
    border-bottom: 2px solid #97bc84;
}
body.home .wrap.last .zakaz-rasch {
    flex: 0 0 365px;
    width: 365px;
    height: 458px;
    margin-left: 105px;
}
body.home .wrap.last .zakaz-rasch h5 {
    padding: 44px 0 27px;
}
body.home .wrap.last .zakaz-rasch .btn {
    width: 73%;
    padding: 16px;
    font-size: 20px;
}

body.post-type-archive-product .top,
body.tax-product_cat .top {
    flex-wrap: nowrap;
    align-items: flex-start;
    padding: 35px 0 0 0;
}
body.post-type-archive-product .create-proj,
body.tax-product_cat .create-proj {
    width: 100%;
    padding: 25px 210px 25px 37px;
    background: #f60 url('img/create-proj.webp') no-repeat right bottom;
    color: #fff;
    font-size: 22px;
    font-weight: 500;
    text-transform: uppercase;
    border-radius: 10px;
    cursor: pointer;
}
body.post-type-archive-product h1,
body.tax-product_cat h1 {
    padding: 39px 0 13px 0;
    font-size: 27px;
    font-weight: 300;
    color: #000;
}
h3.not-found {
    padding: 10px 0 32px 0;
    font-size: 18px;
    font-weight: 400;
}
.top.wrap #filters {
    width: 268px;
    flex: 0 0 268px;
    margin-right: 21px;
    overflow: hidden;
    border: 1px solid #b9b9b9;
    border-radius: 9px;
}
#filters input::-webkit-outer-spin-button,
#filters input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
#filters input[type=number] {
    -moz-appearance:textfield;
}
#filters .wp-block-search {
    padding: 11px 17px 14px 17px;
    border-bottom: 1px solid #e6e6e6;
}
#filters .wp-block-search__label,
#filters h2 {
    display: none;
}
#filters .wp-block-search .wp-block-search__inside-wrapper {
    padding-top: 6px;
}
#filters .wp-block-search input[type='search'] {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
#filters .wp-block-search button[type='submit'] {
    width: 40px;
    margin: 0;
    background: #539f2a url('img/search.webp') no-repeat center;
    font-size: 0;
    border: 0;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    cursor: pointer;
}
#filters .wpc-filters-section {
    width: 100%;
    margin: 0;
    padding: 7px 17px 6px 17px;
    border-bottom: 1px solid #e6e6e6;
}
#filters .wpc-filters-section-537,
#filters .wpc-filters-section-701 {
    display: none;
}
#filters .wpc-filter-header {
    display: flex;
    align-items: center;
    padding: 0 0 11px 0;
    cursor: pointer;
}
#filters .wpc-filter-header.close {
    padding: 0;
}
#filters .wpc-filter-header:before {
    content: '';
    display: block;
    width: 14px;
    height: 14px;
    background: url('img/arrow-up.webp');
    transition: .3s;
}
#filters .wpc-filter-header.close:before {
    transform: rotate(180deg);
}
#filters .wpc-filter-content {
    height: auto;
    overflow: hidden;
}
#filters .wpc-filter-header.close + .wpc-filter-content {
    height: 0;
}
#filters .wpc-filter-title {
    margin: 0 0 0 10px;
    user-select: none;
}
#filters .wpc-filters-range-slider-wrapper {
    margin: 25px 14px 15px 14px;
}
#filters .wpc-filters-range-inputs .ui-slider .ui-slider-handle {
    width: 23px;
    height: 23px;
}
#filters .wpc-filters-range-inputs .ui-slider-horizontal .ui-slider-handle {
    border: 3px solid #539f2a;
    background: #fff;
    box-shadow: none;
}
#filters .wpc-filters-range-inputs .ui-slider-horizontal {
    background: #fff;
}
#filters .wpc-filters-range-inputs .ui-slider-horizontal .ui-slider-range {
    margin-top: -2px;
    height: 3px;
    background-color: #539f2a;
}
#filters .wpc-checkbox-item,
#filters .wpc-radio-item {
    margin-bottom: 8px;
    font-size: 13px;
}
#filters .wpc-term-count-brackets-open,
#filters .wpc-term-count-brackets-close {
    display: inline-block;
}
#filters .wpc-checkbox-item input[type='checkbox'] {
    position: absolute;
    z-index: -1;
    opacity: 0;
}
#filters .wpc-checkbox-item input[type='checkbox'] + label {
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
#filters .wpc-checkbox-item input[type='checkbox'] + label::before {
    content: '';
    display: inline-block;
    background-color: #f2f4f7;
    width: 9px;
    height: 9px;
    flex-shrink: 0;
    flex-grow: 0;
    border: 3px solid #f2f4f7;
    border-radius: 3px;
    margin-right: 15px;
    background-repeat: no-repeat;
    background-position: center center;
}
#filters .wpc-checkbox-item input[type='checkbox']:checked + label::before {
    background-image: url('img/checkbox.webp');
}


#filters .wpc-radio-item input[type='radio'] {
    position: absolute;
    z-index: -1;
    opacity: 0;
}
#filters .wpc-radio-item input[type='radio'] + label {
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
#filters .wpc-radio-item input[type='radio'] + label::before {
    content: '';
    display: inline-block;
    background-color: #f2f4f7;
    width: 9px;
    height: 9px;
    flex-shrink: 0;
    flex-grow: 0;
    border: 3px solid #f2f4f7;
    border-radius: 9px;
    margin-right: 15px;
    background-repeat: no-repeat;
    background-position: center center;
}
#filters .wpc-radio-item input[type='radio']:checked + label::before {
    background-color: #539f2a;
}
#filters div.wpc-filter-layout-submit-button {
    display: flex;
    flex-direction: column;
    padding: 18px 17px 13px 17px;
    opacity: 1;
    border-bottom: 0;
}
#filters .wpc-filter-layout-submit-button > a {
    width: 100%;
}
#filters .wpc-filters-submit-button,
#filters .wpc-filters-submit-button:hover {
    margin-bottom: 9px;
    background: #539f2a;
    border: 0;
    opacity: 1;
}
#filters .wpc-filters-reset-button {
    border-color: #a9a7a1;
}

.sorting {
    width: 100%;
    display: flex;
    padding-bottom: 23px;
}
.sorting > div {
    height: 34px;
    width: 270px;
    margin-left: 20px;
    color: #539f2a;
    font-size:13px;
    text-align: center;
    line-height: 29px;
    border: 2px solid #539f2a;
    border-radius: 5px;
    cursor: pointer;
}
.sorting > div.active {
    background: #539f2a;
    color: #fff;
}
.sorting > div > span {
    font-weight: 500;
}
.sorting .filters-btn {
    display: none;
}
.sorting #recomended {
    width: 173px;
}
.sorting #recomended:before {
    content: '';
    display: inline-block;
    width: 14px;
    height: 16px;
    margin: 0 8px -3px 0;
    background: url('img/thumb-up.webp') no-repeat;
    background-size: cover;
}
.sorting #recomended.active {
    background: #539f2a;
}
.sorting #recomended.active:before {
    background-image: url('img/thumb-up-w.webp');
}
.sorting .woocommerce-notices-wrapper,
.sorting p.woocommerce-result-count {
    display: none;
}
.sorting .woocommerce-ordering {
    position: relative;

}
.sorting .woocommerce-ordering select {
    display: none;
}
.select-selected {
    width: 268px;
    height: 34px;
    padding: 6px;
    background: #539f2a;
    text-align: center;
}
.select-selected:before {
    content: '';
    display: inline-block;
    width: 11px;
    height: 17px;
    margin: 0 6px -4px 0;
    background: url('img/up-down.webp') no-repeat;
    background-size: cover;
}

/* Point the arrow upwards when the select box is open (active): */
.select-selected.select-arrow-active:after {
    border-color: transparent transparent #fff transparent;
    top: 7px;
}
/* style the items (options), including the selected item: */
.select-items div,
.select-selected {
    color: #fff;
    border-radius: 5px;
    cursor: pointer;
}
.select-items div {
    padding: 6px 10px 6px 38px;
}
/* Style items (options): */
.select-items {
    position: absolute;
    background-color: #fff;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 99;
    border-radius: 5px;
}
/* Hide the items when the select box is closed: */
.select-hide {
    visibility: hidden;
}

.select-items div,
.same-as-selected {
    margin-top: 1px;
    background-color: #539f2a;
}
.select-items div:hover {
    background-color: #4b8f26;
}

section.related.products {
    width: 100%;
}
ul.products {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 30px 23px;
    padding-bottom: 27px;
    list-style-type: none;
}
.products li.product {
    display: flex;
    flex-direction: column;
    width: 30%;
    width: calc( 33.333% - 16px );
    padding-bottom: 15px;
    overflow: hidden;
    align-items: center;
    border: 1px solid #a4a4a4;
    border-radius: 6px;
}
.related.products .products li.product {
    width: 23%;
    width: calc( 25% - 18px );
}
a.woocommerce-loop-product__link {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    position: relative;
    width: 100%;
    overflow: hidden;
}
a.woocommerce-loop-product__link span.onsale {
    position: absolute;
    top: 0;
    right: 22px;
    z-index: 2;
    padding: 3px 10px 4px 11px;
    background: #ff1800;
    color: #fff;
    font-weight: 500;
    text-transform: uppercase;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}
a.woocommerce-loop-product__link > img {
    width: 100%;
    height: auto;
}
h2.woocommerce-loop-product__title {
    flex-grow: 1;
    padding: 6px 11px 8px 11px;
    color: #519e28;
    font-size: 14px;
}
.products .product .details,
.products .product .prices {
    display: flex;
    width: 100%;
    justify-content: space-between;
    padding: 0 11px;
}
.products .product .details > div {
    text-align: center;
    font-size: 13px;
    line-height: 1.4;
}
.products .product .prices {
    padding: 8px 11px 19px 11px;
}
.products .product .prices > a {
    padding: 2px 0 1px 0;
    text-align: center;
    font-size: 11px;
    line-height: 1.7;
}
.products .product .prices > div {
    width: 1px;
    flex: 0 0 1px;
    background: #539f2a;
}
.products .product .details span,
.products .product .prices span {
    display: block;
    font-size: 11px;
    font-weight: 500;
}
.products .product .details sup {
    font-size: 8px;
}
.products .product a.btn {
    padding: 9px 33px;
    font-size: 12px;
}
body.post-type-archive-product nav .nav-links {
    margin: 0;
    padding: 0;
}
.got-pros {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin-top: 30px;
    padding: 30px 95px;
    background: #f60;
    color: #fff;
    font-size: 23px;
    font-weight: 500;
    text-transform: uppercase;
    line-height: 1.3;
    border-radius: 20px;
    cursor: pointer;
}
.got-pros .btn {
    background: #fff;
    color: #f60;
    font-size: 19px;
    font-weight: 500;
}

body.post-type-archive-product .bespl-ras {
    width: 100%;
    display: flex;
    justify-content: center;
    padding: 81px 0 0 0;
}
body.post-type-archive-product .bespl-ras h3 {
    width: 392px;
    padding-right: 32px;
    font-size: 24px;
    line-height: 1.3;
}
body.post-type-archive-product .bespl-ras form {
    width: 367px;
    margin-top: -10px;
}
body.post-type-archive-product .content {
    width: 745px;
    margin: 64px auto 30px auto;
}

/* Страница одного проекта */
.dr-product {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.dr-product .proj-gallery {
    width: 682px;
    flex: 0 0 682px;
    position: relative;
}
.dr-product .proj-gallery span.onsale {
    position: absolute;
    top: 0;
    right: 43px;
    z-index: 2;
    padding: 4px 13px 5px 13px;
    background: #ff1800;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    pointer-events: none;
}
.dr-product .woocommerce-product-gallery__wrapper {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 20px 33px;
}
.dr-product .woocommerce-product-gallery__image + .woocommerce-product-gallery__image {
    width: 30%;
    width: calc( 33.333% - 22px );
    overflow: hidden;
    font-size: 0;
    border: 2px solid #519e28;
    border-radius: 12px;
}
.dr-product .proj-gallery .text.pc {
    padding-top: 19px;
    font-size: 13px;
}
.dr-product .details-prices {
    width: 367px;
}
.dr-product table.details {
    width: 100%;
    margin-top: -13px;
    border-collapse: collapse;
}
.dr-product .details tr {
    border-top: 1px solid #d9d9d9;
}
.dr-product .details tr:first-child {
    border-top: 0;
}
.dr-product .details td {
    padding: 6px 1px;
    width: 1%;
    font-size: 20px;
    white-space: nowrap;
}
.dr-product .details tr td:first-child {
    color: #6a6a6a;
    width: 99%;
}
.dr-product .details td sup {
    font-size: 13px;
}

#tabs {
    position: relative;
    margin-top: 34px;
    padding-top: 51px;
}
#tabs .header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    display: flex;
}
#tabs .header div {
    flex: 1 0;
    height: 53px;
    padding-top: 13px;
    font-size: 15px;
    text-align: center;
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
    cursor: pointer;
    user-select: none;
}
#tabs .header div.active {
    background: #fff;
    font-size: 16px;
    font-weight: 500;
    box-shadow: 0 0 19px 1px rgba(0, 0, 0, 0.12);
    clip-path: inset(-22px -22px 0 -22px);
}
#tabs .content {
    padding: 24px 31px 13px 31px;
    border-radius: 16px;
    box-shadow: 0 0 19px 1px rgba(0, 0, 0, 0.16);
}
#tabs .prices > div {
    display: none;
}
#tabs .prices > div.active {
    display: block;
}
#tabs .prices > div > div {
    padding-bottom: 10px;
    font-size: 20px;
}
#tabs .prices span {
    display: block;
    font-size: 14px;
}
#tabs .prices strong {
    font-weight: 500;
}
#tabs .btn {
    width: 176px;
    margin: 9px 0 0 0;
    padding: 10px 0 13px 0;
    font-size: 15px;
}
#tabs .btn + .btn {
    padding: 9px 0 11px 0;
    background: #fff;
    color: #539f2a;
    border: 2px solid #6ab143;
}
#tabs .date {
    margin: 10px 0 0 0;
    font-size: 12px;
}
.single-product .product-description > h2,
.related.products > h2 {
    padding: 22px 0 9px 0;
    font-size: 26px;
    font-weight: 400;
}
.single-product .product-description > h2 {
    margin-bottom: -21px;
}

/* Страница Цены */
body.tax-product_cat .woocommerce-ordering,
body.tax-product_cat .woocommerce-result-count {
    display: none;
}
body.term-15 ul.products {
    gap: 5px;
}
body.term-15 ul.products li.product {
    display: flex;
    flex-direction: row;
    width: 100%;
    align-items: center;
    padding: 0;
    border: 0;
    border-bottom: 1px solid #a4a4a4;
    border-radius: 0;
}

body.term-15 ul.products li > span {
    flex: 0 0 114px;
    text-align: right;
}
body.term-15 ul.products li > span.image {
    flex: 0 0 84px;
    text-align: left;
}
body.term-15 ul.products li > span.title {
    flex: 1 0;
    white-space: nowrap;
    text-align: left;
}
body.term-15 ul.products li > span.area {
    flex: 0 0 80px;
    padding-right: 41px;
}
body.term-15 ul.products li > span.floor {
    flex: 0 0 56px;
    text-align: center;
}
body.term-15 .products .product.header > span {
    display: block;
    font-size: 12px;
    text-align: center;
    cursor: pointer;
}
body.term-15 .products .product.header > span + span {
    background: url('img/up-down-grey.webp') no-repeat left center;
    padding-left: 16px;
}
body.term-15 .products .product.header > span.asc {
    background-image: url('img/up-down-asc-grey.webp');
}
body.term-15 .products .product.header > span.desc {
    background-image: url('img/up-down-desc-grey.webp');
}
body.term-15 .products .product.header > span.title {
    font-size: 14px;
    text-align: left;
}
body.term-15 .products .product.header > span.area {
    flex: 0 0 56px;
    margin-left: 19px;
}
body.term-15 .products .product.header > span.floor {
    flex: 0 0 60px;
    margin-left: -9px;
}
body.term-15 .products .product.header > span.price.kar {
    flex: 0 0 87px;
    margin-left: 33px;
}
body.term-15 .products .product.header > span.price.osb {
    flex: 0 0 86px;
    margin-left: 27px;
}
body.term-15 .products .product.header > span.price.gb3 {
    flex: 0 0 80px;
    margin-left: 32px;
}

body.term-15 ul.donor {
    display: none;
}

.page-reviews {
    width: 762px;
    height: 1110px;
    overflow: hidden;
    position: relative;
}

.dr-map {
    width: 100%;
    height: 500px;
    min-height: 300px;
    margin: 0 0 30px 0;
    overflow: hidden;
    background: #fff url('img/loading.gif') no-repeat center center;
}
.ymaps-cont {
    max-width: 250px;
    overflow: hidden;
    font-size: 15px;
}
img.bh {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto 15px auto;
}
.ymaps-cont .underline {
    padding: 6px 0 4px 0;
    text-decoration: none;
}
.ymaps-cont .underline a {
    color: #519e28;

    border-bottom: 1px solid #519e28;
}

/* Quiz Квиз */
.quiz .modal-body {
    width: 1064px;
    padding: 0;
    border-radius: 0;
}
.dr-quiz {
    position: relative;
    width: 100%;
    max-width: 1064px;
    height: 590px;
    background: #eeeae7;
}
.dr-quiz .step {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: .4s;
    pointer-events: auto;
}
.dr-quiz .step.hidden {
    opacity: 0;
    pointer-events: none;
}
.modal .dr-quiz .step {
    pointer-events: none;
}
.modal.show .dr-quiz .step {
    pointer-events: auto;
}
.modal.show .dr-quiz .step.hidden {
    pointer-events: none;
}
.dr-quiz .q1 {
    display: flex;
    flex-direction: column;
    flex: 0 0 804px;
    padding: 35px 30px 30px 30px;
    background: #eeeae7;
}
.dr-quiz .q2 {
    flex-grow: 1;
    padding: 19px;
    background: #e8e2de;
}
.dr-quiz h4 {
    font-size: 28px;
    font-weight: 400;
    padding-bottom: 13px;
}
.dr-quiz .prev,
.dr-quiz .next {
    width: 41px;
    height: 41px;
    background: url('/quiz/next.webp') no-repeat center;
    background-size: 12px 12px;
    border-radius: 50%;
}
.dr-quiz .next {
    border: 1px solid #d9d5d2;
    cursor: not-allowed;
}
.dr-quiz .prev,
.dr-quiz .next.active {
    background-color: #539f2a;
    background-image: url('/quiz/prev.webp');
    border: 1px solid #539f2a;
    cursor: pointer;
    box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.16);
}
.dr-quiz .next.active {
    transform: rotate(180deg);
}
.dr-quiz .radio-group {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 16px;
    align-content: flex-start;
    height: 400px;
    overflow: hidden;
}
.dr-quiz .radio-group.img {
    flex-direction: row;
}
.dr-quiz .radio-group label {
    display: flex;
    align-items: center;
    width: 40%;
    width: calc( 50% - 10px );
    padding: 11px 15px 12px 15px;
    font-size: 16px;
    border: 1px solid #d9d0c9;
    border-radius: 5px;
    cursor: pointer;
}
.dr-quiz .radio-group label.checked {
    border: 1px solid #539f2a;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.26);
}
.dr-quiz .radio-group label.input {
    padding: 0 0 0 15px;
}
.dr-quiz .radio-group.img label {
    width: 28%;
    width: calc( 33% - 30px );
    flex-wrap: wrap;
    align-items: flex-start;
    padding: 0;
}
.dr-quiz .radio-group.img label div {
    width: 100%;
    aspect-ratio: 1 / 1;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}
.dr-quiz .radio-group.img label div + div {
    display: flex;
    align-items: center;
    aspect-ratio: auto;
    padding: 11px 15px 10px 15px;
}
.dr-quiz .radio-label input[type="radio"] {
    position: absolute;
    width: 0;
    height: 0;
    opacity: 0;
}
.dr-quiz .custom-radio {
    flex: 0 0 20px;
    display: inline-block;
    position: relative;
    width: 20px;
    height: 20px;
    margin-right: 16px;
    background: #d9d0c9;
    border: 2px solid #d9d0c9;
    border-radius: 50%;
    transition: all .15s ease-in-out;
    box-sizing: border-box;
}
.dr-quiz .custom-radio::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    background-color: #d9d0c9;
    border-radius: 50%;
    transform: translate(-50%, -50%) scale(0);
    transition: transform .15s ease-in-out;
}
.dr-quiz .radio-label input[type="radio"]:checked ~ .custom-radio::after {
    background: #539f2a;
    transform: translate(-50%, -50%) scale(1);
}
.dr-quiz .radio-label input[type="radio"]:checked ~ .custom-radio {
    background: #eeeae7;
    border-color: #539f2a;
    box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.16);
}
.dr-quiz .radio-label input[type="radio"]:focus-visible ~ .custom-radio {
    outline: 2px solid #d9d0c9;
    outline-offset: 3px;
}
.dr-quiz .radio-label input[type="text"] {
    width: 100%;
    height: 49px;
    padding: 0 20px;
    background: #dfd8d2;
    font-size: 16px;
    border: 0;
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
}
.dr-quiz .radio-label i {
    font-style: normal;
}
.dr-quiz .q1 .bottom {
    flex-grow: 1;
    display: flex;
    align-items: flex-end;
    gap: 20px;
}
.dr-quiz .progress-bar {
    flex-grow: 1;
    height: 6px;
    margin: 0 20px 11px 0;
    background: #cec3ba;
    border-radius: 3px;
}
.dr-quiz .progress-bar div {
    position: relative;
    height: 100%;
    background: #539f2a;
    border-radius: 3px;
}
.dr-quiz .progress-bar span {
    position: absolute;
    top: -28px;
    right: -14px;
    font-weight: 600;
    color: #539f2a;
}
.dr-quiz .step:nth-child( n + 2 ) .dr-discount {
    display: flex;
    padding: 16px 15px 15px 15px;
    background: #ffdd6f;
    font-size: 14px;
    font-weight: 600;
    line-height: 16px;
    border: 1px solid #fdcd32;
    border-radius: 4px;
}
.modal .dr-quiz .step:nth-child( n + 2 ) .q2 .dr-discount {
    margin-top: 20px;
}
.dr-quiz .step:nth-child( n + 2 ) .dr-discount span {
    flex-grow: 1;
    font-size: 16px;
    text-align: right;
}
.dr-quiz .step:nth-child( n + 2 ) .dr-discount span:after {
    content: ' ₽';
    font-size: 15px;
}

.dr-quiz .step:first-child .q1 {
    flex: 0 0 620px;
    background: url('/quiz/step1.webp') no-repeat left center;
    background-size: cover;
}
.dr-quiz .step:first-child .q2 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0;
}
.dr-quiz .step:first-child h3 {
    padding: 98px 32px 0 32px;
    font-size: 28px;
    font-weight: 500;
}
.dr-quiz .step:first-child .dream {
    width: 100%;
    height: 69px;
    padding: 24px 0 0 109px;
    background: url('/quiz/logo.webp') no-repeat 33px center;
    border-bottom: 1px solid #d9d0c9;
}
.dr-quiz .step:first-child .q2 p {
    font-size: 15px;
    padding: 0 45px 0 32px;
}
.dr-quiz .step:first-child .next.active {
    width: 209px;
    height: 56px;
    margin: 27px 0 37px 32px;
    padding: 14px;
    background: linear-gradient(90deg, #529f29, #6ab143, #529f29);
    color: #fff;
    font-size: 18px;
    text-align: center;
    border: 0;
    border-radius: 28px;
    transform: rotate(0deg);
}
.dr-quiz .step:first-child .dr-discount {
    display: flex;
    margin: 0 auto;
    padding-right: 7px;
    background: #f7cd47;
    font-size: 13px;
    font-weight: 500;
    border: 1px solid #f7cd47;
    border-radius: 4px;
}
.dr-quiz .step:first-child .dr-discount div {
    margin-right: 9px;
    padding: 2px 6px 1px 6px;
    background: #faf1d6;
    font-size: 11px;
    font-weight: 400;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}
.dr-quiz .step:first-child .contacts {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    margin: 0 auto;
    padding: 17px 0 17px 0;
    font-size: 11px;
    text-align: center;
    gap: 4px;
}
.dr-quiz .step:first-child .contacts a {
    font-size: 16px;
}

.dr-quiz .step:last-child .q1 {
    flex: 0 0 100%;
    padding: 35px 215px 30px 215px;
}
.dr-quiz .step:last-child .q2 {
    display: none;
}
.dr-quiz .step:last-child h4 {
    text-align: center;
    padding: 50px 0 50px 0;
}
.dr-quiz .step:last-child form {
    padding: 25px 35px 30px 35px;
    border: 1px solid #d9d0c9;
    border-radius: 3px;
    box-shadow: 0 9px 40px 0 rgba(217, 208, 201);
}


@media (max-width: 1920px) {
    body.home .top {
        background-size: cover;
    }
}

@media (max-width: 1390px) {
    header .wrap {
        height: 118px;
    }
    header .logo {
        height: 57px;
    }
    header .messengers {
        margin: 9px 10px 0 0;
    }
    header .messengers a {
        width: 19px;
        height: 19px;
        background-size: contain;
    }
    header .phone {
        font-size: 23px;
    }
    header .email {
        display: block;
        margin-top: -3px;
    }
    header .callback {
        margin: 7px 0 0 21px;
        padding: 12px 27px 13px 27px;
    }

    main, body > div#primary.content-area {
        padding: 143px 0 35px 0;
    }

    body.home main {
        padding: 118px 0 35px 0;
    }
    body.home .top .wrap {
        min-height: 539px;
    }
    body.home h1 {
        padding: 40px 0 7px 0;
        font-size: 43px;
    }
    body.home .top strong {
        font-size: 28px;
    }
    body.home .top .btn, body.home .projects .btn, body.home .built-house .center .btn {
        margin: 23px 0 12px 0;
        padding: 15px 40px;
        font-size: 16px;
    }
    body.home .top .right a {
        margin: 0 0 50px 0;
    }
}

@media (max-width: 1240px) {
    .wrap {
        width: auto;
        margin-left: 26px;
        margin-right: 26px;
    }
    header nav {
        font-size: 14px;
    }
    header nav li .sub-menu {
        top: 17px;
    }
    body.home .top .left {
        max-width: 65%;
    }
    body.home h1 {
        font-size: 40px;
    }
    body.home .advantages > a {
        font-size: 14px;
    }
    body.home h2,
	h2 {
        font-size: 26px;
    }
    body.home .projects .details {
        padding: 9px 14px 6px 14px;
    }
    body.home .projects .details > div > div {
        font-size: 12px;
    }
    body.home .projects .details > div {
        padding: 0 0 10px 32px;
        font-size: 13px;
    }
    body.home .projects .details .area {
        background-position: 0 5px;
        background-size: 26px 26px;
    }
    body.home .projects .details .house {
        padding: 0 0 5px 46px;
        background-position: 6px 6px;
        background-size: 34px 25px;
    }
    body.home .projects .details .hotel {
        padding: 0 0 5px 46px;
        background-position: 6px 6px;
        background-size: 34px 25px;
    }
    .video-container .one-post {
        width: calc( 33% - 16px );
    }
    body.home .razrab-proekt {
        background-size: contain;
        font-size: 27px;
    }
    body.home .wrap.remote {
        margin: 0 auto;
        overflow: hidden;
    }
    body.home .wrap.remote img {
        width: 100%;
        height: auto;
    }
    body.home .wrap.last .text > div {
        width: 463px;
    }
    footer .wrap {
        font-size: 14px;
    }
    footer .phone {
        padding: 5px 0 5px 50px;
    }
    footer .right-col {
        flex: 0 0 60%;
    }
    body.post-type-archive-product .create-proj,
    body.tax-product_cat .create-proj {
         padding: 25px 346px 25px 37px;
         font-size: 19px;
    }
    .got-pros {
        font-size: 19px;
    }
    .sorting {
        flex-wrap: wrap;
        gap: 20px;
    }
    .sorting > div {
        margin: 0;
    }
    .dr-product .details-prices {
        width: 100%;
        display: flex;
        flex-wrap: nowrap;
        align-items: flex-start;
        padding: 30px 0 20px 0;
    }
    .dr-product table.details {
        width: 40%;
        margin: 0 80px 0 0;
    }
    #tabs {
        margin-top: 0;
    }
    .related.products .products li.product:last-child {
        display: none;
    }
    .related.products .products li.product {
        width: 30%;
        width: calc( 33% - 18px );
    }
    body.term-15 ul.products li > span.title {
        white-space: normal;
    }
    .dr-quiz {
        max-width: 500px;
        height: auto;
    }
    div:not(.modal-body) .dr-quiz {
        scroll-margin-top: -80px;
    }
    .dr-quiz .step {
        flex-direction: column;
    }
    .dr-quiz .q1 {
        flex: 0 1 100%;
        padding: 12px 14px 60px 14px;
    }

    .dr-quiz h4 {
        font-size: 5.7vw;
    }
    .dr-quiz .radio-group {
        height: auto;
        gap: 14px;
    }
    .dr-quiz .radio-group label {
        width: 100%;
    }
    .dr-quiz .radio-group.img label {
        width: 40%;
        width: calc( 50% - 9px );
    }
    .dr-quiz .radio-group.img .radio-label div + div {
        padding: 11px 3px 10px 8px;
        font-size: 14px;
        aword-break: break-all;
    }
    .dr-quiz .radio-group.img .custom-radio {
        margin-right: 9px;
    }
    .dr-quiz .q1 .bottom {
        padding-top: 10px;
    }
    .dr-quiz .progress-bar {
        margin: 0 32px 18px 3px;
    }
    .dr-quiz .progress-bar span {
        top: -23px;
        right: -16px;
        font-size: 13px;
    }
    .dr-quiz .step:nth-child( n + 2 ) .q2 {
        position: relative;
        flex: 0 0 0;
        padding: 0;
        background: #eeeae7;
    }
    .dr-quiz .step:nth-child( n + 2 ) .q2 .dr-discount {
        position: absolute;
        top: -45px;
        left: 14px;
        padding: 9px 15px 8px 15px;
    }

    .dr-quiz .step:first-child .q1 {
        flex: 0 1 100%;
    }
    .dr-quiz .step:first-child .dream {
        width: 100%;
        height: 55px;
        padding: 18px 0 0 81px;
        background: url('/quiz/logo.webp') no-repeat 33px center;
        background-size: 26px 26px;
        border-bottom: 1px solid #d9d0c9;
    }
    .dr-quiz .step:first-child h3 {
        padding: 25px 20px 0 20px;
        font-size: 5.7vw;
    }
    .dr-quiz .step:first-child .next.active {
        height: 50px;
        margin: 17px auto 37px auto;
        padding: 11px;
    }
    .dr-quiz .step:first-child .q2 p {
        font-size: 15px;
        padding: 0 20px 0 20px;
    }

    .dr-quiz .step:last-child .q1 {
        padding: 12px 14px 30px 14px;
    }
    .dr-quiz .step:last-child form {
        padding: 0;
        border: 0;
        border-radius: 3px;
        box-shadow: none;
    }

}

@media (max-width: 1000px) {
    .mob,
    .mob.btn {
        display: block;
    }
    .pc,
    header .email {
        display: none;
    }
    .btn,
    a.btn, a.btn:hover, a.btn:active, a.btn:visited {
        padding: 18px 44px;
        background: linear-gradient(90deg, #529f29, #6ab143, #529f29);
        color: #fff;
        font-weight: 500;
    }
    main, body > div#primary.content-area {
        padding: 94px 0 35px 0;
    }
    header {
        box-shadow: 0 1px 17px 0 rgba(0, 0, 0, 0.2);
    }
    header .wrap {
        height: 75px;
        padding-top: 20px;
    }
    header .logo {
        width: 74px;
        height: 40px;
        margin-top: 1px;
    }
    header .messengers {
        margin: 5px 6px 0 0;
    }
    header .messengers a {
        width: 28px;
        height: 28px;
        margin-right: 3px;
        background-size: contain;
    }
    header .messengers .mess-max {
        background-image: url('img/max-m.webp');
        margin-right: 3px;
    }
    header .messengers .whatsapp {
        background-image: url('img/whatsapp-m.webp');
    }
    header .messengers .telegram {
        background-image: url('img/telegram-m.webp');
    }
    header .phone {
        width: 28px;
        height: 28px;
        margin: 5px 0 0 0;
        background: url('img/phone.webp') no-repeat center center;
        background-size: 23px 23px;
        font-size: 0;
    }
    /*    header nav {
            position: absolute;
            top: 75px;
            left: 0;
            height: 0;
            width: 100%;
            padding: 7px 16px 0 16px;
            overflow: hidden;
            background: #fff;
            transition: height 0.2s ease-out 0s;
        }
        header nav.show {
            height: 333px;
            box-shadow: 0px 15px 19px -9px rgba(0, 0, 0, 0.15);
        }*/
    header nav {
        position: fixed;
        top: 75px;
        left: 0;
        width: 100%;
        padding: 7px 16px 20px 16px;
        background: #fff;
        overflow: hidden;
        opacity: 0;
        box-shadow: 0 1px 17px 0 rgba(0, 0, 0, 0.2);
        clip-path: inset(0 0 -19px 0);
        pointer-events: none;
        transition: opacity .2s;
    }
    header nav.show {
        opacity: 1;
        pointer-events: auto;
    }
    header nav ul {
        flex-direction: column;
    }
    header nav > ul > li:first-child {
        display: block;
    }
    header nav > ul > li:nth-child(2),
    header nav > ul > li:nth-child(4) {
        display: none;
    }
    header nav li a {
        display: block;
        padding: 9px 16px;
        afont-size: 14px;
    }
    header nav li.has-child > a:after {
        display: none;
    }
    header nav li .sub-menu {
        position: static;
        margin: 0;
        opacity: 1;
        white-space: normal;
        box-shadow: none;
        clip-path: none;
    }
    header ul.sub-menu li {
        padding: 0;
    }
    header ul.sub-menu a {
        padding: 9px 10px 9px 30px;
        font-size: 15px;
        font-weight: 300;
    }
    header .menu {
        margin: 2px 0 0 10px;
        padding: 8px 13px;
        font-size: 13px;
        font-weight: 500;
        text-transform: uppercase;
        background: #519e28;
    }
    header nav .callback {
        width: 200px;
        text-align: center;
        margin: 7px 0 0 21px;
        padding: 12px 27px 13px 27px;
        background: #fff;
        color: #519e28;
        border: 2px solid #519e28;
    }

    body.home main {
        padding: 73px 0 35px 0;
    }
    body.home .top {
        background-position: 58% top;
    }
    body.home .top .wrap {
        min-height: 519px;
    }
    body.home .top .left {
        max-width: 50%;
    }
    body.home h1 {
        font-size: 3vw;
    }
    body.home .top strong {
        font-size: 2.5vw;
    }
    body.home .top .last .mob {
        display: inline-block;
    }
    body.home .top .last i {
        padding-right: 2px;
    }
    body.home .top .right a {
        padding: 23px 22px 15px 21px;
    }
    body.home .top .right img:nth-child(2) {
        margin: 0 21px;
    }

    body.home .projects .slide .one-project:last-child,
    body.home .news.wrap .slide .one-post:last-child {
        display: none;
    }
    body.home .projects a.one-project {
        width: 31%;
    }
    body.home .news.wrap .one-post {
        width: 31%;
        flex: 0 0 31%;
    }
    body.home .razrab-proekt {
        width: 100%;
        aspect-ratio: 979 / 316;
        margin: 46px auto -46px auto;
        padding: 38px 40% 20px 93px;
        background-size: contain;
        font-size: 2.5vw;
    }
    body.home .razrab-proekt .btn {
        margin-top: 20px;
        padding: 14px 56px 13px 56px;
        background: #fff;
        color: #f60;
        font-size: 2.2vw;
    }
    body.home .wrap.last .zakaz-rasch {
        flex: 0 0 315px;
        width: 315px;
        height: 420px;
        margin-left: 79px;
    }
    body.home .wrap.remote {
        width: auto;
        margin: 0 26px;
    }
    body.home .wrap.last .text > div {
        width: auto;
    }
    footer .wrap {
        flex-wrap: wrap;
    }
    footer .right-col {
        flex: 0 0 100%;
        justify-content: left;
        padding-top: 20px;
        text-align: left;
    }

    body.post-type-archive-product .create-proj img {
        display: none;
    }
    .top.wrap #filters {
        display: none;
    }

    .page-reviews {
        width: 730px;
    }
    body.single-post .content {
        padding: 0;
    }
    body.single-post aside {
        display: none;
    }

    .sorting .br.mob {
        display: none;
    }

}

@media (max-width: 800px) {
    body.home .top {
        background-image: url('img/top-bg-m.webp');
        background-position: center;
    }
    body.home .top .wrap {
        display: block;
    }

    body.home .top .left {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        max-width: 580px;
    }
    body.home h1 {
        font-size: 4vw;
    }
    body.home h2,
	h2 {
        font-size: 3.8vw;
    }
    body.home .top strong {
        font-size: 3.5vw;
    }
    body.home .top .last {
        padding-top: 20px;
    }
    body.home .top .left a.btn {
        order: 2;
        margin: 23px 0 12px 0;
        padding: 15px 40px 15px 40px;
        font-size: 16px;
    }
    body.home .top .left a.btn:after {
        content: '';
        display: inline-block;
        width: 18px;
        height: 12px;
        margin-left: 10px;
        background: url('img/arrow-big-white.webp') no-repeat;
        background-size: cover;
    }
    body.home .top .right a {
        margin: 20px 0 30px 0;
    }

    body.home .advantages > a,
	.advantages-wrapp > a {
        width: 29%;
        padding: 129px 0 12px 0;
    }
    body.home .projects .slide .one-project:nth-child(3),
    body.home .news.wrap .slide .one-post:nth-child(3),
    body.home .built-house .slide .one-post:last-child {
        display: none;
    }
    body.home .projects a.one-project {
        width: 48%;
    }
    body.home .projects-category a {
        width: calc( 50% - 14px );
    }
    body.home .news.wrap a.underline {
        top: 56px;
    }
    body.home .news.wrap .one-post {
        width: 48%;
        flex: 0 0 48%;
    }
    body.home main > div.video .wrap {
        padding-bottom: 24px;
    }
    .video-container .one-post {
        width: calc( 50% - 16px );
    }
    body.home .razrab-proekt {
        width: 100%;
        height: auto;
        margin: 41px 0 0 0;
        padding: 30px 50px 30px 50px;
        background: #f60;
        font-size: 24px;
        text-align: center;
        font-weight: 700;
        line-height: 1.3;
        border-radius: 10px;
    }
    body.home .razrab-proekt .btn {
        font-size: 20px;
    }
    body.home .wrap.remote {
        width: 100%;
        margin: 0;
    }
    body.home .wrap.remote a {
        display: block;
        width: 100%;
        aspect-ratio: 720 / 522;
        background: url('img/udalennoe-str-m.webp') no-repeat;
        background-size: contain;
        font-size: 0;
    }
    body.home .wrap.remote img {
        display: none;
    }
    body.home .built-house a.one-post {
        width: 48%;
    }
    body.home .wrap.last {
        flex-wrap: wrap;
        flex-direction: column;
        align-items: center;
        padding: 21px 0 0 0;
    }
    body.home .wrap.last .text {
        order: 2;
    }
    body.home .wrap.last .text > div {
        padding: 36px 27px 16px 27px;
        border: 0;
    }
    body.home .wrap.last h2 {
        color: #000;
    }
    body.home .wrap.last .zakaz-rasch {
        flex: 0 0 315px;
        width: 315px;
        height: 420px;
        margin-left: 0;
    }
    body.home .wrap.last .zakaz-rasch .btn {
        padding: 9px;
        font-size: 18px;
    }

    .sorting {
        flex-wrap: wrap;
    }
    .products li.product {
        width: 48%;
        width: calc( 50% - 16px );
    }

    form.woocommerce-ordering {
        width: 270px;
    }

    .sorting .br.mob {
        display: block;
        width: 100%;
        height: 0;
        margin: 0;
        border: 0;
    }
    body.post-type-archive-product .create-proj {
        padding: 25px 37px 25px 37px;
        background: #f60;
        font-size: 19px;
        text-align: center;
    }
    body.post-type-archive-product .create-proj img {
        display: block;
        width: 37px;
        height: auto;
        margin: 0 auto 13px auto;
    }
    .got-pros {
        padding: 30px 48px;
    }
    .got-pros .btn {
        margin-left: 30px;
        padding: 11px 44px;
    }
    body.post-type-archive-product .bespl-ras {
        flex-direction: column;
        align-items: center;
        padding: 61px 0 0 0;
    }
    body.post-type-archive-product .bespl-ras h3 {
        width: auto;
        max-width: 351px;
        padding: 0 0 20px 0;
        font-size: 22px;
        font-weight: 500;
        text-align: center;
    }
    body.post-type-archive-product .content {
        width: 100%;
        margin: 5px 0 0 0;
    }
    .related.products .products li.product:nth-child(3) {
        display: none;
    }
    .related.products .products li.product {
        width: 48%;
        width: calc( 50% - 18px );
    }
    .dr-product .proj-gallery {
        width: 100%;
        flex: 0 0 100%;
    }
    .dr-product .woocommerce-product-gallery__image,
    .dr-product .woocommerce-product-gallery__image img {
        width: 100%;
        height: auto;
    }
    .dr-product table.details {
        margin: 0 40px 0 0;
    }
    .dr-product .details td {
        font-size: 18px;
    }

    body.page .wrap > .content {
        width: 100%;
    }
    .page-reviews {
        width: 100%;
    }
    .one-post {
        width: 48%;
    }


}

@media (max-width: 599px) {
    h1 {
        font-size: 6vw;
    }
    main,
    body > div#primary.content-area {
        padding: 94px 0 79px 0;
    }
    header nav .callback {
        margin: 20px auto 13px auto;
    }
    footer {
        padding: 26px 0 45px 0;
    }
    footer .wrap {
        display: block;
        line-height: 2;
        font-size: 3.3vw;
    }
    footer .sm {
        top: -76px;
        width: 100%;
        justify-content: space-between;
    }
    footer .sm a {
        width: 30px;
        height: 30px;
        margin-left: 0;
    }
    footer .logo {
        width: 72px;
        height: 38px;
        margin-bottom: 5px;
    }
    footer .address {
        padding: 0 0 0 28px;
        background-size: 15px 15px;
    }
    footer .address + div {
        padding: 0;
    }
    footer .phone {
        padding: 0 0 0 28px;
        background-size: 14px 14px;
    }
    footer .email {
        padding: 0 0 0 28px;
        background-size: 14px 10px;
    }
    footer .copyright {
        padding: 17px 0 18px;
        font-size: 3.3vw;
    }
    footer .right-col {
        display: block;
        text-align: left;
        font-size: 3vw;
    }
    footer .right-col span {
        display: block;
    }
    .modal-body {
        width: auto;
        margin: 0 20px;
        padding: 20px;
    }
    form.dr-form .alert {
        height: auto;
        min-height: 15px;
    }
    form.dr-form .answer h3,
    body.post-type-archive-product .bespl-ras form.dr-form .answer h3 {
        font-size: 5vw;
    }
    form.dr-form p.privacy, form.dr-form p.privacy a {
        text-align: center;
    }
    body.home main {
        padding: 73px 0 67px 0;
    }
    body.home h1 {
        padding: 37px 0 0 0;
        font-size: 24px;
        line-height: 1.3;
    }
    body.home .top strong {
        font-size: 19px;
        padding: 0 0 14px 0;
    }
    body.home .top strong sup {
        font-size: 10px;
    }
    body.home .top .v {
        padding: 1px 0 1px 25px;
        background-size: 14px 14px;
        font-size: 15px;
    }
    body.home .top .left .last {
        padding: 18px 40px 1px 21px;
        font-size: 12px;
    }
    body.home .top .right a {
        width: 100%;
        max-width: 420px;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: flex-start;
        margin: 13px 0 45px 0;
        padding: 14px 12px 31px 12px;
        border-radius: 5px;
    }
    body.home .top .right span {
        width: 100%;
        padding: 0 0 13px 0;
        font-size: 15px;
    }
    body.home .top .right img:first-child {
        width: 86px;
        margin: 2px 0 0 0;
        order: 2;
    }
    body.home .top .right img:nth-child(2) {
        width: 39px;
        margin: 0 24px;
        order: 3;
    }
    body.home .top .right img:nth-child(3) {
        width: 103px;
        margin: 6px 0 0 0;
        order: 4;
    }
    body.home .wrap.advantages,
	.advantages-wrapp {
        flex-direction: column;
        padding: 5px 0;
    }
    body.home .advantages > a,
	.advantages-wrapp > a {
        width: 100%;
        padding: 12px 0 12px 51px;
        background-position: 1px center;
        background-size: 30px 31px;
        font-size: 15px;
        text-align: left;
        border-bottom: 1px solid #97bc84;
    }
    body.home .advantages > a:last-child {
        border: 0;
    }
    body.home .advantages > a:nth-child(2) span,
    body.home .advantages > a:nth-child(3) span,
	.advantages-wrapp > a:nth-child(2) span,
    .advantages-wrapp > a:nth-child(3) span {
        display: inline-block;
    }
    body.home .advantages strong,
	.advantages-wrapp strong{
        font-size: 15px;
    }
    body.home h2,
	h2 {
        padding: 21px 0 14px 0;
        font-size: 22px;
        font-weight: 500;
        text-align: center;
    }
    body.home .projects .wrap {
        padding-bottom: 42px;
    }
    body.home .wrap div.slide,
    body.home main .news.wrap div.slide,
    .slide.dr-widget {
        display: flex;
        width: calc(100% + 26px);
        overflow-x: scroll;
        gap: 20px;
        -ms-overflow-style: none;
        scrollbar-width: none;
    }
    body.home .slide::-webkit-scrollbar,
    .slide.dr-widget::-webkit-scrollbar {
        display: none;
    }
    .slide.dr-widget {
        padding-right: 26px;
    }
    body.home .projects h2 {
        padding: 21px 0 0 0;
    }
    body.home .projects .slide {
        padding-top: 20px;
    }
    body.home .projects a.one-project {
        flex: 0 0 230px;
        width: 230px;
        box-shadow: 0 0 13px 1px rgba(0, 0, 0, 0.12);
    }
    body.home .projects .btn {
        margin: 0 0 0 -20px;
    }
    body.home .projects .slide .one-project:nth-child(3),
    body.home .news.wrap .slide .one-post:nth-child(3),
    body.home .built-house .slide .one-post:last-child,
    body.home .projects .slide .one-project:last-child,
    body.home .news.wrap .slide .one-post:last-child {
        display: flex;
    }
    body.home .projects-category {
        gap: 25px 12px;
        padding-bottom: 40px;
    }
    body.home .projects-category h2 {
        padding-bottom: 0;
    }
    body.home .projects-category a {
        width: 46%;
        width: calc(50% - 6px);
        padding: 125px 20px 12px 20px;
        background-position: center 24px;
        background-size: auto 87px;
        font-size: 15px;
        line-height: 1.3;
        border-radius: 3px;
    }
    body.home .projects-category a sup {
        font-size: 8px;
    }
    body.home .news.wrap .one-post {
        width: 230px;
        flex: 0 0 230px;
    }
    body.home .news.wrap {
        margin-right: 0;
        padding-bottom: 20px;
        overflow: visible;
    }
    body.home .news.wrap h2 {
        padding-right: 26px;
    }
    body.home .news.wrap a.underline {
        position: static;
        font-size: 17px;
        font-weight: 300;
    }
    body.home .projects.hotels .center,
    body.home .wrap.built-house h2,
    body.home .wrap.built-house .center {
        padding-right: 26px;
    }
    body.home .news.wrap a.underline:after {
        content: '';
        display: inline-block;
        width: 19px;
        height: 12px;
        margin: 0 0 0 10px;
        background: url('img/arrow-big-grey.webp') no-repeat;
        background-size: contain;
    }
    body.home .razrab-proekt {
        margin: 41px 0 30px 0;
    }
    body.home .projects.hotels .center .btn {
        margin: 0;
    }
    body.home .wrap.built-house {
        margin-right: 0;
        padding-top: 20px;
    }
    body.home .built-house div.center .btn {
        margin: 0 0 30px 0;
    }
    body.home .wrap.last .text > div {
        padding: 36px 0 16px 0;
    }
    body.home .wrap.last h2 {
        padding: 10px 20px 18px 20px;
        font-size: 22px;
    }
    .reviews-container {
        background: #f6f6f6;
    }
    body.home .reviews {
        width: 100%;
        height: 498px;
        margin: 12px auto 50px auto;
    }
    body.home .slide {
        padding-right: 20px;
    }
    .video-container {
        margin: 0 24px;
    }
    .video-container .one-post {
        width: 100%;
    }
    .video-container + .prev,
    .video-container + .prev + .next {
        width: 33px;
        height: 30px;
        position: absolute;
        right: -18px;
        top: 45%;
    }
    .video-container + .prev {
        right: auto;
        left: -18px;
    }
    .built-house .slide .one-post {
        width: 230px;
        flex: 0 0 230px;
    }
    .one-post {
        width: 100%;
    }
    .slide.dr-widget .one-post {
        width: 75%;
    }
    body.single-post .post-image {
        width: 100%;
        height: auto;
    }
    body.post-type-archive-product .create-proj {
        padding: 15px 15px 155px 25px;
        background: #f60 url('img/create-proj-m.webp') no-repeat center bottom;
        background-size: contain;
        font-size: 4.6vw;
    }
    body.post-type-archive-product h1,
    body.tax-product_cat h1 {
        padding: 39px 0 33px 0;
        font-size: 6.6vw;
        font-weight: 500;
        text-align: center;
        line-height: 1.4;
    }
    .sorting .filters-btn {
        height: 38px;
        line-height: 34px;
        font-size: 15px;
    }
    .top.wrap #filters.show {
        display: block;
        position: absolute;
        width: auto;
        left: 26px;
        right: 26px;
        top: 94px;
        margin: 0;
        background: #fff;
        z-index: 5;
    }
    #filters .filters-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 7px 17px 6px 17px;
        border-bottom: 1px solid #e6e6e6;
    }
    #filters .filters-close {
        width: 29px;
        height: 29px;
        background: #8d8d8d url('img/cross-w2.webp') no-repeat center;
        background-size: 19px 19px;
        border-radius: 50%;
        transform: rotate(45deg);
    }
    .products li.product {
        width: 100%;
    }
    .sorting {
        max-width: 450px;
        margin: 0 auto;
    }
    .sorting > div,
    form.woocommerce-ordering,
    .select-selected,
    .sorting #recomended {
        width: 100%;
    }
    .sorting .filters-btn {
        display: block;
        background: #539f2a;
        color: #fff;
        font-weight: 500;
    }
    .sorting .filters-btn:before {
        content: '';
        display: inline-block;
        width: 14px;
        height: 14px;
        margin: 0 10px -3px 0;
        background: url('img/filter.webp') no-repeat;
        background-size: contain;
    }
    .dr-product .details-prices {
        width: 100%;
        display: block;
    }
    .dr-product table.details {
        width: 100%;
        margin: 0;
    }
    .related.products .products li.product {
        width: 100%;
    }
    .got-pros {
        display: block;
        margin-top: 45px;
        padding: 25px 15px 35px 25px;
        font-size: 4.6vw;
        text-align: center;
        line-height: 1.5;
    }
    .got-pros .btn {
        display: block;
        width: 180px;
        margin: 30px auto 0 auto;
        padding: 11px 44px;
        text-align: center;
    }
    body.post-type-archive-product .bespl-ras {
        padding: 51px 0 0 0;
    }
    body.post-type-archive-product .bespl-ras form {
        width: auto;
        margin-top: 0;
    }
    body.post-type-archive-product .content {
        margin: 20px 0 0 0;
    }
    span.one-post.empty {
        display: none;
    }
    h2.woocommerce-loop-product__title {
        padding: 12px 11px 8px 11px;
        font-size: 15px;
    }
    #tabs {
        margin-top: 29px;
    }
    .single-product .product-description > h2 {
        margin-bottom: -11px;
    }
    body.category-83 h1 {
        padding: 12px 0 12px 0;
    }

    .modal.quiz {
        padding: 0;
    }
    .quiz .modal-body {
        margin: 0 auto;
    }
    .modal.quiz .close {
        background-color: #fff;
        opacity: 0.7;
    }
    .modal .dr-quiz .q1 {
        padding: 30px 14px 60px 14px;
    }
    .modal .dr-quiz .step:last-child .q1 {
        padding: 41px 14px 30px 14px;
    }
    .modal .dr-quiz .step:nth-child( n + 2 ) .q2 .dr-discount {
        top: -71px;
    }
}

@media (max-width: 349px) {
    header .logo {
        width: 62px;
        height: 40px;
        margin-top: 1px;
    }
    header .messengers {
        margin: 3px 6px 0 0;
    }
    header .messengers a {
        width: 25px;
        height: 25px;
    }
    header .phone {
        margin: 3px 0 0 0;
    }
    header .menu {
        margin: 2px 0 0 9px;
        padding: 7px 11px;
        font-size: 11px;
    }

    body.home h1 {
        font-size: 22px;
    }
    body.home .top strong {
        font-size: 17px;
    }
    body.home .top .v {
        padding: 3px 0 3px 25px;
        font-size: 14px;
    }
    body.home .top .right a {
        padding: 14px 9px 17px 9px;
    }
    body.home .top .right span {
        font-size: 13px;
    }
    body.home .top .right img:first-child {
        width: 77px;
        margin: 2px 0 0 0;
    }
    body.home .top .right img:nth-child(2) {
        width: 35px;
        margin: 0 17px;
    }
    body.home .top .right img:nth-child(3) {
        width: 92px;
        margin: 6px 0 0 0;
    }
    body.home .advantages > a {
        padding: 12px 0 12px 40px;
    }
    body.home .reviews-container .wrap {
        margin: 0 10px;
    }
    body.home .razrab-proekt {
        padding: 30px;
        font-size: 22px;
    }
    body.home .razrab-proekt .btn {
        padding: 14px 36px 13px 36px;
    }
    body.home .built-house div.center .btn {
        padding: 17px;
        font-size: 14px;
    }
    body.home .wrap.last .zakaz-rasch {
        flex: 0 0 100%;
        width: 100%;
    }
    form.dr-form textarea {
        height: 64px;
    }

    .page-reviews {
        width: calc( 100% + 21px );
        margin-left: -20px;
    }

    #tabs .header div,
    #tabs .header div.active {
        font-size: 14px;
    }
    #tabs .content {
        padding: 24px 17px 13px 17px;
    }
    #tabs .prices > div > div {
        font-size: 16px;
    }


}