/* ============================================================
   14. HOMEPAGE MINI SHOP
   ============================================================ */
 .momen-home-grid, .momen-home-shop__grid {
   will-change: opacity; display: grid; grid-template-columns: repeat(var(--momen-home-cols-desktop, 4), minmax(0, 1fr));
   gap: var(--momen-shop-grid-gap, 1.25rem); width: 100%; padding: 0; margin: 0; box-sizing: border-box; list-style: none;
 }
 .momen-hcard, .momen-home-shop__card {
   background: var(--momen-white); border: none; border-radius: var(--momen-radius);
   overflow: hidden; display: flex; flex-direction: column;
   transition: transform 0.24s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.24s ease;
   width: 100%; box-sizing: border-box; float: none; clear: none; margin: 0;
   box-shadow: var(--momen-shadow-card);
 }
 .momen-home-shop__card:hover { box-shadow: var(--momen-shadow-hover); transform: translateY(-5px); }
 .momen-home-shop {
   width: 100%; max-width: 100%; display: block; box-sizing: border-box;
   font-family: var(--momen-font-body);
 }
 .momen-home-shop__toolbar {
   display: flex; align-items: center; justify-content: space-between;
   flex-wrap: wrap; gap: 1rem; margin-bottom: 1.25rem;
 }


 .momen-home-shop__cats {
  display: flex;
  align-items: center;
  gap: 0;
  overflow-x: auto;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  background: var(--momen-cream-dark);
  border: 1px solid var(--momen-border);
  border-radius: var(--momen-radius-sm);
  padding: 3px;
  flex-shrink: 0;
  max-width: 100%;
}

.momen-home-shop__cats::-webkit-scrollbar {
  display: none;
}

.momen-home-shop__cat-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.3em;
  padding: 0.42rem 0.95rem;
  background: transparent;
  border: none;
  border-radius: calc(var(--momen-radius-sm) - 2px);
  font-family: var(--momen-font-body);
  font-size: 0.8rem;
  font-weight: 500;
  color: var(--momen-mid);
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s, color 0.15s, box-shadow 0.15s;
  line-height: 1.3;
  flex-shrink: 0;
  box-shadow: none;
  text-decoration: none;
  appearance: none;
}

.momen-home-shop__cat-btn:hover {
  color: var(--momen-charcoal);
  background: rgba(255,255,255,0.6);
  transform: none;
}

.momen-home-shop__cat-btn.active,
.momen-home-shop__cat-btn.is-active {
  background: var(--momen-white);
  color: var(--momen-charcoal);
  font-weight: 700;
  box-shadow: 0 1px 4px rgba(30,30,24,0.1), 0 0 0 1px rgba(30,30,24,0.06);
}

.momen-home-shop__badge {
   position: absolute; top: 10px; left: 10px;
   background: var(--momen-black); color: var(--momen-lime);
   font-size: 0.6rem; font-weight: 700; text-transform: uppercase;
   letter-spacing: 0.1em; padding: 4px 10px; border-radius: 3px;
   z-index: 10; line-height: 1.4; font-family: var(--momen-font-body);
 }
 .momen-home-shop__search {
   display: flex; align-items: center; gap: 0.5rem; background: var(--momen-white);
   border: 1px solid var(--momen-border); border-radius: var(--momen-radius-pill); padding: 0.45rem 1rem;
 }
 .momen-home-shop__search input {
   border: none; outline: none; background: transparent;
   font-family: var(--momen-font-body); font-size: 0.84rem;
   color: var(--momen-charcoal); width: 160px; box-shadow: none; padding: 0;
 }
 .momen-home-shop__img-wrap {
   position: relative; display: block; text-decoration: none;
   overflow: hidden; background: var(--momen-cream-dark);
 }
 .momen-home-shop__img-wrap img {
   width: 100%; aspect-ratio: 1 / 1; object-fit: cover; display: block;
   transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
 }
 .momen-home-shop__card:hover .momen-home-shop__img-wrap img { transform: scale(1.06); }
 .momen-home-shop__body { padding: 0.9rem 1rem; display: flex; flex-direction: column; flex-grow: 1; }
 .momen-home-shop__name {
   font-family: var(--momen-font-display); font-weight: 600; font-size: 1.1rem;
   color: var(--momen-charcoal); margin: 0 0 0.25rem; text-decoration: none;
   display: block; line-height: 1.2; letter-spacing: -0.02em;
 }
 .momen-home-shop__name:hover { color: var(--momen-lime); }
 .momen-home-shop__desc { font-size: 0.78rem; color: var(--momen-mid); line-height: 1.45; margin: 0 0 0.85rem; flex-grow: 1; }
