.product__details-wrapper
{
    background: #f8f8f8;
    padding: 40px 0 60px;
    margin-bottom: 64px;
}

.product__details--pic
{
    position: relative;
}

.product__details--pic span.onsale
{
    background-color: #be0000 !important;
    padding: 6px 25px;
    border-radius: unset !important;
    line-height: 2.5 !important;
}

.product__details--pic .woocommerce-product-gallery
{
    width: 100% !important;
}

.product__details--pic .woocommerce-product-gallery .woocommerce-product-gallery__image
{
    height: 328px;
}

.product__details--pic .woocommerce-product-gallery .woocommerce-product-gallery__image a,
.product__details--pic .woocommerce-product-gallery .woocommerce-product-gallery__image a img
{
    height: 100% !important;
}

.product__details--pic .woocommerce-product-gallery .woocommerce-product-gallery__image a img
{
    object-fit: contain;
}

.product__details--pic .flex-control-nav.flex-control-thumbs
{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.woocommerce div.product .woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1)
{
    clear: none !important;
}

.product__details--pic .flex-control-nav.flex-control-thumbs li
{
    width: auto !important;
}

.product__details--pic .flex-control-nav.flex-control-thumbs li img
{
    height: 64px !important;
    width: 64px !important;
    object-fit: cover;
}

.product__details__text
{
    text-align: left;
}

.product__details__option--item
{
    display: flex;
    align-items: center;
    gap: 32px;
}

