/*
Theme Name: My WP Starter
Theme URI: https://example.com/
Author: Your Name
Author URI: https://example.com/
Description: 
Version: 1.0.0
Text Domain: my-wp-starter
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
*/

@font-face {
    font-family: 'Mr_Hamilton';
    src: url('/wp-content/themes/my-wp-starter/assets/fonts/mr_hamiltoneg.woff2') format('woff2'),
         url('/wp-content/themes/my-wp-starter/assets/fonts/mr_hamiltoneg.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@media (min-width: 1420px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1420px;
    }
}
.city__select__mobile{
    display: none;
}
.catalog__menu-wrapper__title {
    font-size: 16px;
    font-weight: 500;
    color: #584646;
    position: relative;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
.catalog__menu-wrapper__title::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100px;
    height: 3px;
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 3'%3e%3cpath fill='%23EBBFA6' d='M55.0574 -0.884723C27.5783 -0.458648 10.4168 0.0894482 5.17958 0.70689C3.26159 0.920261 1.3048 1.11096 0.850397 1.08629C0.375999 1.08629 0 1.13296 0 1.22698C0 1.29833 0.435999 1.67773 0.988797 2.03512C2.80759 3.27001 0.4356 3.22266 34.4983 2.43919C39.7171 2.32051 45.5491 2.10714 47.4482 1.98778C51.4618 1.70306 74.8102 1.56104 89.5189 1.72774C98.3961 1.82175 99.6801 1.79975 99.8389 1.48969C100.353 0.515523 100.452 0.515523 86.8889 -0.267948C74.0586 -1.02675 69.6698 -1.12276 55.0598 -0.884723H55.0574Z'/%3e%3c/svg%3e") no-repeat;
    background-size: 100% 100%;
}
.catalog__menu-wrapper {
    position: absolute;
    top: 60px;
    left: 0;
    background: #FFF9F5;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    z-index: 1000;
    width: auto;
    /* Закрытое состояние: не через display (его нельзя анимировать),
       а через visibility + pointer-events — тогда переход opacity/transform
       проигрывается плавно при открытии и закрытии. */
    display: flex;
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-10px);
    padding: 20px;
}
.catalog__menu a:hover {
    color: #FD7E91;
    text-decoration: underline;
    text-underline-offset: 5px;
}
.catalog__menu a {
    color: #5E5E5E;
    font-size: 16px;
    text-decoration: none;
}
.catalog__menu {
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 0;
    padding-top: 10px;
}

/* Когда открыто */
.catalog__menu-wrapper.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    gap: 60px;
    border-radius: 0 0 20px 20px;
}
.page-block__text ol {
    counter-reset: custom-counter;
    padding-left: 0;
    margin-bottom: 40px;
}

.page-block__text ol li {
    position: relative;
    margin-bottom: 16px; /* расстояние между пунктами */
    list-style: none; /* убираем стандартные цифры */
    counter-increment: custom-counter;
    padding-left: 30px; /* отступ для текста после цифры */
    font-size: 20px; /* размер шрифта текста */
    font-weight: 400; /* текст обычный */
    color: #4a3f3b; /* цвет текста, можешь поменять под дизайн */
}

.page-block__text ol li::before {
    content: counter(custom-counter) ".";
    position: absolute;
    left: 0;
    top: 0;
    font-size: 20px; /* размер цифры */
    font-weight: 700; /* цифра жирная */
    color: #EBBFA6; /* цвет цифры */
}
.not-found-page p {
    color: #6F6F6F;
}
.not-found-page a.btn {
    background: #584646;
    color: #fff;
    height: 60px;
    align-content: center;
    padding: 0 40px;
    border-radius: 10px;
    border: 0;
    margin-top: 30px;
}
.not-found-page-first-col{
    padding: 120px 80px;
}
.not-found-page {
    border: 1px solid #EBBFA6;
    border-radius: 20px;
    align-items: center;
    margin-top: 40px;
}
.page-block.page-block--full {
    margin-top: 100px;
    margin-bottom: 20px;
}

.text__separator {
    display: block;
    margin-bottom: 20px;
}
.page-block__text .image__box {
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    margin-bottom: 80px;
    margin-top: 80px;
}
.page-block__text .image__box div {
    background: #000000CC !important;
    color: #fff !important;
    font-style: normal !important;
    font-size: 20px !important;
    height: auto;
    align-content: center;
    text-align: left !important;
    padding: 20px !important;
    position: relative;
    bottom: 0;
    width: 100%;
    min-height: 80px;
}
.page-block__text .post_nav ul {
    display: flex;
    list-style: none;
    flex-wrap: wrap;
    gap: 10px 20px;
    padding: 0;
    flex-direction: column;
}
.page-block__text .post_nav strong {
    position: relative;
    display: inline-block;
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.page-block__text .image__box p {
    margin: 0;
}
ul#menu-nizhnee-menju-v-shapke ul.dropdown-menu {
    top: 45px !important;
    background: #FFF9F5;
    border-radius: 0 0 20px 20px;
    padding: 20px;
    border: 0;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
ul#menu-nizhnee-menju-v-shapke ul.dropdown-menu li a:hover{
    background: none;
    text-decoration: underline;
    text-underline-offset: 5px;
}
ul#menu-nizhnee-menju-v-shapke ul.dropdown-menu li a{
    padding: 0;
}
ul#menu-nizhnee-menju-v-shapke ul.dropdown-menu li {
    margin-bottom: 10px;
    padding-bottom: 10px;
}
/* Появление выпадающего меню — как у панели «Пошив штор»
   (.catalog__menu-wrapper): плавное opacity + сдвиг сверху вниз (0.3s).
   Bootstrap по клику вешает класс .show и инлайн display:block — держим
   меню в потоке (display:block !important) и анимируем opacity + transform.
   Popper отключён через data-bs-display="static" (functions.php), поэтому
   инлайн transform не ставится и наш сдвиг не затирается. */
ul#menu-nizhnee-menju-v-shapke ul.dropdown-menu {
    display: block !important;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
    pointer-events: none;
}
ul#menu-nizhnee-menju-v-shapke ul.dropdown-menu.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}
.video_box {
    margin-bottom: 80px;
    margin-top: 80px;
}
.page-block__text .post_nav strong::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100px;
    height: 3px;
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 3'%3e%3cpath fill='%23EBBFA6' d='M55.0574 -0.884723C27.5783 -0.458648 10.4168 0.0894482 5.17958 0.70689C3.26159 0.920261 1.3048 1.11096 0.850397 1.08629C0.375999 1.08629 0 1.13296 0 1.22698C0 1.29833 0.435999 1.67773 0.988797 2.03512C2.80759 3.27001 0.4356 3.22266 34.4983 2.43919C39.7171 2.32051 45.5491 2.10714 47.4482 1.98778C51.4618 1.70306 74.8102 1.56104 89.5189 1.72774C98.3961 1.82175 99.6801 1.79975 99.8389 1.48969C100.353 0.515523 100.452 0.515523 86.8889 -0.267948C74.0586 -1.02675 69.6698 -1.12276 55.0598 -0.884723H55.0574Z'/%3e%3c/svg%3e") no-repeat;
    background-size: 100% 100%;
}
.page-block__text ul {
    list-style: none;
    padding-left: 0;
    margin-left: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.page-block__text ul li {
    position: relative;
    padding-left: 28px;
    margin-bottom: 10px;
    width: 100%;
}
.page-block__text p {
    color: #584646;
    line-height: 140%;
}
.page-block__text ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 10px; /* вертикально подровнять с текстом */
    width: 15px; /* размеры под твой SVG */
    height: 13px;
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='15' height='13' viewBox='0 0 15 13' fill='none'%3e%3cpath d='M6.39959 12.3594C6.35715 12.3594 6.31517 12.3506 6.27629 12.3336C6.2374 12.3166 6.20246 12.2917 6.17365 12.2606L0.0817469 5.67088C0.0411367 5.62694 0.0142147 5.57213 0.00427583 5.51313C-0.00566304 5.45414 0.00181231 5.39352 0.0257871 5.33871C0.0497619 5.2839 0.0891961 5.23726 0.139263 5.20452C0.189331 5.17177 0.247859 5.15432 0.307685 5.15432H3.23999C3.28402 5.15433 3.32753 5.16378 3.3676 5.18203C3.40766 5.20029 3.44334 5.22692 3.47224 5.26014L5.50818 7.60242C5.72821 7.13208 6.15415 6.34894 6.90159 5.39466C8.00658 3.98389 10.0619 1.90909 13.5783 0.0361075C13.6463 -8.57096e-05 13.7254 -0.00947928 13.7999 0.00978174C13.8745 0.0290428 13.9391 0.0755582 13.981 0.140143C14.023 0.204728 14.0392 0.282687 14.0264 0.358628C14.0137 0.434568 13.9729 0.502968 13.9122 0.550323C13.8988 0.560815 12.5429 1.62851 10.9826 3.58417C9.54652 5.38386 7.63753 8.32663 6.69818 12.1257C6.68168 12.1925 6.6433 12.2517 6.58916 12.2941C6.53503 12.3365 6.46825 12.3595 6.3995 12.3596L6.39959 12.3594Z' fill='%23EBBFA6'/%3e%3c/svg%3e") no-repeat;
    background-size: contain;
}
.page-block__text .post_nav ul li::before{
    content: '';
    position: absolute;
    left: 0;
    top: 10px; /* вертикально подровнять с текстом */
    width: 10px;
    height: 10px;
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10' fill='none'%3e%3ccircle cx='4.8' cy='4.8' r='3.8' stroke='url(%23paint0_linear_3915_5199)' stroke-width='2'/%3e%3cdefs%3e%3clinearGradient id='paint0_linear_3915_5199' x1='0' y1='4.8' x2='9.6' y2='4.8' gradientUnits='userSpaceOnUse'%3e%3cstop stop-color='%23FED6CB'/%3e%3cstop offset='1' stop-color='%23EBBFA6'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e") no-repeat;
    background-size: contain;
}
.page-block__text ul li.post_nav_2 {
    margin-left: 36px;
    padding-left: 21px;
}
.page-block__text .post_nav a:hover{
    color: #584646;
    text-decoration: underline;
    text-underline-offset: 10px;
}
.page-block__text .post_nav a {
    text-decoration: none;
    color: #6F6F6F;
}
.page-block__text .post_nav {
    padding: 40px;
    background: #FFF9F5;
    border-radius: 20px;
    margin-bottom: 80px;
}
.page-block__text h2 {
    color: #584646;
    font-size: 40px;
    font-weight: 500;
    margin-bottom: 40px;
}
.page-block__text h3 {
    color: #584646;
    font-size: 40px;
    font-weight: 500;
    margin-bottom: 40px;
    margin-top: 40px;
}

.readmore-hidden-wrapper {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease;
}

.readmore-hidden-wrapper.is-expanded {
    overflow: visible;
}

.page-block__readmore {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
    margin-bottom: 20px;
    cursor: pointer;
}

.page-block.page-block--full h4 {
    text-align: left !important;
}

/* Contact page */
.custom-form-container span.wpcf7-form-control.wpcf7-acceptance span.wpcf7-list-item {
    margin: 0;
}
span.wpcf7-form-control.wpcf7-acceptance span.wpcf7-list-item-label a {
    color: #6F6F6F;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.mainpage__form span.wpcf7-list-item-label a{
    color: white!important;
}

