/* ===== Barra roja ===== */
.section-adbar {
  padding: 0 40px !important;
  height: 22px !important;
  overflow: hidden !important;
}
.section-adbar .js-swiper-adbar,
.section-adbar .js-swiper-adbar-wrapper {
  height: 22px !important;
  min-height: 22px !important;
  display: flex !important;
  align-items: center !important;
}
.section-adbar .adbar-text-container {
  font-size: 8px !important;
  line-height: 8px !important;
}

/* ===== Logo / header blanco ===== */
.logo-img.logo-img-small {
  max-width: 160px !important;
  width: 160px !important;
  height: auto !important;
}

/* ===== Menú negro + Venta al público/Cotizar obras ===== */
.head-banner-item {
  padding-top: 0.5px !important;
  padding-bottom: 0.5px !important;
}

.head-banner-item .mb-1 {
  margin-bottom: 0 !important;
}
.nav-desktop-list {
  padding: 0.5px 0 !important;
}

/* ===== Banner: proporción fija, cero recorte en cualquier pantalla ===== */
.section-slider .swiper-slide {
  aspect-ratio: 2.4 / 1 !important;
  height: auto !important;
  max-height: none !important;
}
.section-slider .slider-image {
  object-fit: cover !important;
  object-position: center top !important;
}

/* ===== Espacio entre banner y marcas ===== */
.section-slider .my-3 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* ===== Marcas más pegadas a los puntitos ===== */
.copi-brands-grid {
  padding-top: 4px !important;
}

/* ===== Ficha de producto: galería, ancho, alineación ===== */
@media (min-width: 768px) {
  #single-product > .container {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 16px !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
  }
  #single-product {
    padding-top: 0.5rem !important;
  }
  #single-product > .container > .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  #single-product > .container > .row > div:first-child {
    flex: 0 0 47% !important;
    max-width: 47% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  #single-product > .container > .row > div:nth-child(2) {
    flex: 0 0 52% !important;
    max-width: 52% !important;
    padding-right: 16px !important;
    padding-left: 8px !important;
  }
  
  #single-product > .container > .row > div:nth-child(2) > .pt-md-3.px-md-3 {
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: 0 !important;
}
  
  
  #single-product .js-swiper-product {
    min-width: 0 !important;
  }

  /* Pegar todo (miniaturas + foto grande) bien a la izquierda */
  #single-product [data-store^="product-image"] {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  #single-product [data-store^="product-image"] > .col-md-auto {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  #single-product .product-thumbs-container {
    margin-left: 0 !important;
    padding-right: 0 !important;
    width: 220px !important;
    height: calc(100vh - 170px) !important;
  }
  #single-product .js-swiper-product-thumbs {
    height: calc(100vh - 170px) !important;
  }
  #single-product .product-thumbs-container .swiper-slide {
    width: 220px !important;
  }
  #single-product .product-thumbs-container .product-thumb {
    width: 220px !important;
  }
  #single-product [data-store^="product-image"] > .col.p-0.px-md-3 {
    padding-left: 14px !important;
  }

  /* Foto grande: llena el alto disponible */
  #single-product .js-product-slide-link {
    padding-bottom: 0 !important;
    height: calc(100vh - 170px) !important;
  }
}

/* ===== Producto: ocultar barra roja + menú negro, mostrar solo buscador ===== */
@media (min-width: 768px) {
  body.template-product .section-adbar {
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.3s ease !important;
  }
  body.template-product .head-main:hover .section-adbar {
    max-height: 40px !important;
  }

  body.template-product .head-main .menu-and-banners-row:has([data-store="navigation"]) {
    max-height: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
    transition: max-height 0.3s ease !important;
  }
  body.template-product .head-main:hover .menu-and-banners-row:has([data-store="navigation"]) {
    max-height: 200px !important;
    visibility: visible !important;
  }
}

/* ===== Producto: franja de entrega destacada ===== */
#single-product #copi-delivery-badge {
  display: none !important;
  align-items: center !important;
  gap: 8px !important;
  background: #f2e9ea !important;
  border-radius: 8px !important;
  padding: 9px 14px !important;
  margin-bottom: 16px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #691b28 !important;
}
#single-product #copi-delivery-badge.copi-visible {
  display: flex !important;
}

