/* MeharJi World premium product page — scoped only to single product pages */
body.single-product{--mjw-wine:#6f263d;--mjw-gold:#b58b4a;--mjw-cream:#f7f2e9;--mjw-line:#e8dfd3}
body.single-product div.product{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:clamp(28px,4vw,64px);align-items:start;padding:38px 0 64px}
body.single-product div.product:before,body.single-product div.product:after{display:none!important}
body.single-product div.product .woocommerce-product-gallery{float:none!important;width:100%!important;margin:0!important;min-width:0}
body.single-product .woocommerce-product-gallery__wrapper{background:#faf7f2}
body.single-product .woocommerce-product-gallery__image img{display:block;width:100%;height:auto;object-fit:contain}
body.single-product .flex-control-thumbs{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:12px 0 0!important;padding:0!important}
body.single-product .flex-control-thumbs li{float:none!important;width:100%!important;margin:0!important}
body.single-product .flex-control-thumbs img{width:100%;border:1px solid var(--mjw-line);opacity:.8}
body.single-product .flex-control-thumbs img.flex-active{border-color:var(--mjw-wine);opacity:1}
body.single-product div.product .summary{float:none!important;width:100%!important;margin:0!important;min-width:0}
body.single-product .product_title{color:#291f1c;font:600 clamp(27px,3vw,39px)/1.18 'Playfair Display',Georgia,serif;margin:0 0 12px}
body.single-product .woocommerce-product-rating{margin:0 0 15px;font-size:13px}
body.single-product .star-rating{color:var(--mjw-gold)}
body.single-product .summary p.price,body.single-product .summary span.price{color:var(--mjw-wine)!important;font-size:25px!important;font-weight:700;margin:12px 0 18px!important}
body.single-product .summary p.price del,body.single-product .summary span.price del{color:#9a918a!important;font-size:16px;font-weight:400}
body.single-product .summary p.price ins,body.single-product .summary span.price ins{text-decoration:none}
body.single-product .summary .stock{color:#3f7651;font-size:13px;font-weight:600}
body.single-product .summary .woocommerce-product-details__short-description{color:#655b54;line-height:1.8;margin:18px 0}
body.single-product .summary form.cart{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:22px 0 16px!important}
body.single-product .summary form.cart .variations{width:100%;margin:0 0 8px;border:0}
body.single-product .summary form.cart .variations th,body.single-product .summary form.cart .variations td{display:block;width:100%;text-align:left;padding:5px 0;background:transparent}
body.single-product .summary form.cart .variations label{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
body.single-product .summary form.cart .variations select,body.single-product .summary form.cart input.qty{min-height:46px;border:1px solid #d9cfc3;border-radius:2px;background:#fffdf9;padding:9px 12px;font:inherit}
body.single-product .summary form.cart .variations select{width:100%}
body.single-product .summary form.cart .reset_variations{color:var(--mjw-wine);font-size:12px}
body.single-product .summary form.cart .quantity input.qty{width:76px;min-height:48px}
body.single-product .summary form.cart .single_add_to_cart_button{min-height:49px;padding:13px 26px!important;border:1px solid var(--mjw-wine)!important;border-radius:2px!important;background:var(--mjw-wine)!important;color:#fff!important;font:700 12px/1.2 'DM Sans',sans-serif!important;letter-spacing:.09em;text-transform:uppercase}
body.single-product .summary form.cart .single_add_to_cart_button:hover{background:#501126!important}
body.single-product .mjw-product-assurance{display:grid;gap:9px;margin:18px 0 22px;padding:16px 18px;background:var(--mjw-cream);border:1px solid var(--mjw-line);color:#5e5149;font-size:12px}
body.single-product .mjw-product-assurance span{display:flex;gap:9px;align-items:center}
body.single-product .mjw-product-assurance b{color:var(--mjw-wine)}
body.single-product .product_meta{border-top:1px solid var(--mjw-line);padding-top:14px;color:#766b63;font-size:12px}
body.single-product .product_meta a{color:var(--mjw-wine)}
body.single-product .woocommerce-tabs{clear:both;margin:10px 0 55px;padding-top:24px;border-top:1px solid var(--mjw-line)}
body.single-product .woocommerce-tabs ul.tabs{padding:0!important;margin:0 0 20px!important}
body.single-product .woocommerce-tabs ul.tabs:before,body.single-product .woocommerce-tabs ul.tabs li:before,body.single-product .woocommerce-tabs ul.tabs li:after{display:none!important}
body.single-product .woocommerce-tabs ul.tabs li{border:0!important;border-bottom:2px solid transparent!important;border-radius:0!important;background:transparent!important;margin:0 22px 0 0!important;padding:0 0 10px!important}
body.single-product .woocommerce-tabs ul.tabs li.active{border-bottom-color:var(--mjw-wine)!important}
body.single-product .woocommerce-tabs ul.tabs li a{color:#392e29!important;font-weight:600!important}
body.single-product .related,body.single-product .upsells{clear:both;margin-top:45px}
body.single-product .related>h2,body.single-product .upsells>h2{color:var(--mjw-wine);font:600 clamp(26px,3vw,36px)/1.2 'Playfair Display',Georgia,serif;margin-bottom:24px}
body.single-product .related ul.products,body.single-product .upsells ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:22px 16px!important}
body.single-product .related ul.products li.product,body.single-product .upsells ul.products li.product{width:auto!important;margin:0!important}
body.single-product .related ul.products li.product img,body.single-product .upsells ul.products li.product img{width:100%;aspect-ratio:4/5;object-fit:cover}
@media(max-width:900px){body.single-product div.product{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}body.single-product .related ul.products,body.single-product .upsells ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:700px){body.single-product main .wrap{width:min(100% - 28px,1320px)}body.single-product div.product{display:flex;flex-direction:column;gap:22px;padding:22px 0 40px}body.single-product div.product .woocommerce-product-gallery,body.single-product div.product .summary{width:100%!important}body.single-product .product_title{font-size:27px}body.single-product .summary p.price,body.single-product .summary span.price{font-size:23px!important}body.single-product .flex-control-thumbs{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}body.single-product .summary form.cart .single_add_to_cart_button{flex:1 1 180px;min-height:50px}body.single-product .woocommerce-tabs{margin-bottom:35px}body.single-product .woocommerce-tabs ul.tabs{display:flex;flex-wrap:wrap;gap:8px 15px}body.single-product .woocommerce-tabs ul.tabs li{margin:0!important}body.single-product .related ul.products,body.single-product .upsells ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px 10px!important}}


/* Desktop correction: product tabs and related products must sit below
   the gallery/details row and use the full content width. */
body.single-product div.product > .woocommerce-tabs,
body.single-product div.product > .related,
body.single-product div.product > .upsells {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  float: none !important;
  clear: both !important;
}
body.single-product .flex-control-thumbs img {
  opacity: 1 !important;
}
body.single-product .flex-control-thumbs img:not(.flex-active) {
  opacity: .9 !important;
}

/* Premium button wording presentation */
body.single-product .summary form.cart .single_add_to_cart_button,
body.single-product .related ul.products li.product a.button,
body.single-product .upsells ul.products li.product a.button {
  letter-spacing: .07em;
  font-weight: 700;
  text-transform: uppercase;
}
body.single-product .related ul.products li.product a.button,
body.single-product .upsells ul.products li.product a.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 18px !important;
  background: #6f263d !important;
  color: #fff !important;
  border: 1px solid #6f263d !important;
  border-radius: 2px !important;
  font-size: 11px !important;
}
