/* TableOfContentIndex
-Imports
  _FontAwesome
-Variables
-Global
  _Preloader
  _BoostrapCustom
  _Modal
  _ImageFit
  _ImageFitFancybox
  _HeroSlider
  _ButtonsColors
  _FontsColors
  _FontsSizes
  _Padding
  _Icons 
  _OwlCarousel
  _ProductDetail 
  _ProductTable 
  _ProductCart 
  _CardProduct
  _InputSpinner 
  _Select 
  _ProductInputColor
  _ProductInputSize 
  _ProductSelectPresentation 
  _Contrasenia
  _Swal
  _Autocomplete
-Especifics
  _Header
   __HeaderNavFooter
   __HeaderCart
   __HeaderSearch
  _Nav
   __NavMenu
  _Main
   __MainSectionHomeHero
   __MainSections
   __MainFilterSticky
   __MainAccountSticky
   __MainSectionBanner
   __MainSectionAsideFilter
   __MainSectionAsideFilterAccordion
   __MainSectionAsideFaqAccordion
   __MainSectionAsideAccount
   __MainSectionAsideAccordion
   __MainSectionCart
   __MainSectionSignin
   __MainSectionRegister
   __MainSectionRecover
   __MainSectionCheckout
   __MainSectionShoppings
_Footer
-Media queries
-z-indexList
-Developers
  _user-de-github1
  _user-de-github2
/* -------------------------------------------------------------------------- */
/* -Imports */
/* _FontAwesome */
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css");
/* -------------------------------------------------------------------------- */
/* -Variables */
:root {
  --tipografia: "Inter", sans-serif;
  /* --tipografia: "Roboto", sans-serif; */
  /* --tipografia: "Montserrat", sans-serif; */
  /* --tipografia: "Poppins", sans-serif; */
  --tipografia_color_general: black;
  --tipografia_color_secundario: rgb(139, 139, 139);
  --tipografia_color_titulo_hero: white;
  --tipografia_color_descripcion_hero: white;
  --header_color_background: rgb(255, 255, 255);
  --sub_header_color_background: rgb(233, 233, 233);
  --sub_header_color_tipografia: rgb(0, 0, 0);
  --carrusel_color_circulo_activo: black;
  --carrusel_color_circulo_background: gray;
  --carrusel_color_flecha: black;
  --carrusel_color_fondo: #fff;
  --filtros_color_badge: rgb(255, 255, 255);
  --filtros_color_badge_background: rgb(200, 200, 200);
  --iconos_color: gray;
  --iconos_color_header: gray;
  --iconos_color_activo: black;
  --boton_radio: 4px;
  --boton_primario_color: #7749f8;
  --boton_primario_color_texto: white;
  --boton_primario_color_borde: #7749f8;
  --boton_secundario_color: #494949;
  --boton_secundario_color_texto: white;
  --boton_secundario_color_borde: #494949;
  --corazon_favoritos_color: rgb(171, 189, 255);
  --corazon_favoritos_color_seleccionado: red;
  --tooltip_radio: 5px;
  --tooltip_color: black;
  --tooltip_color_texto: white;
  --codigo_color: black;
  --codigo_color_texto: white;
  --codigo_color_borde: white;
  --tag_1_color: none;
  --tag_1_color_texto: rgb(0, 0, 0);
  --tag_1_color_borde: rgb(0, 0, 0);
  --tag_2_color: pink;
  --tag_2_color_texto: black;
  --tag_2_color_borde: none;
  --tag_3_color: rgba(72, 255, 0, 0.353);
  --tag_3_color_texto: rgb(0, 0, 0);
  --tag_3_color_borde: none;
  --precio_color: black;
  --precio_color_oferta: red;
  --precio_color_cuotas: green;
  --producto_color_titulo: black;
  --nivel_menu_color_breadcrumbs: rgb(0, 0, 0);
  --footer_color_background: rgb(255, 255, 255);
  --footer_color_texto: rgb(0, 0, 0);
  --fondo_pagina_color: rgb(246, 246, 246);
  --card_producto_color: white;
  --card_producto_color_borde: white;
  --color_primario_general: #7749f8;
  --color_secundario_general: #6c757d;
  --gray-1: #f8f9fa;
  --gray-2: #dee2e6;
  --gray-3: #adb5bd;
  --white: #ffffff;
  --black: #000000;
  --etiqueta_descuento_producto: #dc3545;
  --etiqueta_descuento_cupon: #198754;
  --badge_carrito: #dc3545;
}
/* -------------------------------------------------------------------------- */
/* -Global */
*,
*:after,
*:before {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  max-width: 100vw;
  height: 100%;
  scroll-behavior: auto;
  overflow-x: hidden;
}

body {
  max-width: 100%;
  min-height: 100dvh;
  overscroll-behavior: none;
  font-family: var(--tipografia);
  color: var(--tipografia_color_general);
  background-color: var(--fondo_pagina_color) !important;
}
img {
  max-width: 100%;
}
ul {
  list-style: none;
  text-decoration: none;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
}
a {
  list-style: none;
  text-decoration: none;
  color: var(--tipografia_color_general) !important;
}
button:hover,
a:hover {
  opacity: 0.8 !important;
}
button {
  color: var(--tipografia_color_general);
}
.card {
  color: var(--tipografia_color_general);
  background-color: var(--card_producto_color) !important;
  border: 1px solid var(--card_producto_color_borde) !important;
}
.badge {
  color: var(--filtros_color_badge);
  background-color: var(--filtros_color_badge_background);
  font-weight: normal;
  border-radius: var(--boton_radio) !important;
}
.badge a {
  color: var(--filtros_color_badge) !important;
}
.form-text {
  color: var(--tipografia_color_general) !important;
}
.form-range {
  accent-color: var(--black);
}
.tooltip-inner {
  background-color: var(--tooltip_color);
  color: var(--tooltip_color_texto);
  border-radius: var(--tooltip_radio);
}
.tooltip {
  --bs-tooltip-bg: var(--tooltip_color);
}
.modal-content {
  background-color: var(--fondo_pagina_color) !important;
}
label {
  color: var(--tipografia_color_general) !important;
}
.form-check-input {
  color: var(--tipografia_color_general) !important;
}
.form-check-input:checked {
  background-color: var(--tipografia_color_general) !important;
  border-color: var(--tipografia_color_general) !important;
}
.nav-tabs .nav-link.active {
  background-color: var(--fondo_pagina_color);
  border-bottom: 1px solid var(--fondo_pagina_color);
}
.product--size-tag {
  border-radius: var(--boton_radio) !important;
}
.badge--cart {
  position: absolute;
  top: 12%;
  left: 100%;
  transform: translate(-50%, -50%);
  border-radius: 15%;
  font-size: 12px;
  background-color: var(--badge_carrito);
  color: var(--white);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 3px 4px;
  line-height: 1;
  text-align: center;
  z-index: 101;
  font-weight: bold;
}
#calcular_costo_input .input-group-text {
  border-radius: 0px !important;
  font-size: 14px;
  padding: 10px;
}
.calcular_costo_input_container {
  height: 10px !important;
}

.swal-progress-bar {
  width: 100%;
  height: 5px;
  background-color: #e0e0e0;
  border-radius: 3px;
  overflow: hidden;
}

.swal-progress-bar-fill {
  height: 100%;
  width: 100%;
  background-color: var(--boton_primario_color);
  animation: swalProgressAnim 3s linear forwards;
}
.visually-hidden {
  position: absolute;
  left: -9999px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.main__section--signin::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.2);
  z-index: 0;
}
.main__section--signin {
  position: relative;
  z-index: 1;
  height: 100% !important;
}
.main__section--recover::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.2);
  z-index: 0;
}
.main__section--recover {
  position: relative;
  z-index: 1;
  height: 100% !important;
}
.main__section--register::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.2);
  z-index: 0;
}
.main__section--register {
  position: relative;
  z-index: 1;
  height: 100% !important;
}

