.elementor-29 .elementor-element.elementor-element-2874f20{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.elementor-29 .elementor-element.elementor-element-b2ad7d0{--display:flex;--border-radius:12px 12px 12px 12px;--padding-top:74px;--padding-bottom:74px;--padding-left:34px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-b2ad7d0:not(.elementor-motion-effects-element-type-background), .elementor-29 .elementor-element.elementor-element-b2ad7d0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#193D26;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );color:var( --e-global-color-primary );}.elementor-29 .elementor-element.elementor-element-c8e8697 .elementor-heading-title{font-family:"Albert Sans", Sans-serif;font-size:12px;font-weight:500;line-height:14px;color:var( --e-global-color-199cf80 );}.elementor-29 .elementor-element.elementor-element-442619d{margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-29 .elementor-element.elementor-element-442619d .elementor-heading-title{font-family:"Albert Sans", Sans-serif;font-size:32px;font-weight:700;line-height:38px;color:var( --e-global-color-199cf80 );}.elementor-29 .elementor-element.elementor-element-c047be8{width:var( --container-widget-width, min(500px,100%) );max-width:min(500px,100%);margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:min(500px,100%);--container-widget-flex-grow:0;}.elementor-29 .elementor-element.elementor-element-c047be8 .elementor-heading-title{font-family:"Albert Sans", Sans-serif;font-size:14px;font-weight:500;line-height:18px;color:var( --e-global-color-199cf80 );}.elementor-29 .elementor-element.elementor-element-5fd6babe{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}:root{--page-title-display:none;}@media(min-width:2400px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}}@media(max-width:1366px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}}@media(max-width:767px){.elementor-29 .elementor-element.elementor-element-b2ad7d0{--padding-top:74px;--padding-bottom:74px;--padding-left:34px;--padding-right:34px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-29 .elementor-element.elementor-element-5fd6babe{--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}}/* Start custom CSS for shortcode, class: .elementor-element-9fc65f1 */.acqpdf-trigger-wrap{
    margin-top: 24px !important;
}

.acqpdf-modal{
    position: unset !important;
}

@media (max-width:767px){
   .woocommerce-cart-form__cart-item.cart_item .product-quantity{
        min-height: 62px !important;
        display: flex !important;
        justify-content: space-between;
        margin: 0px !important;
        padding: 0px !important;
        align-items: center !important;
    }
    .woocommerce-cart .elementor-shortcode .woocommerce table.woocommerce-cart-form__contents tbody tr td.product-quantity, .woocommerce-cart .woocommerce-cart-form__contents tbody td.product-quantity{
        padding: 0px !important;
    }
}/* End custom CSS */
/* Start custom CSS *//* ============================================================
   EL ARCO · CARRITO CLÁSICO  [woocommerce_cart]   (v3)
   + reset forzado del plugin de cantidad (wqpmb)
   + estilo del plugin de cotización (acqpdf)
   Paleta de marca: verde bosque #193D26 / #103B2C
   Pegar en: Apariencia → Personalizar → CSS adicional
   Prefijado con .woocommerce-cart para no afectar otras páginas.
   ============================================================ */

/* ---- 1. Variables de marca ---- */
.woocommerce-cart .woocommerce {
    --arco-verde:        #193D26;
    --arco-verde-osc:    #103B2C;
    --arco-verde-claro:  #2E7D32;
    --arco-rojo:         #B51616;
    --arco-texto:        #2b2b2b;
    --arco-texto-suave:  #6b6b6b;
    --arco-borde:        #e6e9e7;
    --arco-linea:        #f0f2f0;
    --arco-fondo-suave:  #f7f9f7;
    --arco-card:         #ffffff;
    --arco-radio:        14px;
    --arco-sombra:       0 6px 22px rgba(16, 59, 44, 0.06);
}

/* ---- 2. Layout de 2 columnas en escritorio (tabla | resumen) ---- */
@media (min-width: 981px) {
    .woocommerce-cart .woocommerce:has(> .woocommerce-cart-form) {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 360px;
        gap: 40px;
        align-items: start;
    }
    .woocommerce-cart .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
    /* El botón "Descargar cotización PDF" es hijo de .woocommerce (que es grid):
       lo hacemos ocupar el ancho completo para no descuadrar tabla|totales. */
    .woocommerce-cart .woocommerce > .acqpdf-trigger-wrap { grid-column: 1 / -1; }
    .woocommerce-cart .woocommerce-cart-form { margin: 0; }
    .woocommerce-cart .cart-collaterals {
        width: 100%;
        float: none;
        margin: 0;
        position: sticky;
        top: 24px;
    }
    .woocommerce-cart .cart-collaterals .cart_totals { width: 100%; float: none; }
}

/* ---- 3. Tabla de productos como tarjeta limpia ---- */
.woocommerce-cart .woocommerce-cart-form__contents {
    border: 1px solid var(--arco-borde);
    border-radius: var(--arco-radio);
    overflow: hidden;
    background: var(--arco-card);
    box-shadow: var(--arco-sombra);
    border-collapse: separate;
    border-spacing: 0;
}

/* Quitar TODA la rejilla interna del tema */
.woocommerce-cart .woocommerce-cart-form__contents th,
.woocommerce-cart .woocommerce-cart-form__contents td {
    border-left: none !important;
    border-right: none !important;
}

/* Encabezado */
.woocommerce-cart .woocommerce-cart-form__contents thead th {
    background: var(--arco-fondo-suave);
    text-transform: uppercase;
    letter-spacing: .6px;
    font-size: 11.5px;
    font-weight: 700;
    color: var(--arco-texto-suave);
    padding: 14px 14px;
    border-top: none !important;
    border-bottom: 1px solid var(--arco-borde) !important;
}

/* Celdas: solo una línea horizontal muy sutil entre filas */
.woocommerce-cart .woocommerce-cart-form__contents tbody td {
    padding: 16px 14px;
    vertical-align: middle;
    border-top: 1px solid var(--arco-linea) !important;
}
.woocommerce-cart .woocommerce-cart-form__cart-item:first-child td { border-top: none !important; }
.woocommerce-cart .woocommerce-cart-form__cart-item { transition: background-color .15s ease; }
.woocommerce-cart .woocommerce-cart-form__cart-item:hover { background: #fafcfa; }

/* Imagen */
.woocommerce-cart td.product-thumbnail img {
    width: 62px;
    height: 62px;
    border: 1px solid var(--arco-borde);
    border-radius: 10px;
    background: #fff;
    object-fit: contain;
    padding: 5px;
}

/* Nombre */
.woocommerce-cart td.product-name a {
    font-weight: 700;
    color: var(--arco-verde);
    text-decoration: none;
    line-height: 1.35;
}
.woocommerce-cart td.product-name a:hover { color: var(--arco-verde-claro); text-decoration: underline; }

/* Precios */
.woocommerce-cart td.product-price { color: var(--arco-texto); font-weight: 600; }
.woocommerce-cart td.product-subtotal { font-weight: 800; color: var(--arco-verde); }

/* Botón eliminar (×) */
.woocommerce-cart td.product-remove a.remove {
    color: var(--arco-texto-suave) !important;
    font-size: 18px;
    line-height: 1;
    width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: background-color .15s ease, color .15s ease;
}
.woocommerce-cart td.product-remove a.remove:hover {
    background: rgba(181, 22, 22, 0.10);
    color: var(--arco-rojo) !important;
}

/* ============================================================
   4. CANTIDAD · RESET FORZADO del plugin wqpmb / qib
   (anula su hoja de estilos: una sola caja compacta y centrada)
   ============================================================ */

/* 4.0 · FORZAR LA COLUMNA DE CANTIDAD COMPLETAMENTE PLANA (cabecera + celdas).
   El plugin wqpmb pinta de blanco TODA la columna .product-quantity (th + td)
   con border-radius y sombra → "panel flotante". Lo anulamos con MÁXIMA
   especificidad (cadena de Elementor) para ganar pase lo que pase.          */

/* Cabecera "CANTIDAD": igual que las demás (gris) y plana */
.woocommerce-cart .elementor-shortcode .woocommerce table.woocommerce-cart-form__contents thead tr th.product-quantity,
.woocommerce-cart .woocommerce-cart-form__contents thead th.product-quantity {
    background: var(--arco-fondo-suave) !important;
    background-color: var(--arco-fondo-suave) !important;
    background-image: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    float: none !important;
    position: static !important;
}

/* Celdas de cantidad: CELDA NORMAL (no caja flotante), transparente y plana.
   display:table-cell la obliga a llenar toda la altura de la fila otra vez
   (el plugin la había vuelto flex/block → cajita de 134x67 que flotaba).   */
.woocommerce-cart .elementor-shortcode .woocommerce table.woocommerce-cart-form__contents tbody tr td.product-quantity,
.woocommerce-cart .woocommerce-cart-form__contents tbody td.product-quantity {
    text-align: left;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    float: none !important;
    position: static !important;
    width: auto !important;
    padding: 16px 14px !important;
}

/* display:table-cell SOLO en escritorio: en móvil la tabla se apila (block),
   así que esta línea debe quedar fuera del layout móvil para no romperlo.   */
@media (min-width: 769px) {
    .woocommerce-cart .elementor-shortcode .woocommerce table.woocommerce-cart-form__contents thead tr th.product-quantity,
    .woocommerce-cart .woocommerce-cart-form__contents thead th.product-quantity,
    .woocommerce-cart .elementor-shortcode .woocommerce table.woocommerce-cart-form__contents tbody tr td.product-quantity,
    .woocommerce-cart .woocommerce-cart-form__contents tbody td.product-quantity {
        display: table-cell !important;
        vertical-align: middle !important;
    }
}

/* Matar cualquier "tarjeta" dibujada con pseudo-elementos (no afecta el
   data-title de móvil porque solo apunta a los wrappers, no al td) */
.woocommerce-cart td.product-quantity .qib-button-wrapper::before,
.woocommerce-cart td.product-quantity .qib-button-wrapper::after,
.woocommerce-cart td.product-quantity > div:not(.qib-button-wrapper)::before,
.woocommerce-cart td.product-quantity > div:not(.qib-button-wrapper)::after {
    content: none !important;
    display: none !important;
}

/* Por si el plugin envuelve el control en otro div con fondo/borde/sombra */
.woocommerce-cart td.product-quantity > div:not(.qib-button-wrapper),
.woocommerce-cart td.product-quantity .quantity-wrapper {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.woocommerce-cart .product-quantity .qib-button-wrapper {
    display: inline-flex !important;
    align-items: center !important;
    vertical-align: middle;
    width: auto !important;
    height: 34px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--arco-borde) !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: none !important;
    overflow: hidden;
    line-height: normal !important;
    box-sizing: border-box;
}

.woocommerce-cart .product-quantity .qib-button-wrapper .qib-button {
    flex: 0 0 auto;
    width: 32px !important;
    height: 32px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--arco-verde) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    cursor: pointer;
    box-sizing: border-box;
    transition: background-color .15s ease, color .15s ease;
}
.woocommerce-cart .product-quantity .qib-button-wrapper .qib-button:hover {
    background: var(--arco-verde) !important;
    color: #fff !important;
}

.woocommerce-cart .product-quantity .qib-button-wrapper .quantity.wqpmb_quantity {
    display: flex !important;
    align-items: center !important;
    width: auto !important;
    height: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-left: 1px solid var(--arco-linea) !important;
    border-right: 1px solid var(--arco-linea) !important;
    background: none !important;
    box-shadow: none !important;
}

.woocommerce-cart .product-quantity .qib-button-wrapper input.wqpmb_input_text,
.woocommerce-cart .product-quantity .qib-button-wrapper input.qty {
    width: 38px !important;
    height: 32px !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: center !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: var(--arco-texto) !important;
    line-height: 32px !important;
    box-sizing: border-box;
    -moz-appearance: textfield;
}
.woocommerce-cart .product-quantity .qib-button-wrapper input::-webkit-outer-spin-button,
.woocommerce-cart .product-quantity .qib-button-wrapper input::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

/* 4.9 · REFUERZO (máxima especificidad): el ÚNICO recuadro es el control compacto */
.woocommerce-cart .elementor-shortcode .woocommerce table.woocommerce-cart-form__contents tbody tr td.product-quantity .qib-button-wrapper,
.woocommerce-cart .woocommerce-cart-form__contents td.product-quantity .qib-button-wrapper {
    box-shadow: none !important;
    border: 1px solid var(--arco-borde) !important;
    border-radius: 8px !important;
    background: #fff !important;
    width: auto !important;
    max-width: max-content;
    padding: 0 !important;
    margin: 0 !important;
}

/* ---- 5. Fila de acciones (cupón + actualizar carrito) ---- */
.woocommerce-cart td.actions {
    padding: 16px 14px !important;
    background: var(--arco-fondo-suave);
    border-top: 1px solid var(--arco-borde) !important;
}
.woocommerce-cart td.actions::after { content: ""; display: table; clear: both; }

.woocommerce-cart td.actions .coupon { display: inline-flex; gap: 8px; float: left; }
.woocommerce-cart td.actions .coupon #coupon_code {
    border: 1px solid var(--arco-borde);
    border-radius: 8px;
    padding: 9px 13px;
    min-width: 170px;
}

