#mobile-menu-button,
#mobile-catalog-button,
#mobile-search-button {
    height: 20px;
    position: absolute;
    left: 5%;
    top: 80px;
    cursor: pointer;
    background: transparent url('/images/ico-mobile.png') -1px -2px no-repeat;
    line-height: 20px;
    font-size: 13px;
    color: #000;
    font-weight: bold;
    padding-left: 30px;
    text-decoration: none;
}

#mobile-catalog-button {
    left: 50%;
    margin-left: -45px;
    top: 80px;
    background-position: 0 -27px;
}

#mobile-search-button {
    left: auto;
    right: 5%;
    top: 80px;
    background-position: 0 -69px;
}

#mobile-menu {
    display: none;
    position: fixed;
    bottom: -100px;
    right: 0;
    top: -100px;
    left: 0;
    overflow: auto;
    overflow-y: scroll;
    z-index: 9999;
    min-height: 100%;
    background: url('/images/mobile-menu-overlay.png');
}

#mobile-menu ul {
    display: block;
    width: 60%;
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    padding: 10%;
    margin: 100px 0;
    z-index: 10000;
}

#mobile-menu li {
    display: block;
    width: 100%;
    margin-bottom: 10px;
    height: auto;
}

#mobile-menu ul span {
    display: none;
}

#mobile-menu a {
    font-size: 20px;
    color: #fff;
    text-decoration: none;
}

#mobile-menu-close {
    position: absolute;
    right: 20px;
    top: 20px;
    width: 20px;
    height: 20px;
    background: transparent url('/images/ico-mobile.png') 0 -48px no-repeat;
    z-index: 10001;
}

.mobile-search-container {
    position: absolute;
    left: 0;
    top: -100px;
    width: 100%;
    z-index: 1;
}

.animated{
    -webkit-animation-fill-mode:both;
    -moz-animation-fill-mode:both;
    -ms-animation-fill-mode:both;
    -o-animation-fill-mode:both;
    animation-fill-mode:both;
    -webkit-animation-duration:1s;
    -moz-animation-duration:1s;
    -ms-animation-duration:1s;
    -o-animation-duration:1s;
    animation-duration:1s;
}