/* ===== Producto: precio con transferencia, protagonista ===== */
#single-product .js-payment-discount-price-product-container {
  font-size: 26px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  color: #691b28 !important;
}
#single-product .js-payment-discount-price-product-container span:not(.js-payment-discount-price-product) {
  font-size: 12px !important;
  font-weight: 400 !important;
  display: block !important;
  margin-top: 2px !important;
}

/* ===== Producto: sello "LLEGA HOY" sobre la foto ===== */
#single-product .copi-llega-hoy-label {
  background-color: #691b28 !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  padding: 9px 16px !important;
  border-radius: 4px !important;
  text-transform: uppercase !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  pointer-events: none !important;
}


/* ===== Producto: reordenar bloque de precios ===== */
#single-product .price-container .js-transfer-price {
  display: flex !important;
  align-items: baseline !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
}
#single-product .price-container .js-transfer-price > span:not(.js-payment-discount-price-product):not(.copi-abonando-transferencia) {
  display: none !important;
}
#single-product .copi-abonando-transferencia {
  display: inline-block !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #691b28 !important;
}

#single-product .copi-price-row-normal {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  margin: 4px 0 10px !important;
}
#single-product .copi-price-row-normal #price_display {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #111 !important;
}
#single-product .copi-price-row-normal .js-offer-label {
  border: 1.5px solid #691b28 !important;
  background: transparent !important;
  color: #691b28 !important;
  border-radius: 20px !important;
  padding: 2px 10px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}
#single-product .copi-price-row-normal #compare_price_display {
  font-size: 14px !important;
  color: #999 !important;
  text-decoration: line-through !important;
}
#single-product .copi-abonando-text {
  font-size: 13px !important;
  color: #777 !important;
}

#single-product .js-max-installments-container {
  background: #691b28 !important;
  display: inline-block !important;
  padding: 6px 14px !important;
  border-radius: 6px !important;
  margin: 6px 0 10px !important;
}
#single-product .js-max-installments-container * {
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 13px !important;
}

#single-product .js-price-without-taxes-container {
  font-size: 12px !important;
  color: #888 !important;
  opacity: 1 !important;
}


/* ===== Producto: badges laterales (entrega + stock) ===== */
#single-product .copi-price-flex-row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
}
#single-product .copi-badges-stack {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  flex-shrink: 0 !important;
}
#single-product .copi-side-badge {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: #e0e0e0 !important;
  color: #691b28 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  padding: 9px 16px !important;
  border-radius: 6px !important;
  white-space: nowrap !important;
}

/* Ocultar el número exacto de stock */
#single-product .product-stock {
  display: none !important;
}

/* ===== Producto: layout de compra en 2 columnas ===== */
@media (min-width: 768px) {
  #single-product #product_form {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    column-gap: 24px !important;
  }
  #single-product .js-product-variants {
    flex: 0 0 45% !important;
    max-width: 45% !important;
    margin: 0 !important;
  }
  #single-product .js-product-variants .js-product-variants-group {
    margin-bottom: 8px !important;
    padding-top: 0 !important;
  }
  #single-product #product_form > .row:not(.js-product-variants) {
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    column-gap: 12px !important;
    row-gap: 8px !important;
    align-items: end !important;
    flex: 1 1 auto !important;
    max-width: none !important;
    margin: 0 !important;
  }
  #single-product #product_form > .row:not(.js-product-variants) .product-quantity {
    grid-column: 1 !important;
    grid-row: 1 !important;
    margin-bottom: 0 !important;
  }
  #single-product #product_form > .row:not(.js-product-variants) .product-stock {
    grid-column: 1 / -1 !important;
  }
  #single-product #product_form > .row:not(.js-product-variants) .col-12 {
    display: contents !important;
  }
  #single-product #product_form > .row:not(.js-product-variants) .col-12 > a.btn-primary {
    grid-column: 2 !important;
    grid-row: 1 !important;
    margin-top: 0 !important;
    align-self: end !important;
  }
  #single-product #product_form > .row:not(.js-product-variants) .col-12 > input.js-addtocart,
  #single-product #product_form > .row:not(.js-product-variants) .col-12 > .js-addtocart-placeholder {
    grid-column: 1 / -1 !important;
    margin-top: 0 !important;
  }
}