.custom-form-container span.wpcf7-form-control.wpcf7-acceptance span.wpcf7-list-item-label {
    font-size: 12px;
    line-height: 120%;
    display: block;
    font-weight: 400;
    color: #6F6F6F;
}
.callback-form.custom-form-container input.wpcf7-form-control[type=submit],
.contact__page__content__form__block input.wpcf7-form-control[type=submit]{
    background: #584646;
    border: 0;
    color: #fff;
    height: 48px;
    padding: 0 40px;
    border-radius: 10px;
}
.dnd-upload-status .dnd-upload-details .dnd-progress-bar, .wpcf7-spinner{
    display: none;
}
.codedropz-upload-wrapper span.has-error-msg {
    width: 100%;
    background: red;
    border-radius: 10px;
    color: #fff;
    font-style: normal;
    padding: 4px 20px;
    margin: 10px 0;
    text-align: center;
    font-weight: 500;
}
.custom-form-container span.wpcf7-not-valid-tip:before {
    content: "";
    position: absolute;
    left: 10%;
    top: -7px;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 12px solid red;
    right: auto;
}
.custom-form-container span.wpcf7-not-valid-tip {
    background: red;
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    text-align: center;
    border-radius: 5px;
    width: 100%;
    line-height: 1.2;
    padding: 2px 10px;
    position: relative;
    bottom: -8px;
}
.dnd-upload-status .dnd-upload-details .remove-file {
    color: #fff;
}
.dnd-upload-status .dnd-upload-details .remove-file span:after {
    content: '+';
    width: 15px;
    height: 15px;
    display: block;
    background: none;
    font-family: 'Montserrat';
    text-align: right;
    align-content: center;
    position: relative;
    top: -7px;
    font-size: 22px;
    transform: rotate(45deg);
    left: 5px;
}
.dnd-upload-details span.dnd-icon-remove.deleting {
    display: none;
}
.dnd-upload-details span.dnd-icon-remove {
    background: red;
    display: block;
    border-radius: 100%;
    padding: 2px;
}
.dnd-upload-status {
    width: calc(100% / 5);
    display: inline-flex;
}
.dnd-upload-status .dnd-upload-image {
    display: none;
}
.dnd-upload-status .dnd-upload-details {
    padding-left: 10px;
    width: calc(100% - 40px);
}
.dnd-upload-status .dnd-upload-details .name {
    display: block;
    padding: 0;
    overflow: hidden;
}
.dnd-upload-status .dnd-upload-details .name span {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    color: #584646;
    font-size: 14px;
    font-weight: bold;
}
.dnd-upload-status .dnd-upload-details .name em {
    display: block;
    color: #584646;
    font-size: 14px;
    font-weight: 100;
    font-style: normal;
}
.codedropz-upload-inner .codedropz-btn-wrap a.cd-upload-btn:after {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
}
span.dnd-upload-counter {
    display: none;
}
.contact__page__content__form textarea.wpcf7-form-control {
    background: transparent;
    padding: 16px;
    border-radius: 10px;
    max-height: 156px;
    border: 1px solid #E1DBDB;
}
.contact__page__content__form  input[type=text]:focus,
.contact__page__content__form  input[type=tel]:focus,
.contact__page__content__form  input[type=email]:focus,
.contact__page__content__form textarea:focus
{
    box-shadow: none;
    border-color: #584646;
}
.contact__page__content__form  input[type=text], .contact__page__content__form  input[type=tel], .contact__page__content__form  input[type=email] {
    background: transparent;
    height: 48px;
    border-radius: 10px;
    border: 1px solid #E1DBDB;
    color: #6F6F6F;
    padding-left: 16px;
}
.contact__page__content__form__block__title {
    font-size: 20px;
    color: #584646;
    margin-bottom: 20px;
}
.custom-dz-icon {
    span.dnd-upload-counter {
        display: none;
    }
    width: 37px;
    height: 32px;
    background: url('/wp-content/themes/my-wp-starter/images/upload.svg') no-repeat center center;
    background-size: contain;
    position: absolute;
    right: 16px;
    top: 16px;
    pointer-events: none;
}
.dz-extra-info {
    margin-top: 10px;
}
span.dz-description {
    display: block;
    font-size: 16px;
    font-weight: 400;
    line-height: 140%;
}
.codedropz-upload-container {
    padding: 20px;
}
.codedropz-upload-inner a.cd-upload-btn {
    color: #6F6F6F;
}
.codedropz-upload-handler {
    border: 2px dashed #EBBFA6;
    border-radius: 10px;
}
.codedropz-upload-inner {
    color: #6F6F6F;
    display: flex;
    text-align: left;
    flex-wrap: wrap;
    gap: 0 5px;
    line-height: 140%;
    font-size: 16px;
    font-weight: 400;
    margin: 0;
}
.custom-form-container {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: center;
}
.contact__page__content__form__block {
    background: #FFF9F5;
    padding: 40px;
    border-radius: 20px;
}
.contact__page__content__form__req__subtitle {
    color: #584646;
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 10px;
}
.contact__page__content__form__req__block {
    margin-bottom: 20px;
    color: #6F6F6F;
}
.contact__page__content__form__req__title {
    font-size: 20px;
    color: #584646;
    font-weight: 500;
    line-height: 140%;
    margin-bottom: 20px;
}
.contact__page__content__form__req {
    background: #FFF9F5;
    padding: 40px;
    border-radius: 20px;
}
.contact__page__content__form {
    padding: 40px;
    border: 1px solid #EBBFA6;
    border-radius: 20px;
    margin-top: 40px;
    display: flex;
    gap: 40px;
}
.contact__page__content__right {
    min-width: 900px;
}
.contact__page__content__right iframe {
    border-radius: 20px;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.contact__page__content__left__block.social a {
    font-weight: 800;
    color: #584646;
    text-decoration: none;
}
.contact__page__content__left__block.social div {
    line-height: 130%;
}
.contact__page__content__left__block.phones a {
    color: #6F6F6F;
    text-decoration: none;
}
.contact__page__content__left__block.email a {
    color: #6F6F6F;
}
.contact__page__content__left__block {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 20px;
}
.contact__page__content {
    display: flex;
    gap: 40px;
}
.contact__page__content__left p {
    margin: 0;
}
.contact__page__content__left {
    background: #FFF9F5;
    padding: 40px;
    border-radius: 20px;
    color: #6F6F6F;
    display: flex;
    flex-direction: column;
}
.contact__page__content__left__subtitle {
    font-weight: 700;
    color: #584646;
    width: 100%;
}
.contact__page__content__left__block.worktimecalls div{

    width: 100%;

}
.mainpage__advice{
    padding: 100px 0;
}
.contact__page__content__left__info p {
    font-size: 14px;
    line-height: 140%;
}
.contact__page__content__left__info {
    border-radius: 20px;
    padding: 20px;
    border: 1px solid #EBBFA6;
    margin-bottom: 20px;
}
.contact__page__content__left__info > div {
    margin-bottom: 10px;
    font-weight: 700;
    color: #584646;
    font-size: 14px;
}

/* Single page */
.page-siblings__slider .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.page-siblings__thumb {
    height: 340px;
}
/* Заглушка для плитки карусели, когда у страницы нет основного изображения. */
.page-siblings__thumb--placeholder {
    background: #e0e0e0;
}
.page-siblings__slider__next.swiper-button-next, .page-siblings__slider__prev.swiper-button-prev {
    width: 60px;
    height: 60px;
    background: #fff;
    border-radius: 50%;
    border: 1px solid #584646;
}
.page-siblings__slider__next.swiper-button-next svg, .page-siblings__slider__prev.swiper-button-prev svg {
    width: 20px;
    height: 20px;
}
.page-siblings__slider__next.swiper-button-next svg path, .page-siblings__slider__prev.swiper-button-prev svg path{
    fill: #584646;
}
.page-siblings__slider__next.swiper-button-next:hover, .page-siblings__slider__prev.swiper-button-prev:hover{
    background: #584646;
}
.page-siblings__slider__next.swiper-button-next:hover svg path, .page-siblings__slider__prev.swiper-button-prev:hover svg path{
    fill: #fff ;
}
section.page-section.page-section--siblings {
    margin: 100px 0;
    /* Страховка от горизонтальной прокрутки: лента Swiper-слайдера «сёстры»
       до инициализации Swiper раскладывает слайды в широкий ряд и тянет
       страницу вширь. overflow:hidden ограничивает её шириной экрана
       (так же сделано у .mainpage__portfolio). */
    overflow: hidden;
}
.page-siblings__title {
    /* В потоке flex-оверлея (а не absolute), чтобы длинный заголовок не уезжал
       под стрелку: занимает доступную ширину, лишнее обрезается многоточием. */
    flex: 1 1 auto;
    min-width: 0;
    color: #fff;
    font-size: 20px;
    padding-left: 6px;
    padding-right: 12px;
    align-content: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/* Иконка-стрелка не сжимается, остаётся справа от подписи. */
.page-siblings__item .border__button__arrow {
    flex: 0 0 auto;
}
.page-siblings__item .mainpage__tabs__overlay .border__button__arrow img {
    object-fit: none;
}
.post_nav ul li a {
    text-wrap: nowrap;
    color: #000;
    text-underline-offset: 4px;
}
.post_nav ul {
    display: flex;
    list-style: none;
    flex-wrap: wrap;
    gap: 10px 20px;
    padding: 0;
}
section.mainpage__promo {
    margin-bottom: 100px;
}
h2.page-block__title {
    color: #584646;
    font-size: 40px;
    line-height: 120%;
    padding-bottom: 0;
    margin-bottom: 0;
}
.page-block__readmore {
    color: #EBBFA6;
    text-decoration: underline;
    text-underline-offset: 5px;
    cursor: pointer;
    width: auto;
    display: inline-block;
    background: none;
    border: 0;
}

/* Ссылки внутри контента — в том же стиле, что «Читать далее» (.page-block__readmore). */
.page-block__text a,
.page-block__text-full a,
.page-section-text a {
    color: #EBBFA6;
    text-decoration: underline;
    text-underline-offset: 5px;
}

section.page-section.page-section--content-1 {
    margin-bottom: 100px;
}
.page-block.page-block--full {
    margin-top: 100px;
    overflow: hidden;
    transition: max-height 0.5s ease;
    margin-bottom: 20px;
}
.page-block__text {
    margin-top: 40px;
    color: #584646;
    font-size: 20px;
}
.page-block.page-block--full.is-expanded {
    max-height: none; /* ÐŸÐ¾ÑÑ‚Ð°Ð²ÑŒ Ñ Ð·Ð°Ð¿Ð°ÑÐ¾Ð¼ Ð¿Ð¾Ð´ Ñ‚Ð²Ð¾Ð¹ Ñ‚ÐµÐºÑÑ‚ */
}


.btns__stack a.border__button.px-5 {
    display: block;
}
.btns__stack {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(4, 1fr);
    text-align: center;
    text-transform: none;
    font-weight: 500;
    width: 85%;
}
.page-section-text {
    font-size: 20px;
    text-transform: none;
    line-height: 140%;
    width: 84%;
    margin-bottom: 50px;
}
article.page-entry.status-publish.hentry {
    position: relative;
    /* Hero на всю видимую высоту экрана минус шапка (как слайдер на главной).
       --header-h выставляет JS в footer.php; фолбэк 192px ≈ высота шапки. */
    height: calc(100vh - var(--header-h, 192px));
    min-height: 500px;
    background-color: gray;
}
.page-entry__thumb {
    position: relative;
    z-index: 1;
    height: 100%;
    overflow: hidden;
}
.page-entry__thumb img.attachment-full {
    object-fit: cover;
    height: 100%;
    width: 100%;
    max-width: none;
    /* Кадрируем через object-position (в %), а не фиксированным margin-top:
       так видимая часть одинакова на любом разрешении, в т.ч. 2K, и важное не обрезается. */
    object-position: center 30%;
}
.page-entry__thumb:after {
    content: '';
    background: #00000099;
    position: absolute;
    width: 100%;
    height: 100%;
    display: block;
    top: 0;
}
.page-section.page-section--hero-default {
    position: absolute;
    left: 50%;
    bottom: 15%;
    transform: translateX(-50%);
    z-index: 2;
    color: #fff;
    text-transform: uppercase;
    width: 100%;
    top: auto;
}
.page-section.page-section--hero-default h1 {
    font-size: 72px;
    margin-bottom: 40px;
}

/* Pagiantion */
.pagination .page-numbers:hover{
    background: #FFF9F5;
}
a.prev.page-numbers:hover svg path, a.next.page-numbers:hover svg path {
    fill: white;
}
a.prev.page-numbers:hover, a.next.page-numbers:hover {
    background: #584646;
    border-color: #584646;
}
a.prev.page-numbers, a.next.page-numbers {
    border: 1px solid #584646;
}
.pagination .page-numbers.current {
    background: #FFF9F5;
    color: #EBBFA6;
}
a.next.page-numbers svg {
    position: relative;
    top: -1px;
    right: -1px;
}
a.prev.page-numbers svg {
    position: relative;
    top: -1px;
    left: -1px;
}
.pagination .page-numbers {
    font-size: 20px;
    font-weight: 500;
    width: 40px;
    height: 40px;
    align-content: center;
    text-align: center;
    border-radius: 200px;
    text-decoration: none;
    color: #584646;
}
.pagination {
    gap: 20px;
    justify-content: center;
    padding-top: 26px;
}

/* Portfolio page */
.portfolio-wrapper.posts-list article .post-card__title a {
    color: #fff;
    text-decoration: none;
    font-size: 20px;
    font-weight: 500;
}
.portfolio-wrapper.posts-list article .post-card__title {
    position: absolute;
    bottom: 0;
    background: #00000080;
    width: 100%;
    height: 80px;
    align-content: center;
    padding-left: 26px;
}
.portfolio-wrapper.posts-list article {
    padding: 0;
    border-radius: 20px;
    overflow: hidden;
    position: relative;
}
.portfolio-wrapper.posts-list article img.attachment-card-thumb {
    object-fit: cover;
    height: 100%;
    width: 100%;
}
/* Заглушка карточки результатов поиска без основного изображения:
   серый фон, та же пропорция, что у превью card-thumb (800x534). */
.post-card__image--placeholder {
    display: block;
    width: 100%;
    aspect-ratio: 800 / 534;
    background: #e0e0e0;
}
.portfolio-wrapper.posts-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-bottom: 20px;
}

/* Filters */
span.filter-option__text {
    color: #584646;
}
.filter-panel {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.filter-panel[hidden] {
    display: none;
}
.filter-panel {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
label.filter-option:has(input:checked)::before {
    background: linear-gradient(90deg, rgba(254, 214, 203, 1) 0%, rgba(235, 191, 166, 1) 100%);
    box-shadow: none;
}
label.filter-option:has(input:checked)::after {
    content: "";
    position: absolute;
    left: 9px;
    top: 5px;
    width: 6px;
    height: 11px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
label.filter-option input{
    display: none;
}
label.filter-option {
    position: relative;
    display: flex;
    gap: 34px;
    cursor: pointer;
}
label.filter-option::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    border: 0;
    border-radius: 4px;
    transition: all 0.3s ease;
    box-shadow: inset 0 0 0 1px #E1DBDB;
}
.filter-group.filter-panel {
    padding: 20px;
    border: 1px solid #EBBFA6;
    border-radius: 10px;
    margin-top: 10px;
    margin-bottom: -12px;
}
button#reset-filters {
    background: #584646;
    color: #fff;
    margin-top: 20px;
    font-size: 14px;
    font-weight: 500;
    padding: 0 40px;
    height: 44px;
    border-radius: 8px;
}
span.selected-chip__text {
    color: #584646;
    font-weight: 500;
}
.selected-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
span.selected-chip {
    padding: 0 10px 0 16px;
    border: 1px solid #EBBFA6;
    border-radius: 20px;
    align-items: center;
    height: 34px;
}
.selected-group__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
button.selected-chip__remove.js-chip-remove:hover svg path{
    fill: #fff;
}
button.selected-chip__remove.js-chip-remove:hover{
    background: #584646;
}
button.selected-chip__remove.js-chip-remove {
    border: 0;
    background: none;
    padding: 0;
    width: 20px;
    height: 20px;
    align-content: center;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 200px;
    padding: 5px;
}
.portfolio-filters__selected-groups {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
}
.selected-group__label {
    color: #584646;
    font-weight: 600;
    margin-bottom: 4px;
}
.portfolio-filters__selected-title {
    margin-bottom: 20px;
    color: #584646;
    font-size: 20px;
    font-weight: 500;
}
.portfolio-filters__selected.js-filters-selected {
    padding: 24px;
    background: #FFF9F5;
    margin-top: 20px;
    border-radius: 10px;
}
.portfolio-filters__row {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
button.filter-toggle.js-filter-toggle {
    border: 1px solid #F2F2F2;
    background: #fff;
    height: 50px;
    border-radius: 10px;
    text-align: left;
    padding: 0 16px;
    align-items: center;
    color: #584646;
    font-weight: 600;
    display: flex;
    gap: 10px;
}
.filter-toggle__count.js-filter-count {
    align-content: center;
    width: 24px;
    height: 24px;
    background: #584646;
    color: #fff;
    text-align: center;
    border-radius: 200px;
    font-weight: 400;
}
span.filter-toggle__name {
    margin-right: auto;
}
.portfolio-filters__body {
    margin-top: 20px;
}
.portfolio-filters__collapse.js-filters-collapse:not(.collapsed) svg {
    transform: rotate(0deg);
    position: relative;
    left: 1px;
}
.portfolio-filters__collapse.js-filters-collapse.collapsed svg {
    transform: rotate(180deg);
}
.portfolio-filters__collapse.js-filters-collapse svg {
    transition: .3s all;
}
.portfolio-filters__collapse.js-filters-collapse {
    right: 0;
    top: 0;
    background: #EBBFA6;
    border: 0;
    width: 40px;
    height: 40px;
    border-radius: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.portfolio-filters.js-portfolio-filters {
    padding: 40px;
    border: 1px solid #EBBFA6;
    border-radius: 20px;
    margin-bottom: 40px;
}
.portfolio-filters__title {
    color: #584646;
    font-size: 28px;
    font-weight: 500;
    margin-bottom: 10px;
}

/* Breadcrumbs */
nav#breadcrumbs ol.breadcrumb {
    gap: 20px;
}
.breadcrumb-item.active {
    color: #EBBFA6;
}
.breadcrumb-item + .breadcrumb-item::before {
    display: none;
}
nav#breadcrumbs {
    margin: 20px 0;
    /* Поднимаем крошки над заголовком h1: его высокий строчный бокс наезжал сверху и перехватывал клики по ссылкам. */
    position: relative;
    z-index: 2;
}
nav#breadcrumbs a {
    color: #6F6F6F;
}

.inner__page__h1 {
    color: #584646;
    font-size: 72px;
    text-transform: uppercase;
    margin: 40px 0;
    /* Убираем избыточный верхний half-leading (line-height по умолчанию ~1.2 при 72px), чтобы строка не наезжала на крошки. */
    line-height: 1.1;
}

.mainpage__tabs__more .main__btn__style:focus{
    box-shadow: none;
}
body.compensate-for-scrollbar {
    margin-right: 0 !important;
}
.secWellcome__title {
    font-size: 40px;
    font-weight: 500;
    color: #584646;
    margin-bottom: 20px;
}
.secWellcome__subtitle {
    font-family: 'Mr_Hamilton';
    color: #EBBFA6;
    font-size: 64px;
}
.secWellcom__text {
    font-size: 20px;
    color: #6F6F6F;
    font-weight: 400;
    width: 50%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 10px;
}
a.pink__button {
    font-size: 16px;
    color: #000;
    text-decoration: none;
    background: linear-gradient(90deg,rgba(254, 214, 203, 1) 0%, rgba(235, 191, 166, 1) 100%);
    height: 70px;
    display: inline-block;
    text-align: center;
    align-content: center;
    padding: 0 37px;
    border-radius: 10px;
}
.slider__caption__subtitle {
    font-family: 'Mr_Hamilton', sans-serif;
    font-size: 96px;
    color: #EBBFA6;
    margin-bottom: 20px;
    @media screen and (max-width: 1700px) {
        font-size: 80px;
    }
    @media screen and (max-width: 1400px) {
        font-size: 68px;
    }
    @media screen and (max-width: 600px) {
        font-size: 40px;
    }
}
body {
    font-family: 'Montserrat', sans-serif;
}
.header-menu{
    @media screen and (max-width: 1180px) {
        gap: 40px;
    }
    @media screen and (max-width: 1399px) {
        gap: 40px;
    }
    @media screen and (max-width: 992px) {
        gap: 20px;
    }
}
.header-menu a {
    color: #000;
    text-decoration: none;
}
.city__select a {
    text-decoration: none;
    color: #000;
    font-weight: 500;
}
.top-menu {
    font-size: 14px;
    gap: 30px;
    @media screen and (max-width: 1250px) {
        gap: 10px;
    }
}
.top__messengers img.messenger-icon {
    width: 20px;
    height: 20px;
}
.topmenu__container {
    border-bottom: 1px solid #E1DBDB;
    height: 40px;
    align-content: center;
}
a.topmenu__phone {
    text-decoration: none;
    color: #000;
    font-weight: 500;
}
.city__select__toggle{
    padding-right: 15px;
}
.city__select__toggle::before {
    content: "";
    display: inline-block;
    width: 9px;
    height: 6px;
    background: url('data:image/svg+xml,%3Csvg%20xmlns%3D"http%3A//www.w3.org/2000/svg"%20width%3D"9"%20height%3D"6"%20viewBox%3D"0%200%209%206"%20fill%3D"none"%3E%3Cpath%20d%3D"M4.22082%203.3916L7.14583%200.229433C7.42892%20-0.0766165%207.91273%20-0.0766164%208.19583%200.229433C8.49216%200.549792%208.49216%201.04421%208.19583%201.36457L4.95492%204.86824C4.55908%205.29619%203.88257%205.29619%203.48673%204.86824L0.204977%201.32041C-0.0682994%201.02497%20-0.0682994%200.569026%200.204977%200.273592C0.510099%20-0.0562693%201.03155%20-0.0562694%201.33667%200.273592L4.22082%203.3916Z"%20fill%3D"%231D222F"%2F%3E%3C/svg%3E');
    position: absolute;
    bottom: 7px;
    right: 0;
}
.search-container {
    display: flex;
    position: relative;
    width: calc(100% - 800px);
    height: 40px;
}
.search-container img.search-icon {
    position: absolute;
    left: 17px;
    top: 10px;
}
.search-container input.form-control {
    padding-left: 3rem;
    border: 1px solid #E1DBDB;
    border-radius: 8px;
    width: 100%;
}
.search-container input.form-control:focus{
    border-color: #FED6CB;
    box-shadow: none;
}
.site-logo {
    bottom: 5px;
    position: relative;
}
.phone-numbers {
    display: flex;
    gap: 20px;
    text-wrap: nowrap;
}
.phone-numbers a{
    font-size: 20px;
    font-weight: 500;
    text-decoration: none;
    color: #000;
}
.site-header__inner {
    gap: 20px;
    align-items: center;
}
button.feedback__btn {
    text-wrap: nowrap;
    background: #584646;
    color: #ffff;
    border: 0;
    font-size: 14px;
    height: 44px;
    border-radius: 10px;
    padding: 0 19px;
}
.catalog__btn {
    display: flex;
    background: linear-gradient(90deg,rgba(254, 214, 203, 1) 0%, rgba(235, 191, 166, 1) 100%);
    font-size: 16px;
    text-wrap: nowrap;
    width: 180px;
    align-items: center;
    text-align: center;
    justify-content: center;
    gap: 10px;
    border-radius: 10px;
    height: 48px;
    cursor: pointer;
    @media screen and (max-width: 992px) {
        gap: 6px;
        width: 148px;
        height: 40px;
        font-size: 14px;
    }
    @media screen and (max-width: 850px) {
        gap: 8px;
        width: 160px;
        height: 44px;
        font-size: 14px;
    }
}
ul#menu-nizhnee-menju-v-shapke li a {
    text-decoration: none;
    color: #fff;
}
nav#last_header_menu {
    align-content: center;
    padding-top: 0;
}
ul#menu-nizhnee-menju-v-shapke{
    padding: 0;
    margin: 0;
    display: flex;
    gap: 70px;
    @media screen and (max-width: 1399px) {
        gap: 50px;
    }
    @media screen and (max-width: 1250px) {
        gap: 30px;
    }
    @media screen and (max-width: 1024px) {
        gap: 15px;
    }
    @media screen and (max-width: 992px) {
        gap: 20px;
    }
    @media screen and (max-width: 890px) {
        gap: 10px;
    }
}
ul#menu-nizhnee-menju-v-shapke li {
    position: relative;
    list-style: none;
}
.calc__btn:hover, ul#menu-nizhnee-menju-v-shapke li a:hover{
    color: #EBBFA6;
}
.calc__btn {
    display: flex;
    gap: 10px;
    align-items: center;
    text-decoration: none;
    color: #fff;
}
.lasthead__separator {
    align-content: center;
    color: #fff;
}
.topmenu__lastcontainer {
    height: 72px;
    background: #000000CC;
    align-content: center;
    z-index: 3;
    position: sticky;
    top: 0;
}
ul#menu-nizhnee-menju-v-shapke li .dropdown-menu a {
    color: #000;
}
ul#menu-nizhnee-menju-v-shapke .city__select__toggle.show::before {
    transform: rotate(180deg);
    background: url('data:image/svg+xml,%3Csvg%20xmlns%3D"http%3A//www.w3.org/2000/svg"%20width%3D"9"%20height%3D"6"%20viewBox%3D"0%200%209%206"%20fill%3D"none"%3E%3Cpath%20d%3D"M4.22082%203.3916L7.14583%200.229433C7.42892%20-0.0766165%207.91273%20-0.0766164%208.19583%200.229433C8.49216%200.549792%208.49216%201.04421%208.19583%201.36457L4.95492%204.86824C4.55908%205.29619%203.88257%205.29619%203.48673%204.86824L0.204977%201.32041C-0.0682994%201.02497%20-0.0682994%200.569026%200.204977%200.273592C0.510099%20-0.0562693%201.03155%20-0.0562694%201.33667%200.273592L4.22082%203.3916Z"%20fill%3D"%23EBBFA6"%2F%3E%3C/svg%3E');
}
ul#menu-nizhnee-menju-v-shapke .city__select__toggle::before {
    content: "";
    display: inline-block;
    width: 9px;
    height: 6px;
    background: url('data:image/svg+xml,%3Csvg%20xmlns%3D"http%3A//www.w3.org/2000/svg"%20width%3D"9"%20height%3D"6"%20viewBox%3D"0%200%209%206"%20fill%3D"none"%3E%3Cpath%20d%3D"M4.22082%203.3916L7.14583%200.229433C7.42892%20-0.0766165%207.91273%20-0.0766164%208.19583%200.229433C8.49216%200.549792%208.49216%201.04421%208.19583%201.36457L4.95492%204.86824C4.55908%205.29619%203.88257%205.29619%203.48673%204.86824L0.204977%201.32041C-0.0682994%201.02497%20-0.0682994%200.569026%200.204977%200.273592C0.510099%20-0.0562693%201.03155%20-0.0562694%201.33667%200.273592L4.22082%203.3916Z"%20fill%3D"%23FFFFFF"%2F%3E%3C/svg%3E');
    position: absolute;
    bottom: 8px;
    right: 0;
    transition: .3s all;
}
a.city__select__toggle.show {
    color: #EBBFA6 !important;
}
.main__slider {
    position: relative;
    top: -72px;
    margin-bottom: 28px;
}
.col.secAdvantages__item p {
    color: #6F6F6F;
    font-size: 16px;
    line-height: 140%;
    width: 88%;
    margin-left: auto;
    margin-right: auto;
}
section#secWellcome {
    margin-bottom: 0;
}
.advantages__wrapper {
    margin-top: 80px;
}
.secAdvantages__item img {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.secAdvantages__item__title {
    font-size: 20px;
    font-weight: 500;
    color: #584646;
    margin: 20px 0;
}
.secAdvantages__item__separator{
    margin-bottom: 20px;
}
.slider__caption__block {
    top: 5%;
    left: 88.5%;
    transform: translate(-75%, 140px);
    width: 100%;
    @media screen and (min-width: 2560px) {
        left: 97.5%;
    }
    @media screen and (max-width: 1500px) {
        top: 5%;
        left: 88.5%;
        transform: translate(-75%, 90px);
        width: 100%;
    }
}
section#secAdvantages {
    margin-bottom: 50px;
    margin-top: 60px;
}

/* Tabs mainpate */
.mainpage__tabs__card.is-hidden {
    display: block;
    opacity: 0;
    height: 0;
}
.mainpage__tabs__image {
    height: 340px;
    display: flex;
    width: 100%;
    align-items: center;
}
.mainpage__tabs__image img{
    object-fit: cover;
    height: 100%;
    width: 100%
}
.mainpageTabsContent {
    gap: 20px;
}
section.mainpage__price{
    margin: 100px 0 100px 0;
    scroll-margin-top: 80px;
    overflow: hidden;
}
div#mainpageTabsContent {
    z-index: 1;
    position: relative;
}
section.mainpage__tabs {
    background: #FFF9F5;
    padding: 100px 0;
    position: relative;
    overflow: hidden;
}
section.mainpage__tabs::after {
    content: '';
    background: url('data:image/svg+xml,%3Csvg%20xmlns%3D"http%3A//www.w3.org/2000/svg"%20width%3D"328"%20height%3D"413"%20viewBox%3D"0%200%20328%20413"%20fill%3D"none"%3E%3Cpath%20d%3D"M0.0457839%2056.2072C70.6725%2062.6994%200.16692%20140.873%20123.472%20173.613C270.103%20214.539%20335.429%20-145.196%20229.778%2068.6315C145.258%20239.693%20259.275%20368.675%20326.849%20411.783"%20stroke%3D"%23EBBFA6"%20stroke-dasharray%3D"10%2010"%2F%3E%3C/svg%3E');
    width: 21rem;
    height: 24rem;
    display: block;
    background-repeat: no-repeat;
    position: absolute;
    bottom: -1rem;
    left: -5rem;
    background-size: 100%;
}
section.mainpage__tabs::before {
    content: '';
    background: url('data:image/svg+xml,%3Csvg%20xmlns%3D"http%3A//www.w3.org/2000/svg"%20width%3D"328"%20height%3D"413"%20viewBox%3D"0%200%20328%20413"%20fill%3D"none"%3E%3Cpath%20d%3D"M0.0457839%2056.2072C70.6725%2062.6994%200.16692%20140.873%20123.472%20173.613C270.103%20214.539%20335.429%20-145.196%20229.778%2068.6315C145.258%20239.693%20259.275%20368.675%20326.849%20411.783"%20stroke%3D"%23EBBFA6"%20stroke-dasharray%3D"10%2010"%2F%3E%3C/svg%3E');
    width: 24rem;
    height: 34rem;
    display: block;
    background-repeat: no-repeat;
    position: absolute;
    top: -14rem;
    right: -2rem;
    transform: rotate(355deg);
    background-size: 100%;
}
.mainpage__tabs__title span {
    font-size: 40px;
    font-weight: 500;
    color: #584646;
}
.mainpage__tabs__title {
    margin-bottom: 40px;
    flex-wrap: wrap;
}
.main__btn__style {
    background: #584646;
    color: #fff;
    font-size: 16px;
    text-align: center;
    font-weight: 500;
    padding: 0 35px;
    border-radius: 10px;
    height: 48px;
    align-content: center;
    z-index: 1;
}
.mainpage__tabs__more{
    margin-top: 20px;
}
.main__btn__style:hover{
    color: #fff;
}
ul#mainpageTabs {
    margin-bottom: 40px;
    gap: 10px;
    z-index: 1;
    position: relative;
}
ul#mainpageTabs .nav-link.active {
    background: linear-gradient(90deg,rgba(254, 214, 203, 1) 0%, rgba(235, 191, 166, 1) 100%);
    color: #584646;
}
ul#mainpageTabs .nav-link {
    border-radius: 200px;
    border: 0;
    background: #584646;
    color: #fff;
    font-weight: 500;
}
.mainpage__tabs__overlay {
    position: absolute;
    bottom: 0;
    width: 100%;
    background: #00000080;
    display: flex;
    align-items: center;
    height: 80px;
    padding: 0 20px;
    box-sizing: border-box;
}
a.mainpage__tabs__card {
    position: relative;
    width: auto;
    border-radius: 20px;
    overflow: hidden;
    display: block;
}
span.mainpage__tabs__link {
    color: #fff;
}
.main__slider img {
    width: 100%;
}
.slider__caption__title {
    font-size: 72px;
    color: #ffff;
    font-weight: 500;
    text-transform: uppercase;
    @media screen and (max-width: 1700px) {
        font-size: 60px;
    }
    @media screen and (max-width: 1400px) {
        font-size: 50px;
    }
    @media screen and (max-width: 600px) {
        font-size: 32px;
    }
}
ul.slider__caption__list {
    color: #ffff;
    list-style: none;
    padding: 0;
    font-size: 20px;
    font-weight: 400;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-bottom: 50px;
    @media screen and (max-width: 1400px) {
        font-size: 16px;
    }
    @media screen and (max-width: 600px) {

















        font-size: 14px;
        margin-bottom: 30px;
        width: 90%;
    }
}
ul.slider__caption__list li {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
}
ul.slider__caption__list img {
    width: 20px;
}
.border__button__arrow {
    min-width: 40px;
    height: 40px;
    background: linear-gradient(90deg,rgba(254, 214, 203, 1) 0%, rgba(235, 191, 166, 1) 100%);
    padding: 0;
    border-radius: 50%;
    text-align: center;
    position: relative;
}
.border__button__arrow img {
    width: 13px;
    position: absolute;
    left: 50%;
    transform: translate(-50%, -50%);
    top: 50%;
}
a.border__button {
    background: #00000033;
    height: 70px;
    align-content: center;
    color: #fff;
    text-decoration: none;
    padding: 0 20px 0 61px;
    border-radius: 10px;
    box-shadow: inset 0 0 0 1px #B4A6A3;
    display: inline-flex;
    align-items: center;
    gap: 40px;
}
.main__slider {
    overflow: hidden;
}
.swiper-container.main__slider .swiper-button-next svg {
    margin-right: -3px;
}
.swiper-container.main__slider .swiper-button-prev svg {
    margin-left: -3px;
}
.swiper-container.main__slider .swiper-button-next{
    right: 100px;
    @media screen and (max-width: 1700px) {
        right: 10px;
    }
    @media screen and (max-width: 992px) {
        display: none;
    }
}
.swiper-container.main__slider .swiper-button-prev{
    left: 100px;
    @media screen and (max-width: 1700px) {
        left: 10px;
    }
    @media screen and (max-width: 992px) {
        display: none;
    }
}
.swiper-container.main__slider .swiper-button-next:hover svg path, .main__slider .swiper-button-prev:hover svg path{
    fill: #000;
}
.swiper-container.main__slider .swiper-button-next:hover, .main__slider .swiper-button-prev:hover {
    background: #fff;
}
.swiper-container.main__slider .swiper-button-next, .main__slider .swiper-button-prev {
    width: 60px;
    height: 60px;
    background: #6F6F6F;
    border-radius: 50%;
    z-index: 1;
}
.swiper-container.main__slider .swiper-button-next svg path, .main__slider .swiper-button-prev svg path {
    fill: #fff;
}
.swiper-container.main__slider .swiper-button-next svg, .main__slider .swiper-button-prev svg {
    width: 20px;
    height: 20px;
}
.swiper-container.main__slider .swiper-pagination {
    background: #0000004D;
    width: auto;
    left: 50%;
    transform: translate(-50%, 0);
    bottom: 5%;
    border-radius: 4px;
    display: flex;
    gap: 8px;
    height: 26px;
    align-items: center;
    padding: 0 10px;
    z-index: 1;
    @media screen and (min-width: 2560px) {
        bottom: 100px;
    }
}
/* Один слайд: прячем контейнер пагинации (иначе остаётся пустой тёмный квадрат).
   .swiper-pagination-lock навешивает сам Swiper при watchOverflow; :has — подстраховка
   на случай loop, когда lock может не сработать, а буллет всего один. */
