:root{
  --mbb-ink:#17231f;
  --mbb-muted:#64706b;
  --mbb-green:#16865b;
  --mbb-green-dark:#0f6444;
  --mbb-green-soft:#eaf8f1;
  --mbb-orange:#ff512f;
  --mbb-orange-dark:#df391c;
  --mbb-cream:#fffaf4;
  --mbb-surface:#ffffff;
  --mbb-line:#e5ebe8;
  --mbb-shadow:0 14px 38px rgba(25,55,44,.10);
  --mbb-radius:18px;
}

body.mbb-modern-store{
  background:linear-gradient(180deg,#f8fbfa 0,#fff 430px)!important;
  color:var(--mbb-ink);
}

.mbb-modern-store .site-head,
.mbb-modern-store .site-header,
.mbb-modern-store header#masthead{
  background:#fff!important;
  box-shadow:0 8px 30px rgba(20,54,42,.07);
}

.mbb-modern-store .site-content,
.mbb-modern-store main,
.mbb-modern-store .content-area{
  padding-top:34px;
  padding-bottom:56px;
}

.mbb-modern-store h1,
.mbb-modern-store .page-title,
.mbb-modern-store .entry-title{
  color:var(--mbb-ink)!important;
  font-size:clamp(30px,4vw,48px)!important;
  font-weight:850!important;
  letter-spacing:-.035em;
  line-height:1.08;
}

.mbb-modern-store h1::after,
.mbb-modern-store .page-title::after{
  content:"";
  display:block;
  width:58px;
  height:5px;
  margin-top:12px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--mbb-orange),#ff9b61);
}

.mbb-modern-store a{
  transition:color .18s ease,background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}

.mbb-modern-store button,
.mbb-modern-store .button,
.mbb-modern-store input[type="submit"]{
  min-height:44px;
  border:0!important;
  border-radius:10px!important;
  background:var(--mbb-green)!important;
  color:#fff!important;
  font-weight:800!important;
  letter-spacing:.01em;
  box-shadow:0 7px 16px rgba(22,134,91,.18);
}

.mbb-modern-store button:hover,
.mbb-modern-store .button:hover,
.mbb-modern-store input[type="submit"]:hover{
  background:var(--mbb-green-dark)!important;
  color:#fff!important;
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(15,100,68,.24);
}

.mbb-modern-store input[type="text"],
.mbb-modern-store input[type="email"],
.mbb-modern-store input[type="tel"],
.mbb-modern-store input[type="number"],
.mbb-modern-store input[type="search"],
.mbb-modern-store select,
.mbb-modern-store textarea{
  min-height:44px;
  border:1px solid #d9e2de!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--mbb-ink)!important;
  box-shadow:0 2px 0 rgba(23,35,31,.02);
}

.mbb-modern-store input:focus,
.mbb-modern-store select:focus,
.mbb-modern-store textarea:focus{
  border-color:var(--mbb-green)!important;
  outline:3px solid rgba(22,134,91,.13)!important;
}

/* Catalogue cards */
.mbb-modern-store ul.products{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px!important;
}

.mbb-modern-store ul.products::before,
.mbb-modern-store ul.products::after{display:none!important}

.mbb-modern-store ul.products li.product{
  float:none!important;
  width:auto!important;
  min-width:0;
  margin:0!important;
  padding:12px 12px 16px!important;
  overflow:hidden;
  border:1px solid var(--mbb-line);
  border-radius:var(--mbb-radius);
  background:var(--mbb-surface);
  box-shadow:0 8px 24px rgba(25,55,44,.07);
}

.mbb-modern-store ul.products li.product:hover{
  border-color:#cce2d8;
  transform:translateY(-5px);
  box-shadow:var(--mbb-shadow);
}

.mbb-modern-store ul.products li.product img{
  width:100%!important;
  aspect-ratio:1/1;
  margin:0 0 14px!important;
  border-radius:13px;
  background:#fafafa;
  object-fit:contain;
}

.mbb-modern-store ul.products li.product .woocommerce-loop-product__title{
  min-height:2.7em;
  margin:2px 2px 8px!important;
  color:var(--mbb-ink)!important;
  font-size:16px!important;
  font-weight:800!important;
  line-height:1.35;
}