@keyframes swalProgressAnim {
  from {
    width: 0%;
  }
  to {
    width: 100%;
  }
}
@media (max-width: 576px) {
  .swal-mobile-centered {
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    margin: 0 !important;
  }

  .swal2-container {
    justify-content: center !important;
    align-items: center !important;
  }
}
.topbar {
  background: var(--boton_primario_color);
  padding: 8px;
  font-size: 12px;
  color: var(--white);
  z-index: 100;
}

/* -------------------------------------------------------------------------- */
/* _Preloader*/
.splash {
  position: fixed;
  z-index: 2000;
  background: var(--fondo_pagina_color);
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100dvh;
}
.splash-title {
  text-align: center;
}
.spinner {
  margin: 10px auto;
  margin-top: 0;
  width: 50px;
  height: 30px;
  text-align: center;
  font-size: 15px;
}
.spinner > div {
  background-color: var(--black);
  height: 100%;
  width: 4px;
  display: inline-block;
  -webkit-animation: sk-stretchdelay 1.2s infinite ease-in-out;
  animation: sk-stretchdelay 1.2s infinite ease-in-out;
}
.spinner .rect2 {
  -webkit-animation-delay: -1.1s;
  animation-delay: -1.1s;
}
.spinner .rect3 {
  -webkit-animation-delay: -1s;
  animation-delay: -1s;
}
.spinner .rect4 {
  -webkit-animation-delay: -0.9s;
  animation-delay: -0.9s;
}
.spinner .rect5 {
  -webkit-animation-delay: -0.8s;
  animation-delay: -0.8s;
}
@-webkit-keyframes sk-stretchdelay {
  0%,
  40%,
  100% {
    -webkit-transform: scaleY(0.4);
  }
  20% {
    -webkit-transform: scaleY(1);
  }
}
@keyframes sk-stretchdelay {
  0%,
  40%,
  100% {
    transform: scaleY(0.4);
    -webkit-transform: scaleY(0.4);
  }
  20% {
    transform: scaleY(1);
    -webkit-transform: scaleY(1);
  }
}
.preloader--img-logo {
  height: 60px;
}
/* _BoostrapCustom */
.btn {
  border-radius: var(--boton_radio);
  /* 
  -square = border-radius: 0px; 
  -rounded = border-radius: 4px; 
  -pill = border-radius: 20px;
  */
}
.card {
  border-radius: 0px !important;
}
.card img {
  width: 100%;
}
.dropdown-toggle {
  border: none !important;
}
.dropdown-toggle:focus,
.dropdown-toggle:active {
  outline: none !important;
  box-shadow: none !important;
  border: none !important;
}
.dropdown-item:focus,
.dropdown-item:active {
  background-color: var(--gray-1);
}
.dropdown-item:hover {
  background-color: var(--gray-2);
}
.dropdown-menu {
  border: 1px solid var(--gray-2) !important;
}
.form-control:focus {
  border-color: var(--gray-3);
  box-shadow: none;
}
.form-control {
  border-radius: var(--boton_radio);
}
.nav-link {
  color: var(--tipografia_color_general);
  border: none;
  box-shadow: none;
}
.nav-link:focus {
  box-shadow: none;
}
.nav-link:hover {
  color: var(--tipografia_color_general);
}
.nav-link.active {
  color: var(--tipografia_color_general) !important;
}
.tooltip-inner {
  font-size: 0.75rem;
}
button.close:focus,
button.close:active,
button.close:focus-visible,
button[data-bs-dismiss="modal"]:focus,
button[data-bs-dismiss="modal"]:active,
button[data-bs-dismiss="modal"]:focus-visible {
  outline: none;
  box-shadow: none;
}
.btn-close:focus,
.btn-close:active,
.btn-close:focus-visible {
  outline: none;
  box-shadow: none;
}
.form-switch .form-check-input {
  transition: background-position 0.15s ease-in-out;
  cursor: pointer;
}
.form-check-input:focus,
.form-check-input:active {
  outline: none !important;
  box-shadow: none;
  border-color: var(--gray-2);
}
.form-check-input {
  cursor: pointer;
  accent-color: transparent;
}
.form-check-input:checked {
  color: var(--tipografia_color_general) !important;
  border-color: var(--tipografia_color_general) !important;
}
.form-check-input::before {
  background-color: var(--white);
}
.form-check-input:focus {
  box-shadow: none;
  outline: none;
}
.sticky-top {
  z-index: 1;
}
/* Estilos personalizados para el slider */
.form-range:focus,
.form-range:active {
  outline: none !important;
  box-shadow: none !important;
  border: none !important;
}
.form-range::-webkit-slider-thumb {
  background: var(--tipografia_color_general); /* Color of the thumb */
  box-shadow: none !important;
  border: none !important;
}
.form-range {
  accent-color: var(--tipografia_color_general);
  box-shadow: none !important;
  border: none !important;
}
/* _Modal */
.modal-open {
  overflow: hidden;
  position: fixed;
  width: 100%;
}
.modal-content {
  border: none !important;
}
/* _ImageFit */
.img-fit-rounded {
  display: block;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 50%;
}
.img-fit-square {
  display: block;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}
.card--product-zoom-transactional-container .img-fit-square {
  border: 1px solid var(--gray-2);
}
.product--detail-stycky .img-fit-square {
  border: 0;
}
.card--product-img-container {
  border-bottom: 1px solid var(--gray-2);
}

