#banner-block .container-wide {
    position: relative;
}

#banner-block .content {
    position: relative;
    display: flex;
    justify-content: space-between;
    /* gap: clamp(10px, calc(5.4166666667vw + -55px), 49px); */
    background-color: var(--Background-dark);
    min-height: 540px;
    z-index: 0;
    padding-right: clamp(0px, calc(32.6388888889vw + -391.6666666667px), 235px);
}

#banner-block .content__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -1;
}

.banner-block__content {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 60px 0 130px 0;
    margin-left: calc((100% - 935px) / 2);
    flex-shrink: 0;
}

#banner-block .banner-block__additional {
    width: fit-content;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 5px;
    margin-bottom: 40px;
    border-radius: 30px;
    background: var(--Background-light, #F7F2EF);
}

#banner-block .banner-block__additional .additional__icon {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background-color: var(--Background-dark);
    border-radius: 50%;
}

#banner-block .banner-block__additional .additional__icon img,
#banner-block .banner-block__additional .additional__icon svg {
    width: 24px;
    height: 24px;
    object-fit: contain;
}

#banner-block .banner-block__additional .additional__text {
    margin-right: 20px;
    color: var(--Main-text, #514C57);
    font-family: "Wix Madefor Text", sans-serif;
}

#banner-block .banner-block__title {
    margin-bottom: 15px;
    color: var(--Head, #020202);
    font-size: calc(0.00875 * 100vw + 29.2px);
    font-style: normal;
    font-weight: 700;
    line-height: 110%;
    transition: color 0.15s ease-in;
}

#banner-block .banner-block__title * {
    color: var(--Head, #020202);
    font-size: calc(0.00875 * 100vw + 29.2px);
    font-style: normal;
    font-weight: 700;
    line-height: 110%;
    transition: color 0.15s ease-in;
}

#banner-block .banner-block__subtitle {
    color: var(--Main-text, #514C57);
    font-family: "Wix Madefor Text", sans-serif;
}

#banner-block .banner-block__btn {
    margin-top: 40px;
}

.banner-block__map {
    position: relative;
    width: clamp(521px, calc(20.3444564047vw + 319.3864370291px), 710px);
}

.banner-block__map:after {
    content: '';
    display: block;
    padding-bottom: 69.5%;
}

.banner-block__map img {
    position: absolute;
    top: 0;
    right: -11px;
    width: clamp(630px, calc(15.9311087191vw + 472.1227125942px), 778px);
    height: 100%;
    object-fit: contain;
    object-position: bottom;
}

.banner-block__map-wrap {
    position: absolute;
    bottom: clamp(13px, calc(5.0592034446vw + -37.1367061356px), 60px);
    left: clamp(79px, calc(8.7190527449vw + -7.4058127018px), 160px);
    z-index: 2;
    width: clamp(202px, calc(5.2744886975vw + 149.7298170075px), 251px);
    height: 383px;
}

.banner-block__map-wrap svg {
    pointer-events: none;
    width: 100%;
    height: 100%;
}

.banner-block__map-wrap svg g {
    pointer-events: none;
}

.banner-block__map-wrap svg g path {
    position: relative;
    z-index: 2;
    fill: transparent;
    transition: fill 0.3s;
    cursor: pointer;
    pointer-events: all;
}

.banner-block__map-wrap svg g:hover path,
.banner-block__map-wrap svg g.active path {
    fill: #EFE2D9
}

.banner-block__map-wrap svg g.active {
    pointer-events: none;
}

.banner-block__map-text {
    position: absolute;
    top: clamp(60px, calc(5.382131324vw + 6.6630785791px), 110px);
    right: 50px;
    color: var(--Primary);
    font-size: calc(0.0025 * 100vw + 31.2px);
    font-style: normal;
    font-weight: 700;
    line-height: 110%;
    width: 210px;
    transition: all 0.2s ease-in;
}

.banner-block__map-text.hidden {
    opacity: 0;
}

.banner-block__map-list {
    position: absolute;
    top: 60px;
    right: 0;
    z-index: 4;
    background: var(--Background-light);
    border: 1px solid var(--Stroke);
    width: 260px;
    max-height: clamp(300px, calc(14.1011840689vw + 160.2572658773px), 431px);
    overflow: auto;
    overflow-x: hidden;
}

