/* Shop compact/category/photo/detail refinement */

/* Once a remote/local image loads, remove the fallback icon beneath it. */
.imgWrap.is-loaded .imgFallback{display:none!important}
.imgWrap .imgFallback{z-index:0!important}
.imgWrap .imgReal{z-index:1!important}

/* Main Shop categories remain stacked, but are substantially smaller. */
#viewShopExplore.shopExploreScreen{padding-bottom:112px!important}
#viewShopExplore .shopExploreList{grid-template-columns:1fr!important;gap:7px!important}
#viewShopExplore .shopExploreCard{
  min-height:78px!important;
  grid-template-columns:54px minmax(0,1fr) 14px!important;
  gap:11px!important;
  padding:9px 13px 9px 9px!important;
  border-radius:17px!important;
}
#viewShopExplore .shopExploreVisual{
  width:54px!important;height:54px!important;flex-basis:54px!important;
  border-radius:15px!important;
}
#viewShopExplore .shopExploreVisual svg{width:31px!important;height:31px!important}
#viewShopExplore .shopExploreCopy{display:flex!important;align-items:center!important;min-height:54px!important}
#viewShopExplore .shopExploreCopy strong{font-size:15px!important;line-height:1.1!important}
#viewShopExplore .shopExploreCopy small{display:none!important}
#viewShopExplore .shopExploreArrow{font-size:25px!important}

/* Subcategories: three compact, balanced cards per mobile row. */
#viewSubcats .subhead{margin-bottom:9px!important}
#viewSubcats .subhead .sectionTitle{font-size:21px!important}
#subcatGrid.gridCat{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
#subcatGrid .tile{
  min-height:112px!important;
  padding:6px!important;
  gap:6px!important;
  border-radius:15px!important;
}
#subcatGrid .tile .img{
  aspect-ratio:1.48/1!important;
  border-radius:11px!important;
  background:linear-gradient(145deg,#d9cda9,#b49c63)!important;
}
#subcatGrid .tile .img img,
#subcatGrid .tile .img .imgReal{
  padding:4px!important;
  object-fit:contain!important;
  mix-blend-mode:darken!important;
  filter:contrast(1.03) saturate(.96) brightness(1.08)!important;
}
#subcatGrid .tile .label{
  min-height:27px!important;
  font-size:10px!important;
  line-height:1.2!important;
  -webkit-line-clamp:2!important;
}

/* Product photo wells: neutral champagne, no dark overlay, no ghost icon. */
.shopProductImage{
  background:linear-gradient(145deg,#ddd2b5 0%,#c4ad79 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35),inset 0 0 18px rgba(84,58,15,.12)!important;
}
.shopProductImage::before{
  z-index:2!important;
  background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 30%)!important;
}
.shopProductImage .imgWrap{z-index:1!important}
.shopProductImage .imgReal,
.shopProductImage img{
  padding:4px!important;
  object-fit:contain!important;
  transform:none!important;
  mix-blend-mode:darken!important;
  filter:contrast(1.03) saturate(.96) brightness(1.08)!important;
}
.shopProductImage .imgFallback{color:#d8b948!important;background:linear-gradient(145deg,#17140e,#0c0b09)!important}

/* Product detail: smaller stage and one collapsed Details control under price. */
#viewDetail .shopDetailLayout{gap:9px!important}
#viewDetail .shopDetailMedia{padding:8px!important;border-radius:18px!important}
#viewDetail .shopDetailImage.imgbox{
  height:235px!important;min-height:235px!important;
  border-radius:14px!important;
  background:linear-gradient(145deg,#ddd2b5 0%,#c4ad79 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35),inset 0 0 22px rgba(84,58,15,.12)!important;
}
#viewDetail .shopDetailImage .imgReal,
#viewDetail .shopDetailImage img{
  padding:10px!important;
  object-fit:contain!important;
  mix-blend-mode:darken!important;
  filter:contrast(1.03) saturate(.96) brightness(1.08)!important;
}
#viewDetail .shopDetailMediaNote{display:none!important}
#viewDetail .shopDetailInfo{padding:15px!important;border-radius:18px!important}
#viewDetail .shopDetailInfo .pnameBig{font-size:22px!important;line-height:1.12!important}
#viewDetail .shopDetailInfo .price{margin-top:10px!important;font-size:22px!important}
.shopDetailDisclosure{
  margin-top:13px!important;
  border:1px solid rgba(225,184,56,.20)!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.018)!important;
  overflow:hidden!important;
}
.shopDetailDisclosure summary{
  min-height:46px!important;
  padding:0 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  color:#f3ead7!important;
  font-size:13px!important;
  font-weight:900!important;
  cursor:pointer!important;
  list-style:none!important;
}
.shopDetailDisclosure summary::-webkit-details-marker{display:none!important}
.shopDetailDisclosure summary::after{content:'+';color:#e5bd4f;font-size:21px;font-weight:500}
.shopDetailDisclosure[open] summary::after{content:'−'}
.shopDetailDisclosureBody{padding:0 12px 12px!important;border-top:1px solid rgba(225,184,56,.12)!important}
.shopDetailDisclosure .shopDetailDescription{margin:11px 0 0!important;font-size:11px!important;line-height:1.45!important}
.shopDetailDisclosure .shopDetailFacts{margin-top:10px!important}
.shopDetailDisclosure .shopDetailSectionTitle{margin-top:12px!important}
.shopDetailDisclosure .specsText{margin-top:7px!important}
#viewDetail .shopDetailActions{margin-top:14px!important;padding-top:0!important}

@media(max-width:390px){
  #viewShopExplore .shopExploreCard{min-height:74px!important;grid-template-columns:50px minmax(0,1fr) 12px!important}
  #viewShopExplore .shopExploreVisual{width:50px!important;height:50px!important;flex-basis:50px!important}
  #viewShopExplore .shopExploreVisual svg{width:29px!important;height:29px!important}
  #subcatGrid .tile{min-height:105px!important;padding:5px!important}
  #subcatGrid .tile .label{font-size:9.4px!important}
  #viewDetail .shopDetailImage.imgbox{height:220px!important;min-height:220px!important}
}


/* V23 complete product descriptions */
.shopDetailDescription{white-space:pre-line!important;overflow-wrap:anywhere!important;}