.card--product-img-container-detalle {
  border: 1px solid var(--gray-2);
}
/* _ImageFitFancybox */
/* .fancybox-image {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 320px;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
} */
/* _HeroSlider */
.bg-img-1 {
  background-image: url("../../admin_template/assets/images/sliders/main__section--home-hero-bg1.webp");
  background-blend-mode: overlay;
}
.bg-img-2 {
  background-image: url("../../admin_template/assets/images/sliders/main__section--home-hero-bg2.webp"); /* Reemplaza con la ruta de tu imagen */
  background-blend-mode: overlay;
}
.bg-img-3 {
  background-image: url("../../admin_template/assets/images/sliders/main__section--home-hero-bg3.webp"); /* Reemplaza con la ruta de tu imagen */
  background-blend-mode: overlay;
}
.carousel-image {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 50vh;
  z-index: -1;
  overflow-y: visible;
  overflow-x: hidden;
}
.carousel-fade {
  z-index: -1;
  overflow-y: visible;
  overflow-x: hidden;
}
.carousel-fade .carousel-item {
  opacity: 0;
  transition: opacity 2s ease;
}
.carousel-fade .carousel-item.active {
  opacity: 1;
  transition-delay: 2s;
}
.carousel-container {
  position: relative;
  z-index: 1;
}
/* _ButtonsColors */
.btn--primary {
  background-color: var(--boton_primario_color) !important;
  color: var(--boton_primario_color_texto) !important;
  border: 1px solid var(--boton_primario_color_borde) !important;
}
.btn--primary:active,
.btn--primary:focus,
.btn--primary:hover {
  background-color: var(--boton_primario_color) !important;
  color: var(--boton_primario_color_texto) !important;
  border: 1px solid var(--boton_primario_color_borde) !important;
}
.btn--secondary {
  background-color: var(--boton_secundario_color) !important;
  color: var(--boton_secundario_color_texto) !important;
  border: 1px solid var(--boton_secundario_color_borde) !important;
}
.btn--secondary:active,
.btn--secondary:focus,
.btn--secondary:hover {
  background-color: var(--boton_secundario_color) !important;
  color: var(--boton_secundario_color_texto) !important;
  border: 1px solid var(--boton_secundario_color_borde) !important;
}
/* _FontsColors */
/* _FontsSizes */
.fs-7 {
  font-size: 14px;
}
.fs-8 {
  font-size: 12px;
}
.fs-9 {
  font-size: 10px;
}
.fs-10 {
  font-size: 8px;
}
/* _Padding */
/* __py */
.py--xxs {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
.py--xs {
  padding-top: 1em;
  padding-bottom: 1em;
}
.py--sm {
  padding-top: 2em;
  padding-bottom: 2em;
}
.py--md {
  padding-top: 3em;
  padding-bottom: 3em;
}
.py--lg {
  padding-top: 4em;
  padding-bottom: 4em;
}
.py--xl {
  padding-top: 5em;
  padding-bottom: 5em;
}
/* __pt */
.pt--xs {
  padding-top: 1em;
}
.pt--sm {
  padding-top: 2em;
}
.pt--md {
  padding-top: 3em;
}
.pt--lg {
  padding-top: 4em;
}
.pt--xl {
  padding-top: 5em;
}
/* __pb */
.pb--xs {
  padding-bottom: 1em;
}
.pb--sm {
  padding-bottom: 2em;
}
.pb--md {
  padding-bottom: 3em;
}
.pb--lg {
  padding-bottom: 4em;
}
.pb--xl {
  padding-bottom: 5em;
}
/* _Icons */
.icon {
  position: relative;
  font-family: "FontAwesome";
  font-weight: normal;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: var(--iconos_color);
  z-index: 10;
}
.icon-header {
  color: var(--iconos_color_header);
}
.icon-active {
  color: var(--iconos_color_activo);
}
.icon-boton-primario {
  color: var(--boton_primario_color_texto);
}
.icon-favoritos {
  color: var(--corazon_favoritos_color);
  cursor: pointer;
}
.icon-favoritos-seleccionado {
  color: var(--corazon_favoritos_color_seleccionado);
}
.icon--address-card:before {
  content: "\f2bb";
}
.icon--angle-left:before {
  content: "\f104";
}
.icon--angle-right:before {
  content: "\f105";
}
.icon--arrow-down-wide-sort::before {
  content: "\f160";
}
.icon--arrow-left:before {
  content: "\f060";
}
.icon--arrow-rotate:before {
  content: "\f021";
}
.icon--arrow-rotate-right:before {
  content: "\f01e";
  color: var(--gray-2);
}
.icon--ban:before {
  content: "\f05e";
  color: var(--gray-2);
}
.icon--bars:before {
  content: "\f0c9";
}
.icon--cart:before {
  content: "\f07a";
}
.icon--change:before {
  content: "\f0e2";
}
.icon--check:before {
  content: "\f00c";
}
.icon--chevron-down:before {
  content: "\f078";
}
.icon--chevron-right:before {
  content: "\f054";
}
.icon--chevron-up:before {
  content: "\f077";
}
.icon--circle-question:before {
  content: "\f059";
}
.icon--credit-card:before {
  content: "\f09d";
}
.icon--cross:before {
  content: "\f00d";
}
.icon--elipsis-vertical:before {
  content: "\f142";
}
.icon--filter:before {
  content: "\f0b0";
}
.icon--gear:before {
  content: "\f013";
}
.icon--heart:before {
  content: "\f004";
}
.icon--image:before {
  content: "\f03e";
}
.icon--info:before {
  content: "\f05a";
}
.icon--list:before {
  content: "\f03a";
}
.icon--list-ul:before {
  content: "\f0ca";
}
.icon--location-dot:before {
  content: "\f3c5";
}
.icon--menu:before {
  content: "\f0c9";
}
.icon--money-check-dollar:before {
  content: "\f53d";
}
.icon--rectangle-list:before {
  content: "\f022";
}
.icon--plus:before {
  content: "\2b";
}
.icon--pen-to-square:before {
  content: "\f044";
}
.icon--search:before {
  content: "\f002";
}
.icon--shopping-bag:before {
  content: "\f290";
}
.icon--square-check:before {
  content: "\f14a";
}
.icon--store:before {
  content: "\f54e";
}
.icon--table-list::before {
  content: "\f00b";
}
.icon--table-sells::before {
  content: "\f00a";
}
.icon--table-sells-large::before {
  content: "\f009";
}
.icon--tag:before {
  content: "\f02b";
}
.icon--trash:before {
  content: "\f1f8";
}
.icon--truck-fast:before {
  content: "\f48b";
}
.icon--user:before {
  content: "\f007";
}
.icon--user-gear:before {
  content: "\f4fe";
}
.icon--zoom:before {
  content: "\f002";
}
/* _OwlCarousel */
.owl-carousel .owl-stage {
  display: flex;
  background: var(--carrusel_color_fondo);
}
.owl-carousel .owl-item {
  display: flex;
  align-items: stretch;
  justify-content: center;
  margin: 6px;
}
.owl-theme .owl-dots .owl-dot.active span {
  background: var(--carrusel_color_circulo_activo);
}
.owl-theme .owl-dots .owl-dot span {
  background: var(--carrusel_color_circulo_background);
  width: 6px;
  height: 6px;
  display: inline-block;
  border-radius: 50%;
  margin: 0 5px;
}
.owl-theme .owl-dots .owl-dot.active:hover span {
  background: var(--carrusel_color_circulo_activo);
  opacity: 0.7;
}
.owl-theme .owl-dots .owl-dot:hover span {
  background: var(--carrusel_color_circulo_background);
  opacity: 0.7;
}
.owl-prev,
.owl-next {
  position: absolute;
  top: 30%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0;
}
.owl-prev {
  left: 0;
}
.owl-next {
  right: 0;
}
.owl-prev i {
  font-size: 20px;
}
.owl-next i {
  font-size: 20px;
}
.owl-theme .owl-nav {
  margin: 0;
}
.owl-theme .owl-nav [class*="owl-"] {
  margin-left: 0px !important;
  margin-right: 0px !important;
  background: none;
}
.owl-theme .owl-nav [class*="owl-"]:hover {
  background: none;
}
.owl-product-card-img .owl-dots {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin-bottom: 5px;
}
.owl-marks .owl-stage {
  display: flex;
  align-items: center;
}
.owl-arrow-icon--angle-left:before {
  content: "\f104";
  color: var(--carrusel_color_flecha);
  font-size: 20px;
}
.owl-arrow-icon--angle-right:before {
  content: "\f105";
  color: var(--carrusel_color_flecha);
  font-size: 20px;
}
.owl-promociones-bancarias img {
  width: auto !important;
  max-width: 50%;
}
/* _ProductDetail */
.product--detail-stycky-container {
  position: relative;
}
.product--detail-stycky {
  position: sticky;
  top: 92px;
}
.product--detail-total-sticky {
  position: sticky;
  top: 92px;
}
/* _ProductTable */
.product--table-code {
  color: var(--gray-3) !important;
  font-size: 12px !important;
}
.product--table-sticky {
  position: sticky;
  top: 102px;
  z-index: 30;
}
.product--table-sticky .row {
  background-color: var(--fondo_pagina_color);
}
.product--table .inputSpinner {
  height: 32px !important;
}
.product--table .btn-increment {
  height: 32px;
  padding: 0;
  font-size: 12px;
}
.product--table .btn-decrement {
  height: 32px;
  padding: 0;
  font-size: 12px;
}
.product--table .nice-select {
  line-height: 30px;
}
.product--table-description {
  font-size: 18px;
}
.product--table-price {
  font-size: 18px;
  font-weight: bold;
}
.product--table-btn {
  font-size: 0.875rem !important;
}
/* _ProductCart */
.product--cart .inputSpinner {
  height: 25px !important;
}
.product--cart .btn-decrement {
  height: 25px !important;
  padding: 0;
}
.product--cart .btn-increment {
  height: 25px !important;
  padding: 0;
}
.etiqueta_descuento_producto {
  background-color: var(--etiqueta_descuento_producto);
}
.etiqueta_descuento_cupon {
  background-color: var(--etiqueta_descuento_cupon);
}
/* _CardProduct */
.card--product-img-container {
  position: relative;
}
.card--product {
  position: relative;
}
.card--product:hover {
  box-shadow: 1px 0px 10px 1px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 1px 0px 10px 1px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 1px 0px 10px 1px rgba(0, 0, 0, 0.2);
}
.card--product-fav {
  position: absolute;
  right: 1rem;
  top: 1rem;
  z-index: 10;
}
.card--product-fav-transactional {
  position: absolute;
  right: 1rem;
  top: 1rem;
  z-index: 10;
}
.card--product-fav-compact {
  position: absolute;
  right: 0.5rem;
  top: 0.5rem;
  z-index: 10;
}
.card--product-tags {
  position: relative;
  left: 0rem;
  top: 0rem;
  z-index: 10;
}
.card--product-code {
  position: absolute;
  left: 0;
  bottom: 25px;
  z-index: 10;
}
.card--product-code-bottom {
  background-color: var(--codigo_color);
  border: 1px solid var(--codigo_color_borde);
  color: var(--codigo_color_texto);
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 10;
  font-size: 10px;
}
.card--product-tag-1 {
  background-color: var(--tag_1_color);
  border: 1px solid var(--tag_1_color_borde);
  color: var(--tag_1_color_texto);
  border-radius: 30px;
}
.card--product-tag-2 {
  background-color: var(--tag_2_color);
  border: 1px solid var(--tag_2_color_borde);
  color: var(--tag_2_color_texto);
  border-radius: 30px;
}
.card--product-tag-3 {
  background-color: var(--tag_3_color);
  border: 1px solid var(--tag_3_color_borde);
  color: var(--tag_3_color_texto);
  border-radius: 30px;
}
.card--product-precio {
  color: var(--precio_color);
  font-size: 18px;
}
.card--product-precio-oferta {
  color: var(--precio_color_oferta);
  font-size: 15px;
}
.card--product-precio-cuotas {
  color: var(--precio_color_cuotas);
  font-size: 12px;
}
.card--product-titulo {
  color: var(--producto_color_titulo);
  font-size: 14px;
}
.card--product-zoom {
  position: absolute;
  right: 1rem;
  bottom: 20px;
  z-index: 10;
}
.card--product-zoom-transactional-container {
  position: relative;
}
.card--product-zoom-transactional {
  position: absolute;
  right: 5px;
  bottom: 5px;
  z-index: 10;
}
.card--product-through-price {
  line-height: 1;
}
.card--product-cuotes .card--product-precio-cuotas {
  line-height: 1;
}
.card--product-add-btn:hover {
  color: var(--black);
}
/* _InputSpinner */
.inputSpinner {
  border: 1px solid var(--gray-2) !important;
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
  padding: 0;
  color: var(--tipografia_color_general);
}
.nicenumber {
  border-top: 1px solid var(--gray-2) !important;
  border-bottom: 1px solid var(--gray-2) !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
  padding: 0;
  color: var(--tipografia_color_general);
}

.btn-increment {
  border: 1px solid var(--gray-2) !important;
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
  border-top-right-radius: var(--boton_radio) !important;
  border-bottom-right-radius: var(--boton_radio) !important;
  min-width: auto !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
  color: var(--tipografia_color_general);
}
.btn-decrement {
  border: 1px solid var(--gray-2) !important;
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
  border-top-left-radius: var(--boton_radio) !important;
  border-bottom-left-radius: var(--boton_radio) !important;
  min-width: auto !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
  color: var(--tipografia_color_general);
}
.btn-increment:hover,
.btn-increment:focus,
.btn-increment:active {
  color: var(--tipografia_color_general);
  box-shadow: none !important;
  outline: none !important;
  opacity: 0.8;
}
.btn-decrement:hover,
.btn-decrement:focus,
.btn-decrement:active {
  color: var(--tipografia_color_general);
  box-shadow: none !important;
  outline: none !important;
  opacity: 0.8;
}
/* _Select */
.nice-select {
  -webkit-tap-highlight-color: transparent;
  border-radius: var(--boton_radio) !important;
  box-sizing: border-box;
  clear: both;
  cursor: pointer;
  display: block;
  /*float: left;*/
  font-family: inherit;
  font-size: 12px;
  font-weight: normal;
  height: 42px;
  line-height: 40px;
  outline: none;
  padding-left: 14px;
  padding-right: 30px;
  position: relative;
  text-align: left !important;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  white-space: nowrap;
  width: auto;
  background-color: var(--white) !important;
}
.nice-select:after {
  content: "\f078";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 12px;
  color: var(--gray-3);
  display: block;
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
}
.nice-select.open:after {
  content: "\f077";
  font-size: 12px;
}
.nice-select.open .list {
  opacity: 1;
  pointer-events: auto;
  -webkit-transform: scale(1) translateY(0);
  -ms-transform: scale(1) translateY(0);
  transform: scale(1) translateY(0);
  width: 100%;
}
.nice-select.disabled {
  pointer-events: none;
}
.nice-select.wide {
  width: 100%;
}
.nice-select.wide .list {
  left: 0 !important;
  right: 0 !important;
}
.nice-select.right {
  float: right;
}
.nice-select.right .list {
  left: auto;
  right: 0;
}
.nice-select.small {
  font-size: 12px;
  height: 36px;
  line-height: 34px;
}
.nice-select.small:after {
  font-size: 12px;
}
.nice-select.small .option {
  line-height: 34px;
  min-height: 34px;
}
.nice-select .list {
  background-color: var(--white) !important;
  border-radius: 5px;
  box-shadow: 0 0 0 1px rgba(68, 68, 68, 0.11);
  box-sizing: border-box;
  margin-top: 4px;
  opacity: 0;
  overflow: hidden;
  padding: 0;
  pointer-events: none;
  position: absolute;
  top: 100%;
  left: 0;
  -webkit-transform-origin: 50% 0;
  -ms-transform-origin: 50% 0;
  transform-origin: 50% 0;
  -webkit-transform: scale(0.75) translateY(-21px);
  -ms-transform: scale(0.75) translateY(-21px);
  transform: scale(0.75) translateY(-21px);
  /* Eliminado: -webkit-transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out; */
  /* Eliminado: transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out; */
  z-index: 9;
}
.nice-select .list:hover .option:not(:hover) {
  background-color: transparent !important;
}
.nice-select .option {
  cursor: pointer;
  font-weight: 400;
  line-height: 40px;
  list-style: none;
  min-height: 40px;
  outline: none;
  padding-left: 18px;
  padding-right: 29px;
  text-align: left;
  /* Eliminado: -webkit-transition: all 0.2s; */
  /* Eliminado: transition: all 0.2s; */
}
.nice-select .option:hover,
.nice-select .option.focus,
.nice-select .option.selected.focus {
  background-color: var(--gray-2);
}
.nice-select .option.selected {
  font-weight: bold;
}
.nice-select .option.disabled {
  background-color: transparent;
  color: var(--gray-3);
  cursor: default;
}
.no-csspointerevents .nice-select .list {
  display: none;
}
.no-csspointerevents .nice-select.open .list {
  display: block;
}
/* _ProductInputColor */
.product--input-color {
  display: none;
}
.product--input-color + label {
  border: 1px solid #dfdfdf;
  border-radius: 50%;
}
/* .product--input-color + label:hover {
  border: 2px solid var(--gray-600);
} */
.product--input-color:checked + label {
  border: 1px solid var(--tipografia_color_general);
}
.product--input-color-label {
  display: inline-block;
  width: 28px;
  height: 28px;
  margin-right: 10px;
  cursor: pointer;
  transition: all 0.1s ease-in-out;
  padding: 2px;
}
.product--input-color-label:hover span {
  transform: scale(1);
}
.product--input-color-label span {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
}
.product--input-color-label span.red {
  background: #db2828;
}
.product--input-color-label span.orange {
  background: #f2711c;
}
.product--input-color-label span.yellow {
  background: #fbbd08;
}
.product--input-color-label span.olive {
  background: #b5cc18;
}
.product--input-color-label span.green {
  background: #21ba45;
}
.product--input-color-label span.teal {
  background: #00b5ad;
}
.product--input-color-label span.blue {
  background: #2185d0;
}
.product--input-color-label span.violet {
  background: #6435c9;
}
.product--input-color-label span.purple {
  background: #a333c8;
}
.product--input-color:checked + label span {
  transform: scale(1);
}
/* _ProductInputSize */
.product--input-size input[type="radio"] {
  display: none;
}
.product--input-size input[type="radio"]:checked + label {
  background-color: var(--black);
  transform: scale(1);
  color: var(--white) !important;
}
.product--input-size label {
  width: auto;
  height: auto;
  margin: 0;
  border-radius: 4px;
  background-color: var(--gray-2);
  cursor: pointer;
}
.product--input-size label:hover {
  background-color: var(--gray-3);
  color: var(--fondo_pagina_color);
}
/* _ProductSelectPresentation */
.product--select {
  width: auto;
  height: auto;
  border: 1px solid var(--gray-2);
  border-radius: 4px;
  background: var(--fondo_pagina_color);
  cursor: pointer;
  outline: none;
  box-shadow: none;
  display: block !important;
}
.product--select-list {
  border: none !important;
}
.product--select:focus {
  border: 1px solid var(--gray-2);
  box-shadow: none !important;
}
/* ///////////////////// */
.product--select-1 {
  font-weight: bold !important;
}
/* Scrollbar */
/* WebKit-based browsers (Chrome, Safari, Edge) */
::-webkit-scrollbar {
  width: 12px;
  height: 12px;
}
::-webkit-scrollbar-track {
  background-color: var(--gray-2);
  border-radius: 10px;
}
::-webkit-scrollbar-thumb {
  background-color: var(--gray-3);
  border-radius: 10px;
}
::-webkit-scrollbar-thumb:hover {
  background-color: var(--gray-600);
}
/* Firefox */
html {
  scrollbar-width: thin;
  scrollbar-color: var(--gray-3) var(--gray-2);
}
/* Other browsers */
* {
  scrollbar-width: thin; /* Firefox */
  scrollbar-color: var(--gray-3) var(--gray-2); /* Firefox */
}
/* _Contrasenia */
.cambiartipocontrasenia {
  width: 50px;
}
/* _Swal */
.swal2-confirm {
  background-color: var(--primary);
}
/* _Autocomplete */
.autocomplete-suggestions {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: none !important;
  background: var(--white);
  cursor: default;
  overflow: auto;
  max-height: 94vh !important;
  padding: 15px;
  padding-bottom: 6vh;
  line-height: 3;
  margin: auto;
  pointer-events: none;
}
.autocomplete-suggestion {
  padding: 2px 5px;
  white-space: nowrap;
  overflow: hidden;
  transition: none !important;
  cursor: pointer;
  pointer-events: auto;
}
.autocomplete-no-suggestion {
  padding: 2px 5px;
}
.autocomplete-selected {
  background: var(--gray-1);
  transition: none !important;
  pointer-events: auto;
}
.autocomplete-suggestions strong {
  font-weight: bold;
  color: #000;
}
.autocomplete-group {
  padding: 2px 5px;
  font-weight: bold;
  font-size: 16px;
  color: #000;
  display: block;
  border-bottom: 1px solid #000;
}
/* -------------------------------------------------------------------------- */
/* -Especifics */
/* _Header */
.header {
  position: sticky;
  top: 0;
  z-index: 80;
  width: 100%;
  background-color: var(--header_color_background);
  height: 70px;
  border-bottom: 1px solid var(--sub_header_color_background);
}
/* _HeaderCart */
.header--cart {
  position: fixed;
  right: 0;
  background: var(--fondo_pagina_color);
  top: 0;
  width: 400px;
  height: 100dvh;
  z-index: 1000;
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
  -webkit-transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
}
.header--cart-header {
  line-height: 1.8;
  position: relative;
  border-bottom: 1px solid var(--gray-2);
  padding: 1.3em 0em 1.3em 0em;
}
.header--cart-wrap {
  bottom: 0;
  overflow-y: auto;
  height: 100%;
}
.header--cart-wrap:focus {
  outline: none;
}
.header--cart-btn {
  border-top: 1px solid var(--gray-2);
  bottom: 0;
  z-index: 100;
  background-color: var(--fondo_pagina_color);
}
.header--cart-overlay {
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  height: 100dvh;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
  z-index: 900;
}
.header--cart-open {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.header--cart-open ~ .header--cart-overlay {
  opacity: 0.7;
  visibility: visible;
  background-color: var(--black);
}
.header--cart-no-scroll {
  overflow: hidden;
}
.header--cart-container:focus {
  outline: none;
}
.header--cart-action-button {
  cursor: pointer;
  border: none;
  background: none;
  font-size: 1.5em;
  display: block;
  position: relative;
}
.header--cart-action--close {
  font-size: 1.1em;
  top: 1.25em;
  right: 1em;
  position: absolute;
}
.header--cart-action-button:focus,
.header--cart-action--close:focus {
  outline: none;
}
/* _HeaderSearch */
.header--search {
  position: fixed;
  right: 0;
  background: var(--fondo_pagina_color);
  top: 0;
  width: 400px;
  height: 100dvh;
  z-index: 120;
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
  -webkit-transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
}
.header--search-header {
  line-height: 1.8;
  position: relative;
  padding: 1em 0em 1em 0em;
}
.header--search-wrap {
  bottom: 0;
  overflow-y: auto;
  height: 100%;
}
.header--search-wrap:focus {
  outline: none;
}
.header--search-btn {
  border-top: 1px solid var(--gray-2);
  bottom: 0;
  z-index: 100;
  background-color: var(--fondo_pagina_color);
}
.header--search-overlay {
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  height: 100dvh;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
  z-index: 90;
}
.header--search-open {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.header--search-open ~ .header--search-overlay {
  opacity: 0.7;
  visibility: visible;
  background-color: var(--black);
}
.header--search-no-scroll {
  overflow: hidden;
}
.header--search-container:focus {
  outline: none;
}
.header--search-action-button {
  cursor: pointer;
  border: none;
  background: none;
  font-size: 1.5em;
  display: block;
  position: relative;
}
.header--search-action-button i {
  margin-top: 2px;
}
.header--search-action--close {
  font-size: 1.1em;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 100;
}
.header--search-action-button:focus,
.header--search-action--close:focus {
  outline: none;
}
/* __HeaderNavFooter */
#header-nav-footer {
  transition: all 0.2s ease;
}
#header-nav-footer.hide {
  bottom: -450px;
}
.header__nav--search {
  border: 1px solid var(--gray-2) !important;
  font-family: var(--tipografia), "FontAwesome";
  border-radius: var(--boton_radio) !important;
}
.header__nav--search::placeholder {
  padding-left: 1px;
}
.header__nav--search:active,
.header__nav--search:focus,
.header__nav--search:hover {
  border: 1px solid var(--gray-3) !important;
}
.header__nav--btn-search {
  position: absolute;
  z-index: 100;
  border-left: 1px solid var(--gray-2) !important;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  background-color: var(--white);
}
.header__nav--search-side {
  border: 1px solid var(--gray-2) !important;
  font-family: var(--tipografia), "FontAwesome";
}
.header__nav--search-side:active,
.header__nav--search-side:focus,
.header__nav--search-side:hover {
  border: 1px solid var(--gray-3) !important;
}
.header__nav--btn-search-side {
  cursor: auto;
  position: absolute;
  z-index: 100;
  border-left: 1px solid var(--gray-2) !important;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  background-color: var(--white);
}
.header_nav--search-side-no-scroll {
  overflow: hidden;
}
/* Estilos del overlay */
.header_nav--search-side-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--black);
  z-index: 70;
  display: none; /* Oculto por defecto */
  opacity: 0.7;
}
.header__nav--img-logo {
  height: 60px;
}
.header--container {
  border-bottom: 1px solid var(--gray-2);
}

