.new-main {

    margin: 0 auto;
    padding: 0 16px;
    max-width: 1344px;

    /* Основные стили изображений */

    img {
        width: 100%;
        object-fit: cover;
    }

    button:not(.gr ) {
        box-shadow: none;
        border: none;
    }

    .img-contain {
        object-fit: contain;
    }

    .directions-items img {
        height: 100%;
        width: 100%;
    }

    /* Стили блока специалистов */

    .specialist-block-black {
        height: 415px;
        overflow: hidden;
        transition: height 0.3s ease;
    }

    /* Блок с раскрытым состоянием */

    .specialist-block-black.expanded {
        height: auto;
    }

    /* Кнопка "Показать больше" */

    .show-more-btn {
        border-radius: 60px;
        border: 1px solid #AF8246;
        color: #AF8246;
        font-size: 14px;
        height: 40px;
        background: none;
        padding: 0 45px;
        text-align: center;
    }

    .show-more-container {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        margin-top: 45px;
    }

    /* Стили списка услуг */

    .services-list a {
        font-size: 14px;
    }

    /* Блоки изображений и текста */

    .bottom-item {
        p {
            margin: 0 0 10px 0 !important;
        }

        img {
            border-radius: 50%;
            width: 82px;
            height: 83px;
        }
    }

    /* Стили карты */

    .index-map {
        -ms-touch-action: auto !important;
        touch-action: auto !important;
    }

    .map-table {
        top: 30px;
        bottom: 30px;
        left: 40px;
        background: #fff4e6;
        z-index: 99;
        padding: 20px 40px;
        color: #333333;

        @media (min-width: 720px) {
            position: absolute;
            width: calc(33.333% - 40px);
        }
    }

    /* Адрес и контакты */

    .address p, .phone p, .work-time p {
        margin: 0;
    }

    .phone {
        margin-top: 32px;
    }

    .work-time {
        margin-top: 24px;
    }

    .work-time .grid p {
        font-size: 14px;
    }

    /* Список популярных услуг */

    .pupular-services__list-item {
        position: relative;
        padding-left: 15px;
        display: block;

        .dot {
            position: absolute;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
            width: 4px;
            height: 4px;
            background-color: #AF8246;
            border-radius: 50%;
        }
    }

    /* Остальные блоки специалистов */

    .specialist-block__wrap {
        margin-bottom: 40px;
    }

    .landing-search-block {
        width: 100%;


    }

    .specialist-block {
        @media (max-width: 768px) {
            .m-top42 {
                margin-top: 0;
                margin-bottom: 20px;
                padding: 0;
            }
        }

    }


    a {
        text-decoration: none;
    !important
    }

    /* Отступы margin-top */

    .m-top8 {
        margin-top: 8px;
    }

    .m-top10 {
        margin-top: 10px;
    }


    .m-top18 {
        margin-top: 18px;
    }

    .m-top20 {
        margin-top: 20px;
    }

    .m-top27 {
        margin: 27px 0 0 0;
    }

    .m-top34 {
        margin-top: 34px;
    }

    .m-top42 {
        margin-top: 42px;
    }

    .m-top70 {
        margin-top: 70px;
    }

    .m-top72 {
        margin-top: 72px;
    }

    .m-top135 {
        margin-top: 135px;
    }

    .m-right-15 {
        margin-right: 15px;
    }

    .m-bottom-10 {
        margin-bottom: 10px;
    }

    .m-bottom-70 {
        margin-bottom: 70px;
    }

    .m-bottom-42 {
        margin-bottom: 42px;
    }

    .m-0 {
        margin: 0;
    }

    .m-0auto {
        margin: 0 auto;
    }


    /* Отступы padding */

    .padding-30 {
        padding: 30px;
    }

    .padding-20 {
        padding: 20px;
    }

    .padding-025 {
        padding: 0 25px;
    }

    .padding-825 {
        padding: 8px 25px;
    }

    .padding-045 {
        padding: 0 45px;
    }

    .padding-033 {
        padding: 0 33px;
    }

    .padding-2230 {
        padding: 22px 30px;
    }

    .padding-1030 {
        padding: 10px 30px;
    }

    .padding-42 {
        padding: 42px;
    }

    .padding-42nb {
        padding: 42px 42px 0 42px;
    }

    .padding-800 {
        padding: 80px 20px;
    }

    .padding-bottom-10 {
        padding-bottom: 10px;
    }

    /* Ширина блоков */

    .w-50 {
        width: 50%;
        margin: auto;

        @media (max-width: 760px) {
            width: 100%;
        }
    }

    .w-50left {
        width: 50%;
        @media (max-width: 760px) {
            width: 100%;
        }
    }

    .w-60left {
        width: 60%;
        @media (max-width: 760px) {
            width: 100%;
        }
    }

    .w-70left {
        width: 70%;
        @media (max-width: 760px) {
            width: 100%;
        }
    }

    .w-30left {
        width: 30%;
        @media (max-width: 760px) {
            width: 100%;
        }
    }


    .w-40left {
        width: 40%;
        @media (max-width: 760px) {
            width: 100%;
        }
    }

    .w-80 {
        width: 80%;
        @media (max-width: 760px) {
            width: 100%;
        }
    }

    .w-80auto {
        width: 80%;
        margin: auto;
        @media (max-width: 760px) {
            width: 100%;
        }
    }

    .w-100 {
        width: 100%;
    }

    .m-45 {
        font-size: 45px;
    }

    /* Размеры текста */

    .m-40 {
        font-size: 40px;

        @media (max-width: 760px) {
            font-size: 24px;
        }
    }

    .m-35 {
        font-size: 35px;
        @media (max-width: 760px) {
            font-size: 24px;
            line-height: 1;
        }
    }

    .m-25 {
        font-size: 25px;
    }

    .m-20 {
        font-size: 20px;
    }

    .m-22 {
        font-size: 22px;
    }

    .m-16 {
        font-size: 16px;
    }

    .m-14 {
        font-size: 14px;
    }


    .m-12 {
        font-size: 14px;
    }

    /* Межстрочные интервалы */

    .l-1 {
        line-height: 1;
    }

    .l-13 {
        line-height: 1.3;
    }

    /* Центрирование текста */

    .center {
        text-align: center;
    }

    /* Полужирный шрифт */

    .b-500 {
        font-weight: 500;
    }

    /* Жирный шрифт */

    .b-700 {
        font-weight: 700;
    }

    .flex-column {
        display: flex;
        flex-direction: column;
    }

    /* Сетка */

    .grid {
        display: grid;
    }

    .grid-cols-1 {
        grid-template-columns: repeat(1, 1fr);
    }

    .grid-cols-2 {
        grid-template-columns: repeat(2, 1fr);

        @media (max-width: 760px) {
            grid-template-columns: 1fr;
        }
    }

    .grid-cols-3 {
        grid-template-columns: repeat(3, 1fr);
        grid-auto-rows: minmax(0px, auto);

        @media (max-width: 760px) {
            grid-template-columns: 1fr;
        }
    }

    .grid-cols-4 {
        grid-template-columns: repeat(4, 1fr);
        @media (max-width: 760px) {
            grid-template-columns: 1fr;
        }
    }

    .grid-cols-2-1 {
        grid-template-columns: 2fr 1fr;

        @media (max-width: 760px) {
            grid-template-columns: 1fr;
        }
    }

    .grid-cols-1-2 {
        grid-template-columns: 1fr 2fr;

        @media (max-width: 760px) {
            grid-template-columns: 1fr;
        }
    }

    .grid-cols-1-1 {
        grid-template-columns: 1fr 1fr;

        @media (max-width: 760px) {
            grid-template-columns: 1fr;
        }
    }

    /* Отступы между элементами сетки */

    .gap-8 {
        gap: 8px;
    }

    .gap-17 {
        gap: 17px;
    }

    .gap-133 {
        gap: 133px;
        @media (max-width: 760px) {
            gap: 17px;
        }
    }

    /* Стили для блока flex */

    .flex-b {
        display: flex;
        justify-content: space-between;
    }

    /* Стили для блока flex */

    .flex-c {
        display: flex;
        justify-content: center;
    }

    .flex-l {
        display: flex;
        justify-content: left;
    }

    /* Симметричные отступы */

    .directions-padding {
        padding: 60px 42px 50px 42px;
    }

    /* Цвета */

    .b-grey {
        background: #FFF4E6;
    }

    .t-black {
        color: #333333;
    }

    .t-black80 {
        color: rgba(0, 0, 0, 0.8);
    }

    .t-brown {
        color: #AF8246;
    }

    .t-u {
        text-transform: uppercase;
    }

    /* Скругление углов */

    .br-5 {
        border-radius: 5px;
    }

    .br-15 {
        border-radius: 15px;
    }

    .br-33 {
        border-radius: 33px;
    }

    .br-60 {
        border-radius: 60px;
    }

    .br-50pr {
        border-radius: 50%;
    }

    /* Высота элементов */

    .h-100 {
        height: 100%;
    }

    /* Высота элементов */

    .h-44 {
        height: 44px;
    }

    .h-282 {
        height: 282px;
    }

    .h-308 {
        height: 308px;
    }

    /* Цвет элементов */

    .c-white {
        color: white;
    }

    .b-black {
        background: #333333;
    }

    .b-brown {
        background: #AF8246;
        color: white !important;
    }

    .b-transparent {
        background: transparent;
        color: #AF8246;
        border: 1px solid #AF8246;
    }

    .b-cover {
        background-size: cover;
    }

    .a-center {
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .align-center {
        align-items: center;
    }

    .overflow-h {
        overflow: hidden;
    }

    .mobile_margin_desc {
        @media (max-width: 720px) {
            margin: 40px 0 60px 20px;
        }
    }

    .background-position-center {
        background-position: center;
    }


    .wh-75 {
        width: 75px;
        height: 75px;
    }

    .wh-16 {
        width: 16px !important;
        height: 16px !important;
    }

    .wh-14 {
        width: 14px !important;
        height: 14px !important;
    }

    .wh-20 {
        width: 20px !important;
        height: 20px !important;
    }

    .wh-23 {
        width: 23px !important;
        height: 23px !important;
    }

    .wh-32 {
        width: 32px !important;
        height: 32px !important;
    }

    .accordion-item {
        border: 1px solid #AF82464D;
    }

    .accordion-header {
        width: 100%;
        text-align: left;
        cursor: pointer;
        font-weight: bold;
        border: none;
        outline: none;
        background: none;
    }

    .accordion-header:hover {
    }

    .accordion-content {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease-out, padding 0.1s ease-out;
        padding: 0 16px;

        ul {
            list-style: none; /* Скрываем стандартные маркеры */
            padding-left: 0;
        }

        ul li {
            position: relative;
            padding-left: 24px; /* Пространство для точки */
            margin-bottom: 8px;
        }

        ul li::before {
            content: ''; /* Пустой элемент */
            position: absolute;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
            width: 8px;
            height: 8px;
            background-color: #000; /* Цвет точки */
            border-radius: 50%; /* Круглая форма */
        }
    }

    .accordion-item.active .accordion-content {
        max-height: 500px; /* достаточно высокое значение */
    }

    .accordion-item img {
        height: 16px;
        width: 16px;
    }

    .why-us img {
        height: 257px !important;

        @media (max-width: 720px) {
            height: 200px !important;
            width: 100% !important;
        }
    }

    .padding-740 {
        padding: 7px 40px;
    }

    .staff-list__container {
        margin: 0 auto 15px !important;
    }

}


.main-content-wrapper {
    transition: height 0.4s ease;
    overflow-y: hidden;
}


#main-expandable-content.expanded {
    height: auto;
}

