/*!/wp-content/themes/hello-theme-child-master/style.css*/:root {
  /* Colores */
  --color-white: #fff;
  --color-primary: #30475E;
  --color-accent: #F4B6A0;
  --color-secondary: #3B3C62;
  --color-gray-50: #7D7777;
  --color-blue-30: #3a4249;
  --color-cyan-60: #85A8B2;
  --color-blue-90: #e5e7eb;
  --color-gray-light-90: #f1f1f1;
  --color-cta: rgb(115, 198, 206);
  --color-red-80: #f49898;
  --color-blue-60: #3b82f6;
  --color-blue-80: #d0d5dd;
  --color-gray-20: #333;
  --color-gray-90: #e5e5e5;
  --color-blue-80-2: #d1d5db;
  --color-gray-50-2: #7C7C7C;
  --color-gray-light-90-2: #EDEDED;
  --color-gray-80: #ccc;
  --color-red-40: #984A3E;
  --color-blue-30-2: #3b3b63;
  --color-blue-50: #69727d;
  --color-red-60: #de6b7d;
  --color-gray-dark-0-a10: rgba(0, 0, 0, 0.1);
  --color-gray-70: #BBBBBB;
  --color-cyan-90: #DBECF3;
  --color-red-100: #FEF8F6;
  --color-red-50: #925a5a;
  --color-gray-40: #636e72;
  --color-red-90: #fae7e7;
  /* Tamanos de fuente */
  --font-size-3xs: 12px;
  --font-size-2xs: 13px;
  --font-size-xs: 14px;
  --font-size-sm: 15px;
  --font-size-base-px: 16px;
  --font-size-base-rem: 1rem;
  --font-size-md: 18px;
  --font-size-lg: 20px;
  /* Espaciado */
  --spacing-5xs: 2px;
  --spacing-4xs: 4px;
  --spacing-3xs: 5px;
  --spacing-2xs: 6px;
  --spacing-xs-rem: .5rem;
  --spacing-xs-px: 8px;
  --spacing-sm: 10px;
  --spacing-md: 12px;
  --spacing-lg: 14px;
  --spacing-xl: 15px;
  --spacing-2xl-rem: 1rem;
  --spacing-2xl-px: 16px;
  --spacing-3xl: 18px;
  --spacing-4xl: 20px;
  --spacing-5xl: 30px;
  --spacing-6xl: 2rem;
  --spacing-7xl: 40px;
  --spacing-8xl: 3rem;
}

/* ==========================================================================
   Hello Elementor Child - style.css
   Refactorizado: media queries agrupadas, reglas y propiedades duplicadas
   eliminadas. Funcionalidad visual preservada intacta.
   ========================================================================== */

/* ===================== INFO DEL TEMA ===================== */

/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* ===================== FUENTES ===================== */

/* Fuentes */

@font-face {
  font-family: 'ITC Souvenir Demi Regular';
  src: url('/wp-content/themes/hello-theme-child-master/assets/fonts/itc-souvenir-demi-regular.woff2') format('opentype');
  font-weight: normal;
  font-style: normal;
 font-display:swap;}

@font-face {
  font-family: 'Euclid Circular B';
  src: url('/wp-content/themes/hello-theme-child-master/assets/fonts/euclid-circular-b/Euclid Circular B Regular.woff2') format('woff2');
  font-weight: normal;
  font-style: normal;
 font-display:swap;}

/* ===================== CABECERA / MENU ===================== */

/* Estilos global */

/*
*, .elementor-icon-list-text {
	font-family: "Euclid Circular B", "Poppins", Sans-serif !important;
}
h1, h2, h3, h4, h5, h6, h7, .menu-item a {
	font-family: "ITC Souvenir Demi Regular", "Poppins", Sans-serif !important;
}
	span.ab-icon::before{ 
		font-family: dashicons !important;
	}
	
	.fa, .fas {
		font-family: "Font Awesome 5 Free" !important;
	}
	
    .fab, #social * {
    	font-family: "Font Awesome 5 Brands" !important;
    }
    
	.elementor-custom-embed-play.elementor-playing i {
		font-family: eicons !important;
	}
	
	[class*=" eicon-"], [class^="eicon"] {
		font-family: "eicons" !important;
	}
	.elementor-star-rating .elementor-star-full {
		font-family: eicons !important;
	}

	
.option-text {
	font-size: 17px !important;
}
		*/

.offer-header {
  display: none;
}

/* ===================== FOOTER ===================== */

/* Estilo carrito */

.wpml-ls-statics-footer {
  z-index: 999;
  display: block;
  position: relative;
  background-color: var(--color-white);
  margin-bottom: 0;
}

/* ===================== GRAVITY FORMS ===================== */

/***End Spinner***/

/** botones gravity forms form 5 pasos **/

body #gform_wrapper_7 .gform_footer input[type=submit] {
  background-color: var(--color-cta);
  font-weight: bold;
  border-width: 2px;
  border-color: var(--color-cta);
  color: rgb(0, 0, 0);
}

body #gform_wrapper_7 .gform_footer input[type=submit]:hover {
  border: 1px solid rgba(114,114,114,0.6);
  background-color: var(--color-white);
}

/** botones gravity forms form 7 pasos **/

body #gform_wrapper_9 .gform_footer input[type=submit] {
  background-color: var(--color-cta);
  font-weight: bold;
  border-width: 2px;
  border-color: var(--color-cta);
  color: rgb(0, 0, 0);
}

body #gform_wrapper_9 .gform_footer input[type=submit]:hover {
  border: 1px solid rgba(114,114,114,0.6);
  background-color: var(--color-white);
}

.elementor-widget.elementor-widget-wp-widget-gform_widget {
  display: none;
}

/* ===================== FORMULARIOS ===================== */

.form-container {
  border-radius: 10px;
  margin-top: -29px;
}

input.no-zoom {
  touch-action: none;
}

#cards_3_test span.bundle-variation select {
  height: 38px;
  border-radius: 12px;
  width: 100%;
  margin: 0 auto;
}

.cuw-offers .cuw-product-variants:has(.variant-select)::before {
  content: '\f0dd';
  position: absolute;
  font-family: "Font Awesome 5 Free";
}

.cuw-offers .cuw-product-variants .variant-select.variant-select {
  padding: 0 var(--spacing-2xl-rem);
  appearance: none;
}

.cuw-offers .cuw-container .variant-select.variant-select {
  background-color: transparent;
}

.gift-cards_form *, .ywgc-form-preview-product-title, .ywgc-form-preview-from-to-container *, .product-template-default #primary * {
  font-family: "Euclid Circular B Regular", Sans-serif !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  color: var(--color-secondary);
}

.ywgc-form-preview-from-to-container .ywgc-form-preview-from-content , .ywgc-form-preview-from-to-container .ywgc-form-preview-to-content, .ywgc-form-preview-from-to-container .ywgc-form-preview-message {
  padding-left: var(--spacing-xs-rem);
}

.gift-cards-list .ywgc-manual-amount input {
  max-width: 120px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  border-radius: 30px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  background-color: #F4D6CE !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  font-family: "Euclid Circular B Regular", Sans-serif !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  font-weight: 600 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  font-size: initial !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  margin-right: var(--spacing-5xl);
  outline: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.ywgc-main-form-preview-container * {
  font-family: "Euclid Circular B Regular", Sans-serif !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.gift-card-content-editor input:not(:first-child), .gift-card-content-editor textarea {
  background-color: #F4E9E1;
  border: none !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  font-family: "Euclid Circular B Regular", Sans-serif !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  padding: var(--spacing-2xl-rem) !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
}

/* Iframes dentro de los inputs */

.payment_method_insite .input-wrap iframe {
  border: none;
  background: transparent;
}

fieldset.redsys-new-card-data > div:first-child .input-wrap.input-wrap {
  height: 55px;
  font-size: var(--font-size-md);
}

/* Ocultar estilos inline conflictivos */

.payment_method_insite .input-wrap#card-number {
  margin-right: 0;
  margin-left: 0;
}

.payment_method_insite .input-wrap.input-wrap {
  margin-left: 0;
}

/* Ajustes para el contenedor unificado */

.insite-unificado,
.insite-unificado #card-form {
  background-color: transparent !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  border: none !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
}

/* Método de pago seleccionado - borde izquierdo rosa */

#payment .payment_methods li.wc_payment_method:has(input:checked) {
  background: var(--color-white);
  box-shadow: inset 4px 0 0 0 var(--color-red-80);
}

/* Radio button del método de pago - primer elemento */

#payment .payment_methods li.wc_payment_method > input[type="radio"] {
  appearance: none;
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  min-width: 20px;
  min-height: 20px;
  border: 2px solid var(--color-blue-80-2);
  border-radius: 50%;
  margin: 0;
  margin-left: var(--spacing-4xl);
  position: relative !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  cursor: pointer;
  flex-shrink: 0;
  transition: all 0.2s ease;
  background: var(--color-white);
  order: 1;
}

/* Radio button checked */

#payment .payment_methods li.wc_payment_method > input[type="radio"]:checked {
  border-color: var(--color-red-80);
  border-width: 6px;
  background: var(--color-white);
}

/* ========================================
   ESTILOS STRIPE (si está activo)
   ======================================== */

#wc-stripe-upe-form {
  background: transparent;
  padding: 0;
  border: none;
}

#terminos_adicionales_wrapper input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  min-width: 20px;
  border: 2px solid var(--color-blue-80-2);
  border-radius: 4px;
  margin: 0;
  cursor: pointer;
  transition: all 0.2s ease;
  position: relative !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

#terminos_adicionales_wrapper input[type="checkbox"]:checked {
  background: var(--color-blue-60);
  border-color: var(--color-blue-60);
}

#terminos_adicionales_wrapper input[type="checkbox"]:checked::after {
  content: '✓';
  position: absolute !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
  top: 50% !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
  left: 50% !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
  transform: translate(-50%, -50%);
  color: var(--color-white);
  font-size: var(--font-size-3xs);
  font-weight: bold;
}

/* ===================== BOTONES ===================== */

button.next-button {
  width: 30%;
  padding: var(--spacing-4xl);
  font-size: var(--font-size-base-px);
  border-radius: 30px;
  margin-top: var(--spacing-5xl);
  background: var(--color-primary);
  color: var(--color-white);
  border: none;
  margin-left: auto;
  margin-right: auto;
  display: block;
  text-align: center;
}

button.next-button:disabled {
  border: none;
  color: var(--color-gray-50-2);
  background-color: var(--color-gray-light-90-2);
}

button.final-button {
  width: 30%;
  padding: var(--spacing-4xl);
  font-size: var(--font-size-base-px);
  border-radius: 30px;
  margin-top: var(--spacing-5xl);
  background: var(--color-primary);
  color: var(--color-white);
  border: none;
  margin-left: auto;
  margin-right: auto;
  display: block;
  text-align: center;
}

button.final-button:disabled {
  border: none;
  color: var(--color-gray-50-2);
  background-color: var(--color-gray-light-90-2);
  width: 30%;
}

button.back-button {
  border: none;
  background: no-repeat;
  font-size: var(--font-size-xs);
  color: var(--color-primary);
}

#cards_1_test .radio-button {
  display: none;
}

#cards_2_test .radio-button {
  display: none;
}

#cards_3_test .radio-button {
  display: none;
}

.e-atc-qty-button-holder {
  width: 60%;
}

.pre-btn {
  display: none;
}

.cuw-offers .cuw-button {
  font-size: .8rem;
}

.cuw-offers .cuw-button.cuw-button {
  border-radius: 30px;
  background-color: var(--color-cyan-60);
}

.shipping-calculator-button {
  color: var(--color-cyan-60) !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
}

.gift_card_template_button.variations_button button, .gift-cards-list .ywgc-amount-buttons.selected_button * {
  color: var(--color-white) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

/* Ajuste específico para contenedores de Stripe/PayPal que a veces traen márgenes raros */

#wc-stripe-payment-request-wrapper,
#ppc-button-wrapper {
  width: 48%;
  margin-top: 0;
}

/* Espacio extra al final de la web para móviles */

/* --- REDSYS MÓVIL: POSICIONAMIENTO FIXED --- */

/* @media screen and (max-width: 767px) {
    .payment_method_insite .input-wrapper#redsys-submit,
    #redsys-submit {
        position: fixed !important;
        bottom: 45px !important;
        left: 5% !important;
        width: 90% !important;

        z-index: 2147483647 !important; 
        
        background-color: #f49898 !important;
        border-radius: 50px !important;
        box-shadow: 0 5px 20px rgba(0,0,0,0.15) !important;
        
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        min-height: 55px !important;
        margin: 0 !important;
        transform: none !important;
    }

    #redsys-submit iframe,
    .input-wrapper#redsys-submit iframe {
        width: 100% !important;
        height: 55px !important;
        min-height: 55px !important;
        border-radius: 50px !important;
    }

    .payment_box .payment_method_insite {
        width: 90% !important;
    }
}

@media screen and (max-width: 767px) {
    body {
        padding-bottom: 100px !important;
    }
} */

/* Ocultar boton whatsapp checkout /FR */

