
/* MobiLux v27 — shop hero + real horizontal list layout */

/* ---------- Shop hero ---------- */
.shop-hero{padding-top:22px!important}
.shop-hero-card{
  min-height:270px!important;
  grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr)!important;
  border-radius:30px!important;
  background:linear-gradient(115deg,#fff 0%,color-mix(in srgb,var(--ml-primary) 4%,#fff) 48%,#eef1ff 100%)!important;
  box-shadow:0 20px 58px rgba(39,39,78,.075)!important;
}
.shop-hero-card:before{width:300px!important;height:300px!important;left:-135px!important;top:-165px!important;opacity:.7}
.shop-hero-card:after{right:51%!important;top:34px!important}
.shop-hero-copy{
  padding:32px 42px!important;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.shop-breadcrumb{margin-bottom:13px!important}
.shop-breadcrumb .breadcrumb{font-size:.76rem!important}
.shop-eyebrow{
  align-self:flex-start;
  margin-bottom:10px!important;
  padding:7px 12px!important;
  font-size:.74rem!important;
}
.shop-hero-copy h1{
  font-size:clamp(2rem,3vw,2.8rem)!important;
  line-height:1.45!important;
  letter-spacing:-1.25px!important;
}
.shop-hero-copy p{
  max-width:690px!important;
  margin-top:8px!important;
  font-size:.88rem!important;
  line-height:1.95!important;
}
.shop-hero-stats{margin-top:18px!important;gap:8px!important}
.shop-hero-stats span{
  min-height:40px;
  padding:8px 12px!important;
  font-size:.72rem!important;
  border-radius:12px!important;
}
.shop-hero-stats i{font-size:1rem!important}
.shop-hero-art{
  min-height:270px!important;
  height:100%;
  align-self:stretch;
  padding:0!important;
  overflow:hidden;
  isolation:isolate;
  background:#e9e9f1;
}
.shop-hero-art:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:3;
  width:auto!important;
  height:auto!important;
  border-radius:0!important;
  background:linear-gradient(90deg,rgba(255,255,255,0) 58%,color-mix(in srgb,color-mix(in srgb,var(--ml-primary) 5%,#fff) 38%,transparent) 77%,color-mix(in srgb,var(--ml-primary) 5%,#fff) 100%)!important;
  filter:none!important;
  pointer-events:none;
}
.shop-hero-art:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient(180deg,rgba(20,22,34,.02),rgba(20,22,34,.08));
  pointer-events:none;
}
.shop-hero-art img{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 46%!important;
  transform:none!important;
  filter:none!important;
}
.shop-orbit{z-index:4;opacity:.35;pointer-events:none}
.orbit-a{width:310px!important;height:135px!important}
.orbit-b{width:350px!important;height:155px!important}

/* ---------- Proper horizontal list cards ---------- */
.shop-product-grid.list-view{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:16px!important;
}
.list-view .shop-product-card{
  position:relative!important;
  display:flex!important;
  flex-direction:row!important;
  min-height:236px!important;
  border-radius:23px!important;
  overflow:hidden!important;
  transform:none!important;
}
.list-view .shop-product-card:hover{transform:translateY(-2px)!important}
/* Critical fix: overlay controls must not consume a grid/flex cell. */
.list-view .shop-card-top{
  position:absolute!important;
  inset:0!important;
  z-index:9!important;
  width:100%!important;
  height:100%!important;
  pointer-events:none!important;
}
.list-view .shop-card-top .shop-product-badge,
.list-view .shop-card-top .shop-card-actions{pointer-events:auto!important}
.list-view .shop-product-badge{right:14px!important;top:14px!important;font-size:.7rem!important;padding:6px 9px!important}
.list-view .shop-card-top .shop-card-actions{left:14px!important;top:14px!important;gap:7px!important}
.list-view .shop-card-top .shop-card-actions .compare-btn,
.list-view .shop-card-top .shop-card-actions .favorite-btn{
  width:36px!important;
  height:36px!important;
  border-radius:11px!important;
  font-size:.92rem!important;
  box-shadow:0 7px 20px rgba(20,24,40,.07);
}
.list-view .shop-card-media{
  position:relative!important;
  flex:0 0 310px!important;
  width:310px!important;
  min-width:310px!important;
  min-height:236px!important;
  height:auto!important;
  padding:0!important;
  background:#f1f2f6!important;
  overflow:hidden!important;
}
.list-view .shop-card-media .product-image{
  width:100%!important;
  height:100%!important;
  min-height:236px!important;
  padding:0!important;
}
.list-view .shop-card-media img,
.list-view .shop-card-media .product-img-primary,
.list-view .shop-card-media .product-img-secondary{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}
.list-view .quick-view-btn{
  right:16px!important;
  left:16px!important;
  bottom:14px!important;
  width:auto!important;
  height:40px!important;
  padding:0 14px!important;
  font-size:.76rem!important;
  border-radius:12px!important;
}
.list-view .quick-view-btn span{display:inline!important}
.list-view .shop-card-body{
  min-width:0;
  flex:1 1 auto!important;
  padding:22px 24px 19px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto auto auto auto 1fr auto;
  column-gap:24px;
  align-content:start;
}
.list-view .shop-card-meta{grid-column:1/-1;font-size:.73rem!important;margin-bottom:4px}
.list-view .shop-card-body h3{
  grid-column:1/-1;
  min-height:auto!important;
  margin:4px 0 4px!important;
  font-size:1.12rem!important;
  line-height:1.7!important;
}
.list-view .shop-card-desc{
  grid-column:1/-1;
  display:block!important;
  max-width:850px!important;
  margin:1px 0 8px!important;
  color:#757c8f!important;
  font-size:.78rem!important;
  line-height:1.95!important;
}
.list-view .shop-card-rating{
  grid-column:1;
  align-self:center;
  justify-content:flex-start!important;
  gap:13px!important;
  margin:3px 0 8px!important;
}
.list-view .shop-card-rating span{font-size:.76rem!important}
.list-view .shop-card-rating small{font-size:.7rem!important}
.list-view .shop-product-card .product-meta-row{
  grid-column:1;
  max-width:430px;
  margin:3px 0 8px!important;
  justify-content:flex-start!important;
  gap:20px!important;
}
.list-view .shop-product-card .stock-state{font-size:.72rem!important}
.list-view .shop-card-footer{
  grid-column:2;
  grid-row:4/7;
  align-self:end;
  min-width:210px;
  margin:0!important;
  padding:0 0 2px 0!important;
  border-top:0!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-end!important;
  gap:12px!important;
}
.list-view .shop-card-price{align-items:flex-end!important}
.list-view .shop-card-price del{height:auto!important;font-size:.72rem!important;margin-bottom:3px}
.list-view .shop-card-price strong{font-size:1.08rem!important}
.list-view .shop-card-price strong span{font-size:.72rem!important}
.list-view .shop-add-cart{
  width:100%!important;
  min-width:190px!important;
  height:44px!important;
  padding:0 17px!important;
  border-radius:12px!important;
  font-size:.78rem!important;
}
.list-view .shop-add-cart span{display:inline!important}

/* list cards should not get the oversized image rules from generic grid cards */
.list-view .shop-card-media.v14-card-media,
.list-view .shop-card-media .v14-card-media{min-height:236px!important}

@media(max-width:1199.98px){
  .shop-hero-card{grid-template-columns:minmax(0,1fr) minmax(340px,.72fr)!important}
  .shop-hero-copy{padding:29px 32px!important}
  .list-view .shop-card-media{flex-basis:285px!important;width:285px!important;min-width:285px!important}
}
@media(max-width:991.98px){
  .shop-hero-card{grid-template-columns:minmax(0,1fr) 38%!important;min-height:245px!important}
  .shop-hero-art{min-height:245px!important}
  .shop-hero-copy{padding:27px 26px!important}
  .shop-hero-stats span{font-size:.69rem!important}
  .list-view .shop-card-media{flex:0 0 245px!important;width:245px!important;min-width:245px!important}
  .list-view .shop-card-body{padding:18px!important;column-gap:16px}
  .list-view .shop-card-footer{min-width:175px}
  .list-view .shop-add-cart{min-width:165px!important}
}
@media(max-width:767.98px){
  .shop-hero{padding-top:13px!important}
  .shop-hero-card{display:block!important;min-height:0!important;border-radius:23px!important}
  .shop-hero-copy{padding:23px 20px 20px!important}
  .shop-hero-copy h1{font-size:1.75rem!important}
  .shop-hero-copy p{font-size:.8rem!important}
  .shop-hero-art{height:170px!important;min-height:170px!important}
  .shop-hero-art:before{background:linear-gradient(180deg,color-mix(in srgb,var(--ml-primary) 5%,#fff) 0%,color-mix(in srgb,color-mix(in srgb,var(--ml-primary) 5%,#fff) 0%,transparent) 45%)!important}
  .shop-orbit{display:none!important}

  .list-view .shop-product-card{min-height:188px!important;border-radius:19px!important}
  .list-view .shop-card-media{flex:0 0 180px!important;width:180px!important;min-width:180px!important;min-height:188px!important}
  .list-view .shop-card-media .product-image{min-height:188px!important}
  .list-view .shop-card-body{display:flex!important;flex-direction:column!important;padding:15px 14px!important}
  .list-view .shop-card-meta{font-size:.65rem!important}
  .list-view .shop-card-body h3{font-size:.9rem!important;margin-top:4px!important}
  .list-view .shop-card-desc{display:none!important}
  .list-view .shop-card-rating{margin:4px 0!important}
  .list-view .shop-product-card .product-meta-row{margin:4px 0 7px!important;gap:9px!important}
  .list-view .color-swatches{display:none!important}
  .list-view .shop-card-footer{width:100%!important;min-width:0!important;margin-top:auto!important;flex-direction:row!important;align-items:flex-end!important;gap:7px!important}
  .list-view .shop-card-price{align-items:flex-start!important}
  .list-view .shop-card-price strong{font-size:.86rem!important}
  .list-view .shop-add-cart{width:40px!important;min-width:40px!important;height:40px!important;padding:0!important}
  .list-view .shop-add-cart span{display:none!important}
  .list-view .quick-view-btn{right:10px!important;left:10px!important;bottom:10px!important;height:36px!important;font-size:0!important;padding:0!important}
  .list-view .quick-view-btn i{font-size:1rem!important}
  .list-view .shop-product-badge{right:9px!important;top:9px!important}
  .list-view .shop-card-top .shop-card-actions{left:9px!important;top:9px!important}
}
@media(max-width:479.98px){
  .list-view .shop-card-media{flex:0 0 132px!important;width:132px!important;min-width:132px!important;min-height:176px!important}
  .list-view .shop-card-media .product-image{min-height:176px!important}
  .list-view .shop-product-card{min-height:176px!important}
  .list-view .shop-card-body{padding:12px 11px!important}
  .list-view .shop-card-meta span:last-child{display:none}
  .list-view .shop-card-rating small{display:none}
  .list-view .shop-product-card .stock-state{font-size:.63rem!important}
  .list-view .shop-card-top .shop-card-actions .compare-btn,
  .list-view .shop-card-top .shop-card-actions .favorite-btn{width:31px!important;height:31px!important}
}