.mbb-modern-store ul.products li.product .price{
  display:flex!important;
  align-items:baseline;
  flex-wrap:wrap;
  gap:6px;
  margin:0 2px 12px!important;
  color:var(--mbb-green-dark)!important;
  font-size:18px!important;
  font-weight:850!important;
}

.mbb-modern-store ul.products li.product .price del{
  color:#8a928f!important;
  font-size:13px;
  font-weight:600;
  opacity:1!important;
}

.mbb-modern-store ul.products li.product .onsale,
.mbb-modern-store span.onsale{
  top:18px!important;
  right:18px!important;
  left:auto!important;
  min-width:auto!important;
  min-height:auto!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  background:var(--mbb-orange)!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1!important;
  box-shadow:0 6px 14px rgba(255,81,47,.28);
}

.mbb-modern-store ul.products li.product .button{
  display:flex!important;
  align-items:center;
  justify-content:center;
  width:100%;
  margin:4px 0 0!important;
  padding:11px 12px!important;
  background:linear-gradient(135deg,var(--mbb-orange),#ff7044)!important;
  box-shadow:0 8px 18px rgba(255,81,47,.22);
}

.mbb-modern-store ul.products li.product .button:hover{
  background:linear-gradient(135deg,var(--mbb-orange-dark),var(--mbb-orange))!important;
}

/* Cart */
.woocommerce-cart.mbb-modern-store .woocommerce{
  max-width:1380px;
  margin:0 auto;
}

.woocommerce-cart.mbb-modern-store .woocommerce-cart-form{
  overflow:hidden;
  margin-top:24px;
  border:1px solid var(--mbb-line);
  border-radius:var(--mbb-radius);
  background:#fff;
  box-shadow:var(--mbb-shadow);
}

.woocommerce-cart.mbb-modern-store table.shop_table{
  margin:0!important;
  border:0!important;
  border-collapse:separate!important;
  border-spacing:0;
  border-radius:0!important;
  background:#fff;
}

.woocommerce-cart.mbb-modern-store table.shop_table thead th{
  padding:17px 18px!important;
  border:0!important;
  border-bottom:1px solid var(--mbb-line)!important;
  background:#f2f8f5;
  color:#33463e;
  font-size:12px;
  font-weight:900!important;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.woocommerce-cart.mbb-modern-store table.shop_table td{
  padding:15px 18px!important;
  border:0!important;
  border-bottom:1px solid #edf1ef!important;
  vertical-align:middle!important;
}

.woocommerce-cart.mbb-modern-store td.product-thumbnail{width:96px}

.woocommerce-cart.mbb-modern-store td.product-thumbnail img{
  width:68px!important;
  height:78px!important;
  padding:5px;
  border:1px solid var(--mbb-line);
  border-radius:11px!important;
  background:#fff;
  object-fit:contain;
  box-shadow:0 5px 14px rgba(23,35,31,.08);
}

.woocommerce-cart.mbb-modern-store td.product-name a{
  color:var(--mbb-ink)!important;
  font-size:15px;
  font-weight:800;
  text-decoration:none!important;
}

.woocommerce-cart.mbb-modern-store td.product-name a:hover{color:var(--mbb-orange)!important}

.woocommerce-cart.mbb-modern-store a.remove{
  display:grid!important;
  place-items:center;
  width:30px!important;
  height:30px!important;
  border-radius:50%!important;
  background:#fff0ed!important;
  color:#d82d19!important;
  font-size:18px!important;
  line-height:1!important;
}

.woocommerce-cart.mbb-modern-store a.remove:hover{
  background:#d82d19!important;
  color:#fff!important;
}

.woocommerce-cart.mbb-modern-store .quantity .qty{
  width:70px!important;
  min-height:42px!important;
  padding:6px 9px!important;
  border:1px solid #ccd8d2!important;
  border-radius:9px!important;
  font-weight:800;
  text-align:center;
}

.woocommerce-cart.mbb-modern-store td.actions{
  padding:20px!important;
  background:#fbfdfc;
}

.woocommerce-cart.mbb-modern-store td.actions .coupon{
  display:flex;
  align-items:center;
  gap:10px;
  width:auto!important;
  padding:0!important;
  border:0!important;
}

.woocommerce-cart.mbb-modern-store td.actions .coupon input{
  width:170px!important;
  margin:0!important;
}

.woocommerce-cart.mbb-modern-store button[name="update_cart"]{
  min-width:170px;
}

.woocommerce-cart.mbb-modern-store .cart-collaterals{
  display:flex;
  justify-content:flex-end;
  margin-top:26px;
}

.woocommerce-cart.mbb-modern-store .cart_totals{
  float:none!important;
  width:min(100%,520px)!important;
  padding:24px;
  border:1px solid var(--mbb-line);
  border-radius:var(--mbb-radius);
  background:#fff;
  box-shadow:var(--mbb-shadow);
}

.woocommerce-cart.mbb-modern-store .cart_totals h2{
  margin:0 0 16px;
  color:var(--mbb-ink);
  font-size:24px;
  font-weight:850;
}

.woocommerce-cart.mbb-modern-store .wc-proceed-to-checkout a.checkout-button{
  display:flex!important;
  align-items:center;
  justify-content:center;
  min-height:52px;
  border-radius:12px!important;
  background:linear-gradient(135deg,var(--mbb-orange),#ff7044)!important;
  box-shadow:0 10px 24px rgba(255,81,47,.25);
  font-size:16px!important;
}

/* Checkout and notices */
.mbb-modern-store .woocommerce-message,
.mbb-modern-store .woocommerce-info,
.mbb-modern-store .woocommerce-error{
  padding:16px 18px 16px 52px!important;
  border:1px solid #dce8e2!important;
  border-top:0!important;
  border-radius:12px;
  background:#fff!important;
  box-shadow:0 7px 22px rgba(25,55,44,.07);
}

.woocommerce-checkout.mbb-modern-store form.checkout{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);
  gap:28px;
}

.woocommerce-checkout.mbb-modern-store #customer_details,
.woocommerce-checkout.mbb-modern-store #order_review{
  padding:24px;
  border:1px solid var(--mbb-line);
  border-radius:var(--mbb-radius);
  background:#fff;
  box-shadow:var(--mbb-shadow);
}

/* Single product */
.single-product.mbb-modern-store div.product{
  padding:24px;
  border:1px solid var(--mbb-line);
  border-radius:22px;
  background:#fff;
  box-shadow:var(--mbb-shadow);
}

.single-product.mbb-modern-store div.product .woocommerce-product-gallery img{
  border-radius:16px;
  background:#fafafa;
}

.single-product.mbb-modern-store div.product .summary .price{
  color:var(--mbb-green-dark)!important;
  font-size:26px!important;
  font-weight:900;
}

@media(max-width:1024px){
  .mbb-modern-store ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
  .woocommerce-checkout.mbb-modern-store form.checkout{grid-template-columns:1fr}
}

@media(max-width:760px){
  .mbb-modern-store .site-content,
  .mbb-modern-store main,
  .mbb-modern-store .content-area{padding-top:20px;padding-bottom:36px}
  .mbb-modern-store ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px!important}
  .mbb-modern-store ul.products li.product{padding:8px 8px 12px!important;border-radius:14px}
  .mbb-modern-store ul.products li.product .woocommerce-loop-product__title{font-size:14px!important}
  .woocommerce-cart.mbb-modern-store table.shop_table_responsive tr{padding:12px;border-bottom:10px solid #f5f8f6}
  .woocommerce-cart.mbb-modern-store table.shop_table_responsive td{padding:10px 12px!important}
  .woocommerce-cart.mbb-modern-store td.product-thumbnail{display:block!important;width:100%;text-align:center!important}
  .woocommerce-cart.mbb-modern-store td.product-thumbnail::before{display:none}
  .woocommerce-cart.mbb-modern-store td.product-thumbnail img{width:92px!important;height:108px!important}
  .woocommerce-cart.mbb-modern-store td.actions .coupon{display:grid;grid-template-columns:1fr auto;width:100%!important}
  .woocommerce-cart.mbb-modern-store td.actions .coupon input{width:100%!important}
  .woocommerce-cart.mbb-modern-store td.actions button[name="update_cart"]{width:100%;margin-top:10px}
  .woocommerce-cart.mbb-modern-store .cart_totals{padding:18px}
  .single-product.mbb-modern-store div.product{padding:14px;border-radius:16px}
}

@media(max-width:420px){
  .mbb-modern-store ul.products{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
  .mbb-modern-store *,
  .mbb-modern-store *::before,
  .mbb-modern-store *::after{scroll-behavior:auto!important;transition:none!important}
}