.swiper-container.main__slider .swiper-pagination-lock,
.swiper-container.main__slider .swiper-pagination:not(:has(.swiper-pagination-bullet ~ .swiper-pagination-bullet)) {
    display: none;
}
.swiper-container.main__slider .swiper-pagination .swiper-pagination-bullet-active {
    width: 20px;
    border-radius: 2px;
    background: #fff;
    height: 6px;
    margin: 0;
}
.swiper-container.main__slider .swiper-pagination span.swiper-pagination-bullet:not(.swiper-pagination-bullet-active) {
    margin: 0;
    height: 6px;
    background: #EBBFA6;
    opacity: 1;
    border-radius: 2px;
}
ul#menu-nizhnee-menju-v-shapke ul.dropdown-menu li:last-of-type {
    margin: 0;
}
.mainpageTabsContent {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

@media (max-width: 991.98px) {
    .mainpageTabsContent {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }
}

@media (max-width: 575.98px) {
    .mainpageTabsContent {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}

/* Mainpage price block */
.mainpage__price__box {
    gap: 20px;
    margin-bottom: 54px;
}
.mainpage__price__box__img {
    overflow: hidden;
    height: 220px;
    width: 100%;
    border-radius: 20px 20px 0 0;
    margin-bottom: 0;
}
.mainpage__price__box__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.mainpage__price__box__title {
    text-align: center;
    color: #584646;
    font-weight: 500;
    font-size: 28px;
    margin-bottom: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: .3s all;
}
.mainpage__price__box__title:after {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
}
.mainpage__price__box__title.collapsed {
    margin-bottom: 0;
}
.mainpage__price__box__notice {
    text-align: center;
    background: #FFF9F5;
    padding: 16px;
    margin-bottom: 20px;
    border-radius: 20px;
    min-height: 174px;
    position: relative;
}
.mainpage__price__box__notice__title {
    font-size: 20px;
    color: #584646;
    font-weight: 500;
    line-height: 140%;
    margin-bottom: 10px;
}
.mainpage__price__box__notice__inner {
    padding: 16px 12px;
    border: 2px dashed #EBBFA6;
    border-radius: 20px;
    height: calc(100% - 32px);
    display: block;
    position: relative;
    min-height: 147px;
}
.material-box__border {
    position: absolute;
    inset: 24px;
    width: calc(100% - 7px);
    height: calc(100% - 22px);
    z-index: 1;
    pointer-events: none;
    left: 4px;
    top: 11px;
}
.material-box__border rect {
    fill: none;
    stroke: #e2b497;
    stroke-width: 1;
    stroke-dasharray: 10 10;
    stroke-linecap: butt;
    vector-effect: non-scaling-stroke;
}
.mainpage__price__box__notice__text {
    color: #584646;
    line-height: 140%;
}
.mainpage__price__box__container {
    padding: 30px 20px;
    border-radius: 0 0 20px 20px;
    box-sizing: border-box;
    border: 1px solid #EBBFA6;
    border-top: 0;
}
.mainpage__price__box__list ul {
    padding-left: 20px;
    color: #584646;
}
.mainpage__price__box__list ul li {
    gap: 10px;
    font-weight: 500;
    margin-bottom: 10px;
}
.mainpage__price__box__list__info__btn {
    background: #EBBFA6;
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100px;
    position: relative;
    cursor: help;
}
/* Тултип у знака вопроса */
.mainpage__price__tooltip {
    position: absolute;
    bottom: calc(100% + 14px);
    right: -8px;
    width: 460px;
    max-width: 92vw;
    background: #fff;
    border: 1px solid #EBBFA6;
    border-radius: 16px;
    padding: 20px;
    box-shadow: 0 8px 24px rgba(88, 70, 70, .18);
    opacity: 0;
    visibility: hidden;
    transform: translateY(6px);
    transition: opacity .2s ease, transform .2s ease, visibility .2s;
    z-index: 20;
    text-align: center;
    pointer-events: none;
}
.mainpage__price__box__list__info__btn:hover .mainpage__price__tooltip,
.mainpage__price__box__list__info__btn:focus .mainpage__price__tooltip,
.mainpage__price__box__list__info__btn:focus-within .mainpage__price__tooltip {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}
/* Стрелка-хвостик */
.mainpage__price__tooltip::after {
    content: "";
    position: absolute;
    top: 100%;
    right: 16px;
    border: 8px solid transparent;
    border-top-color: #fff;
    filter: drop-shadow(0 1px 0 #EBBFA6);
}
.mainpage__price__tooltip p {
    font-size: 16px;
    line-height: 1.45;
    color: #584646;
    font-weight: 400;
    margin: 0 0 14px;
}
.mainpage__price__tooltip__row {
    display: flex;
    justify-content: center;
    gap: 12px;
}
.mainpage__price__tooltip__img {
    flex: 1 1 0;
    min-width: 0;
}
.mainpage__price__tooltip__img img {
    width: 100%;
    max-width: 130px;
    height: auto;
    display: block;
    margin: 0 auto 8px;
}
.mainpage__price__tooltip__img span {
    display: block;
    font-size: 15px;
    font-weight: 500;
    color: #584646;
}
/* На планшете/мобиле карточки уходят в горизонтальный скролл-strip
   (.mainpage__price__box { overflow-x: scroll }), который обрезал бы
   всплывающий тултип. Там его прячем — для touch-пользователей ту же
   информацию даёт раскрывающийся блок «Что такое коэффициент сборки?»
   ниже карточек. */
@media (max-width: 1400px) {
    .mainpage__price__tooltip {
        display: none;
    }
}
.mainpage__price__box__list ul li span {
    display: inline-block;
    position: relative;
}
.mainpage__price__box__price {
    text-align: center;
    font-size: 28px;
    font-weight: 500;
    color: #584646;
    margin-bottom: 20px;
}
.mainpage__price__box__container a {
    background: linear-gradient(90deg,rgba(254, 214, 203, 1) 0%, rgba(235, 191, 166, 1) 100%);
    margin-left: auto;
    margin-right: auto;
    text-decoration: none;
    font-weight: 500;
    color: #584646;
    height: 60px;
    padding: 0 40px;
    border-radius: 10px;
    align-content: center;
    margin-bottom: 20px;
}
.mainpage__price__box__collapse__toggle__btn img {
    transition: .3s all;
}
.mainpage__price__box__collapse__toggle.collapsed .mainpage__price__box__collapse__toggle__btn img {
    transform: rotate(180deg);
}
.mainpage__price__box__collapse__toggle {
    justify-content: center;
    gap: 10px;
    font-weight: 700;
    color: #584646;
    cursor: pointer;
    align-items: center;
    transition: .3s all;
}
.mainpage__price__box__collapse__toggle__btn {
    background: #EBBFA6;
    width: 28px;
    height: 28px;
    border-radius: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.mainpage__price__box__collapse__toggle:not(.collapsed) {
    margin-bottom: 10px;
}
.mainpage__price__box__collapse .collapse {
    margin-bottom: 10px;
}
.mainpage__price__box__collapse {
    color: #584646;
    line-height: 140%;
    text-align: center;
}
.mainpage__price__box__disclamer {
    color: #584646;
    text-align: center;
}
.mainpage__price__koff {
    background: #FFF9F5;
    padding: 24px;
    border-radius: 20px;
    margin-top: 24px;
    position: relative;
    cursor: pointer;
}
.mainpage__price__koff svg.material-box__border {
    left: -3px;
    top: 6px;
    width: 100%;
}
.mainpage__price__koff__inner {
    overflow: hidden;
    border-radius: 20px;
    padding: 40px 30px;
    border: 2px dashed #EBBFA6;
}
.mainpage__price__koff__inner img {
    width: 100%;
    mix-blend-mode: multiply;
}
.mainpage__price__koff__block {
    gap: 40px;
}
.mainpage__price__koff__block__inner {
    padding: 10px 24px;
    border: 1px solid #EBBFA6;
    border-radius: 20px;
    text-align: center;
}
.mainpage__price__koff__inner__description {
    margin-bottom: 44px;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}
.mainpage__price__koff__block__inner p {
    margin: 10px 0 10px 0;
}
.mainpage__price__box__title .mainpage__price__box__collapse__toggle__btn {
    width: 40px;
    height: 40px;
    min-width: 40px;
}
.mainpage__price__box__title .mainpage__price__box__collapse__toggle__btn img {
    width: 12px;
}
.mainpage__price__box__title.collapsed .mainpage__price__box__collapse__toggle__btn img {
    transform: rotate(180deg);
}

/* Mainpage form */
section.mainpage__form {
    background: url('/wp-content/themes/my-wp-starter/images/form_bg.webp');
    background-size: cover;
    color: #fff;
    padding: 100px 0;
}
.mainpage__form__title {
    text-align: center;
    font-size: 40px;
    margin-bottom: 10px;
}
section.mainpage__form p {
    font-size: 20px;
    margin-bottom: 40px;
    line-height: 140%;
}
a.mainpage__form__info__phone {
    font-size: 40px;
    text-decoration: none;
    color: #fff;
    font-weight: 600;
}
a.mainpage__form__box__messenger {
    min-width: 60px;
    height: 60px;
    border-radius: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(90deg,rgba(254, 214, 203, 1) 0%, rgba(235, 191, 166, 1) 100%);
}
.mainpage__form__wpcf7 {
    padding: 30px 24px;
    background: #FFFFFF1A;
    border-radius: 10px;
    border: 1px solid #B1A89F;
    width: 53.3333%;
}
.mainpage__form__box{
    gap: 60px;
}
section.mainpage__form .mainpage__form__wpcf7 p{
    margin-bottom: 20px;
}
.mainpage__form__info {
    width: 26.55555%;
}
.mainpage__form__wpcf7 input[type=text], .mainpage__form__wpcf7 input[type=tel] {
    color: #fff;
    background: #FFFFFF1A;
    border: 0;
    height: 48px;
    padding: 18px 13px;
    border-radius: 6px;
    border: 1px solid #FFFFFF4D;
    width: 100%;
}
.mainpage__form__wpcf7 input::placeholder{
    color: #fff;
}
.mainpage__form__wpcf7 span.wpcf7-not-valid-tip {
    background: red;
    color: #fff;
    font-size: 13px;
    padding: 0 10px;
    position: absolute;
    z-index: 1;
    top: -22px;
    border-radius: 5px;
    right: 0;
    width: 100%;
    text-align: center;
}
.mainpage__form__wpcf7 input[type=submit] {
    background: linear-gradient(90deg,rgba(254, 214, 203, 1) 0%, rgba(235, 191, 166, 1) 100%);
    min-width: 171px;
    border-radius: 10px;
    border: 0;
}
.fomrs__elements span.wpcf7-spinner {
    display: none;
}
.mainpage__form__wpcf7 .wpcf7-form-control-wrap {
    width: 100%;
}
.fomrs__elements {
    gap: 18px;
}
.wpcf7-form-control-wrap span.wpcf7-form-control.wpcf7-acceptance input[type="checkbox"] {
    display: none;
}

.wpcf7-form-control-wrap span.wpcf7-form-control.wpcf7-acceptance label {
    position: relative;
    padding-left: 30px;
    font-size: 16px;
    line-height: 1.5;
    cursor: pointer;
    display: inline-block;
    user-select: none;
}

.wpcf7-form-control-wrap span.wpcf7-form-control.wpcf7-acceptance label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    border: 0;
    border-radius: 4px;
    background: linear-gradient(90deg, rgba(254, 214, 203, 1) 0%, rgba(235, 191, 166, 1) 100%);
    transition: all 0.3s ease;
    box-shadow: none !important;
}
.wpcf7-acceptance label:has(input:checked)::before {
    background: #5d3e2b;
    border-color: #5d3e2b;
    box-shadow: 0 0 0 4px rgba(93, 62, 43, 0.2);
}
.wpcf7-acceptance label:has(input:checked)::after {
    content: "";
    position: absolute;
    left: 9px;
    top: 9px;
    width: 6px;
    height: 11px;
    border: solid #584646;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.btn-check:active+.btn-primary:focus, .btn-check:checked+.btn-primary:focus, .btn-primary.active:focus, .btn-primary:active:focus, .show>.btn-primary.dropdown-toggle:focus {
    box-shadow: none;
}
.btn-check:active+.btn-primary:focus, .btn-check:checked+.btn-primary:focus, .btn-primary.active:focus, .btn-primary:active:focus, .show>.btn-primary.dropdown-toggle:focus {
    box-shadow: none;
}
.btn-check:focus + .btn-primary,
.btn-primary:focus {
    color: #fff;
    background-color: #584646;
    border-color: #584646;
    box-shadow: none!important;
}

.btn-check:active+.btn-primary, .btn-check:checked+.btn-primary, .btn-primary.active, .btn-primary:active, .show>.btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #584646;
    border-color: #584646;
}




div#callbackModal .wpcf7-acceptance label:has(input:checked)::after {
    top: 6px;
}
div#callbackModal .wpcf7-form-control-wrap span.wpcf7-form-control.wpcf7-acceptance label::before {
    top: 13px;
}
.wpcf7-form-control-wrap span.wpcf7-form-control.wpcf7-acceptance label {
    font-size: 16px;
    font-weight: 500;
    padding-left: 36px;
    margin: 0;
    line-height: 110%;
}

.mainpage__form__wpcf7 span.wpcf7-list-item {
    margin: 20px 0 0 0;
}

.mainpage__form__wpcf7 span.wpcf7-list-item-label {
    font-size: 12px;
    line-height: 100%;
    font-weight: 400;
}
.wpcf7-form-control-wrap span.wpcf7-form-control.wpcf7-acceptance input[type="checkbox"]:focus + label::before {
    border-color: #e5d5cb;
    box-shadow: 0 0 0 4px rgba(93, 62, 43, 0.1);
}

.wpcf7-form-control-wrap span.wpcf7-form-control.wpcf7-acceptance label:hover::before {
    box-shadow: 0 0 0 2px rgba(93, 62, 43, 0.2);
}
.mainpage__form__wpcf7 input[type=text]:focus-visible, .mainpage__form__wpcf7 input[type=tel]:focus-visible {
    box-shadow: none;
    outline: none;
    border-color: #EBBFA6;
}
.mainpage__form__wpcf7 span.wpcf7-not-valid-tip::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -7px;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 7px solid red;
    left: auto;
}

/* Mainpage services */
section.mainpage__services {
    padding: 100px 0;
    background: #FFF9F5;
}
.mainpage__services__title {
    text-align: center;
    color: #584646;
    font-size: 40px;
    font-weight: 500;
    margin-bottom: 40px;
}
.mainpage__services__item__box {
    padding: 24px;
    background: #fff;
    min-height: 218px;
    border-radius: 20px;
    position: relative;
    top: -20px;
}
.mainpage__services__item__title{
    color: #584646;
    font-size: 20px;
    margin-bottom: 20px;
    font-weight: 500;
    width: 100%;
}
.mainpage__services__item__img img {
    width: 100%;
}
.mainpage__services__item__text {
    color: #584646;
    line-height: 140%;
}
.mainpage__services__container {
    display: grid;
    gap: 20px 40px;
    grid-template-columns: repeat(4, 1fr);
}
.mainpage__services__item__img {
    border-radius: 20px 20px 0 0;
    overflow: hidden;
}

@media (max-width: 991.98px) {
    .mainpage__services__container {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }
}

