body header {
    margin: 0;
    padding-bottom: 10px;
    min-height: unset;
}

body footer {
    width: auto;
    padding: 20px 0;
    height: auto;
}

body section.main-content {
    padding: 0;
}

body header .content-wrapper2 {
    max-width: 1024px;
    width: auto;
}

#loginForm {
    margin-top: 30px;
}

#logo-sm {
    height: 59px;
}

@media all and (max-width: 1199px) {
    body header .content-wrapper2 {
        padding: 10px 20px;
        max-width: none;
    }
}

body header .content-wrapper2 #headertop {
    display: flex;
    justify-content: space-between;
    min-height: 0;
    margin-bottom: 10px;
}

body header .content-wrapper2 #headertop .site-title {
    margin: 0;
}

body header .content-wrapper2 #headertop .site-title a {
    padding: 0
}

body header .content-wrapper2 #headertop .site-title a img.lrg {
    width: 284px;
}

@media all and (max-width: 767px) {
    body header .content-wrapper2 #headertop .site-title a img.lrg {
        display: none;
    }
}

body header .content-wrapper2 #headertop .site-title a img.sm {
    display: none;
}

@media all and (max-width: 767px) {
    body header .content-wrapper2 #headertop .site-title a img.sm {
        display: block;
        height: 59px;
    }
}

body header .content-wrapper2 #headertop .float-right {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

body header .content-wrapper2 #headertop #login {
    display: flex;
    align-items: baseline;
    gap: 15px;
    font-size: 0.85rem;
}

@media all and (max-width: 767px) {
    body header .content-wrapper2 #headertop #login {
        gap:5px;
        align-items: center
    }
}

@media all and (max-width: 1199px) {
    body header .content-wrapper2 #headertop #login {
        padding-left:0;
        padding-right: 0
    }
}

body header .content-wrapper2 #headertop #login a {
    background-color: #f3f3f3;
    margin: 0
}

@media all and (max-width: 767px) {
    body header .content-wrapper2 #headertop #login a {
        background-repeat:no-repeat;
        background-position: center;
        text-indent: -9999px;
        background-color: transparent;
        height: 20px;
        width: 20px;
        padding: 0;
        margin: 5px;
    }

    body header .content-wrapper2 #headertop #login a#logout {
        background-image: url("/Images/logout.svg")
    }

    body header .content-wrapper2 #headertop #login a#account {
        background-image: url("/Images/account.svg")
    }

    body header .content-wrapper2 #headertop #login a#help {
        background-image: url("/Images/help.svg")
    }
}

body header .content-wrapper2 #headertop #login a input {
    margin: 0;
    background: none;
}

body header .content-wrapper2 #headerbottom {
    display: flex;
    justify-content: space-between;
    min-height: 0;
    margin: 0;
    gap: 20px
}

@media all and (max-width: 1199px) {
    body header .content-wrapper2 #headerbottom {
        display: block;
    }
}

body header .content-wrapper2 #headerbottom form {
    flex-grow: 2
}

body header .content-wrapper2 #headerbottom form input {
    margin: 0
}

    body header .content-wrapper2 #headerbottom form input[type="text"] {
        height: 24px;
        width: 85%;
        border: 1px solid #79a346;
        box-shadow: none;
    }

body header .content-wrapper2 #headerbottom form input[type="text"]:focus {
    border: 1px solid #017fb6 !important;
}

body header .content-wrapper2 #headerbottom form input[type="radio"] {
    width: auto;
    accent-color: #017fb6;
}

body header .content-wrapper2 #headerbottom form label {
    display: inline;
    font-size: 0.85rem;
}

body header .content-wrapper2 #headerbottom form .radio-group {
    display: flex;
    gap: 10px;
    justify-content: flex-start;
    padding-top: 10px;
}

body header .content-wrapper2 #headerbottom form .radio-group .radio {
    display: flex;
    gap: 3px;
}