/* __HeaderCart */
.header__nav--cart-cantidad {
  position: absolute;
  top: 10px;
  right: -1px;
  width: 20px; /* Ajusta el ancho y alto para que sea un círculo */
  height: 20px;
  border-radius: 50%; /* Aplica el radio de borde para hacerlo circular */
  color: var(--white) !important;
  background-color: var(--corazon_favoritos_color_seleccionado) !important;
  text-align: center; /* Alinea el contenido en el centro del círculo */
  line-height: 20px; /* Establece la altura de línea para centrar verticalmente */
  z-index: 1000;
}
/* _Nav */
.nav--sub {
  background-color: var(--sub_header_color_background);
  color: var(--sub_header_color_tipografia) !important;
  position: sticky;
  top: 80px;
  z-index: 50;
}
.nav--sub a,
.nav--sub button i {
  color: var(--sub_header_color_tipografia) !important;
}
.nav--sub span {
  color: var(--sub_header_color_tipografia) !important;
}
.nav--sub button {
  color: var(--sub_header_color_tipografia) !important;
}
/* __NavMenu; */
.nav--menu-img {
  width: 1.5rem;
}
.nav--menu {
  position: fixed;
  left: 0;
  background: var(--fondo_pagina_color);
  top: 0;
  width: 400px;
  height: 100dvh;
  z-index: 100;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  -webkit-transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
}
.nav--menu-content {
  position: relative;
}
.nav--menu-products {
  margin: 0;
}
.nav--menu-product {
  display: inline-block;
  width: 15em;
  height: 17em;
  border-radius: 5px;
  background: var(--fondo_pagina_color);
  border: 1px solid var(--gray-3);
  display: flex;
  justify-content: center;
  align-items: center;
}
.nav--menu-product .icon {
  font-size: 5em;
  color: var(--gray-3);
  text-align: center;
}
.nav--menu-no-scroll {
  overflow: hidden;
}
.nav--menu-open {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.nav--menu-open ~ .nav--menu-overlay {
  opacity: 0.7;
  visibility: visible;
  background-color: var(--black);
}
.nav--menu-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100dvh;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
  z-index: 90;
}
.nav--menu-wrap {
  position: absolute;
  overflow: hidden;
  width: 100%;
  border-top: 1px solid var(--gray-2);
  top: 6.8em;
  bottom: 0;
}
.nav--menu-level {
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
  overflow-y: auto;
  overflow-x: hidden;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  padding-top: 10px;
  list-style-type: none;
  padding-bottom: 50px;
}
.nav--menu-level:focus {
  outline: none;
}
.nav--menu-level-current {
  visibility: visible;
}
.nav--menu-item {
  display: block;
  width: 100%;
}
.nav--menu-link {
  position: relative;
  display: block;
  padding: 0.2em 2.5em 0.2em 1em;
  color: var(--tipografia_color_general);
  -webkit-transition: color 0.1s;
  transition: color 0.1s;
  background-color: var(--fondo_pagina_color);
}
.nav--menu-link[data-submenu]::after {
  content: "\f0da";
  font-family: "FontAwesome";
  position: absolute;
  right: 0;
  padding: 0.15em 1.25em;
  color: var(--gray-3);
}
.nav--menu-link:hover,
.nav--menu-link:focus,
.nav--menu-link[data-submenu]:hover::after,
.nav--menu-link[data-submenu]:focus::after {
  opacity: 0.8;
}
[class^="animate-"],
[class*=" animate-"] {
  visibility: visible;
}
.animate-outToRight .nav--menu-item {
  -webkit-animation: outToRight 0.6s both cubic-bezier(0.7, 0, 0.3, 1);
  animation: outToRight 0.6s both cubic-bezier(0.7, 0, 0.3, 1);
}
@-webkit-keyframes outToRight {
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes outToRight {
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
.animate-outToLeft .nav--menu-item {
  -webkit-animation: outToLeft 0.6s both cubic-bezier(0.7, 0, 0.3, 1);
  animation: outToLeft 0.6s both cubic-bezier(0.7, 0, 0.3, 1);
}
@-webkit-keyframes outToLeft {
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes outToLeft {
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
.animate-inFromLeft .nav--menu-item {
  -webkit-animation: inFromLeft 0.6s both cubic-bezier(0.7, 0, 0.3, 1);
  animation: inFromLeft 0.6s both cubic-bezier(0.7, 0, 0.3, 1);
}
@-webkit-keyframes inFromLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes inFromLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate-inFromRight .nav--menu-item {
  -webkit-animation: inFromRight 0.6s both cubic-bezier(0.7, 0, 0.3, 1);
  animation: inFromRight 0.6s both cubic-bezier(0.7, 0, 0.3, 1);
}
@-webkit-keyframes inFromRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes inFromRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate-inFromRight,
.animate-outToRight {
  z-index: -10;
}
.nav--menu-breadcrumb-title {
  position: absolute;
  top: 75px;
}
.nav--menu-breadcrumb-title a:hover {
  opacity: 0.8;
}
.nav--menu-breadcrumbs {
  font-size: 0.65em;
  line-height: 1.8;
  position: relative;
  padding: 2.3em 6em 1.9em 1.7em;
  margin-top: 0;
}
.nav--menu-breadcrumbs a {
  font-weight: bold;
  display: inline-block;
  cursor: pointer;
  vertical-align: middle;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--nivel_menu_color_breadcrumbs) !important;
}
.nav--menu-breadcrumbs a:last-child {
  pointer-events: none;
}
.nav--menu-breadcrumbs a:hover,
.nav--menu-breadcrumbs a:focus {
  opacity: 0.8;
}
.nav--menu-breadcrumbs a:not(:last-child)::after {
  content: "\f105";
  font-family: "FontAwesome";
  display: inline-block;
  padding: 0 0.5em;
  color: var(--tipografia_color_general);
}
.nav--menu-breadcrumbs a:not(:last-child):hover::after,
.nav--menu-breadcrumbs a:not(:last-child):focus::after {
  color: var(--tipografia_color_general);
}
.nav--menu-back {
  font-size: 1em;
  position: absolute;
  right: 3em;
  padding: 1.4em 0 0 0;
  cursor: pointer;
  color: var(--gray-3);
  border: none;
  background: none;
  z-index: 110;
}
.nav--menu-back-hidden {
  pointer-events: none;
  opacity: 0;
}
.nav--menu-back:hover,
.nav--menu-back:focus {
  color: var(--tipografia_color_general);
  outline: none;
}
.nav--menu-action-button {
  cursor: pointer;
  border: none;
  background: none;
  font-size: 1.5em;
  display: block;
  position: relative;
}
.nav--menu-action-close {
  font-size: 1.1em;
  top: 1.25em;
  right: 1em;
  position: absolute;
}
.nav--menu-action-button:focus,
.action--close:focus {
  outline: none;
}
.nav--menu-features {
  position: absolute;
  width: 85%;
  padding-top: 50px;
  padding-bottom: 10px;
  padding-left: 20px;
}
/* _Main */
/* __MainSectionHomeHero */
.main__section--home-hero {
  position: relative;
}
.main__section--home-hero .main__section--home-hero-titulo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1000;
}
.main__section--home-hero-titulo h1 {
  color: var(--tipografia_color_titulo_hero);
  text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
}
.main__section--home-hero-titulo p {
  color: var(--tipografia_color_descripcion_hero);
  text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
}
/* __MainSections */

.main--sections {
  position: relative;
}

/* __MainFilterSticky */
#main-filter-sticky {
  transition: all 0s ease;
}
#main-filter-sticky.hide {
  top: 0px;
}
.main--filter-sticky {
  position: sticky;
  top: 70px;
  z-index: 50;
  background-color: var(--fondo_pagina_color);
  border-bottom: 1px solid var(--gray-3);
}
/* __MainAccountSticky */
#main-account-sticky {
  transition: all 0s ease;
}
#main-account-sticky.hide {
  top: 0px;
}
.main--account-sticky {
  position: sticky;
  top: 69px;
  z-index: 50;
}
/* __MainSectionBanner */
.main__section--banner {
  background-image: url("../../admin_template/assets/images/banners/main__section--banner.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 35vh;
  position: relative;
}
/* __MainSectionBanner X 3 */
.main__section--bannerx3-icono {
  width: 80px;
}
/* __MainSectionAsideFilter */
.main__section__aside--filter {
  position: fixed;
  left: 0;
  top: 0;
  height: 100dvh;
  z-index: 100;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  -webkit-transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  border-right: 1px solid var(--gray-2);
  background-color: var(--fondo_pagina_color);
}
.main__section__aside--filter-header {
  line-height: 1.8;
  position: relative;
  border-bottom: 1px solid var(--gray-2);
  padding: 1.3em 0em 1.3em 0em;
}
.main__section__aside--filter-open {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.main__section__aside--filter-wrap {
  position: absolute;
  top: 72px;
  bottom: 0;
  overflow: hidden;
  width: 100%;
}
.main__section__aside--filter-container {
  overflow-y: auto;
  overflow-x: hidden;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  padding-bottom: 50px;
}
.main__section__aside--filter-action-button {
  cursor: pointer;
  border: none;
  background: none;
  display: block;
  position: relative;
}
.main__section__aside--filter-action-close {
  font-size: 1.1em;
  top: 1.25em;
  right: 1em;
  position: absolute;
}
.main__section__aside--filter-action-button:focus,
.main__section__aside--filter-action-close:focus {
  outline: none;
}
.main__section__aside--filter-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100dvh;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
  z-index: 90;
}
.main__section__aside--filter-open ~ .main__section__aside--filter-overlay {
  opacity: 0.7;
  visibility: visible;
  background-color: var(--black);
}
.main__section__aside--filter-no-scroll {
  overflow: hidden;
}
/* __MainSectionAsideAccount */
.main__section__aside--account {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 100;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  -webkit-transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  background-color: var(--fondo_pagina_color);
}
.main__section__aside--account-header {
  line-height: 1.8;
  position: relative;
  border-bottom: 1px solid var(--gray-2);
  padding: 1.3em 0em 1.3em 0em;
}
.main__section__aside--account-open {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.main__section__aside--account-wrap {
  position: absolute;
  top: 72px;
  bottom: 0;
  overflow: hidden;
  width: 100%;
}
.main__section__aside--account-container {
  overflow-y: auto;
  overflow-x: hidden;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  padding-bottom: 50px;
}
.main__section__aside--account-action-button {
  cursor: pointer;
  border: none;
  background: none;
  display: block;
  position: relative;
}
.main__section__aside--account-action-close {
  font-size: 1.1em;
  top: 1.25em;
  right: 1em;
  position: absolute;
}
.main__section__aside--account-action-button:focus,
.main__section__aside--account-action-close:focus {
  outline: none;
}
.main__section__aside--account-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100dvh;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
  z-index: 90;
}
.main__section__aside--account-open ~ .main__section__aside--account-overlay {
  opacity: 0.7;
  visibility: visible;
  background-color: var(--black);
}
.main__section__aside--account-no-scroll {
  overflow: hidden;
}
.main__section__aside--account-footer {
  border-top: none;
}
/* __MainSectionAsideFilterAccordion */
.main__section__aside--filter-accordion .main__section__aside--filter-accordion-item {
  border: none;
  border-bottom: 1px solid var(--gray-3);
  border-radius: 0;
}
.main__section__aside--filter-accordion .main__section__aside--filter-accordion-item button[aria-expanded="true"] {
  border-bottom: none;
}
.main__section__aside--filter-accordion button {
  position: relative;
  display: block;
  text-align: left;
  width: 100%;
  padding: 0.5em 0;
  color: var(--gray-3);
  font-size: 1.15rem;
  font-weight: 400;
  border: none;
  background: none;
  outline: none;
}
.main__section__aside--filter-accordion button .icon {
  display: inline-block;
  position: absolute;
  top: 17px;
  right: 0;
  font-size: 14px;
}
.main__section__aside--filter-accordion .main__section__aside--filter-accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.1s ease-in-out;
}
.main__section__aside--filter-accordion button[aria-expanded="true"] + .main__section__aside--filter-accordion-content {
  max-height: 100%;
}
.main__section__aside--filter-accordion-content .form-check label {
  cursor: pointer;
}
.main__section__aside--filter-accordion-content .form-check {
  display: block;
  padding-left: 0;
}
.main__section__aside--filter-accordion-content .form-check .form-check-input:checked + label {
  font-weight: bold;
}
/* __MainSectionAsideFaqAccordion */
.main__section__aside--faq-accordion .main__section__aside--faq-accordion-item {
  border: none;
  border-bottom: 1px solid var(--gray-3);
  border-radius: 0;
}
.main__section__aside--faq-accordion .main__section__aside--faq-accordion-item button[aria-expanded="true"] {
  border-bottom: none;
}
.main__section__aside--faq-accordion button {
  position: relative;
  display: block;
  text-align: left;
  width: 100%;
  padding: 0.5em 0;
  color: var(--gray-3);
  font-size: 1.15rem;
  font-weight: 400;
  border: none;
  background: none;
  outline: none;
}
.main__section__aside--faq-accordion button .icon {
  display: inline-block;
  position: absolute;
  top: 17px;
  right: 0;
  font-size: 14px;
}
.main__section__aside--faq-accordion .main__section__aside--faq-accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.1s ease-in-out;
}
.main__section__aside--faq-accordion button[aria-expanded="true"] + .main__section__aside--faq-accordion-content {
  max-height: 100%;
}
/* __MainSectionSignin */
.main__section--signin {
  min-height: 90vh;
}