@media (max-width: 575.98px) {
    .mainpage__services__container {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}

/* Mainpage assortment */
section.mainpage__assortment {
    padding: 100px 0;
    background: #FFF9F5;
    position: relative;
    overflow: hidden;
}
section.mainpage__assortment::after {
    content: '';
    background: url('data:image/svg+xml,%3Csvg%20xmlns%3D"http%3A//www.w3.org/2000/svg"%20width%3D"328"%20height%3D"413"%20viewBox%3D"0%200%20328%20413"%20fill%3D"none"%3E%3Cpath%20d%3D"M0.0457839%2056.2072C70.6725%2062.6994%200.16692%20140.873%20123.472%20173.613C270.103%20214.539%20335.429%20-145.196%20229.778%2068.6315C145.258%20239.693%20259.275%20368.675%20326.849%20411.783"%20stroke%3D"%23EBBFA6"%20stroke-dasharray%3D"10%2010"%2F%3E%3C/svg%3E');
    width: 21rem;
    height: 24rem;
    display: block;
    background-repeat: no-repeat;
    position: absolute;
    bottom: -2rem;
    left: -7rem;
    background-size: 100%;
    transform: scaleX(-1) rotate(78deg);
}
section.mainpage__assortment::before {
    content: '';
    background: url('data:image/svg+xml,%3Csvg%20xmlns%3D"http%3A//www.w3.org/2000/svg"%20width%3D"328"%20height%3D"413"%20viewBox%3D"0%200%20328%20413"%20fill%3D"none"%3E%3Cpath%20d%3D"M0.0457839%2056.2072C70.6725%2062.6994%200.16692%20140.873%20123.472%20173.613C270.103%20214.539%20335.429%20-145.196%20229.778%2068.6315C145.258%20239.693%20259.275%20368.675%20326.849%20411.783"%20stroke%3D"%23EBBFA6"%20stroke-dasharray%3D"10%2010"%2F%3E%3C/svg%3E');
    width: 16rem;
    height: 24rem;
    display: block;
    background-repeat: no-repeat;
    position: absolute;
    top: -11rem;
    right: -4rem;
    background-size: 100%;
    transform: rotate(183deg);
}
.assortment__row {
    display: flex;
    gap: 40px;
    flex-wrap: wrap;
    justify-content: center;
}
.mainpage__assortment__item__img {
    margin-bottom: 20px;
}
.mainpage__assortment__item__title {
    color: #584646;
    font-size: 20px;
    margin-bottom: 20px;
    line-height: 140%;
    font-weight: 500;
}
.assortment__row__item {
    position: relative;
    padding: 30px;
    min-width: 325px;
    border: 2px dashed #EBBFA6;
    border-radius: 20px;
}
.assortment__row__item svg.material-box__border {
    width: 100%;
    left: 0;
    top: 0;
    height: 100%;
}
.mainpage__assortment__item__text {
    color: #584646;
    line-height: 140%;
}

/* Mainpage promo */
/* Slide1 */
.promo__slide__1 .material-box__border {
    width: calc(100% - 32px);
    left: 16px;
    top: 16px;
    height: calc(100% - 32px);
    border: 2px dashed #EBBFA6;
    border-radius: 20px;
}
.promo__slider .slide {
    border-radius: 20px;
    overflow: hidden;
}
.promo__slide__1__text {
    color: #584646;
    width: 80% !important;
    display: block;
}
.promo__slide__1__caption {
    position: absolute;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
    padding: 16px;
    top: 20px;
}
.promo__slide__1__caption > div {
    width: 100%;
}
.promo__slide__1__icon img {
    margin-left: auto;
    margin-right: auto;
}
.promo__slide__1__caption .promo__slide__1__title {
    font-size: 28px;
    line-height: 120%;
    color: #584646;
    font-weight: 500;
    width: 75%;
}

/* Slide2 */
.promo__slide__2__icon {
    margin-top: 20px;
}
.promo__slide__2__caption .material-box__border {
    width: calc(100% - 32px);
    height: calc(100% - 32px);
    left: 16px;
    top: 16px;
    border: 2px dashed #EBBFA6;
    border-radius: 20px;
}
.promo__slide__2__text {
    color: #584646;
    line-height: 140%;
}
.promo__slide__2__bottom__text {
    color: #584646;
    text-transform: uppercase;
    font-weight: 500;
    line-height: 140%;
    margin-top: auto;
    bottom: 20px;
    position: relative;
}
.promo__slide__2__title {
    color: #584646;
    font-size: 28px;
    line-height: 1;
    font-weight: 500;
    margin-top: 8px;
}
.promo__slide__2__title span {
    font-size: 48px;
}
.promo__slide__2__caption {
    position: absolute;
    background: #FFF9F5;
    width: 220px;
    height: calc(100% - 40px);
    top: 20px;
    border-radius: 20px;
    padding: 16px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: start;
    flex-direction: column;
    left: 50%;
    transform: translateX(-50%);
}
.promo__slide__2__icon img {
    margin-left: auto;
    margin-right: auto;
}
.promo__slide__2__caption > div {
    width: 100%;
    text-align: center;
}

/* Slide3 */
.promo__slide__3__icon {
    margin-top: 20px;
}
.promo__slide__3__title {
    font-size: 24px;
    text-align: center;
    font-weight: 500;
    line-height: 120%;
    color: #584646;
    margin-top: 20px;
}
.promo__slide__3__caption .material-box__border {
    width: calc(100% - 32px);
    height: calc(100% - 32px);
    left: 16px;
    top: 16px;
    border: 2px dashed #EBBFA6;
    border-radius: 20px;
}
.promo__slide__3__text {
    color: #584646;
    font-size: 16px;
    line-height: 140%;
    width: 80%;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    margin-top: 10px;
}
.promo__slide__3__caption {
    position: absolute;
    background: #FFF9F5;
    width: 88%;
    height: 260px;
    left: 50%;
    bottom: 20px;
    padding: 16px;
    border-radius: 20px;
    transform: translateX(-50%);
}
.promo__slide__3__icon img {
    margin-left: auto;
    margin-right: auto;
}

/* Slide4 */
.promo__slide__4__caption .material-box__border {
    width: calc(100% - 32px);
    height: calc(100% - 32px);
    left: 16px;
    top: 16px;
    border: 2px dashed #EBBFA6;
    border-radius: 20px;
}
.promo__slide__4__title span {
    font-size: 48px;
}
.promo__slide__4__text {
    color: #584646;
    line-height: 140%;
    margin-top: 10px;
}
.promo__slide__4__title {
    text-align: center;
    color: #584646;
    font-size: 28px;
    line-height: 110%;
    font-weight: 500;
    margin-top: 20px;
}
.promo__slide__4__caption {
    position: absolute;
    background: #FFF9F5;
    padding: 16px;
    width: 88%;
    height: 190px;
    left: 50%;
    bottom: 20px;
    border-radius: 20px;
    transform: translateX(-50%);
}
.promo__slide__5__caption {
    transform: translateX(-50%);
    position: absolute;
    width: 88%;
    height: 190px;
    background: #FFF9F5;
    padding: 16px;
    border-radius: 20px;
    left: 50%;
    top: 20px;
}

/* Slide5 */
.promo__slide__5__title {
    color: #584646;
    font-size: 28px;
    line-height: 110%;
    font-weight: 500;
    margin-top: 20px;
}
.promo__slide__5__title span {
    font-size: 48px;
}
.promo__slide__5__caption .material-box__border {
    width: calc(100% - 32px);
    height: calc(100% - 32px);
    left: 16px;
    top: 16px;
    border: 2px dashed #EBBFA6;
    border-radius: 20px;
}
.promo__slide__5__text {
    font-size: 16px;
    color: #584646;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    line-height: 140%;
    margin-top: 10px;
}

/* Slide6 */
.promo__slide__6__caption {
    position: absolute;
    width: 100%;
    margin-top: 0px;
    display: flex;
    flex-flow: column wrap;
    height: 100%;
    padding-top: 130px;
    box-sizing: border-box;
}
.promo__slide__6{
    background: #FFF9F5;
    position: relative;
}
.promo__slide__6__title {
    font-size: 128px;
    font-weight: 300;
    color: #584646;
    line-height: 1;
    margin-bottom: 20px;
}
.promo__slide__6__text {
    font-size: 40px;
    color: #584646;
}
.promo__slide__6__bottom__text {
    font-size: 20px;
    line-height: 140%;
    color: #584646;
}
a.promo__slide__6__link {
    display: block;
    margin-top: auto;
    width: 180px;
    background: #584646;
    color: #fff;
    bottom: 30px;
    position: relative;
    border-radius: 10px;
    text-decoration: none;
    height: 48px;
    align-content: center;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

/* Nav slider */
.promo__slider__next.swiper-button-next, .page-siblings__slider__next {
    right: -10% !important;
    @media (max-width: 1600px) {
        right: 0 !important;
    }
}
.promo__slider__prev.swiper-button-prev, .page-siblings__slider__prev{
    left: -10% !important;
    @media (max-width: 1600px) {
        left: 0 !important;
    }
}
.promo__slider__next.swiper-button-next, .promo__slider__prev.swiper-button-prev {
    width: 60px;
    height: 60px;
    background: #fff;
    border-radius: 50%;
    border: 1px solid #584646;
}
.promo__slider__next.swiper-button-next svg, .promo__slider__prev.swiper-button-prev svg {
    width: 20px;
    height: 20px;
}
.promo__slider__next.swiper-button-next svg path, .promo__slider__prev.swiper-button-prev svg path{
    fill: #584646;
}
.promo__slider__next.swiper-button-next:hover, .promo__slider__prev.swiper-button-prev:hover{
    background: #584646;
}
.promo__slider__next.swiper-button-next:hover svg path, .promo__slider__prev.swiper-button-prev:hover svg path{
    fill: #fff ;
}
.promo__slide__imgcont img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.promo__slide__imgcont{
    width: 100%;
    overflow: hidden;
}

/* How it work */
.mainpage__howitwork__container {
    display: grid;
    gap: 20px 20px;
    grid-template-columns: repeat(3, 1fr);
}
section.mainpage__howitwork {
    margin: 100px 0;
}
.mainpage__howitwork__item__text {
    color: #584646;
    font-size: 16px;
    font-weight: 400;
    line-height: 140%;
    width: 80%;
}
.mainpage__howitwork__title {
    text-align: center;
    font-size: 40px;
    font-weight: 500;
    line-height: 120%;
    color: #584646;
    margin-bottom: 40px;
}
.mainpage__howitwork__item {
    background: #FFF9F5;
    border-radius: 20px;
    padding: 24px;
    min-height: 208px;
}
.mainpage__howitwork__item__title {
    color: #584646;
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 20px;
    /* min-height: 208px; */
}
.mainpage__howitwork__item__number {
    top: 5px;
    right: 20px;
    color: #EBBFA6;
    font-weight: 500;
    font-size: 48px;
    display: block;
}

/* Mainpage logos */
.logos__ticker {
    overflow: hidden;
    padding: 100px 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.ticker__row {
    display: flex;
    overflow: hidden;
    user-select: none;
}
.ticker__track {
    display: flex;
    width: max-content;
    animation: scroll 40s linear infinite;
}
.ticker__row[data-direction="reverse"] .ticker__track {
    animation-direction: reverse;
}
.ticker__item {
    padding: 0 40px;
    flex-shrink: 0;
    align-content: center;
}
.ticker__item img {
    height: auto;
    /* width: 64%; */
    display: block;
    filter: grayscale(1);
    transition: 0.3s;
}

@keyframes scroll {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-50%);
    }
}

.ticker-row:hover .ticker-track {
    animation-play-state: paused;
}

/* Mainpage FAQ */
.accordion-button:focus {
    box-shadow: none;
    border-color: rgba(0,0,0,.125);
}
.mainpage__faq__title {
    font-size: 40px;
    color: #584646;
    text-align: center;
    margin-bottom: 40px;
    font-weight: 500;
    line-height: 120%;
}
.accordion-button::after {
    background-image: none !important;
    width: 24px; /* ÃÂ ÃÂ°ÃÂ·ÃÂ¼ÃÂµÃ‘â‚¬ ÃÂ¸ÃÂºÃÂ¾ÃÂ½ÃÂºÃÂ¸ */
    height: 24px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    transition: transform 0.3s ease, background-image 0.2s ease;
}
.accordion-button.collapsed {
    border-bottom-width: 1px;
}
.accordion-item {
    width: 100%;
    border: 1px solid #EBBFA6;
    border-radius: 10px;
}
section.mainpage__faq .accordion-item .accordion-button:not(.collapsed) {
    background-color: transparent;
    border-radius: 10px;
    border-color: #EBBFA6;
    border-bottom-width: 0;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}
.accordion-item {
    width: 100%;
    border: 1px solid #EBBFA6;
    border-radius: 10px;
    padding: 26px 24px;
}
section.mainpage__faq .accordion-item .accordion-collapse {
    border: 0;
}
section.mainpage__faq .accordion-item .accordion-button:before {
    content: '';
    width: 104%;
    position: absolute;
    height: 275%;
    padding: 20px;
    left: -25px;
}
section.mainpage__faq .accordion-item .accordion-body {
    color: #6F6F6F;
    font-size: 20px;
    margin-top: 20px;
}
section.mainpage__faq .accordion-item .accordion-button {
    border: 0;
    font-size: 20px;
    font-weight: 500;
    color: #584646;
}
.accordion-button.collapsed::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30' fill='none'%3E%3Cpath d='M30 15C30 15.3315 29.8683 15.6495 29.6339 15.8839C29.3995 16.1183 29.0815 16.25 28.75 16.25H16.25V28.75C16.25 29.0815 16.1183 29.3995 15.8839 29.6339C15.6495 29.8683 15.3315 30 15 30C14.6685 30 14.3505 29.8683 14.1161 29.6339C13.8817 29.3995 13.75 29.0815 13.75 28.75V16.25H1.25C0.918479 16.25 0.600537 16.1183 0.366117 15.8839C0.131696 15.6495 0 15.3315 0 15C0 14.6685 0.131696 14.3505 0.366117 14.1161C0.600537 13.8817 0.918479 13.75 1.25 13.75H13.75V1.25C13.75 0.918479 13.8817 0.600537 14.1161 0.366117C14.3505 0.131696 14.6685 0 15 0C15.3315 0 15.6495 0.131696 15.8839 0.366117C16.1183 0.600537 16.25 0.918479 16.25 1.25V13.75H28.75C29.0815 13.75 29.3995 13.8817 29.6339 14.1161C29.8683 14.3505 30 14.6685 30 15Z' fill='%23EBBFA6'/%3E%3C/svg%3E") !important;
    transform: rotate(0deg);
}
.accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30' fill='none'%3E%3Cpath d='M30 15C30 15.3315 29.8683 15.6495 29.6339 15.8839C29.3995 16.1183 29.0815 16.25 28.75 16.25H1.25C0.918479 16.25 0.600537 16.1183 0.366117 15.8839C0.131696 15.6495 0 15.3315 0 15C0 14.6685 0.131696 14.3505 0.366117 14.1161C0.600537 13.8817 0.918479 13.75 1.25 13.75H28.75C29.0815 13.75 29.3995 13.8817 29.6339 14.1161C29.8683 14.3505 30 14.6685 30 15Z' fill='%23EBBFA6'/%3E%3C/svg%3E") !important;
    transform: rotate(180deg); /* ÃÅ¾ÃÂ¿Ã‘â€ ÃÂ¸ÃÂ¾ÃÂ½ÃÂ°ÃÂ»Ã‘Å’ÃÂ½ÃÂ¾: ÃÂ»ÃÂµÃÂ³ÃÂºÃÂ¸ÃÂ¹ ÃÂ¿ÃÂ¾ÃÂ²ÃÂ¾Ã‘â‚¬ÃÂ¾Ã‘â€š ÃÂ´ÃÂ»Ã‘Â ÃÂ´ÃÂ¸ÃÂ½ÃÂ°ÃÂ¼ÃÂ¸ÃÂºÃÂ¸ */
}
section.mainpage__faq {
    padding: 100px 0;
    background: #FFF9F5E5;
    position: relative;
    min-height: 928px;
    overflow: hidden;
}
section.mainpage__faq:before {
    content: '';
    background: url(/wp-content/themes/my-wp-starter/images/shtora_back.webp);
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    left: 0;
    background-position-x: 112%;
    z-index: -1;
    background-position-y: 0;
    transform: scaleX(-1);
}
section.mainpage__faq:after {
    content: '';
    background: url(/wp-content/themes/my-wp-starter/images/shtora_back.webp);
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    right: 0;
    background-position-x: 112%;
    z-index: -1;
    background-position-y: 0;
}
div#faqAccordion {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    width: 76%;
    margin-left: auto;
    margin-right: auto;
}

/* Mainpage Advice */
.mainpage__advice__title a {
    color: #584646;
    font-size: 20px;
    font-weight: 500;
    line-height: 140%;
    text-decoration: none;
}
.mainpage__advice__title {
    text-align: center;
}
.mainpage__advice__date {
    text-align: center;
    margin-top: 20px;
    margin-bottom: 4px;
    color: #6F6F6F;
}
.mainpage__advice__row {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mainpage__advice__img img {
    object-fit: cover;
    height: 100%;
    width: 100%
}
.mainpage__advice__img {
    border-radius: 20px;
    overflow: hidden;
    height: 340px;
}

/* Mainpage map */
section.mainpage__cities {
    padding: 0 0 100px 0;
}
.mainpage__cities__text {
    color: #6F6F6F;
    font-size: 20px;
    line-height: 140%;
    margin-bottom: 40px;
}
ul.mainpage__cities__list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    max-height: 460px;
    overflow-y: auto;
    gap: 20px;
    list-style: none;
    padding-left: 0;
}

.mainpage__cities__box {
    gap: 60px;
    justify-content: space-between;
    align-items: stretch;
}
.mainpage__cities__title {
    color: #584646;
    margin-bottom: 20px;
    font-size: 40px;
    font-weight: 500;
    line-height: 120%;
}
.mainpage__cities__list li {
    position: relative;
    padding-left: 25px;
    margin-bottom: 0;
}
.mainpage__cities__map iframe {
    height: 100% !important;
}
.mainpage__cities__map {
    height: 100%;
    width: 100%;
    border-radius: 20px;
    overflow: hidden;
}
.mainpage__cities__list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 4px;
    width: 15px;
    height: 13px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='13' viewBox='0 0 15 13' fill='none'%3E%3Cpath d='M6.39959 12.3594C6.35715 12.3594 6.31517 12.3506 6.27629 12.3336C6.2374 12.3166 6.20246 12.2917 6.17365 12.2606L0.0817469 5.67088C0.0411367 5.62694 0.0142147 5.57213 0.00427583 5.51313C-0.00566304 5.45414 0.00181231 5.39352 0.0257871 5.33871C0.0497619 5.2839 0.0891961 5.23726 0.139263 5.20452C0.189331 5.17177 0.247859 5.15432 0.307685 5.15432H3.23999C3.28402 5.15433 3.32753 5.16378 3.3676 5.18203C3.40766 5.20029 3.44334 5.22692 3.47224 5.26014L5.50818 7.60242C5.72821 7.13208 6.15415 6.34894 6.90159 5.39466C8.00658 3.98389 10.0619 1.90909 13.5783 0.0361075C13.6463 -8.57096e-05 13.7254 -0.00947928 13.7999 0.00978174C13.8745 0.0290428 13.9391 0.0755582 13.981 0.140143C14.023 0.204728 14.0392 0.282687 14.0264 0.358628C14.0137 0.434568 13.9729 0.502968 13.9122 0.550323C13.8988 0.560815 12.5429 1.62851 10.9826 3.58417C9.54652 5.38386 7.63753 8.32663 6.69818 12.1257C6.68168 12.1925 6.6433 12.2517 6.58916 12.2941C6.53503 12.3365 6.46825 12.3595 6.3995 12.3596L6.39959 12.3594Z' fill='%23584646'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
}
.mainpage__cities__list::-webkit-scrollbar-thumb:hover{
    background-color: #584646;
}
.mainpage__cities__list::-webkit-scrollbar-thumb:active{
    background-color: #584646;
}
.mainpage__cities__list::-webkit-scrollbar-track{
    border-width:0;
    background-color: #FFF9F5;
    border-radius: 200px;
}
.mainpage__cities__list::-webkit-scrollbar{
    width: 6px;
}
.mainpage__cities__list::-webkit-scrollbar-thumb{
    background-color: #EBBFA6;
    border-radius: 200px;
    cursor: pointer;
}

/* Mainpage tags */
.tags__block a.tag:hover {
    background: #584646;
    color: #fff;
    border-color: #584646;
}
.tags__block {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    overflow: hidden;
    height: 100px;
    transition: height 0.3s ease;
}
.tags__block a.tag {
    display: inline-block;
    color: #584646;
    font-weight: 500;
    text-decoration: none;
    border: 1px solid #EBBFA6;
    border-radius: 20px;
    padding: 6px 16px;
    white-space: nowrap;
}
.tags__actions {
    display: flex;
    justify-content: end;
}
.button-tags-trigger {
    display: inline-block;
    margin-top: 15px;
    cursor: pointer;
    color: #fff;
    font-weight: 600;
    text-decoration: none;
}

/* Social widget */
.app-chats {
    position: fixed;
    /* Ниже выпадающих меню шапки, чтобы виджет их не перекрывал. */
    z-index: 1;
    bottom: 2rem;
    left: 100px;
}
.icon-chats-open {
    fill: white;
}
.icon-chats-open {
    display: inline-block;
    vertical-align: middle;
    width: 2rem;
    height: 2rem;
}
.icon-chats-close {
    display: inline-block;
    vertical-align: middle;
    width: 2rem;
    height: 2rem;
}
.icon-chats-close {
    fill: white;
}
.is-chats-open .app-chats__toggle .icon-chats-open {
    opacity: 0;
    -ms-transform: translate(-50%, -50%) scale(0);
    transform: translate(-50%, -50%) scale(0);
}
.app-chats__toggle .icon-chats-close {
    opacity: 0;
    -ms-transform: translate(-50%, -50%) scale(0);
    transform: translate(-50%, -50%) scale(0);
}
.app-chats__toggle .icon-chats-open, .app-chats__toggle .icon-chats-close {
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    transition: .25s;
}
.is-chats-open .app-chats__toggle .icon-chats-close {
    opacity: 1;
    -ms-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
}
.is-chats-open .app-chats__dropdown {
    opacity: 1;
    visibility: visible;
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
}
.app-chats__toggle {
    display: block;
    position: relative;
    border: none;
    padding: 0;
    width: 5rem;
    height: 5rem;
    border-radius: 50%;
    background: linear-gradient(90deg,rgba(254, 214, 203, 1) 0%, rgba(235, 191, 166, 1) 100%);
    color: #fff;
    cursor: pointer;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: .25s;
}
.app-chats__dropdown {
    position: absolute;
    bottom: 100%;
    right: 0;
    background: #fff;
    box-shadow: 0 1px 30px rgba(188, 187, 237, 0.3);
    border-radius: 10px;
    margin: 0 0 1rem;
    width: 187px;
    overflow: hidden;
    transition: .25s;
    opacity: 0;
    visibility: hidden;
    -ms-transform: translate(0, 10px);
    transform: translate(0, 10px);
}
.app-chats__list {
    margin: 0 -1px -1px 0;
    padding: 0;
    list-style: none;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: nowrap;
}
.app-chats__toggle:hover {
    background: #584646;
    color: #fff;
}
.app-chats__list>li {
    -ms-flex: 0 0 33.333%;
    flex: 0 0 33.333%;
    max-width: 50%;
    border-bottom: 1px solid #EBEBF5;
    border-right: 1px solid #EBEBF5;
}
.app-chats__item {
    text-align: center;
    color: #343434;
    min-height: 100%;
    padding: 1.4rem 1rem 1rem;
    display: block;
    transition: .25s;
}
.app-chats__item-image {
    margin: 0 0 1rem;
}
.app-chats__item-image img {
    display: inline-block;
    vertical-align: top;
    max-width: 6rem;
}
.app-chats__item-text {
    display: block;
    margin: 0;
    font-size: 1rem;
    line-height: 1rem;
    font-weight: 500;
}

/* Footer */
.footer__messengers a:hover {
    mix-blend-mode: hard-light;
}
footer.site-footer {
    color: #fff;
    background: #584646;
}

.footer__col ul li::before {
    content: "";
    position: absolute;
    left: -15px;
    top: 11px;
    width: 3px;
    height: 3px;
    background: #F2F2F2;
}
.footer__col ul {
    list-style: none;
}
.footer__col ul li {
    position: relative;
    /* display: flex; */
    width: 100%;
}
.footer__col ul {
    list-style: none;
    padding: 0 0 0 15px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.footer__col ul li a {
    text-decoration: none;
    color: #F2F2F2;
}
.footer__col__title:after {
    content: '';
    border-bottom: 1px solid #EBBFA6;
    width: 60px;
    display: block;
    position: absolute;
    bottom: 0;
}
.footer__col__title {
    font-size: 20px;
    line-height: 140%;
    padding-bottom: 10px;
    margin-bottom: 20px;
    position: relative;
}
.footer__col {
    text-wrap: nowrap;
}
.footer__col__first{
    gap: 20px;
    margin-right: 83px;
    @media (max-width: 1200px) {
        margin-right: 0;
    }
}
.footer__address {
    text-wrap: wrap;
}
.footer__phones {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.footer__phones a {
    width: 100%;
    text-decoration: none;
    color: #fff;
}
.footer__logo {
    margin-bottom: 34px;
}
.footer__worktime {
    gap: 4px;
    display: flex;
    flex-wrap: wrap;
}
.footer__worktime > div {
    width: 100%;
}
.footer__messengers {
    gap: 10px;
}
a.footer__messengers__phone {
    color: #EBBFA6;
    text-decoration: none;
}
.footer__email a {
    color: #fff;
    text-decoration: none;
    border-bottom: 1px solid;
}
.footer__col ul li a:hover {
    color: #EBBFA6;
    text-decoration: underline;
    text-underline-offset: 4px;
}
.footer__col__second {
    margin-right: 100px;
}
.footer__lastblock {
    background: #000000;
    color: #EBBFA6;
    font-size: 14px;
    padding: 40px 0;
    line-height: 140%;
}
.footer__lastblock a {
    color: #EBBFA6;
    text-decoration: underline;
    text-underline-offset: 4px;
    width: 100%;
    display: block;
    text-wrap: nowrap;
}
.footer__policy{
    margin-left: 9rem;
    @media (max-width: 1200px) {
        margin-left: 0;
    }
    @media (max-width: 600px) {
        text-align: center;
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        margin-bottom: 20px;
    }
}
.site-footer__inner .yandex__review__bage {
    bottom: 0;
    top: auto;
}

/* Mainpage porfolio */
.mainpage__portfolio__slider .swiper-slide .mainpage__portfolio__slide__zoom img,
.portfolio-media__main .swiper-slide .mainpage__portfolio__slide__zoom img {
    width: 40px;
    height: 40px;
    position: relative;
    left: 20px;
}
.mainpage__portfolio__slide__zoom {
    width: 80px;
    height: 80px;
    position: absolute;
    background: #FFFFFF99;
    border-radius: 50%;
    align-content: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(.2);
    pointer-events: none;
    opacity: 0;
    z-index: 1;
}
.portfolio-media__main .swiper-slide:hover .mainpage__portfolio__slide__zoom,
.mainpage__portfolio__slider .swiper-slide:hover .mainpage__portfolio__slide__zoom{
    transform: translate(-50%, -50%) scale(1);
    transition: .3s all;
    opacity: 1;
}
.mainpage__portfolio__slide__caption {
    position: absolute;
    bottom: 0;
    background: #000000B2;
    height: 80px;
    width: 100%;
}
section.mainpage__portfolio {
    padding: 100px 0;
}
.mainpage__portfolio__slider .swiper-slide, .page-siblings__slider .swiper-slide {
    position: relative;
    overflow: hidden;
    border-radius: 20px;
}
.mainpage__portfolio {
    overflow: hidden;
}
.mainpage__portfolio__slider__wrap, .page-siblings__slider__wrap{
    position: relative;
    overflow: hidden;
}
.page-siblings__slider .swiper-slide img,
.mainpage__portfolio__slider .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.mainpage__portfolio__slide__caption {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    align-content: center;
    padding-left: 26px;
}
.mainpage__portfolio__slide__caption:hover a{
    text-decoration: underline;
    text-underline-offset: 6px;
    text-decoration-thickness: 1px;
}
.mainpage__portfolio__slide__caption a {
    font-size: 20px;
    color: #fff;
    text-decoration: none;
}
.mainpage__portfolio__slide__caption a:before {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
}
.mainpage__portfolio__slider .mainpage__portfolio__slide__caption a {
    height: auto !important;
}
.mainpage__portfolio__slider__wrap .mainpage__portfolio__slider__prev,
.page-siblings__slider__wrap .page-siblings__slider__prev,
.page-siblings__slider__wrap .page-siblings__slider__next,
.mainpage__portfolio__slider__wrap .mainpage__portfolio__slider__next,
.portfolio-video-slider .portfolio-video-slider__prev,
.portfolio-video-slider .portfolio-video-slider__next {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #fff;
    z-index: 1;
}
.page-siblings__slider__wrap .page-siblings__slider__next svg,
.page-siblings__slider__wrap .page-siblings__slider__prev svg,
.mainpage__portfolio__slider__wrap .mainpage__portfolio__slider__prev svg,
.mainpage__portfolio__slider__wrap .mainpage__portfolio__slider__next svg,
.portfolio-video-slider .portfolio-video-slider__prev svg,
.portfolio-video-slider .portfolio-video-slider__next svg {
    width: 20px;
    height: 20px;
}
.page-siblings__slider__wrap .page-siblings__slider__next svg path,
.page-siblings__slider__wrap .page-siblings__slider__prev svg path,
.mainpage__portfolio__slider__wrap .mainpage__portfolio__slider__next svg path,
.mainpage__portfolio__slider__wrap .mainpage__portfolio__slider__prev svg path,
.portfolio-video-slider .portfolio-video-slider__prev svg path,
.portfolio-video-slider .portfolio-video-slider__next svg path {
    fill: #584646;
}
.page-siblings__slider__wrap .page-siblings__slider__next:hover,
.page-siblings__slider__wrap .page-siblings__slider__prev:hover,
.mainpage__portfolio__slider__wrap .mainpage__portfolio__slider__next:hover,
.mainpage__portfolio__slider__wrap .mainpage__portfolio__slider__prev:hover,
.portfolio-video-slider .portfolio-video-slider__prev:hover,
.portfolio-video-slider .portfolio-video-slider__next:hover {
    background: #584646;
}
.page-siblings__slider__wrap .page-siblings__slider__next:hover svg path,
.page-siblings__slider__wrap .page-siblings__slider__prev:hover svg path,
.mainpage__portfolio__slider__wrap .mainpage__portfolio__slider__next:hover svg path,
.mainpage__portfolio__slider__wrap .mainpage__portfolio__slider__prev:hover svg path,
.portfolio-video-slider .portfolio-video-slider__prev:hover svg path,
.portfolio-video-slider .portfolio-video-slider__next:hover svg path {
    fill: #fff;
}
.mainpage__portfolio__slider__prev {
    left: 100px !important;
}
.mainpage__portfolio__slider__next {
    right: 100px !important;
}
.mainpage__portfolio__slider .swiper-slide a {
    display: block;
    height: 560px;
    overflow: hidden;
}

/* Mainpage reviews */
.mainpage__reviews__text__box__inner img.secAdvantages__item__separator {
    margin-bottom: 30px;
}
.mainpage__reviews__text__box__inner img {
    right: 30px;
    bottom: 30px;
}
.mainpage__reviews__text__box__inner p {
    color: #584646;
    line-height: 140%;
}
.mainpage__reviews__text:after {
    content: '';
    height: 100%;
    width: 100%;
    display: block;
    background: url('/wp-content/themes/my-wp-starter/images/review_back.webp');
    position: absolute;
    top: 0;
    background-repeat: no-repeat;
    z-index: -1;
    background-position-x: left;
    background-size: contain;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
}
.mainpage__reviews__cont {
    display: flex;
    gap: 40px;
    @media (max-width: 1150px) {
        gap: 10px;
    }
    @media (max-width: 992px) {
        flex-wrap: wrap;
    }
}
.mainpage__reviews__text__box__inner__titile {
    font-size: 28px;
    font-weight: 500;
    margin-bottom: 30px;
    color: #584646;
    line-height: 120%;
}
.mainpage__reviews__text__box {
    background: #fff;
    width: 460px;
    border-radius: 20px;
    padding: 24px;
    position: relative;
    left: 24px;
    top: 24px;
    /* height: 100%; */
}
.mainpage__reviews__text__box__inner {
    padding: 30px;
    position: relative;
}
.mainpage__reviews__text {
    display: block;
    height: 800px;
    width: 1068px;
    @media (max-width: 1150px) {
        position: relative;
    }
}
section.mainpage__reviews {
    margin: 100px 0 100px 0;
    overflow: hidden;
    scroll-margin-top: 80px;
}
.mainpage__reviews__cont__title {
    font-size: 40px;
    font-weight: 500;
    margin-bottom: 40px;
    color: #584646;
}
.yandex__review__bage {
    right: 0;
    top: 0;
}
.mainpage__reviews__text__box__inner {
    padding: 30px;
    border: 2px dashed #EBBFA6;
    border-radius: 20px;
}
#backToTop {
    display: none;
    position: fixed;
    bottom: 60px;
    right: 60px;
    z-index: 99;
    border: none;
    outline: none;
    background-color: transparent;
    color: white;
    cursor: pointer;
    padding: 0;
    border-radius: 50%;
    width: 40px;
    height: 40px;
}

/* Mainpage video slider */
section.mainpage__video {
    margin-top: 100px;
    margin-bottom: 100px;
}
.portfolio-video-item__media {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.video-play-btn {
    position: absolute;
    z-index: 10;
    width: 80px;
    height: 80px;
    background: rgba(255, 255, 255, 0.2);
    border: 2px solid #fff;
    border-radius: 50%;
    cursor: pointer;
    backdrop-filter: blur(5px);
    transition: all 0.3s ease;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
}

.portfolio-video-item .video-play-btn {
    pointer-events: none;
    opacity: 0.7;
}
.portfolio-video-item.swiper-slide-active .video-play-btn {
    pointer-events: auto;
    opacity: 1;
}
.portfolio-video-item.swiper-slide-active.is-playing .video-play-btn {
    opacity: 0;
}
.portfolio-video-item.is-playing:hover .video-play-btn {
    opacity: 1;
}

.play-icon {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 15px 0 15px 25px;
    border-color: transparent transparent transparent #ffffff;
    margin-left: 5px;
}

.video-play-btn:hover {
    transform: scale(1.1);
    background: rgba(255, 255, 255, 0.4);
}

.portfolio-video-item-title {
    text-align: center;
    margin-top: 20px;
}
.portfolio-video-item.swiper-slide-active .portfolio-video-item-title a {
    opacity: 1;
}
.portfolio-video-item-title a {
    color: #584646;
    text-decoration: none;
    font-weight: 500;
    font-size: 20px;
    opacity: 0;
}
.portfolio-video-slider * {
    box-sizing: border-box;
}
.portfolio-video-slider.swiper {
    overflow: hidden;
    width: calc(100% - 80px);
}
.portfolio-video-item {
    transition: transform 0.3s ease;
    transform: scale(.8) !important;
}
.portfolio-video-item.swiper-slide-active {
    opacity: 1;
    transform: scale(1) !important;
}
.portfolio-video-item__media video {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 20px;
}

/* Modal */
.submission-success {
    width: 100%;
}
.submission-success p {
    font-size: 16px;
    font-weight: 400;
    margin: 0;
}
.submission-success-title {
    font-size: 24px;
    font-weight: 600;
}
div#callbackModal .is-sent .wpcf7-response-output{
    display: none;
}
div#callbackModal .is-sent .callback-form.custom-form-container > div:not(.submission-success) {
    display: none;
}
div#callbackModal .wpcf7:not(.is-sent) .submission-success{
    display: none;
}
div#callbackModal button.btn-close,
div#cityModal button.btn-close {
    z-index: 1;
    width: 40px;
    height: 40px;
    padding: 0;
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23EBBFA6'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
    filter: none;
    opacity: 1;
}
div#callbackModal button.btn-close:focus,
div#cityModal button.btn-close:focus{
    box-shadow: none;
}
.callback-form.custom-form-container {
    padding-top: 40px !important;
}
.callback-form.custom-form-container textarea {
    border: 1px solid #E1DBDB;
    border-radius: 12px;
    padding: 24px 20px 0 20px;
}
.callback-form.custom-form-container input.wpcf7-form-control::placeholder, .callback-form.custom-form-container textarea::placeholder{
    color: #6F6F6F;
}
.callback-form.custom-form-container input.wpcf7-form-control:focus {
    box-shadow: none;
}
.callback-form.custom-form-container input.wpcf7-form-control {
    height: 48px;
    border: 1px solid #E1DBDB;
    border-radius: 12px;
    padding: 0 20px 0 20px;
    width: 100%;
    color: #6F6F6F;
}
.custom-form-container {
    background: #FFF9F5;
    padding: 40px 30px;
    border-radius: 20px;
    color: #584646;
    border: 1px solid #888888;
}
.callback-form-title {
    font-size: 20px;
    font-weight: 500;
    line-height: 130%;
    margin-bottom: 4px;
    width: 100%;
}
.smart-captcha.cfyc-captcha-container {
    width: 100%;
}
.wpcf7-form-control-wrap {
    position: relative;
}