@-webkit-keyframes slideInLeft {
    from {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }

    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes slideInLeft {
    from {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }

    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.slideInLeft {
    -webkit-animation-name: slideInLeft;
    animation-name: slideInLeft;
}

@-webkit-keyframes fadeOutLeft {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
}

@keyframes fadeOutLeft {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
}

.fadeOutLeft {
    -webkit-animation-name: fadeOutLeft;
    animation-name: fadeOutLeft;
}

.on-mobile {
    display: none;
}

@media all and (min-width: 1280px) {

}

@media all and (max-width: 1280px) {
    /* main menu */
    body header nav.main a {padding: 10px}
    /* banners */
    body ul.advantages li {padding-right: 0; width: 30%; margin-right: 5%}
    body ul.advantages li:last-child {margin-right: 0}
    body ul.advantages li:after {display: none}
    body ul.advantages li img {width: 100%; height: auto}
    /* categories */
    body .main_categories li:after, body main ul.dots li:after {display: none}
    /* subscription */
    body footer .subscription .title span {display: none;}
    body footer .subscription .form_wrapper {margin-left: 340px}
    /* footer menu */
    footer nav > ul > li {margin-left: 50px; max-width: 200px}
}

@media all and (max-width: 1100px) {
    /* main menu */
    body header nav.main {padding-top: 17px; padding-left: 310px}
    body header nav.main a {height: 20px; line-height: 20px}
    body header nav.main > ul > li:first-child > a {padding-left: 10px;}
    /* header elements */
    body header .top p {display: none}
    body header .top nav.user {float: none; text-align: center}
    body header .top nav.user ul li {display: inline-block; float: none}
    /* search */
    body header .search {margin-right: 200px}
    /* banners */
    body ul.advantages li {height: 140px}
    /* footer menu */
    footer nav {line-height: 20px; height: 340px; overflow: hidden; padding-top: 40px; max-width: 250px}
    body footer nav > ul > li {margin-left: 0; max-width: 100%; float: none}
    body footer nav > ul > li span {height: auto; line-height: 20px}
    #content #shop_goods .show_hide_filters {right: 31px; top: -19px;}
}

@media all and (max-width: 860px) {
    /* header elements */
    body header .top nav.user ul li {padding: 0 10px;}
    body header .top nav.user ul li:after {display: none}
    /* banners */
    body #banner {display: none}
    body ul.advantages {padding-top: 0}
    body ul.advantages li {float: none; margin: 0 auto 20px auto; padding-right: 0; width: 270px; height: 170px}
    body ul.advantages li:last-child {margin: 0 auto;}
    /* goods */
    body .goods_wrapper {margin-left: 0}
    body .goods {width: 100%; margin-left: 0; min-width: 200px; height: 220px;}
    /* goods set at main page */
    body section.goods_set .more, body section.last_reviews .more {display: none}
    /* search */
    body header .search {display: none}
    /* unisiter link */
    body footer .unisiter {display: none}
    #content #shop_goods {margin: 69px 0 0 0;}
    #content #shop_goods .sorting p { position: absolute; top: -24px;}
}

@media all and (max-width: 720px) {
    /* main menu */
    body header nav.main {padding-left: 220px}
    /* header elements */
    body header .top nav.user ul li.phone, body header .top nav.user ul li.mail {display: none}
}

@media all and (max-width: 640px) {
    /* general */
    body .container .container {margin: 0 10px;}
    body #content .left_col {display: none;}
    body .has_left_col main {margin-left: 0;}
    #shop_goods .sorting {display: none}
    body form.forms .item .title, body form.forms .item .input,  body form.forms .item .textarea, body form.forms .item .hint, body form.forms .item .hinterror {width: 90%}
    body #shop_goods, body #shop_goods div.nav {margin-left: 0}
    body section.category {margin-right: 0;}
    /* mobile head */
    body header div, body header nav, body header a {display: none}
    body header, #mobile_nav ul.panel {height: 50px; background-color: #d60200;}
    /* banners */
    body ul.advantages li {float: left; width: 30%; margin: 0 5% 0 0; height: 100px}
    body ul.advantages li:last-child {margin-right: 0}
    body .video_bnr {margin-top: 0}
    /* cart page */
    body #shopping_cart_table .features {display: none}
    /* goods card */
    body #shop_goods .goods-card .gallery {float:none; margin: 0 auto 40px auto; padding: 0}
    body #shop_goods .similar-goods {margin-left: 0}
    body #shop_goods .similar-goods h4 {margin-left: 0}
    body #shop_goods div.nav {margin-top: -60px; margin-right: 0; width: 100%;}
    body #shop_goods ul.goods_slider li.next {right: 0}
    /* goods list */
    body #shop_goods .show_hide_filters {right: 0; top: -84px;}

    /* subscription */
    body footer .subscription .title {color: transparent; font-size: 1px; width: 0; overflow: hidden; height: 60px}
    body footer .subscription .form_wrapper {margin-left: 50px}

    /* FOOTER: general styles */
    body footer, body footer .container {height: auto;}
    body footer ul.contacts {display: block; position: relative; top: auto; padding: 20px 0 0 0; background: transparent; width: auto; max-width: 100%; margin: 0; float: none}
    body footer ul.contacts li, body footer nav > ul > li li {font-size: 14px; line-height: 24px; margin-left: 0;}
    body footer ul.contacts li.title, body footer nav > ul > li.sub span {height: auto; line-height: 40px; font-size: 16px; font-weight: bold}
    body footer ul.contacts a, body footer ul.contacts span {height: auto; line-height: 24px; text-decoration: none}
    body footer nav {display: block; max-width: 100%; padding: 0; position: relative; float: none; height: auto}
    body footer nav > ul > li {float: none; width: auto; margin: 0}
    body footer nav > ul > li ul {list-style-type: none}
    body footer nav a {text-decoration: none}
    body footer ul.social {position: relative; left: auto; top: auto; margin: 0; padding: 16px 0; text-align: center; width: auto; height: auto}
    body footer .bottom {position: relative; top: auto; text-align: center; height: auto; padding: 20px 0; line-height: 24px}
    body footer .ways_to_pay {position: relative; display: block; width: 100%; height: 20px; background-size: contain; background-position: center 0; left: auto; top: auto; bottom: auto; margin: 0 0 20px 0; padding: 0; font-size: 1px; color: transparent;}
    body footer .unisiter {display: block; position: relative; left: auto; right: auto; top: auto}
    body footer .unisiter a {display: inline-block; background-position: 0 -14px}
    body footer .unisiter a:hover {background-position: 0 -64px}
    body footer .copyright {position: relative; left: auto; top: auto; line-height: 24px; margin: 0; height: auto}
    body footer p.description {display: none}
}

@media all and (max-width: 480px) {
    /* general */
    body #shopping_cart_table .img {display: none}
    body .on-mobile {display: block}
    /* banners */
    body ul.advantages li {float: none; margin: 0 auto 20px auto; padding-right: 0; width: 270px; height: 170px}
    body ul.advantages li:last-child {margin: 0 auto;}
    /* categories */
    body .main_categories ul, body main ul.dots, body .cats_with_goods #shop_cats ul {margin-left: 0}
    body .main_categories li, body main ul.dots li {float: none; margin: 0 auto 50px auto}
    /* main page features */
    body section.main_features ul {margin-left: 0}
    body section.main_features li {float: none; margin: 0 auto 50px auto}
    /* search */
    body header .search {margin: 0; position: absolute}
    body #search_form_input {box-shadow: inset 0 0 1px #aaa;}
}

@media all and (max-width: 352px) {
    /* goods list */
    body .goods a.buy {display: none}
}