/* __MainSectionRegister */
.main__section--register {
  min-height: 90vh;
}
/* __MainSectionRecover */
.main__section--recover {
  min-height: 90vh;
}
/* __MainSectionCheckout */
.paso {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: inline-block;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  background-color: var(--gray-1);
}
.nav--sub .paso {
  color: var(--black) !important;
}
.paso-listo .paso {
  background: var(--gray-1);
}
.paso-actual .paso {
  background: var(--gray-3);
}
.paso-actual {
  font-weight: bold;
}
.paso_back {
  z-index: 999;
}
/* __MainSectionShoppings */
.main__section--shoppings-input {
  border-top-right-radius: 0px !important;
  border-bottom-right-radius: 0px !important;
}
.main__section--shoppings-btn-search {
  position: relative;
  z-index: 100;
  border-left: 1px solid var(--gray-2) !important;
  background-color: var(--white);
}
/* _PasoSelectPresentation */
.nice-select .paso--select {
  font-size: 30px !important;
}
.paso--select {
  width: auto;
  height: auto;
  border: 1px solid var(--gray-2);
  border-radius: 6px;
  background: var(--fondo_pagina_color);
  cursor: pointer;
  color: var(--tipografia_color_general);
  outline: none;
  box-shadow: none;
  font-size: 1rem;
}
.paso--select-list {
  border: none !important;
}
.paso--select:focus {
  border: 1px solid var(--gray-2);
  box-shadow: none !important;
}
.paso--select-1 {
  font-weight: bold !important;
}
/* _Footer */
.footer {
  background-color: var(--footer_color_background);
  color: var(--footer_color_texto);
}
.footer a {
  color: var(--footer_color_texto) !important;
}
.footer--sub {
  position: relative;
  background-color: var(--fondo_pagina_color);
  color: var(--tipografia_color_general);
  z-index: 50;
}
.footer--sub a {
  color: var(--tipografia_color_general) !important;
}
.footer__img--logo {
  height: 40px;
}