.page-id-85016 .happymami-whatsapp-button, .page-id-85016 .happymami-whatsapp-text {
  display: none !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

/* ===================== WOOCOMMERCE / CHECKOUT ===================== */

/*
button.single_add_to_cart_button.button.alt {
    background: #30475E!important;
    color: white!important;
    opacity: 1!important;
    font-size: 16px!important;
    font-weight: bold!important;
    font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji!important;
    font-style: normal!important;
    width: 100%;
    position: static;
    bottom: 0px;
    margin-left: 0px!important;
}
*/

/* --- ESTILOS MODERNOS SELECTOR CANTIDAD (OPTIMIZADO) --- */

/* 1. Contenedor Principal */

.woocommerce .quantity {
  display: flex !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  align-items: center;
  justify-content: center;
  margin: 0 auto !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  border: 1px solid var(--color-blue-80);
  border-radius: 8px;
  /* Bordes redondeados modernos */
  background: var(--color-white);
  overflow: hidden;
  /* Para que los botones respeten el borde */
  box-shadow: 0 1px 2px rgba(16, 24, 40, 0.05);
  /* Sombra muy sutil */
}

/* 2. Input del Número (Centro) */

.woocommerce .quantity input.qty {
  width: 45px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  /* Un poco más ancho para que quepan 2 dígitos holgados */
  height: 38px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  border: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  border-radius: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  text-align: center;
  padding: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  font-weight: 600;
  color: #2f393f;
  background: var(--color-white);
  font-size: var(--font-size-base-rem);
  -moz-appearance: textfield;
  /* Quitar flechas nativas navegador */
  appearance: textfield;
}

.woocommerce .quantity input.qty::-webkit-inner-spin-button,
.woocommerce .quantity input.qty::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* 3. Botones + y - (Lados) */

.woocommerce .quantity .minus,
.woocommerce .quantity .plus {
  width: 35px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  height: 38px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  background: #f9fafb !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  /* Gris muy suave */
  color: #667085;
  border: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  border-radius: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  cursor: pointer;
  font-size: var(--font-size-md);
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
  padding: 0;
  margin: 0;
}

/* Líneas divisorias */

.woocommerce .quantity .minus {
  border-right: 1px solid var(--color-blue-80) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.woocommerce .quantity .plus {
  border-left: 1px solid var(--color-blue-80) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

/* Efecto Hover (Ratón encima) */

.woocommerce .quantity .minus:hover,
.woocommerce .quantity .plus:hover {
  background: var(--color-red-80) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  /* Rosa HappyMami */
  color: var(--color-white) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

/* Estado Deshabilitado (Visual) */

.woocommerce .quantity .minus.disabled,
.woocommerce .quantity .minus:disabled {
  opacity: 0.5 !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  background: #f2f2f2 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  color: var(--color-gray-80) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  cursor: not-allowed !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  pointer-events: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

/* Corrección para Elementor que a veces mete estilos extra */

.elementor-widget-woocommerce-cart .woocommerce .input-text.qty {
  border: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  margin: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  text-align: center !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

button.single_add_to_cart_button.button.alt.added {
  width: 100%;
}

/* Ocultando custom fields durante el checkout */

.woocommerce-order-details .woocommerce-table--custom-fields {
  display: none;
}

.woocommerce-terms-and-conditions-wrapper {
  margin-top: var(--spacing-6xl);
}

.woocommerce-terms-and-conditions-checkbox-text .woocommerce-privacy-policy-link {
  color: var(--color-red-40) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  text-transform: lowercase;
}

/* Carrito */

.elementor-menu-cart__main .variation dt {
  font-weight: bold;
}

.elementor-menu-cart__main .variation dd p {
  margin-top: 0;
}

/* Botón de añadir al carrito */

.single_add_to_cart_button {
  font-family: "Euclid Circular B Regular", Sans-serif !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  width: 50%;
  padding: 1.1rem !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  font-weight: bold !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  color: var(--color-white) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  font-size: 1.3rem !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  border-radius: 5rem !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

/* Sistema de variaciones */

.woocommerce-variation-add-to-cart {
  font-family: "Euclid Circular B Regular", Sans-serif !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

/* Estilos carrito */

.e-cart__container .shop_table {
  margin-top: var(--spacing-6xl);
}

/* .e-cart__container .shop_table .product-quantity {
    display: none;
} */

.elementor-widget-woocommerce-cart .woocommerce table.shop_table td.actions {
  display: none !important;
}

.elementor-widget-woocommerce-cart .woocommerce table.cart td.actions, .elementor-widget-woocommerce-cart .woocommerce table.cart td.product-name, .elementor-widget-woocommerce-cart .woocommerce table.cart td.product-price, .elementor-widget-woocommerce-cart .woocommerce table.cart td.product-quantity, .elementor-widget-woocommerce-cart .woocommerce table.cart td.product-remove, .elementor-widget-woocommerce-cart .woocommerce table.cart td.product-subtotal, .elementor-widget-woocommerce-cart .woocommerce table.cart td.product-thumbnail {
  border: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.e-cart__container .product-name a {
  display: block;
  text-align: left;
  font-size: var(--font-size-base-rem);
  font-weight: bold;
  /* border-bottom: 1px solid #ADBFC7 !important; */
  padding-bottom: var(--spacing-xs-rem);
  margin-bottom: var(--spacing-xs-rem);
}

.e-cart__container .product-name .variation dt {
  font-weight: bold;
  color: var(--color-blue-30-2) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.e-cart__container .product-name::before {
  display: none;
}

.e-cart__container .shop_table td {
  vertical-align: top;
}

/* Estilos checkout */

.woocommerce-checkout .form-row-first {
  clear: both;
}

.e-checkout__order_review tfoot tr th, .e-checkout__order_review tfoot tr td {
  padding: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.e-checkout__order_review .woocommerce-shipping-methods li, .e-checkout__order_review .woocommerce-shipping-methods .extra-container {
  margin-bottom: 0;
}

.e-checkout__order_review .order-total > * {
  border-top: 2px solid var(--color-blue-30-2) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  padding-top: var(--spacing-xs-rem) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.woocommerce-checkout #payment ul.payment_methods li img {
  max-height: 1.5rem;
}

.e-shop-table.e-cart-section * {
  font-family: "Euclid Circular B Regular", Sans-serif !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  color: var(--color-secondary);
}

.e-shop-table.e-cart-section .product-name a {
  color: var(--color-cyan-60) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.elementor-widget-woocommerce-cart .e-cart-section {
  border-radius: 20px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

#opt-cart .contenedor_azul {
  background-color: #F5D6CF;
}

#opt-cart .contenedor_azul * {
  font-family: "Euclid Circular B Regular", Sans-serif;
  color: var(--color-secondary);
}

.checkout-button {
  font-size: 1.3rem !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  box-shadow: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.checkout-button:hover {
  background-color: var(--color-secondary) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

/* Estilo checkout */

.woocommerce-checkout-review-order-table thead th {
  border-bottom: 1px solid !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.woocommerce-checkout-review-order-table tbody td {
  border-bottom: 1px solid #ADBFC7 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.woocommerce-checkout-review-order-table .cart-subtotal th, .woocommerce-checkout-review-order-table .cart-subtotal td {
  padding-top: var(--spacing-2xl-rem) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.woocommerce-checkout-review-order-table .product-name, .woocommerce-checkout-review-order-table .product-name * {
  color: var(--color-secondary) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.variations_button .gift_card_add_to_cart_button {
  background-color: #FFB39C !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  color: var(--color-white) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.variations_button .gift_card_add_to_cart_button:hover {
  background-color: #D48C73 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

/* Estilos terminos y condiciones checkout */

.woocommerce-terms-and-conditions-checkbox-text {
  color: var(--color-blue-50) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.woocommerce-terms-and-conditions-link, #mostrar_info_adicional {
  color: var(--color-red-40) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.woocommerce-table.order_details .product-name a {
  color: var(--color-blue-50);
  font-weight: bold;
}

.elementor-widget-woocommerce-checkout-page .woocommerce .shop_table tfoot:nth-child(3) {
  /* display: none !important; */
}

.elementor-widget-woocommerce-checkout-page .woocommerce .shop_table td, .elementor-widget-woocommerce-checkout-page .woocommerce .shop_table th {
  padding-bottom: var(--spacing-3xs) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  padding-top: var(--spacing-3xs) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

/* Bug doble dirección comprobar tras actualización */

.elementor-widget-woocommerce-checkout-page .woocommerce-customer-details:last-child {
  display: none;
}

/* cambiar el color de boton desactivado de woocommerce*/

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt.disabled, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt.disabled:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:disabled, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:disabled:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:disabled[disabled], .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:disabled[disabled]:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt.disabled, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt.disabled:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:disabled, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:disabled:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:disabled[disabled], .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:disabled[disabled]:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.disabled, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.disabled:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:disabled, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:disabled:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:disabled[disabled], .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:disabled[disabled]:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt.disabled, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt.disabled:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:disabled, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:disabled:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:disabled[disabled], .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:disabled[disabled]:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt.disabled, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt.disabled:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:disabled, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:disabled:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:disabled[disabled], :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:disabled[disabled]:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt.disabled, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt.disabled:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:disabled, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:disabled:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:disabled[disabled], :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:disabled[disabled]:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt.disabled, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt.disabled:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:disabled, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:disabled:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:disabled[disabled], :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:disabled[disabled]:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt.disabled, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt.disabled:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:disabled, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:disabled:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:disabled[disabled], :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:disabled[disabled]:hover {
  background-color: var(--color-blue-80);
}

/* Ocultar Landbot en checkout*/

.woocommerce-checkout .LandbotLivechat {
  display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
}

/* Oculta el título original del resumen del pedido en el checkout */

.woocommerce-checkout #order_review_heading {
  display: none;
}

/* --- Estilos para el Resumen del Pedido Desplegable --- */

/* 1. Estilos para el título cuando es un desplegable */

.woocommerce-checkout h3.desplegable-titulo {
  cursor: pointer;
  /* Cambia el cursor a una manita para indicar que es clickeable */
  position: relative;
  /* Necesario para posicionar el icono */
  padding-right: var(--spacing-5xl);
  /* Deja espacio para el icono */
  user-select: none;
  /* Evita que el texto se seleccione al hacer doble clic */
}

/* Tabla del resumen */

.woocommerce-checkout-review-order-table {
  margin-top: 0;
}

/*            Acordeón de productos personalizado (.resumen-checkout)       */

/*                        SOLO VISIBLE EN MÓVIL                             */

/* Ocultar por defecto en desktop */

.resumen-checkout {
  display: none;
}

/*         Corregir desbordamiento del carrusel de upsell en carrito       */

/* Asegurar que el contenedor del carrito no se desborde */

.e-cart__container {
  overflow: hidden;
  width: 100%;
}

/* Controlar el ancho de las columnas del carrito */

.e-cart__column {
  overflow: hidden;
}

/* Asegurar que el carrusel respete el ancho del contenedor */

.cuw-cart-upsells-carousel {
  max-width: 100%;
  overflow: hidden;
}

/* El track puede tener scroll horizontal pero no debe desbordar su contenedor */

.cuw-cart-upsells-carousel .cuw-carousel-track {
  max-width: 100%;
}

/* Arregla el color del TEXTO en los mensajes de WooCommerce */

.elementor-widget-woocommerce-checkout-page .woocommerce-error,
.elementor-widget-woocommerce-checkout-page .woocommerce-info,
.elementor-widget-woocommerce-checkout-page .woocommerce-message {
  color: var(--color-gray-20) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  /* Un color oscuro para el texto principal */
}

/* Arregla el color de los ENLACES DENTRO de esos mensajes */

.elementor-widget-woocommerce-checkout-page .woocommerce-error a,
.elementor-widget-woocommerce-checkout-page .woocommerce-info a,
.elementor-widget-woocommerce-checkout-page .woocommerce-message a {
  color: var(--color-gray-20) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  /* Un color de enlace que contraste (azul, por ejemplo) */
  text-decoration: underline !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  /* Opcional: subraya el enlace para que sea obvio */
}

/* Ocultar la zona de cupón original pero mantenerla funcional */

.woocommerce-cart-form .coupon {
  display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
}

.woocommerce #content table.cart .product-thumbnail, .woocommerce table.cart .product-thumbnail, .woocommerce-page #content table.cart .product-thumbnail, .woocommerce-page table.cart .product-thumbnail {
  display: block !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
}

/* 1. Contenedor Principal: Lo convertimos en una caja flexible */

.woocommerce-cart .wc-proceed-to-checkout {
  display: flex !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  flex-direction: row !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  /* Disposición en fila */
  flex-wrap: wrap !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  /* Permitir que salten de línea */
  justify-content: space-between !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  /* Separar los botones pequeños */
  gap: var(--spacing-3xs);
  /* Espacio entre filas y columnas */
}

/* 2. El Botón Rosa (Tu botón principal) */

.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
  width: 100% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  /* Ocupa toda la primera fila */
  flex-basis: 100% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  margin-bottom: var(--spacing-3xs) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  /* Mantenemos tu estilo actual, solo aseguramos el ancho */
}

/* 3. Los Botones de Pago (Google Pay, PayPal, etc.) */

/* Seleccionamos cualquier div que NO sea el botón principal */

.woocommerce-cart .wc-proceed-to-checkout > div:not(.checkout-button),
.woocommerce-cart .wc-proceed-to-checkout > .payment_method {
  /* Forzamos a que ocupen casi la mitad cada uno (48%) para quedar en línea */
  width: 48% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  flex-basis: 48% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  margin: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  min-width: 140px;
  /* Evitar que se aplasten en móviles muy pequeños */
}

/* 4. Iconos de tarjetas abajo (si es una imagen que pones tú) */

/* Si la imagen de las tarjetas (Visa, Master) es un bloque separado al final */

.woocommerce-cart .wc-proceed-to-checkout > img,
.woocommerce-cart .wc-proceed-to-checkout > .cred-icons {
  width: 100% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  /* Vuelve a ocupar todo el ancho abajo */
  flex-basis: 100% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  text-align: center;
  margin-top: var(--spacing-sm);
}

.woocommerce-cart .cuw-cart-item-subtotal {
  display: flex !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  flex-direction: column !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.woocommerce-cart .woocommerce-message {
  display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
}

/* --- CAMBIAR X POR PAPELERA SVG (VERSIÓN DEFINITIVA MÓVIL/DESKTOP) --- */

/* 1. Ocultamos la '×' original mandándola fuera de la pantalla */
.woocommerce table.cart tr.cart_item td.product-remove a.remove,
.woocommerce-page table.cart td.product-remove a.remove,
td.product-remove a.remove {
  font-size: 0 !important;
  color: transparent !important;
  background: transparent !important;
  border: none !important;
  width: 32px !important; 
  height: 32px !important; 
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-indent: -9999px !important; /* TRUCO: Manda el texto '×' fuera del móvil */
  overflow: hidden !important; /* Corta cualquier rastro del texto */
  position: relative !important;
}

/* 2. Insertamos la papelera en formato SVG puro */
.woocommerce table.cart tr.cart_item td.product-remove a.remove::before,
.woocommerce-page table.cart td.product-remove a.remove::before,
td.product-remove a.remove::before {
  content: "";
  display: block;
  width: 18px; 
  height: 18px;
  background-color: #a4b0be !important; 
  /* Posicionamiento para que ignore el text-indent del padre */
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  /* Dibujo exacto de la papelera SVG */
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M135.2 17.7C140.6 6.8 151.7 0 163.8 0H284.2c12.1 0 23.2 6.8 28.6 17.7L320 32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 96 0 81.7 0 64S14.3 32 32 32h96l7.2-14.3zM32 128H416V448c0 35.3-28.7 64-64 64H96c-35.3 0-64-28.7-64-64V128zm96 64c-8.8 0-16 7.2-16 16V432c0 8.8 7.2 16 16 16s16-7.2 16-16V208c0-8.8-7.2-16-16-16zm96 0c-8.8 0-16 7.2-16 16V432c0 8.8 7.2 16 16 16s16-7.2 16-16V208c0-8.8-7.2-16-16-16zm96 0c-8.8 0-16 7.2-16 16V432c0 8.8 7.2 16 16 16s16-7.2 16-16V208c0-8.8-7.2-16-16-16z'/%3E%3C/svg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M135.2 17.7C140.6 6.8 151.7 0 163.8 0H284.2c12.1 0 23.2 6.8 28.6 17.7L320 32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 96 0 81.7 0 64S14.3 32 32 32h96l7.2-14.3zM32 128H416V448c0 35.3-28.7 64-64 64H96c-35.3 0-64-28.7-64-64V128zm96 64c-8.8 0-16 7.2-16 16V432c0 8.8 7.2 16 16 16s16-7.2 16-16V208c0-8.8-7.2-16-16-16zm96 0c-8.8 0-16 7.2-16 16V432c0 8.8 7.2 16 16 16s16-7.2 16-16V208c0-8.8-7.2-16-16-16zm96 0c-8.8 0-16 7.2-16 16V432c0 8.8 7.2 16 16 16s16-7.2 16-16V208c0-8.8-7.2-16-16-16z'/%3E%3C/svg%3E") no-repeat center / contain;
  transition: all 0.2s ease;
}

/* 3. Efecto Hover SVG */
.woocommerce table.cart tr.cart_item td.product-remove a.remove:hover::before,
.woocommerce-page table.cart td.product-remove a.remove:hover::before,
td.product-remove a.remove:hover::before {
  background-color: var(--color-red-60) !important; 
  transform: translate(-50%, -50%) scale(1.1) !important;
}

.wc-proceed-to-checkout .ppc-button-wrapper {
  height: 48px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  display: flex !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  align-items: center !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  justify-content: center !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  background: #ffc439 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  border-radius: 5px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.wc-proceed-to-checkout .ppc-button-wrapper #ppc-button-ppcp-gateway {
  transform: scale(1.2);
}

/*.payment_method_stripe {
    display: none !important;
}*/

/* Ocultar tagline de PayPal en el carrito recortando la altura */

.woocommerce-cart .ppc-button-wrapper {
  max-height: 48px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  /* Altura suficiente para el botón, insuficiente para el texto */
  overflow: hidden !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  /* Lo que sobre de 42px, lo esconde */
  margin-top: var(--spacing-sm) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  /* Separa un poco del botón de Google Pay */
  margin-bottom: 0px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  display: block !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
}

/* Ajuste para asegurar que el iframe de dentro no intente crecer */

.woocommerce-cart .ppc-button-wrapper iframe {
  margin-top: var(--spacing-sm);
  max-height: 25px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

/* Reservar espacio para el botón de Stripe (Google Pay / Apple Pay) */

#wc-stripe-express-checkout-element {
  min-height: 48px;
  /* Altura exacta que tiene tu iframe */
  width: 100%;
  display: block !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  /* Opcional: Efecto de caja de carga (gris suave) */
  background-color: #f7f7f7;
  border-radius: 5px;
  /* Para que coincida con la estética redondeada */
  clear: both;
  position: relative;
}

/* Cuando el botón carga, quitamos el fondo gris para que se vea limpio */
#wc-stripe-express-checkout-element .StripeElement {
  background: transparent;
  z-index: 2;
  /* Asegura que el botón quede encima del fondo */
}


.ppc-button-wrapper > div,
.ppc-button-wrapper iframe {
  width: 100% !important;
}

checkout woocommerce-checkout {
  padding: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

/* ========================================
   ESTILOS MÉTODOS DE PAGO - DISEÑO ACORDEÓN
   ======================================== */

/* Contenedor principal de pagos */

#payment.woocommerce-checkout-payment {
  background: transparent;
  padding: 0;
}

/* ========================================
   CHECKBOX DE GUARDAR TARJETA
   ======================================== */

#payment .wc-stripe-new-payment-method,
#payment .woocommerce-SavedPaymentMethods-saveNew input[type="checkbox"] {
  width: 18px;
  height: 18px;
  border-radius: 4px;
  margin-right: var(--spacing-xs-px);
}

#payment .woocommerce-SavedPaymentMethods-saveNew label {
  font-size: var(--font-size-2xs);
  color: #64748b;
}

/* ========================================
   TÉRMINOS Y CONDICIONES - DISEÑO MODERNO
   ======================================== */

.woocommerce-terms-and-conditions-wrapper {
  margin-top: 24px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  padding-top: var(--spacing-4xl) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  border-top: 1px solid var(--color-blue-90) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.woocommerce-terms-and-conditions-wrapper .form-row {
  margin-bottom: var(--spacing-md) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.woocommerce-terms-and-conditions-wrapper label.checkbox {
  display: flex !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  align-items: flex-start !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  gap: var(--spacing-sm) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  font-size: var(--font-size-xs) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  color: #374151 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  line-height: 1.5 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  cursor: pointer !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.woocommerce-terms-and-conditions-wrapper input[type="checkbox"] {
  appearance: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  -webkit-appearance: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  width: 20px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  height: 20px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  min-width: 20px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  border: 2px solid var(--color-blue-80-2) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  border-radius: 4px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  margin: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  cursor: pointer !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  transition: all 0.2s ease !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  position: relative !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
}

.woocommerce-terms-and-conditions-wrapper input[type="checkbox"]:checked {
  background: var(--color-blue-60) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  border-color: var(--color-blue-60) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.woocommerce-terms-and-conditions-wrapper input[type="checkbox"]:checked::after {
  content: '✓' !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  position: absolute !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  top: 50% !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  left: 50% !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  transform: translate(-50%, -50%) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  color: var(--color-white) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  font-size: var(--font-size-3xs) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  font-weight: bold !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.woocommerce-terms-and-conditions-checkbox-text a {
  color: #dc7171 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  text-decoration: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  font-weight: 500 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.woocommerce-terms-and-conditions-checkbox-text a:hover {
  text-decoration: underline !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

/* =============================================
 * Ocultar campos nativos de WooCommerce billing en checkout
 * Solo dejamos: "Enviar a dirección diferente" y "Notas al repartidor"
 * =============================================*/

.woocommerce-billing-fields > h3 {
  display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
}

.woocommerce-billing-fields__field-wrapper {
  display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
}

/* Evitar errores de validación al cargar */

body:not(.wc-validation-active) .woocommerce-invalid input,
body:not(.wc-validation-active) .woocommerce-invalid select,
body:not(.wc-validation-active) .woocommerce-invalid textarea,
body:not(.wc-validation-active) .woocommerce-invalid .select2-selection,
body:not(.wc-validation-active) .woocommerce-invalid-required-field input,
body:not(.wc-validation-active) .woocommerce-invalid-required-field select,
body:not(.wc-validation-active) .woocommerce-invalid-required-field textarea,
body:not(.wc-validation-active) .woocommerce-invalid-required-field .select2-selection {
  border-color: #d4d4d4 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  box-shadow: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

body:not(.wc-validation-active) .woocommerce-invalid label,
body:not(.wc-validation-active) .woocommerce-invalid-required-field label {
  color: inherit !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

body:not(.wc-validation-active) .woocommerce-error,
body:not(.wc-validation-active) .woocommerce-NoticeGroup {
  display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
}

/* ===================== ELEMENTOR ===================== */

section.elementor-section.elementor-top-section.elementor-element.elementor-element-78f48dd.elementor-section-content-middle.elementor-section-boxed.elementor-section-height-default.elementor-section-height-default.elementor-sticky.elementor-sticky__spacer {
  visibility: visible !important; /* necesario: puede anular un style inline dinamico de Elementor (mostrar-ocultar o posicionamiento) */
}

.elementor-element-fde7310.elementor-section-boxed.elementor-section-height-default.elementor-section-height-default p {
  margin-bottom: 0px !important; /* necesario: especificidad baja frente al CSS de Elementor */
}

.elementor-section-content-middle.elementor-section-boxed.elementor-section-height-default.elementor-section-height-default.elementor-sticky.elementor-sticky--active.elementor-section--handles-inside.elementor-sticky--effects {
  display: none;
}

#lista_nueva_ul li .elementor-icon-list-icon {
  width: 50px;
  height: 50px;
  text-align: center;
  margin: 0 auto;
}

#lista_nueva_ul li .elementor-icon-list-text {
  margin-top: var(--spacing-sm);
  line-height: 18px;
  font-size: var(--font-size-sm);
  color: var(--color-gray-50);
}

.elementor-main-swiper.swiper-container.swiper-container-initialized.swiper-container-horizontal.swiper-container-ios {
  height: 250px !important; /* necesario: especificidad baja frente al CSS de Elementor */
}

.elementor-main-swiper.swiper-container.swiper-container-initialized.swiper-container-horizontal.swiper-container-android {
  height: 250px !important; /* necesario: especificidad baja frente al CSS de Elementor */
}

.swiper-wrapper .swiper-slide .elementor-carousel-image {
  background-size: cover;
  width: 77%;
  margin: 0 auto;
  border-radius: 10px;
  height: 100%;
}

/*
#titulo_test h4 {
    margin-top: 19px;
    font-size: 20px;
    font-weight: bold;
    font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color emoji;
}
*/

.elementor-element.elementor-element-437524a6 {
  padding: 0px !important; /* necesario: especificidad baja frente al CSS de Elementor */
}

.product_benefits_specs .e-grid .elementor-image-box-wrapper .elementor-image-box-img {
  width: 45% !important; /* necesario: especificidad baja frente al CSS de Elementor */
}

.product_benefits_specs .e-grid .elementor-image-box-wrapper .elementor-image-box-img img {
  background-color: var(--color-white);
  border: 1px solid #87a1b2;
  box-shadow: 0px 4px 5px var(--color-gray-dark-0-a10);
  border-radius: 20px;
  object-fit: contain;
}

.product_benefits_specs .elementor-icon-list-items .elementor-icon-list-text {
  color: var(--color-blue-30) !important; /* necesario: especificidad baja frente al CSS de Elementor */
}

/* Ocultar precio "A partir de" en muselina francia */

.postid-136115 .elementor-element-727fed70 {
  display: none;
}

.elementor-product-variable .variations_form .quantity {
  display: none !important; /* necesario: puede anular un style inline dinamico de Elementor (mostrar-ocultar o posicionamiento) */
}

/*En moviles centrar las reseñas y el título del producto*/

selector .elementor-heading-title {
  margin-bottom: var(--spacing-sm);
}

/* ===================== COOKIES / GDPR / POPUPS ===================== */

/* 
.elementor-location-footer {
    display: none;
} */

/* 
#moove_gdpr_save_popup_settings_button {
    display: none!important;
} */

.joinchat.joinchat--right.joinchat--btn.joinchat--show {
  display: none;
}

.popup-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  justify-content: center;
  align-items: center;
  z-index: 1000;
}

.popup-content {
  position: relative;
  background-color: var(--color-white);
  padding: var(--spacing-4xl);
  border-radius: 5px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
  text-align: center;
  z-index: 1000;
  width: 30%;
}

.popup-close {
  position: absolute;
  top: 3px;
  right: 10px;
  cursor: pointer;
  font-size: var(--font-size-lg);
}

button#moove_gdpr_save_popup_settings_button {
  display: none !important; /* necesario: puede anular un style inline dinamico del plugin de cookies/popup */
}

.joinchat__button {
  bottom: 70px;
  height: 50px !important; /* necesario: especificidad baja frente al plugin de cookies/popup */
  max-width: 50px !important; /* necesario: especificidad baja frente al plugin de cookies/popup */
  width: 50px !important; /* necesario: especificidad baja frente al plugin de cookies/popup */
  min-width: 50px !important; /* necesario: especificidad baja frente al plugin de cookies/popup */
}

.joinchat__button__open {
  width: 50px !important; /* necesario: especificidad baja frente al plugin de cookies/popup */
  height: 50px !important; /* necesario: especificidad baja frente al plugin de cookies/popup */
}

button#moove_gdpr_save_popup_settings_button {
  display: none;
}

/* ===================== ANIMACIONES ===================== */

@keyframes growProgressBar {
  0%, 33% {
    --pgPercentage: 0;
  }

  100% {
    --pgPercentage: var(--value);
  }

}

@keyframes loading {
  0%, 20% {
    content: 'CREATING BOTTLE.';
  }

  40% {
    content: 'CREATING BOTTLE..';
  }

  60% {
    content: 'CREATING BOTTLE...';
  }

  80%, 100% {
    content: 'CREATING BOTTLE...';
  }

}

@keyframes fade-in-custom {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }

}

/* Animación sutil al cargar */

@keyframes fadeInCard {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }

}

@keyframes growProgressBar {
  0%, 33% {
    --pgPercentage: 0;
  }

  100% {
    --pgPercentage: var(--value);
  }

}

@keyframes loading {
  0%, 20% {
    content: 'CREATING BOTTLE.';
  }

  40% {
    content: 'CREATING BOTTLE..';
  }

  60% {
    content: 'CREATING BOTTLE...';
  }

  80%, 100% {
    content: 'CREATING BOTTLE...';
  }

}

@keyframes fade-in-custom {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }

}

@keyframes fadeInCard {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }

}

/* ===================== GENERAL / OTROS AJUSTES ===================== */

body {
  overflow-x: hidden !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
}

.question {
  max-width: 1265px;
  margin: 0 auto;
  margin-bottom: var(--spacing-4xl);
  position: relative;
  overflow-x: hidden;
}

.question-title {
  font-weight: bold;
  font-size: 22px;
  text-align: center;
  color: var(--color-primary);
  margin-top: var(--spacing-4xl);
}

.question-subtitle {
  font-size: var(--font-size-base-px);
  text-align: center;
  color: var(--color-gray-50);
  width: 90%;
  margin: var(--spacing-sm) auto var(--spacing-5xl) auto;
}

.options-container {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  white-space: nowrap;
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
  margin-right: var(--spacing-sm);
}

.sin-margin {
  margin-right: 0px;
}

.options {
  display: flex;
  flex-shrink: 0;
  justify-content: space-between;
  width: 70%;
  max-width: calc(40% * 3);
  padding: 0 var(--spacing-3xs);
}

.option {
  position: relative;
  flex: 0 0 30%;
  text-align: center;
  border: 1px solid var(--color-gray-70);
  border-radius: 30px;
  margin: 0 var(--spacing-xs-px);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  margin-bottom: var(--spacing-7xl);
  min-height: 300px;
}

.selected {
  border: 2px solid var(--color-accent);
}

.option img {
  width: auto;
  height: 100%;
  max-height: 250px;
  display: block;
  margin: var(--spacing-3xl) auto;
}

.option-text {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  margin-top: auto;
  background-color: var(--color-white);
  border: 1px solid var(--color-primary);
  padding: var(--spacing-2xl-px) var(--spacing-3xs);
  border-radius: 20px;
  min-width: 85%;
  position: absolute;
  bottom: -30px;
  left: 0;
  z-index: 1;
  margin-left: 7%;
  font-size: 21px;
  font-family: Lora;
  color: var(--color-primary);
  font-weight: bold;
  max-height: 54px;
  line-height: 20px;
}

.doble {
  padding-bottom: var(--spacing-3xl);
  padding-top: var(--spacing-2xl-px);
  display: block;
}

.doble_m {
  display: none;
}

.options-container::-webkit-scrollbar {
  display: none;
}

.option.selected .option-text {
  background: var(--color-accent);
  border: 1px solid var(--color-accent);
  color: var(--color-white);
}

.hidden {
  display: none;
}

@property --pgPercentage {
  syntax: '<number>';
  inherits: false;
  initial-value: 0;
  
}

div[role="progressbar"] {
  --size: 50px;
  /* Cambiado el tamaño a 50px */
  --fg: #30475E;
  --bg: #DBECF3;
  --pgPercentage: var(--value);
  width: var(--size);
  height: var(--size);
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: conic-gradient(
        from 0turn,
        var(--fg) 0%,
        var(--fg) calc(var(--pgPercentage) * 1%),
        var(--bg) 0
      );
  color: var(--fg);
  font-size: var(--font-size-sm);
  font-weight: bold;
}

.numero_progress {
  height: 40px;
  width: 40px;
  background: var(--color-white);
  border-radius: 50%;
  display: grid;
  place-items: center;
}

.titulo_bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0px 28px;
  background: var(--color-cyan-90);
  height: 80px;
}

.circulo {
  margin-right: var(--spacing-sm);
  /* Espacio entre circulo y nombre_bar */
}

.nombre_bar {
  display: flex;
  flex-direction: column;
  font-size: var(--font-size-base-px);
  font-weight: bold;
  color: var(--color-primary);
  margin-left: var(--spacing-xs-px);
}

.nombre_bar span {
  font-weight: normal;
  font-size: var(--font-size-xs);
}

.atras_bar {
  margin-left: auto;
  margin-right: 0px;
  margin-top: -2px;
}

.progress_bar {
  width: 95%;
  height: 3px;
  background-color: #C5D4DB;
  margin-top: 0px;
  position: relative;
  margin-left: var(--spacing-sm);
}

.progress_line {
  position: absolute;
  top: -1px;
  left: 0;
  height: 5px;
  width: var(--progress-value, 0%);
  background-color: var(--color-primary);
  transition: width 0.3s ease;
}

.loading-text::after {
  content: 'Cargando';
  display: inline-block;
  animation: loading 1.5s infinite;
}

.question-pop {
  text-decoration: underline;
  cursor: pointer;
  margin-top: var(--spacing-xs-px);
  font-weight: 600;
}

.solos {
  flex: 1 0 40%;
  max-width: 300px;
}

.options_solos {
  max-width: calc(50% * 2);
  padding: 0;
  width: 52%;
}

.options_cuatro {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  white-space: nowrap;
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
  margin-right: 0px;
}

.cuatro {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--spacing-4xl);
  padding: 0 var(--spacing-3xs);
  width: 100%;
  max-width: calc(26% * 2);
}

.cuatro .option {
  min-height: 210px;
  max-height: 210px;
  padding: var(--spacing-5xs);
}

.especial {
  margin-top: 0px;
}

.especial_2 {
  margin-top: 0px;
}

.boton {
  width: 96%;
  padding: var(--spacing-4xl);
  font-size: var(--font-size-base-px);
  border-radius: 30px;
  margin-top: var(--spacing-7xl);
  background: var(--color-primary);
  color: var(--color-white);
  border: none;
  margin-left: auto;
  margin-right: auto;
  display: block;
  text-align: center;
}

.boton:disabled {
  border: none;
  color: var(--color-gray-50-2);
  background-color: var(--color-gray-light-90-2);
}

.boton-contenedor {
  width: 100%;
  display: flex;
}

#nombreInput {
  width: 50%;
  margin: 0 auto;
  display: flex;
  padding: var(--spacing-lg);
  border-radius: 30px;
  border: 1px solid #C3C3C3;
  font-size: var(--font-size-sm);
  text-align: center;
}

.form_title {
  margin: 0 auto;
  width: 58%;
  text-align: center;
  color: var(--color-gray-50);
  margin-bottom: var(--spacing-4xl);
  font-weight: bold;
  margin-top: var(--spacing-7xl);
}

span#nombreUsuarioSpan1 {
  font-weight: bold;
}

span#nombreUsuarioSpan2 {
  font-weight: bold;
}

.content_pregunta .question-title {
  padding-top: 60px;
  margin-bottom: var(--spacing-7xl);
  margin-top: 0px;
}

.content_pregunta {
  background: var(--color-cyan-90);
  padding-bottom: var(--spacing-7xl);
}

.barra_azul {
  background: var(--color-cyan-90);
  height: 83px;
  margin-bottom: -82px;
}

#cta_carrito_test {
  margin-left: 0px;
  margin-right: 0px;
}

#lista_nueva_id {
  width: 80%;
  margin: 0 auto;
}

#img_puntos_id {
  width: 70%;
  margin: 0 auto;
  margin-top: var(--spacing-5xl);
  margin-bottom: var(--spacing-7xl);
}

#img_biberon_1, #img_biberon_2, #img_biberon_3 {
  margin-right: var(--spacing-4xl);
}

span.discount-rule {
  text-align: left;
}

#cards_2_test .message-with h5 {
  margin-top: -20px;
}

#container_id {
  width: 80%;
  margin: 0 auto;
}

#lista_nueva_ul li a {
  color: var(--color-gray-50);
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin-bottom: var(--spacing-sm);
}

