.popup_theme_realty {
    display: none;
    visibility: hidden;

    margin: -9999px 0 0 -9999px;

    -webkit-animation-duration: 0.1s;

    animation-duration: 0.1s;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;

    background: #fff;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1),
    0 10px 20px -5px rgba(0, 0, 0, 0.4);

    -webkit-animation-fill-mode: forwards;

    animation-fill-mode: forwards;

    &.popup_region_suggest-menu {
        width: 380px;
    }
}

.popup_theme_realty.popup_js_inited {
    display: block;
}

.popup_theme_realty.popup_visible {
    visibility: visible;
    margin: 0;
}
/* Divided into two parts for better optimization */

.popup_theme_realty.popup_direction_bottom-left {
    -webkit-animation-name: popup_theme_realty_bottom;
    animation-name: popup_theme_realty_bottom;
}

.popup_theme_realty.popup_direction_bottom-left.popup_visible {
    -webkit-animation-name: popup_theme_realty_bottom_visible;
    animation-name: popup_theme_realty_bottom_visible;
}

.popup_theme_realty.popup_direction_bottom-center {
    -webkit-animation-name: popup_theme_realty_bottom;
    animation-name: popup_theme_realty_bottom;
}

.popup_theme_realty.popup_direction_bottom-center.popup_visible {
    -webkit-animation-name: popup_theme_realty_bottom_visible;
    animation-name: popup_theme_realty_bottom_visible;
}

.popup_theme_realty.popup_direction_bottom-right {
    -webkit-animation-name: popup_theme_realty_bottom;
    animation-name: popup_theme_realty_bottom;
}

.popup_theme_realty.popup_direction_bottom-right.popup_visible {
    -webkit-animation-name: popup_theme_realty_bottom_visible;
    animation-name: popup_theme_realty_bottom_visible;
}

.popup_theme_realty.popup_direction_top-left {
    -webkit-animation-name: popup_theme_realty_top;
    animation-name: popup_theme_realty_top;
}

.popup_theme_realty.popup_direction_top-left.popup_visible {
    -webkit-animation-name: popup_theme_realty_top_visible;
    animation-name: popup_theme_realty_top_visible;
}

.popup_theme_realty.popup_direction_top-center {
    -webkit-animation-name: popup_theme_realty_top;
    animation-name: popup_theme_realty_top;
}

.popup_theme_realty.popup_direction_top-center.popup_visible {
    -webkit-animation-name: popup_theme_realty_top_visible;
    animation-name: popup_theme_realty_top_visible;
}

.popup_theme_realty.popup_direction_top-right {
    -webkit-animation-name: popup_theme_realty_top;
    animation-name: popup_theme_realty_top;
}

.popup_theme_realty.popup_direction_top-right.popup_visible {
    -webkit-animation-name: popup_theme_realty_top_visible;
    animation-name: popup_theme_realty_top_visible;
}

.popup_theme_realty.popup_direction_right-top {
    -webkit-animation-name: popup_theme_realty_right;
    animation-name: popup_theme_realty_right;
}

.popup_theme_realty.popup_direction_right-top.popup_visible {
    -webkit-animation-name: popup_theme_realty_right_visible;
    animation-name: popup_theme_realty_right_visible;
}

.popup_theme_realty.popup_direction_right-center {
    -webkit-animation-name: popup_theme_realty_right;
    animation-name: popup_theme_realty_right;
}

.popup_theme_realty.popup_direction_right-center.popup_visible {
    -webkit-animation-name: popup_theme_realty_right_visible;
    animation-name: popup_theme_realty_right_visible;
}

.popup_theme_realty.popup_direction_right-bottom {
    -webkit-animation-name: popup_theme_realty_right;
    animation-name: popup_theme_realty_right;
}

.popup_theme_realty.popup_direction_right-bottom.popup_visible {
    -webkit-animation-name: popup_theme_realty_right_visible;
    animation-name: popup_theme_realty_right_visible;
}

.popup_theme_realty.popup_direction_left-top {
    -webkit-animation-name: popup_theme_realty_left;
    animation-name: popup_theme_realty_left;
}

