  body #courseSearchFormContainer
.invisible {
    visibility: hidden;
    opacity: 0
}

body #courseSearchFormContainer .hidden {
    display: none !important
}

body #courseSearchFormContainer .staticContainer {
    display: block;
    width: 100%
}

    body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer {
        font-size: 14px
    }

@media (min-width:768px) {
    body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects {
        display: -ms-grid;
        display: grid;
        grid-column-gap: 5px;
        -ms-grid-columns: 1fr 5px 3fr;
        grid-template-columns: 1fr 3fr
    }
}

body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects label {
    margin-bottom: 5px
}

body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects select {
    display: block;
    width: 100%;
    border: 1px solid #150f33;
    margin-top: 5px
}

@media (max-width:768px) {
    body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects select {
        width: 100%;
        max-width: 100%
    }
}

body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects #subSelects {
    margin-bottom: 20px
}

    body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects #subSelects span {
        display: inline-block;
        vertical-align: top;
        width: 33%
    }

        body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects #subSelects span span {
            width: 100%
        }

@media (max-width:768px) {
    body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects #subSelects span {
        display: block;
        width: 100%
    }
}

body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects #subSelects span label {
    display: block;
    margin-bottom: 5px
}

    body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects #subSelects span label .small {
        font-size: 10px;
        display: inline;
        vertical-align: baseline
    }

@media (max-width:768px) {
    body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects #subSelects span select {
        width: 100%;
        max-width: 100%
    }
}

body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects #subSelects span #boardCbs label {
    display: inline-block;
    font-size: 15px;
    margin: 0 4px 0 2px
}

body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects #makeSelection {
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-column: 1/4
}

    body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects #makeSelection #basket {
        float: right;
        -webkit-transition: opacity 0.3s linear;
        transition: opacity 0.3s linear;
        cursor: pointer;
        text-decoration: underline;
        font-size: 115%;
        position: fixed;
        bottom: 0;
        background: #a09168;
        display: block;
        padding: 1.5rem 0;
        width: 100%;
        left: 0;
        z-index: 10;
        color: #150f33;
    }

        body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects #makeSelection #basket #basketInner {
            position: relative
        }

            body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects #makeSelection #basket #basketInner .fa-solid {
                font-size: 25px
            }

            body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects #makeSelection #basket #basketInner #courseCount {
                position: absolute;
                top: 2px;
                left: 46%;
                color: #fff;
                font-size: 10px
            }

        body #courseSearchFormContainer .staticContainer #searchContainer #stickyContainer #selects #makeSelection #basket img {
            cursor: pointer;
            width: 33px;
            margin-right: 5px
        }

body #courseSearchFormContainer .staticContainer #searchContainer label {
    font-weight: 700;
    font-size: 18px
}

body #courseSearchFormContainer .staticContainer #tableContainer tr td, body #courseSearchFormContainer .staticContainer #tableContainer tr th {
    font-size: 13px
}

    body #courseSearchFormContainer .staticContainer #tableContainer tr th #classDatesSort {
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        cursor: pointer
    }

        body #courseSearchFormContainer .staticContainer #tableContainer tr th #classDatesSort:focus, body #courseSearchFormContainer .staticContainer #tableContainer tr th #classDatesSort:hover {
            text-decoration: underline
        }

        body #courseSearchFormContainer .staticContainer #tableContainer tr th #classDatesSort #sorter {
            -webkit-transform: rotate(90deg);
            -ms-transform: rotate(90deg);
            transform: rotate(90deg);
            display: inline-block;
            font-size: 1.1em
        }

        body #courseSearchFormContainer .staticContainer #tableContainer tr th #classDatesSort.desc #sorter {
            -webkit-transform: rotate(270deg);
            -ms-transform: rotate(270deg);
            transform: rotate(270deg)
        }

    body #courseSearchFormContainer .staticContainer #tableContainer tr th #resetButton {
        color: #fff;
        border-color: #fff;
        padding: 1rem;
        margin-bottom: 0
    }

body #courseSearchFormContainer .staticContainer #tableContainer tr.soldOut {
    background: #b5b5b5
}

body #courseSearchFormContainer .staticContainer #tableContainer tr .bookButton {
    font-size: 13px;
    padding: 10px 7px
}

body #courseSearchFormContainer .staticContainer #tableContainer tr.selected .bookButton {
    background-color: #fff;
    color: #150f33
}

