.elementor-7 .elementor-element.elementor-element-ab6a909{--display:flex;--min-height:70vh;--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;--justify-content:center;--gap:32px 32px;--row-gap:32px;--column-gap:32px;--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.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 );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );color:var( --e-global-color-primary );}.elementor-7 .elementor-element.elementor-element-7099cb9 .elementor-heading-title{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );color:var( --e-global-color-text );}.elementor-7 .elementor-element.elementor-element-7f2ed9d{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@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 );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-7 .elementor-element.elementor-element-7099cb9 .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );}}@media(max-width:767px){.elementor-7 .elementor-element.elementor-element-ab6a909{--padding-top:48px;--padding-bottom:48px;--padding-left:16px;--padding-right:16px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-7 .elementor-element.elementor-element-7099cb9 .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );}}/* Start custom CSS *//* ============================================================
   AUTOGENETICS — CSS Carrito (WooCommerce + Elementor)
   Pegar en: Elementor > Site Settings > Custom CSS
   Mismos tokens y criterio que el CSS de Checkout ya aprobado.
   ============================================================ */

:root{
  --ag-ink:#0b0b0c;
  --ag-paper:#ffffff;
  --ag-paper-2:#f6f5f2;
  --ag-border:#e3e1dc;
  --ag-text:#1a1a1a;
  --ag-steel:#767676;
  --ag-rojo:#dd2c24;
  --ag-cian:#1ba4d0;
}

.elementor-widget-woocommerce-cart{
  background: var(--ag-paper) !important;
  color: var(--ag-text) !important;
  font-family: 'Barlow Semi Condensed', sans-serif !important;
}

/* ---------- Columnas ---------- */
.e-cart__container{ gap: 36px; align-items: flex-start; }
.e-cart__column-start,
.e-cart__column-end{ background: var(--ag-paper) !important; }
.e-sticky-right-column{ position: sticky; top: 100px; }

@media (max-width: 900px){
  .e-cart__container{ flex-direction: column; }
}

/* ---------- Tabla de productos ---------- */
.shop_table.cart{
  width: 100% !important;
  border-collapse: collapse !important;
}
.shop_table.cart thead th{
  text-align: left !important;
  color: var(--ag-steel) !important;
  font-family: 'Barlow Semi Condensed', sans-serif !important;
  text-transform: uppercase !important;
  font-size: .72rem !important;
  font-weight: 600 !important;
  letter-spacing: .05em;
  padding: 0 10px 12px !important;
  border-bottom: 1px solid var(--ag-border) !important;
}
.shop_table.cart tbody td{
  padding: 16px 10px !important;
  border-bottom: 1px solid var(--ag-border) !important;
  font-family: 'Barlow Semi Condensed', sans-serif !important;
  font-size: .92rem !important;
  color: var(--ag-text) !important;
  vertical-align: middle;
}

/* Miniatura */
.product-thumbnail img{
  width: 64px !important;
  height: 64px !important;
  object-fit: cover;
  border: 1px solid var(--ag-border);
}

/* Nombre de producto */
.product-name a{
  color: var(--ag-text) !important;
  font-weight: 600 !important;
  text-decoration: none;
}
.product-name a:hover{ color: var(--ag-cian) !important; }

/* Precio / subtotal */
.product-price,
.product-subtotal{ color: var(--ag-text) !important; }
.product-subtotal{ text-align: right !important; font-weight: 600 !important; }

/* Quitar producto (×) */
.product-remove a.remove{
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  color: var(--ag-steel) !important;
  background: transparent !important;
  border: 1px solid var(--ag-border);
  font-size: 1rem;
  line-height: 1;
  text-decoration: none !important;
  transition: .15s;
}
.product-remove a.remove:hover{
  color: #fff !important;
  background: var(--ag-rojo) !important;
  border-color: var(--ag-rojo) !important;
}

/* Cantidad */
.product-quantity .quantity{ display: inline-block; }
.product-quantity input.qty{
  width: 64px !important;
  background: var(--ag-paper-2) !important;
  border: 1px solid var(--ag-border) !important;
  color: var(--ag-text) !important;
  font-family: 'Barlow Semi Condensed', sans-serif !important;
  font-size: .9rem !important;
  text-align: center;
  padding: 10px 6px !important;
  border-radius: 0 !important;
}
.product-quantity input.qty:focus{ outline: none; border-color: var(--ag-cian) !important; }

