.btn-sm, .btn-group-sm > .btn {
    font-size: 1em;
}

/* 1.4.10 C38 — search form must constrain itself within any container width */
.searchform,
#searchform {
    max-width: 100%;
    overflow-x: hidden;
}

.searchform input[type="search"],
.searchform input[type="text"],
#searchform input {
    max-width: 100%;
    min-width: 0;
    width: 100%;
    box-sizing: border-box;
}

/* 1.4.10 Reflow — prevent horizontal scroll at 320px viewport width */
@media (max-width: 320px) {
    .cmp-input-search .input-group {
        flex-wrap: wrap;
    }
    .cmp-input-search .input-group-prepend {
        width: 100%;
    }
    .bg-grey-card {
        overflow-x: hidden;
    }
    .search-modal .row.px-5,
    .search-modal .row[class*="px-5"] {
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
    }
    .search-modal .modal-body .form-group,
    .search-modal .autocomplete-wrapper-big {
        max-width: 100%;
        overflow: hidden;
    }
    .search-modal .autocomplete-wrapper-big input,
    .search-modal .autocomplete-wrapper-big .autocomplete {
        max-width: 100%;
        min-width: 0;
        width: 100%;
    }
    .search-modal .modal-title {
        flex-wrap: wrap;
        gap: 0.5rem;
    }
    .search-modal .modal-content {
        overflow-x: hidden;
    }
}

/* 1.3.1 / 1.4.5 G140 — override Video.js fixed inline dimensions */
.video-js {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9;
}

.vjs-fluid:not(.vjs-audio-only-mode) {
    padding-top: 0 !important;
}