.elementor-17 .elementor-element.elementor-element-d253a7f{--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;}.elementor-17 .elementor-element.elementor-element-0c4d6bb .coupon .input-text, .elementor-17 .elementor-element.elementor-element-0c4d6bb .e-cart-totals .input-text, .elementor-17 .elementor-element.elementor-element-0c4d6bb select, .elementor-17 .elementor-element.elementor-element-0c4d6bb .select2-selection--single{background-color:#FFFFFF;}.elementor-17 .elementor-element.elementor-element-0c4d6bb .woocommerce .wc-proceed-to-checkout .checkout-button{background-color:#000000;}.elementor-17 .elementor-element.elementor-element-0c4d6bb{--sections-background-color:#FFFFFF;--sections-border-color:#1A1A1A;--links-normal-color:#000000;--sections-radio-buttons-color:#000000;--forms-fields-normal-color:#000000;--order-summary-color:#000000;--product-link-normal-color:#000000;--totals-color:#000000;}.e-woo-select2-wrapper .select2-results__option{color:#000000;}.elementor-17 .elementor-element.elementor-element-0c4d6bb .select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:#000000 transparent transparent transparent;}.elementor-17 .elementor-element.elementor-element-0c4d6bb .woocommerce-cart-form{--order-summary-title-color:#080808;}.elementor-17 .elementor-element.elementor-element-0c4d6bb .coupon{--sections-background-color:#000000;}@media(max-width:767px){.elementor-17 .elementor-element.elementor-element-0c4d6bb > .elementor-widget-container{margin:17px 17px 17px 17px;}}/* Start custom CSS for woocommerce-cart, class: .elementor-element-0c4d6bb *//* ===== Botones WooCommerce en el carrito ===== */
.woocommerce a.button, 
.woocommerce button.button, 
.woocommerce input.button, 
.woocommerce #respond input#submit, 
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    background-color: #111; /* Fondo negro */
    color: #fff; /* Texto blanco */
    font-weight: 600;
    font-size: 15px;
    text-transform: uppercase;
    border-radius: 12px; /* Bordes redondeados */
    padding: 12px 24px;
    border: 2px solid transparent;
    transition: all 0.3s ease;
    box-shadow: 0px 4px 10px rgba(0,0,0,0.15);
}

/* Hover */
.woocommerce a.button:hover, 
.woocommerce button.button:hover, 
.woocommerce input.button:hover, 
.woocommerce #respond input#submit:hover, 
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
    background-color: #fff; /* Fondo blanco */
    color: #111; /* Texto negro */
    border-color: #111;
    box-shadow: 0px 6px 14px rgba(0,0,0,0.25);
    transform: translateY(-2px); /* efecto sutil */
}

/* Botón de checkout más destacado */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    background: linear-gradient(135deg, #ff0000, #ff9900); /* degradado rojo/naranja */
    border: none;
    font-size: 16px;
    font-weight: 700;
}