/* Botón "Actualizar carrito" — se oculta si no tiene texto (update automático activo) */
.actions .button[name="update_cart"]{
  background: transparent !important;
  border: 2px solid var(--ag-cian) !important;
  color: var(--ag-cian) !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .05em;
  padding: 10px 18px !important;
  font-size: .82rem !important;
}
.actions .button[name="update_cart"]:empty{ display: none !important; }

/* ---------- Cupón ---------- */
.coupon{ display: flex; gap: 10px; margin-top: 20px; flex-wrap: wrap; }
.coupon-col-start{ flex: 1; min-width: 180px; }
.coupon #coupon_code{
  width: 100% !important;
  background: var(--ag-paper-2) !important;
  border: 1px solid var(--ag-border) !important;
  color: var(--ag-text) !important;
  font-family: 'Barlow Semi Condensed', sans-serif !important;
  font-size: .9rem !important;
  padding: 12px 14px !important;
  border-radius: 0 !important;
}
.coupon #coupon_code::placeholder{ color: #a3a3a3 !important; }
.coupon .e-apply-coupon{
  background: transparent !important;
  border: 1px solid var(--ag-text) !important;
  color: var(--ag-text) !important;
  font-family: 'Barlow Semi Condensed', sans-serif !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .05em;
  font-size: .82rem !important;
  cursor: pointer;
}
.coupon .e-apply-coupon:hover{ background: var(--ag-text) !important; color: #fff !important; }

/* ---------- Total del carrito (columna derecha) ---------- */
.cart_totals{

  padding: 16px 0px;
}
.cart_totals h2{
  font-family: 'Anton', sans-serif !important;
  font-weight: 300 !important;
  font-size: 1.1rem !important;
  color: var(--ag-text) !important;
  border-bottom: 1px solid var(--ag-border);
  padding-bottom: 12px;
  margin: 0 0 20px !important;
}
.cart_totals .shop_table{ width: 100%; border-collapse: collapse; }
.cart_totals th,
.cart_totals td{
  font-family: 'Barlow Semi Condensed', sans-serif !important;
  font-size: .92rem !important;
  font-weight: 300 !important;
  color: var(--ag-text) !important;
  padding: 12px 0 !important;
  border-bottom: 1px solid var(--ag-border) !important;
  text-align: left !important;
}
.cart_totals td{ text-align: right !important; }
.cart_totals .cart-subtotal th,
.cart_totals .cart-subtotal td{ color: var(--ag-steel) !important; }
.cart_totals .order-total th,
.cart_totals .order-total td{
  border-bottom: none !important;
  font-family: 'Anton', sans-serif !important;
  font-weight: 300 !important;
  font-size: 1.15rem !important;
  color: var(--ag-text) !important;
  padding-top: 14px !important;
}
.woocommerce-Price-amount{ color: inherit !important; }

/* Botón "Ir al checkout" */
.wc-proceed-to-checkout .checkout-button{
  display: block;
  width: 100%;
  text-align: center;
  background: var(--ag-rojo) !important;
  color: #fff !important;
  font-family: 'Barlow Semi Condensed', sans-serif !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .05em;
  font-size: .9rem !important;
  padding: 16px 20px !important;
  margin-top: 22px;
  text-decoration: none !important;
  transition: background .15s;
}
.wc-proceed-to-checkout .checkout-button:hover{ background: var(--ag-cian) !important; color: var(--ag-ink) !important; }

/* ---------- Mobile: tabla responsive de WooCommerce ---------- */
@media (max-width: 760px){
  .shop_table.cart thead{ display: none; }
  .shop_table.cart, .shop_table.cart tbody, .shop_table.cart tr, .shop_table.cart td{ display: block; width: 100%; }
  .shop_table.cart tr{ border-bottom: 1px solid var(--ag-border); padding: 14px 0; }
  .shop_table.cart td{ border-bottom: none !important; padding: 6px 0 !important; text-align: left !important; }
  .shop_table.cart td[data-title]::before{
    content: attr(data-title);
    display: block;
    font-size: .68rem;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--ag-steel);
    margin-bottom: 4px;
  }
}/* End custom CSS */