/* Start custom CSS for html, class: .elementor-element-c365f39 *//* Estilos bloque de título */
.vultec-title-block {
  text-align: center;
}

/* Título principal */
.vultec-title-block .vultec-title {
  font-family: 'Roboto', sans-serif;
  font-weight: 800;
  font-size: 36px;
  margin: 0px;
  color: #2A2A2A;
}

/* Subtítulo */
.vultec-title-block .vultec-subtitle {
  font-family: 'Roboto', sans-serif;
  font-weight: 400;
  font-size: 18px;
  margin: 0px;
  color: #2A2A2A;
  text-decoration: none;
  transition: color 0.3s ease;
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-c34bcb8 */.elementor-60112 .elementor-element.elementor-element-c34bcb8:has(.wc-empty-cart-message) .vultec-title-block{display:none!important}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-779c93a */.elementor-60112 .elementor-element.elementor-element-779c93a .cart-empty{
  width:100%;
  text-align:center !important;
}

.elementor-60112 .elementor-element.elementor-element-779c93a .return-to-shop{
  width:100%;
  display:flex !important;
  justify-content:center !important;
  float:none !important;
  margin-top:16px;
}

.elementor-60112 .elementor-element.elementor-element-779c93a .return-to-shop a{
  display:inline-block !important;
  float:none !important;
  margin:0 auto !important;
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-3b20fa9 *//* =========================
   VULTEC · Carrito v2 — CSS ESTABLE
   (Pegar en la SECCIÓN que envuelve [woocommerce_cart], usando `.elementor-60112 .elementor-element.elementor-element-3b20fa9`)
   ========================= */

/* Base */
.elementor-60112 .elementor-element.elementor-element-3b20fa9{
  --accent:#16a34a;
  --accent-600:#118a2e;
  --bg:#fff;
  --text:#111;
  --muted:#6b7280;
  --border:#e5e7eb;
  --radius:14px;
  --wrap:1280px;
  --gap:44px;
  color:var(--text);
  font-family:Roboto,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 *{ box-sizing:border-box; }

/* Grid principal */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce{
  max-width:var(--wrap);
  margin:0 auto;
  padding:10px 18px 44px;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(360px,420px);
  gap:var(--gap);
  align-items:start;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form{ grid-column:1 !important; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart-collaterals{  grid-column:2 !important; }

/* Limpia clearfix del tema */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce::before,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce::after,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart-collaterals::before,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart-collaterals::after{ content:none !important; display:none !important; }

/* Tarjeta izquierda */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form{
  background:var(--bg);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:18px;
  box-shadow:0 2px 10px rgba(0,0,0,.05);
  max-width:100% !important;
  min-width:0 !important;
  overflow:visible !important;
}

/* ================== Tabla del carrito ================== */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table{
  width:100% !important;
  border-collapse:collapse !important;
  border-spacing:0;
  table-layout:auto !important;          /* ← clave para evitar el texto en vertical */
  background:transparent;
  border:0;
}

/* Asegura que el tema no cambie a display:block en responsive */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table thead{ display:table-header-group !important; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table tbody{ display:table-row-group !important; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table tr{ display:table-row !important; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table th,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table td{ display:table-cell !important; }

/* Cabecera */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table thead th{
  font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.3px;
  color:#1f2937; background:#fafafa;
  border-bottom:1px solid var(--border);
  padding:14px 12px; white-space:nowrap;
}

/* Celdas */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table td{
  padding:16px 12px;
  border-bottom:1px solid var(--border);
  vertical-align:middle;
  overflow:visible;
}

/* Anchos orientativos (el nombre ocupa el resto) */
@media (min-width: 1024px){
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-remove,    .elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-remove{ width:28px;  text-align:center; padding:10px 6px; }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-thumbnail, .elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-thumbnail{ width:64px; }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-price,     .elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-price{ width:100px; text-align:center; }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-quantity,  .elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-quantity{ width:110px; text-align:center; }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-subtotal,  .elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-subtotal{ width:120px; text-align:right; }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-name, .elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-name{
    width:auto; min-width:320px;
    white-space:normal; word-break:normal; overflow:visible;
  }
}

/* Miniatura principal y eliminación de mini-duplicados */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-thumbnail img{ width:60px; height:auto; border-radius:8px; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-name img{ display:none !important; } /* evita la miniatura dentro del título */

/* Enlaces del producto */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .product-name a{ color:#111; text-decoration:none; display:inline-block; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .product-name a:hover{ color:var(--accent); }

/* “X” compacta */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-remove a.remove{
  display:inline-grid; place-items:center;
  width:16px; height:16px; border-radius:50%;
  border:1px solid var(--border); color:#9aa1ad;
  font-size:11px; line-height:1; text-decoration:none;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-remove a.remove:hover{ color:#111; border-color:#cbd5e1; }

/* Precios verdes */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .product-price,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .product-subtotal,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart-subtotal .amount,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .order-total .amount{ color:var(--accent); font-weight:600; }

/* Cantidad */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .quantity .qty{
  width:72px; height:38px; border:1px solid var(--border);
  border-radius:10px; text-align:center; font-weight:600;
  color:#111; background:#fff; outline:none;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .quantity .qty:focus{ border-color:#cbd5e1; }

/* Hover fila */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table tbody tr:hover td{ background:#fafafa; }

/* ================== Acciones (cupón + actualizar) ================== */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.actions{ width:100%; padding-top:16px; }

.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions{
  display:grid !important;
  grid-template-columns:minmax(260px,1fr) auto;   /* cupón ocupa todo | actualizar a la derecha */
  gap:14px; align-items:center;
}

/* Cupón */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon{
  display:flex !important; gap:10px; align-items:center; width:100%; min-width:0;
}
/* Ocultar label visible del tema */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon label{ display:none !important; }

/* Input del cupón (anula width:1% del tema) */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input#coupon_code,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input.input-text,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input[type="text"]{
  flex:1 1 360px !important;
  width:auto !important; min-width:300px; max-width:640px;
  height:44px; padding:0 12px;
  border:1px solid var(--border); border-radius:10px;
}

/* Botón aplicar cupón */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon .button{
  height:44px; padding:0 16px; white-space:nowrap;
  border-radius:10px; border:2px solid var(--accent);
  background:transparent; color:var(--accent); font-weight:700;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon .button:hover{
  background:var(--accent); color:#fff;
}

/* Botón actualizar (input o button) */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]{
  -webkit-appearance:none; appearance:none;
  justify-self:end; display:inline-flex !important;
  align-items:center; justify-content:center;
  height:44px; padding:0 16px;
  border-radius:10px; font-weight:700;
  border:1px solid var(--border);
  background:#f8fafc; color:#111; text-decoration:none; white-space:nowrap;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]:hover{ background:#eef2f7; }

/* Mantener ocultos textos de accesibilidad que el tema podría mostrar */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce .screen-reader-text{
  position:absolute !important; width:1px; height:1px; overflow:hidden;
  clip:rect(1px,1px,1px,1px);
}

/* ================== Panel derecho (totales) ================== */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart_totals{
  background:var(--bg); border:1px solid var(--border); border-radius:var(--radius);
  padding:20px; box-shadow:0 2px 12px rgba(0,0,0,.06);
  position:sticky; top:90px; z-index:0;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart_totals h2{ font-size:18px; font-weight:800; margin:0 0 12px; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart_totals .shop_table td,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart_totals .shop_table th{ border:0; padding:10px 0; color:#4b5563; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart_totals .shop_table .order-total th,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart_totals .shop_table .order-total td{ font-weight:800; color:#111; }

/* Botón Ir a pagar */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .wc-proceed-to-checkout a.checkout-button,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 a.checkout-button.button.alt{
  display:block; width:100%; height:50px; line-height:50px; text-align:center;
  border-radius:12px; background:var(--accent); color:#fff;
  font-weight:800; letter-spacing:.3px; box-shadow:0 8px 20px rgba(22,163,74,.25);
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .wc-proceed-to-checkout a.checkout-button:hover{ background:var(--accent-600); }

/* ================== Responsive ================== */
@media (max-width:1100px){
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce{ grid-template-columns:1fr; }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart_totals{ position:static; top:auto; margin-top:18px; }
}
@media (max-width:768px){
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions{ grid-template-columns:1fr; gap:10px; }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input#coupon_code,
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input.input-text,
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input[type="text"]{
    min-width:0 !important; max-width:100%;
  }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]{ justify-self:stretch; }
}

/* ======== PARCHE FINAL – encabezado, nombre y acciones ======== */

/* 1) Quitar el truco que ensanchaba el TH de PRODUCTO */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 thead th.product-name{
  padding-left: 12px !important;   /* vuelve a un padding normal */
}

/* 2) Asegurar que todas las cabeceras sigan visibles como table-cell */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table thead{ display: table-header-group !important; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table tr{ display: table-row !important; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table th,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table td{ display: table-cell !important; }

/* 3) Reparto sano de anchos: el nombre ocupa el resto, sin romper en vertical */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table{ table-layout: auto !important; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-remove,    .elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-remove{ width:28px; padding:10px 6px; text-align:center; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-thumbnail, .elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-thumbnail{ width:64px; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-price,     .elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-price{ width:100px; text-align:center; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-quantity,  .elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-quantity{ width:110px; text-align:center; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-subtotal,  .elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-subtotal{ width:120px; text-align:right; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-name, .elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-name{
  width:auto !important;
  min-width:320px;
  white-space: normal !important;
  word-break: normal !important;
  overflow: visible !important;
}

/* 4) El tema a veces mete una mini imagen dentro del nombre: la ocultamos */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-name img{ display:none !important; }

/* 5) Acciones: cupón a 2 columnas (input 1fr + botón), actualizar a la derecha */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions{
  display:grid !important;
  grid-template-columns: 1fr auto;      /* bloque cupón | botón actualizar */
  gap:14px; align-items:center;
  width:100%;
}

.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon{
  display:grid !important;
  grid-template-columns: 1fr auto;      /* input ocupa todo | botón aplicar */
  gap:10px; align-items:center;
  min-width:0; width:100%;
}

/* input del cupón con ancho real (anula width:1% del tema) */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input#coupon_code,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input.input-text,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input[type="text"]{
  flex: 1 1 360px !important;
  width:auto !important;
  min-width:280px !important;
  max-width:640px;
  height:44px; padding:0 12px;
  border:1px solid var(--border); border-radius:10px;
}

/* botón aplicar cupón: visible y con altura correcta */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon .button{
  display:inline-flex !important;
  align-items:center; justify-content:center;
  height:44px; padding:0 16px; white-space:nowrap;
  border-radius:10px; border:2px solid var(--accent);
  background:transparent; color:var(--accent); font-weight:700;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon .button:hover{
  background:var(--accent); color:#fff;
}

/* botón actualizar a la derecha, como botón real */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]{
  -webkit-appearance:none; appearance:none;
  justify-self:end; display:inline-flex !important;
  align-items:center; justify-content:center;
  height:44px; padding:0 16px;
  border-radius:10px; font-weight:700;
  border:1px solid var(--border);
  background:#f8fafc; color:#111; text-decoration:none; white-space:nowrap;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]:hover{ background:#eef2f7; }

/* 6) Responsive de acciones */
@media (max-width:768px){
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions{ grid-template-columns:1fr; gap:10px; }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon{ grid-template-columns:1fr; }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input#coupon_code{ min-width:0 !important; max-width:100%; }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]{ justify-self:stretch; }
}

/* ====== PARCHE FINAL (pegar al final) =================================== */
/* A) Forzar modo DESKTOP de la tabla (desactivar responsive del tema) */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table.shop_table_responsive thead{
  display: table-header-group !important;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table.shop_table_responsive tr{
  display: table-row !important;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table.shop_table_responsive th,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table.shop_table_responsive td{
  display: table-cell !important;
  white-space: normal !important;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table.shop_table_responsive td::before{
  content: none !important;   /* oculta las etiquetas “Precio”, “Cantidad”, etc. dentro del td */
}

/* Encabezado de PRODUCTO con padding normal (sin sangrado) */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 thead th.product-name{
  padding-left: 12px !important;
}

/* B) Acciones: cupón a la izquierda (input 1fr + botón) y ACTUALIZAR a la derecha */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions{
  display: grid !important;
  grid-template-columns: 1fr auto;
  grid-template-areas: "coupon update";
  gap: 14px;
  align-items: center;
  width: 100%;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon{
  grid-area: coupon;
  display: grid !important;                 /* input + botón en 2 columnas */
  grid-template-columns: 1fr auto;
  gap: 10px;
  align-items: center;
  min-width: 0;
  width: 100%;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]{
  grid-area: update;
  justify-self: end;
  -webkit-appearance:none; appearance:none;
  display: inline-flex !important; align-items: center; justify-content: center;
  height: 44px; padding: 0 16px;
  border-radius: 10px; font-weight: 700;
  border: 1px solid var(--border);
  background: #f8fafc; color:#111; text-decoration:none; white-space: nowrap;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]:hover{ background:#eef2f7; }

/* Input del cupón con ancho real (vence width:1% del tema) */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon label{
  display: none !important;                 /* escondemos el “Código de cupón” visual */
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input#coupon_code,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input.input-text,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input[type="text"]{
  flex: 1 1 360px !important;
  width: auto !important;
  min-width: 300px !important;
  max-width: 640px;
  height: 44px;
  padding: 0 12px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background:#fff;
}

/* Botón “Aplicar cupón” consistente */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon .button{
  display: inline-flex !important; align-items: center; justify-content: center;
  height: 44px; padding: 0 16px; white-space: nowrap;
  border-radius: 10px; border: 2px solid var(--accent);
  background: transparent; color: var(--accent); font-weight: 700;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon .button:hover{
  background: var(--accent); color: #fff;
}

/* Responsive: apilar acciones en móvil */
@media (max-width: 768px){
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions{ grid-template-columns: 1fr; grid-template-areas: "coupon" "update"; gap: 10px; }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon{ grid-template-columns: 1fr; }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input#coupon_code{ min-width: 0 !important; max-width: 100%; }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]{ justify-self: stretch; }
}

/* === PARCHE FINAL · Acciones en una sola fila =================== */
/* El <td class="actions"> será un grid: cupón (izq) + actualizar (der) */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions{
  display: grid !important;
  grid-template-columns: 1fr auto !important; /* cupón ocupa todo | actualizar a la derecha */
  grid-template-areas: "coupon update";
  gap: 14px;
  align-items: center;
  width: 100%;
}

/* Bloque cupón: input + botón en 2 columnas */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon{
  grid-area: coupon;
  display: grid !important;
  grid-template-columns: 1fr auto;
  gap: 10px;
  align-items: center;
  min-width: 0;
  width: 100%;
}

/* Ocultar label visual del cupón (accesible) */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon label{
  position: absolute !important;
  width: 1px; height: 1px; overflow: hidden;
  clip: rect(1px,1px,1px,1px); white-space: nowrap;
}

/* Input del cupón con ancho real (vence width:1% del tema) */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input#coupon_code,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input.input-text{
  flex: 1 1 360px !important;
  width: auto !important;
  min-width: 320px !important;
  max-width: 640px;
  height: 44px;
  padding: 0 12px;
  border: 1px solid var(--border);
  border-radius: 10px;
}

/* Botón “Aplicar cupón” consistente */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon .button{
  display: inline-flex !important; align-items: center; justify-content: center;
  height: 44px; padding: 0 16px;
  white-space: nowrap;
  border-radius: 10px;
  border: 2px solid var(--accent);
  background: transparent; color: var(--accent); font-weight: 700;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon .button:hover{
  background: var(--accent); color: #fff;
}

/* Botón “Actualizar carrito” a la derecha y SIN width:100% del tema */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]{
  grid-area: update;
  -webkit-appearance: none; appearance: none;
  display: inline-flex !important; align-items: center; justify-content: center;
  width: auto !important; max-width: none !important;  /* <- clave */
  height: 44px; padding: 0 16px; margin: 0;
  border-radius: 10px; font-weight: 700;
  border: 1px solid var(--border);
  background: #f8fafc; color: #111; text-decoration: none; white-space: nowrap;
  justify-self: end;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]:hover{ background:#eef2f7; }

/* Quitar la línea inferior de la última fila para un cierre limpio */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form tr:last-child td{ border-bottom: 0; }

/* Seguridad extra: no mostrar mini-imagen dentro del nombre (algunos temas la insertan) */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-name img{ display: none !important; }

/* Mantener modo desktop sin “labels” dentro del td */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table.shop_table_responsive thead{ display: table-header-group !important; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table.shop_table_responsive td::before{ content: none !important; }

/* ====== Pulido visual y accesibilidad (añadir al final) ====== */

/* Un poco más de respiro entre la tabla y totales */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce{ --gap: 56px; }

/* Alineaciones / altura mínima agradable de filas */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table td,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table th{
  line-height: 1.25;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table tbody tr{ min-height: 72px; }

/* Encabezados calzando con columnas fijas (coincide con widths que ya pusimos) */
@media (min-width: 768px){
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-price,    .elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-price{ width:110px; text-align:center; }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-quantity, .elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-quantity{ width:120px; text-align:center; }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-subtotal, .elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-subtotal{ width:130px; text-align:right; }
}

/* Última fila sin borde inferior */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form tr:last-child td{ border-bottom: 0; }

/* Nombre de producto a 2 líneas + elipsis (no empuja layout) */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-name a{
  display: -webkit-box; 
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Cantidad y botones con alturas/anchos consistentes */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .quantity .qty{
  height: 40px; width: 72px;
  border-radius: 10px;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce button,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce a.button,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce input[type="submit"]{
  min-height: 44px;
}

/* Estados de foco accesibles (teclado) */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 input:focus-visible,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 button:focus-visible,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 a.button:focus-visible{
  outline: 3px solid rgba(22,163,74,.35);
  outline-offset: 2px;
  box-shadow: 0 0 0 3px rgba(22,163,74,.12);
}

/* Cupón + Actualizar: misma línea y mismo alto pase lo que pase */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions{
  grid-template-columns: 1fr auto !important;
  align-items: center;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon{
  grid-template-columns: 1fr auto;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input#coupon_code,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input.input-text{
  height: 44px; min-height: 44px;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon .button,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]{
  height: 44px; min-height: 44px;
}

/* Panel derecho: sticky un poco más compacto */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart_totals{ top: 84px; }

/* Móvil: apilar cupón/actualizar con buen ancho */
@media (max-width: 768px){
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions{
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input#coupon_code{
    min-width: 0 !important; max-width: 100%;
  }
  .elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]{
    justify-self: stretch;
  }
}

/* =======================
   PULIDO (3 temas que viste)
   ======================= */

/* 1) Que la tarjeta izquierda “llene” más y no choque con Totales */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce{
  /* hacemos más angostito el gap y fijamos el ancho del panel derecho */
  --gap: 32px;
  grid-template-columns: minmax(0,1fr) 400px;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form{
  width: 100% !important;
  max-width: none !important;
}

/* 2) Miniatura visible + quitar duplicado SOLO si existe columna de thumbnail */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 tr:has(td.product-thumbnail) td.product-name img{
  display: none !important;          /* oculta el duplicado en la celda de nombre */
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-thumbnail img{
  display: block !important;         /* asegura que se muestre la miniatura principal */
  width: 90px; height: auto; border-radius: 8px;
}

/* 2.b) Botón “X” sin borde (look limpio). En hover, fondo sutil */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-remove,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-remove{ width: 22px; padding: 8px 2px; text-align: center; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-remove a.remove{
  width: 18px; height: 18px;
  display: inline-grid; place-items: center;
  border: 0; background: transparent;     /* SIN borde */
  color: #9aa1ad; font-size: 12px; line-height: 1; text-decoration: none;
  border-radius: 6px;                      /* hover cuadradito suave */
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-remove a.remove:hover{
  background: rgba(0,0,0,.06);
  color: #111;
}

/* 3) “Totales del carrito”: reducir el espacio entre etiqueta y monto */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart_totals .shop_table th{
  width: 1%;                  /* el th se ajusta al contenido -> el monto se acerca */
  padding: 8px 10px 8px 0;    /* menos padding */
  white-space: nowrap;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart_totals .shop_table td{
  padding: 8px 0;             /* menos padding general */
  text-align: right;
}

/* (opcional) compactar la altura entre filas de totales un poco más */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart_totals .shop_table tr + tr th,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart_totals .shop_table tr + tr td{ padding-top: 6px; }

/* (detalle) mantener cupón/actualizar alineados y con misma altura */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions{
  display: grid !important;
  grid-template-columns: 1fr auto;
  gap: 12px; align-items: center;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon{
  display: flex !important; gap: 10px; align-items: center; min-width: 0;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input#coupon_code{
  height: 44px; min-height: 44px;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon .button,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]{
  height: 44px; min-height: 44px;
}

/* === Miniatura más grande ========================================= */

/* Si existe la columna de miniatura, la agrandamos */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-thumbnail,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-thumbnail{ width: 96px; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-thumbnail img{
  width: 80px; height: auto; border-radius: 8px;
}

/* Si NO existe la columna de miniatura, el tema mete la imagen dentro del nombre.
   La mostramos y la ponemos junto al texto, sin duplicados. */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 tr:not(:has(td.product-thumbnail)) td.product-name{
  display: flex; align-items: center; gap: 12px;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 tr:not(:has(td.product-thumbnail)) td.product-name img{
  display: inline-block !important;
  width: 100px; height: auto; border-radius: 8px;
}
/* En filas que SÍ tienen columna de miniatura, ocultamos imágenes dentro del nombre
   para evitar duplicados. */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 tr:has(td.product-thumbnail) td.product-name img{ display: none !important; }

/* === Botón “X” siempre rojo, sin fondo gris ======================= */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-remove,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-remove{ width: 24px; padding: 8px 2px; text-align:center; }

.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-remove a.remove{
  width: 18px; height: 18px;
  display: inline-grid; place-items: center;
  border: 0; background: transparent !important;   /* sin gris */
  color: #ef4444 !important;                       /* rojo base */
  font-size: 12px; line-height: 1; text-decoration: none;
  border-radius: 6px;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-remove a.remove:hover{
  background: transparent !important;              /* nada de gris */
  color: #b91c1c !important;                       /* rojo más oscuro en hover */
}

/* === Más separación para “ACTUALIZAR CARRITO” ===================== */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions{
  padding-top: 20px;                               /* un poco más de aire arriba */
  gap: 16px;                                       /* separación entre cupón y actualizar */
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]{
  margin-left: 2px;                                 /* microajuste para que no se vea pegado */
}

/* Tamaño único para la miniatura del carrito */
.elementor-60112 .elementor-element.elementor-element-3b20fa9{ --thumb: 60px; } /* <— cámbialo a 120px, 140px, etc. */

/* Cuando hay columna de miniatura */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-thumbnail,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-thumbnail{
  width: calc(var(--thumb) + 20px); /* deja aire a los lados */
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.product-thumbnail img{
  width: var(--thumb) !important;
  height: auto !important;
  max-width: none !important;   /* vence límites del tema */
  border-radius: 8px;
}

/* Fallback: si NO hubiera columna de miniatura y la imagen está en el nombre */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 tr:not(:has(td.product-thumbnail)) td.product-name{
  display: flex; align-items: center; gap: 12px;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 tr:not(:has(td.product-thumbnail)) td.product-name img{
  width: var(--thumb) !important;
  height: auto !important;
  max-width: none !important;
  flex: 0 0 auto;
  border-radius: 8px;
}

/* 1) Encabezado PRODUCTO sin hueco */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 table.shop_table thead th.product-name{
  padding-left: 12px !important;   /* antes tenías ~100px */
}

/* 2) Más espacio entre APLICAR CUPÓN y ACTUALIZAR CARRITO */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions{
  display: grid !important;
  grid-template-columns: 1fr auto;  /* cupón a la izq, actualizar a la der */
  gap: 20px !important;             /* <— aquí ajustas la separación */
  align-items: center;
}

/* por si algún margen heredado ensucia, lo neutralizamos */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]{
  margin-left: 0 !important;
}

/* 3) Botón FINALIZAR COMPRA centrado perfecto */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .wc-proceed-to-checkout a.checkout-button,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 a.checkout-button.button.alt{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 52px;            /* puedes dejar 50–54 según gusto */
  padding: 0 18px;
  line-height: normal !important;   /* anulamos el line-height fijo */
}

/* 1) Cabecera: quitar el “hueco” visual entre PRODUCTO y PRECIO
      (pintamos con un pseudo-elemento el ancho de eliminar + miniatura) */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form table.shop_table thead th.product-name{
  position: relative;
  padding-left: 12px !important; /* por si quedó un padding grande de reglas anteriores */
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form table.shop_table thead th.product-name::before{
  content:"";
  position: absolute;
  left: -86px;     /* 26px (remove) + 60px (thumb) */
  top: 0;
  bottom: 0;
  width: 86px;
  background: #f6f7f8;   /* mismo gris de tu encabezado */
  pointer-events: none;
}

/* 2) Más separación entre “APLICAR CUPÓN” y “ACTUALIZAR CARRITO” */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions{
  display: grid !important;
  grid-template-columns: 1fr auto;  /* cupón a la izq, actualizar a la der */
  gap: 20px !important;             /* <-- ajusta aquí el espacio entre botones */
  align-items: center;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]{
  margin-left: 0 !important; /* neutraliza márgenes heredados */
}

/* 3) Centrado perfecto del texto en FINALIZAR COMPRA */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .wc-proceed-to-checkout a.checkout-button,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 a.checkout-button.button.alt{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 52px;                /* puedes dejar 50–54 seg. gusto */
  padding: 0 18px;
  line-height: normal !important;
}

/* 4) Totales del carrito: menos “aire” entre etiqueta e importe */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart_totals .shop_table tr{
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart_totals .shop_table th,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart_totals .shop_table td{
  padding: 8px 0 !important;   /* más compacto que el default */
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart_totals .shop_table td{
  text-align: right;
}

/* ======= PATCH · alineación encabezado y miniatura ======= */
/* Quita el hueco que se veía antes del título PRODUCTO */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 thead th.product-name{
  padding-left: 12px !important;
}

/* Miniatura un poco más grande y columna definida */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 th.product-thumbnail,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-thumbnail{ width: 84px !important; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-thumbnail img{ width: 84px !important; height: auto; border-radius: 8px; }

/* Evita mini-imágenes duplicadas dentro del nombre */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-name img{ display: none !important; }

/* ======= PATCH · no recortar contenido dentro de la tarjeta ======= */
/* El recorte de bordes redondos venía de overflow:hidden */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form{ overflow: visible !important; }

/* ======= PATCH · Acciones con más aire (cupón vs actualizar) ======= */
/* La fila de acciones ya es grid; subimos la separación entre columnas */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions{
  display: grid !important;
  grid-template-columns: 1fr auto;
  gap: 26px !important;            /* antes 14px */
  align-items: center;
}

/* Además, el bloque del cupón deja un margen a la derecha para reforzar el aire */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon{
  margin-right: 8px !important;    /* pequeño extra por si el theme tiene estilos raros */
  min-width: 0 !important;         /* que no empuje el layout */
}

/* El input del cupón mantiene ancho flexible sin empujar al botón de actualizar */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input#coupon_code,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .coupon input.input-text{
  flex: 1 1 360px !important;
  width: auto !important;
  min-width: 300px !important;
  max-width: 640px;
}

/* ======= PATCH · Botón X rojo, sin “fondo gris” al hover ======= */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-remove a.remove{
  width: 18px; height: 18px;
  display: inline-grid; place-items: center;
  border: none !important;
  background: transparent !important;
  color: #ef4444 !important;         /* rojo base */
  font-size: 12px; line-height: 1; text-decoration: none;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 td.product-remove a.remove:hover{
  color: #b91c1c !important;         /* rojo más oscuro */
  background: transparent !important;
  box-shadow: none !important;
}

/* ======= PATCH · botón “Finalizar compra” perfectamente centrado ======= */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .wc-proceed-to-checkout a.checkout-button,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 a.checkout-button.button.alt{
  display: flex !important;
  align-items: center;
  justify-content: center;           /* centra el texto vertical y horizontalmente */
  height: 50px; border-radius: 12px;
}

/* ======= PATCH · remates visuales ======= */
/* Un pelín más de separación vertical dentro de acciones para que nada “pegue” */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions .button,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .woocommerce-cart-form td.actions [name="update_cart"]{
  margin-top: 12px;
  margin-bottom: 12px;
}

/* Carrito vacío: que el mensaje y el botón ocupen todo el ancho del grid */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart-empty,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .return-to-shop{
  grid-column: 1 / -1 !important;   /* abarcar ambas columnas */
  justify-self: center !important;  /* centrar dentro del grid */
}

/* Centrado del contenido del botón */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .cart-empty{ text-align:center !important; }
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .return-to-shop{
  display:flex !important;
  justify-content:center !important;
  margin-top:16px;
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .return-to-shop a{
  display:inline-block !important;
  float:none !important;
  margin:0 auto !important;
}

/* Hacer que el aviso ocupe todo el grid y se centre de verdad */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .wc-empty-cart-message,
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .wc-empty-cart-message .cart-empty{grid-column:1 / -1 !important;width:100% !important}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .wc-empty-cart-message{display:grid !important}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .wc-empty-cart-message .cart-empty{
  display:block !important;
  text-align:center !important;
  margin:0 auto;
  padding:16px;                 /* padding simétrico */
}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .wc-empty-cart-message .cart-empty::before{display:none !important}  /* quita el ícono que empuja */

/* Botón centrado (lo de antes) */
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .return-to-shop{grid-column:1 / -1 !important;display:flex !important;justify-content:center !important;margin-top:16px}
.elementor-60112 .elementor-element.elementor-element-3b20fa9 .return-to-shop a{display:inline-block !important;float:none !important;margin:0 auto !important}/* End custom CSS */