/* SOCIOS PRO V1.9.11 — Tarjetas verticales tipo “Más vendidos”
 * Aplica solo al Inicio y a los resultados de “Ver más” por categoría.
 * No modifica el carrusel de Más vendidos ni la ficha individual del producto/servicio. */

/* En celular/tablet vertical se siguen ocultando los flotantes duplicados,
   porque ya existen en la barra inferior. */
@media (max-width:1024px) and (orientation:portrait){
  html body:has(nav.mobile-nav) button.btnWhatsapp,
  html body:has(nav.mobile-nav) button.cartIconFixed {
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
}

html.ec-public-home body .ProductsContain .categoriSection a.cardProdcut,
html.ec-public-home body .ProductsContain .categoriSectionSelected .cardProdcutSelected {
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:var(--ec-card-height-v1911, 430px)!important;
  height:auto!important;
  max-height:none!important;
  margin:0!important;
  padding:10px!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:18px!important;
  background:var(--blanco)!important;
  box-shadow:0 4px 14px rgba(0,0,0,.11)!important;
  text-decoration:none!important;
  position:relative!important;
}

html.ec-public-home body .ProductsContain .categoriSection a.cardProdcut > img,
html.ec-public-home body .ProductsContain .categoriSectionSelected .cardProdcutSelected > img {
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  flex:0 0 auto!important;
  height:var(--ec-card-image-height-v1911, 190px)!important;
  min-height:var(--ec-card-image-height-v1911, 190px)!important;
  max-height:var(--ec-card-image-height-v1911, 190px)!important;
  align-self:stretch!important;
  margin:0!important;
  padding:0!important;
  border-radius:14px!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:var(--gris2,#f1f5f7)!important;
}

html.ec-public-home body .ProductsContain .categoriSection a.cardProdcut > .cardText,
html.ec-public-home body .ProductsContain .categoriSectionSelected .cardProdcutSelected > .cardTextSelected {
  box-sizing:border-box!important;
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  padding:12px 8px 6px 8px!important;
  overflow:visible!important;
}

html.ec-public-home body .ProductsContain .categoriSection a.cardProdcut .cardText h4,
html.ec-public-home body .ProductsContain .categoriSectionSelected .cardProdcutSelected .cardTextSelected h4 {
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  -webkit-line-clamp:unset!important;
  line-clamp:unset!important;
  font-size:clamp(18px,2.2vw,22px)!important;
  font-weight:700!important;
  line-height:1.28!important;
  color:var(--text-color2)!important;
}

html.ec-public-home body .ProductsContain .categoriSection a.cardProdcut .cardText > span,
html.ec-public-home body .ProductsContain .categoriSectionSelected .cardProdcutSelected .cardTextSelected > span {
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  -webkit-line-clamp:unset!important;
  line-clamp:unset!important;
  font-size:clamp(14px,1.6vw,17px)!important;
  line-height:1.42!important;
  color:var(--text-color2)!important;
  text-align:justify!important;
  text-align-last:left!important;
  hyphens:auto!important;
  -webkit-hyphens:auto!important;
}

html.ec-public-home body .ProductsContain .categoriSection a.cardProdcut .cardText .deFLexPrice,
html.ec-public-home body .ProductsContain .categoriSectionSelected .cardProdcutSelected .cardTextSelected .deFLexPrice {
  box-sizing:border-box!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  width:100%!important;
  min-width:0!important;
  gap:5px!important;
  margin-top:auto!important;
  padding-top:10px!important;
  padding-right:54px!important;
}

html.ec-public-home body .ProductsContain .categoriSection a.cardProdcut .cardText h5,
html.ec-public-home body .ProductsContain .categoriSectionSelected .cardProdcutSelected .cardTextSelected h5 {
  width:auto!important;
  max-width:100%!important;
  white-space:normal!important;
  text-overflow:clip!important;
  overflow:visible!important;
  font-weight:700!important;
  line-height:1.35!important;
  font-size:clamp(18px,2vw,22px)!important;
}

html.ec-public-home body .ProductsContain .categoriSection a.cardProdcut .iconCard,
html.ec-public-home body .ProductsContain .categoriSectionSelected .cardProdcutSelected .iconCard {
  left:auto!important;
  top:auto!important;
  right:14px!important;
  bottom:14px!important;
  transform:none!important;
}

/* Encabezados de categoría: permitir título + “Ver más”. */
html.ec-public-home body .ProductsContain .categoriSection .deFlexTitlesection {
  box-sizing:border-box!important;
  display:flex!important;
  align-items:flex-start!important;
  gap:8px!important;
  max-width:100%!important;
}
html.ec-public-home body .ProductsContain .categoriSection .deFlexTitlesection h3 {
  flex:1 1 auto!important;
  min-width:0!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  line-height:1.28!important;
}
html.ec-public-home body .ProductsContain .categoriSection .deFlexTitlesection button {
  flex:0 0 auto!important;
  min-width:max-content!important;
  white-space:nowrap!important;
}

/* Carrusel normal de cada categoría en Inicio (no Más vendidos). */
html.ec-public-home body .ProductsContain .categoriSection:has(a.cardProdcut) #swiper_container_products {
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  padding:0 12px 16px!important;
}
html.ec-public-home body .ProductsContain .categoriSection:has(a.cardProdcut) .swiper-wrapper:has(> #SwiperSlide-scroll-products) {
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:14px!important;
  height:auto!important;
  max-height:none!important;
  padding:5px 0 12px!important;
  box-sizing:border-box!important;
}
html.ec-public-home body .ProductsContain .categoriSection:has(a.cardProdcut) .swiper-wrapper > #SwiperSlide-scroll-products {
  box-sizing:border-box!important;
  flex:0 0 calc(100% - 1px)!important;
  width:calc(100% - 1px)!important;
  max-width:calc(100% - 1px)!important;
  min-width:0!important;
  height:auto!important;
  display:flex!important;
  align-items:stretch!important;
  margin:0!important;
}