body #courseSearchFormContainer .staticContainer #tableContainer tr:not(.selected):hover .bookButton {
    border-color: #fff;
    color: #fff
}

body #courseSearchFormContainer #result {
    position: fixed;
    background: #f8f8ff;
    top: 5%;
    bottom: 5%;
    left: 10%;
    right: 10%;
    z-index: 9999;
    overflow: auto
}

@media (max-width:768px) {
    body #courseSearchFormContainer #result {
        overflow: scroll;
        top: 5%;
        bottom: 5%;
        left: 2%;
        right: 2%
    }
}

body #courseSearchFormContainer #result #resultInner {
    padding: 20px
}

    body #courseSearchFormContainer #result #resultInner .closeAnchor {
        display: block;
        cursor: pointer
    }

@media (max-width:481px) {
    body #courseSearchFormContainer #result #resultInner .closeAnchor {
        font-size: 15px
    }
}

body #courseSearchFormContainer #result #resultInner #mobileCloseContainer {
    display: none
}

@media (max-width:768px) {
    body #courseSearchFormContainer #result #resultInner #mobileCloseContainer {
        display: block
    }
}

body #courseSearchFormContainer #result #resultInner #resultUL {
    float: left;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
    width: 66%
}

@media (max-width:768px) {
    body #courseSearchFormContainer #result #resultInner #resultUL {
        width: 100%;
        display: block;
        float: none
    }
}

body #courseSearchFormContainer #result #resultInner #resultUL .removeCourse {
    float: right;
    cursor: pointer;
    font-size: 14px;
    text-decoration: underline
}

body #courseSearchFormContainer #result #resultInner #courseForm {
    width: 33%;
    float: right
}

    body #courseSearchFormContainer #result #resultInner #courseForm h2 {
        font-size: 17px
    }

    body #courseSearchFormContainer #result #resultInner #courseForm label {
        font-size: 12px
    }

    body #courseSearchFormContainer #result #resultInner #courseForm input[type=email], body #courseSearchFormContainer #result #resultInner #courseForm input[type=tel], body #courseSearchFormContainer #result #resultInner #courseForm input[type=text] {
        height: 40px
    }

@media (max-width:768px) {
    body #courseSearchFormContainer #result #resultInner #courseForm {
        width: 100%;
        float: none
    }
}

body #courseSearchFormContainer #result #resultInner #courseForm #contactForm {
}

    body #courseSearchFormContainer #result #resultInner #courseForm #contactForm p {
        margin: 5px 0
    }

        body #courseSearchFormContainer #result #resultInner #courseForm #contactForm p textarea {
            height: 100px
        }

        body #courseSearchFormContainer #result #resultInner #courseForm #contactForm p:first-child {
            margin: 5px 0
        }

body #courseSearchFormContainer #overlay {
    background: rgba(0,0,0,0.5);
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1
}

body #courseSearchFormContainer #resultInner .closeAnchor, body #courseSearchFormContainer #tableContainer tr.soldOut .bookButton, body #courseSearchFormContainer .mobOnly {
    display: none
}

body #courseSearchFormContainer .selected {
    background-color: #2e1f7a;
    color: #fff
}

body #courseSearchFormContainer #pricingTable th, body #courseSearchFormContainer #result h2, body #courseSearchFormContainer #resultUL h3, body #courseSearchFormContainer #tableContainer th {
    text-align: left
}

body #courseSearchFormContainer #pricingTable .borderLeft {
    border-left: 1px solid #b2b2b2
}

body #courseSearchFormContainer #resetButton {
    float: right
}

body #courseSearchFormContainer #courseTable {
    width: 100%
}

body #courseSearchFormContainer #resultUL ul {
    padding-left: 20px
}

body #courseSearchFormContainer #resultUL h3 {
    margin-bottom: 0
}

@media (max-width:1140px) {
    body #courseSearchFormContainer #searchContainer, body #courseSearchFormContainer #tableContainer {
        width: 100%;
        float: none
    }

    body #courseSearchFormContainer #tableContainer {
        margin: 40px 0
    }
}

@media (max-width:1040px) {
    body #courseSearchFormContainer #tableContainer {
        overflow-x: scroll
    }

        body #courseSearchFormContainer #tableContainer tr .bookButton {
            padding: 5px
        }

    body #courseSearchFormContainer select {
        width: 100%
    }

    body #courseSearchFormContainer .staticContainer {
        display: block
    }
}

