.carousel-loading {
    text-align: center;
    padding: 20px;
}

.agotado {
    color: #EE7E34;
    font-weight: bold;
    text-align: center;
    margin-top: 20px;
}

.mi-boton-personalizado-carrito.ajax_add_to_cart .fas.fa-spinner.fa-spin {
    animation: fa-spin 2s infinite linear;
}

.mi-boton-personalizado-carrito.ajax_add_to_cart.added {
    background-color: #4CAF50; /* Color verde */
    color: white;
}

.elementor-shortcode {
    text-align: center;
    justify-content: center;
    justify-items: center;
}

.quantity-controls {
    display: flex !important;
    align-items: center !important;
    gap: 0 !important; /* Elimina el espacio entre elementos */
    margin: 0 !important;
    padding: 0 !important;
}

.quantity-minus,
.quantity-plus {
    background-color: #fff !important;
    color: black !important;
    border: 1px solid black !important;
    width: 20px !important; /* Reduce el ancho */
    height: 20px !important; /* Reduce la altura */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 14px !important; /* Reduce el tamaño de la fuente */
    font-weight: 700 !important;
    border-radius: 0 !important; /* Elimina el borde redondeado */
    cursor: pointer !important;
    transition: all 0.2s ease-in-out !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.quantity-add-container input.qty {
    width: 30px !important; /* Reduce el ancho */
    text-align: center !important;
    font-size: 14px !important; /* Reduce el tamaño de la fuente */
    padding: 0 !important;
    border: 1px solid #ddd !important;
    border-radius: 0 !important; /* Elimina el borde redondeado */
    margin: 0 !important;
}

.mi-boton-personalizado-carrito {
    background-color: #d4771c !important;
    color: white !important;
    padding: 7px 12px !important;
    border: none !important;
    border-radius: 5px !important;
    cursor: pointer !important;
    font-size: 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
}

.mi-boton-personalizado-carrito:hover {
    background-color: #EE7E34 !important;
}

 a.leer-mas{
    background-color: #EE7E34 !important; /* Nuevo color de fondo */
    color: white !important; /* Letras blancas */
    padding: 5px 12px !important;
    border: none !important;
    border-radius: 5px !important;
    cursor: pointer !important;
    font-size: 13px !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
	font-weight: bold;

}

.mi-boton-personalizado-carrito.seleccionar-opciones,
.mi-boton-personalizado-carrito.leer-mas{
    background-color: #EE7E34 !important; /* Nuevo color de fondo */
    color: white !important; /* Letras blancas */
    padding: 5px 12px !important;
    border: none !important;
    border-radius: 5px !important;
    cursor: pointer !important;
    font-size: 13px !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
	font-weight: bold;

}

.mi-boton-personalizado-carrito.seleccionar-opciones:hover,
.mi-boton-personalizado-carrito.leer-mas:hover{
    background-color: #d4771c !important; /* Mismo color al pasar el ratón */
}

a.button.product_type_simple.add_to_cart_button.ajax_add_to_cart::after {
    display: none !important;
}
.added_to_cart.wc-forward {
    display: none !important;
}
wc-adding-to-cart {
    pointer-events: none; /* Evita que el botón responda a los clics */
    opacity: 0.5; /* Reduce la opacidad para indicar que está deshabilitado */
}
.add_to_cart_button::after {
    content: attr(data-original-text); /* Obtiene el texto del atributo data-original-text */
}

.mi-boton-personalizado-carrito {
    background-color: #4CAF50;
    color: white;
    padding: 10px;
    border: none;
    cursor: pointer;
    font-size: 16px;
}

.mi-boton-personalizado-carrito:hover {
    background-color: #3e8e41;
}




/* ======== Popup General Centrado ======== */
.quick-view-popup-content {
    display: flex;
     flex-direction: column;
     padding: 30px;
     width: 80vw;
     max-width: 1200px;
     background: #fff;
     border-radius: 20px;
     position: fixed; /* Cambiado a fixed */
     top: 50%; /* Centrado vertical */
     left: 50%; /* Centrado horizontal */
     transform: translate(-50%, -50%); /* Ajuste para centrar */
     box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
     font-family: "Nunito", Sans-serif !important;
     overflow: hidden;
     z-index: 1000; /* Asegura que esté encima de otros elementos */
 }

.slick-dots {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 1000 !important;
  position: absolute !important;
  bottom: 10px !important;
  width: 100% !important;
  text-align: center !important;
}

.slick-dots li button:hover {
  background: none !important; /* Cambia el color al hover */
}

slick-dots li button:focus {
  outline: none !important;
  background: none !important;
}

.slick-dots li.slick-active button {
  background: none !important;
}


 .custom-close-btn {
     position: absolute;
     top: 15px;
     right: 15px;
     background: #333;
     color: white;
     font-size: 18px;
     width: 34px;
     height: 34px;
     line-height: 34px;
     text-align: center;
     border-radius: 50%;
     cursor: pointer;
     transition: background 0.3s ease;
     z-index: 10;
 }
 
 /* ======== Columna Izquierda (Imagen + Título) ======== */
 .quick-view-left {
     flex: 1 1 40%;
     text-align: left; /* Alineación a la izquierda */
     display: flex;
     flex-direction: column;
     justify-content: flex-start; /* Alineación al inicio */
     gap: 20px;
 }
 
 .quick-view-left h2 {
     font-size: 24px;
     margin-bottom: 10px;
     color: #222;
     font-weight: 600;
 }
button.detalle{
	display:none;
}
button.detalle-imagen{
	display:none;
}
.popup-image {
    display: block; /* Visible por defecto */
}
 .popup-image img {
     max-width: 100%;
     height: auto;
     border-radius: 14px;
     object-fit: contain;
 }
 
 /* ======== Columna Derecha (Precio, Descripción, Botones) ======== */
 .quick-view-right {
     flex: 1 1 35%;
     display: flex;
     flex-direction: column;
     gap: 20px;
     justify-content: flex-start; /* Alineación al inicio */
 }
 
 /* ======== Precio destacado en #d4771c ======== */
 .popup-price {
     font-size: 36px;
     font-weight: 400;
     margin-bottom: 20px;
     text-align:center;
 }
 
 /* ======== Titulo ======== */
 h2.popup-title {
     font-size: 30px;
     font-weight: 900;
     margin-bottom: 10px;
     text-align:center;
	 color:#d4771c;
 }
 
 /* ======== Descripción scrollable ======== */
 .popup-description {
     font-size: 16px;
     color: #555;
     line-height: 1.6;
     max-height: 40vh; /* Reducido la altura */
     overflow: auto; /* Cambiado a auto */
     padding-right: 8px;
     scrollbar-gutter: stable;
	 display: block;
 }
 
 /* ======== Botón Acción (añadir, opciones) ======== */
 .button {
     background: #EE7E34;
     color: white;
     padding: 12px 20px; /* Reducido el padding */
     border: none;
     border-radius: 10px;
     text-decoration: none;
     display: inline-block;
     text-align: center;
     transition: background 0.3s ease;
     font-weight: 600;
     cursor: pointer;
     font-size: 16px;
     margin-top: 15px; /* Añadido margen */
 }
 
 /* ======== Cantidad + Botón Añadir ======== */
 .quantity-add-container {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important; /* Aumenta el espacio entre elementos */
    margin: 0 !important;
    padding: 0 !important;
 }
 
 .quantity-add-container, .variations_form .quantity-selector {
     display: flex;
     align-items: center;
     gap: 10px;
 }
 .quantity-controls {
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    margin: 0 !important;
    padding: 0 !important;
 }
 .add-to-cart-container {
     width: 100%; /* Aseguramos que el contenedor del botón ocupe todo el ancho */
	 text-align: center;
 }
 
 .add_to_cart_button {
     width: 100%; /* Aseguramos que el botón ocupe todo el ancho */
 }
 
 .variations_form .quantity-selector {
     margin-top: 15px;
 }
 
 .variation-dropdown {
     display: inline-block;
     margin-right: 10px;
 }
 
 .quantity-minus,
 .quantity-plus {
    background-color: #fff !important;
    color: black !important;
    border: 1px solid black !important;
    width: 25px !important; /* Aumenta el ancho */
    height: 25px !important; /* Aumenta la altura */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 16px !important; /* Aumenta el tamaño de la fuente */
    font-weight: 700 !important;
    border-radius: 5px !important; /* Agrega un borde redondeado */
    cursor: pointer !important;
    transition: all 0.2s ease-in-out !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
 }
 
 .quantity-add-container input.qty {
    width: 35px !important; /* Aumenta el ancho */
    text-align: center !important;
    font-size: 16px !important; /* Aumenta el tamaño de la fuente */
    padding: 2px !important; /* Agrega un poco de relleno */
    border: 1px solid #ddd !important;
    border-radius: 5px !important; /* Agrega un borde redondeado */
    margin: 0 !important;
 }
 
 button.add-to-cart.ajax_add_to_cart {
     background-color: #d4771c !important;
     color: white !important;
     padding: 10px 15px;
     text-transform: uppercase;
     font-weight: bold;
     border-radius: 20px !important; /* Borde redondeado */
     transition: background-color 0.3s ease-in-out;
     text-align: center;
     margin-top: 20px;
	 margin-right:25vw;
	 border: none;
 }
 
 .quick-view-columns {
     display: flex;
     gap: 20px;
 }
 
 .quick-view-left {
     flex: 1 1 40%;
 }
 
 .quick-view-right {
     flex: 1 1 50%;
 }
 
 .product-warranty {
     margin-top: 1px !important;
     text-align: center;
	 margin-top: 100px;
 }

 .warranty-title {
     color: #EE7E34;
     font-weight: bold;
     display: block;
     margin-bottom: 5px;
 }
 
 /* ======== Input Cantidad ======== */
 input.qty {    
     padding: 3px !important;
     border: 1px solid #000 !important;
     border-radius: 8px;
     text-align: center;
     font-size: 1em;
     color: #333;
     margin: 0 5px;
 }
 .quantity-selector {
     width: 28%;
 }
 /* ======== pintero sobre imagen======== */
 .quick-view-image img {
     cursor: pointer;
 }
 
 /* Estilos para el carrusel de Slick Carousel */
 .product-gallery-carousel {
     max-width: 400px;
     margin: 0 auto;
	/* visibility: hidden;*/
	/* opacity:0;*/
 }
 
 /* Estilos para las imágenes del carrusel */
 .product-gallery-carousel img.carousel-image {
     max-width: 100%;
     max-height: 300px;
     height: auto;
     object-fit: contain;
 }
 
 /* Ajustes para los puntos del carrusel */
 .product-gallery-carousel .slick-dots li button:before {
     font-size: 10px;
 }
 
 .product-gallery-carousel .slick-dots li.slick-active button:before {
     color: #d4771c;
 }
 
 /* Personalización de botones de navegación del carrusel */
 .product-gallery-carousel .slick-prev,
 .product-gallery-carousel .slick-next {
  font-size: 0;
     line-height: 0;
     position: absolute;
     top: 50%;
     display: block;
     width: 30px;
     height: 30px;
     padding: 0;
     -webkit-transform: translate(0, -50%);
     -ms-transform: translate(0, -50%);
     transform: translate(0, -50%);
     cursor: pointer;
     color: transparent;
     border: none;
     outline: none;
     background: transparent;
     z-index: 1;
	 opacity: 1 !important;
	 visibility: visible !important;
 }
 
 .product-gallery-carousel .slick-prev:before,
 .product-gallery-carousel .slick-next:before {
     font-family: 'slick';
     font-size: 30px;
     line-height: 1;
     opacity: 1;
     color: #EE7E34;
     -webkit-font-smoothing: antialiased;
     -moz-osx-font-smoothing: grayscale
 }
 
 .product-gallery-carousel .slick-prev {
     left: -10px;
 }
 
 .product-gallery-carousel .slick-next {
     right: -10px;
 }
 
 /* Eliminar efecto hover y color activo */
 .product-gallery-carousel .slick-prev:hover,
 .product-gallery-carousel .slick-next:hover,
 .product-gallery-carousel .slick-prev:hover:before,
 .product-gallery-carousel .slick-next:hover:before {
     background: transparent;
     color: #EE7E34; /* Mantenemos el color original */
 }
 .wc-carrito-off-canvas{
     width:380px;
     right:-380px;
 }

.off-canvas-content .cart-product-info{
	text-align:justify;
	    justify-content: space-around;
}

.cart-product-info span {
    width: 130px;
    padding: 0 !important;
    margin: 0 !important;
    text-align: center;
}
 
 button.mfp-close{
     display:none !important;
 }
 
 /* Para Firefox */
 .popup-description {
     scrollbar-color: #d4771c #f1f1f1;
     scrollbar-width: thin;
 }
 
 /* ======== Responsive (Mobile Adaptado) ======== */
 @media (max-width: 480px) {
     .quick-view-popup-content {
         flex-direction: column;
         width: 99vw !important;
         max-height:99vh !important;
         padding: 20px;
         top:47%;
         background:#fff;
         overflow-y: auto;
     }
     .popup-description {
         max-height: 150px; /* Ajusta la altura máxima según sea necesario */
         overflow-y: auto; /* Agrega desplazamiento vertical */
         margin-top: 20px; /* Espacio entre la imagen y la descripción */
         max-height: 150px; /* Aumentamos la altura máxima de la descripción */
		 display:none;
     }
     .quick-view-columns{
         display:inline;
     }
     
     h2.popup-title{
         font-size:25px;
		 font-weight:900 !important;
		 font-family: "Nunito", Sans-serif !important;

     }
     .popup-price {
         font-size:22px;
		 font-weight:400 !important;
		 font-family: "Nunito", Sans-serif !important;

     }
     .slick-dotted.slick-slider {
         margin:0 !important;
     }

     .product-gallery-carousel{
         height:28vh;
     }

     .product-gallery-carousel img.carousel-image{
         max-height:250px;
     }
     .slick-dots{
		display: block !important;
		opacity: 1 !important;
		visibility: visible !important;
     }
     .product-gallery-carousel .slick-prev, .product-gallery-carousel .slick-next{
         height:0;
     }
     input.qty{
         width: 25px !important;
		 height:32px !important;
     }
     .product-warranty{
         margin:0;
         font-size:12px;
		 margin-top: 100px !important;
     }
	 
	 .product-warranty.small-margin {
    	margin-top: 1px !important;
	}
	 
     .variation-dropdown{
         padding: 0 ;
		 margin: 0;
		 width:45%;
     }
	 .variation-dropdown label{
		 font-size:12px !important;
	 }
	 
     button, input, optgroup, select, textarea {
     font-family: "Nunito", Sans-serif !important;
     font-size: 12px !important;
     line-height: 1;
     margin: 0;
 }
     .quantity-minus,
     .quantity-plus {
         width:4vw !important;
         height:32px;
     }
	 .input-text qty text{
		 height:80%;
	 }
	 .quantity-add-container, .variations_form .quantity-selector{
		 gap:0 !important;
		 font-family: "Nunito", Sans-serif !important;
	 }
	 form.variations_form.cart{
		 display:ruby;
	 }
	 button.detalle{
		display: block;
        justify-self: center;
        border-radius: 20px !important;
        background: #d4771c !important;
        color: white !important;
        font-weight: 900;
        border: none;
		 margin-bottom:10px;
	 }
	 .popup-image{
		 display:block;
	 }


}

@media (max-width: 768px){
		 span.price{
		 font-size: 4.6vw !important;
	 }
	 span.woocommerce-Price-amount.amount {
		 font-size: 4.6vw !important;
	 }
	.price del{
		font-size: 4.6vw !important;
	}

}


