/*---------- XS (< 500px) ----------*/
@media all and (max-width:500px) {
    body {
        line-height: 22px;
    }

    .bp-header-bar {
        flex-wrap: wrap;
        height: auto;
        padding: 6px 15px;
        gap: 0;
        justify-content: center;
    }

    .bp-hamburger {
        position: absolute;
        left: 15px;
        top: 12px;
        display: flex;
        align-items: center;
    }

    .bp-logo {
        flex: 1;
        text-align: center;
    }

    .bp-logo img {
        height: 34px;
    }

    .bp-header-actions {
        display: none;
    }

    .bp-search-toggle {
        display: flex;
        align-items: center;
        position: absolute;
        right: 15px;
        top: 12px;
        color: #506fa3;
        font-size: 18px;
        text-decoration: none;
    }

    .bp-search-toggle:hover {
        color: #334a73;
        text-decoration: none;
    }

    .bp-header-search {
        display: none;
        order: 20;
        width: 100%;
        flex-basis: 100%;
        margin-top: 4px;
        padding-top: 6px;
        border-top: 1px solid #c2cfdf;
    }

    .bp-header-search.open {
        display: flex;
        justify-content: center;
    }

    .bp-header-location {
        order: 10;
        width: 100%;
        text-align: center;
        font-size: 12pt;
        margin-top: 0;
        margin-left: 0;
    }

    .bp-categories {
        padding: 10px 2px;
    }

    .bp-cat-columns {
        -moz-column-count: 2;
        -webkit-column-count: 2;
        column-count: 2;
    }

    .bp-cat-block {
        padding: 0 3px;
        margin-bottom: 6px;
    }

    .post-title {
        font-size: 1em;
    }

    .post-preview {
        margin-bottom: 5px;
    }

    .listing-price {
        font-size: 1em;
        text-align: left;
        float: left;
    }

    .listing-fields {
        font-size: 0.9em;
    }

    .search .field-numeric {
        display: inline-block;
        width: 35%;
    }

    .search label {
        display: block;
    }

    .search label.sublabel {
        display: inline-block;
    }

    #status-bar {
        float: none;
        text-align: center;
        line-height: 1.4em;
    }

    .demo-note {
        text-align: center;
    }

    .calendar .week {
        width: 100%;
    }
}

/*---------- SM (500px - 800px) ----------*/
@media all and (min-width:501px) and (max-width:800px) {
    .bp-cat-columns {
        -moz-column-count: 2;
        -webkit-column-count: 2;
        column-count: 2;
    }

    .bp-header-bar {
        flex-wrap: wrap;
        height: auto;
        padding: 6px 15px;
        gap: 0;
        justify-content: center;
    }

    .bp-hamburger {
        position: absolute;
        left: 15px;
        top: 12px;
        display: flex;
        align-items: center;
    }

    .bp-logo {
        flex: 1;
        text-align: center;
    }

    .bp-logo img {
        height: 34px;
    }

    .bp-header-actions {
        display: none;
    }

    .bp-search-toggle {
        display: flex;
        align-items: center;
        position: absolute;
        right: 15px;
        top: 12px;
        color: #506fa3;
        font-size: 18px;
        text-decoration: none;
    }

    .bp-search-toggle:hover {
        color: #334a73;
        text-decoration: none;
    }

    .bp-header-search {
        display: none;
        order: 20;
        width: 100%;
        flex-basis: 100%;
        margin-top: 4px;
        padding-top: 6px;
        border-top: 1px solid #c2cfdf;
    }

    .bp-header-search.open {
        display: flex;
        justify-content: center;
    }

    .bp-header-location {
        order: 10;
        width: 100%;
        text-align: center;
        font-size: 12pt;
        margin-top: 0;
        margin-left: 0;
    }

    .calendar .week {
        width: 50%;
    }
}

/*---------- MD (800px+) ----------*/
@media all and (min-width:801px) {
    .bp-cat-columns {
        -moz-column-count: 4;
        -webkit-column-count: 4;
        column-count: 4;
    }

    .calendar .week {
        width: 25%;
    }
}

/*---------- XXS (very small devices) ----------*/
@media all and (max-width:360px) {
    .bp-cat-columns {
        -moz-column-count: 1;
        -webkit-column-count: 1;
        column-count: 1;
    }
}