#text_subtitle {
  width: 80%;
  margin: 0 auto;
  line-height: 20px;
  margin-top: 17px;
  margin-bottom: var(--spacing-sm);
  color: var(--color-gray-50);
  font-size: var(--font-size-md);
  font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color emoji;
}

div#img_biberon_1 img {
  margin-left: var(--spacing-5xl);
  width: 80%;
}

div#img_biberon_2 img {
  margin-left: var(--spacing-2xl-px);
  width: 100%;
}

div#img_biberon_3 img {
  margin-left: var(--spacing-2xl-px);
  width: 96%;
}

p.bundle-message-blink {
  display: none;
}

#bloque_nuevo {
  margin-top: var(--spacing-4xl);
}

#cards_3_test .message-with .bundle-variation {
  margin-top: var(--spacing-4xl);
}

#titulo_podium {
  text-align: left;
  margin-bottom: var(--spacing-sm);
  color: var(--color-gray-50);
  margin-top: 0px;
  font-weight: bold;
}

.text_tooltip_1 {
  color: #EB9779;
  font-weight: bold;
  font-size: var(--font-size-md);
  margin-bottom: var(--spacing-2xs) !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
}

.text_tooltip {
  color: var(--color-gray-50);
  font-size: 17px;
  margin-bottom: var(--spacing-sm) !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  font-weight: 600;
}