/* ===== Producto: subir bloque de compra ===== */
#single-product #product_form {
  margin-top: -4px !important;
}

/* ===== Producto: recuadro sutil sobre precio + entrega/stock ===== */
#single-product .copi-price-flex-row {
  border: 1px solid #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 16px !important;
  margin-bottom: 14px !important;
}

/* ===== Producto: tarjeta de precio en 2 columnas (info | envíos) ===== */
#single-product .copi-price-flex-row {
  display: flex !important;
  align-items: flex-start !important;
  gap: 20px !important;
  flex-wrap: wrap !important;
}
#single-product .copi-price-flex-row > .price-container {
  flex: 1 1 260px !important;
}
#single-product .copi-shipping-top {
  flex: 1 1 300px !important;
  min-width: 0 !important;
}

/* Ocultar títulos redundantes y aviso de feriados dentro de la grilla */
#single-product .copi-shipping-top .font-small.mb-3,
#single-product .copi-shipping-top .font-small.mb-4 {
  display: none !important;
}

/* Grilla de 2 columnas para las opciones */
#single-product .copi-shipping-top .radio-button-container {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
  margin: 0 0 8px !important;
}
#single-product .copi-shipping-top .js-shipping-list-item {
  padding: 8px 10px !important;
  margin: 0 !important;
}
#single-product .copi-shipping-top .shipping-option-name {
  font-size: 12px !important;
  font-weight: 700 !important;
}
#single-product .copi-shipping-top .opacity-60 {
  font-size: 11px !important;
}
#single-product .copi-shipping-top [data-component="option.price"] {
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #691b28 !important;
}

/* ===== Producto: toggle Quiero entrega / Quiero retirar, arriba a la derecha ===== */
#single-product .copi-sku-row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
}
#single-product .copi-toggle-entrega-retiro {
  display: flex !important;
  gap: 8px !important;
}
#single-product .copi-toggle-btn {
  background: #e0e0e0 !important;
  color: #691b28 !important;
  border: none !important;
  border-radius: 20px !important;
  padding: 7px 14px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}
#single-product .copi-toggle-btn.copi-activo {
  background: #691b28 !important;
  color: #fff !important;
}

/* Badge de stock, inline junto a "Precio sin impuestos" */
#single-product .copi-side-badge-stock {
  display: inline-flex !important;
  margin-top: 6px !important;
}

/* ===== Producto: sacar el checkbox de selección en la grilla compacta ===== */
#single-product .copi-shipping-top .radio-button-icons-container {
  display: none !important;
}
#single-product .copi-shipping-top .radio-button-label {
  padding-left: 0 !important;
}

#single-product .copi-shipping-top .copi-oculto {
  display: none !important;
}

/* ===== Producto: fila "Precio sin impuestos" + badge de stock, uno al lado del otro ===== */
#single-product .copi-preciosin-row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

/* ===== Producto: descripción movida bajo "Cambiar CP", enmarcada ===== */
#single-product [data-store^="product-description"] {
  margin-top: 16px !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 16px !important;
  background: #fafafa !important;
}

/* ===== Producto: reducir proporcionalmente en pantallas muy anchas ===== */
@media (min-width: 1700px) {
  #single-product {
    zoom: 0.90 !important;
  }
}

/* ===== Producto: foto grande pegada a la izquierda, sin importar su ancho ===== */
#single-product .js-product-slide-link .img-absolute-centered {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  transform: none !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: left center !important;
}