.banner-block__map-list::-webkit-scrollbar {
    width: 2px;
}

.banner-block__map-list::-webkit-scrollbar-thumb {
    background: var(--Primary);
    border-radius: 1px;
}

.banner-block__map-list::-webkit-scrollbar-track {
    background-color: var(--Stroke);
}

.banner-block__map-list .accordion-item {
    border-bottom: 1px solid var(--Stroke);
    cursor: pointer;
    transition: all 0.3s ease-in;
}

.banner-block__map-list .accordion-item__top {
    display: flex;
    gap: 10px;
    padding: 19px 30px 19px 19px;
    transition: all 0.3s ease-in;
    border: 1px solid transparent;
    margin-top: -1px;
    margin-left: -1px;
    width: calc(100% + 2px);
}

.banner-block__map-list .accordion-item__top svg {
    width: 12px;
    height: 5px;
    color: #a89392;
    transition: all 0.3s ease-in;
    margin-top: 8px;
    flex-shrink: 0;
}

.banner-block__map-list .accordion-item__top:hover {
    background: var(--Background-dark);
}

.banner-block__map-list .accordion-item__content-wrap {
    padding: 15px 22px 15px 20px;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

#banner-block .accordion-item__content-item {
    display: flex;
    gap: 10px;
    font-family: "Wix Madefor Text", sans-serif;
    transition: color 0.3s ease-in;
}

#banner-block .accordion-item__content-item:before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 100%;
    background-color: var(--Accent);
    margin-top: clamp(4px, calc(0.25vw + 3.2px), 8px);
    transition: all 0.3s ease-in;
    flex-shrink: 0;
}

#banner-block .accordion-item__title {
    color: var(--Head, #020202);
    font-size: calc(0.00125 * 100vw + 13.6px);
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
}

#banner-block .accordion-item__content-item:hover {
    color: var(--Primary);
}

#banner-block .accordion-item__content-item:hover:before {
    background-color: var(--Primary);
}

.accordion-item__content.collapse {
    overflow: hidden;
    transition: height 0.8s;
}

.accordion-item__content.collapse.is-collapsed {
    height: 0;
}

.banner-block__map-list .accordion-item.opened .accordion-item__top {
    background: var(--Background-dark);
    border-color: var(--Stroke);
    border-radius: 0px 0px 0px 30px;
}

.banner-block__map-list .accordion-item.opened .accordion-item__top svg {
    transform: scale(-1, -1);
}

.banner-block__map-list-close {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 1;
    width: 14px;
    height: 14px;
    cursor: pointer;
}

.banner-block__map-list-close svg {
    width: 100%;
    height: 100%;
    pointer-events: none;
    transition: all 0.3s ease-in;
    color: var(--Stroke);
}

.banner-block__map-list-close:hover svg {
    color: var(--Primary);
}