.owl-product-card-img i {
  position: absolute;
  bottom: 30px;
  right: 30px;
}

#filtro-orden .form-check label {
  white-space: nowrap;
  padding-right: 20px;
  cursor: pointer;
}
#filtro-orden .form-check .form-check-input {
  opacity: 0;
}
.promocion_bancaria img {
  max-height: 40px;
}
.promocion_bancaria p {
  margin: 0px;
}
.carrier_option img {
  width: 100px;
}
.point_id_option .form-check-label {
  font-size: 0.8rem;
}
.alert {
  padding: 5px 10px;
}
#btn-spinner i{
	animation: spin 1s linear infinite;
}
@keyframes spin {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}
.pagination button{
  border-color: #FFF !important;
}
.logos-pagos{
  width: 60px;
}
.tags_iconos_container{
  position: absolute;
  top: 5px;
  left: 5px;
  width: 50px;
  z-index: 99;
}
.tags_iconos{
  margin-bottom: 5px;
  display: inline-block;
}
.tags_iconos img{
  width: 50px;
}
.form-control:disabled, .form-control[readonly] {
  background-color: var(--bs-secondary-bg);
  opacity: 1;
}
.form-floating>.form-control-plaintext~label::after, .form-floating>.form-control:focus~label::after, .form-floating>.form-control:not(:placeholder-shown)~label::after, .form-floating>.form-select~label::after {
  background-color: transparent;
}
/* -------------------------------------------------------------------------- */
/* -Media queries  */
@media (min-width: 576px) {
  .product--cart-sticky-desk {
    position: sticky;
    top: 92px;
    z-index: 1;
  }
  .paso--cart-sticky-desk {
    position: sticky;
    top: 90px;
    z-index: 1;
  }
  .autocomplete-suggestions {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: 1px solid var(--gray-2);
    background: var(--white);
    cursor: default;
    overflow: auto;
    max-height: 50vh !important;
    line-height: 2.5;
    border-radius: 5px;
  }
  .card--product-titulo {
    color: var(--producto_color_titulo);
    font-size: 16px;
  }
}
@media (min-width: 768px) {
  .owl-theme .owl-dots .owl-dot span {
    width: 8px;
    height: 8px;
  }
  .owl-product-card-img .owl-dots .owl-dot span {
    width: 6px;
    height: 6px;
  }
  .owl-prev i {
    font-size: 25px;
  }
  .owl-next i {
    font-size: 25px;
  }
  .main--sections-sticky-img {
    position: sticky;
    top: 140px;
    z-index: 50;
    align-self: flex-start;
  }
}
@media (min-width: 992px) {
  .main {
    padding-bottom: 0;
  }
  .header {
    height: 80px;
  }
  .main--filter-sticky {
    top: 120px;
  }
  .owl-prev {
    left: -30px;
  }
  .owl-next {
    right: -30px;
  }

  .header__nav--cart-cantidad {
    top: 10px;
    right: 3px;
  }
  .nav--menu-breadcrumbs {
    font-size: 0.65em;
    line-height: 1.8;
    position: relative;
    padding: 2.3em 6em 1.9em 1.7em;
    margin-top: 0;
  }
  .nav--menu-breadcrumb-title {
    top: 75px;
  }
  .nav--menu-back {
    top: 0;
    right: 2.25em;
    margin: 0;
    padding: 1.4em 0.65em 0 0;
  }
  .main__section__aside--filter {
    position: relative;
    background: var(--fondo_pagina_color);
    width: 100%;
    height: 100%;
    z-index: 20;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
  }
  .main__section__aside--filter-wrap {
    position: relative;
    top: 0;
    bottom: 0;
    overflow: auto;
    width: 100%;
  }
  .main__section__aside--filter-action-close {
    display: none;
  }
  .main__section__aside--account {
    position: sticky;
    background: var(--fondo_pagina_color);
    top: 110px;
    width: 100%;
    z-index: 20;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    overflow-y: auto;
  }
  .main__section__aside--account-wrap {
    position: relative;
    top: 0;
    bottom: 0;
    overflow: auto;
    width: 100%;
  }
  .main__section__aside--account-action-close {
    display: none;
  }
  .owl-prev,
  .owl-next {
    top: 50%;
  }
  .footer {
    margin-bottom: 0px;
  }
}
@media (min-width: 1200px) {
  .product--table {
    border-bottom: 1px solid var(--gray-2);
  }
  .product--table-description {
    font-size: 14px;
  }
  .product--table-price {
    font-size: 14px;
    font-weight: normal;
  }
  .product--table-btn {
    font-size: 12px !important;
  }
  .product--table-custom-height {
    height: 100%;
  }
  .product--table-code {
    color: var(--tipografia_color_general) !important;
    font-size: 14px !important;
  }
}
@media (min-width: 1300px) {
}
@media (min-width: 1400px) {
}
@media (max-width: 1399px) {
}
@media (max-width: 1299px) {
}
@media (max-width: 1199px) {
}
@media (max-width: 991px) {
  .nav--menu-action-open-desk,
  .nav--menu-action-open-mobile,
  .nav--menu-action-close {
    display: block;
  }
  .nav--menu {
    width: 90%;
  }
  .header--cart {
    width: 90%;
  }
  .header--search {
    width: 100%;
  }
  .main__section__aside--filter {
    width: 90%;
    height: 100dvh;
  }
  .main__section__aside--account {
    width: 90%;
    height: 100dvh;
  }
}
.main__section--cart .img-fit-square {
  border: 1px solid var(--gray-2);
}
@media (max-width: 767px) {
}
@media (max-width: 575px) {
  /* __MainSectionCart */
  .main__section--cart {
    padding-bottom: 100px;
  }

  .main__section--cart-footer {
    background-color: var(--fondo_pagina_color);
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    padding-bottom: 20px !important;
    z-index: 70;
  }
  .main__section--account-order-footer {
    background-color: var(--fondo_pagina_color);
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    padding-bottom: 20px !important;
    z-index: 10;
    border: 1px solid var(--gray-2);
  }
  /* __MainSectionAsideAccount */
  .main__section__aside--account-footer {
    background-color: var(--fondo_pagina_color);
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    padding-bottom: 20px !important;
    z-index: 10;
    border-top: 1px solid var(--gray-2);
  }
}
/* -------------------------------------------------------------------------- */
/* -Developers */
/* _user-de-github1 */
/* _user-de-github2 */
.search-input {
  font-family: Arial, FontAwesome;
}
.link.activo {
  font-weight: bold;
}

.custom-swal-popup {
  width: 350px !important;
  max-width: 90% !important;
}

.oculta_nro_carrito {
  display: none;
}

.oculta_divs_descuento_carrito {
  display: none !important;
}
.oculto {
  display: none;
}
.precio_sin_impuestos {
  font-size: 0.7rem;
}