/* ===== Producto: aviso para cargar CP si no hay envíos calculados ===== */
#single-product .copi-prompt-cp {
  display: none;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  background: #f2e9ea;
  border: 1px solid #e3d4d6;
  border-radius: 8px;
  padding: 10px 14px;
  margin-top: 10px;
  flex-wrap: wrap;
}
#single-product .copi-prompt-cp.copi-visible {
  display: flex;
}
#single-product .copi-prompt-cp span {
  font-size: 12px;
  font-weight: 500;
  color: #691b28;
}
#single-product .copi-prompt-cp button {
  background: #691b28;
  color: #fff;
  border: none;
  border-radius: 20px;
  padding: 6px 14px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  white-space: nowrap;
}


/* ===== Banner 1: Institucional (arriba) ===== */
section[data-store="home-banner-promotional"] .container {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
section[data-store="home-banner-promotional"] .row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
section[data-store="home-banner-promotional"] .js-banner-row.px-2 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
section[data-store="home-banner-promotional"] .textbanner-image {
  aspect-ratio: 2400 / 450 !important;
  max-height: none !important;
  overflow: hidden !important;
}
section[data-store="home-banner-promotional"] .textbanner-image img {
  height: 100% !important;
  width: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}
}

/* ===== Banner 2: Gyon (abajo) ===== */
section[data-store="home-banner-featured"] .container {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ===== Destacados: imagen decorativa como fondo completo, de punta a punta ===== */
section[data-store="home-products-best-seller"] {
  position: relative !important;
}
section[data-store="home-products-best-seller"] .js-products-best-seller-desktop-image {
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  z-index: 0 !important;
}
section[data-store="home-products-best-seller"] .container {
  position: relative !important;
  z-index: 1 !important;
}

/* ===== Diseño Lineal (Nuevos): imagen decorativa como fondo completo ===== */
.js-products-new-container {
  position: relative !important;
}
.js-products-new-desktop-image {
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  z-index: 0 !important;
}
.js-products-new-container > .row {
  position: relative !important;
  z-index: 1 !important;
}
/* ===== Barra roja ===== */
.section-adbar {
  padding: 0 40px !important;
  height: 22px !important;
  overflow: hidden !important;
}
.section-adbar .js-swiper-adbar,
.section-adbar .js-swiper-adbar-wrapper {
  height: 22px !important;
  min-height: 22px !important;
  display: flex !important;
  align-items: center !important;
}
.section-adbar .adbar-text-container {
  font-size: 8px !important;
  line-height: 8px !important;
}

/* ===== Logo / header blanco ===== */
.logo-img.logo-img-small {
  max-width: 160px !important;
  width: 160px !important;
  height: auto !important;
}

/* ===== Menú negro + Venta al público/Cotizar obras ===== */
.head-banner-item {
  padding-top: 0.5px !important;
  padding-bottom: 0.5px !important;
}

.head-banner-item .mb-1 {
  margin-bottom: 0 !important;
}
.nav-desktop-list {
  padding: 0.5px 0 !important;
}

/* ===== Banner: proporción fija, cero recorte en cualquier pantalla ===== */
.section-slider .swiper-slide {
  aspect-ratio: 2.4 / 1 !important;
  height: auto !important;
  max-height: none !important;
}
.section-slider .slider-image {
  object-fit: cover !important;
  object-position: center top !important;
}

/* ===== Espacio entre banner y marcas ===== */
.section-slider .my-3 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* ===== Marcas más pegadas a los puntitos ===== */
.copi-brands-grid {
  padding-top: 4px !important;
}

/* ===== Ficha de producto: galería, ancho, alineación ===== */
@media (min-width: 768px) {
  #single-product > .container {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 16px !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
  }
  #single-product {
    padding-top: 0.5rem !important;
  }
  #single-product > .container > .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  #single-product > .container > .row > div:first-child {
    flex: 0 0 47% !important;
    max-width: 47% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  #single-product > .container > .row > div:nth-child(2) {
    flex: 0 0 52% !important;
    max-width: 52% !important;
    padding-right: 16px !important;
    padding-left: 8px !important;
  }
  
  #single-product > .container > .row > div:nth-child(2) > .pt-md-3.px-md-3 {
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: 0 !important;
}
  
  
  #single-product .js-swiper-product {
    min-width: 0 !important;
  }

  /* Pegar todo (miniaturas + foto grande) bien a la izquierda */
  #single-product [data-store^="product-image"] {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  #single-product [data-store^="product-image"] > .col-md-auto {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  #single-product .product-thumbs-container {
    margin-left: 0 !important;
    padding-right: 0 !important;
    width: 220px !important;
    height: calc(100vh - 170px) !important;
  }
  #single-product .js-swiper-product-thumbs {
    height: calc(100vh - 170px) !important;
  }
  #single-product .product-thumbs-container .swiper-slide {
    width: 220px !important;
  }
  #single-product .product-thumbs-container .product-thumb {
    width: 220px !important;
  }
  #single-product [data-store^="product-image"] > .col.p-0.px-md-3 {
    padding-left: 14px !important;
  }

  /* Foto grande: llena el alto disponible */
  #single-product .js-product-slide-link {
    padding-bottom: 0 !important;
    height: calc(100vh - 170px) !important;
  }
}

