.single-product .summary table.variations,
.single-product .summary table.variations tbody,
.single-product .summary table.variations tr,
.single-product .summary table.variations th.label,
.single-product .summary table.variations td.value {
    display: block;
    min-width: 0;
    width: 100%;
}

.single-product .summary table.variations {
    margin: 0 0 20px;
}

.single-product .summary table.variations th.label {
    color: var(--storefront-color-ink, #232323);
    font: 500 13px/22px "Montserrat", Arial, sans-serif;
    margin: 0;
    padding: 0;
    text-align: left;
    text-transform: capitalize;
    white-space: normal;
}

.single-product .summary table.variations th.label label {
    color: var(--storefront-color-ink, #232323);
    font: 500 13px/22px "Montserrat", Arial, sans-serif;
    text-transform: capitalize;
}

body.single-product .summary.entry-summary form.variations_form table.variations th.label label::after {
    content: none;
}

.single-product form.variations_form table.variations th.label [data-storefront-selected-separator] {
    color: var(--storefront-color-ink, #232323);
    font-weight: 500;
}

.single-product form.variations_form table.variations th.label [data-storefront-selected-value] {
    color: #969696;
    font-weight: 400;
}

.single-product .summary table.variations td.value {
    padding: 0;
}

.single-product form.variations_form .filter-item-list {
    display: block;
    font-size: 0;
    line-height: 0;
    letter-spacing: 0;
    margin: 0;
    padding: 0;
}

.single-product form.variations_form .filter-item-list > li {
    display: inline-block;
    margin: 5px 10px 10px 0;
    max-width: 100%;
    vertical-align: top;
}

.single-product form.variations_form .filter-item-list .filter-item {
    background: #fff;
    border: 1px solid #cbcbcb;
    border-radius: 0;
    box-sizing: border-box;
    color: var(--storefront-color-ink, #232323);
    display: block;
    font:400 13px/40px "Montserrat", Arial, sans-serif;
    height:40px;
    letter-spacing:.02em;
    margin: 0;
    max-width: 100%;
    min-height: 40px;
    min-width: 40px;
    padding:0 10px;
    text-align: center;
    text-transform: capitalize;
    white-space: normal;
    overflow-wrap: normal;
    transition:all .3s ease;
}

.single-product form.variations_form .filter-item-list .filter-item:hover {
    background:#fff;
    border-color: #cbcbcb;
}

.single-product form.variations_form .filter-item-list .filter-item[data-availability="out_of_stock"] {
    background: #fff;
    border-color: #cbcbcb;
    opacity: .5;
    overflow: hidden;
    position: relative;
}

html body.single-product .summary.entry-summary .filter-item-list > li > a.variation-option--out-of-stock::before {
    background-color:#e95144;
    content: "";
    height: 1px;
    left: -10px;
    pointer-events: none;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(-45deg);
    width: calc(100% + 20px);
    z-index: 1;
}

.single-product form.variations_form .filter-item-list > li.active > .filter-item {
    background: #ffc107;
    border-color:#000;
    color:#000;
    box-shadow: none;
}

@media (max-width: 551px) {
    .single-product form.variations_form .filter-item-list > li {
        margin-right: 6px;
    }
}