.woocommerce-cart td.actions .button {
    background: #fff !important;
    color: var(--arco-verde) !important;
    border: 1.5px solid var(--arco-verde) !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    padding: 9px 16px !important;
    transition: background-color .15s ease, color .15s ease;
}
.woocommerce-cart td.actions .button:hover { background: var(--arco-verde) !important; color: #fff !important; }
.woocommerce-cart td.actions button[name="update_cart"] { float: right; }

/* ---- 6. Resumen "Totales del carrito" tipo ticket ---- */
.woocommerce-cart .cart_totals {
    background: var(--arco-card);
    border: 1px solid var(--arco-borde);
    border-radius: var(--arco-radio);
    box-shadow: var(--arco-sombra);
    padding: 8px 24px 24px;
}
.woocommerce-cart .cart_totals h2 {
    text-transform: uppercase;
    letter-spacing: .6px;
    font-size: 12.5px;
    font-weight: 800;
    color: var(--arco-texto-suave);
    padding-top: 20px;
    margin-bottom: 8px;
}
.woocommerce-cart .cart_totals table { border: none; margin: 0; }
.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td {
    border: none !important;
    border-top: 1px solid var(--arco-linea) !important;
    padding: 13px 0;
}
.woocommerce-cart .cart_totals table tr:first-child th,
.woocommerce-cart .cart_totals table tr:first-child td { border-top: none !important; }
.woocommerce-cart .cart_totals th { color: var(--arco-texto-suave); font-weight: 600; text-align: left; }
.woocommerce-cart .cart_totals td { text-align: right; font-weight: 700; color: var(--arco-texto); }

.woocommerce-cart .cart_totals .shipping td {
    font-weight: 500;
    font-size: 13px;
    color: var(--arco-texto-suave);
}

.woocommerce-cart .cart_totals .order-total th { font-size: 15px; color: var(--arco-texto); font-weight: 800; }
.woocommerce-cart .cart_totals .order-total td,
.woocommerce-cart .cart_totals .order-total td strong {
    font-size: 23px;
    font-weight: 800;
    color: var(--arco-verde);
}

/* ---- 7. Botón "Finalizar compra" (CTA principal) ---- */
.woocommerce-cart .wc-proceed-to-checkout { padding-top: 18px; }
.woocommerce-cart a.checkout-button {
    display: block;
    text-align: center;
    background: var(--arco-verde) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 10px !important;
    font-weight: 800 !important;
    font-size: 16px !important;
    padding: 15px 22px !important;
    box-shadow: 0 8px 20px rgba(16, 59, 44, 0.20);
    transition: transform .12s ease, background-color .15s ease, box-shadow .15s ease;
}
.woocommerce-cart a.checkout-button:hover {
    background: var(--arco-verde-osc) !important;
    transform: translateY(-1px);
    box-shadow: 0 10px 26px rgba(16, 59, 44, 0.28);
}
.woocommerce-cart a.checkout-button:focus-visible {
    outline: 3px solid rgba(46, 125, 50, 0.45);
    outline-offset: 2px;
}

/* ============================================================
   8. PLUGIN DE COTIZACIÓN (acqpdf) · botón disparador + modal
   Uso valores de color literales (no variables) porque el modal
   puede inyectarse fuera de .woocommerce y no heredaría las vars.
   ============================================================ */

/* 8.1 · Botón "Descargar cotización PDF" (secundario, contorno verde) */
.acqpdf-trigger-wrap { margin: 0 0 22px; }
.acqpdf-trigger {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    background: #fff !important;
    color: #193D26 !important;
    border: 1.5px solid #193D26 !important;
    border-radius: 10px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    line-height: 1 !important;
    padding: 11px 18px !important;
    cursor: pointer;
    box-shadow: none !important;
    transition: background-color .15s ease, color .15s ease, box-shadow .15s ease;
}
.acqpdf-trigger svg { stroke: currentColor; }
.acqpdf-trigger:hover {
    background: #193D26 !important;
    color: #fff !important;
    box-shadow: 0 6px 16px rgba(16, 59, 44, 0.18) !important;
}
.acqpdf-trigger:focus-visible { outline: 3px solid rgba(46, 125, 50, 0.45); outline-offset: 2px; }

/* 8.2 · Modal de cotización.
   NOTA: si tu plugin YA centra el modal y pone su propio fondo oscuro,
   puedes borrar position/top/left/transform y el "0 0 0 100vmax..." de
   la sombra; lo demás (la parte visual) se queda igual.                 */
.acqpdf-modal {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 100000;
    width: min(460px, 92vw);
    max-height: 88vh;
    overflow: auto;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.30),
                0 0 0 100vmax rgba(15, 30, 22, 0.55); /* tarjeta + fondo oscuro */
}