/* === Single Portfolio === */
.video__cont:after {
    content: '';
    background: #00000099;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.video__cont {
    position: relative;
}
.portfolio-single__title {
    font-size: 72px;
    color: #584646;
    margin-bottom: 30px;
}
.portfolio-specs__row::after {
    content: "";
    flex-grow: 1;
    order: 2;
    margin: 0 5px;
    background-image: linear-gradient(to right, #EBBFA6 2px, transparent 2px);
    background-size: 8px 2px;
    background-repeat: repeat-x;
    background-position: bottom;
}
.portfolio-single__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 60px;
    margin-bottom: 50px;
    align-items: self-start;
}
.portfolio-media__stage {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    background-color: #FFF9F5;
    border-radius: 12px;
    overflow: hidden;
}
.portfolio-media__slide {
    position: absolute;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
}
.portfolio-media__slide.is-active {
    display: flex;
}
.portfolio-media__slide img,
.portfolio-media__slide video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.portfolio-media__iframe-wrap {
    width: 100%;
    height: 100%;
    position: relative;
}
.portfolio-media__iframe-wrap iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
.portfolio-media__thumbs {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 8px;
    margin-top: 10px;
}
.portfolio-media__thumb {
    position: relative;
    padding: 0;
    border: 2px solid transparent;
    border-radius: 8px;
    overflow: hidden;
    background: #FFF9F5;
    cursor: pointer;
    aspect-ratio: 1 / 1;
    transition: border-color 0.15s ease;
}
.portfolio-media__thumb img,
.portfolio-media__thumb video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.portfolio-media__thumb.is-active {
    border-color: #EBBFA6;
}
.swiper.portfolio-media__main span.portfolio-media__play.portfolio-media__play--main {
    top: 50%;
    width: 80px;
    height: 80px;
    background: #0000006b;
}
.portfolio-media__placeholder {
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #EBE3DC, #FFF9F5);
}
.portfolio-media__play {
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: rgba(0, 0, 0, 0.25);
}
.portfolio-media__play::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-40%, -50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 0 12px 20px;
    border-color: transparent transparent transparent #fff;
}
.portfolio-single__side {
    flex: 1 1 35%;
    min-width: 280px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    border: 1px solid #EBBFA6;
    padding: 30px;
    border-radius: 20px;
}
.portfolio-specs {
    margin: 0;
    padding: 0;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    width: 100%;
}
.portfolio-specs__row {
    display: flex;
    justify-content: space-between;
    gap: 0;
    padding: 0;
    font-size: 16px;
    color: #584646;
    width: 100%;
}
.portfolio-specs__row:last-child {
    border-bottom: none;
    margin: 0;
}
.portfolio-specs__label {
    margin: 0;
    font-weight: 600;
    color: #584646;
}
.portfolio-specs__value {
    margin: 0;
    font-weight: 400;
    text-align: right;
    order: 3;
}
.portfolio-single__cta {
    background-color: #FFF6EF;
    border-radius: 16px;
    padding: 30px;
    /* Поднимаем CTA над колонкой галереи (Swiper наезжает краем и перехватывает клики по кнопке). */
    position: relative;
    z-index: 2;
}
.portfolio-single__cta-title {
    font-size: 20px;
    font-weight: 500;
    color: #584646;
    margin-bottom: 20px;
}
.portfolio-single__cta-text {
    font-size: 16px;
    color: #584646;
    margin-bottom: 20px;
    line-height: 140%;
}
.portfolio-single__cta-btn {
    display: inline-block;
    background-color: #584646;
    color: #fff;
    font-weight: 500;
    padding: 0 21px;
    border-radius: 10px;
    text-decoration: none;
    border: 0;
    height: 70px;
    align-content: center;
}
.portfolio-single__cta-btn:hover {
    background-color: #d9a98e;
    border-color: #d9a98e;
    color: #584646;
}
.portfolio-single__description {
    background-color: #FFF9F5;
    border-radius: 20px;
    padding: 40px;
    margin-bottom: 100px;
}
.portfolio-single__description-title {
    font-size: 20px;
    color: #584646;
    margin-bottom: 20px;
    font-weight: 500;
}
.portfolio-single__description-body p {
    color: #584646;
    line-height: 1.6;
    margin-bottom: 14px;
}
.portfolio-single__description-body p:last-child {
    margin-bottom: 0;
}
.portfolio-media {
    width: 100%;
}

.portfolio-media__main {
    width: 100%;
    border-radius: 20px;
    overflow: hidden;
}

.portfolio-media__main .swiper-slide {
    position: relative;
}

.portfolio-media__main a {
    display: block;
    position: relative;
    text-decoration: none;
}

.portfolio-media__image,
.portfolio-media__video,
.portfolio-media__iframe-preview img {
    display: block;
    width: 100%;
    height: 560px;
    object-fit: cover;
    border-radius: 20px;
}

.portfolio-media__video {
    background: #000;
}

.portfolio-media__iframe-preview {
    position: relative;
    width: 100%;
    height: 520px;
    border-radius: 20px;
    overflow: hidden;
    background: #eee;
}

.portfolio-media__placeholder {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 120px;
    background: #e8e8e8;
}

.portfolio-media__thumbs {
    margin-top: 14px;
}

.portfolio-media__thumb {
    position: relative;
    height: 90px;
    border-radius: 12px;
    overflow: hidden;
    cursor: pointer;
    opacity: 0.55;
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.portfolio-media__thumb.swiper-slide-thumb-active {
    opacity: 1;
}

.portfolio-media__thumb:hover {
    opacity: 1;
    transform: translateY(-2px);
}

.portfolio-media__thumb img,
.portfolio-media__thumb video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.portfolio-media__play {
    position: absolute;
    left: 50%;
    top: 27%;
    width: 60px;
    height: 60px;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: #FFFFFF99;
    z-index: 9;
}

.portfolio-media__play--main {
    width: 62px;
    height: 62px;
}

.portfolio-media__play--main::before {
    left: 25px;
    top: 18px;
    border-top-width: 13px;
    border-bottom-width: 13px;
    border-left-width: 19px;
}

.swiper-button-prev.portfolio-media__arrow.portfolio-media__arrow--prev {
    left: 20px;
}
.swiper-button-next.portfolio-media__arrow.portfolio-media__arrow--next {
    right: 20px;
}
.swiper-button-next.portfolio-media__arrow.portfolio-media__arrow--next,
.swiper-button-prev.portfolio-media__arrow.portfolio-media__arrow--prev {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.85);
    color: #222;
    border: 1px solid #584646;
}
.swiper-button-prev.portfolio-media__arrow.swiper-button-disabled svg path,
.swiper-button-next.portfolio-media__arrow.swiper-button-disabled svg path {
    fill: #fff;
}
.swiper-button-prev.portfolio-media__arrow.swiper-button-disabled,
.swiper-button-next.portfolio-media__arrow.swiper-button-disabled {
    background: #6F6F6F;
    pointer-events: all;
}
.portfolio-media__arrow::after {
    font-size: 18px;
}

.portfolio-media__fancybox-iframe iframe {
    width: 80vw;
    height: 45vw;
    max-width: 1100px;
    max-height: 620px;
}
.portfolio-media__fancybox-video {
    width: 80vw;
    max-width: 1100px;
    max-height: 80vh;
    background: #000;
    border-radius: 12px;
}
.portfolio-media__fancybox-content {
    display: none;
    background: transparent;
    padding: 0;
}

.fancybox__content:has(.portfolio-media__fancybox-video) {
    padding: 0 !important;
    background: transparent !important;
}

.portfolio-media__fancybox-video {
    display: block;
    width: auto;
    height: auto;
    max-width: 90vw;
    max-height: 90vh;
    background: #000;
    border-radius: 0;
}
.portfolio-media__arrow svg.swiper-navigation-icon {
    height: 16px;
    fill: #000;
}

/* Media */
@media (max-width: 1500px) {
    .swiper.mainpage__portfolio__slider {
        padding-left: 20px;
    }
}
@media (max-width: 1420px) {
    .contact__page__content__right {
        min-width: 50%;
    }
    .container-xxl.px-xxl-0 {
        padding-right: 20px !important;
        padding-left: 20px !important;
    }
}
@media (max-width: 1419px) {
    .btns__stack a.pink__button {
        padding: 0;
    }
    .btns__stack a.border__button {
        padding-left: 30px;
        gap: 0;
        justify-content: space-between;
    }
}
@media (max-width: 1400px) {
    .portfolio-video-slider.swiper {
        overflow: hidden;
        width: 100%;
    }
    .mainpage__services__container {
        display: grid;
        gap: 20px 20px;
        grid-template-columns: repeat(4, 1fr);
    }
    .promo__slide__3__title {
        font-size: 22px;
        text-align: center;
        font-weight: 500;
        line-height: 120%;
        color: #584646;
        margin-top: 20px;
    }
    .promo__slide__6__caption {
        padding-top: 80px;
    }
    .promo__slide__4__text {
        font-size: 14px;
    }
}
@media (max-width: 1200px) {
    .not-found-page-first-col h1.inner__page__h1 {
        font-size: 48px;
    }
    .not-found-page-first-col {
        padding: 40px;
    }
    .not-found-page img {
        width: 100%;
        object-fit: cover;
        height: 100%;
        padding: 10px;
    }
    .contact__page__content__form {
        padding: 20px;
        border: 1px solid #EBBFA6;
        border-radius: 20px;
        margin-top: 40px;
        display: flex;
        gap: 20px;
    }
    .contact__page__content {
        display: flex;
        gap: 20px;
    }
    .page-section.page-section--hero-default {
        bottom: 7%;
    }
    .btns__stack {
        grid-template-columns: repeat(2, 1fr);
    }
    .page-section.page-section--hero-default h1 {
        font-size: 60px;
        margin-bottom: 40px;
    }
    .footer__lastblock__box {
        flex-wrap: wrap;
    }
}
@media (max-width: 1199px) {
    .mainpage__price__box::-webkit-scrollbar-thumb:hover{
        background-color: #584646;
    }
    .mainpage__price__box::-webkit-scrollbar-thumb:active{
        background-color: #584646;
    }
    .mainpage__price__box::-webkit-scrollbar-track{
        border-width:0;
        background-color: #FFF9F5;
        border-radius: 200px;
    }
    .mainpage__price__box::-webkit-scrollbar{
        width: 6px;
        height: 6px;
    }
    .mainpage__price__box::-webkit-scrollbar-thumb{
        background-color: #EBBFA6;
        border-radius: 200px;
        cursor: pointer;
    }
    .secAdvantages__box {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }
    .swiper.mainpage__portfolio__slider {
        padding-left: 20px;
    }
    .mainpage__price__box .col-xl {
        width: 42%;
        flex: 0 0 auto;
    }
    .mainpage__price__box {
        gap: 20px;
        overflow-x: scroll;
        width: 100%;
        padding-bottom: 20px;
    }
    .mainpage__price__box__img {
        overflow: hidden;
        height: 170px;
        width: 100%;
        border-radius: 20px 20px 0 0;
        margin-bottom: 0;
    }
    .mainpage__price__box__container {
        padding: 16px 10px;
        border-radius: 0 0 20px 20px;
        box-sizing: border-box;
        border: 1px solid #EBBFA6;
        border-top: 0;
    }
    .mainpage__price__box__notice {
        text-align: center;
        background: #FFF9F5;
        padding: 16px;
        margin-bottom: 20px;
        border-radius: 20px;
        min-height: 158px;
        position: relative;
    }
    .mainpage__price__box__list ul li {
        align-items: center;
    }
}
@media (max-width: 1090px) {
    ul#menu-nizhnee-menju-v-shapke li a {
        text-decoration: none;
        color: #fff;
        font-size: 14px;
    }
    .page-section-text {
        font-size: 16px;
    }
    .page-section.page-section--hero-default h1 {
        font-size: 52px;
        margin-bottom: 40px;
    }
}
@media (max-width: 1150px) {
    section.mainpage__reviews .container-xxl.px-xxl-0 {
        padding-right: 0 !important;
    }
    .mainpage__reviews__text:after {
        background-size: cover;
    }
    .mainpage__reviews__text {
        display: block;
        height: 900px;
        width: 100%;
    }
    .mx-sm-auto.yandex__reviews__cont {
        width: 460px !important;
    }
}
@media (max-width: 1024px) {
    .portfolio-single__grid {
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        margin-bottom: 50px;
        align-items: self-start;
    }
    .page-entry__thumb {
        position: relative;
        z-index: 1;
        margin-top: 0;
        height: 100%;
        overflow: hidden;
    }
    section.mainpage__video {
        padding-bottom: 0;
        padding-top: 0;
        margin: 60px 0;
    }
    .portfolio-video-item.is-playing:hover .video-play-btn{
        opacity: 0;
    }
    .page-siblings__slider__wrap .page-siblings__slider__next,
    .page-siblings__slider__wrap .page-siblings__slider__prev,
    .mainpage__portfolio__slider__wrap .mainpage__portfolio__slider__prev,
    .mainpage__portfolio__slider__wrap .mainpage__portfolio__slider__next {
        display: none;
    }
    .mainpage__portfolio__slider .swiper-slide a {
        display: block;
        height: 355px;
        overflow: hidden;
    }
    .mainpage__price__box__list ul {
        padding-left: 0;
        color: #584646;
    }
    .mainpage__price__box__list ul li span {
        display: inline;
        position: relative;
        text-decoration: underline dotted #EBBFA6;
        text-underline-offset: 6px;
        text-decoration-thickness: 4px;
    }
    .topmenu__lastcontainer {
        height: 72px;
        background: #584646;
        align-content: center;
        z-index: 1040;
        position: sticky;
        top: 0;
    }
    .main__slider {
        position: relative;
        top: 0;
        margin-bottom: 28px;
    }
    .mainpage__form__info {
        width: 100%;
        text-align: center;
    }
    .mainpage__form__box {
        gap: 60px;
        flex-wrap: wrap;
    }
    .assortment__row {
        display: flex;
        gap: 20px;
        flex-wrap: wrap;
        justify-content: center;
    }
    .mainpage__services__container {
        display: grid;
        gap: 20px 20px;
        grid-template-columns: repeat(3, 1fr);
    }
    .slider__caption__block {
        top: 5%;
        left: 88.5%;
        transform: translate(-75%, 0px);
        width: 100%;
    }
    .mainpage__form__wpcf7 {
        padding: 30px 24px;
        background: #FFFFFF1A;
        border-radius: 10px;
        border: 1px solid #B1A89F;
        width: 100%;
    }
    .promo__slide__2__caption {
        position: absolute;
        background: #FFF9F5;
        width: 220px;
        margin-left: 0;
        height: 93%;
        top: 20px;
        border-radius: 20px;
        padding: 16px;
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        align-items: start;
        flex-direction: column;
    }
    .promo__slide__3__caption {
        position: absolute;
        background: #FFF9F5;
        width: 90%;
        height: 260px;
        left: 50%;
        bottom: 20px;
        padding: 16px;
        border-radius: 20px;
    }
}

@media (max-width: 1280px) {
    .site-header__inner {
        gap: 10px;
        align-items: center;
    }
    .main__slider .swiper-slide {
        height: 700px;
    }
    .main__slider  .border__button__arrow img {
        object-fit: contain;
        height: auto;
        width: auto;
    }
    .main__slider img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}