body header .content-wrapper2 #headerbottom nav ul#menu {
    margin: 0;
    display: flex;
    gap: 15px;
    justify-content: flex-end;
    position: relative;
}

@media all and (max-width: 1199px) {
    body header .content-wrapper2 #headerbottom nav ul#menu {
        margin-top: 15px;
        justify-content: flex-start;
    }
}

@media all and (max-width: 767px) {
    body header .content-wrapper2 #headerbottom nav ul#menu {
        justify-content:center;
        flex-wrap: wrap;
    }
}

body header .content-wrapper2 #headerbottom nav ul#menu li {
    padding: 0;
}

@media all and (max-width: 767px) {
    body header .content-wrapper2 #headerbottom nav ul#menu li {
        flex-grow: 2;
    }
}

body header .content-wrapper2 #headerbottom nav ul#menu li a {
    padding: 0;
    background-color: #f3f3f3;
    display: block;
}

    body header .content-wrapper2 #headerbottom nav ul#menu li a.active {
        background-color: transparent !important;
    }

body header .content-wrapper2 #headerbottom nav ul#menu li a input {
    margin: 0;
    background: none;
    padding: 9px 14px;
}

body header .content-wrapper2 #headerbottom nav ul#menu li#overlay-button {
    right: -30px;
    top: 8px;
}

@media all and (max-width: 1199px) {
    body header .content-wrapper2 #headerbottom nav ul#menu li#overlay-button {
        display: none;
    }
}

body section.featured {
    background: linear-gradient(to bottom, #6c923e 0%, #79a346 100%) !important
}

body section.featured #ribbon #calendar {
    box-shadow: none;
    margin: 0 auto;
    height: 250px;
    padding: 10px
}

body section.featured #ribbon #calendar .tbCalendar {
    margin: 0 auto;
}

body section.featured #ribbon #calendar .tbCalendar caption {
    padding: 0 10px 0 0;
    display: flex;
    width: 256px;
    justify-content: space-between;
    margin: 0 auto;
}

body section.featured #ribbon #calendar .tbCalendar caption .date-picker {
    display: flex;
    gap: 0
}

    body section.featured #ribbon #calendar .tbCalendar caption .date-picker select {
        padding: 3px;
        margin: 0;
        appearance: none;
        -webkit-appearance: none;
        -moz-appearance: none;
        text-align: center;
        text-align-last: center;
        border: none;
        background: none;
        font-size: 1rem;
        color: #000
    }

body section.featured #ribbon #calendar .tbCalendar caption .date-picker select:hover,body section.featured #ribbon #calendar .tbCalendar caption .date-picker select:active {
    background: #f3f3f3
}

body section.featured #ribbon #calendar>a {
    padding: 0
}

body section.featured #ribbon {
    height: auto;
    width: auto;
    max-width: 1024px;
    padding: 30px 0;
    display: flex;
    justify-content: space-evenly;
    gap: 30px
}

@media all and (max-width: 767px) {
    body section.featured #ribbon {
        flex-direction:column-reverse;
        align-items: center
    }
}

body section.featured #ribbon #ribboncenter {
    height: auto;
    padding: 0;
    flex-grow: 2
}

@media all and (max-width: 767px) {
    body section.featured #ribbon #ribboncenter {
        text-align:center
    }
}

@media all and (max-width: 1199px) {
    body section.featured #ribbon .cycle-slideshow {
        display:none
    }
}

body section.featured #ribbon .cycle-slideshow img.ribbonimage {
    margin: 0;
    box-shadow: none
}

.dayTextsRow {
    margin-left:0px;
}


@media (min-width: 576px) {
    .dayTextsContent {
        padding-left: 25px;
        padding-right:25px;
    }
}

@media (max-width: 575.98px) {
    .dayTextsContent {
        padding-right: 20px;
    }
}

.day-texts {
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
}

.download-link-margin {
    margin-top: 12px;
}