.content_tooltip {
  text-align: center;
  font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  font-style: normal !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  padding-top: var(--spacing-5xs);
}

.tooltip_test {
  position: relative;
  background-color: #FFF1EE;
  color: var(--color-white);
  width: 80%;
  margin: 0 auto;
  padding: var(--spacing-sm);
  border-radius: 10px;
}

.triangle_test {
  position: absolute;
  top: -10px;
  left: calc(50% - 10px);
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid #FFF1EE;
}

#lista_nueva_ul {
  display: flex;
  justify-content: space-around;
  align-items: flex-start;
  margin-top: var(--spacing-4xl);
}

#lista_nueva_ul li {
  width: 25%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin-bottom: var(--spacing-sm);
}

.icon_test img {
  width: 50px;
}

.sticky_btn {
  position: static;
  bottom: 20px;
  z-index: 2;
  width: 50%;
  left: 0;
  margin-bottom: var(--spacing-4xl);
}

.sticky_btn a {
  flex: none;
  padding-top: var(--spacing-sm);
  padding-left: var(--spacing-4xl);
}

#cards_1_test .bundle-cprice {
  color: var(--color-primary);
  font-size: var(--font-size-xs);
  font-weight: normal;
  display: block;
}

#cards_g_test .custom-title {
  display: none;
}

#cards_3_test .custom-vari {
  width: 86%;
  margin-left: 0;
  margin-right: auto;
}

#cards_1_test.active {
  border: 3px solid var(--color-accent);
  background: var(--color-red-100);
}

#cards_2_test.active {
  border: 3px solid var(--color-accent);
  background: var(--color-red-100);
}

#cards_3_test.active {
  border: 3px solid var(--color-accent);
  background: var(--color-red-100);
  height: 160px;
  flex: 0 0 60%;
  max-width: 200px;
}

#cards_3_test .wbdl-price {
  width: 70%;
  padding: var(--spacing-4xs) var(--spacing-4xl);
}

#cards_1_test, #cards_2_test, #cards_3_test {
  text-align: center;
  border: 1px solid var(--color-gray-70);
  border-radius: 30px;
  margin: 0 var(--spacing-xs-px);
  cursor: pointer;
  margin-bottom: var(--spacing-4xl);
  padding: var(--spacing-3xs) 0px var(--spacing-sm) 0;
  margin-left: auto;
  margin-right: auto;
}

.custom-bundle .bundle-price.bundle-price {
  font-size: var(--font-size-lg);
  color: var(--color-primary);
}

span.bundle-price {
  font-weight: bold !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
}

#cards_3_test .message-with h5 {
  width: auto;
  margin-top: -6px;
  text-align: left;
}

#cards_2_test .bundle-cprice {
  color: var(--color-primary);
  font-size: var(--font-size-xs);
  font-weight: normal;
  display: block;
}

#cards_3_test .bundle-cprice {
  color: var(--color-primary);
  font-size: var(--font-size-xs);
  font-weight: normal;
  display: block;
}

#cards_1_test .message-with h5 {
  width: 100%;
  margin-top: -12px;
}

#cards_2_test {
  height: 120px;
  padding-top: var(--spacing-5xl);
}

#cards_1_test {
  height: 90px;
  padding-top: 19px;
}

#cards_3_test {
  height: 90px;
  padding-top: 26px;
  flex: 0 0 50%;
}

#cards_1_test .wbdl-price {
  width: auto;
  /*padding: 15px 5px!important;*/
  top: 20px !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

#cards_options_test .wbdl-price {
  width: auto;
  margin: 0 auto;
  display: block;
  margin-top: auto;
  padding: var(--spacing-3xs) var(--spacing-3xs);
  font-family: Lora;
  position: absolute;
  top: 14px;
  right: 6%;
}

#cards_3_test.active .wbdl-price {
  top: 5px;
}

#cards_2_test .wbdl-price {
  top: 30px;
}

div.message-with h5 {
  text-align: center;
  margin: 0 auto;
  white-space: normal;
  font-size: var(--font-size-md);
  font-weight: normal;
  line-height: 20px;
  color: var(--color-gray-50);
}

#cards_options_test {
  display: block;
  flex-shrink: 0;
  justify-content: initial;
  width: 100%;
  max-width: calc(40% * 3);
  padding: 0 var(--spacing-3xs);
  padding-top: var(--spacing-4xl);
}

#acelerador_test {
  background: var(--color-accent);
  color: var(--color-white);
  padding: var(--spacing-2xs) 11px;
  border-radius: 20px;
  font-weight: bold;
  position: absolute;
  top: -17px;
}

#cards_g_test {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  white-space: nowrap;
  overflow-x: scroll;
  -webkit-overflow-scrolling: touch;
  margin-right: 0px;
  margin-bottom: -10px;
  /* Ajusta según sea necesario */
  padding-bottom: var(--spacing-2xl-px);
  /* Ajusta según sea necesario */
}

/* Oculta la barra de desplazamiento */

#cards_g_test::-webkit-scrollbar {
  width: 0;
  height: 0;
}

/* Asegura que el contenido no se extienda más allá del contenedor */

#cards_g_test > * {
  flex-shrink: 0;
}

#cualidades_test {
  padding: 0;
  border-bottom: 1px solid #C2D1D9;
  padding-bottom: var(--spacing-4xl);
}

/*
#titulo_test {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #DBECF3;
    height: 80px;
    margin-top: -10px;
    margin-bottom: 10px;
}
*/

#form_id {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

/*h1.elementor-heading-title.elementor-size-default {*/

/*width: 80%;*/

/*    font-size: 18px!important;*/

/*    font-weight: bold!important;*/

/*    color: #30475E!important;*/

/*    font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji!important;*/

/*    font-style: normal!important;*/

/*    line-height: 22px;*/

/*}*/

.wbdl_widget .bundle-variation .custom-vari p.variant-title {
  display: none;
}

#cards_3_test.active .message-with h5 {
  text-align: left;
}

/* Loader personalizado */

#sl-preloader img {
  height: auto;
  width: 100px;
}

/* Estilos personalizados Patricia */

/* Generales */

body {
  margin: 0;
}

#preview-small {
  text-align: center;
  margin-bottom: 0;
}

/* Upsell CSS */

.cuw-offers * {
  font-family: "Euclid Circular B Regular", Sans-serif;
}

.cuw-offers .cuw-product-title {
  font-size: var(--font-size-base-rem);
}

.cuw-offers .cuw-product-quantity {
  display: none;
}

.cuw-offers .cuw-product-price {
  text-align: center;
  display: flex;
  flex-direction: column;
  max-width: 5rem;
  font-size: .9rem;
}

.cuw-offers .cuw-product-price > .amount, .cuw-offers .cuw-product-price *:not(del) .amount {
  font-weight: bold;
  color: var(--color-blue-30-2);
}

.cuw-offers .cuw-product-image {
  text-align: center;
}

.cuw-offers .cuw-product-image img {
  max-height: 100px;
  width: auto;
}

.cuw-offers .cuw-offer-cta-section.cuw-offer-cta-section {
  border-radius: 30px;
  background-color: var(--color-cyan-60);
}

.cuw-offers .cuw-container.cuw-container {
  border-radius: 30px;
  padding: 0 1.5rem;
  background-color: var(--color-white);
  box-shadow: 0 0 10px 0 rgb(218, 218, 218);
}

.e-apply-coupon {
  border: 2px solid #F5B09C !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  background: var(--color-white) !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  color: #F5B09C !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
}

#shipping_method label {
  color: var(--color-red-40);
}

.includes_tax {
  font-family: "Euclid Circular B Regular", Sans-serif !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
}

.options-container {
  overflow: hidden !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
}

/* Tarjeta regalo / plantilla por defecto */

.product-template-default #primary {
  width: 1440px;
  margin: auto;
}

/* Regala happymami */

.ywgc_have_code {
  font-family: "Euclid Circular B Regular", Sans-serif !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  color: var(--color-secondary);
  border: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  border-radius: 30px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  box-shadow: 0 0 15px 0 rgba(255, 179, 156,.6) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  font-size: 1.2rem !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  position: relative;
  z-index: 0 !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
}

.ywgc_enter_code {
  font-family: "Euclid Circular B Regular", Sans-serif !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  color: var(--color-secondary);
  margin-top: -20px;
  background-color: var(--color-white);
  border: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  border-radius: 0 0 30px 30px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  box-shadow: 0 0 15px 0 rgba(255, 179, 156,.6) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  position: relative;
  margin-left: 2%;
  margin-right: 2%;
  padding: var(--spacing-6xl);
  z-index: -1;
}

