h1.cart-header {
    margin-bottom: 20px;
}

.container .woocommerce {
    width: 100%;
}

.woocommerce-cart .cart-wrap {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    align-items: flex-start;
    gap: 20px;
}

.woocommerce-notices-wrapper {
    width: 100%;
    grid-column: span 12;
}

.woocommerce-cart .woocommerce-cart-form__contents {
    background: var(--color-white);
    border-radius: var(--border-radius);
    width: 100%;
    grid-column: span 8;
    padding: 20px;
}

.woocommerce-cart .cart_totals {
    width: 100%;
    grid-column: span 4;
}

.woocommerce-cart .woocommerce-cart-form .coupon {
    display: none;
}

.wc-empty-cart-message {
    padding: 20px;
    background: var(--color-info-light);
    border-radius: var(--border-radius-small);
    border-left: solid 10px var(--color-info);
    border-bottom: solid 1px #d7e6f4;
    border-right: solid 1px #d7e6f4;
    border-top: solid 1px #d7e6f4;
    margin-bottom: 20px;
}

.woocommerce-cart p.return-to-shop {
    margin-top: 20px;
}

table.shop_table.shop_table_responsive.cart.woocommerce-cart-form__contents {
    width: 100%;
}

td.product-thumbnail {
    width: 70px;
}

td.product-thumbnail a img {
    object-fit: contain;
    height: auto;
    width: 95%;
    border: solid 1px var(--color-border);
    border-radius: var(--border-radius-xsmall);
    padding: 5px;
}

form.woocommerce-cart-form table.shop_table thead tr th {
    font-size: var(--table-head-size);
    font-weight: var(--table-head-weight);
    text-transform: var(--table-head-transform);
    letter-spacing: var(--table-head-spacing);
    color: var(--color-grey-dark);
    text-align: left;
    border-bottom: solid 1px var(--color-grey);
    padding: 15px 10px;
}

td.product-remove a.remove {
    font-size: 0;
    width: 30px;
    height: 30px;
    display: flex;
    margin: auto;
    background-color: transparent;
    background-image: url(/wp-content/themes/webko-b2b/assets/images/icons/trash.svg);
    background-repeat: no-repeat;
    background-size: 14px;
    background-position: center;
    opacity: .3;
    transition: .2s ease;
}

td.product-remove a.remove:hover {
    opacity: 1;
}

td.product-name a {
    color: var(--color-text);
    font-weight: var(--font-weight-semibold);
    text-decoration: none;
}

td.product-name .product-name-container {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

td.product-price .qty-discount-price,
td.product-subtotal .qty-discount-price {
    font-size: var(--font-size-xsmall);
    color: var(--color-text-light);
    text-decoration: line-through;
}


td.product-name span {
    font-size: var(--font-size-xsmall);

    &.product-sku {
        color: var(--color-text-light);
    }
}

tr.woocommerce-cart-form__cart-item.cart_item td:not(.product-remove) {
    padding: 20px 10px;
}

tr.woocommerce-cart-form__cart-item.cart_item td {
    border-bottom: dashed 1px var(--color-border);
}

form.woocommerce-cart-form table.shop_table thead tr th.product-subtotal,
tr.woocommerce-cart-form__cart-item.cart_item td.product-subtotal {
    text-align: right;
}

.cart_totals {
    display: flex;
    flex-direction: column;
    gap: 20px;
    background: var(--color-white);
    border-radius: var(--border-radius);
    padding: 20px;
    box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.06);
}

.cart_totals h2 {
    text-align: center;
}

.cart_totals a.checkout-button {
    width: 100%;
}