@media (max-width: 992px) {
    article.page-entry.status-publish.hentry {
        position: relative;
        min-height: 500px;
        background-color: gray;
    }
    .not-found-page-second-col {
        flex: 1;
        width: 50%;
    }
    .page-siblings__title {
        flex: 1 1 auto;
        min-width: 0;
        color: #fff;
        font-size: 16px;
        padding-left: 6px;
        padding-right: 10px;
        align-content: center;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .contact__page__content__left__block {
        margin-bottom: 0;
    }
    .contact__page__content__left__block.social a {
        min-width: 36px;
    }
    .contact__page__content__left__block.social {
        order: 7;
        flex-wrap: nowrap;
    }
    .contact__page__content__left__block.email {
        order: 5;
    }
    .contact__page__content__left__info {
        order: 8;
    }
    .contact__page__content__left__block.worktimecalls {
        order: 6;
    }
    .contact__page__content__left__block.phones {
        order: 4;
    }
    .contact__page__content__left__block.worktime {
        order: 3;
    }
    .contact__page__content__left__block.address {
        order: 0;
    }
    .contact__page__content__left {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0 20px;
        align-items: stretch;
        padding: 24px;
    }
    .contact__page__content__left__info {
        margin-top: 10px;
        grid-row: auto;
        border: 1px solid #e0cfc3;
        border-radius: 8px;
        padding: 15px;
        background-color: #fff8f4;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        grid-column: span 2;
    }

    /* Остальные блоки */
    .contact__page__content__left__block,
    .contact__page__content__left__block.phones,
    .contact__page__content__left__block.email,
    .contact__page__content__left__block.social {
        padding: 10px;
        border-radius: 6px;
    }
    .contact__page__content__form__block .custom-form-container > .d-flex {
        flex-wrap: wrap;
    }
    .contact__page__content__form__block .custom-form-container > .d-flex .col {
        flex: 0 0 auto;
        width: 100%;
    }
    .contact__page__content__form__block {
        width: 100%;
        padding: 24px;
    }
    .contact__page__content__form__req__title {
        width: 100%;
        text-align: center;
    }
    .contact__page__content__form__req {
        display: flex;
        gap: 20px;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .contact__page__content__form {
        flex-wrap: wrap;
        gap: 10px;
    }
    .contact__page__content {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }
    .contact__page__content__right {
        min-width: 100%;
        min-height: 320px;
    }
    section.page-section.page-section--content-1 {
        margin-bottom: 60px;
    }
    section.page-section.page-section--siblings {
        margin: 60px 0;
    }
    .page-block.page-block--full {
        margin-top: 60px;
        max-height: none;
        overflow: hidden;
        transition: max-height 0.5s ease;
        margin-bottom: 20px;
    }
    /* На мобильных используем svh (без скачков из-за адресной строки),
       фолбэк на vh для старых браузеров. Высоту задаём родителю-статье,
       thumb тянется на 100%. */
    article.page-entry.status-publish.hentry {
        height: calc(100vh - var(--header-h, 152px));
        height: calc(100svh - var(--header-h, 152px));
    }
    .page-entry__thumb {
        position: relative;
        z-index: 1;
        margin-top: 0;
        height: 100%;
        overflow: hidden;
    }
    .page-entry__thumb img.attachment-full {
        object-fit: cover;
        height: 100%;
        width: 100%;
        max-width: none;
        margin-top: 0;
    }
    .page-section-text {
        font-size: 16px;
        margin-bottom: 30px;
    }
    span.selected-chip {
        padding: 0 10px 0 16px;
        border: 1px solid #EBBFA6;
        border-radius: 20px;
        align-items: center;
        height: 32px;
    }
    .filter-toggle__count.js-filter-count {
        font-size: 14px;
    }
    .portfolio-wrapper.posts-list article .post-card__title {
        position: absolute;
        bottom: 0;
        background: #00000080;
        width: 100%;
        height: 56px;
        align-content: center;
        padding-left: 16px;
    }
    .portfolio-wrapper.posts-list article .post-card__title a {
        color: #fff;
        text-decoration: none;
        font-size: 16px;
        font-weight: 500;
    }
    .portfolio-wrapper.posts-list {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
        margin-bottom: 10px;
    }
    .portfolio-filters__row {
        gap: 10px;
    }
    .filter-panel {
        gap: 10px;
    }
    .portfolio-filters.js-portfolio-filters {
        padding: 24px;
    }
    .inner__page__h1 {
        font-size: 56px;
        margin: 20px 0;
    }
    ul.slider__caption__list li {
        display: flex;
        align-items: start;
        gap: 10px;
        width: 100%;
        line-height: 140%;
    }
    section.mainpage__howitwork {
        margin: 60px 0;
    }
    .mainpage__faq__title {
        font-size: 36px;
        color: #584646;
        text-align: center;
        margin-bottom: 40px;
        font-weight: 500;
        line-height: 120%;
    }
    .promo__slide__5__caption {
        padding: 10px;
        border-radius: 20px;
        left: 50%;
        top: 20px;
    }
    .promo__slide__5__caption .material-box__border {
        width: calc(100% - 20px);
        height: calc(100% - 20px);
        left: 10px;
        top: 10px;
        border: 2px dashed #EBBFA6;
        border-radius: 20px;
    }
    .promo__slide__5__caption {
        padding: 10px;
        border-radius: 20px;
        left: 50%;
        top: 20px;
    }
    .promo__slide__4__caption .material-box__border {
        width: calc(100% - 20px);
        height: calc(100% - 20px);
        left: 10px;
        top: 10px;
        border: 2px dashed #EBBFA6;
        border-radius: 20px;
    }
    .promo__slide__4__caption {
        padding: 10px;
    }
    .promo__slide__3__caption {
        position: absolute;
        background: #FFF9F5;
        width: 90%;
        height: 260px;
        left: 50%;
        bottom: 20px;
        padding: 10px;
        border-radius: 20px;
    }
    .promo__slide__3__caption .material-box__border {
        width: calc(100% - 20px);
        height: calc(100% - 20px);
        left: 10px;
        top: 10px;
        border: 2px dashed #EBBFA6;
        border-radius: 20px;
    }

    .promo__slider__next.swiper-button-next,
    .promo__slider__prev.swiper-button-prev, .page-siblings__slider__next.swiper-button-next, .page-siblings__slider__prev.swiper-button-prev {
        display: none;
    }
    .mainpage__price__box__list {
        font-size: 14px;
    }
    .mainpage__price__box__notice__title {
        font-size: 16px;
        color: #584646;
        font-weight: 500;
        line-height: 140%;
        margin-bottom: 10px;
    }
    .mainpage__price__box__notice__text {
        color: #584646;
        line-height: 140%;
        font-size: 14px;
    }
    .mainpage__price__box__title {
        text-align: center;
        color: #584646;
        font-weight: 500;
        font-size: 24px;
        margin-bottom: 20px;
        display: flex;
        justify-content: center;
        align-items: center;
        cursor: pointer;
        transition: .3s all;
    }
    .search-container img.search-icon {
        position: absolute;
        left: 10px;
        top: 10px;
    }
    .search-container input.form-control {
        padding-left: 2rem;
        border: 1px solid #E1DBDB;
        border-radius: 8px;
        width: 100%;
        font-size: 14px;
    }
    .phone-numbers a {
        font-size: 16px;
        font-weight: 500;
        text-decoration: none;
        color: #000;
    }
    .header-menu a {
        font-size: 14px;
    }
    .footer__col {
        text-wrap: nowrap;
        font-size: 14px;
        width: 18%;
    }
    .site-footer__inner {
        display: flex;
        align-items: start;
        justify-content: space-between;
        gap: 20px;
        flex-direction: row;
        flex-wrap: wrap;
    }
    .footer__col__first {
        margin-right: 30px;
        width: 26%;
    }
    .site-footer__copy {
        text-wrap: wrap;
    }
    .footer__col {
        text-wrap: nowrap;
        font-size: 14px;
    }
    .footer__col ul li a{
        font-size: 14px;
    }
    .footer__col ul {
        margin: 0;
    }
    .footer__col__second {
        margin-right: 0;
    }
    .footer__col ul {
        list-style: none;
        padding: 0 0 0 15px;
        display: flex;
        flex-wrap: wrap;
        gap: 5px;
    }
    .search-container {
        display: flex;
        position: relative;
        width: 100%;
        height: 40px;
    }
    .site-logo {
        bottom: 5px;
        position: relative;
        min-width: 152px;
    }
    footer.site-footer {
        color: #fff;
        background: #584646;
        margin-top: 60px;
        overflow: hidden;
    }
    .tags__actions {
        display: flex;
        justify-content: start;
    }
    .tags__block {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
        overflow: hidden;
        height: 88px;
        transition: height 0.3s ease;
    }
    .tags__block a.tag {
        font-size: 14px;
    }
    section.mainpage__cities {
        padding: 0 0 60px 0;
    }
    ul.mainpage__cities__list {
        display: grid;
        grid-template-columns: 1fr 1fr;
        max-height: 460px;
        overflow-y: auto;
        gap: 10px;
        list-style: none;
        padding-left: 0;
        overflow-x: hidden;
    }
    .mainpage__cities__text {
        color: #6F6F6F;
        font-size: 16px;
        line-height: 140%;
        margin-bottom: 20px;
    }
    .mainpage__cities__title {
        color: #584646;
        margin-bottom: 10px;
        font-size: 36px;
        font-weight: 500;
        line-height: 120%;
    }
    .mainpage__cities__box {
        gap: 10px;
        justify-content: space-between;
        align-items: stretch;
    }
    .mainpage__advice {
        padding: 60px 0;
    }
    section.mainpage__faq {
        padding: 80px 0;
        background: #FFF9F5E5;
        position: relative;
        min-height: 928px;
    }
    div#faqAccordion {
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
    section.mainpage__faq:after {
        content: '';
        background: url(/wp-content/themes/my-wp-starter/images/shtora_back.webp);
        position: absolute;
        top: 0;
        width: 100%;
        height: 100%;
        background-repeat: no-repeat;
        right: -14rem;
        background-position-x: right;
        z-index: -1;
        background-position-y: 0;
    }
    section.mainpage__faq:before {
        content: '';
        background: url(/wp-content/themes/my-wp-starter/images/shtora_back.webp);
        position: absolute;
        top: 0;
        width: 100%;
        height: 100%;
        background-repeat: no-repeat;
        left: -14rem;
        background-position-x: right;
        z-index: -1;
        background-position-y: 0;
        transform: scaleX(-1);
    }
    .mainpage__howitwork__container {
        display: grid;
        gap: 10px 10px;
        grid-template-columns: repeat(2, 1fr);
    }
    .logos__ticker {
        overflow: hidden;
        padding: 70px 0;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }
    section.mainpage__assortment::after {
        content: '';
        background: url('data:image/svg+xml,%3Csvg%20xmlns%3D"http%3A//www.w3.org/2000/svg"%20width%3D"328"%20height%3D"413"%20viewBox%3D"0%200%20328%20413"%20fill%3D"none"%3E%3Cpath%20d%3D"M0.0457839%2056.2072C70.6725%2062.6994%200.16692%20140.873%20123.472%20173.613C270.103%20214.539%20335.429%20-145.196%20229.778%2068.6315C145.258%20239.693%20259.275%20368.675%20326.849%20411.783"%20stroke%3D"%23EBBFA6"%20stroke-dasharray%3D"10%2010"%2F%3E%3C/svg%3E');
        width: 21rem;
        height: 24rem;
        display: block;
        background-repeat: no-repeat;
        position: absolute;
        bottom: -8rem;
        left: -10rem;
        background-size: 100%;
        transform: scaleX(-1) rotate(
            96deg);
    }
    section.mainpage__assortment::before {
        content: '';
        background: url('data:image/svg+xml,%3Csvg%20xmlns%3D"http%3A//www.w3.org/2000/svg"%20width%3D"328"%20height%3D"413"%20viewBox%3D"0%200%20328%20413"%20fill%3D"none"%3E%3Cpath%20d%3D"M0.0457839%2056.2072C70.6725%2062.6994%200.16692%20140.873%20123.472%20173.613C270.103%20214.539%20335.429%20-145.196%20229.778%2068.6315C145.258%20239.693%20259.275%20368.675%20326.849%20411.783"%20stroke%3D"%23EBBFA6"%20stroke-dasharray%3D"10%2010"%2F%3E%3C/svg%3E');
        width: 16rem;
        height: 24rem;
        display: block;
        background-repeat: no-repeat;
        position: absolute;
        top: -14rem;
        right: -6rem;
        background-size: 100%;
        transform: rotate(183deg);
    }
    .assortment__row {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
        justify-content: center;
    }
    section.mainpage__assortment {
        padding: 60px 0;
    }
    .mx-sm-auto.yandex__reviews__cont {
        width: 560px !important;
    }
    .mainpage__services__item__box {
        padding: 24px;
        background: #fff;
        min-height: 180px;
        border-radius: 20px;
        position: relative;
        top: -20px;
    }
    .mainpage__reviews__text {
        margin-top: 20px;
        height: auto;
        padding-bottom: 50px;
    }
    .mainpage__reviews__cont {
        display: block;
        width: 100%;
    }
    section.mainpage__reviews {
        padding: 0;
        overflow: hidden;
        margin: 60px 0;
    }
    .mainpage__services__container {
        display: grid;
        gap: 10px 10px;
        grid-template-columns: repeat(2, 1fr);
    }
    .mainpage__services__title {
        color: #584646;
        font-size: 36px;
        font-weight: 500;
        margin-bottom: 20px;
        width: 80%;
        text-align: center;
        margin-left: auto;
        margin-right: auto;
    }
    section.mainpage__services {
        padding: 50px 0;
        background: #FFF9F5;
    }
    section.mainpage__price {
        padding: 0;
        margin: 60px 0;
        /* overflow: hidden; */
    }
    a.mainpage__form__info__phone {
        font-size: 36px;
    }
    section.mainpage__form p {
        font-size: 16px;
        margin-bottom: 40px;
        line-height: 140%;
        text-align: left;
    }
    .mainpage__form__info__phone__box {
        text-wrap: nowrap;
    }
    .mainpage__form__info {
        width: 100%;
        text-align: center;
        display: flex;
        justify-content: space-between;
    }
    section.mainpage__form {
        padding: 60px 0;
    }
    .mainpage__form__title {
        text-align: center;
        font-size: 36px;
        margin-bottom: 10px;
    }
    section.mainpage__portfolio {
        margin: 60px 0;
        padding: 0;
    }
    .mainpage__tabs__overlay {
        height: 56px;
    }
    .mainpage__tabs__image {
        height: 265px;
        display: flex;
        width: 100%;
        align-items: center;
    }
    section.mainpage__tabs::after {
        content: '';
        background: url('data:image/svg+xml,%3Csvg%20xmlns%3D"http%3A//www.w3.org/2000/svg"%20width%3D"328"%20height%3D"413"%20viewBox%3D"0%200%20328%20413"%20fill%3D"none"%3E%3Cpath%20d%3D"M0.0457839%2056.2072C70.6725%2062.6994%200.16692%20140.873%20123.472%20173.613C270.103%20214.539%20335.429%20-145.196%20229.778%2068.6315C145.258%20239.693%20259.275%20368.675%20326.849%20411.783"%20stroke%3D"%23EBBFA6"%20stroke-dasharray%3D"10%2010"%2F%3E%3C/svg%3E');
        width: 21rem;
        height: 24rem;
        display: block;
        background-repeat: no-repeat;
        position: absolute;
        bottom: -8rem;
        left: -10rem;
        background-size: 100%;
    }
    section.mainpage__tabs::before {
        content: '';
        background: url('data:image/svg+xml,%3Csvg%20xmlns%3D"http%3A//www.w3.org/2000/svg"%20width%3D"328"%20height%3D"413"%20viewBox%3D"0%200%20328%20413"%20fill%3D"none"%3E%3Cpath%20d%3D"M0.0457839%2056.2072C70.6725%2062.6994%200.16692%20140.873%20123.472%20173.613C270.103%20214.539%20335.429%20-145.196%20229.778%2068.6315C145.258%20239.693%20259.275%20368.675%20326.849%20411.783"%20stroke%3D"%23EBBFA6"%20stroke-dasharray%3D"10%2010"%2F%3E%3C/svg%3E');
        width: 24rem;
        height: 34rem;
        display: block;
        background-repeat: no-repeat;
        position: absolute;
        top: -8rem;
        right: -10rem;
        transform: rotate(
            25deg);
        background-size: 100%;
    }
    .main__btn__style {
        font-size: 14px;
        height: 44px;
    }
    .mainpage__tabs__title span {
        font-size: 36px;
        line-height: 120%;
        width: 70%;
    }
    section.mainpage__tabs {
        padding: 60px 0;
    }
    .main__slider {
        margin-bottom: 60px;
    }
    section#secWellcome {
        margin-bottom: 40px;
    }
    .secWellcom__text {
        font-size: 16px;
        line-height: 140%;
    }
    .secWellcome__subtitle {
        font-size: 58px;
    }
    .secWellcome__title {
        font-size: 36px;
    }
    .secAdvantages__box {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }
    .app-chats {
        position: fixed;
        z-index: 1;
        bottom: 2rem;
        left: 10px;
    }
    .main__slider .swiper-slide {
        height: 637px;
    }
    .topmenu__lastcontainer {
        height: 58px;
    }
    .calc__btn {
        font-size: 14px;
    }
    .slider__caption__block {
        top: 12%;
        left: 8%;
        transform: none;
        width: 87%;
    }
    ul#menu-nizhnee-menju-v-shapke li a {
        font-size: 14px;
    }
    .mainpage__portfolio__slide__zoom {
        transform: translate(-50%, -50%) scale(1);
        transition: .3s all;
        opacity: 1;
    }
}
@media (min-width: 851px) {
    .site-header__inner .top__messengers, .site-header__inner .catalog__btn, .top__mobile__gumburger{
        display: none !important;
    }
}
@media (max-width: 850px) {
    .top__mobile__gumburger {
        width: 30px;
        display: flex;
        justify-content: end;
    }
    .not-found-page > div {
        padding: 40px;
        flex: 0 1 auto;
        width: 100%;
    }
    .not-found-page > div {
        padding: 40px;
    }
    .not-found-page {
        border: 1px solid #EBBFA6;
        border-radius: 20px;
        align-items: center;
        margin-top: 40px;
        flex-wrap: wrap;
    }
    .footer__col {
        text-wrap: nowrap;
        font-size: 14px;
        width: calc(100% / 3 - 20px);
    }
    .footer__col__first {
        margin-right: 30px;
        width: 100%;
    }
    .mainpage__advice__img {
        border-radius: 20px;
        overflow: hidden;
        height: 240px;
    }
    .yandex__review__bage {
        right: 20px;
        top: 0;
    }
    .mainpage__services__item__box {
        padding: 16px;
        background: #fff;
        min-height: 138px;
        border-radius: 20px;
        position: relative;
        top: -20px;
    }
    .mainpage__services__item__text {
        color: #584646;
        line-height: 140%;
        font-size: 14px;
    }
    .mainpage__services__item__title {
        color: #584646;
        font-size: 16px;
        margin-bottom: 10px;
        font-weight: 500;
        width: 100%;
    }
    .secAdvantages__item__separator {
        margin-bottom: 10px;
    }
    .mainpage__services__item__img {
        height: 220px;
    }
    .mainpage__advice__date {
        font-size: 14px;
        margin-top: 10px;
    }
    .mainpage__advice__title a {
        color: #584646;
        font-size: 16px;
        font-weight: 500;
        line-height: 140%;
        text-decoration: none;
    }
    .mainpage__advice__row {
        display: grid;
        gap: 10px;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .logos__ticker {
        overflow: hidden;
        padding: 60px 0;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }
    .promo__slide__3__title {
        font-size: 20px;
        text-align: center;
        font-weight: 500;
        line-height: 120%;
        color: #584646;
        margin-top: 10px;
        width: 80%;
        margin-left: auto;
        margin-right: auto;
    }
    .promo__slide__6__caption {
        padding-top: 40px;
    }
    .promo__slide__2__title span {
        font-size: 36px;
    }
    .promo__slide__2__title {
        color: #584646;
        font-size: 20px;
        line-height: 1;
        font-weight: 500;
        margin-top: 8px;
    }
    .promo__slide__2__caption .promo__slide__2__bottom__text {
        font-size: 12px;
        width: 80%;
        margin-left: auto;
        margin-right: auto;
    }
    .promo__slide__2__text {
        color: #584646;
        line-height: 140%;
        font-size: 14px;
    }
    .promo__slide__2__icon img {
        width: 40px;
        height: 40px;
    }
    .promo__slide__1__caption .promo__slide__1__title {
        font-size: 24px;
        line-height: 120%;
        color: #584646;
        font-weight: 500;
        width: 75%;
    }
    .promo__slide__1__text {
        width: 80% !important;
        font-size: 14px;
    }
    .promo__slide__1__icon img {
        width: 38px;
    }
    .mainpage__price__box__list ul li {
        gap: 6px;
        font-weight: 500;
        margin-bottom: 10px;
    }
    .mainpage__price__box__notice__inner {
        padding: 16px 8px;
        /* border: 2px dashed #EBBFA6; */
        border-radius: 20px;
        min-height: 130px;
    }
    .site-footer__inner {
        display: flex;
        align-items: start;
        justify-content: start;
        gap: 20px;
        flex-direction: row;
        flex-wrap: wrap;
    }
    header.site-header .container-xxl.px-xxl-0 {
        box-shadow: 0 0 9px 0 #5846464a;
    }
    .mainpage__price__koff__inner {
        border-radius: 20px;
        padding: 14px 16px;
        border: 2px dashed #EBBFA6;
    }
    .mainpage__price__koff {
        background: #FFF9F5;
        padding: 10px;
        border-radius: 20px;
        margin-top: 10px;
        position: relative;
    }
    .mainpage__price__box__price {
        text-align: center;
        font-size: 24px;
        font-weight: 500;
        color: #584646;
        margin-bottom: 20px;
    }
    .mainpage__price__box {
        gap: 10px;
        overflow-x: scroll;
        width: 100%;
        padding-bottom: 20px;
        margin-bottom: 0;
    }
    .mainpage__price__box .col-xl {
        width: 49%;
        flex: 0 0 auto;
    }
    .site-header__inner {
        padding: 13px 0;
        gap: 17px;
    }
    .site-logo {
        bottom: 5px;
        position: relative;
        width: 135px;
        min-width: 0;
    }
    .top__mobile__phoneblock {
        text-align: right;
        line-height: 1.2;
    }
    .top__mobile__phoneblock .top__mobile__callback {
        font-size: 14px;
        font-weight: 600;
        color: #000;
        text-decoration: underline dotted #EBBFA6;
        text-underline-offset: 6px;
        text-decoration-thickness: 4px;
    }
    .top__messengers a.topmenu__phone {
        font-size: 16px;
        font-weight: 700;
        text-wrap: nowrap;
    }
    .top__messengers {
        align-items: center;
        line-height: 1;
        margin-right: auto !important;
        gap: 10px;
    }
    .top__messengers img.messenger-icon {
        width: 30px;
        height: 30px;
    }
    .search-container{
        display: none;
    }
    .site-header__inner .phone-numbers{
        display: none;
    }
    header.site-header {
        position: sticky;
    }
    .topmenu__container {
        display: none;
    }
    .lasthead__separator, a.calc__btn:not(.calc__btn--mobile) {
        display: none;
    }
    /* Кнопка «Калькулятор» в мобильном меню — оформлена как пункт меню:
       на всю ширину строки (флекс-контейнер .city__select__mobile с flex-wrap,
       чтобы город/телефоны ушли ниже) и с такой же нижней чертой-разделителем,
       как у пунктов ul#menu-nizhnee-menju-v-shapke li. */
    .calc__btn--mobile {
        flex: 0 0 100%;
        border-bottom: 1px solid #F2F2F2;
        border-radius: 0;
        padding-bottom: 20px;
        font-size: 16px;
    }
    .city__select__mobile .city__select__toggle::before {
        content: "";
        display: inline-block;
        width: 9px;
        height: 6px;
        background: url('data:image/svg+xml,%3Csvg%20xmlns%3D"http%3A//www.w3.org/2000/svg"%20width%3D"9"%20height%3D"6"%20viewBox%3D"0%200%209%206"%20fill%3D"none"%3E%3Cpath%20d%3D"M4.22082%203.3916L7.14583%200.229433C7.42892%20-0.0766165%207.91273%20-0.0766164%208.19583%200.229433C8.49216%200.549792%208.49216%201.04421%208.19583%201.36457L4.95492%204.86824C4.55908%205.29619%203.88257%205.29619%203.48673%204.86824L0.204977%201.32041C-0.0682994%201.02497%20-0.0682994%200.569026%200.204977%200.273592C0.510099%20-0.0562693%201.03155%20-0.0562694%201.33667%200.273592L4.22082%203.3916Z"%20fill%3D"%231D222F"%2F%3E%3C/svg%3E');
        position: absolute;
        bottom: auto;
        right: -12px;
        top: 10px;
    }
    .search-container input.form-control {
        padding-left: 2.3rem;
        border: 1px solid #E1DBDB;
        border-radius: 8px;
        width: 100%;
        font-size: 14px;
        height: 40px;
        background: #FFF9F5;
        color: #584646;
    }
    .city__select__mobile button.search-submit {
        top: 10px;
    }
    .city__select__mobile form.search-container {
        display: block;
        width: 100%;
    }
    nav#last_header_menu {
        align-content: center;
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .city__select__mobile {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 20px;
    }
    .catalog__btn::before {
        content: "";
        display: inline-block;
        width: 9px;
        height: 6px;
        background: url('data:image/svg+xml,%3Csvg%20xmlns%3D"http%3A//www.w3.org/2000/svg"%20width%3D"9"%20height%3D"6"%20viewBox%3D"0%200%209%206"%20fill%3D"none"%3E%3Cpath%20d%3D"M4.22082%203.3916L7.14583%200.229433C7.42892%20-0.0766165%207.91273%20-0.0766164%208.19583%200.229433C8.49216%200.549792%208.49216%201.04421%208.19583%201.36457L4.95492%204.86824C4.55908%205.29619%203.88257%205.29619%203.48673%204.86824L0.204977%201.32041C-0.0682994%201.02497%20-0.0682994%200.569026%200.204977%200.273592C0.510099%20-0.0562693%201.03155%20-0.0562694%201.33667%200.273592L4.22082%203.3916Z"%20fill%3D"%23584646"%2F%3E%3C/svg%3E');
        position: absolute;
        bottom: auto;
        right: 0;
        transition: .3s all;
        top: 10px;
    }
    ul#menu-nizhnee-menju-v-shapke .city__select__toggle.show::before, .catalog__btn.active::before {
        transform: rotate(180deg);
        background: url('data:image/svg+xml,%3Csvg%20xmlns%3D"http%3A//www.w3.org/2000/svg"%20width%3D"9"%20height%3D"6"%20viewBox%3D"0%200%209%206"%20fill%3D"none"%3E%3Cpath%20d%3D"M4.22082%203.3916L7.14583%200.229433C7.42892%20-0.0766165%207.91273%20-0.0766164%208.19583%200.229433C8.49216%200.549792%208.49216%201.04421%208.19583%201.36457L4.95492%204.86824C4.55908%205.29619%203.88257%205.29619%203.48673%204.86824L0.204977%201.32041C-0.0682994%201.02497%20-0.0682994%200.569026%200.204977%200.273592C0.510099%20-0.0562693%201.03155%20-0.0562694%201.33667%200.273592L4.22082%203.3916Z"%20fill%3D"%23584646"%2F%3E%3C/svg%3E');
    }
    .catalog__menu-wrapper {
        position: relative;
        /* В потоке (мобильный аккордеон) скрываем через display:none,
           чтобы панель не резервировала высоту до раскрытия. */
        display: none;
    }
    .calc__btn:hover, ul#menu-nizhnee-menju-v-shapke li a:hover {
        color: #584646;
    }
    ul#menu-nizhnee-menju-v-shapke li {
        position: relative;
        list-style: none;
        border-bottom: 1px solid #F2F2F2;
        border-radius: 0;
        padding-bottom: 20px;
    }
    ul#menu-nizhnee-menju-v-shapke li .dropdown-menu a {
        color: #584646;
    }
    ul#menu-nizhnee-menju-v-shapke ul.dropdown-menu {
        top: 10px !important;
        background: #FFF9F5;
        border-radius: 0;
        padding: 0;
        border: 0;
        box-shadow: none;
        transform: translate3d(0px, 0, 0px) !important;
        padding-left: 20px;
        padding-top: 10px;
    }
    /* В мобильной версии подменю встроены в поток (аккордеон), поэтому
       скрытое состояние — через display:none, чтобы блок не занимал место
       до раскрытия (visibility:hidden оставлял бы высоту). */
    ul#menu-nizhnee-menju-v-shapke ul.dropdown-menu {
        display: none !important;
    }
    ul#menu-nizhnee-menju-v-shapke ul.dropdown-menu.show {
        display: block !important;
    }
    ul#menu-nizhnee-menju-v-shapke ul.dropdown-menu li:last-of-type {
        border: 0;
    }
    a.city__select__toggle.show {
        color: #584646 !important;
        font-weight: 600;
    }
    .catalog__btn img {
        display: none;
    }
    .catalog__menu-wrapper.active {
        display: flex !important;
        opacity: 1;
        transform: translateY(0);
        gap: 60px;
        border-radius: 0 0 20px 20px;
        padding-bottom: 20px;
        border-bottom: 1px solid #F2F2F2;
        border-radius: 0;
    }
    .catalog__btn.active {
        border: 0;
        font-weight: 600;
        padding-bottom: 10px;
    }
    .catalog__btn {
        background: none;
        font-size: 16px;
        color: #584646;
        justify-content: start;
        height: auto;
        width: 100%;
        border-bottom: 1px solid #F2F2F2;
        border-radius: 0;
        padding-bottom: 20px;
        position: relative;
    }
    .catalog__menu-wrapper {
        position: relative;
        top: 0;
        left: 0;
        background: #FFF9F5;
        box-shadow: none;
        z-index: 1000;
        width: auto;
        transition: opacity 0.3s ease, transform 0.3s ease;
        opacity: 0;
        transform: translateY(-10px);
        padding: 0;
        /* В потоке (мобильный аккордеон) скрываем через display:none,
           чтобы панель не резервировала высоту до раскрытия. */
        display: none;
    }
    .catalog__menu-wrapper.active {
        display: flex;
    }
    ul#menu-nizhnee-menju-v-shapke .city__select__toggle::before {
        content: "";
        display: inline-block;
        width: 9px;
        height: 6px;
        background: url('data:image/svg+xml,%3Csvg%20xmlns%3D"http%3A//www.w3.org/2000/svg"%20width%3D"9"%20height%3D"6"%20viewBox%3D"0%200%209%206"%20fill%3D"none"%3E%3Cpath%20d%3D"M4.22082%203.3916L7.14583%200.229433C7.42892%20-0.0766165%207.91273%20-0.0766164%208.19583%200.229433C8.49216%200.549792%208.49216%201.04421%208.19583%201.36457L4.95492%204.86824C4.55908%205.29619%203.88257%205.29619%203.48673%204.86824L0.204977%201.32041C-0.0682994%201.02497%20-0.0682994%200.569026%200.204977%200.273592C0.510099%20-0.0562693%201.03155%20-0.0562694%201.33667%200.273592L4.22082%203.3916Z"%20fill%3D"%23584646"%2F%3E%3C/svg%3E');
        position: absolute;
        bottom: auto;
        right: 0;
        transition: .3s all;
        top: 10px;
    }
    ul#menu-nizhnee-menju-v-shapke li a {
        font-size: 16px;
        color: #584646;
    }
    .calc__btn {
        font-size: 14px;
        color: #584646;
    }
    ul#menu-nizhnee-menju-v-shapke ul.dropdown-menu{
        position: relative !important;
    }
    .topmenu__lastcontainer.active {
        background: #FFF9F5;
        top: 84px;
        left: 0;
        z-index: 1001;
        box-shadow: 0px 11px 10px #00000014;
        max-height: 90vh;
        /* открытое состояние: на месте и видимо */
        transform: translateY(0);
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transition: transform 0.35s ease, opacity 0.35s ease, visibility 0s linear 0s;
    }

    .topmenu__lastcontainer.active::-webkit-scrollbar-thumb:active{
        background-color: #584646;
    }
    .topmenu__lastcontainer.active::-webkit-scrollbar-track{
        border-width:0;
        background-color: #FFF9F5;
        border-radius: 200px;
    }
    .topmenu__lastcontainer.active::-webkit-scrollbar{
        width: 6px;
    }
    .topmenu__lastcontainer.active::-webkit-scrollbar-thumb{
        background-color: #EBBFA6;
        border-radius: 200px;
        cursor: pointer;
    }
    .topmenu__lastcontainer__box {
        flex-direction: column;
        padding: 20px 10px;
        gap: 10px;
    }
    ul#menu-nizhnee-menju-v-shapke {
        flex-direction: column;
        gap: 20px;
    }
    .topmenu__lastcontainer {
        display: flex;
        height: auto;
        position: fixed;
        width: 100%;
        top: 84px;
        left: 0;
        padding: 0;
        /* закрытое состояние: сдвинуто вверх и прозрачно, клики не ловит */
        transform: translateY(-20px);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: transform 0.35s ease, opacity 0.35s ease, visibility 0s linear 0.35s;
    }

    .site-header {
        position: sticky;
        top: 0;
        z-index: 1000;
    }
    .promo__slide__3__icon img {
        width: 40px;
    }
}
@media (max-width: 768px) {
    .page-block__text ul li {
        position: relative;
        padding-left: 21px;
        margin-bottom: 5px;
        width: 100%;
    }
    .page-block__text .image__box {
        border-radius: 20px;
        overflow: hidden;
        position: relative;
        margin-bottom: 40px;
        margin-top: 40px;
    }
    .contact__page__content__left__info {
        margin-bottom: 0;
    }
    .contact__page__content__left {
        padding: 18px;
    }
    .codedropz-upload-wrapper span.has-error-msg {
        font-size: 14px;
    }
    .custom-form-container [type=submit] {
        background: #584646;
        border: 0;
        color: #fff;
        height: 48px;
        padding: 0 40px;
        border-radius: 10px;
        width: 100%;
    }
    .portfolio-specs__row{
        margin-bottom: 16px;
    }
    .portfolio-single__cta-btn {
        display: inline-block;
        background-color: #584646;
        color: #fff;
        font-weight: 500;
        padding: 0 21px;
        border-radius: 10px;
        text-decoration: none;
        border: 0;
        height: 52px;
        align-content: center;
        font-size: 14px;
    }
    .portfolio-single__cta-text {
        font-size: 14px;
        color: #584646;
        margin-bottom: 20px;
        line-height: 140%;
    }
    .portfolio-single__cta-title {
        font-size: 16px;
        font-weight: 500;
        color: #584646;
        margin-bottom: 20px;
    }
    .portfolio-specs__value {
        margin: 0;
        font-weight: 400;
        text-align: right;
        order: 3;
        font-size: 14px;
    }
    .portfolio-specs__label {
        margin: 0;
        font-weight: 600;
        color: #584646;
        font-size: 14px;
    }
    .portfolio-specs {
        margin: 0;
        padding: 0;
        width: 100%;
        display: block;
    }
    .portfolio-single__cta {
        background-color: #FFF6EF;
        border-radius: 16px;
        padding: 20px;
        width: 100%;
    }
    .portfolio-single__side {
        flex: 1 1 35%;
        min-width: 280px;
        display: flex;
        flex-direction: row;
        gap: 20px;
        border: 1px solid #EBBFA6;
        padding: 20px;
        border-radius: 20px;
    }
    .page-section-text {
        width: 100%;
    }
    .btns__stack a {
        height: 60px;
    }
    .page-section.page-section--hero-default h1 {
        font-size: 52px;
        margin-bottom: 20px;
    }
    .promo__slide__3__caption {
        position: absolute;
        background: #FFF9F5;
        width: calc(100% - 20px);
        height: 228px;
        left: 50%;
        bottom: 10px;
        padding: 10px;
        border-radius: 20px;
    }
    .promo__slide__3__text {
        color: #584646;
        font-size: 14px;
        line-height: 140%;
        width: 100%;
        text-align: center;
        margin-left: auto;
        margin-right: auto;
        margin-top: 10px;
    }
    .promo__slide__2__title {
        color: #584646;
        font-size: 20px;
        line-height: 1;
        font-weight: 500;
        margin-top: 0;
    }
    .promo__slide__1__text {
        width: 100% !important;
        font-size: 14px;
    }
    .promo__slide__2__caption .material-box__border {
        width: calc(100% - 20px);
        height: calc(100% - 20px);
        left: 10px;
        top: 10px;
        border: 2px dashed #EBBFA6;
        border-radius: 20px;
    }
    .promo__slide__1 .material-box__border {
        width: calc(100% - 20px);
        left: 10px;
        top: 10px;
        height: calc(100% - 32px);
        border: 2px dashed #EBBFA6;
        border-radius: 20px;
    }
    .promo__slide__2__caption {
        position: absolute;
        background: #FFF9F5;
        width: calc(100% - 20px);
        margin-left: 0;
        height: 283px;
        top: 20px;
        border-radius: 20px;
        padding: 10px;
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        align-items: start;
        flex-direction: column;
        bottom: 10px;
        top: auto;
    }
    section.mainpage__faq:after {
        content: '';
        background: url(/wp-content/themes/my-wp-starter/images/shtora_back.webp);
        position: absolute;
        top: 0;
        width: 100%;
        height: 100%;
        background-repeat: no-repeat;
        right: 0;
        background-position-x: -700%;
        z-index: -1;
        background-position-y: 0;
    }
    section.mainpage__faq:before {
        content: '';
        background: url(/wp-content/themes/my-wp-starter/images/shtora_back.webp);
        position: absolute;
        top: 0;
        width: 100%;
        height: 100%;
        background-repeat: no-repeat;
        left: 0;
        background-position-x: -700%;
        z-index: -1;
        background-position-y: 0;
        transform: scaleX(-1);
    }
    .promo__slide__4__title span {
        font-size: 38px;
    }
    .promo__slide__4__caption {
        position: absolute;
        background: #FFF9F5;
        padding: 10px;
        width: calc(100% - 20px);
        left: 50%;
        bottom: 10px;
        border-radius: 20px;
        transform: translateX(-50%);
        height: 170px;
    }
    .promo__slide__4__text {
        font-size: 13px;
    }
    .promo__slide__5__title span {
        font-size: 38px;
    }
    .promo__slide__5__title {
        color: #584646;
        font-size: 20px;
        line-height: 110%;
        font-weight: 500;
        margin-top: 20px;
    }
    .promo__slide__5__caption {
        padding: 10px;
        border-radius: 20px;
        left: 50%;
        top: 20px;
        align-content: center;
    }
    .promo__slide__5__title {
        color: #584646;
        font-size: 20px;
        line-height: 110%;
        font-weight: 500;
        margin-top: 0;
    }
    .promo__slide__6__text {
        font-size: 30px;
        color: #584646;
    }
    .promo__slide__6__title {
        font-size: 100px;
        font-weight: 300;
        color: #584646;
        line-height: 1;
        margin-bottom: 0;
    }
    .promo__slide__4__title {
        text-align: center;
        color: #584646;
        font-size: 20px;
        line-height: 110%;
        font-weight: 500;
        margin-top: 20px;
    }
    .promo__slide__6__bottom__text {
        font-size: 16px;
        line-height: 140%;
        color: #584646;
    }
    .mainpage__advice__row {
        display: grid;
        gap: 10px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .mainpage__advice__row .col-md:nth-child(3) {
        display: none;
    }
    .mainpage__advice__img {
        border-radius: 20px;
        overflow: hidden;
        height: 265px;
    }
}
@media (max-width: 600px) {
    .not-found-page a.btn {
        background: #584646;
        color: #fff;
        height: 52px;
        align-content: center;
        padding: 0 30px;
        border-radius: 10px;
        border: 0;
        margin-top: 0;
        font-size: 14px;
    }
    .not-found-page a.btn {
        background: #584646;
        color: #fff;
        height: 60px;
        align-content: center;
        padding: 0 40px;
        border-radius: 10px;
        border: 0;
        margin-top: 0;
    }
    .not-found-page p {
        color: #6F6F6F;
        font-size: 14px;
    }
    .not-found-page {
        border: 1px solid #EBBFA6;
        border-radius: 20px;
        align-items: center;
        margin-top: 0;
        flex-wrap: wrap;
    }
    .not-found-page-first-col h1.inner__page__h1 {
        font-size: 32px;
    }
    .not-found-page > div {
        padding: 20px;
    }
    .tags__block {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
        overflow: hidden;
        height: 220px;
        transition: height 0.3s ease;
    }
    section.mainpage__cities {
        padding: 0 0 40px 0;
    }
    .tags__block a.tag {
        font-size: 14px;
    }
    .mainpage__cities__list li {
        position: relative;
        padding-left: 25px;
        margin-bottom: 0;
        font-size: 14px;
    }
    .mainpage__cities__map {
        min-height: 500px;
    }
    .mainpage__cities__title {
        color: #584646;
        margin-bottom: 10px;
        font-size: 24px;
        font-weight: 500;
        line-height: 120%;
    }
    section.mainpage__reviews {
        margin: 0 0 40px 0;
        overflow: hidden;
        padding: 0;
    }
    section.mainpage__price {
        padding: 0 0 40px 0;
    }
    .mainpage__portfolio__slider .swiper-slide a {
        font-size: 19px;
    }
    section.mainpage__tabs::after{
        display: none;
    }

    .mainpage__reviews__cont__title {
        font-size: 24px;
        font-weight: 500;
        margin-bottom: 20px;
        color: #584646;
        display: flex;
        justify-content: space-between;
        align-items: center;
        line-height: 1;
    }
    section.mainpage__video {
        padding-bottom: 0;
        padding-top: 0;
        margin: 60px 0;
    }
    section.mainpage__services {
        padding: 40px 0;
        background: #FFF9F5;
    }
    .mainpage__services__title {
        color: #584646;
        font-size: 24px;
        font-weight: 500;
        margin-bottom: 20px;
        width: 80%;
        text-align: center;
        margin-left: auto;
        margin-right: auto;
    }
    .mainpage__form__info >.d-flex p{
        font-size: 14px;
        width: 50%;
    }
    a.mainpage__form__info__phone {
        font-size: 28px;
        font-weight: 700;
    }
    a.mainpage__form__box__messenger img {
        width: 24px;
    }
    a.mainpage__form__box__messenger {
        min-width: 40px;
        height: 40px;
        border-radius: 100px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .mainpage__form__info >.d-flex {
        width: 85%;
        gap: 16px !important;
        margin-left: auto;
    }
    section.mainpage__form .mainpage__form__wpcf7 p {
        margin-bottom: 20px;
        text-align: center;
        font-size: 14px;
    }
    section.mainpage__form p {
        font-size: 16px;
        margin-bottom: 20px;
        line-height: 140%;
        text-align: left;
    }
    .mainpage__form__title {
        text-align: center;
        font-size: 24px;
        margin-bottom: 10px;
        font-weight: 500;
    }
    .wpcf7-form-control-wrap span.wpcf7-form-control.wpcf7-acceptance label::before {
        content: "";
        position: absolute;
        left: 0;
        top: 16px;
    }
    .mainpage__form__wpcf7 input[type=submit] {
        background: linear-gradient(90deg,rgba(254, 214, 203, 1) 0%, rgba(235, 191, 166, 1) 100%);
        min-width: 100%;
        border-radius: 10px;
        border: 0;
        height: 44px;
    }
    section.mainpage__form {
        padding: 40px 0;
        background-size: cover;
    }
    .fomrs__elements {
        gap: 18px;
        flex-wrap: wrap;
    }
    .mainpage__price__koff__block::-webkit-scrollbar-thumb:active{
        background-color: #584646;
    }
    .mainpage__price__koff__block::-webkit-scrollbar-track{
        border-width:0;
        background-color: #FFF9F5;
        border-radius: 200px;
    }
    .mainpage__price__koff__block::-webkit-scrollbar{
        width: 6px;
        height: 4px;
    }
    .mainpage__price__koff__block::-webkit-scrollbar-thumb{
        background-color: #EBBFA6;
        border-radius: 200px;
        cursor: pointer;
    }
    .mainpage__price__koff__block {
        gap: 10px;
        overflow: scroll;
        padding-bottom: 10px;
    }
    .mainpage__price__koff__inner__description {
        margin-bottom: 22px;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        font-size: 14px;
        text-align: left !important;
    }
    .mainpage__price__box__img {
        height: 120px;
    }
    .mainpage__price__box__list ul {
        padding-left: 0;
        color: #584646;
        margin-bottom: 0;
    }
    .mainpage__price__box__notice__title {
        font-size: 16px;
        color: #584646;
        font-weight: 600;
        line-height: 140%;
        margin-bottom: 10px;
    }
    .mainpage__price__box__title {
        font-weight: 600;
        font-size: 20px;
        margin-bottom: 20px;
        text-align: left;
        line-height: 140%;
    }
    .mainpage__price__box__price {
        text-align: center;
        font-size: 24px;
        font-weight: 600;
        color: #584646;
        margin-bottom: 10px;
    }
    section.mainpage__price {
        padding: 0;
        margin: 40px 0 40px 0;
    }
    ul#mainpageTabs {
        margin-bottom: 20px;
        gap: 10px;
        z-index: 1;
        position: relative;
    }
    .mainpage__tabs__title {
        margin-bottom: 20px;
        flex-wrap: wrap;
    }
    section.mainpage__price .mainpage__tabs__title {
        justify-content: center;
    }
    .mainpage__tabs__more {
        gap: 10px;
        margin-top: 20px;
    }
    section.mainpage__tabs .main__btn__style {
        width: auto;
        border: 1px solid #584646;
        color: #fff;
    }
    .mainpage__tabs__more button.btn.main__btn__style:nth-child(1) {
        background: transparent;
        color: #584646;
    }
    .mainpageTabsContent {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .mainpage__tabs__image {
        height: 247px;
        display: flex;
        width: 100%;
        align-items: center;
    }
    .mainpage__tabs__title span {
        font-size: 20px;
        font-weight: 500;
        line-height: 120%;
        width: 100%;
        text-align: center;
    }
    .mainpage__tabs__title .main__btn__style {
        display: block;
    }
    section.mainpage__tabs {
        padding: 40px 0;
    }
    .col.secAdvantages__item p {
        color: #6F6F6F;
        font-size: 14px;
        line-height: 140%;
        width: 88%;
        margin-left: auto;
        margin-right: auto;
    }
    .secAdvantages__box {
        grid-template-columns: repeat(1, minmax(0, 1fr));
        gap: 10px;
    }
    .secWellcom__text {
        font-size: 14px;
        line-height: 140%;
        width: 100%;
        margin-top: 20px;
    }
    .secWellcome__subtitle {
        font-size: 48px;
    }
    .secWellcome__title {
        font-size: 28px;
    }
    .main__slider {
        margin-bottom: 40px;
    }
    a.pink__button {
        font-size: 14px;
        height: 52px;
        margin-bottom: 10px;
        width: 220px;
        text-wrap: nowrap;
        padding: 0;
    }
    a.border__button {
        height: 52px;
        align-content: center;
        color: #fff;
        text-decoration: none;
        padding: 0 20px 0 27px;
        gap: 34px;
        font-size: 14px;
        width: 220px;
        text-wrap: nowrap;
    }
    ul.slider__caption__list img {
        width: 20px;
        height: auto;
    }
    .mainpage__price__box .col-xl {
        width: 100%;
        flex: 0 0 auto;
    }
    .mainpage__services__container {
        display: grid;
        gap: 0 10px;
        grid-template-columns: repeat(1, 1fr);
    }
    .mainpage__howitwork__container {
        display: grid;
        gap: 10px 10px;
        grid-template-columns: repeat(1, 1fr);
    }
    .footer__lastblock a {
        text-wrap: wrap;
    }
    .top__messengers .social__link {
        display: none !important;
    }
    .footer__col__second {
        margin-right: 0;
        width: 44%;
    }
    .footer__col__first {
        margin-right: 0;
        gap: 10px;
        width: 100%;
    }
    .footer__col {
        text-wrap: nowrap;
        font-size: 14px;
        width: 50%;
    }
    .site-footer__inner {
        display: flex;
        align-items: start;
        justify-content: space-between;
        gap: 20px;
        flex-direction: row;
        flex-wrap: wrap;
    }
    .mainpage__reviews__text__box__inner__titile {
        font-size: 20px;
        font-weight: 500;
        margin-bottom: 20px;
        color: #584646;
        line-height: 120%;
    }
    .mainpage__reviews__text__box__inner {
        padding: 16px;
        border: 2px dashed #EBBFA6;
        border-radius: 20px;
    }
    .mainpage__reviews__text__box {
        width: calc(100% - 46px);
        padding: 10px;
    }
    .mx-sm-auto.yandex__reviews__cont {
        width: calc(100% - 20px) !important;
    }
    section.mainpage__form .mainpage__form__info__phone__box p {
        text-align: center;
    }
    .mainpage__form__box {
        gap: 20px;
        flex-wrap: wrap;
    }
    .mainpage__form__info {
        width: 100%;
        text-align: center;
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
    }
    .mainpage__reviews__text__box__inner img.secAdvantages__item__separator {
        margin-bottom: 20px;
    }
    .mainpage__reviews__text__box__inner p {
        color: #584646;
        line-height: 140%;
        font-size: 14px;
    }
    .mainpage__reviews__text__box__inner  b {
        width: 80%;
        display: block;
    }
    section.mainpage__assortment {
        padding: 40px 0;
    }
    .mainpage__howitwork__title {
        text-align: center;
        font-size: 24px;
        font-weight: 500;
        line-height: 120%;
        color: #584646;
        margin-bottom: 20px;
    }
    section.mainpage__faq {
        padding: 40px 0;
        background: #FFF9F5E5;
        position: relative;
        min-height: 0;
    }
    .mainpage__advice {
        padding: 40px 0;
    }
    .mainpage__advice__row {
        display: grid;
        gap: 10px;
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
    section.mainpage__faq .accordion-item .accordion-button:before{
        display: none;
    }
    section.mainpage__faq .accordion-item .accordion-button {
        border: 0;
        font-size: 16px;
        font-weight: 500;
        color: #584646;
        gap: 20px;
        line-height: 140%;
    }
    section.mainpage__faq:before{
        display: none;
    }
    section.mainpage__faq .accordion-item .accordion-body {
        color: #6F6F6F;
        font-size: 14px;
        margin-top: 20px;
    }
    div#faqAccordion {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
    .accordion-item {
        width: 100%;
        border: 1px solid #EBBFA6;
        border-radius: 10px;
        padding: 10px;
    }
    .mainpage__assortment__item__text {
        color: #584646;
        line-height: 140%;
        font-size: 14px;
    }
    section.mainpage__howitwork {
        margin: 40px 0;
    }
    .mainpage__faq__title {
        font-size: 24px;
        color: #584646;
        text-align: center;
        margin-bottom: 20px;
        font-weight: 500;
        line-height: 120%;
    }
    .mainpage__assortment__item__img {
        margin-bottom: 10px;
    }
    .assortment__row__item {
        position: relative;
        padding: 16px;
        min-width: 325px;
        border: 2px dashed #EBBFA6;
        border-radius: 20px;
    }
    .mainpage__assortment__item__title {
        color: #584646;
        font-size: 20px;
        margin-bottom: 10px;
        line-height: 140%;
        font-weight: 500;
    }
    .mainpage__assortment__item__img img {
        height: 40px;
    }
    .ticker__item {
        padding: 0 10px;
        flex-shrink: 0;
        align-content: center;
        width: 23%;
    }
    .logos__ticker {
        overflow: hidden;
        padding: 40px 0;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }
    footer.site-footer {
        color: #fff;
        background: #584646;
        margin-top: 40px;
        padding-top: 20px;
    }
    .footer__logo {
        margin-bottom: 0;
    }
    .footer__col__first {
        margin-right: 0;
        gap: 10px;
        width: 100% !important;
    }
    .footer__col {
        text-wrap: nowrap;
        font-size: 14px;
        width: 30%;
    }
    nav.footer_style {
        flex-wrap: wrap;
    }
    .footer__oferta {
        gap: 20px;
        display: flex;
        flex-wrap: wrap;
    }
    section.mainpage__video .mainpage__tabs__title span {
        text-align: center;
    }
    .portfolio-video-item-title {
        text-align: center;
        margin-top: 12px;
    }
    .portfolio-video-item-title a {
        color: #584646;
        text-decoration: none;
        font-weight: 500;
        font-size: 16px;
        opacity: 0;
        line-height: 140%;
    }
}
@media (max-width: 535px) {
    .city__select__mobile .phone-numbers {
        display: flex;
        gap: 20px;
        text-wrap: nowrap;
        justify-content: space-between;
    }
    .contact__page__content__form__block .custom-form-container .codedropz-upload-container .codedropz-upload-inner > div:first-of-type {
        width: 100%;
    }
    span.dz-description {
        display: block;
        font-size: 14px;
        font-weight: 400;
        line-height: 140%;
    }
    .contact__page__content__form textarea.wpcf7-form-control {
        background: transparent;
        padding: 16px;
        border-radius: 10px;
        max-height: 80px;
        border: 1px solid #E1DBDB;
        font-size: 14px;
    }
    .contact__page__content__form__block .custom-form-container .codedropz-upload-container .codedropz-upload-inner {
        font-size: 14px;
        width: 100%;
    }
    .contact__page__content__form  input[type=text], .contact__page__content__form  input[type=tel], .contact__page__content__form  input[type=email] {
        background: transparent;
        height: 46px;
        border-radius: 10px;
        border: 1px solid #E1DBDB;
        color: #6F6F6F;
        padding-left: 16px;
        font-size: 14px;
    }
    .contact__page__content__form__block .custom-form-container {
        gap: 10px;
    }
    .contact__page__content__form__block__title {
        font-size: 16px;
        color: #584646;
        margin-bottom: 20px;
        font-weight: 500;
    }
    .contact__page__content__form__block {
        width: 100%;
        padding: 16px;
    }
    .contact__page__content__form {
        flex-wrap: wrap;
        gap: 10px;
        padding: 16px;
        margin-top: 20px;
    }
    .contact__page__content__form__req__subtitle {
        color: #584646;
        font-size: 14px;
        font-weight: 700;
        margin-bottom: 4px;
    }
    .contact__page__content__form__req__title {
        width: 100%;
        text-align: left;
        font-size: 16px;
        margin: 0;
    }
    .contact__page__content__form__req {
        padding: 16px;
        font-size: 14px;
        gap: 10px;
        flex-direction: column;
    }
    .contact__page__content__form__req__block {
        margin-bottom: 0;
        color: #6F6F6F;
    }
    .contact__page__content__left__block.worktimecalls {
        order: 5;
    }
    .contact__page__content__left__info {
        order: 3;
        margin-top: 0;
        margin-bottom: 20px;
    }
    .contact__page__content__left__block, .contact__page__content__left__block.phones, .contact__page__content__left__block.email, .contact__page__content__left__block.social {
        padding: 0;
        margin-bottom: 20px;
    }
    .contact__page__content__left {
        display: flex;
        flex-direction: column;
        font-size: 14px;
    }
    .swiper.portfolio-media__main span.portfolio-media__play.portfolio-media__play--main::after {
        border-width: 14px 0 14px 24px;
    }
    .portfolio-media__play::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-40%, -50%);
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 8px 0 8px 14px;
        border-color: transparent transparent transparent #fff;
    }
    .portfolio-media__play {
        position: absolute;
        left: 50%;
        top: 27%;
        width: 28px;
        height: 28px;
        transform: translate(-50%, -50%);
        border-radius: 50%;
        background: #FFFFFF99;
        z-index: 9;
    }
    section.mainpage__portfolio {
        margin: 40px 0;
        padding: 0;
    }
    .mainpage__portfolio__slide__zoom {
        display: block;
    }
    .mainpage__portfolio__slide__caption {
        position: absolute;
        bottom: 0;
        background: #000000B2;
        height: 56px;
        width: 100%;
    }
    .mainpage__portfolio__slider .swiper-slide a {
        font-size: 14px;
    }
    .mainpage__portfolio__slider .swiper-slide a {
        display: block;
        height: 206px;
        overflow: hidden;
    }
    .page-block.page-block--full {
        margin-top: 40px;
        max-height: none;
        overflow: hidden;
        transition: max-height 0.5s ease;
        margin-bottom: 20px;
    }
    .page-block__text {
        margin-top: 20px;
    }
    h2.page-block__title {
        font-size: 28px;
    }
    nav#breadcrumbs ol.breadcrumb {
        gap: 10px;
        font-size: 14px;
    }
    .advantages__wrapper {
        margin-top: 40px;
    }
    .btns__stack a.pink__button {
        margin: 0;
    }
    .btns__stack {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
    }
    .btns__stack a.border__button:nth-of-type(3) {
        display: none;
    }
    .btns__stack a.border__button:nth-of-type(4) {
        display: none;
    }
    .page-section.page-section--hero-default h1 {
        font-size: 32px;
        margin-bottom: 20px;
    }
    button#backToTop {
        right: 20px;
        bottom: 50px;
    }
    .section-space {
        padding: 10px 0;
    }
    .pagination .page-numbers {
        min-width: 40px;
        min-height: 40px;
    }
    .pagination {
        gap: 10px;
        justify-content: center;
        padding-top: 26px;
    }
    .pagination .page-numbers:nth-of-type(4) {
        display: none;
    }
    .portfolio-filters__selected-groups {
        display: flex;
        flex-wrap: wrap;
        gap: 10px 10px;
    }
    span.selected-chip__text {
        color: #584646;
        font-weight: 500;
        font-size: 14px;
    }
    .selected-group__label {
        color: #584646;
        font-weight: 600;
        margin-bottom: 4px;
        font-size: 14px;
    }
    .portfolio-filters__selected-title {
        margin-bottom: 10px;
        color: #584646;
        font-size: 16px;
        font-weight: 500;
    }
    .portfolio-filters__selected.js-filters-selected {
        padding: 10px;
        background: #FFF9F5;
        margin-top: 20px;
        border-radius: 10px;
    }
    button.filter-toggle.js-filter-toggle{
        width: 100%;
        flex: auto;
        font-size: 14px;
    }
    .filter-group.filter-panel::-webkit-scrollbar-thumb:hover{
        background-color: #584646;
    }
    .filter-group.filter-panel::-webkit-scrollbar-thumb:active{
        background-color: #584646;
    }
    .filter-group.filter-panel::-webkit-scrollbar-track{
        border-width:0;
        background-color: #FFF9F5;
        border-radius: 200px;
    }
    .filter-group.filter-panel::-webkit-scrollbar{
        width: 3px;
    }
    .filter-group.filter-panel::-webkit-scrollbar-thumb{
        background-color: #EBBFA6;
        border-radius: 200px;
        cursor: pointer;
    }
    .filter-group.filter-panel {
        padding: 10px;
        border: 1px solid #EBBFA6;
        border-radius: 10px;
        margin-top: 10px;
        margin-bottom: -12px;
        max-height: 200px;
        overflow: auto;
        gap: 5px;
    }
    label.filter-option {
        position: relative;
        display: flex;
        gap: 34px;
        cursor: pointer;
        width: 100%;
    }
    .portfolio-filters__subtitle {
        color: #6F6F6F;
        font-size: 14px;
    }
    .portfolio-filters__title {
        color: #584646;
        font-size: 20px;
        font-weight: 600;
        margin-bottom: 10px;
    }
    .portfolio-filters.js-portfolio-filters {
        padding: 16px;
    }
    .inner__page__h1 {
        font-size: 32px;
        margin: 10px 0;
    }
    .portfolio-wrapper.posts-list {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        gap: 10px;
        margin-bottom: 0;
    }
    .footer__col {
        text-wrap: nowrap;
        font-size: 14px;
        width: calc(100% / 2 - 20px) !important;
    }
    .mainpage__services__title {
        color: #584646;
        font-size: 24px;
        font-weight: 500;
        margin-bottom: 20px;
        width: 100%;
        text-align: center;
        margin-left: auto;
        margin-right: auto;
    }
}
@media (min-width: 479px) {
    .mobile__btn{
        display: none !important;
    }
}
@media (max-width: 480px) {
    #mainpage__price .mobile__btn {
        left: auto;
    }
    .mobile__btn {
        display: inline-block;
        margin-top: 20px;
        position: relative;
        left: 20px;
    }
    .page-block.page-block--full {
        margin-top: 40px;
        max-height: none;
        overflow: hidden;
        transition: max-height 0.5s ease;
        margin-bottom: 20px;
    }
    .mainpage__tabs__title .main__btn__style {
        display: none;
    }
}
@media (max-width: 768px) {
    .portfolio-single__description-title {
        font-size: 16px;
        color: #584646;
        margin-bottom: 10px;
        font-weight: 500;
    }
    .portfolio-single__description-body p {
        color: #584646;
        line-height: 1.4;
        margin-bottom: 14px;
        font-size: 14px;
    }
    .portfolio-single__grid {
        flex-direction: column;
        gap: 20px;
        margin-bottom: 40px;
    }
    .portfolio-single__description {
        padding: 40px;
        margin-bottom: 60px;
    }
}
@media (max-width: 991px) {
    .portfolio-media__image,
    .portfolio-media__video,
    .portfolio-media__iframe-preview {
        height: 617px;
    }
}
@media (max-width: 575px) {
    .page-block__text h2 {
        color: #584646;
        font-size: 24px;
        font-weight: 600;
        margin-bottom: 20px;
        scroll-margin-top: 100px;
    }
    .page-block__text .post_nav ul {
        display: flex;
        list-style: none;
        flex-wrap: wrap;
        gap: 2px 20px;
        padding: 0;
        flex-direction: column;
    }
    .page-block__text .post_nav strong {
        position: relative;
        display: inline-block;
        padding-bottom: 20px;
        margin-bottom: 0;
    }
    .video_box {
        margin-bottom: 40px;
        margin-top: 40px;
    }
    .page-block__readmore {
        font-size: 16px;
        margin-top: 10px;
    }
    .text__separator {
        display: none;
        margin-bottom: 20px;
    }
    .page-block__text p {
        color: #584646;
        line-height: 140%;
        font-size: 16px;
    }
    .page-block__text .image__box div {
        background: #000000CC !important;
        color: #fff !important;
        font-style: normal !important;
        font-size: 16px !important;
        height: auto;
        align-content: center;
        text-align: left !important;
        padding: 20px !important;
        position: relative;
        bottom: 0;
        width: 100%;
    }
    .page-block__text ol li::before {
        content: counter(custom-counter) ".";
        position: absolute;
        left: 0;
        top: 0;
        font-size: 16px;
        font-weight: 700;
        color: #EBBFA6;
    }
    .video_box iframe {
        width: 100%;
    }
    .page-block__text ol li {
        position: relative;
        margin-bottom: 12px;
        list-style: none;
        counter-increment: custom-counter;
        padding-left: 23px;
        font-size: 16px;
        font-weight: 400;
        color: #4a3f3b;
    }
    .page-block__text h3 {
        color: #584646;
        font-size: 24px;
        font-weight: 500;
        margin-bottom: 20px;
        margin-top: 40px;
    }
    .page-block__text ul li {
        position: relative;
        padding-left: 21px;
        margin-bottom: 0;
        font-size: 16px;
    }
    .page-block__text .image__box {
        border-radius: 20px;
        overflow: hidden;
        position: relative;
        margin-bottom: 40px;
        margin-top: 40px;
    }
    .page-block__text .post_nav {
        padding: 20px;
        background: #FFF9F5;
        border-radius: 20px;
        margin-bottom: 40px;
    }
    .page-block__text ul li {
        position: relative;
        padding-left: 21px;
        margin-bottom: 0;
    }
    .page-block__text .post_nav a {
        text-decoration: none;
        color: #6F6F6F;
        text-wrap: wrap;
        font-size: 14px;
    }
    .custom-form-container {
        padding: 40px 20px;
    }
    .swiper-button-next.portfolio-media__arrow.portfolio-media__arrow--next, .swiper-button-prev.portfolio-media__arrow.portfolio-media__arrow--prev {
        width: 40px;
        height: 40px;
    }
    .portfolio-specs {
        margin: 0;
        padding: 20px;
        width: 100%;
        display: block;
        border: 1px solid #EBBFA6;
        border-radius: 20px;
    }
    aside.portfolio-single__side {
        flex-wrap: wrap;
        padding: 0;
        border: 0;
    }
    .portfolio-media__image,
    .portfolio-media__video,
    .portfolio-media__iframe-preview {
        height: 284px;
        border-radius: 14px;
    }

    .portfolio-media__main {
        border-radius: 14px;
    }

    .portfolio-media__thumb {
        height: 72px;
        border-radius: 10px;
    }

    .portfolio-media__arrow {
        display: none;
    }
}

