.woocommerce-cart .site.grid-container {
    padding: 0 15px;
}

.woocommerce-cart table.shop_table_responsive .quantity.buttons-added .qty {
    margin: auto 8px !important;
    border-radius: 16px !important;
    padding: 8px !important;
    min-width: 56px;
}

.woocommerce-cart .content-area .entry-content,
.woocommerce-cart .content-area .entry-header{
    margin-top: 60px;
}

.woocommerce-cart .woocommerce-cart-form{
    margin-bottom: 60px;
}

.woocommerce-cart table.shop_table_responsive .quantity.buttons-added .minus {
    border-radius: 32px !important;
    background: var(--gray-200) !important;
    border: 0 !important;
    font-size: 35px;
    color: var(--gray-500) !important;
}

.woocommerce-cart table.shop_table_responsive .quantity.buttons-added .plus {
    border-radius: 32px !important;
    background: var(--primary-light) !important;
    border: 0 !important;
    color: var(--dark-brown) !important;
    font-size: 35px;
}

.woocommerce-cart table.shop_table_responsive tr:nth-child(2n) td, .woocommerce-page table.shop_table_responsive tr:nth-child(2n) td{
    background-color: unset;
}
.woocommerce-cart .woocommerce .wc-block-grid__products{
    margin: 0;
}

.checkout-best-sellers > ul {
    margin: 0;
}

