.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-21 .elementor-element.elementor-element-c86ff16{width:var( --container-widget-width, 117.085% );max-width:117.085%;--container-widget-width:117.085%;--container-widget-flex-grow:0;}.elementor-21 .elementor-element.elementor-element-c86ff16.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-widget-search{--e-search-input-color:var( --e-global-color-text );}.elementor-widget-search.e-focus{--e-search-input-color:var( --e-global-color-text );}.elementor-widget-search .elementor-pagination{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-21 .elementor-element.elementor-element-5b78736{width:var( --container-widget-width, 104.395% );max-width:104.395%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:104.395%;--container-widget-flex-grow:0;--e-search-placeholder-color:#979797;--e-search-icon-label-color:#000000;--e-search-input-transition:0.5s;--e-search-icon-label-size:20px;--e-search-input-gap:10px;--e-search-submit-margin-inline-start:0px;--e-search-icon-clear-size:0px;--e-search-results-border-radius:40px 40px 40px 40px;--e-search-input-and-results-gap:0px;}.elementor-21 .elementor-element.elementor-element-5b78736.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-21 .elementor-element.elementor-element-5b78736 .e-search-input{font-family:"Alegreya Sans SC", Sans-serif;border-style:double;border-width:10px 10px 10px 10px;border-color:#DD0000;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);border-radius:050px 050px 050px 050px;}.elementor-21 .elementor-element.elementor-element-5b78736.e-focus{--e-search-input-color:#000000;--e-search-icon-label-color:#AAAAAA;}.elementor-21 .elementor-element.elementor-element-5b78736.e-focus .e-search-input{border-style:double;border-width:10px 10px 10px 10px;border-color:#FF5330;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-21 .elementor-element.elementor-element-6056f5c{width:var( --container-widget-width, 101.303% );max-width:101.303%;--container-widget-width:101.303%;--container-widget-flex-grow:0;--e-nav-menu-horizontal-menu-item-margin:calc( 0px / 2 );}.elementor-21 .elementor-element.elementor-element-6056f5c.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-menu-toggle{margin:0 auto;}.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu .elementor-item{font-family:"Rum Raisin", Sans-serif;font-size:17px;font-weight:700;line-height:40px;letter-spacing:-1.4px;word-spacing:7px;}.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;padding-left:8px;padding-right:8px;padding-top:6px;padding-bottom:6px;}.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--main .elementor-item:hover,
					.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--main .elementor-item:focus{color:#F1442C;fill:#F1442C;}.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:#C20000;}.elementor-21 .elementor-element.elementor-element-6056f5c .e--pointer-framed .elementor-item:before,
					.elementor-21 .elementor-element.elementor-element-6056f5c .e--pointer-framed .elementor-item:after{border-color:#C20000;}.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#AD2F00;}.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:before,
					.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:after{background-color:#A88E8E;}.elementor-21 .elementor-element.elementor-element-6056f5c .e--pointer-framed .elementor-item.elementor-item-active:before,
					.elementor-21 .elementor-element.elementor-element-6056f5c .e--pointer-framed .elementor-item.elementor-item-active:after{border-color:#A88E8E;}.elementor-21 .elementor-element.elementor-element-6056f5c .e--pointer-framed .elementor-item:before{border-width:0px;}.elementor-21 .elementor-element.elementor-element-6056f5c .e--pointer-framed.e--animation-draw .elementor-item:before{border-width:0 0 0px 0px;}.elementor-21 .elementor-element.elementor-element-6056f5c .e--pointer-framed.e--animation-draw .elementor-item:after{border-width:0px 0px 0 0;}.elementor-21 .elementor-element.elementor-element-6056f5c .e--pointer-framed.e--animation-corners .elementor-item:before{border-width:0px 0 0 0px;}.elementor-21 .elementor-element.elementor-element-6056f5c .e--pointer-framed.e--animation-corners .elementor-item:after{border-width:0 0px 0px 0;}.elementor-21 .elementor-element.elementor-element-6056f5c .e--pointer-underline .elementor-item:after,
					 .elementor-21 .elementor-element.elementor-element-6056f5c .e--pointer-overline .elementor-item:before,
					 .elementor-21 .elementor-element.elementor-element-6056f5c .e--pointer-double-line .elementor-item:before,
					 .elementor-21 .elementor-element.elementor-element-6056f5c .e--pointer-double-line .elementor-item:after{height:0px;}.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:0px;}.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--dropdown .elementor-item, .elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:"RocknRoll One", Sans-serif;font-size:1px;font-weight:500;}.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--dropdown{border-radius:0px 0px 0px 0px;}.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--dropdown li:first-child a{border-top-left-radius:0px;border-top-right-radius:0px;}.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--dropdown li:last-child a{border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, .elementor-21 .elementor-element.elementor-element-6056f5c .elementor-nav-menu__container.elementor-nav-menu--dropdown{margin-top:0px !important;}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-name a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-price{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons .elementor-button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--view-cart{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--checkout{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .woocommerce-mini-cart__empty-message{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-21 .elementor-element.elementor-element-cc356d8 .elementor-menu-cart__close-button, .elementor-21 .elementor-element.elementor-element-cc356d8 .elementor-menu-cart__close-button-custom{margin-right:auto;}.elementor-21 .elementor-element.elementor-element-cc356d8{width:var( --container-widget-width, 50% );max-width:50%;margin:80px 0px calc(var(--kit-widget-spacing, 0px) + 75px) 50px;padding:0px 30px 0px 30px;--container-widget-width:50%;--container-widget-flex-grow:0;--main-alignment:center;--divider-style:solid;--subtotal-divider-style:solid;--elementor-remove-from-cart-button:none;--remove-from-cart-button:block;--toggle-button-icon-color:#FFFFFF;--toggle-icon-size:30px;--cart-border-style:none;--remove-item-button-size:0px;--remove-item-button-color:#FFFFFF;--divider-width:0px;--subtotal-divider-top-width:0px;--subtotal-divider-right-width:0px;--subtotal-divider-bottom-width:0px;--subtotal-divider-left-width:0px;--product-divider-gap:0px;--cart-footer-layout:1fr 1fr;--products-max-height-sidecart:calc(100vh - 240px);--products-max-height-minicart:calc(100vh - 385px);--view-cart-button-text-color:#FFFFFF;--view-cart-button-background-color:#990000;--view-cart-button-padding:0px 0px 0px 0px;--checkout-button-text-color:#FFFFFF;--checkout-button-background-color:#990000;--checkout-button-padding:0px 0px 0px 0px;--empty-message-alignment:center;}.elementor-21 .elementor-element.elementor-element-cc356d8.elementor-element{--align-self:center;--order:-99999 /* order start hack */;--flex-grow:1;--flex-shrink:0;}.elementor-21 .elementor-element.elementor-element-cc356d8 .elementor-menu-cart__toggle .elementor-button{gap:15px;}body:not(.rtl) .elementor-21 .elementor-element.elementor-element-cc356d8 .elementor-menu-cart__toggle .elementor-button-icon .elementor-button-icon-qty[data-counter]{right:-20px;top:-20px;}body.rtl .elementor-21 .elementor-element.elementor-element-cc356d8 .elementor-menu-cart__toggle .elementor-button-icon .elementor-button-icon-qty[data-counter]{right:20px;top:-20px;left:auto;}.elementor-21 .elementor-element.elementor-element-cc356d8 .widget_shopping_cart_content{--subtotal-divider-left-width:0;--subtotal-divider-right-width:0;}.elementor-21 .elementor-element.elementor-element-cc356d8 .elementor-menu-cart__footer-buttons a.elementor-button--view-cart{font-family:"Roboto", Sans-serif;font-weight:600;border-radius:10px 10px 10px 10px;}.elementor-21 .elementor-element.elementor-element-cc356d8 .elementor-button--view-cart{border-style:double;border-width:5px 5px 5px 5px;border-color:#FFFFFF;}.elementor-21 .elementor-element.elementor-element-cc356d8 .elementor-button--checkout{border-style:double;border-width:5px 5px 5px 5px;border-color:#FFFFFF;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-21 .elementor-element.elementor-element-cc356d8 .elementor-menu-cart__footer-buttons a.elementor-button--checkout{border-radius:20px 20px 20px 20px;}.elementor-21 .elementor-element.elementor-element-cc356d8 .woocommerce-mini-cart__empty-message{font-family:"Reggae One", Sans-serif;font-weight:600;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for search, class: .elementor-element-5b78736 */.elementor-search-form__submit {
    display: none !important;
}/* End custom CSS */
/* Start custom CSS for woocommerce-menu-cart, class: .elementor-element-cc356d8 *//* Ocultar precio */
.elementor-menu-cart__subtotal,
.elementor-menu-cart__toggle .elementor-button-text {
    display: none !important;
}

/* Centrado perfecto del icono */
.elementor-widget-woocommerce-menu-cart .elementor-widget-container {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 100% !important;
}

.elementor-menu-cart__toggle {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 100% !important;
}

.elementor-menu-cart__toggle .elementor-button {
    background: transparent !important;
    padding: 0 !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Icono blanco y visible */
.elementor-menu-cart__toggle .elementor-button-icon i,
.elementor-menu-cart__toggle .elementor-button-icon svg {
    font-size: 26px !important;
    color: #ffffff !important;
}

/* Burbuja roja */
.elementor-menu-cart__toggle .elementor-button-icon {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.elementor-menu-cart__toggle .elementor-button-icon-qty {
    background: #e30613 !important;
    color: #ffffff !important;
    border-radius: 50% !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    width: 18px !important;
    height: 18px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: absolute !important;
    top: -8px !important;
    right: -10px !important;
}

/* ── MINI CARRITO DESPLEGABLE ── */

/* Quitar overlay negro de la página */
.elementor-menu-cart__overlay {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    background: transparent !important;
}

/* Contenedor del mini carrito */
.elementor-menu-cart__main {
    background: #0d0d0d !important;
    border: 1px solid #e30613 !important;
    border-radius: 12px !important;
    box-shadow: 0 12px 40px rgba(227,6,19,0.2), 0 4px 20px rgba(0,0,0,0.8) !important;
    min-width: 320px !important;
    overflow: hidden !important;
}

/* Productos */
.woocommerce-mini-cart-item {
    background: #111111 !important;
    border-bottom: 1px solid #2a2a2a !important;
    padding: 14px 16px !important;
}

.woocommerce-mini-cart-item img {
    border-radius: 8px !important;
    border: 1px solid #2a2a2a !important;
}

.woocommerce-mini-cart-item a:not(.remove) {
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-decoration: none !important;
}

.woocommerce-mini-cart-item a:not(.remove):hover {
    color: #e30613 !important;
}

.woocommerce-mini-cart-item .quantity {
    color: #aaaaaa !important;
    font-size: 13px !important;
}

.woocommerce-mini-cart-item .quantity .amount {
    color: #e30613 !important;
    font-weight: 700 !important;
}

.woocommerce-mini-cart-item .remove {
    color: #555 !important;
    transition: color 0.2s ease !important;
}

.woocommerce-mini-cart-item .remove:hover {
    color: #e30613 !important;
    background: transparent !important;
}

/* Total */
.woocommerce-mini-cart__total {
    background: #0d0d0d !important;
    border-top: 2px solid #e30613 !important;
    padding: 14px 16px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}

.woocommerce-mini-cart__total strong {
    color: #cccccc !important;
    font-size: 14px !important;
}

.woocommerce-mini-cart__total .amount {
    color: #e30613 !important;
    font-size: 18px !important;
    font-weight: 700 !important;
}

/* Botones separados */
.woocommerce-mini-cart__buttons {
    padding: 14px 16px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    background: #0d0d0d !important;
}

.woocommerce-mini-cart__buttons a.button:first-child {
    background: transparent !important;
    border: 2px solid #e30613 !important;
    color: #e30613 !important;
    border-radius: 50px !important;
    padding: 11px 20px !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-align: center !important;
    text-decoration: none !important;
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    transition: background 0.2s, color 0.2s !important;
}

.woocommerce-mini-cart__buttons a.button:first-child:hover {
    background: #e30613 !important;
    color: #ffffff !important;
}

.woocommerce-mini-cart__buttons a.button:last-child {
    background: #e30613 !important;
    border: 2px solid #e30613 !important;
    color: #ffffff !important;
    border-radius: 50px !important;
    padding: 11px 20px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    text-align: center !important;
    text-decoration: none !important;
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    transition: background 0.2s !important;
}

.woocommerce-mini-cart__buttons a.button:last-child:hover {
    background: #b0050f !important;
    border-color: #b0050f !important;
}

/* ── SEPARACIÓN BOTONES DEL MINI CARRITO ── */

/* Contenedor de botones con espacio superior */
.elementor-menu-cart__footer-buttons {
    padding: 16px !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    background: #0d0d0d !important;
    border-top: 2px solid #e30613 !important;
    margin-top: 8px !important;
}

/* Botón Ver carrito */
.elementor-menu-cart__footer-buttons .elementor-button--view-cart {
    background: transparent !important;
    border: 2px solid #e30613 !important;
    color: #e30613 !important;
    border-radius: 50px !important;
    padding: 12px 16px !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-align: center !important;
    text-decoration: none !important;
    transition: background 0.2s, color 0.2s !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover {
    background: #e30613 !important;
    color: #ffffff !important;
}

/* Botón Finalizar compra */
.elementor-menu-cart__footer-buttons .elementor-button--checkout {
    background: #e30613 !important;
    border: 2px solid #e30613 !important;
    color: #ffffff !important;
    border-radius: 50px !important;
    padding: 12px 16px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    text-align: center !important;
    text-decoration: none !important;
    transition: background 0.2s !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.elementor-menu-cart__footer-buttons .elementor-button--checkout:hover {
    background: #b0050f !important;
    border-color: #b0050f !important;
    color: #ffffff !important;
}

/* Espacio entre lista de productos y botones */
.elementor-menu-cart__products {
    padding-bottom: 4px !important;
}

/* Último producto sin borde inferior para no duplicar con el borde del footer */
.woocommerce-mini-cart-item:last-child {
    border-bottom: none !important;
}

/* Subtotal con más padding */
.elementor-menu-cart__subtotal {
    display: none !important;
}

/* Scroll si hay muchos productos */
.elementor-menu-cart__main .widget_shopping_cart_content {
    max-height: 420px !important;
    overflow-y: auto !important;
    scrollbar-width: thin !important;
    scrollbar-color: #e30613 #1a1a1a !important;
}

.elementor-menu-cart__main .widget_shopping_cart_content::-webkit-scrollbar {
    width: 4px !important;
}

.elementor-menu-cart__main .widget_shopping_cart_content::-webkit-scrollbar-track {
    background: #1a1a1a !important;
}

.elementor-menu-cart__main .widget_shopping_cart_content::-webkit-scrollbar-thumb {
    background: #e30613 !important;
    border-radius: 4px !important;
}

/* ============================================
   CARRITO + CHECKOUT - MECHANIC PRO
   ============================================ */

/* ── PÁGINA CARRITO (WC Blocks) ── */
.wp-block-woocommerce-cart,
.wc-block-cart {
    background: #0d0d0d;
    color: #ffffff;
}

/* Tabla del carrito - bloques */
.wc-block-cart-items,
.wp-block-woocommerce-cart .wc-block-components-product-name a,
.wc-block-components-product-name a {
    color: #ffffff !important;
    text-decoration: none !important;
}

.wc-block-components-product-name a:hover {
    color: #ffffff !important;
}

/* Precio en rojo */
.wc-block-cart-items .wc-block-cart-item__total,
.wc-block-components-product-price,
.wc-block-components-totals-item__value {
    color: #e30613 !important;
    font-weight: 700 !important;
}

/* Total estimado */
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    color: #e30613 !important;
    font-size: 20px !important;
    font-weight: 700 !important;
}

/* Botón Finalizar compra */
.wc-block-cart__submit-button,
.wc-block-components-button.wc-block-cart__submit-button {
    background: #e30613 !important;
    color: #ffffff !important;
    border-radius: 50px !important;
    border: none !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    padding: 14px 32px !important;
    transition: background 0.2s ease !important;
    width: 100% !important;
}

.wc-block-cart__submit-button:hover,
.wc-block-components-button.wc-block-cart__submit-button:hover {
    background: #b0050f !important;
    color: #ffffff !important;
}

/* Sidebar totales */
.wc-block-cart__sidebar,
.wp-block-woocommerce-cart-order-summary-block {
    background: #111111 !important;
    border-radius: 16px !important;
    border: 1px solid #2a2a2a !important;
    padding: 20px !important;
}

/* ── CHECKOUT (WC Blocks) ── */
.wp-block-woocommerce-checkout,
.wc-block-checkout {
    background: #0d0d0d;
    color: #ffffff;
}

/* Todos los campos del formulario - INCLUYENDO selects */
.wc-block-components-text-input input,
.wc-block-components-select select,
.wc-block-components-country-input input,
.wc-block-components-state-input select,
.wc-block-components-address-form input,
.wc-block-checkout input,
.wc-block-checkout select,
.wc-block-checkout textarea,
.wc-block-components-form input,
.wc-block-components-form select,
.wp-block-woocommerce-checkout input[type="text"],
.wp-block-woocommerce-checkout input[type="email"],
.wp-block-woocommerce-checkout input[type="tel"],
.wp-block-woocommerce-checkout select {
    background: #1a1a1a !important;
    background-color: #1a1a1a !important;
    border: 1px solid #444 !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    padding: 12px !important;
}

/* Selects específicos - País y Provincia */
.wc-block-components-select__container,
.wc-block-components-country-input .wc-block-components-select__container,
.wc-block-components-state-input .wc-block-components-select__container {
    background: #1a1a1a !important;
    border: 1px solid #444 !important;
    border-radius: 8px !important;
}

.wc-block-components-select__container select,
select.wc-block-components-select__select {
    background: #1a1a1a !important;
    background-color: #1a1a1a !important;
    color: #ffffff !important;
    border: none !important;
}

/* Labels de los campos */
.wc-block-components-text-input label,
.wc-block-components-select label,
.wc-block-components-form label,
.wc-block-checkout label {
    color: #cccccc !important;
    font-weight: 600 !important;
}

/* Focus en campos */
.wc-block-components-text-input input:focus,
.wc-block-components-select select:focus,
.wc-block-checkout input:focus,
.wc-block-checkout select:focus {
    border-color: #e30613 !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(227,6,19,0.2) !important;
}

/* Placeholders */
.wc-block-checkout input::placeholder {
    color: #555 !important;
}

/* ============================================
   CHECKOUT - ESPACIADO CAMPOS FORMULARIO
   ============================================ */

/* Espacio entre cada campo */
.wc-block-components-text-input,
.wc-block-components-select,
.wc-block-components-country-input,
.wc-block-components-state-input,
.wc-block-components-phone-input {
    margin-bottom: 20px !important;
    position: relative !important;
}

/* Label flotante - separación del borde superior */
.wc-block-components-text-input label,
.wc-block-components-select label,
.wc-block-components-country-input label,
.wc-block-components-state-input label,
.wc-block-components-phone-input label {
    color: #cccccc !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    position: absolute !important;
    top: 8px !important;
    left: 14px !important;
    z-index: 1 !important;
    pointer-events: none !important;
    line-height: 1 !important;
}

/* Input con padding-top para que no tape la label */
.wc-block-components-text-input input,
.wc-block-components-phone-input input {
    background: #1a1a1a !important;
    border: 1px solid #333 !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    padding: 28px 14px 10px 14px !important;
    font-size: 15px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    height: 58px !important;
}

/* Select con padding-top */
.wc-block-components-select__container,
.wc-block-components-country-input .wc-block-components-select__container,
.wc-block-components-state-input .wc-block-components-select__container {
    background: #1a1a1a !important;
    border: 1px solid #333 !important;
    border-radius: 8px !important;
    height: 58px !important;
    position: relative !important;
}

.wc-block-components-select__container select,
select.wc-block-components-select__select {
    background: transparent !important;
    color: #ffffff !important;
    border: none !important;
    padding: 28px 14px 10px 14px !important;
    font-size: 15px !important;
    width: 100% !important;
    height: 58px !important;
    box-sizing: border-box !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    cursor: pointer !important;
}

/* ============================================
   SELECT OPTIONS - ESPACIADO Y ESTILO
   ============================================ */

/* Opciones del select desplegado */
.wc-block-components-select__container select option,
select.wc-block-components-select__select option,
.wc-block-checkout select option,
.wc-block-components-form select option {
    background: #1a1a1a !important;
    color: #ffffff !important;
    padding: 12px 14px !important;
    font-size: 15px !important;
    line-height: 2 !important;
}

/* El select en sí con más altura y padding */
.wc-block-components-select__container select,
select.wc-block-components-select__select,
.wc-block-checkout select,
.wc-block-components-form select {
    background: #1a1a1a !important;
    background-color: #1a1a1a !important;
    color: #ffffff !important;
    border: 1px solid #333 !important;
    border-radius: 8px !important;
    padding: 28px 40px 10px 14px !important;
    font-size: 15px !important;
    width: 100% !important;
    height: 58px !important;
    box-sizing: border-box !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    cursor: pointer !important;
    line-height: 1.4 !important;
}

/* Hover sobre opciones */
.wc-block-components-select__container select option:hover,
select.wc-block-components-select__select option:hover,
.wc-block-checkout select option:hover {
    background: #e30613 !important;
    color: #ffffff !important;
}

/* Select enfocado */
.wc-block-components-select__container select:focus,
.wc-block-checkout select:focus {
    border-color: #e30613 !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(227,6,19,0.15) !important;
}

/* Provincia - select nativo estilo consistente */
.wc-block-components-state-input select,
.wc-block-components-country-input select {
    background: #1a1a1a !important;
    background-color: #1a1a1a !important;
    color: #ffffff !important;
    padding: 28px 40px 10px 14px !important;
    height: 58px !important;
    border: 1px solid #333 !important;
    border-radius: 8px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    font-size: 15px !important;
    cursor: pointer !important;
}

.wc-block-components-state-input select:focus,
.wc-block-components-country-input select:focus {
    border-color: #e30613 !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(227,6,19,0.15) !important;
}

/* Focus con borde rojo */
.wc-block-components-text-input input:focus,
.wc-block-components-select__container:focus-within,
.wc-block-components-phone-input input:focus {
    border-color: #e30613 !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(227,6,19,0.15) !important;
}

/* Flecha del select en blanco */
.wc-block-components-select__container::after {
    content: '▾' !important;
    color: #888 !important;
    position: absolute !important;
    right: 14px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    pointer-events: none !important;
    font-size: 14px !important;
}

/* Mensaje de error bajo el campo */
.wc-block-components-validation-error {
    color: #e30613 !important;
    font-size: 12px !important;
    margin-top: 4px !important;
    margin-left: 4px !important;
}

/* Grid de campos en dos columnas - espacio entre ellos */
.wc-block-components-address-form .wc-block-components-address-form__address_1,
.wc-block-components-address-form .wc-block-components-address-form__first_name,
.wc-block-components-address-form .wc-block-components-address-form__last_name,
.wc-block-components-address-form .wc-block-components-address-form__city,
.wc-block-components-address-form .wc-block-components-address-form__postcode {
    margin-bottom: 16px !important;
}

/* Sección de facturación con más padding interno */
.wc-block-checkout__billing-fields,
.wc-block-checkout__shipping-fields,
.wc-block-checkout__contact-fields {
    padding: 30px !important;
    gap: 0 !important;
}

/* Aviso de método de pago - oscuro */
.wc-block-components-notice-banner,
.wc-block-checkout__payment-method {
    background: rgba(227,6,19,0.08) !important;
    border: 1px solid rgba(227,6,19,0.3) !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    padding: 16px !important;
}

.wc-block-components-notice-banner p,
.wc-block-components-notice-banner span {
    color: #ffffff !important;
}

/* Sección de facturación */
.wc-block-checkout__billing-fields,
.wc-block-checkout__shipping-fields,
.wc-block-checkout__contact-fields,
.wc-block-components-address-form {
    background: #111111 !important;
    border-radius: 16px !important;
    padding: 25px !important;
    margin-bottom: 20px !important;
    border: 1px solid #2a2a2a !important;
}

/* Títulos de sección */
.wc-block-checkout__billing-fields h2,
.wc-block-checkout__shipping-fields h2,
.wc-block-checkout__contact-fields h2,
.wc-block-components-checkout-step__title {
    color: #ffffff !important;
    font-size: 20px !important;
    border-bottom: 2px solid #e30613 !important;
    padding-bottom: 10px !important;
    margin-bottom: 20px !important;
}

/* Resumen del pedido - sidebar */
.wc-block-checkout__sidebar,
.wp-block-woocommerce-checkout-order-summary-block {
    background: #111111 !important;
    border-radius: 16px !important;
    border: 1px solid #2a2a2a !important;
    padding: 20px !important;
}

.wc-block-components-order-summary__title,
.wc-block-checkout__sidebar h2 {
    color: #ffffff !important;
    border-bottom: 2px solid #e30613 !important;
    padding-bottom: 10px !important;
}

.wc-block-components-order-summary-item__individual-prices,
.wc-block-components-totals-item__value {
    color: #e30613 !important;
    font-weight: 700 !important;
}

/* Total final checkout */
.wc-block-components-totals-footer-item {
    border-top: 2px solid #e30613 !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    color: #e30613 !important;
    font-size: 20px !important;
    font-weight: 700 !important;
}

/* Botón Realizar el pedido */
.wc-block-components-checkout-place-order-button,
.wc-block-checkout__place-order button {
    background: #e30613 !important;
    color: #ffffff !important;
    border-radius: 50px !important;
    border: none !important;
    font-weight: 700 !important;
    font-size: 18px !important;
    padding: 16px 32px !important;
    width: 100% !important;
    transition: background 0.2s ease !important;
    cursor: pointer !important;
}

.wc-block-components-checkout-place-order-button:hover,
.wc-block-checkout__place-order button:hover {
    background: #b0050f !important;
    color: #ffffff !important;
}

/* ── HOVERS GENERALES EN FONDO OSCURO ── */

/* Links de navegación */
.elementor-nav-menu a:hover,
.elementor-nav-menu .elementor-item:hover {
    background: #e30613 !important;
    color: #ffffff !important;
    border-radius: 4px !important;
}

/* Botones genéricos WooCommerce */
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
    background: #e30613 !important;
    color: #ffffff !important;
}

/* Botón Añadir al carrito */
.woocommerce .add_to_cart_button:hover,
.woocommerce .single_add_to_cart_button:hover {
    background: #e30613 !important;
    color: #ffffff !important;
    border-color: #e30613 !important;
}

/* Mensajes error/éxito */
.woocommerce-error {
    background: #e30613 !important;
    color: #ffffff !important;
    border-radius: 8px !important;
    padding: 15px !important;
    list-style: none !important;
}

.woocommerce-message {
    background: #111111 !important;
    color: #ffffff !important;
    border-top-color: #e30613 !important;
    border-radius: 8px !important;
    padding: 15px !important;
}/* End custom CSS */