.banner-block .services-categories__wrapper {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.banner-block .services-categories__wrapper .category {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 20px 30px 20px 35px;
    border: 1px solid var(--Background-dark);
    transition: border-color 0.15s ease-in, background-color 0.15s ease-in, border-radius 0.15s ease-in;
}

.banner-block .services-categories__wrapper .category:hover {
    border-radius: 0 30px;
    background: var(--Background-dark, #EFE2D9);
}

.banner-block .services-categories__wrapper .category:hover .category__icon {
    background-color: var(--Card);
}

.banner-block .services-categories__wrapper .category:hover .category__icon svg path {
    fill: var(--Primary);
}

.banner-block .services-categories__wrapper .category:hover .category__btn {
    background-color: var(--Primary);
}

.banner-block .services-categories__wrapper .category:hover .category__btn svg path {
    stroke: var(--Card);
}

.banner-block .services-categories__wrapper .category__icon {
    width: 90px;
    height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background-color: var(--Background-light);
    border-radius: 50%;
}

.banner-block .services-categories__wrapper .category__icon img,
.banner-block .services-categories__wrapper .category__icon svg {
    width: 44px;
    height: 44px;
}

.banner-block .services-categories__wrapper .category__icon svg path {
    fill: var(--Accent);
    transition: fill 0.15s ease-in;
}

.banner-block .services-categories__wrapper .category__title {
    color: var(--Head, #16111F);
}

.banner-block .services-categories__wrapper .category__btn {
    margin-left: auto;
}

@media (max-width: 1221px) {
    .banner-block .services-categories__wrapper {
        width: auto;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 991px) {
    .banner-block__content {
        margin-left: 15px;
    }

    #banner-block .content {
        min-height: clamp(500px, calc(17.8571428571vw + 363.0357142857px), 540px);
    }

    .banner-block__content {
        padding: 60px 0 80px 0;
    }

    .banner-block__map {
        width: clamp(400px, calc(50vw + 16.5px), 512px);
    }

    .banner-block__map img {
        width: clamp(480px, calc(66.9642857143vw + -33.6160714286px), 630px);
    }

    .banner-block__map-wrap {
        left: clamp(66px, calc(1.3392857143vw + 55.7276785714px), 69px);
        width: clamp(151px, calc(22.7678571429vw + -23.6294642857px), 202px);
        height: clamp(283px, calc(44.6428571429vw + -59.4107142857px), 383px);
    }

    .banner-block__map-text,
    .banner-block__map-list {
        top: clamp(60px, calc(-15.625vw + 214.84375px), 95px);
    }

    .banner-block .services-categories__wrapper {
        grid-template-columns: repeat(1, 1fr);
    }
}

@media (max-width: 767px) {
    #banner-block .content {
        flex-direction: column;
        min-height: inherit;
    }

    .banner-block__content {
        padding-bottom: 30px;
        width: auto;
        padding-top: 30px;
        margin-right: 15px;
    }

    .banner-block__map {
        width: clamp(290px, calc(67.1140939597vw + 75.2348993289px), 590px);
        margin: 0 auto;
    }

    .banner-block__map:after {
        padding-bottom: 59.5%;
    }

    .banner-block__map img {
        width: clamp(280px, calc(46.9798657718vw + 129.6644295302px), 490px);
        left: 0;
        right: auto;
    }

    .banner-block__map-text {
        right: 10px;
        top: 0;
        width: clamp(100px, calc(24.6085011186vw + 21.2527964206px), 210px);
        font-size: clamp(15px, calc(4.0268456376vw + 2.1140939597px), 33px);
    }

    .banner-block__map-list {
        top: 0;
        max-height: 250px;
    }

    .banner-block__map-wrap {
        left: clamp(112px, calc(13.0208333333vw + 37.1302083333px), 137px);
        bottom: clamp(16px, calc(-1.5659955257vw + 28.0111856823px), 23px);
        width: clamp(130px, calc(15.625vw + 40.15625px), 160px);
        height: clamp(137px, calc(32.6621923937vw + 32.48098434px), 283px);
    }
}

@media (max-width: 575px) {
    .banner-block__map:after {
        padding-bottom: 78.5%;
    }

    .banner-block__content {
        padding-top: 15px;
    }

    #banner-block .banner-block__additional {
        margin-bottom: 20px;
    }

    .banner-block__map-wrap {
        left: clamp(92px, calc(12.5490196078vw + 51.8431372549px), 124px);
        width: clamp(105px, calc(41.1764705882vw + -26.7647058824px), 210px);
        height: clamp(170px, calc(36.862745098vw + 52.0392156863px), 264px);
        bottom: clamp(21px, calc(6.6666666667vw + -0.3333333333px), 38px);
    }

    .banner-block__map img {
        width: 100%;
        object-fit: cover;
        object-position: bottom left;
    }

    .banner-block__map-text {
        right: 0;
        top: -5px;
    }

    .banner-block__map-list {
        top: 0;
    }

    .banner-block__map-list {
        left: 50%;
        transform: translateX(-50%);
    }

    .banner-block .services-categories__wrapper .category {
        padding: 10px 15px 10px 20px;
        gap: 10px;
    }

    .banner-block .services-categories__wrapper .category__icon {
        width: 50px;
        height: 50px;
    }

    .banner-block .services-categories__wrapper .category__icon svg,
    .banner-block .services-categories__wrapper .category__icon img {
        width: 24px;
        height: 24px;
    }
}

@media (max-width: 375px) {
    .banner-block .services-categories__wrapper .category {
        flex-direction: column;
    }

    .banner-block .services-categories__wrapper .category__title {
        text-align: center;
    }

    .banner-block .services-categories__wrapper .category__btn {
        display: none;
        margin: 0 auto;
    }
}