/* Ver más: usar las mismas tarjetas del inicio. */
html.ec-public-home body .ProductsContain .categoriSectionSelected {
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  align-items:stretch!important;
  gap:14px!important;
  padding:14px 12px 22px!important;
}
html.ec-public-home body .ProductsContain .categoriSectionSelected > a {
  box-sizing:border-box!important;
  display:flex!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  height:100%!important;
  margin:0!important;
  text-decoration:none!important;
}

/* Celular horizontal y tablet vertical/normal: dos visibles en inicio. */
@media (min-width:700px) and (max-width:1024px) {
  html.ec-public-home body .ProductsContain .categoriSection:has(a.cardProdcut) .swiper-wrapper > #SwiperSlide-scroll-products {
    flex-basis:calc((100% - 14px)/2)!important;
    width:calc((100% - 14px)/2)!important;
    max-width:calc((100% - 14px)/2)!important;
  }
  html.ec-public-home body .ProductsContain .categoriSectionSelected {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* Tablet horizontal y computador: tres por fila / visibles. */
@media (min-width:900px) {
  html.ec-public-home body .ProductsContain .categoriSection:has(a.cardProdcut) .swiper-wrapper > #SwiperSlide-scroll-products {
    flex-basis:calc((100% - 28px)/3)!important;
    width:calc((100% - 28px)/3)!important;
    max-width:calc((100% - 28px)/3)!important;
  }
  html.ec-public-home body .ProductsContain .categoriSectionSelected {
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

/* Ajustes finos por tamaño para que la imagen superior se vea completa. */
@media (max-width:699px){
  html.ec-public-home{ --ec-card-image-height-v1911:180px; }
}
@media (min-width:700px) and (max-width:1024px){
  html.ec-public-home{ --ec-card-image-height-v1911:205px; }
}
@media (min-width:1025px){
  html.ec-public-home{ --ec-card-image-height-v1911:220px; }
}