/* ===== Producto: ocultar barra roja + menú negro, mostrar solo buscador ===== */
@media (min-width: 768px) {
  body.template-product .section-adbar {
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.3s ease !important;
  }
  body.template-product .head-main:hover .section-adbar {
    max-height: 40px !important;
  }

  body.template-product .head-main .menu-and-banners-row:has([data-store="navigation"]) {
    max-height: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
    transition: max-height 0.3s ease !important;
  }
  body.template-product .head-main:hover .menu-and-banners-row:has([data-store="navigation"]) {
    max-height: 200px !important;
    visibility: visible !important;
  }
}

/* ===== Producto: franja de entrega destacada ===== */
#single-product #copi-delivery-badge {
  display: none !important;
  align-items: center !important;
  gap: 8px !important;
  background: #f2e9ea !important;
  border-radius: 8px !important;
  padding: 9px 14px !important;
  margin-bottom: 16px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #691b28 !important;
}
#single-product #copi-delivery-badge.copi-visible {
  display: flex !important;
}

/* ===== Producto: precio con transferencia, protagonista ===== */
#single-product .js-payment-discount-price-product-container {
  font-size: 26px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  color: #691b28 !important;
}
#single-product .js-payment-discount-price-product-container span:not(.js-payment-discount-price-product) {
  font-size: 12px !important;
  font-weight: 400 !important;
  display: block !important;
  margin-top: 2px !important;
}

/* ===== Producto: sello "LLEGA HOY" sobre la foto ===== */
#single-product .copi-llega-hoy-label {
  background-color: #691b28 !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  padding: 9px 16px !important;
  border-radius: 4px !important;
  text-transform: uppercase !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  pointer-events: none !important;
}


/* ===== Producto: reordenar bloque de precios ===== */
#single-product .price-container .js-transfer-price {
  display: flex !important;
  align-items: baseline !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
}
#single-product .price-container .js-transfer-price > span:not(.js-payment-discount-price-product):not(.copi-abonando-transferencia) {
  display: none !important;
}
#single-product .copi-abonando-transferencia {
  display: inline-block !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #691b28 !important;
}

#single-product .copi-price-row-normal {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  margin: 4px 0 10px !important;
}
#single-product .copi-price-row-normal #price_display {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #111 !important;
}
#single-product .copi-price-row-normal .js-offer-label {
  border: 1.5px solid #691b28 !important;
  background: transparent !important;
  color: #691b28 !important;
  border-radius: 20px !important;
  padding: 2px 10px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}
#single-product .copi-price-row-normal #compare_price_display {
  font-size: 14px !important;
  color: #999 !important;
  text-decoration: line-through !important;
}
#single-product .copi-abonando-text {
  font-size: 13px !important;
  color: #777 !important;
}

#single-product .js-max-installments-container {
  background: #691b28 !important;
  display: inline-block !important;
  padding: 6px 14px !important;
  border-radius: 6px !important;
  margin: 6px 0 10px !important;
}
#single-product .js-max-installments-container * {
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 13px !important;
}

#single-product .js-price-without-taxes-container {
  font-size: 12px !important;
  color: #888 !important;
  opacity: 1 !important;
}