.checkout-best-sellers li {
    border-radius: 6px;
    box-shadow: 0px 0px 15px 0px rgba(25, 23, 20, 0.08);
    padding-bottom: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.checkout-best-sellers li img {
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
}

.checkout-best-sellers li h2 a {
    font-size: 15px;
    font-weight: 500;
}

.checkout-best-sellers li h2 {
    line-height: normal!important;
    padding: 0 16px;
    margin-bottom: 16px!important;
}

.checkout-best-sellers li .wp-block-woocommerce-product-price > div.wc-block-components-product-price {
    font-size: 14px!important;
}

.checkout-best-sellers li .wp-block-woocommerce-product-price > div.wc-block-components-product-price span {
    font-weight: 700;
    font-size: 20px;
}

.checkout-best-sellers li div.wp-block-woocommerce-product-price {
    margin-bottom: 24px;
}

.checkout-best-sellers li a.wc-block-components-product-button__button.add_to_cart_button {
    width: 100%;
    background-color: var(--primary);
    border-radius: 24px;
    padding: 16px 24px;
}

.checkout-best-sellers li .wp-block-button.wc-block-components-product-button {
    padding: 0 16px;
}
.checkout-best-sellers li a.wc-block-components-product-button__button.add_to_cart_button:after {
    content: "Ver detalles";
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.68px;
    line-height: normal;
}
.checkout-best-sellers li a.wc-block-components-product-button__button.add_to_cart_button span{
    display: none;
}

body.woocommerce-cart.woocommerce-page .inside-article{
    /*max-width: 1320px !important;*/
    margin: 0 auto 60px auto;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce table thead tr th {
    color: var(--gray-900);
    font-family: Raleway, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    letter-spacing: 2.4px;
    text-transform: uppercase;
    background: var(--white);
    border-bottom: 1px solid var(--primary-light);
    padding-bottom: 24px;
    min-height: 64px;
    text-align: left;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce table thead tr th:last-child{
    padding-right: 0!important;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce table tbody tr td.product-name {
    color: var(--gray-900);
    font-family: Raleway, sans-serif;
    font-size: 15px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce table tbody tr td.product-price {
    color: var(--gray-700);
    font-family: Raleway, sans-serif;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce table tbody tr td.product-subtotal {
    color: var(--gray-900);
    font-family: Raleway, sans-serif;
    font-size: 15px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce table tbody tr td.product-thumbnail a img {
    min-width: 100px;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce table tbody tr td.product-remove .remove {
    font-size: 0;
    border: 0 !important;
    width: 32px;
    height: 32px;
    background: url("../icons/trash-2.png") no-repeat !important;
    border-radius: 0;
    background-position: center !important;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce .cart-collaterals .cart_totals {
    width: 100%;
    float: left;
    margin: 0 auto 60px auto;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce .cart-collaterals .cart_totals h2 {
    color: var(--gray-900);
    font-family: Raleway, sans-serif;
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-top: 30px;
    text-align: left;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce .cart-collaterals .cart_totals table tbody tr td {
    text-align: right;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce .cart-collaterals .cart_totals .shop_table tbody tr.cart-subtotal th, body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce .cart-collaterals .cart_totals .shop_table tbody tr.woocommerce-shipping-totals.shipping th, body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce .cart-collaterals .cart_totals .shop_table tbody tr.order-total th {
    background: var(--white);
    border-bottom: 1px solid #e2e2e2; /* Color no esta en la libreria */
    padding-left: 0;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce .cart-collaterals .cart_totals .shop_table tbody tr.cart-subtotal td, body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce .cart-collaterals .cart_totals .shop_table tbody tr.woocommerce-shipping-totals.shipping td, body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce .cart-collaterals .cart_totals .shop_table tbody tr.order-total td {
    font-family: Raleway, sans-serif;
    font-size: 16px;
    font-style: normal;
    line-height: 24px;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce table tbody tr td.actions .coupon .screen-reader-text {
    width: auto;
    height: auto;
    overflow: visible;
    display: block;
    position: relative !important;
    clip-path: unset !important;
    text-align: left;
    color: var(--gray-900);
    font-family: Raleway, sans-serif;
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-top: 30px;
    margin-bottom: 24px;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce table tbody tr td.actions .coupon #coupon_code {
    color: var(--gray-600);
    font-family: Raleway, sans-serif;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    min-width: 221px;
    border-radius: 16px;
    border: 1px solid var(--primary-light);
    background: var(--white);
    margin-right: 24px;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce table tbody tr td.actions .coupon .button {
    display: flex;
    padding: 14px 24px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border-radius: 32px !important;
    background: var(--gray-200);
    color: var(--gray-700);
    text-align: center;
    font-family: Raleway, sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 1.68px;
    text-transform: uppercase;
    margin: 0;
    border: 0;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce table tbody tr td.actions .button {
    border-radius: 24px !important;
    border: 1px solid var(--dark-brown);
    height: 48px;
    color: var(--dark-brown);
    text-align: center;
    font-family: Raleway, sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 1.68px;
    text-transform: uppercase;
    background: var(--white);
    margin-top: 30px;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce table tbody tr td.actions .button:hover {
    background: var(--primary-light);
    border-color: var(--primary-light);
    color: var(--gray-700);
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button {
    display: flex;
    width: 234px;
    padding: 16px 24px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border-radius: 24px !important;
    background: var(--primary);
    color: var(--white);
    text-align: center;
    font-family: Raleway, sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 1.68px;
    text-transform: uppercase;
    margin-top: 0;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button:hover {
    background: var(--primary-light);
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce table tbody tr td.actions .coupon small {
    display: block;
    text-align: left;
    overflow: hidden;
    color: var(--gray-900);
    text-overflow: ellipsis;
    font-family: Raleway, sans-serif;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    margin-bottom: 24px;
}
.woocommerce table.cart td.actions, .woocommerce-page #content table.cart td.actions, .woocommerce-page table.cart td.actions {
    padding-bottom: 50px;
}
.woocommerce-page .wc-block-product-best-sellers .wc-block-grid__products .wc-block-grid__product {
    border-radius: 8px;
    background: var(--white);
    box-shadow: 0 0 15px 0 rgba(25, 23, 20, 0.08);
    max-width: calc(25% - 24px);
    border: unset;
    margin: 0;
}

.woocommerce-cart .wc-block-grid__products{
    justify-content: space-between;
}

.woocommerce-cart .wc-block-grid__products .wc-block-grid__product-image img{
    border-top-right-radius: 8px;
    border-top-left-radius: 8px;
}
.woocommerce-page .wc-block-product-best-sellers .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-title {
    color: var(--gray-900);
    text-align: center;
    font-family: Raleway, sans-serif;
    font-size: 15px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
    margin-top: 32px;
    min-height: 40px;
    padding: 0 16px;
}
.woocommerce-page .wc-block-product-best-sellers .wc-block-grid__products .wc-block-grid__product a {
    text-decoration: none;
}
.woocommerce-page .wc-block-product-best-sellers .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-price.price {
    color: var(--gray-900);
    font-family: Raleway, sans-serif;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 140%;
    margin: 16px auto 24px auto;
}
.woocommerce-page .wc-block-product-best-sellers .wc-block-grid__products .wc-block-grid__product .wp-block-button.wc-block-grid__product-add-to-cart a {
    border-radius: 24px;
    background: var(--primary);
    color: var(--white);
    text-align: center;
    font-family: Raleway, sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: 1.68px;
    text-transform: uppercase;
    text-decoration: none;
    width: 90%;
    display: flex;
    padding: 16px 24px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    flex: 1 0 0;
}
.woocommerce-page .wc-block-product-best-sellers .wc-block-grid__products .wc-block-grid__product .wp-block-button.wc-block-grid__product-add-to-cart a:hover {
    background: var(--primary-light);
}
.wp-block-woocommerce-mini-cart-items-block.wc-block-mini-cart__items td.wc-block-cart-item__product .wc-block-components-product-metadata .wc-block-components-product-metadata__description {
    display: none;
}
.block-resume .shop_table.woocommerce-checkout-review-order-table tbody tr dl.variation dt, .block-resume .shop_table.woocommerce-checkout-review-order-table tbody tr dl.variation dd {
    color: var(--gray-600);
    font-family: Raleway, sans-serif;
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
}
.woocommerce td.product-name dl.variation dt.variation-Detalles {
    display: contents;
}


.woocommerce-cart .coupon {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto;
    gap: 24px;
}
.woocommerce-cart .coupon label {
    grid-column: 1 / -1;
    grid-row: 1;
    font-size: 24px!important;
    font-weight: 500;
}
.woocommerce-cart .coupon p {
    grid-column: 1 / -1;
    grid-row: 2;
    margin-bottom: 0;
}
.woocommerce-cart .coupon input {
    grid-column: 1;
    grid-row: 3;
}
.woocommerce-cart .coupon .button {
    grid-column: 2;
    grid-row: 3;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce .cart-collaterals .cart_totals h2:first-child {
    display: none;
}

.woocommerce-cart .shop_table {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.woocommerce-cart thead,
.woocommerce-cart tbody {
    display: contents; /* Mantiene la estructura semántica */
}

.woocommerce-cart tr {
    display: flex; /* Convierte cada fila en un contenedor flexible */
}

.woocommerce-cart th,
.woocommerce-cart td {
    padding: 10px;
    border: 1px solid black;
    text-align: left;
    flex: 1; /* Hace que todas las celdas ocupen el mismo espacio */
}

/* Cambiar el orden de las columnas */
/* La columna product-remove será la última */
.woocommerce-cart th.product-remove {
    order: 2; /* Se moverá al final */
}

.woocommerce-cart td.product-thumbnail {
    order: 1; /* Mantiene la primera columna */
    flex: unset;
}

.woocommerce-cart td.product-name, th.product-name {
    order: 1; /* Segunda columna */
}

.woocommerce-cart td.product-price, th.product-price {
    order: 3; /* Tercera columna */
}

.woocommerce-cart td.product-quantity, th.product-quantity {
    order: 4; /* Cuarta columna */
}

.woocommerce-cart td.product-subtotal, th.product-subtotal {
    order: 5; /* Quinta columna */
}

.woocommerce-cart th.product-thumbnail {
    order: 2;
}

.woocommerce-cart td.product-remove {
    order: 6;
}

.woocommerce-cart td.product-subtotal {
    border-bottom: 1px solid rgba(0,0,0,0.1)!important;
    flex: unset;
    width: 10%;
}

.woocommerce-cart td.product-remove {
    flex: unset;
}

.woocommerce-cart td.product-price {
    flex: unset;
    width: 15%;
}

.woocommerce-cart td.product-quantity {
    flex: unset;
    width: 20%;
}

.woocommerce-cart .custom-cart-totals .cart-summary-wrapper {
    display: flex;
    gap: 20px;
    padding: 10px 0;
}

.woocommerce-cart .cart-summary-coupon, .cart-summary-totals {
    flex: 1;
    max-width: 50%;
}

.woocommerce-cart .cart-summary-totals h3 {
    margin: 0 0 10px;
    font-size: 1.2em;
}

.woocommerce-cart .cart-summary-totals p {
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: space-between;
}

.woocommerce-cart .cart-buttons {
    display: flex;
    justify-content: flex-end;
    gap: 16px;
}

.woocommerce-cart .cart-buttons .button {
    margin-right: 10px;
    padding: 8px 15px;
    text-align: center;
    font-size: 0.9em;
    text-decoration: none;
    display: inline-block;
}

tr:has(.coupon) {
    display: none;
}

.woocommerce-cart tr.custom-cart-totals {
    display: flex;
}

.woocommerce-cart .woocommerce-cart-form table .coupon input[type="text"] {
    border: 1px solid var(--primary-light);
    padding: 8px 8px 8px 16px;
    border-radius: 16px;
    background: var(--gray-white);
    max-width: 221px;
    outline: none;
}
.woocommerce-cart .woocommerce-cart-form table .coupon button[type="submit"] {
    width: fit-content;
    background: var(--gray-200);
    color: var(--gray-700);
    font-weight: 700;
    font-size: 14px;
    border-radius: 32px !important;
    letter-spacing: 1.68px !important;
}
.woocommerce-cart .custom-cart-row button[type="submit"] {
    padding: 16px 24px!important;
    border: 1px solid var(--dark-brown);
    background: transparent;
    color: var(--dark-brown);
    font-weight: 700;
    border-radius: 32px!important;
    margin-left: auto;
    margin-right: 0;
}

.woocommerce-cart td.custom-message {
    text-align: right;
}

.woocommerce-cart .cart-summary-totals {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.woocommerce-cart .cart-summary-price {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.woocommerce-cart p.cart-subtotal {
    border-bottom: 1px solid var(--primary-lighter);
    padding-bottom: 24px;
}


.woocommerce-cart .cart-subtotal strong {
    color: var(--gray-600);
}

.woocommerce-cart .cart-total strong {
    text-transform: uppercase;
}

.woocommerce-cart .cart-total span {
    font-weight: 600;
}

.woocommerce-cart .cart-subtotal span {
    font-weight: 600;
    color: var(--gray-600);
}
.woocommerce-cart a.button.continue-shopping {
    background: transparent!important;
    border: 1px solid var(--dark-brown) !important;
    color: var(--dark-brown) !important;
    font-weight: 600!important;
    padding: 16px 24px!important;
    border-radius: 24px!important;
    letter-spacing: 1.68px!important;
    line-height: normal!important;
}

.woocommerce-cart a.button.checkout {
    border-radius: 24px!important;
    background: var(--primary) !important;
    padding: 16px 24px!important;
    line-height: normal!important;
    font-weight: 700!important;
    letter-spacing: 1.68px!important;
}
.woocommerce-cart .woocommerce table.shop_table{
    border: unset!important;
}
.woocommerce-cart td.custom-message button[type="submit"] {
    background: transparent;
    border: 1px solid var(--dark-brown);
    color: var(--dark-brown) !important;
    font-weight: 700;
    padding: 16px 24px;
    line-height: normal;
}
.woocommerce-cart .cart-summary-totals h3 {
    font-size: 24px;
    color: var(--gray-900);
    font-weight: 500;
}

.woocommerce-cart .cart-summary-totals h3 {
    font-size: 24px;
    color: var(--gray-900);
    font-weight: 500;
}

.woocommerce-cart .cart_item.last > td {
    border: unset!important;
}
.woocommerce-cart-form__cart-item.cart_item .variation dt,
.woocommerce-cart-form__cart-item.cart_item .variation dd{
    font-size: 12px;
    font-weight: 500;
}
#loginModal.modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.6);
}
#loginModal .modal-content {
    background: var(--white);
    padding: 40px;
    margin: 0 auto;
    width: 100%;
    max-width: 558px;
    position: relative;
    border-radius: 8px;
    box-shadow: 0px 42px 64px 0px rgba(0, 0, 0, 0.04);
    top: 50%;
    transform: translate(0px, -50%);
}
#loginModal .close {
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 1.5rem;
    cursor: pointer;
}

#loginModal p {
    position: relative;
    margin: 0!important;
    width: 100%;
}

form#loginform {
    justify-content: center;
    display: flex;
    flex-direction: column;
    gap: 24px;
    align-items: center;
    padding-top: 24px;
    border-bottom: 1px solid var(--primary-lighter);
    padding-bottom: 24px;
    max-width: 350px;
    margin: 0 auto;
}

p.loginTitle {
    font-size: 24px;
    text-align: center;
    font-weight: 600;
    color: var(--gray-900);
}

.loginModalTitleContainer {
    display: flex;
    flex-direction: column;
    gap: 24px;
    justify-content: center;
    align-items: center;
    border-bottom: 1px solid var(--primary-lighter);
    padding-bottom: 24px;
}

p.loginInfo {
    text-align: center;
    font-size: 15px;
    color: var(--gray-700);
    line-height: 160%;
}

p.modalRegister {
    padding-top: 24px;
    font-size: 15px;
}

p.modalRegister a {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 2.4px;
    color: var(--dark-brown);
    text-decoration: underline;
}

#loginform input[type="submit"] {
    background: var(--primary);
    padding: 16px 24px;
    border-radius: 24px;
    width: 100%;
    font-weight: 700;
    letter-spacing: 1.68px;
}

p.login-submit {
    width: 100%;
}

#loginform p:has(input[type="text"]) label.active,
#loginform p:has(input[type="password"]) label.active{
    top: 0;
    padding: 0;
    line-height: normal !important;
    left: 0;
    color: var(--gray-900);
    font-size: 12px;
    position: absolute;
}

#loginform p:has(input[type="text"]) label,
#loginform p:has(input[type="password"]) label {
    position: absolute !important;
    left: 20px;
    top: 28px;
    transition: all 0.2s ease;
    color: var(--gray-700);
    font-size: 15px;
    pointer-events: none;
}
#loginModal .forgot-password{
    font-size: 12px;
    font-weight: 500;
    color: var(--gray-900);
    line-height: normal;
}

#loginform input[type="text"].input,
#loginform input[type="password"].input {
    border: 1px solid var(--primary-light);
    border-radius: 32px;
    padding: 8px 16px;
    width: 100%;
    outline: none;
}

p.forgot-password a {
    font-size: 12px;
}

a.forgot-password {
    font-size: 12px;
    font-weight: 500;
    color: var(--gray-900);
}

#loginModal p:has(input[type="text"]),#loginModal p:has(input[type="password"]) {
    padding-top: 18px;
}

.woocommerce-cart .product-attributes p {
    margin: 0;
    font-size: 12px;
    font-weight: 500;
    line-height: normal;
    text-transform: capitalize;
}

.woocommerce-cart .product-attributes {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.product-name .container {
    display: flex;
}

.product-name .container .product-attributes {
    width: 45%;
}

.product-name .container .custom-product-details {
    width: 55%;
    display: flex;
    flex-direction: column;
}

.product-name .container .custom-product-details span {
    font-size: 12px;
    font-weight: 500;
}


/*ESTILOS TEMPORALES*/
.coupon {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto;
    gap: 24px;
}
.coupon label {
    grid-column: 1 / -1;
    grid-row: 1;
    font-size: 24px!important;
    font-weight: 500;
}
.coupon p {
    grid-column: 1 / -1;
    grid-row: 2;
    margin-bottom: 0;
}
.coupon input {
    grid-column: 1;
    grid-row: 3;
}
.coupon .button {
    grid-column: 2;
    grid-row: 3;
}
body.woocommerce-cart.woocommerce-page .inside-article .entry-content .woocommerce .cart-collaterals .cart_totals h2:first-child {
    display: none;
}
/*ESTILOS TEMPORALES*/

.shop_table {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.woocommerce-cart thead,
.woocommerce-cart tbody {
    display: contents; /* Mantiene la estructura semántica */
}

.woocommerce-cart tr {
    display: flex; /* Convierte cada fila en un contenedor flexible */
}

.woocommerce-cart th,
.woocommerce-cart td {
    padding: 20px 20px 20px 0!important;
    border: 1px solid black;
    text-align: left;
    flex: 1; /* Hace que todas las celdas ocupen el mismo espacio */
}

/* Cambiar el orden de las columnas */
/* La columna product-remove será la última */
.woocommerce-cart th.product-remove {
    order: 2; /* Se moverá al final */
}

.woocommerce-cart td.product-thumbnail {
    order: 1; /* Mantiene la primera columna */
    flex: unset;
}

.woocommerce-cart td.product-name, th.product-name {
    order: 1; /* Segunda columna */
}

.woocommerce-cart td.product-price, th.product-price {
    order: 3; /* Tercera columna */
}

.woocommerce-cart td.product-quantity, th.product-quantity {
    order: 4; /* Cuarta columna */
}

.woocommerce-cart td.product-subtotal, th.product-subtotal {
    order: 5; /* Quinta columna */
}

.woocommerce-cart th.product-thumbnail {
    order: 2;
}

.woocommerce-cart td.product-remove {
    order: 6;
}

.woocommerce-cart td.product-subtotal {
    border-bottom: 1px solid rgba(0,0,0,0.1)!important;
    flex: unset;
    width: 10%;
}

.woocommerce-cart td.product-remove {
    flex: unset;
}

.woocommerce-cart td.product-price {
    flex: unset;
    width: 15%;
}

.woocommerce-cart td.product-quantity {
    flex: unset;
    width: 20%;
}

.custom-cart-totals .cart-summary-wrapper {
    display: flex;
    gap: 20px;
    padding: 10px 0;
}

.cart-summary-coupon, .cart-summary-totals {
    flex: 1;
    max-width: 50%;
}

.cart-summary-totals h3 {
    margin: 0 0 10px;
    font-size: 1.2em;
}

.cart-summary-totals p {
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: space-between;
}

.cart-buttons {
    display: flex;
    justify-content: flex-end;
    gap: 16px;
}

.cart-buttons .button {
    margin-right: 10px;
    padding: 8px 15px;
    text-align: center;
    font-size: 0.9em;
    text-decoration: none;
    display: inline-block;
}

tr:has(.coupon) {
    display: none;
}

tr.custom-cart-totals {
    display: flex;
}

.woocommerce-cart-form table .coupon input[type="text"] {
    border: 1px solid var(--primary-light);
    padding: 8px 8px 8px 16px;
    border-radius: 16px;
    background: var(--gray-white);
    max-width: 221px;
    outline: none;
}
.woocommerce-cart-form table .coupon button[type="submit"] {
    width: fit-content;
    background: var(--gray-200);
    color: var(--gray-700);
    font-weight: 700;
    font-size: 14px;
    border-radius: 32px !important;
    letter-spacing: 1.68px !important;
}
.custom-cart-row button[type="submit"] {
    padding: 16px 24px!important;
    border: 1px solid var(--dark-brown);
    background: transparent;
    color: var(--dark-brown);
    font-weight: 700;
    border-radius: 32px!important;
    margin-left: auto;
    margin-right: 0;
}

td.custom-message {
    text-align: right;
}

.cart-summary-totals {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.cart-summary-price {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

p.cart-subtotal {
    border-bottom: 1px solid var(--primary-lighter);
    padding-bottom: 24px;
}


.cart-subtotal strong {
    color: var(--gray-600);
}

.cart-total strong {
    text-transform: uppercase;
}

.cart-total span {
    font-weight: 600;
}

.cart-subtotal span {
    font-weight: 600;
    color: var(--gray-600);
}
a.button.continue-shopping {
    background: transparent!important;
    border: 1px solid var(--dark-brown) !important;
    color: var(--dark-brown) !important;
    font-weight: 600!important;
    padding: 16px 24px!important;
    border-radius: 24px!important;
    letter-spacing: 1.68px!important;
    line-height: normal!important;
}

a.button.checkout {
    border-radius: 24px!important;
    background: var(--primary) !important;
    padding: 16px 24px!important;
    line-height: normal!important;
    font-weight: 700!important;
    letter-spacing: 1.68px!important;
}
.woocommerce table.shop_table{
    border: unset!important;
}
td.custom-message button[type="submit"] {
    background: transparent;
    border: 1px solid var(--dark-brown);
    color: var(--dark-brown) !important;
    font-weight: 700;
    padding: 16px 24px;
    line-height: normal;
}
.cart-summary-totals h3 {
    font-size: 24px;
    color: var(--gray-900);
    font-weight: 500;
}

.cart-summary-totals h3 {
    font-size: 24px;
    color: var(--gray-900);
    font-weight: 500;
}

.cart_item.last > td {
    border: unset!important;
}

.product-attributes p {
    margin: 0;
    font-size: 12px;
    font-weight: 500;
    line-height: normal;
}

.product-attributes {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td{
    background-color: transparent!important;
}



@media (max-width: 1024px){
    .woocommerce-cart .wc-block-grid__products{
        flex-direction: column;
    }
    .woocommerce-cart .wc-block-grid__products li{
        width: 100%;
        max-width: unset!important;
    }
    .woocommerce-breadcrumb-container{
        margin-bottom: 0;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .woocommerce-cart .shop_table.shop_table_responsive th.product-name,
    .woocommerce-cart .shop_table.shop_table_responsive th.product-remove,
    .woocommerce-cart .shop_table.shop_table_responsive th.product-thumbnail,
    .woocommerce-cart .shop_table.shop_table_responsive th.product-quantity,
    .woocommerce-cart .shop_table.shop_table_responsive th.product-price,
    .woocommerce-cart .shop_table.shop_table_responsive th.product-subtotal,
    .woocommerce-cart .shop_table.shop_table_responsive td.product-thumbnail,
    .woocommerce-cart .shop_table.shop_table_responsive td.product-remove,
    .woocommerce-cart .shop_table.shop_table_responsive td.product-name,
    .woocommerce-cart .shop_table.shop_table_responsive td.product-price,
    .woocommerce-cart .shop_table.shop_table_responsive td.product-quantity,
    .woocommerce-cart .shop_table.shop_table_responsive td.product-subtotal{
        padding: 20px 0;
    }
    .woocommerce-cart .shop_table.shop_table_responsive td.product-name{
        padding: 20px 0 20px 20px;
        max-width: 380px;
    }
}

@media (max-width: 768px){

    .shop_table.shop_table_responsive .woocommerce-cart-form__cart-item{
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
    }

    .shop_table.shop_table_responsive .custom-cart-row{
        margin: 0;
    }
    .shop_table.shop_table_responsive .custom-message{
        padding: 0;
    }

    .shop_table.shop_table_responsive button.button.custom-buttom{
        width: 100%;
    }

    .shop_table.shop_table_responsive .custom-cart-totals .cart-summary-wrapper{
        flex-direction: column;
    }

    .shop_table.shop_table_responsive .coupon input[type=text]{
        width: 100%;
    }
    .shop_table.shop_table_responsive .cart-summary-totals h3{
        text-align: left!important;
    }
    .shop_table.shop_table_responsive .cart-buttons{
        flex-direction: column-reverse;
    }
    .shop_table.shop_table_responsive .custom-cart-totals > td{
        padding: 0;
    }

    .shop_table.shop_table_responsive .cart-summary-coupon .coupon{
        text-align: left!important;
    }

    .woocommerce table.shop_table_responsive tr td::before,
    .woocommerce-page table.shop_table_responsive tr td::before{
        content: unset!important;
    }

    .shop_table.shop_table_responsive .cart-summary-coupon,
    .shop_table.shop_table_responsive .cart-summary-totals{
        width: 100% !important;
        max-width: unset!important;
    }

    .shop_table.shop_table_responsive .cart_item{
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        width: 100%;
    }
    .shop_table.shop_table_responsive .cart_item .product-remove{
        order: 6;
        padding: 0!important;
        border: none;
        /* width: 35%; */
    }
    .shop_table.shop_table_responsive .cart_item .product-thumbnail{
        width: 100%;
        height: 100%;
        max-height: 100px;
        max-width: 100px;
        padding: 0!important;
        order: 1;
        display: block!important;
    }
    .shop_table.shop_table_responsive .cart_item .product-name{
        width: 20%;
        padding: 0!important;
        order: 2;
        border: none;
        text-align: left!important;
        display: unset;
    }
    .shop_table.shop_table_responsive .cart_item .product-price{
        display: none;
    }
    .shop_table.shop_table_responsive .cart_item .product-quantity{
        padding: 0;
        order: 5;
        max-width:unset;
        border: none;
        width: 23%;
        text-align: left!important;
        padding-left: 20px!important;
    }
    .shop_table.shop_table_responsive .cart_item .product-subtotal{
        order: 3;
        border: none!important;
        width: unset;
        padding: 0!important;
    }
    .shop_table.shop_table_responsive .cart_item .product-quantity a.minus,
    .shop_table.shop_table_responsive .cart_item .product-quantity a.plus{
        min-width: unset;
        min-height: unset;
        height: 32px;
        width: 32px;
    }

    .shop_table.shop_table_responsive .cart_item .product-quantity input[type="number"]{
        width: 32px;
        height: 32px;
        min-height: unset;
        min-width: unset;
        margin: 0!important;
    }
    .shop_table.shop_table_responsive .custom-cart-row .custom-message button[type="submit"]{
        width: 100%;
    }
    .shop_table.shop_table_responsive tr:last-child {
        display: none;
    }
    .woocommerce-breadcrumb{
        padding: 16px!important;
    }
    .woocommerce-cart thead, .woocommerce-cart tbody{
        display: flex;
        flex-direction: column;
        gap: 40px;
    }
    .woocommerce table.cart img, .woocommerce-page #content table.cart img, .woocommerce-page table.cart img{
        max-height: 100px;
        object-fit: cover;
    }
    .woocommerce-cart .shop_table.shop_table_responsive .cart_item .quantity.buttons-added {
        justify-content: flex-start;
    }
    .shop_table.shop_table_responsive .cart_item .product-name{
        padding: 0 20px;
    }
    .woocommerce-cart .shop_table.shop_table_responsive .cart_item .product-name p {
        margin-bottom: 0;
    }
}

@media (max-width: 576px){
    .shop_table.shop_table_responsive .cart_item .product-quantity{
        width: 65%;
    }
    td.product-subtotal {
        position: absolute;
    }
    .woocommerce-cart .shop_table.shop_table_responsive .cart_item .product-name > p,
    .woocommerce-cart .shop_table.shop_table_responsive .cart_item .product-name > a{
        max-width: 70%;
        font-size: 12px;
        font-weight: 500;
        line-height: normal;
        display: block;
    }
    .woocommerce-cart .site.grid-container{
        padding: 0;
    }
    .product-name .container{
        flex-direction: column;
        gap: 4px;
    }
    .product-name .container .product-attributes,
    .product-name .container .custom-product-details{
        width: 100%;
        gap: 4px;
        display: block;
    }
    .shop_table.shop_table_responsive .cart_item .product-name{
        margin-left: 8px;
    }
    .product-name .container .custom-product-details span{
        line-height: normal;
    }
    .woocommerce-cart .product-attributes p{
        display: inline;
        /* width: fit-content; */
    }
    .product-name .container .product-attributes span.name{
        display: none;
    }
    .checkout-best-sellers > ul{
        display: flex!important;
        grid-gap: 0!important;
    }
    .woocommerce-cart .woocommerce h4.gb-headline {
        font-size: 28px;
    }
}
