.halo_badge.sale-new {
    vertical-align: top;
    display: inline-block;
    background: #44b5f5;
    color: #fff;
}

.halo_badge.no-sale {
    vertical-align: top;
    display: inline-block;
    background: #ec4064;
    color: #fff;
}

.halo_badge.sale-no-stock {
    vertical-align: top;
    display: inline-block;
	background: #f79900;
    color: #fff;
}

.icon--ratingFull svg {
    fill: #FAC451;
}

.halo_products .card-body .card-figcaption-group {
    position: none;
    padding-bottom: 0;
}

.halo_products .btn-wishlist {
    opacity: 1; 
    visibility: visible; 
    vertical-align: top;
    top: unset;
    right: unset;
    z-index: 20;
    pointer-events: auto;
 }

.halo_products .btn-wishlist svg.icon-red {
    fill: #e74a3b;
}

.halo_products .btn-wishlist svg.icon-grey {
    fill: #d7d7d7;
}
/*
.halo_products .btn-wishlist svg.icon-red:hover {
    fill: #d7d7d7;
}

.halo_products .btn-wishlist svg.icon-grey:hover {
    fill: #e74a3b;
}
*/
.halo_products .btn-wishlist .icon {
    width: 20px;
    height: 20px;
}

.card-badge-whislist {
	top: 0;
    z-index: 20;
    text-align: left;
    position: absolute;
    pointer-events: none;
    width: 20px;
    height: 20px;
}

.card-badge-whislist-right {
	top: 0;
	right: 0;
	
}

.form-field input.is-selected {
    border: 1px solid black;
}

.halo_menuMobile .halo_close-menuMobile .close {
    font-size: 24px;
}


.product-section .productCarousel .slick-arrow-custom {
    background-color: transparent;
    border: none;
}

.product-section .productCarousel .slick-arrow-custom:hover {
    fill: unset;
    background-color: transparent;
}

.product-section .productCarousel .slick-arrow-custom.slick-disabled {
    background-color: transparent;
}

.zoom-container {
	border:1px solid #dadada;
    cursor: zoom-in;
}

.zoom-container img {
	transition: transform 0.4s ease;
	cursor: zoom-in;
}

.tabs-contents {
	border-left: 1px solid #eaeaea;
    border-bottom: 1px solid #eaeaea;
    padding: 20px;
    border-right: 1px solid #eaeaea;
}

.halo_tabs {
	margin-bottom: 0px;
}

.my-account .logged-in .text, .my-account .not-logged .text {
    line-height: 25px;
    letter-spacing: .4px;
    text-transform: uppercase;
}

div:where(.swal2-icon) .swal2-icon-content {
	font-size: unset!important;
}

.swal2-icon.swal2-warning {
    font-family: 'Open Sans', sans-serif;
    color: #f8bb86;
    border-color: #f8bb86;
    font-size: 60px;
    line-height: 80px;
    text-align: center;
}

.cart-item-block.cart-item-info.select-type {
    padding-left: 0px!important;
    padding-top: 15px!important;
}

.price-section .price--rrp {
    color: #8c8c8c!important;
}

.price-section .price--rrp+.price--withoutTax {
    color: #e95144!important;
}

.invalid-stock {
	color: #dc3545;
}

.cart-item-quantity.is-invalid .button--icon, .cart-item-quantity.is-invalid .form-input--incrementTotal, select.is-invalid{
	border-color: #dc3545!important;
}

.cart-item-quantity.is-invalid .invalid-feedback, .cart-item-info.is-invalid .invalid-feedback, .is-invalid + .invalid-feedback {
	display: unset;
	font-size:100%;
}

.form-field {
	margin:unset;
}

.form-checklist-checkbox~.form-label::before, .form-checklist-checkbox~.form-label::after {
	bottom: 1.5rem;
}

.checkout-steps .checkout-view-content .form-field {
     margin-top: 20px;
}

.d-none {
    display: none!important
}

.checkout-steps .checkout-view-content .form-legend {
    font-weight: 600!important;
    margin-bottom: 10px!important;
    padding-top: 10px!important;
}

.col-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
}

.row-6 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.optimizedCheckout-form-checklist-checkbox:disabled ~ .form-label::after,
.optimizedCheckout-form-checklist-checkbox:disabled ~ .form-label::before {
  background-color: #f5f5f5; /* color de fondo cuando est� deshabilitado */
  border-color: #ccc;        /* borde m�s tenue */
  cursor: not-allowed;       /* opcional */
}

.remove-btn {
    min-width: 130px!important;
}


.account-orderStatus-label.paid {
    background-color: #2c6ed5;
}