.ywgc_enter_code .ywgc_apply_gift_card_button {
  border: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  font-weight: 500;
  margin-left: var(--spacing-6xl) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.ywgc_enter_code .ywgc_apply_gift_card_button:hover {
  background: var(--color-secondary) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.ywgc-show-giftcard {
  color: var(--color-cyan-60) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.gift-cards_form {
  margin-bottom: var(--spacing-8xl) !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
}

.product-template-default #primary .entry-title {
  font-family: "ITC Souvenir Demi Regular", "Poppins", Sans-serif;
}

.gift-cards-list .ywgc-amount-buttons {
  border-radius: 15px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  background-color: #F4D6CE !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  font-family: "Euclid Circular B Regular", Sans-serif !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  font-weight: 600 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  border: 0;
  margin: 0 var(--spacing-3xs);
}

.gift-cards-list .ywgc-manual-amount {
  max-width: 155px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  width: 155px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.gift-cards-list .ywgc-manual-amount .ywgc-manual-currency-symbol {
  position: relative;
  margin-left: -17px;
  top: -1%;
}

.gift-cards-list .ywgc-amount-buttons.selected_button {
  background-color: #FFB39C !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

.gift-card-content-editor label {
  font-family: "Euclid Circular B Regular", Sans-serif !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  font-weight: bold;
}

.upsellingtext {
  font-family: "ITC Souvenir Demi Regular", "Poppins", Sans-serif !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  color: var(--color-secondary);
  font-size: 1.5rem;
  margin: 1.5rem var(--spacing-2xl-rem);
}

#kl_newsletter_checkbox_field {
  display: none;
}

.e-woo-select2-wrapper .select2-results__option.select2-results__option:hover {
  color: var(--color-white);
}

/* Ocultar campo NIF cuando no sea Canarias */

.nif-field-hidden {
  display: none !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

/* Desactivando por semana santa
#opt-cart, #opt-cart * {
    display: none;
} */

/******************************************************
	Quitar descripcion metodo de pago redsys
******************************************************/

.payment_box.payment_method_redsys {
  display: none !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

/******************************************************
    Animacion fade in custom para landing regalo
******************************************************/

.fade-in-custom {
  opacity: 0;
  animation: fade-in-custom .8s ease-in forwards .5s !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
}

/* ************************************************************************ */

/*                                                                          */

/*                                                                          */

/*                   Estilos para pagina de producto                        */

/*                                                                          */

/*                                                                          */

.happymami-product-selector ul li {
  border: none;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

/*                                                                          */

/*                                                                          */

/* Estilos para nueva seccion beneficios / especificaciones pagina producto */

/*                                                                          */

/*                                                                          */

.product_benefits_specs {
  background-color: #fffbf8;
  border-radius: 25px;
  box-shadow: 0 7px 15px var(--color-gray-dark-0-a10);
}

.product_benefits_specs .e-n-tab-title.e-n-tab-title {
  background-color: transparent;
  border-bottom: 3px solid transparent;
  width: 50%;
  margin: 0 auto;
  flex-grow: unset;
  font-weight: bold;
  font-size: large;
}

.product_benefits_specs .e-n-tab-title.e-n-tab-title:hover {
  color: var(--color-red-50);
}

.product_benefits_specs .e-n-tab-title.e-n-tab-title[aria-selected=true] {
  color: var(--color-red-50);
  border-bottom: 3px solid var(--color-red-50);
}

/*********************
	   Landbot
**********************/

/* Chat en modo responsive
.LandbotLivechat.is-proactive {
	height: 5.8rem !important;
	bottom: 10vh !important;
}
	
@media screen and (max-width: 990px) {
	.LandbotLivechat.is-proactive {
		height: 5.8rem !important;
		bottom: 53px !important;
	}
}
*/

.LandbotLivechat {
  left: -17px !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
  bottom: 40px !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

/*

.LandbotLivechat .is-open {
	left: 35px !important;
	bottom: 0 !important;
}

.LandbotLivechat .Messages {
	position: absolute;
	top: 80px;
	width: 300px;
}
*/

/* Ocultar Landbot en las páginas de promoción */

body.page-id-104684 .LandbotLivechat,
body.page-id-133140 .LandbotLivechat {
  display: none !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

/* Ocultar Landbot en las páginas de /Welcome */

body.page-id-123402 .LandbotLivechat,
body.page-id-118706 .LandbotLivechat,
body.page-id-118703 .LandbotLivechat,
body.page-id-118702 .LandbotLivechat,
body.page-id-118699 .LandbotLivechat {
  display: none !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

/* Ocultar Landbot en la pagina /start */

body.page-id-117587 .LandbotLivechat {
  display: none !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

/* Ocultar Landbot en carrito */

.page-id-13 .LandbotLivechat {
  display: none !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

/*                  Estilos para acordeón resumen del pedido                */

/* Cabecera del resumen del pedido */

#order_review_heading_custom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--spacing-xl) var(--spacing-4xl);
  background-color: #f7eae4;
  border-radius: 8px;
  cursor: pointer;
  margin-top: var(--spacing-4xl);
  margin-bottom: 0;
  transition: all 0.3s ease;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* Información del pedido (izquierda) */

.order-summary-info {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.order-summary-label {
  font-weight: 600;
  font-size: var(--font-size-md);
  color: #2d3436;
  line-height: 1.2;
}

.order-summary-count {
  font-size: var(--font-size-xs);
  color: var(--color-gray-40);
  font-weight: 400;
}

/* Total del pedido (derecha) */

.order-summary-total {
  display: flex;
  align-items: center;
  gap: var(--spacing-3xs);
  font-weight: 600;
}

.order-summary-currency {
  font-size: var(--font-size-xs);
  color: var(--color-gray-40);
  font-weight: 500;
}

.order-summary-amount {
  font-size: 22px;
  color: #2d3436;
  font-weight: 700;
}

/* Icono desplegable */

.icono-desplegable {
  font-size: var(--font-size-xs);
  color: var(--color-gray-40);
  margin-left: var(--spacing-sm);
  transition: transform 0.3s ease;
  display: inline-block;
}

#order_review_heading_custom.activo .icono-desplegable {
  transform: rotate(0deg);
}

/* Wrapper de la tabla */

#order_review_table_wrapper {
  margin-top: var(--spacing-xl);
  padding-top: var(--spacing-xl);
  border-top: 1px solid #dee2e6;
}

/* Cabecera del acordeón - diseño simple */

#productos_accordion_custom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--spacing-2xl-px) var(--spacing-3xl);
  background-color: #fafafd;
  cursor: pointer;
  margin-bottom: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  border-top: 1px solid rgba(58, 66, 73, 0.15);
}

#productos_accordion_custom .order-summary-info {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4xs);
  flex: 1;
}

#productos_accordion_custom .order-summary-label {
  font-weight: 700;
  font-size: 17px;
  color: var(--color-blue-30);
  line-height: 1.3;
  display: flex;
  align-items: center;
  gap: var(--spacing-2xs);
}

#productos_accordion_custom .order-summary-count {
  font-size: var(--font-size-xs);
  color: var(--color-blue-30);
  font-weight: 400;
  opacity: 0.75;
}

#productos_accordion_custom .order-summary-total {
  display: flex;
  align-items: center;
}

#productos_accordion_custom .order-summary-amount {
  font-size: var(--font-size-md);
  color: var(--color-blue-30);
  font-weight: 700;
}

#productos_accordion_custom .icono-desplegable {
  font-size: var(--font-size-xs);
  color: var(--color-blue-30);
}

/* Wrapper de la lista de productos */

#productos_table_wrapper {
  padding: var(--spacing-md) var(--spacing-3xl);
  background-color: #f5f5f8;
}

/* Lista simple de productos */

.productos-lista-simple {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

.producto-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--spacing-xs-px) 0;
  gap: var(--spacing-md);
}

.producto-imagen {
  flex-shrink: 0;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.producto-imagen img {
  width: 50px;
  height: 50px;
  object-fit: cover;
  border-radius: 4px;
}

.producto-nombre {
  font-size: var(--font-size-xs);
  color: var(--color-blue-30);
  font-weight: 500;
  line-height: 1.4;
  flex: 1;
}

.producto-cantidad {
  font-size: var(--font-size-xs);
  color: var(--color-blue-30);
  font-weight: 700;
  white-space: nowrap;
}

/* ===================================================================
   Estilos personalizados para pasarela Redsys - Tarjeta de Crédito
   =================================================================== */

/* Contenedor principal del método de pago Redsys */

.payment_box.payment_method_insite.payment_method_insite {
  background-color: transparent;
  border: none;
  border-radius: 20px;
  box-shadow: none;
  padding: 0;
  width: 100%;
}

/* Fieldset general sin bordes */

#payment .payment_methods li .payment_box fieldset.card-saved {
  background-color: transparent;
  border: none;
  box-shadow: none;
  padding: 0;
}

#payment .payment_method li .payment_box fieldset.card-saved > p {
  display: none !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

/* ============================================
   TARJETA ROSA - Solo campos del formulario
   ============================================ */

/* Contenedor tipo tarjeta de crédito */

#order_review fieldset.redsys-new-card-data {
  background-color: #fafafa;
  border: none;
  border-radius: 10px;
  padding: var(--spacing-xl);
  padding-right: var(--spacing-sm);
  max-width: 100%;
  width: 100%;
  margin: 0;
}

/* Labels/títulos de los campos - Estilo tarjeta */

.payment_method_insite .date-wrap > div label, fieldset.redsys-new-card-data .cardinfo-label.cardinfo-label {
  color: var(--forms-labels-color, #69727d);
  font-family: var(--forms-labels-font-family, "Euclid Circular B Regular", Sans-serif);
  font-size: var(--font-size-base-px);
  font-weight: 500;
  margin-bottom: var(--forms-label-spacing, 3px);
  display: inline-block !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
  width: 100%;
}

fieldset.redsys-new-card-data label[for="card-number"], fieldset.redsys-new-card-data label[for="expiration-date"] {
  text-transform: lowercase;
}

fieldset.redsys-new-card-data label[for="card-number"]::first-letter, fieldset.redsys-new-card-data label[for="expiration-date"]::first-letter {
  text-transform: uppercase;
}

fieldset.redsys-new-card-data label[for="cvv"] {
  text-transform: uppercase;
}

/* Número de tarjeta - Mayor prominencia */

fieldset.redsys-new-card-data > div:first-child {
  margin-bottom: var(--spacing-4xl);
}

/* Oculta por defecto el campo NIF para Canarias */

#billing_nif_field {
  display: none;
}

/**************************************************************

 Estilos boton flotante "DISEÑAR MI BIBERON FLOTANTE" 
 
 *************************************************************/

/* CLASE BASE (Visible) */

.boton-flotante {
  z-index: 1000;
  /* LA MAGIA MODERNA: */
  /* Usamos cubic-bezier para que empiece rápido y frene suavemente */
  transition: all 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
  /* Estado inicial visible */
  opacity: 1;
  transform: translateY(0) scale(1);
}

/* CLASE QUE OCULTA (Se añade con JS) */

.boton-flotante.oculto {
  opacity: 0;
  /* Se mueve hacia abajo y se hace un poco más pequeño */
  transition: all 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
  transform: translateY(20px) scale(0.9);
  /* Vital: evita que se pueda clickear cuando es invisible */
  pointer-events: none;
}

/**************************************************************

 Estilos boton flotante "SELECTOR DE IDIOMA"
 
 *************************************************************/

/* --- Oculto por defecto (Móviles) --- */

.wpml-floating-language-switcher {
  display: none;
}

.ppcp-messages {
  display: none !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

fieldset.redsys-new-card-data-uni {
  background: linear-gradient(135deg, var(--color-red-80) 0%, #ff9999 50%, #ffa8a8 100%) !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  border: none !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  border-radius: 20px;
  padding: var(--spacing-5xl) 25px !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  box-shadow: 0 8px 16px rgba(244, 152, 152, 0.3),
        0 2px 4px var(--color-gray-dark-0-a10) !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
}

fieldset.redsys-new-card-data {
  animation: fadeInCard 0.5s ease-out;
}

/* Lista de métodos de pago - Acordeón unido */

#payment .payment_methods {
  padding: 0;
  margin: 0;
  border: 1px solid var(--color-blue-90);
  border-radius: 12px;
  list-style: none;
  overflow: hidden;
  background: var(--color-white);
}

#payment .payment_methods li.payment_method_stripe {
  display: none !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

/* Cada método de pago */

#payment .payment_methods li.wc_payment_method {
  background: var(--color-white);
  border: none;
  border-bottom: 1px solid var(--color-blue-90);
  border-radius: 0;
  margin: 0;
  padding: 0;
  transition: all 0.2s ease;
}

/* Último elemento sin borde inferior */

#payment .payment_methods li.wc_payment_method:last-child {
  border-bottom: none;
}

/* Label del método de pago - El LI es el contenedor flex */

#payment .payment_methods li.wc_payment_method {
  display: flex !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  flex-wrap: wrap;
  align-items: center;
}

/* Label - segundo elemento, ocupa espacio disponible */

#payment .payment_methods li.wc_payment_method > label {
  flex: 1;
  display: flex !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  align-items: center;
  justify-content: space-between;
  padding: var(--spacing-2xl-px) var(--spacing-4xl) var(--spacing-2xl-px) var(--spacing-lg);
  margin: 0;
  cursor: pointer;
  font-size: var(--font-size-sm);
  font-weight: 400;
  color: #1f2937;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  transition: background 0.2s ease;
  order: 2;
}

#payment .payment_methods li.wc_payment_method:hover > label {
  background: transparent;
}

#payment .payment_methods li.wc_payment_method:hover {
  background: #f9fafb;
}

/* Iconos/logos de pago a la derecha */

#payment .payment_methods li.wc_payment_method > label > img {
  max-height: 24px;
  width: auto;
  object-fit: contain;
  margin-left: auto;
  flex-shrink: 0;
}

/* Payment box - ocupa todo el ancho debajo */

#payment .payment_methods li.wc_payment_method > .payment_box {
  width: 100%;
  order: 3;
  flex-basis: 100%;
}

/* Múltiples iconos de tarjetas */

#payment .payment_methods li.wc_payment_method > label > .stripe-cards-icon,
#payment .payment_methods li.wc_payment_method > label > img[src*="visa"],
#payment .payment_methods li.wc_payment_method > label > img[src*="mastercard"],
#payment .payment_methods li.wc_payment_method > label > img[src*="cards"],
#payment .payment_methods li.wc_payment_method > label > img {
  max-height: 28px;
  margin-left: auto;
}

/* Payment box (contenido expandido) */

#payment .payment_methods li .payment_box {
  background: #fafafa;
  border-top: 1px solid var(--color-blue-90);
  padding: var(--spacing-4xl);
  margin: 0;
  border-radius: 0;
}

/* Texto descriptivo dentro del payment box */

#payment .payment_methods li .payment_box p {
  color: #64748b;
  font-size: var(--font-size-2xs);
  margin: 0 0 var(--spacing-xl) 0;
  line-height: 1.5;
}

/* Logo de Google Pay en el acordeón */

#payment .payment_methods li.payment_method_stripe_googlepay > label::after,
#payment .payment_methods li[class*="googlepay"] > label::after {
  content: '';
  display: inline-block;
  width: 33px;
  height: 44px;
  margin-left: auto;
  background-image: url('data:image/svg+xml,%3Csvg viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="2"%3E%3Cg transform="matrix(.6782 0 0 .6782 1.226 120.628)"%3E%3CclipPath id="prefix__a"%3E%3Cpath d="M0 0h752v400H0z"/%3E%3C/clipPath%3E%3Cg clip-path="url(/wp-content/themes/hello-theme-child-master/%23prefix__a)"%3E%3Cpath d="M552 0H200C90 0 0 90 0 200s90 200 200 200h352c110 0 200-90 200-200S662 0 552 0z" fill="%23fff" fill-rule="nonzero"/%3E%3Cpath d="M552 16.2c24.7 0 48.7 4.9 71.3 14.5 21.9 9.3 41.5 22.6 58.5 39.5 16.9 16.9 30.2 36.6 39.5 58.5 9.6 22.6 14.5 46.6 14.5 71.3 0 24.7-4.9 48.7-14.5 71.3-9.3 21.9-22.6 41.5-39.5 58.5-16.9 16.9-36.6 30.2-58.5 39.5-22.6 9.6-46.6 14.5-71.3 14.5H200c-24.7 0-48.7-4.9-71.3-14.5-21.9-9.3-41.5-22.6-58.5-39.5-16.9-16.9-30.2-36.6-39.5-58.5-9.6-22.6-14.5-46.6-14.5-71.3 0-24.7 4.9-48.7 14.5-71.3 9.3-21.9 22.6-41.5 39.5-58.5 16.9-16.9 36.6-30.2 58.5-39.5 22.6-9.6 46.6-14.5 71.3-14.5h352M552 0H200C90 0 0 90 0 200s90 200 200 200h352c110 0 200-90 200-200S662 0 552 0z" fill="%233c4043" fill-rule="nonzero"/%3E%3Cg fill-rule="nonzero"%3E%3Cg fill="%233c4043"%3E%3Cpath d="M358.6 214.1v60.6h-19.2V125.3h50.9c12.9 0 23.9 4.3 32.9 12.9 9.2 8.6 13.8 19.1 13.8 31.5 0 12.7-4.6 23.2-13.8 31.7-8.9 8.5-19.9 12.7-32.9 12.7h-31.7zm0-70.4v52.1h32.1c7.6 0 14-2.6 19-7.7 5.1-5.1 7.7-11.3 7.7-18.3 0-6.9-2.6-13-7.7-18.1-5-5.3-11.3-7.9-19-7.9h-32.1v-.1zM487.2 169.1c14.2 0 25.4 3.8 33.6 11.4 8.2 7.6 12.3 18 12.3 31.2v63h-18.3v-14.2h-.8c-7.9 11.7-18.5 17.5-31.7 17.5-11.3 0-20.7-3.3-28.3-10-7.6-6.7-11.4-15-11.4-25 0-10.6 4-19 12-25.2 8-6.3 18.7-9.4 32-9.4 11.4 0 20.8 2.1 28.1 6.3v-4.4c0-6.7-2.6-12.3-7.9-17-5.3-4.7-11.5-7-18.6-7-10.7 0-19.2 4.5-25.4 13.6l-16.9-10.6c9.3-13.5 23.1-20.2 41.3-20.2zm-24.8 74.2c0 5 2.1 9.2 6.4 12.5 4.2 3.3 9.2 5 14.9 5 8.1 0 15.3-3 21.6-9 6.3-6 9.5-13 9.5-21.1-6-4.7-14.3-7.1-25-7.1-7.8 0-14.3 1.9-19.5 5.6-5.3 3.9-7.9 8.6-7.9 14.1zM637.5 172.4l-64 147.2h-19.8l23.8-51.5-42.2-95.7h20.9l30.4 73.4h.4l29.6-73.4h20.9z"/%3E%3C/g%3E%3Cpath d="M282.23 202c0-6.26-.56-12.25-1.6-18.01h-80.48v33l46.35.01c-1.88 10.98-7.93 20.34-17.2 26.58v21.41h27.59c16.11-14.91 25.34-36.95 25.34-62.99z" fill="%234285f4"/%3E%3Cpath d="M229.31 243.58c-7.68 5.18-17.57 8.21-29.14 8.21-22.35 0-41.31-15.06-48.1-35.36h-28.46v22.08c14.1 27.98 43.08 47.18 76.56 47.18 23.14 0 42.58-7.61 56.73-20.71l-27.59-21.4z" fill="%2334a853"/%3E%3Cpath d="M149.39 200.05c0-5.7.95-11.21 2.68-16.39v-22.08h-28.46c-5.83 11.57-9.11 24.63-9.11 38.47s3.29 26.9 9.11 38.47l28.46-22.08a51.657 51.657 0 01-2.68-16.39z" fill="%23fabb05"/%3E%3Cpath d="M200.17 148.3c12.63 0 23.94 4.35 32.87 12.85l24.45-24.43c-14.85-13.83-34.21-22.32-57.32-22.32-33.47 0-62.46 19.2-76.56 47.18l28.46 22.08c6.79-20.3 25.75-35.36 48.1-35.36z" fill="%23e94235"/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex-shrink: 0;
}

/* Ocultar imagen por defecto de Google Pay (Redsys) */

#payment .payment_methods li label[for="payment_method_googlepayredirecredsys"] img,
#payment .payment_methods li.payment_method_googlepayredirecredsys > label > img {
  display: none !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

