a:hover {
  text-decoration: none !important;
}
figure{
  margin-bottom: 0;
}
.label_nostock{background: #FF0000; position: absolute; top: 0; width: auto; color: #FFFFFF; padding: 5px 10px; left: 0;font-size: 12px;}
.font-weight-semibold{
  font-weight: 500;
}
.cursor-pointer{
  cursor: pointer;
}
#menu_mobile_flip .search1 ,
.desktop-search .search1 {
  z-index: 50 !important;
}
.line-through{
  text-decoration: line-through;
}
.price-old, .price {
  color: #3d3d3d;
  font-size: 19px !important;
  font-weight: normal;
  display: block;
}
.price_offer {
  color: #ff2d2d !important;
  font-size: 19px !important;
  font-weight: normal;
}
.badge-danger {
  background: rgba(244, 67, 54, 0.82);
  color: #fff;
  text-transform: uppercase;
  padding: 9px 0 7px;
  text-shadow: 1px 1px rgb(0 0 0 / 24%);
  width: auto;
  text-align: center;
  display: block;
  position: absolute;
  padding: 6px 10px 6px 10px;
  right: 0;
  top: 20px;
  z-index: 1;
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
  border-radius: 0;
}
.badge-danger:before {
  position: absolute;
  bottom: -6px;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 10px 0 0;
  border-color: #bf4138 transparent transparent transparent;
  content: ".";
  text-indent: -5000px;
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
}

.card-product-grid{
  background-image: none !important;
}
.card-product-grid .info-wrap {
  padding: 0;
}
.card-product-grid .img-wrap {
  height: auto;
}
.card-product-grid .fix-height,
.card-product-grid .info-wrap > div{
  display: flex;
  flex-direction: column-reverse;
  justify-content: start;
  text-align: left;
  position: relative;
  height: auto !important;
  padding: .5rem !important;
}

.card-product-grid .titles,
.card-product-grid .title{
  color: #000 !important;
  font-weight: 600;
  white-space: normal;
  text-overflow: ellipsis;
  overflow: hidden !important;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  line-height: 1.3em;
  margin-bottom: 0.5rem !important;
  min-height: auto;
  text-align: left !important;
  font-size: 15px !important;
}
.card-product-grid .subtitle{
  font-weight: normal;
}

.card-product-grid .ctn-icon-cart{
  background: #000000d1 !important;
  position: absolute;
  top: .5rem !important;
  right: 1rem !important;
  padding: 3px;
  border-radius: 4px !important;
  display: block !important;
  cursor: pointer !important;
}

.ctn-icon-cart svg{
  width: 24px;
  height: 24px;
  position: relative;
  pointer-events: none;
  fill: #fff;
}

.card-product-grid .price-wrap {
  display: flex !important;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: left !important;
  gap: unset !important;
  column-gap: 1rem !important;
  max-width: calc(100% - 24px);
}

.card-product-grid .price-wrap .price_offer,
.card-product-grid .price-wrap .price,
.card-product-grid .price-wrap .price-old {
  font-size: 19px;
  font-weight: normal;
}

.card-product-grid .price-wrap .price-old {
  color: #3d3d3d !important;
}

.card-product-grid .price-wrap .price_offer,
.card-product-grid .price-wrap .price {
  color: #000 !important;
  font-weight: 700;
}

.card-product-grid .price-wrap .price_offer,
.card-product-grid .price-wrap .price {
  color: #000 !important;
  font-size: 19px;
  font-weight: normal;
  font-weight: 700;
}

.card-product-grid figure img,
.card-product-grid .imgProduct {
  max-height: 220px !important;
  aspect-ratio: unset !important;
  gap: 1rem !important;
}

.product-review .card p{
  color: #4f4f4f;
}

@media (min-width: 768px) {
  .card-product-grid .fix-height,
  .card-product-grid .info-wrap > div{
    padding: 1.5rem !important;
  }
  .card-product-grid .fix-height.katana_style{padding: 0.5rem !important;}
  .card-product-grid .ctn-icon-cart{
    top: 1.5rem !important;
  }
  .card-product-grid figure img,
  .card-product-grid .imgProduct {
    max-height: 100% !important;
  }
  .product-review svg{
    width: 26px !important;
  }
}

@media (max-width: 767px){
  .card-product-grid .img-wrap img.katana_style{height: auto !important;max-height: unset !important;}
}

/*color filter catalogo*/
.colorCircle{width: 20px; height: 20px; border-radius: 50%; border: 2px solid #d4d4d4; position: relative;}
.link-icon.data_color{width: 100px; height: 20px; display: block; position: absolute; right: -110px; top: -2px;}

/*widget product vikingo*/
.mod_catalogo.row.wdgt_vikingo .card-product-grid:hover {transition: unset !important; transform: unset !important; }
.mod_catalogo.row.wdgt_vikingo .info-wrap .title{min-height: 40px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden !important;}

.mod_catalogo.row.wdgt_vikingo .card-product-grid .price-wrap .price-old{margin-left: 0px !important;}

.mod_catalogo.row.wdgt_vikingo .card-product-grid .fix-height, .card-product-grid .info-wrap > div{flex-direction: column !important; }
.mod_catalogo.row.wdgt_vikingo .card-product-grid .price-wrap{justify-content: center !important;}
.mod_catalogo.row.wdgt_vikingo .card-product-grid .title.text-center{text-align: center !important; }
.mod_catalogo.row.wdgt_vikingo .card-product-grid .price-wrap{max-width: 100% !important;gap: 10px !important;flex-wrap: nowrap;}
.mod_catalogo.row.wdgt_vikingo .card-product-grid .cant_prod{width: 100%;display: flex;flex-direction: row !important;padding: 0 !important;margin-bottom: 10px;}
.mod_catalogo.row.wdgt_vikingo .card-product-grid button.add_prd{background: #F2931B; border: 0;border-radius: 80px;}
.mod_catalogo.row.wdgt_vikingo .card-product-grid .cant_prod .btn-minus{border: 1px solid #ced4da;border-right: 0;border-top-left-radius: 50%;border-bottom-left-radius: 50%;}
.mod_catalogo.row.wdgt_vikingo .card-product-grid .cant_prod .btn-minus:hover,
.mod_catalogo.row.wdgt_vikingo .card-product-grid .cant_prod .btn-minus:active,
.mod_catalogo.row.wdgt_vikingo .card-product-grid .cant_prod .btn-minus:focus{background: white !important;color:#545454 !important;box-shadow: unset !important;}
.mod_catalogo.row.wdgt_vikingo .card-product-grid .cant_prod .quantity{ border-left: 0;border-right: 0;}
.mod_catalogo.row.wdgt_vikingo .card-product-grid .cant_prod .quantity:focus{border-color: #ced4da !important;}
.mod_catalogo.row.wdgt_vikingo .card-product-grid .cant_prod .btn-plus{border: 1px solid #ced4da;border-left: 0;border-top-right-radius: 50%;border-bottom-right-radius: 50%;}
.mod_catalogo.row.wdgt_vikingo .card-product-grid .cant_prod .btn-plus:hover,
.mod_catalogo.row.wdgt_vikingo .card-product-grid .cant_prod .btn-plus:active,
.mod_catalogo.row.wdgt_vikingo .card-product-grid .cant_prod .btn-plus:focus{background: white !important;color:#545454 !important;box-shadow: unset !important;}

/*widget product bodyrest*/
.mod_catalogo.row.wdgt_bodyrest .card-product-grid:hover {transition: unset !important; transform: unset !important; }
.mod_catalogo.row.wdgt_bodyrest .card-product-grid .img-wrap img{height: 220px !important;}
.mod_catalogo.row.wdgt_bodyrest .card-product-grid .btnreserv,
.mod_catalogo.row.wdgt_bodyrest .card-product-grid .btnreserv:hover{background: #FD5933; border-radius: 25px;border-color: #FD5933;}
.mod_catalogo.row.wdgt_bodyrest .card-product-grid .info-wrap > div{padding: 1rem !important;}
.mod_catalogo.row.wdgt_bodyrest .card-product-grid .price-wrap{max-width: 100% !important;}
.mod_catalogo.row.wdgt_bodyrest > .item{margin-bottom: 15px;}
.mod_catalogo.row.wdgt_bodyrest [class*="card-product"] a.title{min-height: 40px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden !important;}

@media (max-width: 600px){
  .mod_catalogo.row.wdgt_vikingo .card-product-grid .price-wrap .price-old {margin-left: 0px !important; font-size: 14px !important; }
  .mod_catalogo.row.wdgt_vikingo .card-product-grid .price-wrap .price {margin-left: 0px !important; font-size: 14px !important; }
  .mod_catalogo.row.wdgt_bodyrest .card-product-grid .img-wrap img{height: auto !important;}
  .mod_catalogo.row.wdgt_bodyrest .card-product-grid .info-wrap > div {padding: 1rem 0 0 0 !important; }

}


input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type=number] {
  -moz-appearance: textfield;
}




/* widget product */
.card-product-grid .btn_verdetalle{
  display: none !important;
}

.card-product-grid:hover {
  transition: 0.3s !important;
  transform: scale(1.05) !important;
}

.card-product-grid .porcentaje,
.card-product-grid .tag_descuento{
  position: absolute;
  color: #fff !important;
  text-transform: uppercase;
  text-shadow: 1px 1px rgb(0 0 0 / 24%);
  left: unset;
  font-size: 14px;
  background: rgba(244, 67, 54, 0.82);
  right: 0px;
  top: 20px;
  border-radius: 0;
  padding: 5px 10px;
}

.card-product-grid .porcentaje::before,
.card-product-grid .tag_descuento::before {
  position: absolute;
  bottom: -6px;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 10px 0 0;
  border-color: #bf4138 transparent transparent transparent;
  content: ".";
  text-indent: -5000px;
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
}

#articles-container{
  display: grid;
  width: 100%;
  grid-template-columns: repeat(1, 1fr);
  grid-column-gap: 20px;
  grid-row-gap: 20px;
}

#articles-container .articulo-main-container{
  margin-bottom: 0;
}

#articles-container .articulo-main .titulo-articulo-main{
  margin-top: 1rem;
}

#articles-container .articulo-main h6,
#articles-container .btn-leer-mas{
  display: none;
}

@media (min-width: 576px) {
  #articles-container{
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 992px) {
  #articles-container{
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (min-width: 992px) {
  .zoom-container {
    position: relative;
    overflow: hidden;
  }
  
  .zoom-container img {
    width: 100%;
    height: 100%;
    transition: transform 0.3s ease;
    cursor: zoom-in;
  }
}

/* inputs quantity */
.qty {
	display: flex;
  align-items: center;
	justify-content: center;
	text-align: center;
  border: 1px solid #EEEEEE;
}
.qty input {
  width: 6rem; 
  height: 3rem;	
  font-size: 1.3rem;
  text-align: center;
  border: none;
  outline: none;
}
.qty button {
  background: #ddd;
  border: 0;
  padding: 2px;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  position: relative;
}
.qty button.qtyminus {
  margin-right: 0.3rem;
}
.qty button.qtyplus {
  margin-left: 0.3rem;
}

.qty button svg{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.qty input[type="number"]::-webkit-inner-spin-button,
.qty input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Para Firefox */
.qty input[type="number"] {
  -moz-appearance: textfield;
}

/* Opcional: un estilo general */
.qty input[type="number"] {
  appearance: none;
}

.title-catalog{
  font-size: 1.35rem;
}
@media (min-width: 992px) {
  .title-catalog{
    font-size: 2rem;
  }
}

#header_catalog img{
  width: 100%;
}


.offcanvas {
  position: fixed;
  top: 0;
  right: -1000px; /* Fuera de la pantalla */
  max-width: 300px;
  background-color: #fff;
  color: #333;
  box-shadow: -5px 0 10px rgba(0, 0, 0, 0.3);
  transition: right 0.4s ease;
  padding: 1rem;
  z-index: 100;
  border-radius: 0.45rem;
}
.offcanvas-header{
  max-width: calc(100% - 1rem);
}
.offcanvas.show {
  right: 0; /* Visible */
}
.offcanvas a:hover {
  text-decoration: underline;
}
.overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  display: none;
  z-index: 99;
}
.overlay.show {
  display: block;
}

.offcanvas-close{
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
}

/* shopping-cart - offcanvas*/
.offcanvas-shopping-cart.offcanvas.show{
  right: 1rem;
}

.offcanvas-shopping-cart.offcanvas{
  max-width: calc(100% - 2rem);
  top: 50%;
  transform: translateY(-50%);
}
@media (min-width: 576px) {
  .offcanvas-shopping-cart.offcanvas.show{
    right: 2rem;
  }
  .offcanvas-shopping-cart.offcanvas{
    max-width: 370px;
  }
}

.offcanvas-shopping-cart .offcanvas-body{
  min-height: 250px;
  max-height: 500px;
  overflow: auto;
}

/* cart  */
.cart-item .title{
  font-size: 14px;
  font-weight: bold;
}
.cart-item .subtitle{
  font-size: 12px;
}
.cart-item .qty{
  justify-content: start;
  border: none;
}
.cart-item .qty input{
  width: 2rem;
  height: 1rem;
  font-size: 14px;
}
.cart-item .qty button{
  width: 20px;
  height: 20px;
}
.cart-item .qty button svg{
  width: 10px;
  height: 10px;
}

.cart-item svg{
  pointer-events: none;
}

#sectionRelatedProducts .price{
  font-size: 16px !important;
  font-weight: 400;
}

/* apply widget module */
.container {
  width: 100%;
  margin: 0 auto;
  max-width: 1440px !important;
}
.search__wrapper.search .search__field:focus{
  background: #fff;
}

/* page product detail */
.ctnTopProductDetail{
  display: none;
}
.ctnTopProductDetail .jumbotron{
  background-color:#A9A9A9;
  gap: 2rem;
}

.ctnTopProductDetail.scrolled .jumbotron{
  position: fixed;
  top: 1rem;
  z-index: 20;
}

.ctnTopProductDetail .title {
  font-size: 28px;
}

@media (min-width: 992px) {
  .ctnTopProductDetail{
    display: block;
  }
  .ctnTopProductDetail .jumbotron{
    gap: 6rem;
  }
}

.variation-image{
  border-radius: 50%;
  width: 60px;
  height: 60px;
  object-fit: cover;
}

.active .variation-image{
  border: 2px solid #3b3b3b;
}
.active span{
  font-weight: 600;
}

/* menu custom */
.navbar-nav .dropdown-menu li a,
.link-icon{
  position: relative;
  white-space: nowrap;
  color: #777 !important;
  display: block;
}
.navbar-nav .dropdown-menu li:hover a,
.link-icon:hover,
.link-icon.active{
  color: #000 !important;
  font-weight: 600;
}

.link-icon{
  white-space: normal;
}

.scrolled-content{
  position: sticky;
  top: 4rem;
}

.breadcrumbCatalog li a{
  font-weight: 600;
}

.topProductDetail .title,
.topProductDetail .btnTopAddCartModal,
#ctnRightProductDetail .ctn-form .btnAddCartModal{
  font-weight: 600;
  color: #fff;
}

#ctnRightProductDetail .ctn-variations .subtitle{
  font-weight: 600;
}

#ctnShoppingCart .title{
  font-weight: 600;
}

.offcanvas-shopping-cart .label-subtotal,
.offcanvas-shopping-cart .subtotal{
  font-weight: 600;
}

.ctnFilterBy{
  overflow: auto;
  max-height: calc(100vh - 5rem);
}


.card-product-grid .img-wrap img {
  height: 170px !important;
  object-fit: contain !important;
}

@media (min-width: 768px) {
  .card-product-grid .img-wrap img {
    height: 220px !important;
  }

  .card-product-grid .img-wrap img.katana_style {
    height: auto !important;
  }
}

@media (min-width: 992px) {
  .wdgtProducto .card-product-grid .img-wrap img {
    height: 275px !important;
  }
}

.listCategoriesCatalog li{
  position: relative;
}

.listCategoriesCatalog li .link-icon.active{
  padding-right: calc(20px + .5rem);
}

.listCategoriesCatalog li .close-option{
  position: absolute;
  top: -2px;
  right: 0;
  cursor: pointer;
  z-index: 10;
}

.listCategoriesCatalog li .close-option svg{
  pointer-events: none;
}