.woocommerce-breadcrumb {
    display: block;
    width: 100%;
    padding: 1em 1.5em;
    /* color: var(--main_light-text-color); */
    color: #999;
    /* background-color: var(--main_dark-sub-bgcolor); */

    /* border-bottom: 1px solid var(--line_dark-color); */
    font-size: min(.8em, 3vw);
    /* margin-bottom: 2em; */
}

.woocommerce-breadcrumb a {
    /* color: var(--main_light-text-color); */
    color: var(--brand-color);
}


.woocommerce-page .pagetitle-wrp {
    width: 100%;
}

.woocommerce-page .pagetitle-wrp .title {
    width: 100%;
    margin-bottom: 2em;
    font-size: min(1.8em, 5.5vw);
    color: var(--brand-color);
}

.woocommerce-page .pagetitle-wrp .title.en {
    font-size: min(2em, 5.5vw);
}

.button {
    display: inline-block;
    min-width: 200px;
    font-size: 16px;
    /* background-color: var(--main_subcolor);
    color: var(--text-color) !important; */
    background-color: var(--brand-color);
    color: var(--brand-text-color) !important;
    margin-top: 1em;
    margin-bottom: 1em;
    padding: .75em 1em;
    border-radius: 3px;
    text-align: center;
}

/* result wrapper archive */
.shop-archive-result-wrp {
    padding: .5em 0;
    margin-bottom: 1em;
}

.woocommerce-result-count {
    /* font-size: min(.8em, 3vw); */
    display: none;
}

.ordering-wrp {
    width: 100%;
    display: flex;
    justify-content: end;
}

.ordering-wrp .orderby {
    font-size: min(.8em, 14px);
}

.woocommerce .products ul,
.woocommerce ul.products {
    display: grid;
    resize: both;
    gap: 3em 2em;
    margin: 0;
    padding: 0;
}

@media (max-width:767px) {

    .woocommerce .products ul,
    .woocommerce ul.products {
        gap: 1em;
    }
}

.woocommerce .products ul.columns-2,
.woocommerce ul.products.columns-2 {
    grid-template-columns: repeat(2, 1fr);
}

.woocommerce .products ul.columns-3,
.woocommerce ul.products.columns-3 {
    grid-template-columns: repeat(3, 1fr);
}

.woocommerce .products ul.columns-4,
.woocommerce ul.products.columns-4 {
    grid-template-columns: repeat(4, 1fr);
}

@media (max-width:767px) {

    .woocommerce .products ul.columns-3,
    .woocommerce ul.products.columns-3,
    .woocommerce .products ul.columns-4,
    .woocommerce ul.products.columns-4 {
        grid-template-columns: repeat(2, 1fr);
    }
}

.woocommerce .products ul.columns-5,
.woocommerce ul.products.columns-5 {
    grid-template-columns: repeat(5, 1fr);
}

.woocommerce .products ul.columns-6,
.woocommerce ul.products.columns-6 {
    grid-template-columns: repeat(6, 1fr);
}

@media (max-width:767px) {

    .woocommerce .products ul.columns-5,
    .woocommerce ul.products.columns-5,
    .woocommerce .products ul.columns-6,
    .woocommerce ul.products.columns-6 {
        grid-template-columns: repeat(1, 1fr);
        padding: 0 .5em;
    }
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    margin: 0;
    padding: 0;
    position: relative;
}

@media (max-width:767px) {

    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product {
        width: auto;
    }
}

.woocommerce ul.products li.product a.woocommerce-loop-product__link {
    display: block;
    width: 100%;
}

@media (max-width:767px) {

    .woocommerce .products ul.columns-5 li.product a.woocommerce-loop-product__link,
    .woocommerce ul.products.columns-5 li.product a.woocommerce-loop-product__link,
    .woocommerce .products ul.columns-6 li.product a.woocommerce-loop-product__link,
    .woocommerce ul.products.columns-6 li.product a.woocommerce-loop-product__link {
        display: flex;
    }
}

.woocommerce ul.products li.product a.woocommerce-loop-product__link img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.woocommerce .product_meta {
    padding: 1em 0;
}

.woocommerce .product_meta .sku_wrapper,
.woocommerce .product_meta .posted_in,
.woocommerce .product_meta .sippingclass {
    font-size: min(.8em, 3vw);
}

.woocommerce .product_meta .posted_in a {
    color: var(--brand-color);
}

.woocommerce ul.products li.product .product_meta {
    padding: min(1em, 2.5vw);
}

@media (max-width:767px) {

    .woocommerce .products ul.columns-5 li.product .thumb-wrp,
    .woocommerce ul.products.columns-5 li.product .thumb-wrp,
    .woocommerce .products ul.columns-6 li.product .thumb-wrp,
    .woocommerce ul.products.columns-6 li.product .thumb-wrp {
        width: 28%;
    }

    .woocommerce .products ul.columns-5 li.product .product_meta,
    .woocommerce ul.products.columns-5 li.product .product_meta,
    .woocommerce .products ul.columns-6 li.product .product_meta,
    .woocommerce ul.products.columns-6 li.product .product_meta {
        width: 68%;
    }
}

