/* Holsterwelt Quick Fit 0.6.1 */
.hw-quick-fit {
    margin-bottom: 0.75rem;
}

.hw-quick-fit__label {
    display: block;
    margin-bottom: 0.25rem;
    font-weight: 600;
}

.hw-quick-fit__input {
    margin-bottom: 0.25rem;
}

.hw-quick-fit__status {
    display: block;
    line-height: 1.35;
}

.hw-model-guide {
    margin-bottom: 1rem;
    padding: 1rem;
    border: 1px solid #d7dee8;
    border-left: 4px solid #0b4b78;
    border-radius: 0.35rem;
    background: #f7f9fc;
}

.hw-model-guide__title {
    margin: 0 0 0.35rem;
    font-size: 1.15rem;
}

.hw-model-guide__copy {
    margin: 0 0 0.75rem;
    color: #3f4b57;
}

.hw-model-guide__choices {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.hw-model-guide__choice {
    min-height: 2.75rem;
}

@media (max-width: 575.98px) {
    .hw-model-guide__choice {
        flex: 1 1 calc(50% - 0.5rem);
    }

    .productlist-filters-container {
        flex-wrap: wrap;
        min-width: 0;
    }

    .productlist-filters-container > * {
        min-width: 0;
    }

    .productlist-filters_note {
        margin-left: 0 !important;
    }

    /* Keep product ratings in their own row below the image on mobile. */
    .productlist-mode-gallery .productbox-inner::before {
        content: "";
        order: 1;
        flex: 0 0 1.75rem;
    }

    .productlist-mode-gallery .productbox-inner > .productbox-images {
        order: 0;
        margin-bottom: 0.25rem;
    }

    .productlist-mode-gallery .productbox-inner > .productbox-rating {
        position: static !important;
        order: 1;
        align-self: flex-end;
        min-height: 1.375rem;
        margin-top: -1.75rem;
        margin-bottom: 0.375rem;
        z-index: auto;
    }

    .productlist-mode-gallery .productbox-inner > :not(.productbox-images):not(.productbox-rating) {
        order: 2;
    }

    /* Long variation names must wrap instead of widening the mobile page. */
    .slpx-variation-group-selectbox .bootstrap-select .dropdown-menu {
        max-width: calc(100vw - 2rem);
    }

    .slpx-variation-group-selectbox .bootstrap-select .dropdown-menu.inner {
        overflow-x: hidden;
    }

    .slpx-variation-group-selectbox .bootstrap-select .dropdown-item,
    .slpx-variation-group-selectbox .bootstrap-select .dropdown-item .d-flex {
        height: auto;
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: normal;
        -webkit-text-size-adjust: 100%;
        text-size-adjust: 100%;
    }

    .slpx-variation-group-selectbox .bootstrap-select .filter-option-inner-inner,
    .slpx-variation-group-selectbox .bootstrap-select .filter-option-inner-inner .d-flex {
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        -webkit-text-size-adjust: 100%;
        text-size-adjust: 100%;
    }
}