.popup_theme_realty.popup_direction_left-top.popup_visible {
    -webkit-animation-name: popup_theme_realty_left_visible;
    animation-name: popup_theme_realty_left_visible;
}

.popup_theme_realty.popup_direction_left-center {
    -webkit-animation-name: popup_theme_realty_left;
    animation-name: popup_theme_realty_left;
}

.popup_theme_realty.popup_direction_left-center.popup_visible {
    -webkit-animation-name: popup_theme_realty_left_visible;
    animation-name: popup_theme_realty_left_visible;
}

.popup_theme_realty.popup_direction_left-bottom {
    -webkit-animation-name: popup_theme_realty_left;
    animation-name: popup_theme_realty_left;
}

.popup_theme_realty.popup_direction_left-bottom.popup_visible {
    -webkit-animation-name: popup_theme_realty_left_visible;
    animation-name: popup_theme_realty_left_visible;
}

@-webkit-keyframes popup_theme_realty_bottom {

    0% {
        visibility: visible;
        margin: 0;
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }

    99% {
        margin: 0;
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }

    100% {
        visibility: hidden;
        margin: -9999px 0 0 -9999px;
        opacity: 0;
    }
}

@keyframes popup_theme_realty_bottom {

    0% {
        visibility: visible;
        margin: 0;
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }

    99% {
        margin: 0;
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }

    100% {
        visibility: hidden;
        margin: -9999px 0 0 -9999px;
        opacity: 0;
    }
}

@-webkit-keyframes popup_theme_realty_bottom_visible {

    0% {
        opacity: 0;
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes popup_theme_realty_bottom_visible {

    0% {
        opacity: 0;
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes popup_theme_realty_top {

    0% {
        visibility: visible;
        margin: 0;
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }

    99% {
        margin: 0;
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }

    100% {
        visibility: hidden;
        margin: -9999px 0 0 -9999px;
        opacity: 0;
    }
}

@keyframes popup_theme_realty_top {

    0% {
        visibility: visible;
        margin: 0;
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }

    99% {
        margin: 0;
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }

    100% {
        visibility: hidden;
        margin: -9999px 0 0 -9999px;
        opacity: 0;
    }
}

@-webkit-keyframes popup_theme_realty_top_visible {

    0% {
        opacity: 0;
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes popup_theme_realty_top_visible {

    0% {
        opacity: 0;
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes popup_theme_realty_right {

    0% {
        visibility: visible;
        margin: 0;
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }

    99% {
        margin: 0;
        -webkit-transform: translateX(10px);
        transform: translateX(10px);
    }

    100% {
        visibility: hidden;
        margin: -9999px 0 0 -9999px;
        opacity: 0;
    }
}

@keyframes popup_theme_realty_right {

    0% {
        visibility: visible;
        margin: 0;
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }

    99% {
        margin: 0;
        -webkit-transform: translateX(10px);
        transform: translateX(10px);
    }

    100% {
        visibility: hidden;
        margin: -9999px 0 0 -9999px;
        opacity: 0;
    }
}

@-webkit-keyframes popup_theme_realty_right_visible {

    0% {
        opacity: 0;
        -webkit-transform: translateX(10px);
        transform: translateX(10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes popup_theme_realty_right_visible {

    0% {
        opacity: 0;
        -webkit-transform: translateX(10px);
        transform: translateX(10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@-webkit-keyframes popup_theme_realty_left {

    0% {
        visibility: visible;
        margin: 0;
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }

    99% {
        margin: 0;
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px);
    }

    100% {
        visibility: hidden;
        margin: -9999px 0 0 -9999px;
        opacity: 0;
    }
}

@keyframes popup_theme_realty_left {

    0% {
        visibility: visible;
        margin: 0;
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }

    99% {
        margin: 0;
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px);
    }

    100% {
        visibility: hidden;
        margin: -9999px 0 0 -9999px;
        opacity: 0;
    }
}

@-webkit-keyframes popup_theme_realty_left_visible {

    0% {
        opacity: 0;
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes popup_theme_realty_left_visible {

    0% {
        opacity: 0;
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