.woocommerce div.product form.cart .variations
{
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.product__details__option--item > span
{
    min-width: 64px;
}

.product__details__option--item .cfvsw-swatches-container[swatches-attr*="attribute_pa_color"] .cfvsw-swatches-option
{
    height: 30px;
    width: 30px;
    border-radius: 50%;
    position: relative;
    margin-right: 10px;
    margin-bottom: 0;
    cursor: pointer;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #e5e5e5;
    background: transparent;

    transition: border-color .3s;
}

.product__details__option--item .cfvsw-swatches-container[swatches-attr*="attribute_pa_color"] .cfvsw-swatches-option .cfvsw-swatch-inner
{
    border: none;
}

.product__details__option--item .cfvsw-swatches-option.cfvsw-label-option
{
    color: #111111;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    border: 1px solid #e5e5e5;
    padding: 6px 15px;
    margin-bottom: 0;
    margin-right: 5px;
    cursor: pointer;

    display: flex;
    align-items: center;
    justify-content: center;

    transition: border-color .3s;
}

.product__details__option--item .cfvsw-swatches-option.cfvsw-label-option:not(.cfvsw-swatches-blur):hover,
.product__details__option--item .cfvsw-swatches-container[swatches-attr*="attribute_pa_color"] .cfvsw-swatches-option:not(.cfvsw-swatches-blur):hover,
.product__details__option--item .cfvsw-swatches-container[swatches-attr*="attribute_pa_color"] .cfvsw-swatches-option.cfvsw-selected-swatch
{
    border-color: #111;
}

.product__details__option--item .cfvsw-swatches-option.cfvsw-label-option.cfvsw-selected-swatch
{
    background: #111;
    color: #fff;
}

.reset_variations,
.product__details-wrapper .added_to_cart
{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: max-content;

    padding: 6px 25px;
    color: #111;
    border: 1px solid transparent;
    background: transparent;

    transition: color .3s, border-color .3s, background .3s;

    font-size: 16px !important;
}

.product__details-wrapper a.added_to_cart
{
    position: relative !important;
    display: flex !important;
    top: 10px;
    padding-top: 8px !important;
    padding-bottom: 10px !important;
}

.reset_variations:hover,
.product__details-wrapper .added_to_cart:hover
{
    color: #111;
    border-color: #111;
    background: #fff;
}

.product__details__cart__option .quantity
{
    background: #fff;
}

.primary-btn.single_add_to_cart_button.button
{
    display: inline-block !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    padding: 14px 30px !important;
    color: #ffffff !important;
    background: #000000 !important;
    letter-spacing: 4px !important;
    border-radius: 0 !important;
    border: none !important;
}

.primary-btn.single_add_to_cart_button.button.disabled
{
    opacity: .5;
}

.woocommerce-variation-price .price
{
    display: block;
    margin-bottom: 16px;
}

.woocommerce-variation-price .price,
.woocommerce-variation-price .price bdi
{
    color: #0d0d0d !important;
    font-weight: 700;
    font-size: 30px;
}

.woocommerce-variation-price .price del bdi
{
    font-size: 20px;
}

.woocommerce-variation-price .price ins bdi
{
    color: red !important;
}

.product__details__btns__option--link
{
    display: flex !important;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border: 1px solid transparent;
    background: transparent;

    padding: 6px 15px;
    line-height: 26px;

    margin: 0 !important;

    transition: color .3s, border-color .3s, background .3s;
}

.product__details__btns__option--link svg
{
    width: 30px !important;
    height: 30px !important;
}

.product__details__btns__option--link span:first-child
{
    display: flex;
}

.product__details__btns__option--link > *
{
    margin: 0 !important;
}

.product__details__btns__option--link svg path
{
    /*fill: #3d3d3d;*/
    transition: fill .3s;
}

.product__details__btns__option--link:hover
{
    color: #111;
    background: #fff;
    border-color: #111;
}

.product__details__btns__option--link:hover svg path
{
    /*fill: #111;*/
}

.product__details__last__option ul
{
    padding-top: 0;
}

.product_meta .posted_in
{
    font-size: 15px;
    color: #b7b7b7;
}

.product__details__last__option ul li span span,
.product__details__last__option ul li span a,
.woocommerce-product-attributes-item__value a,
.product_meta .posted_in a
{
    color: #111;
}

.product__details__last__option ul li span a,
.woocommerce-product-attributes-item__value a,
.product_meta .posted_in a
{
    position: relative;
}

.product__details__last__option ul li span a:after,
.woocommerce-product-attributes-item__value a:after,
.product_meta .posted_in a:after
{
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    background: #e53637;
    content: "";
    -webkit-transition: all, 0.5s;
    -o-transition: all, 0.5s;
    transition: all, 0.5s;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
}

.product__details__last__option ul li span a:hover:after,
.woocommerce-product-attributes-item__value a:hover:after,
.product_meta .posted_in a:hover:after
{
    transform: scale(1);
}

.product__details__tab__content > *
{
    margin-bottom: 16px;
}

.product__details--pic .flex-direction-nav
{
    position: absolute;
    top: 128px;

    list-style: none;
    padding: 0;
    margin: 0;

    width: 100%;
    display: flex;
    justify-content: space-between;

    pointer-events: none;
}

.product__details--pic .flex-direction-nav .flex-prev,
.product__details--pic .flex-direction-nav .flex-next
{
    pointer-events: fill;

    display: flex;
    align-items: center;
    justify-content: center;
}

.product__details--pic .flex-direction-nav .flex-prev svg,
.product__details--pic .flex-direction-nav .flex-next svg
{
    width: 32px;
    height: 32px;

    transition: transform .3s;
}

.product__details--pic .flex-direction-nav .flex-prev svg path,
.product__details--pic .flex-direction-nav .flex-next svg path
{
    fill: #111;
}

.product__details--pic .flex-direction-nav .flex-prev:hover svg,
.product__details--pic .flex-direction-nav .flex-next:hover svg
{
    transform: scale(1.2);
}

.product__details .rating
{
    display: flex;
    align-items: center;
    gap: 4px;
}

.product__details .rating .star-rating
{
    float: unset !important;
    margin-top: -3px;
}

.product__details .rating .star-rating span
{
    margin-left: 0;
}

.woocommerce div.product p.stock
{
    font-size: 20px;
    color: #00c205;
    font-weight: 600;
}

.woocommerce div.product p.stock.out-of-stock
{
    color: #c20000;
}

.product__details-wrapper .product__details
{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 64px;
}

.woocommerce div.product form.cart div.quantity
{
    margin-bottom: 4px !important;
}

.product__details__tab .nav-tabs
{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0 50px;
}

.product__details__tab .nav-tabs .nav-item
{
    margin-right: 0;
}

@media only screen and (max-width: 767px) {
    .product__details-wrapper .product__details
    {
        display: flex;
        flex-direction: column;
        gap: 32px;
    }

    .product__details .product__details__btns__option--link
    {
        width: 100%;
    }
}