body {
    font-family: GoodPro, Helvetica, Ariel;
}

#page_wrapper {
    max-width: 1140px;
    margin: auto;
    width: 100%;
    background: #fff;
}

#header_wrapper {
    padding: 0;
    width: 100%;
    margin: 0;
    text-align: center;
    background: #0a5688;
}

#header img { width: 100%; }

#content {
    padding: 20px 0 20px 20px;
    box-shadow: 0 2px 3px rgb(0 0 0 / 20%);
    margin: 0;
}

#cw-filter-bar {
    width: 25%;
    float: none;
}

#cw-content-head {
    float: none;
    width: 75%;
    padding-right: 0;
    margin-right: 10px;
}

#cw-filter-bar h4 {
    display: none;
}

.book, .book:hover {
    display: block;
    width: 100% !important;
    max-width: 230px !important;
    background: #055687;
    border: none;
    padding: 0;
    font-size: 14px;
    text-transform: uppercase;
    border-radius: 3px;
    margin-bottom: 10px;
    cursor: pointer;
    color: #fff;
    height: 48px;
    min-width: 150px;
    border-radius: 0;
}

.book:hover {
    width: 100%;
    box-shadow: 1px 1px 4px rgb(0 0 0 / 40%);
}

a.book { line-height: 50px; }

#cw_filter_form + a { display: none; }

#time_range { margin: 5px 0; }

#slider-range {
    margin-left: 10px;
    max-width: 147px;
}

#cw-content + .cw-block-book {
    display: none;
}

.cw-block-book .book { margin-right: 10px; }

#public_custom_content + h2 + div > div {
    display: flex;
    gap: 30px;
}

#public_custom_content {
    float: none;
    width: 100%;
}

#cw-content {
    float: none;
    width: 100%;
    padding-left: 0;
}

.cw-block-content { float: none; }

.cw-block-content table {
    width: 100%;
    margin-top: 50px;
    border-collapse: collapse;
    margin-top: 70px;
    font-size: 13px;
}

.cw-block-content th {
    font-weight: bold;
    background: #fff;
    border-bottom: 4px solid #ccc;
    padding: 5px 0;
}

.cw-block-content tr:first-child td {
    background: #fff;
    border-bottom: 4px solid #ccc;
}

.cw-block-book { float: none; }

#cw-content-head .book {
    background: #dc781d;
}

#cw_descriptions {
    float: none;
    background: #fafafa;
    padding: 20px;
    border-radius: 8px;
    width: calc(100% - 40px);
    margin-top: 20px;
}

.class_show_all_button {
    display: inline-block;
    float: right;
}

#visit_passes_for_sale h2 {
    display: inline-block;
    margin: 10px 0 20px;
}

.class_show_all_button {
    margin-right: 20px;
}

.class_show_all_button a {
    background: #f39221;
}

.class_description {
    max-width: 780px;
    width: 100% !important;
}

#cw_filter_form fieldset legend {
    display: block;
    background: #efefef;
    padding: 8px;
    margin-bottom: 10px;
    width: 100%;
    font-weight: bold;
}

.class_browse_filter_label_align {
    font-size: 14px;
    text-transform: lowercase;
    margin-bottom: 8px;
}

tr.cw_tr_results {
    background: none !important;
    border-bottom: 1px solid #ddd;
}

.cw_th_time, .cw_td_time {  width: 90px; }
.cw_th_day, .cw_td_day { width: 50px; }
.cw_td_vacancies {
    width: 70px;
}
.cw_td_payment {
    width: 60px;
}