.popup {
    visibility: hidden;
    opacity: 0;
    clip: rect(0 0 0 0);
}
.popup {
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    background: #fff;
    z-index: 99999;
    outline: none;
    max-height: calc(100vh - 80px);
    max-width: calc(100vw - 40px);
    overflow: hidden;
    border-radius: 20px;
}

.popup.open {
    visibility: visible;
    opacity: 1;
    clip: auto;
}

#overlay.overlay_show, #overlay.overlay_show-top {
    opacity: 1;
    visibility: visible;
}
#overlay {
    position: fixed;
    opacity: 0;
    visibility: hidden;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 99998;
    outline: none;
    cursor: pointer;
}

.location__popup-title {
    font-weight:700;
    font-size:1.8rem;
    line-height:3.4rem;
    text-align:center;
    color:#1e2023
}
@media(min-width: 768px) {
    .location__arrow {
        display:none
    }
}
@media(min-width: 768px) {
    .location__container {
        display:-webkit-box;
        display:-ms-flexbox;
        display:flex;
        -webkit-box-pack:space-evenly;
        -ms-flex-pack:space-evenly;
        justify-content:space-evenly
    }
}
.location__block_active .location__column-title {
    background:#674ea7;
    color:#fff
}
.location__block_active .location__column-title .location__arrow {
    -webkit-transform:rotate(180deg);
    transform:rotate(180deg)
}
.location__block_active .location__column-title .location__arrow svg path {
    fill:#fff
}
.location__block_active .location__list .city-item {
    visibility:visible;
    opacity:1;
    clip:auto;
    width:unset;
    height:unset;
    margin:unset
}
.location__block_active .location__list {
    visibility:visible;
    opacity:1;
    clip:auto;
    width:unset;
    height:unset;
    margin:8px 6px 8px 0
}
.location__column-title {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:justify;
    -ms-flex-pack:justify;
    justify-content:space-between;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    font-weight:700;
    font-size:1rem;
    line-height:1.3rem;
    color:#1e2023;
    padding: 10px;
    text-align: center;
}

.location__list {
    max-height:250px;
    list-style:none;
    padding:0;
    visibility:hidden;
    opacity:0;
    clip:rect(0 0 0 0);
    width:1px;
    margin:-1px;
    height:1px;
}
.location__list .simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
    top:2px;
    bottom:2px
}
@media(min-width: 768px) {
    .location__list {
        max-height:calc(100vh - 260px);
        visibility:visible;
        opacity:1;
        clip:auto;
        width:unset;
        height:unset;
        margin:8px 6px 8px 0
    }
}
.location__list .city-item {
    display:block;
    font-weight:400;
    font-size:0.8rem;
    line-height:1.5rem;
    color:#1e2023;
    padding:5px 20px;
    visibility:hidden;
    opacity:0;
    clip:rect(0 0 0 0);
    width:1px;
    margin:-1px;
    height:1px;
    display: flex;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    cursor: pointer;
    position: relative;
}
.location__list .city-item:active {
    background-color: unset;
}
@media(min-width: 768px) {
    .location__list .city-item {
        visibility:visible;
        opacity:1;
        clip:auto;
        width:unset;
        height:unset;
        margin:unset
    }
}
.location__list .city-item .CityFilter__itemIcon {
    left: 25px;
    width: 16px;
    height: 16px;
}

.location__block {
    position:relative
}
.popup.open .location__popup-title {
    margin-top:60px;
    margin-bottom:22px
}
@media(min-width: 768px) {
    .popup.open .location__popup-title {
        margin-top:44px;
        margin-bottom:16px
    }
}

.popup__close {
    position: absolute;
    top: 22px;
    right: 22px;
    display: block;
    width: 20px;
    height: 20px;
    border: unset;
    background-color: unset;
    z-index: 1;
    cursor: pointer;
}

.popup__close::after,
.popup__close::before {
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    background:#1e2023;
    height:2px;
    width:12px;
    border-radius:1px
}
.popup__close::after {
    -webkit-transform:translate(-50%,-50%) rotate(45deg);
    transform:translate(-50%,-50%) rotate(45deg)
}
.popup__close::before {
    -webkit-transform:translate(-50%,-50%) rotate(-45deg);
    transform:translate(-50%,-50%) rotate(-45deg)
}
.popup__scroll {
    max-height:calc(100vh - 80px);
    max-width:calc(100vw - 40px);
    overflow: auto;
}
.popup__scroll .simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
    top:10px;
    bottom:10px
}
.popup__location {
    padding-bottom:2px;
    width:100%;
}

@media(max-width: 767px) {
    .location__list .city-item .CityFilter__itemIcon {
        left: 6px;
    }

    .location__list .city-item {
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: start;
        padding-left: 1.6rem;
    }

    .popup.open .location__popup-title {
        margin-top: 25px;
        margin-bottom: 10px;
        font-size: 1.4rem;
        line-height: 2rem;
    }

    .popup__close {
        top: 7px;
        right: 10px;
    }
}