.momen-home-shop__sizes {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin: 0 0 0.75rem;
  padding-bottom: 0.65rem;
  border-bottom: 1px solid var(--momen-border);
}
.momen-home-shop__sizes + .momen-home-shop__footer {
  border-top: none;
  padding-top: 0;
}
 .momen-home-shop__footer {
   display: flex; align-items: center; justify-content: space-between;
   padding-top: 0.7rem; border-top: 1px solid var(--momen-border);
   margin-top: auto; gap: 0.5rem; flex-wrap: wrap;
 }
 .momen-home-shop__price {
   font-family: var(--momen-font-display); font-weight: 600; font-size: 1.2rem;
   color: var(--momen-charcoal); line-height: 1; letter-spacing: -0.02em;
 }
 .momen-home-shop__actions { display: inline-flex; align-items: center; gap: 0; flex-shrink: 0; }
 
 /* Ã¢â€â‚¬Ã¢â€â‚¬ HOME SHOP QTY STEPPER Ã¢â‚¬â€ lime hover, black text Ã¢â€â‚¬Ã¢â€â‚¬ */
 .momen-home-shop__qty-btn {
   display: inline-flex; align-items: center; justify-content: center;
   width: 26px; height: 26px; border: 1px solid var(--momen-border);
   background: var(--momen-cream); color: var(--momen-charcoal);
   font-size: 0.9rem; font-weight: 600; line-height: 1; cursor: pointer;
   transition: all 0.15s ease; padding: 0; margin: 0; box-shadow: none; appearance: none;
 }
 .momen-home-shop__qty-btn[data-dir="-1"] { border-radius: var(--momen-radius-sm) 0 0 var(--momen-radius-sm); border-right: none; }
 .momen-home-shop__qty-btn[data-dir="1"]  { border-radius: 0 var(--momen-radius-sm) var(--momen-radius-sm) 0; border-left: none; }
 .momen-home-shop__qty-btn:hover {
   background: var(--momen-lime); border-color: var(--momen-lime);
   color: var(--momen-black); /* black on lime */
 }
 .momen-home-shop__qty-val {
   display: inline-flex; align-items: center; justify-content: center;
   width: 28px; height: 26px;
   border-top: 1px solid var(--momen-border); border-bottom: 1px solid var(--momen-border);
   border-left: none; border-right: none; background: #fff;
   font-size: 0.8rem; font-weight: 700; color: var(--momen-charcoal);
   user-select: none; margin: 0; line-height: 1; font-family: var(--momen-font-body);
 }
 
 /* Ã¢â€â‚¬Ã¢â€â‚¬ HOME SHOP ADD BUTTON Ã¢â‚¬â€ lime fill, black text Ã¢â€â‚¬Ã¢â€â‚¬ */
 .momen-home-shop__add-btn {
   display: inline-flex; align-items: center; justify-content: center;
   height: 26px; padding: 0 0.75rem; margin-left: 5px;
   background: var(--momen-lime); color: var(--momen-black); /* black text on lime */
   border: none; border-radius: var(--momen-radius-sm);
   font-size: 0.74rem; font-weight: 700; cursor: pointer; transition: all 0.15s ease;
   white-space: nowrap; font-family: var(--momen-font-body); appearance: none;
   box-shadow: 0 2px 8px rgba(161,188,58,0.3); line-height: 1; letter-spacing: 0.01em;
 }
 .momen-home-shop__add-btn:hover {
   background: var(--momen-lime-dark); color: var(--momen-white); transform: translateY(-1px);
 }
 .momen-home-shop__add-btn.added {
   background: var(--momen-black); color: var(--momen-lime); box-shadow: none;
 }
 .momen-home-shop__add-btn.momen-add-btn--pending,
 .momen-home-shop__add-btn[disabled] {
   background: #d0d0c8 !important; color: #888 !important;
   cursor: not-allowed !important; box-shadow: none !important;
   transform: none !important; opacity: 1 !important;
 }
 .momen-home-shop__select-btn {
   display: inline-flex; align-items: center; justify-content: center;
   height: 26px; padding: 0 0.75rem;
   background: transparent; color: var(--momen-lime);
   border: 1.5px solid var(--momen-lime); border-radius: var(--momen-radius-sm);
   font-size: 0.74rem; font-weight: 700; cursor: pointer; text-decoration: none;
   font-family: var(--momen-font-body); transition: all 0.15s; white-space: nowrap; line-height: 1;
 }
 .momen-home-shop__select-btn:hover {
   background: var(--momen-lime); color: var(--momen-black); /* black on lime */
 }
 
 .momen-home-shop__subtotal {
   display: block; padding: 0.5rem 1rem 0.65rem;
   font-size: 0.79rem; font-weight: 600; color: var(--momen-mid);
   border-top: 1px dashed var(--momen-border); margin-top: 0.1rem;
   font-family: var(--momen-font-body);
 }
 .momen-home-shop__subtotal .momen-home-shop__subtotal-row {
   display: flex; align-items: baseline; justify-content: flex-start; gap: 8px;
 }
 .momen-home-shop__subtotal .momen-home-shop__subtotal-row + .momen-home-shop__subtotal-row { margin-top: 2px; }
 .momen-home-shop__subtotal .sptotal-price { font-weight: 700; font-size: 0.86rem; color: var(--momen-charcoal); }
 .momen-home-shop__subtotal-row--netto .sptotal-price { font-weight: 500; font-size: 0.78rem; color: var(--momen-mid); }
 .momen-home-shop__oos { font-size: 0.78rem; color: var(--momen-mid); font-style: italic; }
 .momen-home-shop__loading { grid-column: 1/-1; text-align: center; padding: 3rem; color: var(--momen-mid); font-size: 0.9rem; }
 .momen-home-shop__error { grid-column: 1/-1; text-align: center; padding: 2rem; color: var(--momen-mid); font-size: 0.88rem; }
 .momen-home-shop__viewall { text-align: center; margin-top: 2rem; }
 .momen-home-shop__viewall a {
   display: inline-flex; align-items: center; gap: 0.4em;
   background: var(--momen-lime); color: var(--momen-black); /* black on lime */
   padding: 0.75rem 2.25rem; border-radius: 8px; font-weight: 700;
   font-size: 0.9rem; text-decoration: none; transition: all 0.15s;
   font-family: var(--momen-font-body); box-shadow: 0 3px 14px rgba(161,188,58,0.3);
 }
 .momen-home-shop__viewall a:hover {
   background: var(--momen-lime-dark); color: var(--momen-white); transform: translateY(-2px);
 }
 
 .momen-filter-group .momen-sidebar-cat {
   display: flex; justify-content: space-between; align-items: center;
   width: 100%; border: none; background: transparent;
   cursor: pointer; text-align: left; font-family: var(--momen-font-body);
 }
 .momen-filter-group .momen-sidebar-cat.active {
   background: rgba(161,188,58,0.08);
   border-left: 3px solid var(--momen-lime);
   font-weight: 600; color: var(--momen-lime-dark);
 }
 
 .hero-right { margin: 0 1.25rem 2rem; }
 .momen-shop-title { font-size: 1.5rem; }
 
 ul.products {
   display: grid; grid-template-columns: repeat(var(--momen-shop-cols-desktop, 3), minmax(0, 1fr));
   gap: var(--momen-shop-grid-gap, 1.25rem); margin: 2rem 0; padding: 0; list-style: none;
 }
 ul.products li.product { width: 100% !important; float: none !important; clear: none !important; margin: 0 !important; }
 .momen-shop-page { padding: 1.25rem 1rem; }
 .momen-shop-toolbar { flex-direction: column; align-items: flex-start; }
 
 @media (max-width: 767px) {
   ul.products, .momen-shop-layout .momen-product-grid {
     grid-template-columns: repeat(var(--momen-shop-cols-mobile, 2), minmax(0, 1fr)); gap: calc(var(--momen-shop-grid-gap, 1.25rem) * 0.6);
   }
   .momen-home-shop__grid, .momen-home-grid { grid-template-columns: repeat(var(--momen-home-cols-mobile, 2), minmax(0, 1fr)); }
 }
 
 .momen-home-shop__search input { width: 60px; }
 
 @media (max-width: 700px) {
   .stk-0c047cf-column {
     flex-direction: column; align-items: center; padding: 0 1.25rem; gap: 1rem;
   }
   .stk-0c047cf-column > .wp-block-stackable-column {
     flex: none; width: 100%; max-width: 400px;
   }
 }
 @media (max-width: 640px) {
   .stk-0c047cf-column > .momen-card-shop,
   .stk-0c047cf-column > .momen-card-catering { max-width: 100%; width: 100%; }
 }
 