/* ===== Producto: badges laterales (entrega + stock) ===== */
#single-product .copi-price-flex-row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
}
#single-product .copi-badges-stack {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  flex-shrink: 0 !important;
}
#single-product .copi-side-badge {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: #e0e0e0 !important;
  color: #691b28 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  padding: 9px 16px !important;
  border-radius: 6px !important;
  white-space: nowrap !important;
}

/* Ocultar el número exacto de stock */
#single-product .product-stock {
  display: none !important;
}

/* ===== Producto: layout de compra en 2 columnas ===== */
@media (min-width: 768px) {
  #single-product #product_form {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    column-gap: 24px !important;
  }
  #single-product .js-product-variants {
    flex: 0 0 45% !important;
    max-width: 45% !important;
    margin: 0 !important;
  }
  #single-product .js-product-variants .js-product-variants-group {
    margin-bottom: 8px !important;
    padding-top: 0 !important;
  }
  #single-product #product_form > .row:not(.js-product-variants) {
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    column-gap: 12px !important;
    row-gap: 8px !important;
    align-items: end !important;
    flex: 1 1 auto !important;
    max-width: none !important;
    margin: 0 !important;
  }
  #single-product #product_form > .row:not(.js-product-variants) .product-quantity {
    grid-column: 1 !important;
    grid-row: 1 !important;
    margin-bottom: 0 !important;
  }
  #single-product #product_form > .row:not(.js-product-variants) .product-stock {
    grid-column: 1 / -1 !important;
  }
  #single-product #product_form > .row:not(.js-product-variants) .col-12 {
    display: contents !important;
  }
  #single-product #product_form > .row:not(.js-product-variants) .col-12 > a.btn-primary {
    grid-column: 2 !important;
    grid-row: 1 !important;
    margin-top: 0 !important;
    align-self: end !important;
  }
  #single-product #product_form > .row:not(.js-product-variants) .col-12 > input.js-addtocart,
  #single-product #product_form > .row:not(.js-product-variants) .col-12 > .js-addtocart-placeholder {
    grid-column: 1 / -1 !important;
    margin-top: 0 !important;
  }
}

/* ===== Producto: subir bloque de compra ===== */
#single-product #product_form {
  margin-top: -4px !important;
}

/* ===== Producto: recuadro sutil sobre precio + entrega/stock ===== */
#single-product .copi-price-flex-row {
  border: 1px solid #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 16px !important;
  margin-bottom: 14px !important;
}

/* ===== Producto: tarjeta de precio en 2 columnas (info | envíos) ===== */
#single-product .copi-price-flex-row {
  display: flex !important;
  align-items: flex-start !important;
  gap: 20px !important;
  flex-wrap: wrap !important;
}
#single-product .copi-price-flex-row > .price-container {
  flex: 1 1 260px !important;
}
#single-product .copi-shipping-top {
  flex: 1 1 300px !important;
  min-width: 0 !important;
}

/* Ocultar títulos redundantes y aviso de feriados dentro de la grilla */
#single-product .copi-shipping-top .font-small.mb-3,
#single-product .copi-shipping-top .font-small.mb-4 {
  display: none !important;
}

/* Grilla de 2 columnas para las opciones */
#single-product .copi-shipping-top .radio-button-container {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
  margin: 0 0 8px !important;
}
#single-product .copi-shipping-top .js-shipping-list-item {
  padding: 8px 10px !important;
  margin: 0 !important;
}
#single-product .copi-shipping-top .shipping-option-name {
  font-size: 12px !important;
  font-weight: 700 !important;
}
#single-product .copi-shipping-top .opacity-60 {
  font-size: 11px !important;
}
#single-product .copi-shipping-top [data-component="option.price"] {
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #691b28 !important;
}

/* ===== Producto: toggle Quiero entrega / Quiero retirar, arriba a la derecha ===== */
#single-product .copi-sku-row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
}
#single-product .copi-toggle-entrega-retiro {
  display: flex !important;
  gap: 8px !important;
}
#single-product .copi-toggle-btn {
  background: #e0e0e0 !important;
  color: #691b28 !important;
  border: none !important;
  border-radius: 20px !important;
  padding: 7px 14px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}