#main-toggle-button {
    transition: background-color 0.3s ease;
    display: none;

}

#main-toggle-button:hover {
    background-color: #c6a26b;
}

/* Показываем только на десктопах */
@media (min-width: 769px) {
    #main-toggle-button {
        display: flex;
        align-items: center;
        margin: auto;
    }

    #main-expandable-content.collapsed {
        height: 600px;
        margin-bottom: 40px;
    }

    .more-600-desc {
        padding-bottom: 40px;
        width: 100%;
    }
}


.header {
    .search-input {
        width: 100% !important;
    }

    #title-search {
        width: 30%;
        margin: 0 20px;

    }

    .v-align-center {
        align-items: center;
    }

    .social-block__bottom-line #title-search {
        display: none;
    }
}

.big-wrap {
    max-width: 1316px !important;

    .wrap {
        padding: 55px 40px 42px 40px !important;
    }
}

/* Cookies Banner Styles */
.cookies-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #ffffff;
    border-top: 3px solid #AF8246;
    color: #000000;
    z-index: 21474836517;
    padding: 15px 0;
    transform: translateY(100%);
    transition: transform 0.3s ease-in-out;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
}

.cookies-banner.show {
    transform: translateY(0);
}

.cookies-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.cookies-content {
    flex: 1;
}

.cookies-text {
    font-size: 14px;
    line-height: 1.4;
    color: #000000;
}

.cookies-link {
    color: #AF8246;
    text-decoration: underline;
    transition: color 0.3s ease;
}

.cookies-link:hover {
    color: #000000;
}

.cookies-accept {
    background: #AF8246;
    border: none;
    border-radius: 60px;
    padding: 10px 20px;
    color: #ffffff;
    cursor: pointer;
    flex-shrink: 0;
    transition: all 0.3s ease;
    font-size: 14px;
    font-weight: 500;
    white-space: nowrap;
}

.cookies-accept:hover {
    background: #000000;
    color: #ffffff;
    transform: translateY(-1px);
}

/* Мобильные стили */
@media (max-width: 768px) {
    .cookies-banner {
        padding: 12px 0;
    }
    
    .cookies-container {
        padding: 0 15px;
        flex-direction: column;
        gap: 12px;
        text-align: center;
    }
    
    .cookies-text {
        font-size: 12px;
        line-height: 1.3;
    }
    
    .cookies-accept {
        padding: 8px 16px;
        font-size: 13px;
        width: 100%;
        max-width: 200px;
    }
}