.cart_totals a.checkout-button.button.alt.wc-forward:before {
    content: "";
    margin-right: 10px;
    margin-left: -10px;
    width: 18px;
    height: 18px;
    background-image: url(/wp-content/themes/webko-b2b/assets/images/icons/cart-white.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.cart_totals table.shop_table tbody tr th {
    text-align: left;
    font-weight: normal;
}

.cart_totals table.shop_table tbody tr td {
    text-align: right;
}

.cart_totals table.shop_table tbody tr th,
.cart_totals table.shop_table tbody tr td {
    padding: 5px 0px;
}

.cart_totals table.shop_table tbody tr.tax-rate th,
.cart_totals table.shop_table tbody tr.tax-rate td {
    padding-bottom: 15px;
}

.cart_totals table.shop_table tbody tr.order-total th {
    font-weight: bold;
    padding-top: 20px;
    border-top: dashed 1px var(--color-border);
}

.cart_totals table.shop_table tbody tr.order-total td {
    font-size: 18px;
    padding-top: 10px;
    border-top: dashed 1px var(--color-border);
}

.wc-proceed-to-checkout {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.shipping-label {
    border: solid 1px var(--color-grey);
    border-radius: var(--border-radius-small);
    padding: 10px 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: var(--color-text-light);
}

.shipping-label:before {
    content: "";
    background-image: url(/wp-content/themes/webko-b2b/assets/images/icons/shipping.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 20px;
    height: 20px;
    opacity: .6;
}

.woocommerce-cart-form .payment-icons {
    justify-content: space-between;
}

.woocommerce-cart-form .payment-icons img {
    border: solid 1px var(--color-grey);
    flex: 1;
    height: 35px;
    border-radius: var(--border-radius-xsmall);
}

.cart-collaterals .cross-sells {
    border-top: solid 1px var(--color-border-colored);
    padding-top: 40px;
    margin-top: 40px;
}

.cart-collaterals .cross-sells h2 {
    margin-bottom: 20px;
}

a.button.continue-shopping-button {
    width: 100%;
}

@media (max-width: 1124px) {
    .woocommerce-cart .item-quantity-group.small {
        width: auto;
        margin: 0;
    }
}

@media (max-width:1119px) {

    .woocommerce-cart .woocommerce-cart-form__contents,
    .woocommerce-cart .cart_totals,
    .woocommerce-cart form.woocommerce-cart-form,
    .woocommerce-cart .cart-collaterals {
        grid-column: span 12;
    }

    .woocommerce-cart form.woocommerce-cart-form {
        margin-bottom: 40px;
    }
}

@media (max-width: 1024px) {

    .woocommerce-cart table:not(table.woocommerce-table--order-details.shop_table,
        .woocommerce .woocommerce-product-attributes,
        .cart_totals .shop_table,
        .woocommerce .variations_form table.variations,
        .woocommerce-table--order-details,
        .woocommerce-checkout-review-order-table,
        .woocommerce-grouped-product-list) thead {
        display: none;
    }

    tr.woocommerce-cart-form__cart-item.cart_item td {
        border-bottom: none;
    }
}

@media (max-width: 767px) {

    /* Hide the product price and only show the subtotal on mobile */
    .woocommerce-cart-form__contents td.product-price {
        display: none !important;
    }
}

@media (max-width: 767px) {
    .woocommerce-cart-form {
        flex: 0 0 100%;
    }

    .woocommerce-cart-form__contents tbody {
        display: flex;
        flex-direction: column;
        gap: var(--bde-woo-cart-rows-spacing, 20px);
        padding: var(--bde-woo-base-medium-gaps);
    }

    .woocommerce-cart-form__contents tbody tr td {
        padding: 0;
    }

    .woocommerce-cart tr.woocommerce-cart-form__cart-item.cart_item {
        border-bottom: dashed 1px var(--color-border);
    }

    .woocommerce-cart-form__contents tr.woocommerce-cart-form__cart-item {
        display: grid;
        column-gap: var(--bde-woo-base-medium-gaps);
        grid-template-columns: var(--bde-woo-cart-thumbnail-size, 96px) 1fr 20px;
    }

    .woocommerce-cart-form__contents tbody tr.woocommerce-cart-form__cart-item td {
        padding: 10px 0 !important;
    }

    .woocommerce-cart-form__contents tbody tr.woocommerce-cart-form__cart-item td.product-name {
        padding-left: 15px !important;
    }

    .woocommerce-cart-form__contents td.product-name {
        padding-bottom: 5px;
    }

    .woocommerce-cart-form__contents td.product-thumbnail {
        width: 100%;
        grid-area: span 3;
    }

    .woocommerce-cart-form__contents td.product-thumbnail a {
        width: 100%;
    }

    .woocommerce-cart-form__contents td.product-thumbnail img {
        width: 100%;
        height: auto;
    }

    tr.woocommerce-cart-form__cart-item.cart_item td.product-subtotal {
        grid-column: span 2;
        margin-top: var(--bde-woo-base-standard-gaps);
    }

    .woocommerce-cart-form__contents td.product-quantity {
        order: 2;
        grid-column: span 2;
        margin-top: var(--bde-woo-base-standard-gaps);
        text-align: right;
    }

    .woocommerce-cart-form__contents td.product-remove {
        grid-column: 3;
        grid-row: 1;
        padding: 0;
    }

    .actions {
        display: flex;
    }

    .actions .button {
        width: 100%;
    }

    .actions .coupon {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
    }
}

.woocommerce button[name="update_cart"],
.woocommerce input[name="update_cart"] {
    display: none;
}

.free-shipping-notice {
    position: relative;
    background: #D6FFEE;
    border: 1px solid #6c9d8933;
    border-radius: 6px;
    padding: 15px 20px 15px 27px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
    font-size: 16px;
    font-weight: bold;
    overflow: hidden;
}

.free-shipping-notice:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 7px;
    height: 100%;
    background: #52CB98;
}