.account-orderStatus-label.pending {
    background-color: green;
}

.account-orderStatus-label.process {
    background-color: grey;
}

.account-orderStatus-label.cancel {
    background-color: #d52c35;
}

.account-orderStatus-label.delivered {
    background-color: #3c4757;
}

.account-orderStatus-label.transfer {
    background-color: #9322df;
}

.account-list .account-product {
	padding-left:10px;
	padding-right:10px;
}

input[type=submit].small {
    font-size: 8px;
    letter-spacing: 3px;
    line-height: 10px;
    padding: 4px 7px;
    min-width: 100px;
}

.button.small {
    color: white;
}

.button.small:hover {
    color: white;
    border-color: white;
}

.newsletter-popup-inner.popup-account {
	min-height: 10px!important;
	max-width: 450px;
	padding-top: 30px;
	padding-bottom: 30px;
}
	
.box {
	padding: 20px;
}	
	
.inputfile-2+label {
    color: #3977d3;
    border: 2px dashed currentColor;
}

.inputfile+label {
    width: 100%;
    font-size: 15px;
    font-weight: 400;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
    display: inline-block;
    overflow: hidden;
    padding: 30px 20px;
}

.inputfile {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

.inputfile+label svg {
    width: 1em;
    height: 1em;
    vertical-align: middle;
    fill: currentColor;
    margin-top: -0.25em;
    margin-right: 0.25em;
}

 .pd-rating-start {
    font-size: 25px;
    display: inline-block;
    color: #FAC451;
    margin-right: -3px;
}

 .stars1, .stars2, .stars3, .stars4, .stars5 {
	float: left;
	width: 1em;
	overflow: hidden;
	white-space: nowrap;
	cursor: pointer;
	margin: 3px;
 }
 
 .form-field {
 	margin-bottom:15px;
 }
 
 .halo-services {
 	margin-bottom: 20px;
 	text-align: center;
}

.halo-services svg {
	margin-top:2px;
}


@media (max-width: 600px) {
  .halo-services {
    min-width: 360px;
  }

  .whatsapp-icon i.fa {
      margin-top:6px;
  }
}

.halo_footer-top .footer-top-col:last-child {
    padding-right: 15px;
}

.bo18 {
    border-right: 1px solid #e6e6e6;
}

.halo_contact-page .contact-location {
    float: left;
    max-width: 470px;
}

@media (max-width: 992px) {
    .newsletter-popup-inner {
        font-size: 12px;
    }
}


.swal2-animate-warn-icon {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 7em;
  height: 7em;
  border: 0.25em solid rgba(248,187,134,0.2); /* color del c�rculo */
  border-radius: 50%;
  box-sizing: content-box;
  animation: swal2-rotate-warn 0.4s ease-in-out, swal2-pop-warn 0.4s ease-in-out;
  margin: 20px auto 0px;
}

.swal2-animate-warn-icon .swal2-icon-content {
  font-size: 5em;
  color: #f8bb86;
  opacity: 0;
  animation: swal2-show-warn 0.6s 0.2s forwards;
}

/* Animaci�n similar al success/error */
@keyframes swal2-rotate-question {
  0% { transform: rotate(-45deg); opacity: 0; }
  100% { transform: rotate(0); opacity: 1; }
}

@keyframes swal2-pop-warn {
  0% { transform: scale(0.5); }
  80% { transform: scale(1.1); }
  100% { transform: scale(1); }
}

@keyframes swal2-show-warn {
  0% { opacity: 0; transform: scale(0.5); }
  100% { opacity: 1; transform: scale(1); }
}

#page-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0,0,0,0.4);
  z-index: 9999;
  display: flex;
  justify-content: center;
  align-items: center;
}
.loader {
  width: 60px;
  height: 60px;
  border: 6px solid #ccc;
  border-top-color: #3fc3ee; /* color del spinner */
  border-radius: 50%;
  animation: spin 1s linear infinite;
}
@keyframes spin {
  to { transform: rotate(360deg); }
}


.popup-ring-size .newsletter-popup-inner.popup-account {
	max-width: 900px!important;
}

.halo_banner-parallax .label {
    border-bottom: none; 
}

.form-inlineMessage {
    display: none;
}

