:root {
  --fondo-rojo: #cc2129;
  --fuente-blanca: #ffffff;
}
html {
  box-sizing: border-box;
}
*,
*:before,
*:after {
  box-sizing: inherit;
}
/*Globales*/
img {
  width: 100%;
  margin: 0 auto;
}
a {
  text-decoration: none;
  display: block;
}
p {
  margin: 0;
}
h1,
h2,
h3 {
  margin: 0;
}
/*Utilidades*/
.banner-desk {
  display: none !important;
}
@media (min-width: 780px) {
  .banner-desk {
    display: block !important;
  }
  .banner-mob {
    display: none !important;
  }
  .contenedor-txt-sn {
    width: 80%;
    margin: 1.5% auto;
  }
  .contenedor-txt-sn p {
    padding: 1.5%;
    font-size: 1.15em;
  }
}
@media (min-width: 900px) {
  .contenedor-txt-sn p {
    font-size: 1.3em;
  }
}
@media (min-width: 1200px) {
  .contenedor-txt-sn p {
    font-size: 1.35em;
  }
}
@media (min-width: 1400px) {
  .contenedor-txt-sn p {
    font-size: 1.5em;
  }
}
.contenedor-landing-sanborns {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
}
/*Banner Principal*/
.banner-principal-sn,
.cintillo-sn {
  width: 98%;
  margin: 0 auto;
}
@media (min-width: 1200px) {
  .banner-principal-sn,
  .cintillo-sn {
    width: 95%;
  }
}
/* Carrusel de categorías */
.categorias-carrusel-sn {
  --quick-btn-size: 2rem;
  --quick-btn-offset: 0.35rem;
  position: relative;
  width: 100%;
  margin: 1rem auto;
  padding: 0 var(--quick-btn-offset);
  visibility: hidden;
}
.categorias-carrusel-sn.is-swiper-ready {
  visibility: visible;
}
.categorias-carrusel-sn .carrusel-quick-sn-swiper {
  width: 100%;
}
.categorias-carrusel-sn .carrusel-quick-sn-btn {
  position: absolute;
  z-index: 2;
  top: 50%;
  display: grid;
  width: var(--quick-btn-size);
  height: var(--quick-btn-size);
  padding: 0;
  place-items: center;
  transform: translateY(-50%);
  border: 1px solid var(--fondo-rojo);
  border-radius: 50%;
  background: var(--fuente-blanca);
  color: var(--fondo-rojo);
  font-size: 0.8rem;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 2px 6px rgb(0 0 0 / 20%);
}
.categorias-carrusel-sn .carrusel-quick-sn-prev {
  left: 0;
}
.categorias-carrusel-sn .carrusel-quick-sn-next {
  right: 0;
}
.categorias-carrusel-sn .carrusel-quick-sn-btn:focus-visible {
  outline: 2px solid var(--fondo-rojo);
  outline-offset: 3px;
}
.categorias-carrusel-sn .carrusel-quick-sn-btn:disabled {
  opacity: 0.45;
  cursor: default;
}
.categoria-sn {
  display: grid;
  aspect-ratio: 345 / 400;
  min-width: 0;
  place-items: center;
  overflow: hidden;
  padding: clamp(0.75rem, 2vw, 1.15rem);
  background-color: #cc2129;
  color: var(--fuente-blanca);
  text-align: center;
}
.categorias-carrusel-sn .swiper-wrapper {
  align-items: stretch;
}
.categorias-carrusel-sn .swiper-slide {
  display: flex;
  height: auto;
  min-width: 0;
}
.categorias-carrusel-sn .swiper-slide > a {
  display: block;
  width: 100%;
  aspect-ratio: 345 / 400;
  overflow: hidden;
}
.categorias-carrusel-sn .swiper-slide > a > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.categoria-sn h1 {
  display: grid;
  width: 100%;
  height: 100%;
  margin: 0;
  place-items: center;
  text-align: center;
  font-size: clamp(1.35rem, 4vw, 2.5rem);
  font-weight: bold;
  line-height: 1.5;
  text-transform: uppercase;
}
@media (min-width: 600px) {
  .categorias-carrusel-sn {
    --quick-btn-size: 2.35rem;
    --quick-btn-offset: 0.5rem;
  }
  .categorias-carrusel-sn .carrusel-quick-sn-btn {
    font-size: 0.9rem;
  }
}
@media (min-width: 900px) {
  .categorias-carrusel-sn {
    --quick-btn-size: 2.75rem;
    --quick-btn-offset: 0.65rem;
    margin: 1.5rem auto;
  }
  .categorias-carrusel-sn .carrusel-quick-sn-btn {
    font-size: 1rem;
  }
}
@media (min-width: 1200px) {
  .categorias-carrusel-sn {
    width: 96%;
  }
}

/* Mini categorías */
.mini-categorias-sn {
  --mini-gap: 0.5rem;
  display: flex;
  width: 98%;
  gap: var(--mini-gap);
  margin: 1rem auto;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.mini-categorias-sn::-webkit-scrollbar {
  display: none;
}
.mini-catego-sn {
  flex: 0 0 calc(38.5% - 0.5rem);
  min-width: 0;
  overflow: hidden;
  scroll-snap-align: start;
}
.mini-catego-sn > a {
  display: block;
  width: 100%;
  height: auto;
}
.mini-catego-sn img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 275 / 200;
  object-fit: cover;
}
@media (min-width: 600px) {
  .mini-catego-sn {
    flex-basis: calc(28.5% - 0.6rem);
  }
}
@media (min-width: 780px) {
  .mini-categorias-sn {
    --mini-gap: 0.75rem;
    width: 96%;
  }
  .mini-catego-sn {
    flex-basis: calc(28.5714% - 0.643rem);
  }
}
@media (min-width: 1024px) {
  .mini-categorias-sn {
    --mini-gap: 1rem;
    overflow-x: visible;
    scroll-snap-type: none;
  }
  .mini-catego-sn {
    flex-basis: calc(20% - 0.8rem);
  }
}

/* Alinear las secciones principales del landing */
.contenedor-landing-sanborns > .banner-principal-sn,
.contenedor-landing-sanborns > .categorias-carrusel-sn,
.contenedor-landing-sanborns > .mini-categorias-sn,
.contenedor-landing-sanborns > .cintillo-sn {
  width: 98%;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 1024px) {
  .contenedor-landing-sanborns > .banner-principal-sn,
  .contenedor-landing-sanborns > .mini-categorias-sn,
  .contenedor-landing-sanborns > .cintillo-sn {
    width: 95%;
  }
  .contenedor-landing-sanborns > .categorias-carrusel-sn {
    width: 96.5%;
  }
}
.tarjeta-producto-pagos .discount-new {
  background-color: var(--fondo-rojo) !important;
}