@media (max-width:600px) {
    body #courseSearchFormContainer #tableContainer th {
        display: none
    }

    body #courseSearchFormContainer #tableContainer tr {
        border-bottom: 1px solid silver
    }

    body #courseSearchFormContainer #tableContainer td {
        display: block;
        height: 40px;
        border-bottom: none;
        border-top: none;
        border-right: 1px solid silver;
        font-size: 16px
    }

        body #courseSearchFormContainer #tableContainer td:last-child {
            display: table-cell
        }

    body #courseSearchFormContainer #resultUL {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr
    }

    body #courseSearchFormContainer .mobOnly {
        display: inline
    }
}

@media (max-width:481px) {
    body #courseSearchFormContainer #resultUL {
        display: block
    }
}

@keyframes flickerAnimation {
    0% {
        opacity: 1
    }

    50% {
        opacity: 0.7;
        color: #cacfea
    }

    to {
        opacity: 1
    }
}

@-webkit-keyframes flickerAnimation {
    0% {
        opacity: 1
    }

    50% {
        opacity: 0.7;
        color: #cacfea
    }

    to {
        opacity: 1
    }
}

/* Additional WooCommerce-specific styles */
body #courseSearchFormContainer #addAllToCart {
    background-color: #150f33;
    color: #fff;
    padding: 15px 30px;
    font-size: 16px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    width: 100%;
    border-radius: 4px;
}

    body #courseSearchFormContainer #addAllToCart:hover {
        background-color: #2e1f7a;
    }

body #courseSearchFormContainer #basketMessage {
    padding: 10px;
    border-radius: 4px;
}

    body #courseSearchFormContainer #basketMessage.success {
        background-color: #d4edda;
        border: 1px solid #c3e6cb;
        color: #155724;
    }

    body #courseSearchFormContainer #basketMessage.error {
        background-color: #f8d7da;
        border: 1px solid #f5c6cb;
        color: #721c24;
    }

/* Styles for courses already in basket */
body #courseSearchFormContainer #resultUL .selectedCourseUL.inCart {
    border: 2px solid #28a745;
    padding: 10px;
    background-color: #f0f9f4;
}

body #courseSearchFormContainer #resultUL .inCartBadge {
    background-color: #28a745;
    color: #fff;
    padding: 3px 8px;
    border-radius: 3px;
    font-size: 12px;
    font-weight: normal;
    float: right;
}

body #courseSearchFormContainer #resultUL .removeCourse {
    background-color: #dc3545;
    color: #fff;
    padding: 3px 8px;
    border-radius: 3px;
    font-size: 12px;
    font-weight: normal;
}

    body #courseSearchFormContainer #resultUL .removeCourse:hover {
        background-color: #c82333;
    }

body #courseSearchFormContainer #tableContainer tr.selected.inCart {
    background-color: #a09168 !important;
    border-left: 4px solid #150f33;
}

    body #courseSearchFormContainer #tableContainer tr.selected.inCart .bookButton {
        background-color: #ffffff;
        color: #150f33;
       
    }

/* Success message when course is added to basket */
body #courseSearchFormContainer .course-added-message {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #150f33;
    color: #fff;
    padding: 15px 25px;
    border-radius: 4px;
    font-weight: bold;
    font-size: 14px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
    z-index: 1000;
    white-space: nowrap;
    animation: fadeInOut 2s ease-in-out;
}

@keyframes fadeInOut {
    0% {
        opacity: 0;
        transform: translate(-50%, -60%);
    }

    20% {
        opacity: 1;
        transform: translate(-50%, -50%);
    }

    80% {
        opacity: 1;
        transform: translate(-50%, -50%);
    }

    100% {
        opacity: 0;
        transform: translate(-50%, -40%);
    }
}

/* Multi-class course indicators */
body #courseSearchFormContainer #tableContainer tr.multi-class-course {
    position: relative; 
}

    body #courseSearchFormContainer #tableContainer tr.multi-class-course td:first-child::before {
        content: "\f0c1";
        font-family: 'FontAwesome';
        /* position: absolute; */
       
        font-size: 13px;
        margin-right: 3px;
    }

body #courseSearchFormContainer #tableContainer .block-indicator {
    font-size: 11px;
    background-color: #150f33;
    color: #fff;
    padding: 2px 6px;
    border-radius: 3px;
    margin-left: 5px;
    font-weight: bold;
    white-space: nowrap;
}