.form-field--error .form-inlineMessage {
    display: block;
}

 .invalid-border {
     border: 1px solid #dc3545!important;
 }

 .form-field--error iframe {
    border: 1px solid #dc3545!important;
 }

 .form-field--error .form-checkbox+.form-label::before, .form-field--error .form-input, .form-field--error .form-prefixPostfix-label, .form-field--error .form-radio+.form-label::before, .form-field--error .form-select {
     border-color: #cc4749!important;
 }

 /* -------------------------------------- */
 /* FORM LABEL                             */
 /* -------------------------------------- */
 .form-label {
     font-size: 12px;
     font-weight: 500;
     color: #2e3031;
 }

 .form-label > small {
     font-size: 12px;
     text-transform: capitalize;
 }

 .form-field .form-label {
     font-weight: 700;
     font-size: 12px;
     letter-spacing: .24px;
     text-transform: capitalize;
     color: #282828;
 }

 .form-field .form-label > small {
     float: none;
     font-size: 0;
     margin-left: 2px;
     text-transform: capitalize;
 }

 .form-field .form-label > small:before {
     content: "*";
     color: #e95144;
     font-size: 12px;
 }

 .form-field .form-label[for="agree2"] {
     color: #646464;
 }

 /* -------------------------------------- */
 /* INLINE MESSAGE                         */
 /* -------------------------------------- */
 .form-inlineMessage {
     display: inline-block;
     line-height: 24px;
     margin: .35714rem 0 -.5rem;
     width: 100%;
 }

 .form-field--error .form-inlineMessage,
 .form-field--error .form-field-error,
 .form-field--error + .form-inlineMessage {
     font-size: 11px;
     line-height: 18px;
 }

 .form-inlineMessage {
     margin-top: 0;
 }

 /* -------------------------------------- */
 /* SUCCESS STATE                          */
 /* -------------------------------------- */
 .form-field--success .form-input {
     float: left;
 }

 .form-field--success .form-checkbox + .form-label::before,
 .form-field--success .form-input,
 .form-field--success .form-prefixPostfix-label,
 .form-field--success .form-radio + .form-label::before,
 .form-field--success .form-select {
     border-color: #008a06;
 }

 .form-field--success .form-field-error,
 .form-field--success .form-inlineMessage {
     color: #008a06;
 }

 .form-field--success .form-input-indicator > svg {
     fill: #008a06;
 }

 .form-field--success .form-input[type="text"] {
     background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z' fill='rgba(0, 138, 6, 0.999)' /%3E%3C/svg%3E");
     background-position: right .71429rem center;
     background-repeat: no-repeat;
     padding-right: 3rem;
 }

 /* -------------------------------------- */
 /* ERROR STATE                            */
 /* -------------------------------------- */
 .form-field--error .form-input {
     float: left;
 }

 .form-field--error .form-checkbox + .form-label::before,
 .form-field--error .form-input,
 .form-field--error .form-prefixPostfix-label,
 .form-field--error .form-radio + .form-label::before,
 .form-field--error .form-select {
     border-color: #cc4749;
 }

 .form-field--error .form-field-error,
 .form-field--error .form-inlineMessage,
 .form-field--error + .form-inlineMessage {
     color: #cc4749;
 }

 .form-field--error .form-input-indicator > svg {
     fill: #cc4749;
 }

 .form-field--error .form-inlineMessage:before,
 .form-field--error + .form-inlineMessage:before {
     background: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z' fill='rgba(204, 71, 73, 0.999)' /%3E%3C/svg%3E") no-repeat;
     background-size: 100%;
     content: "";
     display: inline-block;
     height: 1rem;
     width: 1rem;
     position: relative;
     top: .21429rem;
     left: -.14286rem;
     margin-right: .07143rem;
 }

 /* -------------------------------------- */
 /* WARNING STATE                          */
 /* -------------------------------------- */
 .form-field--warning .form-input {
     float: left;
 }

 .form-field--warning .form-checkbox + .form-label::before,
 .form-field--warning .form-input,
 .form-field--warning .form-prefixPostfix-label,
 .form-field--warning .form-radio + .form-label::before,
 .form-field--warning .form-select {
     border-color: #f1a500;
 }

 .form-field--warning .form-field-error,
 .form-field--warning .form-inlineMessage {
     color: #f1a500;
 }

 .form-field--warning .form-input-indicator > svg {
     fill: #f1a500;
 }

.whatsapp-icon i.fa{
    font-size: 17px;font-weight: 600; color:black;
}


.form-prefixPostfix .button {
    height: auto;
    width: auto;
    margin-top: 0;
    margin-left: 15px;
}

.floatButton {
    position: fixed;
    width: 50px;
    height: 50px;
    bottom: 75px;
    right: 75px;
    background-color: rgba(0, 204, 68, 0.7);
    color: #FFF;
    border-radius: 50px;
    text-align: center;
    box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, .12);
    font-size: 24px;
    line-height: 50px;
    z-index:150;
}

.floatButton:hover {
    background-color: rgba(0, 204, 68, 1);
    color: rgb(197, 247, 213);
}