.searchButtonMargin {
    -webkit-appearance: none;
    appearance: none;
    margin-left: -5px !important;
    border: none !important;
    height: 36.5px;
    transform: translate(-1px, 0.7px);
}

@supports (-webkit-touch-callout: none) {
    .searchButtonMargin {
        height: 35.5px;
    }
}

#rightcolumn {
    margin-left: 27px !important;
}

.buttons_design {
    background: #f3f3f3;
    padding: 9px !important;
    width: auto;
    font-weight: 600;
    cursor: pointer;
    color: black !important;
    font-size: 0.8em !important;
    margin-right: 20px !important;
}
    .buttons_design:hover {
        color: #017fb6 !important;
    }

.search_buttons_margin {
    margin-top: 20px;
    height: 50px;
}

.full_width_background {
    width: 100% !important;
}

@media not all and (min-resolution: 0.001dpcm) {
    @supports (-webkit-appearance: none) {
        @media (min-width: 768px) {
            body section.featured #ribbon #calendar {
                box-shadow: none;
                margin: 0 auto;
                padding: 10px
            }
        }
    }
}

.trMusicResult {
    border-bottom: 1px solid #c3c3c3;
}

.music-results-table {
    width: 100%;
    border-collapse: collapse;
}

    .music-results-table thead th {
        text-align: left;
    }

@media screen and (max-width: 768px) {
    .music-results-table,
    .music-results-table thead,
    .music-results-table tbody,
    .music-results-table th,
    .music-results-table td,
    .music-results-table tr {
        display: block;
        width: 100%;
    }

        .music-results-table thead {
            display: none;
        }

        .music-results-table tr {
            margin-bottom: 0.1rem;
            padding: 10px;
            background: #fff;
            border-bottom: 1px solid #c3c3c3;
        }

        .music-results-table td {
            padding: 8px 16px 0 0;
            text-align: left;
            position: relative;
            border: none;
        }

            .music-results-table td::before {
                content: attr(data-label);
                font-weight: bold;
                display: block;
                margin-bottom: 4px;
                color: #555;
            }

            .music-results-table td:last-child {
                border-bottom: none;
            }

    .pagination-container, .totalItemsCount, .page-count {
        margin-left: 15px;
    }

    .hide-on-mobile {
        display: none !important;
    }

    .bold-on-mobile {
        font-weight: bold;
    }

    .music-results-table tr {
        display: flex;
        flex-direction: column;
    }

    .music-results-table td {
        order: 3;
    }

    .music-results-table .reorder-1 {
        order: 3;
    }

    .music-results-table .reorder-2 {
        order: 2;
    }

    .music-results-table .reorder-3 {
        order: 1;
    }

    .d-mobile-only {
        display: block;
    }

    .d-desktop-only {
        display: none !important;
    }
}

@media screen and (min-width: 769px) {
    .d-mobile-only {
        display: none;
    }

}

    .d-desktop-only {
        display: table-cell;
    }

    /*.content-wrapper {
    width: 1024px;
    margin: 0 auto;
}*/

    @media screen and (max-width: 992px) {
        /* .content-wrapper {
        width: 90%;
        margin: 5px;
    }*/

        .dayTextsRow {
            margin-left: 5px;
        }
    }

    .account-settings-container, .positionCenter {
        max-width: 1024px;
        margin: 0 auto;
        padding: 0 15px;
        box-sizing: border-box;
    }

    @media (max-width: 1024px) {
        .account-settings-container, .positionCenter {
            width: 90%;
        }
    }

    .accountTitle {
        padding-left: 15px;
    }

.searchBoxStyle {
    display: flex;
    align-items: center;
}

.inputBoxStyle {
    box-sizing: border-box !important;
    height: 30px !important;
}

.buttonSearchStyle {
    margin-left: -30px !important;
    width: 30px;
    height: 30px;
    border-radius: 0px 5px 5px 0px;
    transform: none;
    display: flex;
    padding: 0;
    align-items: center;
    justify-content: center;
}