#payment .payment_methods li .payment_box p:last-child {
  margin-bottom: 0;
}

.wc-stripe-upe-element {
  background: var(--color-white) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  border: 1px solid var(--color-blue-90) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  border-radius: 8px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  padding: var(--spacing-md) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
}

/* Newsletter checkbox */

#terminos_adicionales_wrapper {
  margin-bottom: var(--spacing-2xl-px);
  padding: 0;
}

#terminos_adicionales_wrapper label {
  display: flex !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
  align-items: flex-start;
  gap: var(--spacing-sm);
  font-size: var(--font-size-xs);
  color: #374151;
  cursor: pointer;
}

.payment_method_stripe fieldset:last-child {
  display: none !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

#place_order.fixed {
  position: fixed;
  bottom: 5px !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
  left: 50%;
  width: 70%;
  height: 50px;
  color: var(--color-white);
  padding: 0;
  text-align: center;
  z-index: 9999999;
  transition: bottom 0.3s ease;
  transform: translateX(-50%);
  max-width: 1140px;
}

/* ========================================
   FIN ESTILOS MÉTODOS DE PAGO
   ======================================== */

/* ========================================
   ESTILOS CARRITO - COMPATIBILIDAD STRIPE RELLENO AUTOMATICO
   ======================================== */

.payment_method_stripe fieldset {
  display: none !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

/* Forzar que la descripción del pack que sale en biberón no se vea */

div#happymami-product-selector ul.variant-list li div.description {
  display: none !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
  color: transparent;
  font-size: 0;
  height: 0;
  margin: 0;
  padding: 0;
  visibility: hidden !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
}

/* ==========================================================================
   RESPONSIVE / MEDIA QUERIES (agrupadas y unificadas)
   Todas las @media del archivo original se han consolidado aqui. Cuando dos
   bloques originales compartian exactamente la misma condicion, su contenido
   se ha fusionado en un unico bloque respetando el orden original interno.
   ========================================================================== */

/* ---- @media (min-width: 600px) ---- */

@media (min-width: 600px) {
  /***Spinner***/

  .page-id-25052 .gform_ajax_spinner.gform_ajax_spinner, .page-id-30165 .gform_ajax_spinner.gform_ajax_spinner, .page-id-32835 .gform_ajax_spinner.gform_ajax_spinner {
    width: 30px;
  }

  .page-id-25052 .gform_footer.top_label, .page-id-30165 .gform_footer.top_label, .page-id-32835 .gform_footer.top_label {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  #gform_wrapper_9 .gform_ajax_spinner, #gform_wrapper_7 .gform_ajax_spinner {
    width: 30px;
  }

  #gform_wrapper_9 .gform_footer.top_label, #gform_wrapper_7 .gform_footer.top_label {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

}

/* ---- @media screen and (min-width: 700px) ---- */

@media screen and (min-width: 700px) {
  #cards_g_test {
    overflow: hidden;
  }

}

/* ---- @media screen and (min-width: 768px) ---- */

@media screen and (min-width: 768px) {
  .woocommerce #content table.cart .product-thumbnail, .woocommerce table.cart .product-thumbnail, .woocommerce-page #content table.cart .product-thumbnail, .woocommerce-page table.cart .product-thumbnail {
    display: table-cell !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  .woocommerce #content table.cart .product-thumbnail, .woocommerce table.cart .product-thumbnail, .woocommerce-page #content table.cart .product-thumbnail, .woocommerce-page table.cart .product-thumbnail img {
    width: 100px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    height: auto !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  #add_payment_method table.cart td, #add_payment_method table.cart th, .woocommerce-cart table.cart td, .woocommerce-cart table.cart th, .woocommerce-checkout table.cart td, .woocommerce-checkout table.cart th {
    vertical-align: top !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .woocommerce-cart .e-cart-totals {
    border: 1px solid var(--color-gray-80) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    border-radius: 10px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    padding: var(--spacing-sm) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    margin: 0 auto !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .woocommerce-cart .wc-proceed-to-checkout {
    display: flex !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    flex-direction: column !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    align-items: center !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    justify-content: space-between !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .woocommerce-cart .e-sticky-right-column {
    width: 100% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

}

/* ---- @media (min-width: 769px) ---- */

@media (min-width: 769px) {
  /* --- Solo visible en Escritorio (>768px) --- */

  /* 1. ELIMINAR LA FLECHA (ICONO) */

  .wpml-floating-language-switcher .wpml-ls-item-toggle.wpml-ls-item-toggle::after {
    content: none;
    display: none !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
  }

  /* Restauramos el padding derecho ya que no hay flecha */

  .wpml-floating-language-switcher .wpml-ls-legacy-dropdown a {
    padding-right: var(--spacing-xl);
  }

  /* 2. POSICIONAMIENTO GENERAL Y AJUSTE DE ANCHO */

  .wpml-floating-language-switcher {
    display: block;
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 999;
    overflow: visible;
    /* --- CORRECCIÓN DE ANCHO (NUEVO) --- */
    /* Fuerza al contenedor a abrazar el contenido */
    width: auto !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
    max-width: fit-content !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  }

  /* Ajuste crítico para el dropdown de WPML */

  .wpml-floating-language-switcher .wpml-ls-legacy-dropdown.wpml-ls-legacy-dropdown {
    width: auto;
    min-width: 0;
    /* Elimina el ancho mínimo de 160px de WPML */
  }

  /* 3. BOTÓN PRINCIPAL (Español) */

  .wpml-floating-language-switcher .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle.wpml-ls-item-toggle {
    background-color: var(--color-white);
    color: #983232;
    border: 1px solid #ebebeb;
    border-radius: 15px;
    /* Siempre redondo al inicio */
    padding: var(--spacing-sm) var(--spacing-xl);
    text-decoration: none;
    display: block;
    font-weight: 600;
    /* Evita que el texto se rompa en dos líneas al encogerse */
    white-space: nowrap;
    /* Z-INDEX ALTO: Clave para que el menú salga de "detrás" de este botón */
    position: relative;
    z-index: 20;
    /* Transición suave del color del botón */
    transition: background-color 0.3s ease, border-radius 0.3s ease;
  }

  /* 4. ESTADO HOVER DEL BOTÓN PRINCIPAL */

  /* Cuando el menú se abre, ajustamos bordes */

  .wpml-floating-language-switcher .wpml-ls-legacy-dropdown:hover a.wpml-ls-item-toggle.wpml-ls-item-toggle {
    background-color: var(--color-red-90);
    border-radius: 0 0 15px 15px;
    /* Cuadrado arriba */
    border-top-color: var(--color-red-90);
    /* Fusión visual */
    border-bottom-color: var(--color-gray-light-90);
    border-left-color: var(--color-gray-light-90);
    border-right-color: var(--color-gray-light-90);
  }

  /* 5. LISTA DESPLEGABLE (ANIMACIÓN Y ESTILOS) */

  .wpml-floating-language-switcher .wpml-ls-legacy-dropdown .wpml-ls-sub-menu {
    /* Posición */
    bottom: 100% !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
    top: auto !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
    margin-bottom: 0px;
    /* Ancho automático pero mínimo igual al botón */
    width: 100%;
    min-width: 100%;
    /* Estilos visuales de la caja */
    background-color: var(--color-white);
    border: 1px solid var(--color-gray-light-90);
    border-bottom: none;
    border-radius: 15px 15px 0 0;
    padding: 0;
    box-shadow: 0px -5px 15px rgba(0,0,0,0.05);
    overflow: hidden;
    /* Z-INDEX BAJO: Para que esté "detrás" del botón principal */
    z-index: 10;
    /* --- AQUÍ ESTÁ LA ANIMACIÓN --- */
    display: block !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
    /* Forzamos bloque para poder animar */
    /* Estado INICIAL (Cerrado): */
    visibility: hidden;
    /* No se ve ni se puede clicar */
    opacity: 0;
    /* Transparente */
    transform: translateY(20px);
    /* Empujado 20px hacia abajo (escondido detrás del botón) */
    /* Transición de SALIDA (Repliegue hacia adentro) */
    transition: all 0.3s cubic-bezier(0.4, 0.0, 0.2, 1);
  }

  /* 6. ESTADO ABIERTO DE LA LISTA (APARICIÓN) */

  .wpml-floating-language-switcher .wpml-ls-legacy-dropdown:hover .wpml-ls-sub-menu {
    /* Estado FINAL (Abierto): */
    visibility: visible;
    opacity: 1;
    transform: translateY(0px);
    /* Sube a su posición original */
    /* Transición de ENTRADA (Salida hacia arriba) */
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    /* Efecto un poco elástico y suave */
  }

  /* 7. ITEMS DE LA LISTA */

  .wpml-floating-language-switcher .wpml-ls-legacy-dropdown .wpml-ls-sub-menu li {
    margin: 0;
    list-style: none;
    width: 100%;
  }

  .wpml-floating-language-switcher .wpml-ls-legacy-dropdown .wpml-ls-sub-menu a {
    display: block;
    padding: var(--spacing-sm) var(--spacing-xl);
    color: #983232;
    background-color: var(--color-white);
    text-decoration: none;
    transition: background 0.2s;
    border: none;
    border-bottom: 1px solid var(--color-gray-light-90);
    font-size: var(--font-size-xs);
    /* Evita roturas de línea en nombres largos */
    white-space: nowrap;
  }

  .wpml-floating-language-switcher .wpml-ls-legacy-dropdown .wpml-ls-sub-menu a:hover {
    background-color: var(--color-red-90);
  }

  .wpml-floating-language-switcher .wpml-ls-legacy-dropdown .wpml-ls-sub-menu li:last-child a {
    border-bottom: none;
  }

  .wpml-floating-language-switcher .wpml-ls-statics-shortcode_actions {
    margin-bottom: 0;
  }

}

/* ---- @media screen and (max-width: 400px) ---- */

@media screen and (max-width: 400px) {
  /* Ajustes para pantallas muy pequeñas */

  .payment_box.payment_method_insite.payment_method_insite {
    padding: var(--spacing-xl) var(--spacing-sm);
  }

  fieldset.redsys-new-card-data {
    padding: var(--spacing-4xl) var(--spacing-md) !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
    min-height: 240px;
  }

  .payment_method_insite .date-wrap.date-wrap {
    display: grid !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
    grid-template-columns: 1fr 1fr;
    gap: var(--spacing-sm);
  }

  .payment_method_insite .date-wrap .cvv-wrap.cvv-wrap {
    width: 100%;
  }

  /* Ajustar botón en pantallas muy pequeñas */

  fieldset.redsys-new-card-data .input-wrapper#redsys-submit,
    fieldset.redsys-new-card-data #redsys-submit,
    .payment_method_insite .input-wrapper#redsys-submit {
    left: 10px !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
    right: 10px !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
    width: calc(100% - 20px);
    max-width: calc(100% - 20px);
    bottom: -65px !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
  }

  .input-wrapper#redsys-submit {
    height: 50px;
  }

}

/* ---- @media screen and (max-width: 450px) ---- */

@media screen and (max-width: 450px) {
  .cuw-offers .cuw-product-image.cuw-product-image {
    min-width: 50px;
    max-width: 55px;
  }

  .cuw-offers .cuw-product-image img {
    max-height: 55px;
  }

}

/* ---- @media screen and (max-width: 600px) ---- */

@media screen and (max-width: 600px) {
  /***Cookiebot***/

  div>#CookiebotWidget:not(.CookiebotWidget-inactive) {
    bottom: 10px !important; /* necesario: puede anular un style inline dinamico del plugin de cookies/popup */
  }

  .elementor-widget-woocommerce-cart .e-cart__container #opt-cart {
    margin-top: var(--spacing-6xl);
  }

  .elementor-widget-woocommerce-cart .e-cart__container {
    display: inherit !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  .elementor-widget-woocommerce-cart .e-cart__container .e-apply-coupon {
    font-size: var(--font-size-base-px) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  /* Responsive */

  #order_review_heading_custom {
    padding: var(--spacing-md) var(--spacing-xl);
    margin-top: var(--spacing-xl);
  }

  .order-summary-label {
    font-size: var(--font-size-base-px);
  }

  .order-summary-count {
    font-size: var(--font-size-2xs);
  }

  .order-summary-amount {
    font-size: var(--font-size-lg);
  }

  .order-summary-currency {
    font-size: var(--font-size-2xs);
  }

  #productos_accordion_custom {
    padding: var(--spacing-lg) var(--spacing-2xl-px);
  }

  #productos_accordion_custom .order-summary-label {
    font-size: var(--font-size-sm);
  }

  #productos_accordion_custom .order-summary-count {
    font-size: var(--font-size-2xs);
  }

  #productos_accordion_custom .order-summary-amount {
    font-size: var(--font-size-base-px);
  }

  #productos_accordion_custom .icono-desplegable {
    font-size: var(--font-size-2xs);
  }

  #productos_table_wrapper {
    padding: var(--spacing-sm) var(--spacing-2xl-px);
  }

  .productos-lista-simple {
    gap: var(--spacing-sm);
  }

  .producto-item {
    padding: var(--spacing-2xs) 0;
  }

  .producto-imagen {
    width: 45px;
    height: 45px;
  }

  .producto-imagen img {
    width: 45px;
    height: 45px;
  }

  .producto-nombre {
    font-size: var(--font-size-2xs);
  }

  .producto-cantidad {
    font-size: var(--font-size-2xs);
  }

  /* ============================================
   BOTÓN DE PAGO - Fuera de la tarjeta rosa
   ============================================ */

  .payment_box.payment_method_insite.payment_method_insite {
    padding: var(--spacing-4xl) var(--spacing-xl);
    margin: 0;
    width: 100%;
    box-sizing: border-box;
  }

  fieldset.redsys-new-card-data {
    padding: 25px var(--spacing-xl) !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
    max-width: 100% !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
    margin: 0 !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
    width: 100% !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
    box-sizing: border-box !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  }

  .payment_method_insite .date-wrap.date-wrap {
    display: grid !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
    grid-template-columns: 1fr 1fr;
    gap: var(--spacing-md);
  }

  .payment_method_insite .date-wrap > div {
    margin: 0;
    width: 100%;
  }

  .payment_method_insite .date-wrap .cvv-wrap.cvv-wrap {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }

  /* Ajustar botón en móvil */

  /* fieldset.redsys-new-card-data .input-wrapper#redsys-submit,
    fieldset.redsys-new-card-data #redsys-submit,
    .payment_method_insite .input-wrapper#redsys-submit {
        left: 15px !important;
        right: 15px !important;
        width: calc(100% - 30px) !important;
        max-width: calc(100% - 30px) !important;
        bottom: -70px !important;
    }
    
    .input-wrapper#redsys-submit {
        height: 52px !important;
    } */

  /* Ajustar labels en móvil */

  .payment_method_insite .date-wrap > div label, fieldset.redsys-new-card-data .cardinfo-label.cardinfo-label {
    font-size: 10px;
    letter-spacing: 1px;
  }

  /* Ajustar campos de entrada */

  .payment_method_insite .input-wrap.input-wrap {
    height: 48px;
    margin: 0;
  }

  fieldset.redsys-new-card-data > div:first-child .input-wrap.input-wrap {
    height: 50px;
  }

  /* ========================================
   RESPONSIVE MÉTODOS DE PAGO
   ======================================== */

  #payment .payment_methods {
    border-radius: 10px;
  }

  #payment .payment_methods li label {
    padding: 0 var(--spacing-2xl-px);
    margin: 0;
    font-size: var(--font-size-xs);
  }

  #payment .payment_methods li input[type="radio"] {
    width: 18px;
    height: 18px;
    margin-right: var(--spacing-md);
  }

  #payment .payment_methods li label img {
    max-height: 20px;
  }

  /* #payment .payment_methods li.payment_method_stripe {
    display: none !important;
} */

  /* Logo de PayPal en el acordeón */

  /* #payment .payment_methods li.payment_method_ppcp-gateway > label::after {
    content: '';
    display: inline-block;
    width: 33px;
    height: 34px;
    margin-left: auto;
    background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" shape-rendering="geometricPrecision" text-rendering="geometricPrecision" image-rendering="optimizeQuality" fill-rule="evenodd" clip-rule="evenodd" viewBox="360 40 295 505"%3E%3Cg fill-rule="nonzero"%3E%3Cpath fill="%23001C64" d="M624.1 285.97c-7.23 41.2-40.84 72.34-84.95 72.34h-28c-5.71 0-11.46 5.29-12.37 11.13l-12.26 77.84c-.71 4.43-2.79 5.9-7.28 5.9H434.2c-4.55 0-5.63-1.52-4.95-6.02l5.17-53.82-54.06-2.79c-4.55 0-6.19-2.48-5.55-7.02l36.89-233.89c.71-4.43 3.47-6.33 7.94-6.33h93.55c45.04 0 73.52 30.31 77.01 69.62 26.79 18.1 39.32 42.18 33.9 73.04z"/%3E%3Cpath fill="%230070E0" d="M448.13 306.19l-13.7 87.16-8.67 54.68c-.05.36-.08.74-.08 1.12 0 4.08 3.3 7.4 7.39 7.42l47.56.01a9.142 9.142 0 009.01-7.71l12.52-79.44c.7-4.43 4.51-7.69 9-7.7l27.99.01c44.09-.06 81.57-32.21 88.33-75.76 4.85-30.94-10.72-59.1-37.36-73.02a70.51 70.51 0 01-.86 9.83c-6.79 43.53-44.27 75.67-88.32 75.72h-43.82c-4.48 0-8.29 3.26-8.99 7.68z"/%3E%3Cpath fill="%23003087" d="M434.42 393.35h-55.39c-4.09-.02-7.39-3.35-7.39-7.44 0-.38.03-.75.08-1.12l37.32-236.65c.7-4.43 4.52-7.7 9-7.7h95.1c45.04 0 77.78 32.77 77.01 72.47a83.299 83.299 0 00-38.1-9.24h-79.97c-4.49 0-8.31 3.26-9.01 7.69l-14.94 94.83-13.7 87.16h-.01z"/%3E%3C/g%3E%3C/svg%3E');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    flex-shrink: 0;
} */

}

