
:root{
  --wine:#64162d; --wine2:#3f0d1d; --gold:#caa55b; --cream:#fbf6ef;
  --paper:#fffdfa; --ink:#24171b; --muted:#76656a; --line:#eadfd6; --green:#1f7a3d;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--cream);color:var(--ink)}
a{text-decoration:none;color:inherit}
.wrap{width:min(1180px,92%);margin:auto}
.top{background:var(--wine2);color:#fff5e6;text-align:center;padding:9px 12px;font-size:12px;letter-spacing:.11em}
nav{background:#fffaf5;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.logo{font-family:Georgia,serif;font-size:30px;font-weight:700;color:var(--wine)}
.logo small{display:block;font:700 9px Arial;letter-spacing:.28em;color:var(--gold);margin-top:4px}
.links{display:flex;gap:20px;align-items:center;font-size:13px;font-weight:700}
.b2b-nav,.back-btn{display:inline-block;border:0;background:var(--wine);color:#fff;padding:12px 17px;border-radius:999px;font-weight:800}

.hero{min-height:650px;display:flex;align-items:center;position:relative;overflow:hidden;color:#fff;
background:
radial-gradient(circle at 80% 43%,rgba(221,189,123,.22) 0 9%,transparent 9.5%),
radial-gradient(circle at 80% 43%,transparent 0 16%,rgba(218,184,109,.55) 16.5% 17.5%,transparent 18%),
radial-gradient(circle at 80% 43%,transparent 0 25%,rgba(218,184,109,.25) 25.5% 26.5%,transparent 27%),
linear-gradient(115deg,#350b19 0%,#63152d 55%,#8c3350 100%)}
.hero:after{content:"";position:absolute;width:370px;height:370px;border:2px solid #f4dba255;border-radius:50%;right:7%;top:140px;box-shadow:0 0 0 35px #e7c68014,0 0 0 72px #e7c6800a}
.content{position:relative;z-index:2;max-width:740px;padding:90px 0}
.eyebrow{font-size:12px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.hero .eyebrow{color:#f0d698}
h1,h2,h3{font-family:Georgia,serif;margin:0}
h1{font-size:clamp(50px,7vw,86px);line-height:.98;margin:13px 0 20px}
.hero p{max-width:650px;color:#f1dfe4;font-size:17px;line-height:1.7}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-block;padding:14px 22px;border-radius:999px;font-weight:800;font-size:14px}
.gold{background:var(--gold);color:#2f1720}
.outline{border:1px solid #f1d9df;color:#fff;background:transparent}

section{padding:82px 0}
.head{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:32px}
h2{font-size:clamp(38px,5vw,60px);line-height:1.03;margin-top:8px}
.sub{color:var(--muted);max-width:680px;line-height:1.7;margin-top:12px}

.trust{margin-top:-30px;position:relative;z-index:5}
.trustbox{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid #e6d6cb;border-radius:20px;box-shadow:0 16px 40px #4a172519;overflow:hidden}
.trustbox div{padding:22px;text-align:center;border-right:1px solid var(--line)}
.trustbox div:last-child{border-right:0}
.trustbox b{display:block;color:var(--wine);font-size:14px}
.trustbox span{font-size:12px;color:var(--muted)}

.grid5{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.cat{display:block;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden}
.art,.pimg{position:relative;background:linear-gradient(145deg,#f2dfcf,#c89768);overflow:hidden}
.art{height:210px}.pimg{height:270px}
.art:before,.art:after,.pimg:before,.pimg:after{content:"";position:absolute;border-radius:50%;left:50%;top:50%}
.art:before,.pimg:before{width:135px;height:135px;border:17px solid #c69842;transform:translate(-62%,-50%);box-shadow:0 0 0 7px #f2d58f inset}
.art:after,.pimg:after{width:135px;height:135px;border:17px solid #8f5528;transform:translate(-38%,-50%);box-shadow:0 0 0 7px #d9a658 inset}
.cat:nth-child(2) .art,.retail-card:nth-child(2) .pimg,.b2b-card:nth-child(2) .pimg{background:linear-gradient(145deg,#e8d4ad,#8f6236)}
.cat:nth-child(3) .art,.retail-card:nth-child(3) .pimg,.b2b-card:nth-child(3) .pimg{background:linear-gradient(145deg,#eee8ec,#9c8794)}
.cat:nth-child(4) .art,.retail-card:nth-child(4) .pimg,.b2b-card:nth-child(4) .pimg{background:linear-gradient(145deg,#f0ded8,#b46f68)}
.cat:nth-child(5) .art{background:linear-gradient(145deg,#dfe5da,#648064)}
.txt,.info{padding:17px}
.cat h3,.info h3{font-size:21px}
.cat p,.meta{font-size:12px;color:var(--muted);margin-top:5px}

.band{padding:23px 0;background:linear-gradient(90deg,var(--wine2),var(--wine));color:#efd39a;text-align:center;font-family:Georgia,serif;font-size:17px}
.products{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.retail-card,.b2b-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden}
.badge{position:absolute;left:13px;top:13px;background:var(--wine);color:#fff;border-radius:99px;padding:6px 9px;font-size:10px;font-weight:800}
.code{position:absolute;right:13px;top:13px;background:#fff;color:var(--wine);border-radius:99px;padding:6px 9px;font-size:10px;font-weight:800}
.price{font-weight:900;color:var(--wine);font-size:18px;margin-top:12px}
.price del{font-weight:400;color:#9f8d92;margin-left:7px;font-size:12px}
.actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.actions a{padding:11px;text-align:center;border-radius:11px;font-size:12px;font-weight:800}
.buy{background:var(--wine);color:#fff}
.wa{background:#eaf7ed;color:#18713a}

.dark{background:linear-gradient(135deg,#2e0715,#551126);color:#fff}
.dark .sub{color:#dbc8cd}
.story{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}
.visual{min-height:470px;border-radius:28px;background:radial-gradient(circle at center,transparent 0 22%,#c29645 22.5% 27%,transparent 27.5%),radial-gradient(circle at center,transparent 0 36%,#8d5b2c 36.5% 41%,transparent 41.5%),linear-gradient(145deg,#d6b18d,#6f2c3f)}

.reviewgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.review{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px}
.stars{color:var(--gold);letter-spacing:.15em}
.review p{color:var(--muted);line-height:1.7}
.review b{color:var(--wine)}

.details{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.detail{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px}
.detail h3{font-size:26px;color:var(--wine)}
.detail p{color:var(--muted);line-height:1.7}

/* B2B full-page view using CSS target — no JS */
#b2bView{display:none}
#b2bView:target{display:block}
#b2bView:target ~ #customerView{display:none}

.b2b-head{padding:34px 0;background:#f4eadf;border-bottom:1px solid var(--line)}
.b2b-head-row{display:flex;justify-content:space-between;align-items:center;gap:20px}
.b2b-head h2{font-size:38px;margin:0}
.b2b-head p{margin:8px 0 0;color:var(--muted)}
.b2b-hero{padding:76px 0;background:linear-gradient(115deg,#320a17,#6a1832);color:#fff}
.b2b-hero h1{font-size:clamp(46px,6vw,74px)}
.b2b-hero p{color:#ead8dd;max-width:690px;line-height:1.7}
.b2b-features,.process{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.tile{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px}
.tile h3{font-size:22px;color:var(--wine)}
.tile p{font-size:13px;color:var(--muted);line-height:1.6}
.icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#f3e5d6;color:var(--wine);font-weight:900;margin-bottom:14px}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}
.filter-btn{display:inline-block;border:1px solid var(--line);background:#fff;padding:10px 15px;border-radius:999px;font-weight:700;font-size:13px}
.b2b-products{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.wholesale{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.box{border:1px solid var(--line);border-radius:12px;padding:10px}
.box small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}
.box b{display:block;color:var(--wine);margin-top:3px;font-size:14px}
.b2b-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.b2b-actions a{padding:11px;text-align:center;border-radius:11px;font-size:12px;font-weight:800}
.enquire{background:var(--wine);color:#fff}
.call{background:#eaf7ed;color:#18713a}
.step .n{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--wine);color:#fff;font-weight:900;margin-bottom:14px}

footer{background:#211116;color:#bdaeb2;padding:55px 0 28px}
.foot{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:30px}
.foot h4{color:#fff;margin:0 0 14px}
.foot a{display:block;margin:8px 0;font-size:13px}
.copy{border-top:1px solid #ffffff12;margin-top:35px;padding-top:18px;font-size:12px;color:#8f7f84}

@media(max-width:950px){
 .links{display:none}.grid5{grid-template-columns:repeat(2,1fr)}.products{grid-template-columns:repeat(2,1fr)}
 .story{grid-template-columns:1fr}.reviewgrid{grid-template-columns:1fr}.details{grid-template-columns:1fr}
 .b2b-features,.process{grid-template-columns:repeat(2,1fr)}.b2b-products{grid-template-columns:repeat(2,1fr)}.foot{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
 section{padding:62px 0}.head{align-items:flex-start;flex-direction:column}.hero{min-height:600px}.hero:after{right:-170px}
 .trustbox{grid-template-columns:1fr}.grid5{grid-template-columns:1fr 1fr}.products,.b2b-products,.b2b-features,.process{grid-template-columns:1fr}
 .pimg{height:300px}.b2b-head-row{align-items:flex-start;flex-direction:column}.foot{grid-template-columns:1fr 1fr}
}

.cart-toggle{
  position:fixed;right:18px;bottom:18px;z-index:90;
  background:var(--wine);color:#fff;border:0;border-radius:999px;
  padding:13px 18px;font-weight:800;box-shadow:0 14px 35px #0002;cursor:pointer
}
.cart-toggle span{
  display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;
  border-radius:999px;background:var(--gold);color:#2f1720;margin-left:6px;font-size:11px
}
.cart-drawer{
  position:fixed;top:0;right:-420px;width:min(390px,92vw);height:100vh;z-index:120;
  background:#fff;box-shadow:-20px 0 60px #0003;transition:right .25s ease;
  display:flex;flex-direction:column
}
.cart-drawer.open{right:0}
.cart-head{
  padding:20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center
}
.cart-head h3{font-size:28px;color:var(--wine)}
.cart-close{border:0;background:#f1e6e1;color:var(--wine);width:36px;height:36px;border-radius:50%;font-weight:900;cursor:pointer}
.cart-items{padding:16px;overflow:auto;flex:1}
.cart-empty{color:var(--muted);text-align:center;padding:40px 12px}
.cart-item{border:1px solid var(--line);border-radius:15px;padding:14px;margin-bottom:12px}
.cart-item-top{display:flex;justify-content:space-between;gap:12px}
.cart-item h4{margin:0;color:var(--wine);font-size:15px}
.cart-item small{color:var(--muted)}
.qty-row{display:flex;align-items:center;justify-content:space-between;margin-top:12px}
.qty-controls{display:flex;align-items:center;gap:8px}
.qty-controls button{width:30px;height:30px;border:1px solid var(--line);background:#fff;border-radius:8px;cursor:pointer;font-weight:800}
.remove-btn{border:0;background:none;color:#a13b53;font-size:12px;cursor:pointer}
.cart-foot{padding:18px;border-top:1px solid var(--line)}
.cart-total{display:flex;justify-content:space-between;font-weight:900;color:var(--wine);font-size:18px;margin-bottom:12px}
.checkout-btn{display:block;width:100%;text-align:center;background:#25d366;color:#fff;border-radius:12px;padding:13px;font-weight:900}
.add-cart{
  background:var(--gold);color:#2f1720;border:0;border-radius:11px;padding:11px;
  text-align:center;font-size:12px;font-weight:800;cursor:pointer
}
.actions.customer-actions{grid-template-columns:1fr 1fr 1fr}
@media(max-width:620px){
  .actions.customer-actions{grid-template-columns:1fr}
}


.float-whatsapp{
  position:fixed;
  right:20px;
  bottom:88px;
  z-index:140;
  display:flex;
  align-items:center;
  gap:9px;
  background:#25D366;
  color:#fff;
  padding:13px 17px;
  border-radius:999px;
  font-weight:800;
  font-size:13px;
  box-shadow:0 14px 35px rgba(0,0,0,.22);
  transition:.2s ease;
}
.float-whatsapp:hover{transform:translateY(-2px)}
.float-whatsapp .wa-dot{
  width:10px;height:10px;border-radius:50%;background:#fff;
  box-shadow:0 0 0 4px rgba(255,255,255,.18);
  animation:waDotPulse 1.8s ease-out infinite
}
.wa-greeting{position:fixed;right:20px;bottom:145px;z-index:139;display:grid;gap:2px;min-width:164px;padding:11px 15px;border:1px solid #dce9e3;border-radius:15px 15px 4px 15px;background:#fff;color:#124b3f;box-shadow:0 12px 30px rgba(0,0,0,.16);pointer-events:none;transform-origin:bottom right;animation:waGreeting 8s ease-in-out infinite}
.wa-greeting strong{font-size:13px;line-height:1.25}.wa-greeting span{font-size:12px;color:#52645f}.wa-greeting:after{content:"";position:absolute;right:15px;bottom:-7px;width:14px;height:14px;background:#fff;border-right:1px solid #dce9e3;border-bottom:1px solid #dce9e3;transform:rotate(45deg)}
@keyframes waGreeting{0%,8%{opacity:0;transform:translateY(10px) scale(.94)}15%,65%{opacity:1;transform:translateY(0) scale(1)}78%,100%{opacity:0;transform:translateY(7px) scale(.97)}}
@keyframes waDotPulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.55)}70%,100%{box-shadow:0 0 0 9px rgba(255,255,255,0)}}
@media(max-width:620px){
  .float-whatsapp{right:14px;bottom:86px;padding:12px 15px;font-size:12px}
  .wa-greeting{right:14px;bottom:140px;min-width:150px;padding:10px 13px}
}



/* CATEGORY PRODUCT PANEL */
.cat{cursor:pointer}
.cat.active-category{outline:3px solid rgba(202,165,91,.55);transform:translateY(-2px)}
.category-products-wrap{margin-top:30px}
.category-panel{display:none}
.category-panel.active{display:block}
.category-panel-head{
  display:flex;justify-content:space-between;align-items:end;gap:18px;
  margin-bottom:20px;padding-top:4px
}
.category-panel-head h3{font-size:34px;color:var(--wine)}
.category-panel-head p{color:var(--muted);margin:6px 0 0}
.category-product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.category-product{
  background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;
  box-shadow:0 10px 28px rgba(61,23,35,.06)
}
.category-product .cp-img{
  height:230px;background:#ead7c4 center/cover no-repeat;position:relative
}
.category-product .cp-body{padding:16px}
.category-product h4{font:700 20px Georgia,serif;margin:0;color:var(--ink)}
.category-product .cp-code{font-size:11px;color:var(--muted);margin-top:5px}
.category-product .cp-price{font-weight:900;color:var(--wine);margin-top:10px}
.category-product .add-cart{
  width:100%;margin-top:12px;border:0;border-radius:11px;padding:11px 12px;
  background:var(--wine);color:#fff;font-weight:800;cursor:pointer
}
.category-product .add-cart:hover{background:var(--wine2)}

@media(max-width:950px){.category-product-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){
  .category-product-grid{grid-template-columns:1fr 1fr}
  .category-product .cp-img{height:180px}
  .category-panel-head{align-items:flex-start;flex-direction:column}
}


.category-target-section{
  scroll-margin-top:95px;
  padding:26px 0 0;
}
.category-target-section:target{
  animation:categoryFlash .45s ease;
}
@keyframes categoryFlash{
  from{transform:translateY(8px);opacity:.65}
  to{transform:none;opacity:1}
}


/* B2B ORDER CONTROLS */
.b2b-order-controls{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:14px;
}
.b2b-order-controls label{
  display:block;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--muted);
  margin-bottom:5px;
  font-weight:700;
}
.b2b-select,.b2b-qty{
  width:100%;
  border:1px solid var(--line);
  border-radius:11px;
  padding:11px 12px;
  background:#fff;
  color:var(--ink);
  outline:none;
}
.b2b-quote-btn{
  display:block;
  width:100%;
  margin-top:10px;
  padding:12px;
  border:0;
  border-radius:11px;
  background:var(--wine);
  color:#fff;
  font-weight:800;
  cursor:pointer;
}
.b2b-quote-btn:hover{background:var(--wine2)}
@media(max-width:620px){
  .b2b-order-controls{grid-template-columns:1fr 1fr}
}


.b2b-quote-btn{
  display:block;
  text-align:center;
  text-decoration:none;
}


/* Product image files are independent. Replace any file in assets/products using the same filename. */
.retail-card .pimg:before,.retail-card .pimg:after,
.b2b-card .pimg:before,.b2b-card .pimg:after{display:none!important}
.category-product .cp-img{background-size:cover;background-position:center;background-repeat:no-repeat}



/* HERO RESTORED TO ORIGINAL CLEAN GRADIENT */
.hero{
  background:
  radial-gradient(circle at 80% 43%,rgba(221,189,123,.22) 0 9%,transparent 9.5%),
  radial-gradient(circle at 80% 43%,transparent 0 16%,rgba(218,184,109,.55) 16.5% 17.5%,transparent 18%),
  radial-gradient(circle at 80% 43%,transparent 0 25%,rgba(218,184,109,.25) 25.5% 26.5%,transparent 27%),
  linear-gradient(115deg,#350b19 0%,#63152d 55%,#8c3350 100%)!important;
}

/* CATEGORY CARD IMAGES — all separate and replaceable */
.grid5 .cat:nth-child(1) .art{background:url('../assets/products/category_bridal.webp') center/cover no-repeat!important}
.grid5 .cat:nth-child(2) .art{background:url('../assets/products/category_kundan.webp') center/cover no-repeat!important}
.grid5 .cat:nth-child(3) .art{background:url('../assets/products/category_ad.webp') center/cover no-repeat!important}
.grid5 .cat:nth-child(4) .art{background:url('../assets/products/category_heritage.webp') center/cover no-repeat!important}
.grid5 .cat:nth-child(5) .art{background:url('../assets/products/category_everyday.webp') center/cover no-repeat!important}
.grid5 .cat .art:before,.grid5 .cat .art:after{display:none!important}

/* LUXURY SECTION — dedicated replaceable background */
.dark{
  position:relative;
  background:
    linear-gradient(110deg,rgba(35,5,17,.94),rgba(69,13,35,.68)),
    url('../assets/products/luxury_background.webp') center/cover no-repeat!important;
}
.dark .story{position:relative;z-index:2}
.dark .visual{
  background:
    linear-gradient(rgba(30,5,16,.10),rgba(30,5,16,.10)),
    url('../assets/products/luxury_background.webp') center/cover no-repeat!important;
  box-shadow:0 25px 65px rgba(0,0,0,.30);
}


/* V4 - separate approved images for Find Your Signature Style */
.grid5 .cat:nth-child(1) .art{background:url('../assets/products/category_bridal.webp') center/cover no-repeat!important}
.grid5 .cat:nth-child(2) .art{background:url('../assets/products/category_kundan.webp') center/cover no-repeat!important}
.grid5 .cat:nth-child(3) .art{background:url('../assets/products/category_ad.webp') center/cover no-repeat!important}
.grid5 .cat:nth-child(4) .art{background:url('../assets/products/category_heritage.webp') center/cover no-repeat!important}
.grid5 .cat:nth-child(5) .art{background:url('../assets/products/category_everyday.webp') center/cover no-repeat!important}
.grid5 .cat .art:before,.grid5 .cat .art:after{display:none!important}


/* V7 trust icons */
.trustbox>div{position:relative;padding-left:48px}
.trust-icon{
  position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:36px;height:36px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:rgba(176,126,45,.10);border:1px solid rgba(176,126,45,.28);
}
.trust-icon svg{width:19px;height:19px;fill:none;stroke:#a8752c;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.trust-icon svg path:first-child{fill:none}


/* V8 trust icon alignment fix */
.trustbox>div{
  position:relative!important;
  padding:20px 18px!important;
  display:grid!important;
  grid-template-columns:42px 1fr!important;
  grid-template-rows:auto auto!important;
  column-gap:12px!important;
  row-gap:3px!important;
  align-items:center!important;
  text-align:left!important;
}
.trust-icon{
  position:static!important;
  transform:none!important;
  grid-column:1!important;
  grid-row:1 / span 2!important;
  width:40px!important;
  height:40px!important;
  border-radius:50%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  background:rgba(176,126,45,.10)!important;
  border:1px solid rgba(176,126,45,.28)!important;
}
.trust-icon svg{
  width:20px!important;
  height:20px!important;
  flex:0 0 20px!important;
  fill:none!important;
  stroke:#a8752c!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.trustbox>div>b{
  grid-column:2!important;
  grid-row:1!important;
  margin:0!important;
  line-height:1.2!important;
  display:block!important;
}
.trustbox>div>span:not(.trust-icon){
  grid-column:2!important;
  grid-row:2!important;
  margin:0!important;
  line-height:1.35!important;
  display:block!important;
}
@media(max-width:620px){
  .trustbox>div{
    grid-template-columns:38px 1fr!important;
    column-gap:10px!important;
    padding:18px 16px!important;
  }
  .trust-icon{
    width:36px!important;
    height:36px!important;
  }
  .trust-icon svg{
    width:18px!important;
    height:18px!important;
  }
}


/* V9 product image hover animations */
.retail-card .pimg,
.b2b-card .pimg,
.category-product .cp-img,
.grid5 .cat .art{
  overflow:hidden!important;
  transform:translateZ(0);
  transition:transform .45s cubic-bezier(.2,.7,.2,1),
             filter .45s ease,
             box-shadow .45s ease!important;
  will-change:transform;
}
.retail-card:hover .pimg,
.b2b-card:hover .pimg,
.category-product:hover .cp-img,
.grid5 .cat:hover .art{
  transform:scale(1.055)!important;
  filter:brightness(1.04) contrast(1.03)!important;
  box-shadow:0 18px 38px rgba(61,23,35,.16)!important;
}
.retail-card,
.b2b-card,
.category-product,
.grid5 .cat{
  overflow:hidden;
}
@media (hover:none){
  .retail-card:hover .pimg,
  .b2b-card:hover .pimg,
  .category-product:hover .cp-img,
  .grid5 .cat:hover .art{
    transform:none!important;
    filter:none!important;
    box-shadow:none!important;
  }
}


/* V10 desktop hover + mobile touch animation */
@media (hover:hover) and (pointer:fine){
  .retail-card:hover .pimg,
  .b2b-card:hover .pimg,
  .category-product:hover .cp-img,
  .grid5 .cat:hover .art{
    transform:scale(1.055)!important;
    filter:brightness(1.04) contrast(1.03)!important;
    box-shadow:0 18px 38px rgba(61,23,35,.16)!important;
  }
}
@media (hover:none), (pointer:coarse){
  .retail-card:active .pimg,
  .b2b-card:active .pimg,
  .category-product:active .cp-img,
  .grid5 .cat:active .art,
  .retail-card.touch-active .pimg,
  .b2b-card.touch-active .pimg,
  .category-product.touch-active .cp-img,
  .grid5 .cat.touch-active .art{
    transform:scale(1.055)!important;
    filter:brightness(1.05) contrast(1.04)!important;
    box-shadow:0 16px 34px rgba(61,23,35,.18)!important;
  }
}


/* V11 trust/premium icons centered on desktop + mobile */
.trustbox>div{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  gap:6px!important;
  padding:20px 14px!important;
  min-height:118px!important;
}
.trust-icon{
  position:static!important;
  transform:none!important;
  width:42px!important;
  height:42px!important;
  flex:0 0 42px!important;
  margin:0 auto 4px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.trust-icon svg{
  width:20px!important;
  height:20px!important;
  display:block!important;
  margin:auto!important;
}
.trustbox>div>b,
.trustbox>div>span:not(.trust-icon){
  display:block!important;
  width:100%!important;
  margin:0!important;
  text-align:center!important;
  line-height:1.3!important;
}
@media(max-width:620px){
  .trustbox>div{
    padding:17px 10px!important;
    min-height:112px!important;
    gap:5px!important;
  }
  .trust-icon{
    width:38px!important;
    height:38px!important;
    flex-basis:38px!important;
    margin:0 auto 3px!important;
  }
  .trust-icon svg{
    width:18px!important;
    height:18px!important;
  }
}


/* V12: icon beside heading, whole group centered */
.trustbox>div{
  display:grid!important;
  grid-template-columns:auto auto!important;
  grid-template-rows:auto auto!important;
  justify-content:center!important;
  align-items:center!important;
  column-gap:9px!important;
  row-gap:5px!important;
  text-align:center!important;
  padding:20px 14px!important;
  min-height:110px!important;
}
.trust-icon{
  position:static!important;
  transform:none!important;
  grid-column:1!important;
  grid-row:1!important;
  width:36px!important;
  height:36px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:none!important;
}
.trust-icon svg{
  width:18px!important;
  height:18px!important;
  display:block!important;
  margin:auto!important;
}
.trustbox>div>b{
  grid-column:2!important;
  grid-row:1!important;
  width:auto!important;
  margin:0!important;
  text-align:left!important;
  line-height:1.2!important;
  align-self:center!important;
}
.trustbox>div>span:not(.trust-icon){
  grid-column:1 / span 2!important;
  grid-row:2!important;
  width:100%!important;
  margin:0!important;
  text-align:center!important;
  line-height:1.35!important;
}
@media(max-width:620px){
  .trustbox>div{
    column-gap:7px!important;
    row-gap:4px!important;
    padding:17px 9px!important;
    min-height:105px!important;
  }
  .trust-icon{
    width:32px!important;
    height:32px!important;
  }
  .trust-icon svg{
    width:16px!important;
    height:16px!important;
  }
}


/* V13: icon left, heading + subheading left aligned, whole element centered */
.trustbox>div{
  display:grid!important;
  grid-template-columns:38px max-content!important;
  grid-template-rows:auto auto!important;
  justify-content:center!important;
  align-items:center!important;
  column-gap:10px!important;
  row-gap:2px!important;
  padding:20px 14px!important;
  min-height:105px!important;
  text-align:left!important;
}
.trust-icon{
  position:static!important;
  transform:none!important;
  grid-column:1!important;
  grid-row:1 / span 2!important;
  width:36px!important;
  height:36px!important;
  margin:0!important;
  align-self:center!important;
  justify-self:center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.trust-icon svg{
  width:18px!important;
  height:18px!important;
  display:block!important;
  margin:auto!important;
}
.trustbox>div>b{
  grid-column:2!important;
  grid-row:1!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
  justify-self:start!important;
  align-self:end!important;
  line-height:1.2!important;
}
.trustbox>div>span:not(.trust-icon){
  grid-column:2!important;
  grid-row:2!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
  justify-self:start!important;
  align-self:start!important;
  line-height:1.3!important;
}
@media(max-width:620px){
  .trustbox>div{
    grid-template-columns:34px max-content!important;
    column-gap:8px!important;
    padding:17px 8px!important;
    min-height:100px!important;
  }
  .trust-icon{
    width:32px!important;
    height:32px!important;
  }
  .trust-icon svg{
    width:16px!important;
    height:16px!important;
  }
}


/* V14: refined trust-item spacing */
.trustbox>div{
  column-gap:14px!important; /* more space between icon and text */
  row-gap:0!important;
}
.trustbox>div>b{
  line-height:1.08!important;
  margin:0 0 2px 0!important;
}
.trustbox>div>span:not(.trust-icon){
  line-height:1.12!important;
  margin:0!important;
}
@media(max-width:620px){
  .trustbox>div{
    column-gap:11px!important;
    row-gap:0!important;
  }
  .trustbox>div>b{
    line-height:1.08!important;
    margin-bottom:2px!important;
  }
  .trustbox>div>span:not(.trust-icon){
    line-height:1.12!important;
  }
}


/* V15: remove excess whitespace around trust items */
.trustbox{
  align-items:stretch!important;
}
.trustbox>div{
  grid-template-columns:34px max-content!important;
  column-gap:9px!important;
  row-gap:0!important;
  min-height:0!important;
  height:auto!important;
  padding:11px 10px!important;
  align-content:center!important;
  justify-content:center!important;
}
.trust-icon{
  width:30px!important;
  height:30px!important;
}
.trust-icon svg{
  width:15px!important;
  height:15px!important;
}
.trustbox>div>b{
  line-height:1!important;
  margin:0 0 1px 0!important;
  padding:0!important;
}
.trustbox>div>span:not(.trust-icon){
  line-height:1!important;
  margin:0!important;
  padding:0!important;
}
@media(max-width:620px){
  .trustbox>div{
    grid-template-columns:30px max-content!important;
    column-gap:7px!important;
    row-gap:0!important;
    min-height:0!important;
    height:auto!important;
    padding:9px 6px!important;
  }
  .trust-icon{
    width:28px!important;
    height:28px!important;
  }
  .trust-icon svg{
    width:14px!important;
    height:14px!important;
  }
  .trustbox>div>b,
  .trustbox>div>span:not(.trust-icon){
    line-height:1!important;
  }
}


/* V16: ultra-compact trust boxes */
.trustbox{
  margin-top:12px!important;
  gap:6px!important;
}
.trustbox>div{
  grid-template-columns:28px max-content!important;
  column-gap:6px!important;
  row-gap:0!important;
  min-height:0!important;
  height:auto!important;
  padding:5px 7px!important;
  margin:0!important;
  align-content:center!important;
  justify-content:center!important;
}
.trust-icon{
  width:25px!important;
  height:25px!important;
  margin:0!important;
}
.trust-icon svg{
  width:13px!important;
  height:13px!important;
}
.trustbox>div>b{
  margin:0!important;
  padding:0!important;
  line-height:.95!important;
}
.trustbox>div>span:not(.trust-icon){
  margin:0!important;
  padding:0!important;
  line-height:.95!important;
}
@media(max-width:620px){
  .trustbox{
    margin-top:9px!important;
    gap:5px!important;
  }
  .trustbox>div{
    grid-template-columns:26px max-content!important;
    column-gap:5px!important;
    padding:4px 5px!important;
    margin:0!important;
    min-height:0!important;
  }
  .trust-icon{
    width:23px!important;
    height:23px!important;
  }
  .trust-icon svg{
    width:12px!important;
    height:12px!important;
  }
}


/* V17: slightly more vertical breathing room */
.trustbox>div{
  padding-top:9px!important;
  padding-bottom:9px!important;
}
@media(max-width:620px){
  .trustbox>div{
    padding-top:7px!important;
    padding-bottom:7px!important;
  }
}


/* V18: balanced trust box sizing and spacing */
.trustbox{
  margin-top:14px!important;
  gap:7px!important;
}
.trustbox>div{
  grid-template-columns:38px max-content!important;
  column-gap:10px!important;
  row-gap:0!important;
  padding:13px 12px!important;
  margin:0!important;
  min-height:0!important;
  align-content:center!important;
  justify-content:center!important;
}
.trust-icon{
  width:36px!important;
  height:36px!important;
  margin:0!important;
}
.trust-icon svg{
  width:18px!important;
  height:18px!important;
}
.trustbox>div>b{
  margin:0 0 4px 0!important;
  padding:0!important;
  line-height:1.15!important;
}
.trustbox>div>span:not(.trust-icon){
  margin:0!important;
  padding:0!important;
  line-height:1.22!important;
}
@media(max-width:620px){
  .trustbox{
    margin-top:12px!important;
    gap:6px!important;
  }
  .trustbox>div{
    grid-template-columns:34px max-content!important;
    column-gap:8px!important;
    padding:11px 9px!important;
    margin:0!important;
  }
  .trust-icon{
    width:32px!important;
    height:32px!important;
  }
  .trust-icon svg{
    width:16px!important;
    height:16px!important;
  }
  .trustbox>div>b{
    margin-bottom:3px!important;
    line-height:1.14!important;
  }
  .trustbox>div>span:not(.trust-icon){
    line-height:1.2!important;
  }
}


/* V20: V18 layout + slightly more vertical margin/padding */
.trustbox{
  margin-top:18px!important;
  margin-bottom:18px!important;
}
.trustbox>div{
  padding-top:17px!important;
  padding-bottom:17px!important;
}
@media(max-width:620px){
  .trustbox{
    margin-top:15px!important;
    margin-bottom:15px!important;
  }
  .trustbox>div{
    padding-top:14px!important;
    padding-bottom:14px!important;
  }
}


/* V25 exact Qty -> MOQ sync */
.live-moq{display:inline-block;min-width:56px}
.b2b-quote-btn{display:block!important;text-align:center!important;text-decoration:none!important}


/* V26 B2B size dropdown */
.b2b-size-select{
  width:100%;
  border:0;
  outline:none;
  background:transparent;
  color:var(--ink);
  font:inherit;
  font-weight:700;
  cursor:pointer;
  padding:2px 18px 2px 0;
}
.b2b-size-box{
  min-width:0;
}


/* V30 B2B category filters remain inside B2B view */
.b2b-category-filters button.filter-btn{
  font:inherit;
  cursor:pointer;
}
.b2b-category-filters .filter-btn.active{
  background:var(--wine)!important;
  color:#fff!important;
  border-color:var(--wine)!important;
}
#b2bView .b2b-products{
  scroll-margin-top:90px;
}
.customer-size{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 10px;font-size:12px;font-weight:800;color:var(--wine)}
.customer-size select{min-width:105px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:8px 10px;color:var(--ink);font:inherit}
.slider-controls{display:flex;justify-content:flex-end;gap:8px;margin:-8px 0 12px}
.slider-controls button{width:42px;height:42px;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0!important;line-height:1!important;text-align:center;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--wine);font-family:Arial,sans-serif;font-size:20px;cursor:pointer;box-shadow:0 7px 20px #4a17251a}
.slider-controls button:hover{background:var(--wine);color:#fff}
.product-slider{display:grid!important;grid-auto-flow:column;grid-auto-columns:calc((100% - 60px)/4);grid-template-columns:none!important;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:10px}
.product-slider>*{scroll-snap-align:start;min-width:0}
#b2bView .b2b-products{display:block;grid-template-columns:none}
.b2b-category-group{width:100%;margin:0 0 44px}
.b2b-category-group .category-panel-head{margin-bottom:10px}
.b2b-category-slider{gap:20px}
#b2bView .b2b-category-slider.product-slider{display:flex!important;grid-template-columns:none!important;gap:20px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;width:100%;max-width:100%;padding:4px 2px 14px}
#b2bView .b2b-category-slider.product-slider .b2b-card{flex:0 0 calc((100% - 40px)/3);width:calc((100% - 40px)/3);min-width:0;max-width:none;scroll-snap-align:start}
#b2bView .b2b-category-slider .pimg{height:260px}
@media(max-width:900px){#b2bView .b2b-category-slider.product-slider .b2b-card{flex-basis:calc((100% - 20px)/2);width:calc((100% - 20px)/2)}}
@media(max-width:620px){#b2bView .b2b-category-slider.product-slider{gap:14px}#b2bView .b2b-category-slider.product-slider .b2b-card{flex-basis:86%;width:86%}#b2bView .b2b-category-slider .pimg{height:230px}}
.checkout-modal{position:fixed;inset:0;background:#140b0bcc;z-index:9999;display:none;align-items:center;justify-content:center;padding:18px}.checkout-modal.open{display:flex}.checkout-card{width:min(680px,100%);max-height:92vh;overflow:auto;background:#fffaf4;border-radius:22px;padding:26px;position:relative}.checkout-x{position:absolute;right:15px;top:12px;border:0;background:none;font-size:30px}.checkout-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.checkout-grid label{display:grid;gap:6px;font-size:12px;font-weight:700}.checkout-grid .wide{grid-column:1/-1}.checkout-grid input,.checkout-grid textarea{width:100%;padding:12px;border:1px solid #e5d5c8;border-radius:10px;font:inherit}.checkout-grid textarea{min-height:80px}.checkout-submit{width:100%;margin-top:16px;padding:14px;border:0;border-radius:12px;background:var(--wine);color:#fff;font-weight:800}.checkout-error{color:#a40000;margin-top:10px}.checkout-submit:disabled{opacity:.6}@media(max-width:620px){.checkout-grid{grid-template-columns:1fr}.checkout-grid .wide{grid-column:auto}.checkout-card{padding:22px 16px}}
@media(max-width:980px){.product-slider{grid-auto-columns:calc((100% - 20px)/2)}}
@media(max-width:620px){.product-slider{grid-auto-columns:84%;gap:14px}.slider-controls button{width:38px;height:38px;min-width:38px;min-height:38px;padding:0!important;line-height:1!important}}
.customer-account-float{position:fixed;right:20px;bottom:82px;z-index:9998;padding:11px 16px;border-radius:999px;background:#fff;color:#124b3f;border:1px solid #124b3f;box-shadow:0 8px 24px rgba(0,0,0,.15);font-size:13px;font-weight:900;text-decoration:none}@media(max-width:600px){.customer-account-float{right:12px;bottom:74px;padding:9px 12px}}
.account-nav-button{display:inline-flex!important;align-items:center;justify-content:center;padding:9px 14px!important;border-radius:999px!important;background:#124b3f!important;color:#fff!important;font-weight:900!important;text-decoration:none!important;white-space:nowrap}@media(max-width:760px){.account-nav-button{padding:8px 11px!important;font-size:12px!important}}
.nav-account-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
@media(max-width:760px){#customerView nav .wrap.nav{gap:8px}.nav-account-actions{gap:5px}.nav-account-actions .b2b-nav,.nav-account-actions .account-nav-button{display:inline-flex!important;align-items:center;justify-content:center;font-size:11px!important;padding:8px 9px!important;white-space:nowrap}.nav-account-actions .account-nav-button{background:#64162d!important}.logo{min-width:0;font-size:17px!important}.logo small{font-size:7px!important}}
.site-announcement{position:relative;display:flex;align-items:center;min-height:36px;overflow:hidden;background:#64162d;color:#fff;border-bottom:1px solid #c99a49}.site-announcement[hidden]{display:none}.announcement-track{flex:1;overflow:hidden;white-space:nowrap}.announcement-track span{display:inline-block;min-width:100%;padding:9px 52px 9px 100%;font-size:13px;font-weight:800;letter-spacing:.03em;text-align:center;animation:kashishAnnouncement 18s linear infinite}.site-announcement button{position:absolute;right:8px;top:50%;z-index:2;width:27px;height:27px;transform:translateY(-50%);border:1px solid #ffffff55;border-radius:50%;background:#fff;color:#64162d;font-size:19px;line-height:22px;cursor:pointer}@keyframes kashishAnnouncement{0%{transform:translateX(35%)}100%{transform:translateX(-100%)}}@media(max-width:760px){.announcement-track span{padding-left:80%;font-size:12px;animation-duration:14s}}
.b2b-head-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.b2b-account-link{display:inline-flex;align-items:center;padding:10px 14px;border-radius:999px;background:#fff;color:#64162d;text-decoration:none;font-size:12px;font-weight:900;border:1px solid #e0cdbf}@media(max-width:650px){.b2b-head-row{align-items:flex-start!important}.b2b-head-actions{justify-content:flex-end}.b2b-account-link,.back-btn{font-size:10px!important;padding:8px 9px!important}}
.product-colours{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:11px 0}.product-colours-label{width:100%;font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.colour-swatch{position:relative;width:30px;height:30px;padding:0;border:2px solid #fff;border-radius:50%;background:var(--swatch,#caa55b);box-shadow:0 0 0 1px #d9c9bc;cursor:pointer}.colour-swatch.active{box-shadow:0 0 0 2px var(--wine),0 4px 10px #0002;transform:scale(1.06)}.colour-swatch span{position:absolute;left:50%;bottom:calc(100% + 7px);z-index:5;padding:4px 7px;border-radius:5px;background:#1f1a18;color:#fff;font-size:10px;white-space:nowrap;opacity:0;pointer-events:none;transform:translate(-50%,4px);transition:.15s}.colour-swatch:hover span,.colour-swatch:focus-visible span{opacity:1;transform:translate(-50%,0)}
.nav-account-actions .b2b-nav{position:relative;background:linear-gradient(135deg,#8b1538,#c48b34)!important;color:#fff!important;border:2px solid #f0cf83!important;box-shadow:0 7px 20px rgba(100,22,45,.32),0 0 0 3px rgba(240,207,131,.18)!important;text-transform:uppercase;letter-spacing:.07em;animation:wholesaleGlow 2.2s ease-in-out infinite}.nav-account-actions .b2b-nav:before{content:'★';margin-right:6px;color:#ffe4a3}@keyframes wholesaleGlow{0%,100%{transform:translateY(0);box-shadow:0 7px 20px rgba(100,22,45,.3),0 0 0 3px rgba(240,207,131,.15)}50%{transform:translateY(-2px);box-shadow:0 10px 26px rgba(139,21,56,.42),0 0 0 5px rgba(240,207,131,.22)}}@media(prefers-reduced-motion:reduce){.nav-account-actions .b2b-nav{animation:none}}
/* V58 catalogue controls */
.catalog-tools{max-width:1180px;margin:0 auto 24px;display:grid;grid-template-columns:minmax(220px,1fr) 220px;gap:12px}.catalog-tools input,.catalog-tools select,.product-info-btn{font:inherit;border:1px solid #dbcdbf;border-radius:12px;background:#fff;padding:12px}.product-info-btn{width:100%;margin:10px 0;color:#0f4a3d;font-weight:700;cursor:pointer}@media(max-width:640px){.catalog-tools{grid-template-columns:1fr;padding:0 16px}}
