@media (max-width: 767px) {
    /* 1. Force the form to be a single horizontal row */
    #views-exposed-form-programme-listing-page-1 {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: flex-end !important; /* Aligns button bottom with input bottom */
        width: 100% !important;
    }

    /* 2. Fix the Input width and force it to grow */
    #edit-title-wrapper,
    .js-form-item-title {
        flex-grow: 1 !important;
        margin-bottom: 0 !important;
        width: auto !important;
    }

    #views-exposed-form-programme-listing-page-1 input[type="text"],
    #edit-title {
        width: 100% !important;
        max-width: none !important; /* Kills the 650px limit */
        height: 45px !important; /* Standardizes height */
        margin: 0 !important;
        border-top-right-radius: 0 !important; /* Optional: joins input and button */
        border-bottom-right-radius: 0 !important;
    }

    /* 3. Adjust the Button container to stay on the same line */
    #views-exposed-form-programme-listing-page-1 .form-actions {
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
    }

    #views-exposed-form-programme-listing-page-1 .form-submit,
    #edit-submit-programme-listing {
        height: 45px !important;
        margin: 0 !important;
        padding: 0 20px !important;
        border-top-left-radius: 0 !important; /* Optional: joins input and button */
        border-bottom-left-radius: 0 !important;
        white-space: nowrap !important;
    }
}