.woocommerce ul.products li.product a.woocommerce-loop-product__link .woocommerce-loop-product__title {
    display: flex;
    width: 100%;
    font-size: min(1em, 4vw);
    padding: .5em 0;
}

.woocommerce ul.products li.product a.woocommerce-loop-product__link .price {
    font-size: min(.8em, 4vw);
}

/* pagenation */
.woocommerce-pagination {
    width: 100%;
    margin: 3em auto;
}

.woocommerce-pagination .page-numbers {
    display: flex;
    justify-content: center;
    margin: 0 auto;
}

.woocommerce-pagination .page-numbers li .page-numbers {
    border: 1px solid var(--line_color);
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
    margin: 1em .5em;
    width: 2.4em;
    height: 2.4em;
}

.woocommerce-pagination .page-numbers li .page-numbers.current {
    opacity: .5;
}

/* up sells */
.up-sells.products,
.related.products {
    width: 100%;
    margin-top: 2em;
    padding: 2em 0;
    border-top: 1px solid var(--line_color);
    /* fix font-size */
    font-size: 80%;
}

@media (max-width:767px) {

    .up-sells.products,
    .related.products {
        margin-top: 1em;
        padding: 1em 0;
        /* fix font-size */
        font-size: 100%;
    }
}

.up-sells.products>h2,
.related.products>h2 {
    text-align: center;
    padding: .5em;
    margin-bottom: 1em;
}

/* product page */
.woocommerce .single_product-wrp {
    position: relative;
    width: 100%;
    margin-bottom: 5em;
}

@media (max-width:767px) {
    .woocommerce .single_product-wrp {
        display: block;
        margin-bottom: 0;
    }
}

/* product image */
.woocommerce div.product div.images.woocommerce-product-gallery {
    width: 55%;
}

@media (max-width:767px) {
    .woocommerce div.product div.images.woocommerce-product-gallery {
        width: 100%;
    }
}

.woocommerce-product-gallery__trigger {
    display: none;
}

.woocommerce-product-gallery__image {
    width: 100%;
    aspect-ratio: 1/1;
}

.woocommerce-product-gallery__image a {
    display: block;
    width: 100%;
    aspect-ratio: 1/1;
    overflow: hidden;
}

.woocommerce-product-gallery__image a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* product gallery thumbnails */
.woocommerce-product-gallery .flex-control-thumbs {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
}

.woocommerce-product-gallery .flex-control-thumbs li {
    width: 25%;
    aspect-ratio: 1/1;
}

.woocommerce-product-gallery .flex-control-thumbs li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* summary */
.entry-summary {
    width: 45%;
}

@media (max-width:767px) {
    .entry-summary {
        width: 100%;
    }
}

.product_summary-inner {
    padding: 15%;
    position: sticky;
    top: 0;
}

@media (max-width:767px) {
    .product_summary-inner {
        padding: 1em;
    }
}

.product_summary-inner .quantity {
    margin: 1em 0 0;
}

.quantity .qty {
    padding: .5em;
    width: 6em;
    font-size: 16px;
}

.single_add_to_cart_button {
    width: 100%;
}

/* price --share-- */
.woocommerce-Price-amount {
    font-size: min(1.2em, 4vw);
}

.woocommerce-Price-amount .woocommerce-Price-currencySymbol,
.woocommerce-price-suffix {
    font-size: .8em;
}

.woocommerce-Price-amount .woocommerce-Price-currencySymbol {
    display: inline-block;
    padding-right: .2em;
}

.woocommerce-product-details__short-description {
    margin: 1.5em 0;
}

.woocommerce-product-details__short-description p {
    margin: 1.5em 0;
    font-size: min(.9em, 3.5vw);
    line-height: 1.8;
}

/* summary features */
.features-wrp {
    margin: 1.5em 0;
}

.features-wrp .custom-features-title {
    margin-bottom: .5em;
    border-bottom: 1px solid var(--line_color);
    padding-bottom: .5em;
}

.features-wrp .custom-features {
    font-size: min(.85em, 3.5vw);
    line-height: 1.8;
    letter-spacing: .05em;
    text-align: justify;
}

/* woocommerce message error varidation */
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-message,
.woocommerce-error {
    padding: 1em 2em;
    border: 1px solid var(--line_color);
    margin-bottom: 1em;
    background-color: rgba(255, 255, 255, .2);
    border-radius: 3px;
}

.woocommerce-notices-wrapper .woocommerce-info .button,
.woocommerce-message .button,
.woocommerce-error .button {
    font-size: min(.8em, 3vw);
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 1em;
}

.cart-empty.woocommerce-info {
    display: block;
    margin: 1em 0;
}

.woocommerce-error li {
    font-size: min(.9em, 3.5vw);
}

.woo-error {
    font-size: min(.75em, 3vw);
    padding: .5em 1em;
    background-color: var(--color_red);
    display: inline-block;
    position: absolute;
    top: -.5em;
    right: 0;
    border-radius: 3em;
}