.acqpdf-head {
    position: relative;
    padding: 22px 24px 14px;
    border-bottom: 1px solid #eef0ee;
}
.acqpdf-head h3 {
    margin: 0 0 4px !important;
    padding: 0 !important;
    font-size: 19px !important;
    font-weight: 800 !important;
    color: #193D26 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}
.acqpdf-head p {
    margin: 0 !important;
    font-size: 13.5px;
    line-height: 1.4;
    color: #6b6b6b;
}
.acqpdf-close {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: #f3f5f3;
    color: #6b6b6b;
    border-radius: 50%;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
    transition: background-color .15s ease, color .15s ease;
}
.acqpdf-close:hover { background: #e7eae8; color: #193D26; }

.acqpdf-body { padding: 18px 24px 24px; }
.acqpdf-form { margin: 0; }
.acqpdf-field { margin-bottom: 14px; }
.acqpdf-field label {
    display: block;
    font-size: 12.5px;
    font-weight: 700;
    color: #2b2b2b;
    margin-bottom: 6px;
}
.acqpdf-field input {
    width: 100%;
    border: 1px solid #e6e9e7;
    border-radius: 9px;
    padding: 11px 13px;
    font-size: 14px;
    color: #2b2b2b;
    background: #fff;
    box-sizing: border-box;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.acqpdf-field input::placeholder { color: #9aa39d; }
.acqpdf-field input:focus {
    outline: none;
    border-color: #193D26;
    box-shadow: 0 0 0 3px rgba(46, 125, 50, 0.15);
}

/* Botón "Generar cotización" (primario, verde de marca) */
.acqpdf-submit {
    display: block;
    width: 100%;
    margin-top: 6px;
    background: #193D26 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 11px !important;
    font-weight: 800 !important;
    font-size: 15px !important;
    padding: 14px 20px !important;
    cursor: pointer;
    box-shadow: 0 8px 20px rgba(16, 59, 44, 0.20);
    transition: transform .12s ease, background-color .15s ease, box-shadow .15s ease;
}
.acqpdf-submit:hover {
    background: #103B2C !important;
    transform: translateY(-1px);
    box-shadow: 0 10px 26px rgba(16, 59, 44, 0.28);
}
.acqpdf-submit:focus-visible { outline: 3px solid rgba(46, 125, 50, 0.45); outline-offset: 2px; }

/* ---- 9. Responsive ---- */

/* Tablet: el resumen baja debajo de la tabla */
@media (max-width: 980px) {
    .woocommerce-cart .cart-collaterals { margin-top: 28px; }
}

/* Móvil: cada producto se vuelve una tarjeta apilada */
@media (max-width: 768px) {

    /* Botón de cotización a lo ancho */
    .acqpdf-trigger-wrap { margin-bottom: 16px; }
    .acqpdf-trigger { width: 100%; justify-content: center; }

    /* La tabla pierde su marco; cada fila es una tarjeta */
    .woocommerce-cart .woocommerce-cart-form__contents { box-shadow: none; border: none; background: transparent; }
    .woocommerce-cart .woocommerce-cart-form__cart-item {
        display: block;
        position: relative;
        border: 1px solid var(--arco-borde);
        border-radius: var(--arco-radio);
        box-shadow: var(--arco-sombra);
        background: #fff;
        margin-bottom: 16px;
        padding: 14px 16px;
    }

    /* Celdas apiladas: etiqueta (data-title) a la izquierda, valor a la derecha */
    .woocommerce-cart .woocommerce-cart-form__cart-item td {
        display: block !important;
        width: auto !important;
        text-align: right;
        border: none !important;
        border-top: 1px solid var(--arco-linea) !important;
        padding: 11px 0 !important;
    }
    .woocommerce-cart .woocommerce-cart-form__cart-item td::before {
        content: attr(data-title);
        float: left;
        font-weight: 700;
        font-size: 12px;
        letter-spacing: .4px;
        text-transform: uppercase;
        color: var(--arco-texto-suave);
    }

    /* MINIATURA: forzarla visible y centrada arriba (el tema la ocultaba) */
    .woocommerce-cart .woocommerce-cart-form__cart-item td.product-thumbnail {
        display: block !important;
        border-top: none !important;
        text-align: center;
        padding-top: 4px !important;
    }
    .woocommerce-cart .woocommerce-cart-form__cart-item td.product-thumbnail::before { content: none !important; display: none !important; }
    .woocommerce-cart td.product-thumbnail a { display: inline-block !important; }
    .woocommerce-cart td.product-thumbnail img {
        display: inline-block !important;
        width: 104px !important;
        height: 104px !important;
        margin: 0 auto !important;
    }

    /* Nombre: centrado y prominente, sin la etiqueta "Producto" */
    .woocommerce-cart .woocommerce-cart-form__cart-item td.product-name {
        border-top: none !important;
        text-align: center;
        padding-top: 8px !important;
    }
    .woocommerce-cart .woocommerce-cart-form__cart-item td.product-name::before { content: none !important; display: none !important; }
    .woocommerce-cart td.product-name a { font-size: 15px; }

    /* Botón × arriba a la derecha, fuera del flujo */
    .woocommerce-cart .woocommerce-cart-form__cart-item td.product-remove {
        position: absolute;
        top: 10px;
        right: 12px;
        border-top: none !important;
        padding: 0 !important;
        text-align: right;
    }
    .woocommerce-cart .woocommerce-cart-form__cart-item td.product-remove::before { content: none !important; display: none !important; }

    /* Cantidad: etiqueta a la izquierda, control a la derecha */
    .woocommerce-cart .woocommerce-cart-form__cart-item td.product-quantity { text-align: right; }

    /* Acciones y CTA a ancho completo */
    .woocommerce-cart td.actions .coupon { display: flex; width: 100%; float: none; gap: 8px; }
    .woocommerce-cart td.actions .coupon #coupon_code { flex: 1; min-width: 0; }
    .woocommerce-cart td.actions button[name="update_cart"] { float: none; width: 100%; margin-top: 10px; }
    .woocommerce-cart a.checkout-button { font-size: 16px !important; padding: 17px 22px !important; }
}

.woocommerce-cart .woocommerce:has(> .woocommerce-cart-form){
        gap: 10px;
    }/* End custom CSS */