#single-product .copi-toggle-btn.copi-activo {
  background: #691b28 !important;
  color: #fff !important;
}

/* Badge de stock, inline junto a "Precio sin impuestos" */
#single-product .copi-side-badge-stock {
  display: inline-flex !important;
  margin-top: 6px !important;
}

/* ===== Producto: sacar el checkbox de selección en la grilla compacta ===== */
#single-product .copi-shipping-top .radio-button-icons-container {
  display: none !important;
}
#single-product .copi-shipping-top .radio-button-label {
  padding-left: 0 !important;
}

#single-product .copi-shipping-top .copi-oculto {
  display: none !important;
}

/* ===== Producto: fila "Precio sin impuestos" + badge de stock, uno al lado del otro ===== */
#single-product .copi-preciosin-row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

/* ===== Producto: descripción movida bajo "Cambiar CP", enmarcada ===== */
#single-product [data-store^="product-description"] {
  margin-top: 16px !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 16px !important;
  background: #fafafa !important;
}

/* ===== Producto: reducir proporcionalmente en pantallas muy anchas ===== */
@media (min-width: 1700px) {
  #single-product {
    zoom: 0.90 !important;
  }
}

/* ===== Producto: foto grande pegada a la izquierda, sin importar su ancho ===== */
#single-product .js-product-slide-link .img-absolute-centered {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  transform: none !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: left center !important;
}

/* ===== Producto: aviso para cargar CP si no hay envíos calculados ===== */
#single-product .copi-prompt-cp {
  display: none;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  background: #f2e9ea;
  border: 1px solid #e3d4d6;
  border-radius: 8px;
  padding: 10px 14px;
  margin-top: 10px;
  flex-wrap: wrap;
}
#single-product .copi-prompt-cp.copi-visible {
  display: flex;
}
#single-product .copi-prompt-cp span {
  font-size: 12px;
  font-weight: 500;
  color: #691b28;
}
#single-product .copi-prompt-cp button {
  background: #691b28;
  color: #fff;
  border: none;
  border-radius: 20px;
  padding: 6px 14px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  white-space: nowrap;
}