/* ---- @media screen and (max-width: 700px) ---- */

@media screen and (max-width: 700px) {
  #cards_g_test {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    white-space: nowrap;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    margin-right: 0px;
    margin-bottom: var(--spacing-4xl);
    /* Ajusta según sea necesario */
    padding-bottom: var(--spacing-2xl-px);
    /* Ajusta según sea necesario */
  }

  #cta_carrito_test {
    margin-left: var(--spacing-xs-px);
    width: 100%;
  }

  a.added_to_cart.wc-forward {
    background: var(--color-white);
    display: block;
    width: 30%;
    margin-left: var(--spacing-4xl);
    padding: var(--spacing-lg);
    text-align: center;
    border-radius: 40px;
    border: 2px solid;
    z-index: 1000;
  }

  #cards_3_test.active .message-with h5 {
    text-align: center;
  }

  #cards_g_test {
    padding-bottom: 36px;
  }

  #lista_nueva_ul li {
    width: 32%;
  }

  .tooltip_test {
    width: 100% !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
    margin-top: var(--spacing-5xl) !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  }

  #form_id {
    width: 100%;
    padding-bottom: var(--spacing-4xl);
  }

  #titulo_test h4 {
    width: 90%;
    margin: 0 auto;
    margin-top: var(--spacing-4xl);
  }

  #bloque_superior_test {
    padding: 0;
  }

  #titulo_test {
    margin-bottom: var(--spacing-sm);
    padding-bottom: var(--spacing-sm);
  }

  #fotos_p_test {
    display: none;
  }

  button.single_add_to_cart_button.button.alt {
    /* width: 100%!important;  */
    padding-left: var(--spacing-8xl) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    padding-right: var(--spacing-8xl) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  #cards_3_test .custom-vari {
    width: 86%;
    margin-left: auto;
    margin-right: auto;
  }

  .swiper-wrapper .swiper-slide .elementor-carousel-image {
    background-size: cover !important; /* necesario: especificidad baja frente al CSS de Elementor */
    width: 77%;
    margin: 0 auto;
    border-radius: 10px;
    height: 230px !important; /* necesario: especificidad baja frente al CSS de Elementor */
  }

  #titulo_podium {
    text-align: center;
    margin-bottom: var(--spacing-5xl);
  }

  #cards_3_test.active {
    height: 280px;
  }

  #cards_2_test.active .wbdl-price {
    background: var(--color-accent);
    border: 1px solid var(--color-accent);
  }

  #cards_1_test.active .wbdl-price {
    background: var(--color-accent);
    border: 1px solid var(--color-accent);
    padding-top: var(--spacing-xl);
  }

  #cards_3_test.active .wbdl-price {
    background: var(--color-accent);
    border: 1px solid var(--color-accent);
    width: 80%;
    min-width: 70%;
    margin-left: 11%;
    padding: var(--spacing-5xs) var(--spacing-xl) var(--spacing-sm);
  }

  #cards_1_test {
    height: 90px;
    padding-top: 26px;
  }

  #cards_1_test .message-with h5 {
    margin-top: var(--spacing-lg);
  }

  #img_biberon_1 img {
    margin-left: var(--spacing-2xs);
    width: 100%;
  }

  #img_biberon_2 img {
    margin-left: var(--spacing-2xs);
    width: 100%;
    padding-top: var(--spacing-4xl);
  }

  #img_biberon_3 img {
    margin-left: var(--spacing-2xs);
    width: 100%;
  }

  #container_id {
    width: 100%;
    margin: 0 auto;
  }

  .joinchat__button {
    bottom: 80px !important; /* necesario: puede anular un style inline dinamico del plugin de cookies/popup */
  }

  .sticky_btn {
    width: 98% !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  }

  #cards_1_test, #cards_2_test, #cards_3_test {
    margin: 0 var(--spacing-xs-px);
    flex-direction: column;
    margin-bottom: var(--spacing-7xl);
    position: relative !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
    flex: 0 0 50%;
    text-align: center;
    border: 1px solid var(--color-gray-70);
    border-radius: 30px;
    cursor: pointer;
    display: flex !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
    padding: var(--spacing-3xs) 0px var(--spacing-sm) 0;
  }

  #cards_options_test {
    display: flex !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
  }

  div.message-with h5 {
    width: 80% !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
    word-wrap: break-word !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  }

  #cards_options_test .wbdl-price {
    width: 80%;
    margin: 0 auto;
    white-space: normal;
    background: var(--color-white);
    border-radius: 40px;
    border: 1px solid var(--color-primary);
    display: block !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
    margin-top: auto;
    background-color: var(--color-white);
    padding: var(--spacing-5xs) var(--spacing-xl) var(--spacing-sm);
    min-width: 80%;
    position: absolute !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
    bottom: -13% !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
    left: 0 !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
    z-index: 1 !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
    margin-left: 10%;
    font-size: 21px;
    font-family: Lora;
    color: var(--color-primary);
    font-weight: bold;
    max-height: 54px;
    line-height: 20px;
  }

  #cards_1_test .wbdl-price {
    width: 80%;
    padding: var(--spacing-xl) var(--spacing-3xs);
  }

  #cards_2_test {
    height: 210px;
    padding-top: var(--spacing-5xl);
  }

  #cards_1_test {
    height: 180px;
    padding-top: var(--spacing-3xl);
  }

  #cards_3_test {
    height: 180px;
    padding-top: var(--spacing-4xl);
    flex: 0 0 50%;
  }

  #cards_3_test .message-with h5 {
    width: 70%;
    margin-top: var(--spacing-4xs);
    text-align: center;
  }

  #cards_2_test .message-with h5 {
    margin-top: var(--spacing-4xs);
  }

  .active .message-with {
    margin-top: var(--spacing-3xs);
  }

  #img_biberon_1, #img_biberon_2, #img_biberon_3 {
    margin-right: 0;
  }

  #img_puntos_id {
    width: 90%;
    margin: 0 auto;
    margin-top: -10px;
    margin-bottom: var(--spacing-7xl);
  }

  #lista_nueva_id {
    width: 100%;
  }

  span.discount-rule {
    text-align: center !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
    width: 100% !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
    margin: 0 auto !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  }

  .ywgc_enter_code .form-row {
    float: inherit;
  }

  .ywgc_enter_code .form-row {
    width: 100% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .cuw-offers .cuw-container.cuw-container {
    padding: var(--spacing-xl);
  }

  #cards_options_test .wbdl-price {
    padding-top: 0;
  }

  #cards_1_test, #cards_2_test, #cards_3_test {
    height: 210px;
  }

  #cards_g_test {
    margin-bottom: var(--spacing-6xl);
  }

  [data-elementor-post-type="product"] .elementor-swiper {
    height: 260px;
  }

  .ywgc_enter_code .form-row {
    text-align: center !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .ywgc_enter_code .ywgc_apply_gift_card_button {
    margin-left: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

}

/* ---- @media (max-width: 767px) ---- */

@media (max-width: 767px) {
  .elementor-widget-shortcode .elementor-shortcode {
    display: flex;
    justify-content: center;
  }

  .elementor-widget-heading .elementor-heading-title {
    text-align: center !important; /* necesario: especificidad baja frente al CSS de Elementor */
  }

  /* ajustes rapidos carrito */

  .elementor-13 .elementor-element.elementor-element-19889a9c {
    padding: var(--spacing-sm) var(--spacing-3xs) !important; /* necesario: especificidad baja frente al CSS de Elementor */
  }

  .e-cart-section .cart .cuw-offer-row {
    display: none;
  }

  .cuw-cart-upsells-carousel .cuw-carousel-title {
    display: none;
  }

}

/* ---- @media only screen and (max-width: 767px) ---- */

@media only screen and (max-width: 767px) {
  .titulo_bar {
    height: 70px;
    padding: 0px var(--spacing-4xs);
  }

  .options {
    width: 100%;
  }

  .options_solos {
    width: 100%;
  }

  .option {
    flex: 0 0 40%;
    min-height: 250px;
  }

  button.next-button {
    width: 96%;
  }

  .solos {
    flex: 0 0 46% !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  }

  .question-title {
    font-size: var(--font-size-lg);
  }

  .question-subtitle {
    font-size: var(--font-size-sm);
  }

  .doble_m {
    padding-bottom: var(--spacing-xs-px);
    padding-top: var(--spacing-3xs);
    display: block;
  }

  .doble {
    display: none;
  }

  .option img {
    max-height: 200px;
  }

  .cuatro {
    max-width: calc(50% * 2);
  }

  .especial {
    margin-top: 60px;
  }

  .especial_2 {
    margin-top: -60px;
  }

  .cuatro .option {
    min-height: 220px;
    max-height: 220px;
  }

  button.final-button {
    width: 96%;
  }

  button.final-button:disabled {
    width: 96%;
  }

  .elementor-element-ebcc599 .elementor-widget-wrap.elementor-element-populated {
    padding: var(--spacing-sm) 0px !important; /* necesario: especificidad baja frente al CSS de Elementor */
  }

  .barra_azul {
    display: none;
  }

  .popup-content {
    width: 95%;
  }

}

/* ---- @media screen and (max-width: 767px) ---- */

@media screen and (max-width: 767px) {
  /* Flex container for price elements */

  .price-flex {
    justify-content: center !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  }

  /* Mostrar solo en móvil (menor a 768px) */

  .resumen-checkout {
    display: block;
  }

  /* --- ORDENAR STRIPE Y PAYPAL EN LA MISMA FILA (ALINEACIÓN Y SKELETON) --- */

/* 1. Contenedor flexible principal */
.wc-proceed-to-checkout {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: space-between !important;
  align-items: flex-start !important; 
}

/* 2. Elementos que ocupan el 100% arriba y abajo */
.wc-proceed-to-checkout .checkout-button,
.wc-proceed-to-checkout .ppcp-messages,
.wc-proceed-to-checkout .hm-payment-methods-image {
  width: 100% !important;
  flex-basis: 100% !important;
  margin-bottom: 15px !important;
}

/* 3. Stripe (GPay/Apple Pay) - Con Skeleton y anulación del margen fantasma */
#wc-stripe-express-checkout-element {
  width: 48.5% !important;
  flex-basis: 48.5% !important;
  clear: none !important;
  margin-top: 0 !important; /* LA CLAVE: Anula el 1em que inyecta Stripe inline */
  height: 48px !important; /* Fija la altura del esqueleto */
  min-height: 48px !important;
  border-radius: 4px !important;
  position: relative;
  overflow: hidden !important;
}

/* Ocultamos el div vacío "Link" de Stripe por si intenta ocupar espacio */
#wc-stripe-express-checkout-element-link {
  display: none !important;
}

/* 4. PayPal - Ajuste de altura para que quede milimétricamente igual que GPay */
.ppc-button-wrapper {
  width: 48.5% !important;
  flex-basis: 48.5% !important;
  clear: none !important;
  margin-top: 0 !important;
  margin-bottom: 15px !important;
  height: 48px !important; /* Igualamos a los 48px de Stripe */
  display: flex !important;
  align-items: center !important; /* Centra el botón de PayPal verticalmente */
}

/* 5. Asegurar que los iframes llenen su contenedor al 100% y no se desborden */
#wc-stripe-express-checkout-element-googlePay,
#wc-stripe-express-checkout-element-applePay,
#wc-stripe-express-checkout-element .StripeElement,
#wc-stripe-express-checkout-element iframe {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

  .woocommerce-cart #wc-stripe-express-checkout-element-link {
    display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  #wc-stripe-express-checkout-element-link {
    display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  /* Ocultar todos los campos de dirección nativos */

  /* #billing_first_name_field,
#billing_last_name_field,
#billing_company_field,
#billing_address_1_field,
#billing_address_2_field,
#billing_city_field,
#billing_state_field,
#billing_postcode_field,
#billing_country_field,
#billing_phone_field {
    display: none !important;
}

#billing_email_field {
    display: block !important;
}

#stripe-address-wrapper {
    margin-bottom: 25px;
    padding: 20px;
    background: #f9f9f9;
    border-radius: 5px;
}

#stripe-address-wrapper h3 {
    margin-top: 0;
    margin-bottom: 15px;
}

#stripe-address-element {
    min-height: 200px;
} */

  /*Añadir margen al contenedor de elección de idiomas para que no se oculte bajo del boton de añadir al carrito*/

  /* 1. Forzamos al contenedor a subir de nivel en las capas del navegador */

  .wpml-ls-statics-footer {
    position: relative !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
    z-index: 9999 !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
    /* Lo pone por encima de casi todo */
    margin-bottom: 50px !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
    /* Aumentamos a 100px para que sea muy obvio */
    display: block !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
  }

  /* 2. Si el selector de WPML es una lista, forzamos su contenedor interno */

  .wpml-ls-statics-footer ul {
    margin-bottom: var(--spacing-7xl) !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  }

}

/* ---- @media (max-width: 768px) ---- */