.mainpage__groups__group + .mainpage__groups__group {
    margin-top: 60px;
}
.mainpage__groups__heading {
    margin-bottom: 24px;
}
.page-section--poshiv-content {
    margin: 80px 0;
}
/* ===== Сетка акций на странице «Акции» (/aktsii/) ===== */
/* Переиспользует карточки промо (.promo__slide__N) из partial promo-cards.php,
   но раскладывает их сеткой 4 в ряд (вместо слайдера на главной). */
.aktsii-grid-section {
    margin-bottom: 80px;
}
.aktsii-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    align-items: stretch;
}

/* Карточки внутри сетки: ширину задаёт колонка, сбрасываем swiper-ширину; равная высота строки.
   Скругление углов — как в слайдере на главной (.promo__slider .slide). */
.aktsii-grid .slide {
    width: auto !important;
    height: auto;
    margin: 0 !important;
    border-radius: 20px;
    overflow: hidden;
}

@media (max-width: 1199px) {
    .aktsii-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 767px) {
    .aktsii-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }
}

@media (max-width: 479px) {
    .aktsii-grid {
        grid-template-columns: 1fr;
    }
}

.page-section--info-content {
    margin: 20px 0 80px;
}
/* Первый блок внутри info-content идёт сразу под H1 — убираем накопленные
   верхние отступы (100px от .page-block--full и 40px от .page-block__text),
   чтобы не было большого пустого зазора между заголовком и текстом.
   Затрагивает только первый блок этой секции — отступы между блоками целы. */