/* ===== Banner 1: Institucional (arriba) ===== */
section[data-store="home-banner-promotional"] .container {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
section[data-store="home-banner-promotional"] .row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
section[data-store="home-banner-promotional"] .js-banner-row.px-2 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
section[data-store="home-banner-promotional"] .textbanner-image {
  aspect-ratio: 2400 / 450 !important;
  max-height: none !important;
  overflow: hidden !important;
}
section[data-store="home-banner-promotional"] .textbanner-image img {
  height: 100% !important;
  width: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* ===== Banner 2: Gyon (abajo) ===== */
section[data-store="home-banner-featured"] .container {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ===== Destacados: imagen decorativa como fondo completo, de punta a punta ===== */
section[data-store="home-products-best-seller"] {
  position: relative !important;
}
section[data-store="home-products-best-seller"] .js-products-best-seller-desktop-image {
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  z-index: 0 !important;
}
section[data-store="home-products-best-seller"] .container {
  position: relative !important;
  z-index: 1 !important;
}

/* ===== Diseño Lineal (Nuevos): imagen decorativa como fondo completo ===== */
.js-products-new-container {
  position: relative !important;
}
.js-products-new-desktop-image {
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  z-index: 0 !important;
}
.js-products-new-container > .row {
  position: relative !important;
  z-index: 1 !important;
}

/* ============================================
   v48 — Rediseño del listado de productos
   1) Filtros pasan de sidebar a barra horizontal arriba
   2) Grilla de 5 a 3 columnas (productos más grandes)
   3) "Mostrando resultados" + Ordenar alineados a la derecha
   ============================================ */

@media (min-width: 768px) {

  /* --- 1) Filtros: de sidebar vertical a barra arriba --- */

  /* El sidebar pasa a ocupar todo el ancho y va primero dentro del row */
  .filters-sidebar {
    order: -1;
    flex: 0 0 100% !important;
    max-width: 100% !important;
    margin-bottom: 24px;
  }

  /* Los grupos de filtros (Color, Marca, etc.) en fila en vez de apilados */
  #filters[data-store="filters-nav"] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: flex-start;
  }

  .filters-sidebar .js-filter-container {
    flex: 0 0 auto;
    min-width: 0;
    margin-bottom: 0 !important;
  }

  /* --- Botonera de filtros: look mejorado (pills prolijas, color de marca) --- */
  #filters .js-filter-container.card {
    border: 1px solid #e0e0e0 !important;
    border-radius: 24px !important;
    background: #fff !important;
    box-shadow: none !important;
    transition: border-color 0.2s ease !important;
  }
  #filters .js-filter-container.card:hover {
    border-color: #691b28 !important;
  }
  #filters .js-accordion-toggle {
    padding: 10px 16px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #333 !important;
    white-space: nowrap !important;
  }
  #filters .js-accordion-toggle svg {
    fill: #691b28 !important;
    width: 12px !important;
    height: 12px !important;
  }

  /* --- Solo 4 filtros visibles: Marca, Color, Potencia, Tono de luz --- */
  #filters .js-filter-container {
    display: none;
  }
  #filters .js-filter-container[data-component-value="brand"] {
    display: block;
    order: 1;
  }
  #filters .js-filter-container[data-component-value="Color"] {
    display: block;
    order: 2;
  }
  #filters .js-filter-container[data-component-value="Potencia"] {
    display: block;
    order: 3;
  }
  #filters .js-filter-container[data-component-value="m_tono de luz"] {
    display: block;
    order: 4;
  }

  /* Con el botón activado, se muestran todos */
  #filters.copi-filtros-expandidos .js-filter-container {
    display: block;
  }

  /* Botón "Más filtros" (lo agrega el JS) */
  .copi-mas-filtros-btn {
    order: 5;
    background: transparent;
    border: 1px solid #691b28;
    border-radius: 24px;
    padding: 10px 16px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    color: #691b28;
    cursor: pointer;
    white-space: nowrap;
  }
  .copi-mas-filtros-btn:hover {
    background: #f2e9ea;
  }

  /* --- 2) Grilla: 5 columnas (no 3), pero más grande gracias al contenedor ancho --- */

  [data-store="search-grid"] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  .js-product-table .item-product.col-md-2-4 {
    flex: 0 0 20% !important;
    max-width: 20% !important;
  }

  /* Gutters más chicos entre tarjetas, para aprovechar mejor el ancho */
  .js-product-table.row-grid {
    margin-left: -6px !important;
    margin-right: -6px !important;
  }
  .js-product-table .item-product {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
}

/* --- 3) "Mostrando resultados" alineado a la derecha (Ordenar ya está a la derecha por diseño) --- */

.background-secondary .container > .row.align-items-center > .col {
  text-align: right;
}

/* --- 4) Usar más ancho de pantalla en el listado (menos margen a los costados) --- */

@media (min-width: 1400px) {
  .background-secondary .container,
  .container {
    max-width: 1800px;
    padding-left: 16px;
    padding-right: 16px;
  }
}

// ===== Botón "Más filtros" para la botonera de filtros =====
(function () {
  function initMasFiltros() {
    var filters = document.querySelector('#filters[data-store="filters-nav"]');
    if (!filters || filters.querySelector('.copi-mas-filtros-btn')) return;

    var btn = document.createElement('button');
    btn.type = 'button';
    btn.className = 'copi-mas-filtros-btn';
    btn.textContent = 'Más filtros';

    btn.addEventListener('click', function () {
      var expandido = filters.classList.toggle('copi-filtros-expandidos');
      btn.textContent = expandido ? 'Menos filtros' : 'Más filtros';
    });

    filters.appendChild(btn);
  }

  if (document.readyState === 'loading') {
    document.addEventListener('DOMContentLoaded', initMasFiltros);
  } else {
    initMasFiltros();
  }
})();