@media (max-width: 768px) {

  .woocommerce table.shop_table_responsive tbody {
    width: 100%;
  }

  /* Quitar los dos puntos (:) encima de la imagen del producto en el carrito móvil */

  .woocommerce table.shop_table_responsive tr td.product-thumbnail::before {
    content: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  /* --- DISEÑO CARRITO HAPPY MAMI (CORREGIDO) --- */

  /* 1. LIMPIEZA */

  .elementor-widget-woocommerce-cart .e-cart-section {
    padding: 0 var(--spacing-4xl) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .woocommerce table.shop_table thead {
    display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  .woocommerce table.shop_table_responsive tr td::before, 
    .woocommerce-cart-form__cart-item td::before {
    content: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  /* Forzar tabla flexible para centrar */

  .woocommerce table.shop_table {
    display: flex !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    flex-direction: column;
    align-items: center !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  /* 2. TARJETA (GRID) */

  .woocommerce-cart-form__cart-item {
    display: grid !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    grid-template-columns: 120px auto auto 1fr auto;
    /* Imagen un poco más pequeña (90px) para dar aire */
    grid-template-rows: auto auto;
    grid-template-areas: "image title title title title" 
            "image qty remove space price";
    gap: var(--spacing-sm) var(--spacing-xl);
    background: var(--color-white);
    border: 1px solid var(--color-gray-90);
    border-radius: 12px;
    padding: var(--spacing-5xs);
    margin-bottom: var(--spacing-5xs);
    align-items: center;
    width: 100%;
    /* Asegurar ancho */
    box-sizing: border-box;
  }

  tr.cart_item {
    padding: var(--spacing-sm) 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    border: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  /* --- ZONA 1: IMAGEN (AUTO-AJUSTABLE AL ALTO) --- */

  tr.cart_item td.product-thumbnail {
    grid-area: image;
    /* CLAVE: Altura al 100% para que llene todo el alto de la tarjeta (filas 1 y 2) */
    /* height: 100% !important;  */
    width: 100% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    aspect-ratio: 1 / 1 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    /* Estilo del marco */
    border: 1px solid var(--color-gray-90) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    border-radius: 10px;
    background-color: var(--color-white);
    padding: var(--spacing-3xs) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    /* Centrado de la foto dentro del marco estirado */
    display: flex !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    align-items: center;
    justify-content: center;
    overflow: hidden;
  }

  /* Ocultar enlaces duplicados o vacíos */

  tr.cart_item td.product-thumbnail a:first-child:empty,
    tr.cart_item td.product-thumbnail a[href=""]:first-child {
    display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  /* El enlace ocupa todo el hueco */

  tr.cart_item td.product-thumbnail a {
    display: flex !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
  }

  /* La imagen se mantiene proporcional dentro del marco rectangular */

  tr.cart_item td.product-thumbnail img {
    width: 100% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    height: 100% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    /* "contain" es vital aquí: la foto no se deforma aunque el marco sea muy alto */
    object-fit: contain !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    border-radius: 4px;
    object-position: center !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  /* CORRECCIÓN: Ocultar enlace vacío o duplicado */

  /* Habías puesto tr.cart-item (error tipográfico), es tr.cart_item */

  tr.cart_item td.product-thumbnail a {
    display: block !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    height: auto;
    width: 100%;
  }

  tr.cart_item td.product-thumbnail img {
    width: 100% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    height: auto !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    /* "contain" muestra el producto entero sin cortarlo. 
           Si prefieres que llene todo el cuadrado aunque se corte, usa "cover" */
    object-fit: contain !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    border-radius: 8px;
  }

  /* --- ZONA 2: TÍTULO --- */

  tr.cart_item td.product-name {
    grid-area: title;
    border: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    padding: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    align-self: start;
  }

  tr.cart_item td.product-name a {
    border: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    margin: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    padding: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  tr.cart_item td.product-name dl {
    gap: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    margin: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .woocommerce table.shop_table_responsive tr td, .woocommerce-page table.shop_table_responsive tr td {
    text-align: left !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  tr.cart_item td.product-name a {
    font-weight: 700;
    color: var(--color-gray-20);
    text-decoration: none;
    display: block;
    margin-bottom: var(--spacing-4xs);
    line-height: 1.2;
  }

  tr.cart_item td.product-name dl.variation {
    margin: 0;
    font-size: 0.85em;
    color: #666;
  }

  tr.cart_item td.product-name dl.variation dt {
    float: none;
    font-weight: normal;
    display: inline;
  }

  tr.cart_item td.product-name dl.variation dd {
    float: none;
    margin: 0;
    display: inline-block;
  }

  tr.cart_item td.product-name dl.variation dd p {
    display: inline;
  }

  tr.cart_item td.product-name dl.variation dd::after {
    content: "\A";
    white-space: pre;
  }

  /* --- ZONA 3: CANTIDAD --- */

  tr.cart_item td.product-quantity {
    grid-area: qty;
    border: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    padding: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    margin: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .woocommerce .quantity {
    margin: 0;
    display: flex;
    border: 1px solid #ddd;
    border-radius: 5px;
  }

  .woocommerce .quantity .qty {
    width: 35px;
    height: 35px;
    padding: 0;
    border: none;
    text-align: center;
  }

  /* --- ZONA 4: ELIMINAR (X) --- */

  tr.cart_item td.product-remove {
    grid-area: remove;
    border: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    padding: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    display: flex;
    align-items: center;
    justify-content: center;
    position: static !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    width: auto !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    height: auto !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  tr.cart_item td.product-remove a.remove {
    color: #999 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    font-size: 24px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    font-weight: 300;
    background: transparent !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    border: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    margin-left: var(--spacing-3xs);
    line-height: 1;
  }

  /* --- ZONA 5: PRECIOS (CORREGIDO EURO) --- */

  tr.cart_item td.product-subtotal {
    grid-area: price;
    border: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    padding: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    display: flex !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    justify-content: flex-end;
    align-items: flex-end;
  }

  /* Wrapper contenedor */

  tr.cart_item td.product-subtotal .hm-subtotal-wrapper {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    line-height: 1.2;
  }

  /* --- REGLA 1: PRECIO TACHADO (GRIS) --- */

  /* Usamos selectores muy específicos para machacar el rosa */

  tr.cart_item td.product-subtotal .hm-subtotal-wrapper del,
    tr.cart_item td.product-subtotal .hm-subtotal-wrapper del span,
    tr.cart_item td.product-subtotal .hm-subtotal-wrapper del bdi,
    tr.cart_item td.product-subtotal .hm-subtotal-wrapper del .woocommerce-Price-currencySymbol {
    color: #aaa !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    /* GRIS */
    text-decoration: line-through !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    font-weight: normal !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    font-size: 0.85rem !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  /* Aseguramos separación */

  tr.cart_item td.product-subtotal .hm-subtotal-wrapper del {
    margin-bottom: var(--spacing-5xs);
  }

  /* --- REGLA 2: PRECIO FINAL (ROSA) --- */

  /* Esto aplica al precio final (ins) o al precio normal si no hay oferta */

  tr.cart_item td.product-subtotal .hm-subtotal-wrapper ins,
    tr.cart_item td.product-subtotal .hm-subtotal-wrapper ins span,
    tr.cart_item td.product-subtotal .hm-subtotal-wrapper ins bdi,
    tr.cart_item td.product-subtotal .hm-subtotal-wrapper ins .woocommerce-Price-currencySymbol,
    tr.cart_item td.product-subtotal > span.amount bdi,
    tr.cart_item td.product-subtotal > span.amount .woocommerce-Price-currencySymbol {
    color: var(--color-red-60) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    /* ROSA */
    text-decoration: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    background: transparent !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    font-weight: 800 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    font-size: 1.2rem !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  /* Ocultar precio unitario */

  tr.cart_item td.product-price {
    display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  .woocommerce-cart .e-cart-totals {
    border: 1px solid var(--color-gray-80) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    border-radius: 10px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    padding: var(--spacing-sm) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    width: 90vw !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    margin: 0 auto !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .cart_totals tr.order-total small.includes_tax {
    display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  .cart_totals > h2 {
    display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  .e-cart-totals table.shop_table tbody {
    width: 100% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .e-cart-totals table.shop_table tbody tr {
    width: 100% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    display: flex !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    justify-content: space-between !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    align-items: center !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  /* Limpiamos la lista de métodos de envío para que parezca solo texto */

  .cart_totals ul#shipping_method {
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: right;
    /* Asegurar alineación derecha */
  }

  .cart_totals ul#shipping_method li {
    margin: 0;
    text-indent: 0;
  }

  /* Ocultamos el radio button (el circulito) para que quede solo el texto */

  .cart_totals ul#shipping_method input[type="radio"] {
    display: none;
  }

  .cart_totals ul#shipping_method label {
    margin: 0;
  }

  .cart_totals .woocommerce-shipping-calculator,
    .cart_totals .woocommerce-shipping-destination {
    display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  .e-cart-totals table.shop_table tbody tr th,
    .e-cart-totals table.shop_table tbody tr td {
    padding: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .e-cart-totals table.shop_table tbody tr.order-total {
    margin-top: var(--spacing-4xl) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    font-size: 1.5rem !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    font-weight: 800 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .e-cart-totals table.shop_table tbody tr.order-total td span {
    color: var(--color-red-60) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .e-cart__container .shop_table .cart-discount th {
    flex-grow: 1 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .elementor-13 .elementor-element.elementor-element-19889a9c {
    padding: var(--spacing-5xl) var(--spacing-4xl) 0px var(--spacing-4xl) !important; /* necesario: especificidad baja frente al CSS de Elementor */
  }

  .woocommerce-cart .wpml-ls-legacy-list-horizontal.wpml-ls-statics-footer {
    margin-bottom: 180px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .e-cart__container .e-sticky-right-column--active {
    position: unset !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  .wc-proceed-to-checkout {
    padding-inline: 10px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  #add_payment_method .wc-proceed-to-checkout, .woocommerce-cart .wc-proceed-to-checkout, .woocommerce-checkout .wc-proceed-to-checkout {
    padding: 0 var(--spacing-3xs) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .wc-proceed-to-checkout #ppc-button-ppcp-gateway .paypal-button-tagline {
    display: none !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  #wc-stripe-express-checkout-element > div {
    min-width: 0;
    width: auto;
    /* Opcional: deja que el contenido defina el ancho */
  }

  .wc-proceed-to-checkout .ppc-button-wrapper {
    height: 56px !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .elementor-widget-woocommerce-cart .woocommerce .cart_totals table.shop_table_responsive tbody th, .elementor-widget-woocommerce-cart .woocommerce-page .cart_totals table.shop_table_responsive tbody th, .woocommerce table.shop_table_responsive tbody th, .woocommerce-page table.shop_table_responsive tbody th {
    display: block !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  .elementor-widget-woocommerce-cart .e-cart-section {
    padding: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .woocommerce-cart-form__cart-item {
    display: grid !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    grid-template-columns: 85px auto auto 1fr auto;
    /* Mantengo los 85px para la imagen */
    grid-template-rows: auto auto;
    /* CAMBIO CLAVE: El punto '.' en la segunda fila deja el espacio bajo la imagen vacío */
    grid-template-areas: "image title title title title" 
            ". qty remove space price";
    gap: var(--spacing-sm) var(--spacing-xl);
    background: var(--color-white);
    border: 1px solid var(--color-gray-90);
    border-radius: 12px;
    padding: var(--spacing-5xs);
    margin-bottom: var(--spacing-5xs);
    align-items: center;
    width: 100%;
    box-sizing: border-box;
  }

  /* --- ZONA 1: IMAGEN --- */

  tr.cart_item td.product-thumbnail {
    grid-area: image;
    /* CAMBIO CLAVE: Alinea la caja de la imagen a la parte superior */
    align-self: start !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    width: 100% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    aspect-ratio: 1 / 1 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    /* Estilo del marco */
    border: 1px solid var(--color-gray-90) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    border-radius: 10px;
    background-color: var(--color-white);
    padding: var(--spacing-3xs) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    display: flex !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    align-items: center;
    justify-content: center;
    overflow: hidden;
  }

  /* La imagen se mantiene proporcional */

  tr.cart_item td.product-thumbnail img {
    width: 100% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    height: 100% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    object-fit: contain !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    border-radius: 8px;
  }

  tr.cart_item td.product-name {
    grid-area: title;
    border: none !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    padding: 0 !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    align-self: start;
    /* CAMBIO CLAVE PARA GRID: Permite que el contenido interno se pueda truncar */
    min-width: 0;
  }

  tr.cart_item td.product-name a {
    font-weight: 700;
    color: var(--color-gray-20);
    text-decoration: none;
    display: block;
    margin-bottom: var(--spacing-4xs);
    line-height: 1.2;
    /* NUEVOS CAMBIOS: Tamaño más pequeño y truncado de texto */
    font-size: var(--font-size-2xs) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    /* Puedes ajustar este número a tu gusto */
    white-space: nowrap;
    /* Evita que salte a la siguiente línea */
    overflow: hidden;
    /* Oculta lo que no cabe */
    text-overflow: ellipsis;
    /* Añade los "..." al final */
    max-width: 100%;
    /* Asegura que no se pase de su contenedor */
  }

  /* --- ZONA 5: PRECIOS --- */

}

/* ---- @media screen and (max-width: 768px) ---- */

@media screen and (max-width: 768px) {
  .e-cart__container .cart_item td {
    padding: .2rem !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  .e-cart__container .product-thumbnail {
    display: block !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  #place_order.fixed {
    width: 60%;
    bottom: 0 !important; /* necesario: puede anular un style inline dinamico via JS (mostrar-ocultar o posicionamiento) */
  }

}

/* ---- @media screen and (max-width: 990px) ---- */

@media screen and (max-width: 990px) {
  .options-container {
    overflow-x: scroll !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  }

}

/* ---- @media screen and (max-width: 1015px) ---- */

@media screen and (max-width: 1015px) {
  .gift-cards-list .ywgc-amount-buttons, .gift-cards-list .ywgc-manual-amount {
    width: 40% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    max-width: 40% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    margin-bottom: var(--spacing-sm);
  }

  .gift-cards-list .ywgc-manual-amount input {
    width: 80% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

}

/* ---- @media screen and (max-width: 1024px) ---- */

@media screen and (max-width: 1024px) {
  /* Columna */

  #product-col {
    width: 100%;
  }

  .woocommerce-cart .wc-proceed-to-checkout {
    /* Barra flotante (siempre visible) */
    position: fixed !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    left: 0 !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    right: 0 !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    bottom: calc(env(safe-area-inset-bottom, 0px)) !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    width: 100% !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    z-index: 2147483647 !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    background: rgba(255, 255, 255, 0.96) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    backdrop-filter: blur(6px);
  }

  .woocommerce-cart .wc-proceed-to-checkout .checkout-button {
    display: block;
    width: min(95%, 520px) !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
    margin: 0 auto !important; /* necesario: especificidad baja frente al CSS propio de WooCommerce */
  }

  /* Si el footer tuviera un z-index/position conflictivo, lo bajamos SOLO en carrito móvil */

  .woocommerce-cart footer,
    .woocommerce-cart .site-footer {
    position: relative !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
    z-index: 1 !important; /* necesario: puede anular un style inline dinamico de WooCommerce/JS (mostrar-ocultar o posicionamiento) */
  }

  /*}*/

}

/* ---- @media screen and (max-width: 1025px) ---- */

@media screen and (max-width: 1025px) {
  /******************************
	Ajustes globales rapidos
*******************************/

  .e-atc-qty-button-holder {
    margin: 0 auto !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
    justify-content: center !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
    margin-top: var(--spacing-sm) !important; /* revisar: especificidad baja; no se pudo confirmar con que otra regla compite */
  }

  /*                                                                          */

  /*                                                                          */

  /*                                                                          */

  /*                                                                          */

  /*                                                                          */

  /*                                                                          */

  /*                                                                          */

  /*                                                                          */

}

/* ---- @media screen and (max-width: 1260px) ---- */

@media screen and (max-width: 1260px) {
  #container_id {
    width: 100%;
  }

}

/*temp*/
.elementor .elementor-element.elementor-widget-n-tabs:not(:has(>.elementor-widget-container))>.e-n-tabs>.e-n-tabs-heading .e-n-tab-title[aria-selected=true], .elementor .elementor-element.elementor-widget-n-tabs:not(:has(>.elementor-widget-container))>.e-n-tabs[data-touch-mode=true]>.e-n-tabs-heading .e-n-tab-title[aria-selected=false]:hover, .elementor .elementor-element.elementor-widget-n-tabs>.elementor-widget-container>.e-n-tabs>.e-n-tabs-heading .e-n-tab-title[aria-selected=true], .elementor .elementor-element.elementor-widget-n-tabs>.elementor-widget-container>.e-n-tabs[data-touch-mode=true]>.e-n-tabs-heading .e-n-tab-title[aria-selected=false]:hover {
	background: none !important;
}