.page-section--info-content > .page-block:first-child {
    margin-top: 0;
}
.page-section--info-content > .page-block:first-child .page-block__text {
    margin-top: 0;
}

/* ===== Модалка выбора города (#cityModal) ===== */
.city-modal__dialog {
    max-width: 1100px;
}
.city-modal {
    background: #fff;
    border: 0;
    border-radius: 24px;
    overflow: hidden;
}
.city-modal .modal-body {
    padding: 40px 48px;
}
.city-modal__title {
    font-size: 22px;
    font-weight: 500;
    color: #584646;
    margin-bottom: 32px;
    /* Та же «рисованная» черта-подчёркивание, что у заголовков каталога (.catalog__menu-wrapper__title::after). */
    position: relative;
    display: inline-block;
    padding-bottom: 12px;
}
.city-modal__title::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100px;
    height: 3px;
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 3'%3e%3cpath fill='%23EBBFA6' d='M55.0574 -0.884723C27.5783 -0.458648 10.4168 0.0894482 5.17958 0.70689C3.26159 0.920261 1.3048 1.11096 0.850397 1.08629C0.375999 1.08629 0 1.13296 0 1.22698C0 1.29833 0.435999 1.67773 0.988797 2.03512C2.80759 3.27001 0.4356 3.22266 34.4983 2.43919C39.7171 2.32051 45.5491 2.10714 47.4482 1.98778C51.4618 1.70306 74.8102 1.56104 89.5189 1.72774C98.3961 1.82175 99.6801 1.79975 99.8389 1.48969C100.353 0.515523 100.452 0.515523 86.8889 -0.267948C74.0586 -1.02675 69.6698 -1.12276 55.0598 -0.884723H55.0574Z'/%3e%3c/svg%3e") no-repeat;
    background-size: 100% 100%;
}
/* column-count раскладывает города ПО КОЛОНКАМ (алфавит течёт вниз по столбцу), как на макете. */
.city-modal__list {
    column-count: 4;
    column-gap: 24px;
}
.city-option {
    display: block;
    text-align: left;
    background: transparent;
    border: 0;
    padding: 0;
    margin-bottom: 18px;
    font-size: 18px;
    color: #5E5E5E;
    cursor: pointer;
    transition: color 0.2s ease;
    /* чтобы пункт не разрывался между колонками */
    break-inside: avoid;
}
.city-option:hover,
.city-option:focus,
.city-option.is-active {
    color: #FD7E91;
    text-decoration: underline;
    text-underline-offset: 5px;
}

@media (max-width: 991px) {
    .city-modal__list {
        column-count: 3;
    }
    .city-modal .modal-body {
        padding: 32px;
    }
}
@media (max-width: 575px) {
    .city-modal__list {
        column-count: 2;
        column-gap: 16px;
    }
    .city-option {
        margin-bottom: 14px;
    }
    .city-modal .modal-body {
        padding: 24px 20px;
    }
}

/* ==========================================================================
   Фирменные галочки/нумерация для обычного контента редактора
   (.page-section-text). Распространяет оформление списков с .page-block__text
   на страницы, набранные стандартным редактором (the_content()), например
   «Как заказать». Контейнер ul/ol НЕ переводится в flex — списки остаются
   обычными вертикальными, меняется только маркер и отступы пунктов.
   ========================================================================== */

/* Маркированные списки — галочка-SVG */
.page-section-text ul {
    list-style: none;
    padding-left: 0;
    margin-left: 0;
}

.page-section-text ul li {
    position: relative;
    padding-left: 28px;
    margin-bottom: 10px;
}

.page-section-text ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 10px; /* вертикально подровнять с текстом */
    width: 15px;
    height: 13px;
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='15' height='13' viewBox='0 0 15 13' fill='none'%3e%3cpath d='M6.39959 12.3594C6.35715 12.3594 6.31517 12.3506 6.27629 12.3336C6.2374 12.3166 6.20246 12.2917 6.17365 12.2606L0.0817469 5.67088C0.0411367 5.62694 0.0142147 5.57213 0.00427583 5.51313C-0.00566304 5.45414 0.00181231 5.39352 0.0257871 5.33871C0.0497619 5.2839 0.0891961 5.23726 0.139263 5.20452C0.189331 5.17177 0.247859 5.15432 0.307685 5.15432H3.23999C3.28402 5.15433 3.32753 5.16378 3.3676 5.18203C3.40766 5.20029 3.44334 5.22692 3.47224 5.26014L5.50818 7.60242C5.72821 7.13208 6.15415 6.34894 6.90159 5.39466C8.00658 3.98389 10.0619 1.90909 13.5783 0.0361075C13.6463 -8.57096e-05 13.7254 -0.00947928 13.7999 0.00978174C13.8745 0.0290428 13.9391 0.0755582 13.981 0.140143C14.023 0.204728 14.0392 0.282687 14.0264 0.358628C14.0137 0.434568 13.9729 0.502968 13.9122 0.550323C13.8988 0.560815 12.5429 1.62851 10.9826 3.58417C9.54652 5.38386 7.63753 8.32663 6.69818 12.1257C6.68168 12.1925 6.6433 12.2517 6.58916 12.2941C6.53503 12.3365 6.46825 12.3595 6.3995 12.3596L6.39959 12.3594Z' fill='%23EBBFA6'/%3e%3c/svg%3e") no-repeat;
    background-size: contain;
}

/* Нумерованные списки — фирменная цифра */
.page-section-text ol {
    counter-reset: custom-counter;
    padding-left: 0;
    list-style: none;
}

.page-section-text ol li {
    position: relative;
    margin-bottom: 16px;
    list-style: none;
    counter-increment: custom-counter;
    padding-left: 30px;
}

.page-section-text ol li::before {
    content: counter(custom-counter) ".";
    position: absolute;
    left: 0;
    top: 0;
    font-weight: 700;
    color: #EBBFA6;
}

.alignright{
    float:right;
}
.alignleft{
    float: left;
}

.container-xxl .alignright{
    padding: 10px 0px 20px 20px;

}
.container-xxl .alignleft{
    padding: 10px 20px 20px 0;
    
}