.elementor-79945 .elementor-element.elementor-element-31f6b4d{--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:40px;--margin-bottom:40px;--margin-left:0px;--margin-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );color:var( --e-global-color-primary );}.elementor-79945 .elementor-element.elementor-element-ccf1efd .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:48px;font-weight:700;text-transform:uppercase;}.elementor-79945 .elementor-element.elementor-element-929b890{--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-79945 .elementor-element.elementor-element-4b75fbf .coupon .input-text, .elementor-79945 .elementor-element.elementor-element-4b75fbf .e-cart-totals .input-text, .elementor-79945 .elementor-element.elementor-element-4b75fbf select, .elementor-79945 .elementor-element.elementor-element-4b75fbf .select2-selection--single{background-color:var( --e-global-color-text );}.elementor-79945 .elementor-element.elementor-element-4b75fbf .shop_table .button{background-color:var( --e-global-color-primary );box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-79945 .elementor-element.elementor-element-4b75fbf .woocommerce .wc-proceed-to-checkout .checkout-button{background-color:var( --e-global-color-primary );}.elementor-79945 .elementor-element.elementor-element-4b75fbf{--sections-background-color:#0A0A0A;--sections-title-color:var( --e-global-color-primary );--links-normal-color:var( --e-global-color-accent );--forms-buttons-normal-text-color:#000000;--forms-buttons-border-type:none;--order-summary-color:var( --e-global-color-f4ff951 );--totals-color:#FFFFFF;--checkout-button-normal-text-color:#000000;--checkout-button-hover-text-color:var( --e-global-color-7a6a862 );}.elementor-79945 .elementor-element.elementor-element-4b75fbf {--sections-descriptions-color:var( --e-global-color-f4ff951 );}.elementor-79945 .elementor-element.elementor-element-4b75fbf .woocommerce-cart-form{--order-summary-title-color:var( --e-global-color-primary );}/* Start custom CSS *//* =========================================================
   ESTULIN.MEDIA — Estilos de marca para el widget de Carrito
   (Elementor Pro "Menu Cart" + WooCommerce mini-cart / cart page)
   Paleta: Gris Grafito #2E2E2E · Blanco Puro #FFFFFF
           Dorado Suave #FFD700 · Rojo Intenso #A4161A
   Tipografía: Montserrat
   ========================================================= */

:root{
  --em-grafito: #2E2E2E;
  --em-grafito-suave: #3a3a3a;
  --em-blanco: #FFFFFF;
  --em-dorado: #FFD700;
  --em-dorado-hover: #e6c200;
  --em-rojo: #A4161A;
  --em-rojo-hover: #8a1216;
  --em-borde: rgba(255,255,255,0.08);
  --em-texto-muted: rgba(255,255,255,0.6);
  --em-font: 'Montserrat', sans-serif;
}

/* ---------------------------------------------------------
   1. ICONO / TOGGLE DEL CARRITO (header)
--------------------------------------------------------- */
.elementor-menu-cart__toggle{
  color: var(--em-blanco);
  transition: color .2s ease, transform .2s ease;
}
.elementor-menu-cart__toggle:hover{
  color: var(--em-dorado);
  transform: translateY(-1px);
}
.elementor-menu-cart__toggle .elementor-button-icon svg{
  fill: currentColor;
}

/* Contador de productos (badge) */
.elementor-menu-cart__toggle .elementor-menu-cart__cart-count,
.elementor-menu-cart__counter{
  background-color: var(--em-rojo);
  color: var(--em-blanco);
  font-family: var(--em-font);
  font-weight: 700;
  font-size: 11px;
  border: 2px solid var(--em-grafito);
}

/* ---------------------------------------------------------
   2. CONTENEDOR DESPLEGABLE (dropdown mini-cart)
--------------------------------------------------------- */
.elementor-menu-cart__container{
  background-color: var(--em-grafito);
  border: 1px solid var(--em-borde);
  border-radius: 8px;
  box-shadow: 0 12px 32px rgba(0,0,0,0.45);
  font-family: var(--em-font);
  overflow: hidden;
}

.elementor-menu-cart__main{
  background-color: var(--em-grafito);
}

/* Título "Carrito de la compra" si el tema lo muestra */
.elementor-menu-cart__title,
.widget_shopping_cart_content > h3{
  color: var(--em-dorado);
  font-family: var(--em-font);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .03em;
  border-bottom: 1px solid var(--em-borde);
  padding: 14px 20px;
}

/* ---------------------------------------------------------
   3. LISTA DE PRODUCTOS EN EL CARRITO
--------------------------------------------------------- */
.widget_shopping_cart_content ul.woocommerce-mini-cart,
.elementor-menu-cart__main ul.woocommerce-mini-cart{
  margin: 0;
  padding: 8px 0;
}

.widget_shopping_cart_content ul.woocommerce-mini-cart li.woocommerce-mini-cart-item,
.elementor-menu-cart__main ul.woocommerce-mini-cart li.woocommerce-mini-cart-item{
  padding: 12px 20px;
  border-bottom: 1px solid var(--em-borde);
  position: relative;
}
.widget_shopping_cart_content ul.woocommerce-mini-cart li.woocommerce-mini-cart-item:last-child{
  border-bottom: none;
}

/* Miniatura del producto */
.woocommerce-mini-cart-item img{
  border-radius: 6px;
  border: 1px solid var(--em-borde);
  float: left;
  margin-right: 12px;
  width: 56px;
  height: 56px;
  object-fit: cover;
}

/* Nombre del producto */
.woocommerce-mini-cart-item a:not(.remove){
  color: var(--em-blanco);
  font-family: var(--em-font);
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
  transition: color .2s ease;
}
.woocommerce-mini-cart-item a:not(.remove):hover{
  color: var(--em-dorado);
}

/* Cantidad y precio (.quantity) */
.woocommerce-mini-cart-item .quantity{
  display: block;
  color: var(--em-texto-muted);
  font-family: var(--em-font);
  font-size: 13px;
  margin-top: 2px;
}
.woocommerce-mini-cart-item .quantity .woocommerce-Price-amount{
  color: var(--em-dorado);
  font-weight: 700;
}

/* Botón eliminar (X) */
.woocommerce-mini-cart-item a.remove{
  color: var(--em-texto-muted) !important;
  background: transparent !important;
  font-size: 18px !important;
  line-height: 1 !important;
  position: absolute;
  top: 12px;
  right: 16px;
  transition: color .2s ease, transform .2s ease;
}
.woocommerce-mini-cart-item a.remove:hover{
  color: var(--em-rojo) !important;
  transform: scale(1.15);
}

/* Carrito vacío */
.woocommerce-mini-cart__empty-message{
  color: var(--em-texto-muted);
  font-family: var(--em-font);
  font-size: 14px;
  text-align: center;
  padding: 30px 20px;
}

/* ---------------------------------------------------------
   4. SUBTOTAL Y BOTONES (footer del dropdown)
--------------------------------------------------------- */
.woocommerce-mini-cart__total.total{
  padding: 14px 20px;
  border-top: 1px solid var(--em-borde);
  color: var(--em-blanco);
  font-family: var(--em-font);
  font-weight: 700;
  font-size: 15px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.woocommerce-mini-cart__total.total strong{
  color: var(--em-blanco);
}
.woocommerce-mini-cart__total.total .woocommerce-Price-amount{
  color: var(--em-dorado);
  font-size: 16px;
}

.woocommerce-mini-cart__buttons{
  display: flex;
  gap: 10px;
  padding: 6px 20px 20px;
}

/* Botón "Ver carrito" — estilo outline */
.woocommerce-mini-cart__buttons a.wc-forward:not(.checkout){
  flex: 1;
  text-align: center;
  background-color: transparent;
  color: var(--em-blanco);
  border: 1px solid var(--em-blanco);
  border-radius: 4px;
  font-family: var(--em-font);
  font-weight: 600;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .03em;
  padding: 11px 14px;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
.woocommerce-mini-cart__buttons a.wc-forward:not(.checkout):hover{
  background-color: var(--em-blanco);
  color: var(--em-grafito);
}

/* Botón "Finalizar compra" — CTA dorado */
.woocommerce-mini-cart__buttons a.checkout.wc-forward{
  flex: 1;
  text-align: center;
  background-color: var(--em-dorado);
  color: var(--em-grafito);
  border: 1px solid var(--em-dorado);
  border-radius: 4px;
  font-family: var(--em-font);
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .03em;
  padding: 11px 14px;
  transition: background-color .2s ease, border-color .2s ease, transform .2s ease;
}
.woocommerce-mini-cart__buttons a.checkout.wc-forward:hover{
  background-color: var(--em-dorado-hover);
  border-color: var(--em-dorado-hover);
  transform: translateY(-1px);
}

/* ---------------------------------------------------------
   5. PÁGINA DE CARRITO COMPLETA (shortcode [woocommerce_cart])
--------------------------------------------------------- */
.woocommerce-cart-form,
table.shop_table{
  font-family: var(--em-font);
  color: var(--em-blanco);
  background-color: transparent;
  border-collapse: collapse;
  width: 100%;
}

table.shop_table thead th{
  background-color: var(--em-grafito);
  color: var(--em-dorado);
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: .04em;
  font-weight: 700;
  padding: 14px 12px;
  border-bottom: 2px solid var(--em-dorado);
}

table.shop_table tbody tr.cart_item{
  border-bottom: 1px solid var(--em-borde);
}
table.shop_table tbody tr.cart_item td{
  padding: 16px 12px;
  vertical-align: middle;
}

table.shop_table .product-name a{
  color: var(--em-blanco);
  font-weight: 600;
  text-decoration: none;
}
table.shop_table .product-name a:hover{
  color: var(--em-dorado);
}

table.shop_table .product-price,
table.shop_table .product-subtotal{
  color: var(--em-dorado);
  font-weight: 700;
}

/* Selector de cantidad */
table.shop_table .quantity .qty{
  background-color: var(--em-grafito-suave);
  border: 1px solid var(--em-borde);
  color: var(--em-blanco);
  border-radius: 4px;
  font-family: var(--em-font);
  text-align: center;
  padding: 8px;
}

/* Botón eliminar en tabla */
table.shop_table a.remove{
  color: var(--em-texto-muted) !important;
  border-color: var(--em-texto-muted) !important;
  transition: color .2s ease, border-color .2s ease, background-color .2s ease;
}
table.shop_table a.remove:hover{
  color: var(--em-blanco) !important;
  background-color: var(--em-rojo) !important;
  border-color: var(--em-rojo) !important;
}

/* Botón "Actualizar carrito" */
.woocommerce-cart-form button[name="update_cart"]{
  background-color: transparent;
  color: var(--em-blanco);
  border: 1px solid var(--em-blanco);
  border-radius: 4px;
  font-family: var(--em-font);
  font-weight: 600;
  text-transform: uppercase;
  font-size: 13px;
  letter-spacing: .03em;
  padding: 12px 24px;
  transition: background-color .2s ease, color .2s ease;
}
.woocommerce-cart-form button[name="update_cart"]:hover{
  background-color: var(--em-blanco);
  color: var(--em-grafito);
}

/* Código de cupón */
.woocommerce-cart-form .coupon .input-text{
  background-color: var(--em-grafito-suave);
  border: 1px solid var(--em-borde);
  color: var(--em-blanco);
  border-radius: 4px;
  font-family: var(--em-font);
  padding: 10px 14px;
}
.woocommerce-cart-form .coupon button{
  background-color: var(--em-grafito-suave);
  border: 1px solid var(--em-blanco);
  color: var(--em-blanco);
  border-radius: 4px;
  font-family: var(--em-font);
  font-weight: 600;
  text-transform: uppercase;
  font-size: 13px;
  padding: 10px 18px;
  transition: background-color .2s ease;
}
.woocommerce-cart-form .coupon button:hover{
  background-color: var(--em-dorado);
  color: var(--em-grafito);
  border-color: var(--em-dorado);
}

/* ---------------------------------------------------------
   6. RESUMEN DEL PEDIDO (cart_totals)
--------------------------------------------------------- */
.cart_totals{
  background-color: var(--em-grafito);
  border: 1px solid var(--em-borde);
  border-radius: 8px;
  padding: 24px;
  font-family: var(--em-font);
}
.cart_totals h2{
  color: var(--em-dorado);
  font-weight: 700;
  text-transform: uppercase;
  font-size: 16px;
  letter-spacing: .03em;
  margin-bottom: 16px;
}
.cart_totals table.shop_table{
  border: none;
}
.cart_totals table.shop_table th,
.cart_totals table.shop_table td{
  background-color: transparent;
  border-bottom: 1px solid var(--em-borde);
  color: var(--em-blanco);
  padding: 12px 0;
}
.cart_totals .order-total .amount{
  color: var(--em-dorado);
  font-size: 18px;
  font-weight: 700;
}

/* Botón "Finalizar compra" en página de carrito */
.wc-proceed-to-checkout a.checkout-button{
  display: block;
  width: 100%;
  text-align: center;
  background-color: var(--em-dorado);
  color: var(--em-grafito);
  font-family: var(--em-font);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .03em;
  font-size: 14px;
  border-radius: 4px;
  padding: 14px 20px;
  margin-top: 12px;
  transition: background-color .2s ease, transform .2s ease;
}
.wc-proceed-to-checkout a.checkout-button:hover{
  background-color: var(--em-dorado-hover);
  transform: translateY(-1px);
}

/* ---------------------------------------------------------
   7. PÁGINA DE CARRITO — WOOCOMMERCE BLOCKS (Gutenberg)
   Si el carrito se inserta con el bloque nativo "Carrito" de
   WooCommerce (en vez del shortcode [woocommerce_cart]), usa
   estas clases en lugar de las de la sección 5-6.
--------------------------------------------------------- */

.wp-block-woocommerce-cart,
.wc-block-cart{
  font-family: var(--em-font);
}

/* Tarjeta izquierda: listado de productos */
.wc-block-cart-items{
  background-color: var(--em-grafito) !important;
  border: 1px solid var(--em-borde);
  border-radius: 8px;
  color: var(--em-blanco);
}

.wc-block-cart-items__header{
  background-color: var(--em-grafito) !important;
  border-bottom: 2px solid var(--em-dorado);
}
.wc-block-cart-items__header span{
  color: var(--em-dorado) !important;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: .04em;
  font-weight: 700;
}

.wc-block-cart-items__row{
  border-bottom: 1px solid var(--em-borde) !important;
}

.wc-block-components-product-name{
  color: var(--em-blanco) !important;
  font-weight: 600;
  text-decoration: none;
}
.wc-block-components-product-name:hover{
  color: var(--em-dorado) !important;
}

.wc-block-components-product-price,
.wc-block-components-formatted-money-amount,
.wc-block-components-totals-item__value{
  color: var(--em-dorado) !important;
  font-weight: 700;
}

.wc-block-components-product-metadata,
.wc-block-cart-item__prices,
.wc-block-cart-item__quantity{
  color: var(--em-texto-muted) !important;
}

/* Selector de cantidad */
.wc-block-components-quantity-body.elementor-page-79945{
  background-color: var(--em-grafito-suave) !important;
  border: 1px solid var(--em-borde) !important;
  border-radius: 4px;
}
.wc-block-components-quantity-body.elementor-page-79945__input{
  background-color: transparent !important;
  color: var(--em-blanco) !important;
  font-family: var(--em-font);
}
.wc-block-components-quantity-body.elementor-page-79945__button{
  color: var(--em-blanco) !important;
}
.wc-block-components-quantity-body.elementor-page-79945__button:hover{
  color: var(--em-dorado) !important;
}

/* Enlace "Eliminar producto" */
.wc-block-cart-item__remove-link{
  color: var(--em-texto-muted) !important;
  font-family: var(--em-font);
  font-size: 13px;
  transition: color .2s ease;
}
.wc-block-cart-item__remove-link:hover{
  color: var(--em-rojo) !important;
}

/* Cupón de descuento */
.wc-block-components-totals-coupon{
  border-top: 1px solid var(--em-borde) !important;
}
.wc-block-components-totals-coupon__content .wc-block-components-text-input input,
input.wc-block-components-totals-coupon__input{
  background-color: var(--em-grafito-suave) !important;
  border: 1px solid var(--em-borde) !important;
  color: var(--em-blanco) !important;
  border-radius: 4px;
  font-family: var(--em-font);
}
.wc-block-components-totals-coupon__content label{
  color: var(--em-texto-muted) !important;
}
button.wc-block-components-totals-coupon__button{
  background-color: var(--em-grafito-suave) !important;
  border: 1px solid var(--em-blanco) !important;
  color: var(--em-blanco) !important;
  border-radius: 4px;
  font-family: var(--em-font);
  font-weight: 600;
  text-transform: uppercase;
  font-size: 13px;
}
button.wc-block-components-totals-coupon__button:hover{
  background-color: var(--em-dorado) !important;
  border-color: var(--em-dorado) !important;
  color: var(--em-grafito) !important;
}

/* Tarjeta derecha: TOTALES DEL CARRITO */
.wc-block-cart__totals-title{
  color: var(--em-dorado) !important;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 16px;
  letter-spacing: .03em;
}

.wc-block-components-totals-wrapper{
  border-bottom: 1px solid var(--em-borde) !important;
}
.wc-block-components-totals-item__label,
.wc-block-components-totals-item{
  color: var(--em-blanco) !important;
  font-family: var(--em-font);
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label{
  color: var(--em-dorado) !important;
  font-size: 17px;
  font-weight: 700;
}

/* Botón "PROCEDER AL PAGO" — este es el que salía en azul/teal */
.wc-block-cart__submit-container a.wp-block-button__link,
.wc-block-cart__submit-container button,
a.wc-block-cart__submit-button,
.wp-block-woocommerce-proceed-to-checkout-block a{
  background-color: var(--em-dorado) !important;
  color: var(--em-grafito) !important;
  border: 1px solid var(--em-dorado) !important;
  border-radius: 4px !important;
  font-family: var(--em-font) !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: .03em;
  font-size: 14px !important;
  padding: 14px 20px !important;
  transition: background-color .2s ease, transform .2s ease;
}
.wc-block-cart__submit-container a.wp-block-button__link:hover,
.wc-block-cart__submit-container button:hover,
a.wc-block-cart__submit-button:hover,
.wp-block-woocommerce-proceed-to-checkout-block a:hover{
  background-color: var(--em-dorado-hover) !important;
  border-color: var(--em-dorado-hover) !important;
  transform: translateY(-1px);
}

/* Fondo general del bloque de totales (la tarjeta derecha) */
.wc-block-cart__sidebar,
.wp-block-woocommerce-cart-order-summary-block{
  background-color: var(--em-grafito) !important;
  border: 1px solid var(--em-borde);
  border-radius: 8px;
}

/* ---------------------------------------------------------
   8. RESPONSIVE
--------------------------------------------------------- */
@media (max-width: 767px){
  .elementor-menu-cart__container{
    width: 100% !important;
    max-width: 100vw;
    border-radius: 0;
  }
  .woocommerce-mini-cart__buttons{
    flex-direction: column;
  }
  table.shop_table thead{
    display: none;
  }
  table.shop_table tbody tr.cart_item{
    display: block;
    padding: 12px 0;
  }
  table.shop_table tbody tr.cart_item td{
    display: block;
    padding: 6px 0;
  }
}/* End custom CSS */