/* Hover especial para checkout */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
    background: linear-gradient(135deg, #ff9900, #ff0000);
    color: #fff;
    transform: scale(1.05);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d253a7f *//* ==========================
   ESTILOS GENERALES CARRITO
   ========================== */

/* Botones WooCommerce/Elementor */
body.woocommerce-cart .woocommerce a.button,
body.woocommerce-cart .woocommerce button.button,
body.woocommerce-cart .woocommerce input.button,
body.woocommerce-cart .woocommerce #respond input#submit,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
body.woocommerce-cart .elementor .elementor-button,
body.woocommerce-page .elementor .elementor-button {
  background-color: #111 !important;
  color: #fff !important;
  border: 2px solid #111 !important;
  border-radius: 12px;
  font-weight: 700;
  text-transform: uppercase;
  padding: 12px 24px;
  box-shadow: 0 4px 10px rgba(0,0,0,.15);
  transition: all .25s ease;
}

/* Hover botones */
body.woocommerce-cart .woocommerce a.button:hover,
body.woocommerce-cart .woocommerce button.button:hover,
body.woocommerce-cart .woocommerce input.button:hover,
body.woocommerce-cart .woocommerce #respond input#submit:hover,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
body.woocommerce-cart .elementor .elementor-button:hover {
  background-color: #fff !important;
  color: #111 !important;
  border-color: #111 !important;
  transform: translateY(-2px);
}

/* Botón de pagar destacado */
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  background: linear-gradient(135deg,#ff0000,#ff9900) !important;
  border: none !important;
  font-size: 16px;
  font-weight: 800;
}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
  background: linear-gradient(135deg,#ff9900,#ff0000) !important;
  color: #fff !important;
  transform: scale(1.03);
}

/* Inputs cupón */
body.woocommerce-cart .cart .input-text,
body.woocommerce-cart .cart input[type="text"],
body.woocommerce-cart .cart input[type="number"] {
  background: #fff;
  color: #111;
  border: 2px solid #111;
  border-radius: 10px;
  padding: 10px 12px;
}

/* ==========================
   TIPOGRAFÍA Y TABLA
   ========================== */

body.woocommerce-cart .shop_table td.product-name,
body.woocommerce-cart .shop_table td.product-name a,
body.woocommerce-cart .shop_table th,
body.woocommerce-cart .cart_totals,
body.woocommerce-cart .cart_totals .shop_table td,
body.woocommerce-cart .cart_totals .shop_table th {
  color: #111 !important;
  font-weight: 600;
}

/* Nombre del producto: legible y sin cortes raros */
body.woocommerce-cart .shop_table td.product-name a {
  font-size: 16px;
  line-height: 1.45;
  text-decoration: none;
  white-space: normal !important;
  overflow-wrap: break-word !important;  /* rompe solo palabras largas */
  word-break: normal !important;
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  letter-spacing: normal !important;
}

/* Neutraliza reglas agresivas que causan “vertical” dentro del carrito */
body.woocommerce-cart * { word-break: normal !important; }

/* La tabla no debe colapsar columnas */
body.woocommerce-cart table.shop_table { table-layout: auto !important; }

/* Miniatura contenida */
body.woocommerce-cart .shop_table td.product-thumbnail { width: 70px; }

/* Números */
body.woocommerce-cart .shop_table td.product-price,
body.woocommerce-cart .shop_table td.product-subtotal,
body.woocommerce-cart .shop_table td.product-quantity {
  color: #222 !important;
  font-size: 15px;
}

/* ==========================
   FIX DEFINITIVO “LETRAS EN VERTICAL”
   ========================== */

/* Fuerza modo de escritura horizontal y quita transformaciones raras */
body.woocommerce-cart .shop_table td.product-name,
body.woocommerce-cart .shop_table td.product-name a {
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  transform: none !important;
}

/* ==========================
   RESPONSIVE (MÓVIL ≤768px)
   ========================== */
@media (max-width: 768px) {

  /* ---- Layout de fila en FLEX para que el nombre tenga ancho real ---- */
  body.woocommerce-cart table.shop_table.cart tr.cart_item {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    gap: 8px 12px;
  }

  /* Miniatura a la izquierda */
  body.woocommerce-cart td.product-thumbnail {
    display: block !important;
    flex: 0 0 72px !important;
    width: 72px !important;
    margin-right: 8px;
  }

  /* Nombre ocupa el resto; min-width:0 es la CLAVE en flex */
  body.woocommerce-cart td.product-name {
    display: block !important;
    flex: 1 1 calc(100% - 92px) !important;
    min-width: 0 !important;
  }

  /* Tipografía de nombre un poco mayor en móvil */
  body.woocommerce-cart .shop_table td.product-name a {
    font-size: 17px !important;
    line-height: 1.45 !important;
  }

  /* Resto de celdas a siguiente fila (100%) */
  body.woocommerce-cart td.product-price,
  body.woocommerce-cart td.product-quantity,
  body.woocommerce-cart td.product-subtotal,
  body.woocommerce-cart td.actions {
    flex: 1 1 100% !important;
  }

  /* Oculta etiquetas “Price/Qty” duplicadas del modo responsive de Woo */
  body.woocommerce-cart table.shop_table_responsive tr td::before {
    display: none !important;
  }

  /* Botones apilados y a full width */
  body.woocommerce-cart .woocommerce a.button,
  body.woocommerce-cart .woocommerce button.button,
  body.woocommerce-cart .woocommerce input.button,
  body.woocommerce-cart .woocommerce #respond input#submit,
  body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
  body.woocommerce-cart .elementor .elementor-button {
    display: block;
    width: 100% !important;
    text-align: center;
    margin: 8px 0;
    font-size: 16px;
    padding: 14px 18px;
  }

  /* Checkout más grande en móvil */
  body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    font-size: 18px !important;
    font-weight: 800 !important;
    letter-spacing: 0.5px;
  }

  /* Inputs del cupón adaptados */
  body.woocommerce-cart .cart .input-text,
  body.woocommerce-cart .cart input[type="text"],
  body.woocommerce-cart .cart input[type="number"] {
    width: 100% !important;
    margin-bottom: 10px;
    font-size: 15px;
    padding: 12px;
  }
  body.woocommerce-cart .cart .coupon button.button {
    width: 100% !important;
    margin-top: 5px;
  }

  /* Totales debajo (columna única) */
  body.woocommerce-cart .cart-collaterals {
    float: none;
    width: 100% !important;
    margin-top: 20px;
  }

  /* Padding cómodo en celdas */
  body.woocommerce-cart .shop_table td,
  body.woocommerce-cart .shop_table th {
    padding: 10px 8px !important;
  }
}

/* ==========================
   OPCIONAL: Mini-cart de Elementor
   ========================== */
.elementor-menu-cart__product-name a {
  display: inline !important;
  max-width: none !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  line-height: 1.45;
}/* End custom CSS */