@media (max-width: 1239px) {
    footer > .top {
        font-size: 16px;
    }

    footer > .top > .top-wrap {
        display: block;
        overflow: auto;
    }

    footer > .top .category.basic-height {
        height: 290px;
    }

    footer > .top .category.column-4 {
        width: auto;
    }
}

@media (max-width: 1239px) and (min-width: 800px) {
    footer > .top > .top-wrap {
        width: 660px;
    }
}

@media (max-width: 849px) {
    footer > .bottom .left,
    footer > .bottom .right {
        float: none;
    }

    footer > .bottom .right {
        margin-bottom: 10px;
    }
}

@media (max-width: 799px) {
    footer > .top .category.basic-height {
        height: auto;
    }
}

@media (max-width: 799px) and (min-width: 520px) {
    footer > .top > .top-wrap {
        width: 420px;
    }

    footer > .top .category.column-3 {
        margin-top: 40px;
        margin-bottom: 40px;
        width: auto;
    }
}

@media (max-width: 519px) {
    footer > .top {
        padding: 20px 10px;
    }

    footer > .top .category:not(:last-child) {
        padding-right: 0;
    }

    footer > .top .category > div.group {
        min-height: 0;
    }

    footer > .top > .top-wrap {
        max-width: 280px;
        width: 100%;
    }

    footer > .top .category.basic-height {
        height: auto;
        padding-bottom: 40px;
    }

    footer > .top .category.column-1,
    footer > .top .category.column-2,
    footer > .top .category.column-3,
    footer > .top .category.column-4 {
        width: auto;
    }

    footer > .bottom {
        padding: 20px 10px;
    }

    footer > .bottom > .bottom-wrap {
        max-width: 280px;
        width: 100%;
        margin: 0 auto;
    }
}
