:root{
  --brown:#6F4223;
  --brown-dark:#54301A;
  --off-white:#FAF8F5;
  --white:#FFFFFF;
  --beige:#EDE8E3;
  --brown-tint:#F1E6DA;
  --ink:#241B14;
  --ink-soft:#6b6058;
  --line:#E7E1D9;
  --dark:#1C1C1C;
  --serif:'Fraunces', serif;
  --sans:'Manrope', sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:var(--sans);
  color:var(--ink);
  background:var(--white);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block;}
a{text-decoration:none;color:inherit;}
button{font-family:var(--sans);cursor:pointer;border:none;}
ul{list-style:none;}
.container{width:100%;max-width:1440px;margin:0 auto;padding:0 32px;}
h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:-0.01em;}

@media (prefers-reduced-motion: reduce){
  *{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important;}
}

/* ---------- reveal on scroll ---------- */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease, transform .8s ease;}
.reveal.in{opacity:1;transform:translateY(0);}
.reveal-stagger > *{opacity:0;transform:translateY(24px);transition:opacity .7s ease, transform .7s ease;}
.reveal-stagger.in > *{opacity:1;transform:translateY(0);}
.reveal-stagger.in > *:nth-child(1){transition-delay:.05s;}
.reveal-stagger.in > *:nth-child(2){transition-delay:.15s;}
.reveal-stagger.in > *:nth-child(3){transition-delay:.25s;}
.reveal-stagger.in > *:nth-child(4){transition-delay:.35s;}

/* ---------- announcement bar ---------- */
.announce{
  background:var(--brown);
  color:var(--off-white);
  text-align:center;
  font-size:12.5px;
  letter-spacing:.03em;
  padding:9px 20px;
  font-weight:500;
  white-space:nowrap;
  overflow:hidden;
  position:relative;
}
.announce span{display:inline-block;padding-left:100%;animation:marquee 22s linear infinite;}
@keyframes marquee{ to { transform: translateX(-100%);} }

/* ---------- header ---------- */
header.site{
  position:sticky;top:0;z-index:100;
  background:rgba(250,248,245,0.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.nav-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 36px;
  max-width: 100%;
  margin: 0 auto;
  transition: padding .35s ease;
  box-sizing: border-box;
}
.logo {
  display: flex;
  align-items: center;
  width: auto;
  max-width: 170px;
  height: 68px;
  margin-right: 15px;
  flex-shrink: 0;
  transition: all .35s ease;
}
.logo img {
  width: auto;
  height: 100%;
  max-height: 68px;
  object-fit: contain;
  object-position: left center;
}
.nav-links{display:flex;gap:34px;}
.nav-links a{
  font-size:13.5px;font-weight:500;letter-spacing:.03em;text-transform:uppercase;
  color:var(--ink);position:relative;padding-bottom:4px;
  transition:color .25s ease;
}
.nav-links a::after{
  content:'';position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--brown);
  transition:width .3s ease;
}
.nav-links a:hover{color:var(--brown-dark);}
.nav-links a:hover::after{width:100%;}
.nav-icons {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
  margin-left: 12px;
}
.nav-icons button{background:none;color:var(--ink);display:flex;align-items:center;transition:color .25s ease, transform .25s ease;}
.nav-icons button:hover{color:var(--brown);transform:translateY(-1px);}
.cart-badge{
  position:relative;cursor:pointer;
}
.cart-badge .cart-count{
  position:absolute;top:-7px;right:-9px;
  background:var(--brown);color:#fff;font-size:9px;font-weight:700;
  width:15px;height:15px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
}
.menu-toggle{display:none;background:none;color:var(--ink);}
.nav-icons button{padding:0;background:none;display:flex;align-items:center;justify-content:center;}
.nav-icons .icon-pill {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1px solid rgba(111, 66, 35, 0.12);
  background: rgba(255, 255, 255, 0.5);
  transition: all .25s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}
.nav-icons .icon-pill svg {
  width: 16px;
  height: 16px;
}
header.site.is-scrolled .nav-row{padding-top:5px;padding-bottom:5px;}
header.site.is-scrolled .logo{width:178px;height:55px;}
header.site.is-scrolled .nav-icons .icon-pill{width:28px;height:28px;}

/* ---------- hero ---------- */
.hero{
  position:relative;
  background:var(--off-white);
  overflow:hidden;
}
.hero-track{
  display:flex;
  transition:transform .9s cubic-bezier(.65,0,.35,1);
  will-change:transform;
}
.hero-slide{
  min-width:100%;
  position:relative;
  min-height:510px;
  background-size:cover;
  background-position:center;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  padding:0 70px;
}
.hero-slide::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(28,20,14,0.56) 0%, rgba(28,20,14,0.32) 34%, rgba(28,20,14,0.12) 100%);
}
.hero-slide-1{background-image:url('https://images.unsplash.com/photo-1522335789203-aabd1fc54bc9?q=80&w=1600&auto=format&fit=crop');}
.hero-slide-2{background-image:url('https://images.unsplash.com/photo-1515377905703-c4788e51af15?q=80&w=1600&auto=format&fit=crop');}
.hero-slide-3{background-image:url('https://images.unsplash.com/photo-1524504388940-b1c1722653e1?q=80&w=1600&auto=format&fit=crop');}
.hero-copy{
  position:relative;
  z-index:1;
  width:min(42%, 520px);
  padding:42px 40px;
  border-radius:24px;
  background:rgba(255,255,255,0.05);
  backdrop-filter:blur(6px);
  border:1px solid rgba(255,255,255,0.18);
  box-shadow:0 30px 50px -28px rgba(0,0,0,0.42);
  margin-left:42px;
}
.hero-copy .eyebrow{
  font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#FFDCC0;
  font-weight:600;margin-bottom:20px;display:block;
}
.hero-copy h1{
  font-size:clamp(34px,3.7vw,58px);
  line-height:0.98;
  color:#fff;
  max-width:620px;
  margin-bottom:22px;
}
.hero-copy h1 em{font-style:italic;color:#F4E9DE;}
.hero-copy p{
  font-size:16.5px;line-height:1.7;color:rgba(255,255,255,0.82);max-width:420px;margin-bottom:34px;
}
.btn-primary{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--brown);color:#fff;
  padding:16px 34px;font-size:13.5px;font-weight:600;
  letter-spacing:.06em;text-transform:uppercase;
  border-radius:2px;
  transition:background .3s ease, transform .3s ease, box-shadow .3s ease;
  box-shadow:0 8px 20px -8px rgba(111,66,35,.5);
}
.btn-primary:hover{background:var(--brown-dark);transform:translateY(-2px);box-shadow:0 12px 24px -8px rgba(111,66,35,.6);}
.btn-primary svg{transition:transform .3s ease;}
.btn-primary:hover svg{transform:translateX(4px);}
.btn-outline{
  display:inline-flex;align-items:center;gap:10px;
  background:transparent;color:var(--brown-dark);border:1px solid var(--brown-dark) !important;
  padding:15px 32px;font-size:13.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
  border-radius:2px;transition:all .3s ease;
}
.btn-outline:hover{background:var(--brown-dark);color:#fff;}

.hero-dots{display:none;}
.hero-arrows{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:calc(100% - 60px);display:flex;justify-content:space-between;z-index:5;
}
.hero-arrows button{
  width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,0.35) !important;
  background:rgba(255,255,255,0.12);display:flex;align-items:center;justify-content:center;color:#fff;
  transition:background .25s ease,color .25s ease, transform .2s ease;
}
.hero-arrows button:hover{background:#fff;color:var(--brown-dark);transform:scale(1.06);}

/* ---------- section heading ---------- */
.section{padding:100px 0;}
.section-head{
  display:flex;align-items:flex-end;justify-content:space-between;
  margin-bottom:52px;flex-wrap:wrap;gap:16px;
}
.section-head .tag{
  font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--brown);font-weight:600;margin-bottom:14px;display:block;
}
.section-head h2{font-size:clamp(28px,3vw,40px);color:var(--ink);}
.section-head .desc{font-size:14.5px;color:var(--ink-soft);max-width:320px;text-align:right;}
.center-head{text-align:center;}
.center-head .desc{margin:0 auto;text-align:center;}

/* ---------- product cards ---------- */
.product-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:24px;
}
#bestsellers{background:radial-gradient(circle at 92% 8%, rgba(238,215,195,.42), transparent 30%),linear-gradient(180deg, #fff 0%, #fbf7f3 100%);}
#new-launches{background:linear-gradient(135deg, #f8f1eb 0%, #fff 52%, #f1e5da 100%);}
.product-card{
  background:linear-gradient(180deg, #fff 0%, #f8f4f1 100%);
  border-radius:18px;
  padding:18px 18px 20px;
  position:relative;
  display:flex;flex-direction:column;
  overflow:hidden;
  transition:transform .4s ease, box-shadow .4s ease;
  box-shadow:0 18px 26px -22px rgba(84,48,26,.28);
  border:1px solid rgba(111,66,35,0.06);
}
.product-card:hover{
  transform:translateY(-8px);
  box-shadow:0 28px 44px -24px rgba(84,48,26,.32);
  border-color:rgba(111,66,35,0.16);
}
.badge{
  position:absolute;top:14px;left:14px;
  color:#fff;font-size:9.5px;font-weight:700;
  padding:6px 10px;border-radius:999px;letter-spacing:.08em;text-transform:uppercase;z-index:2;
}
.badge.best-seller{background:#7E4B2D;}
.badge.new-launch{background:#C77E4B;}
.badge.top-rated{background:#5A6C4D;}
.badge.premium{background:#352B27;}
.badge.sale{background:#C0392B;}
.stock-label{
  position:absolute;top:14px;right:14px;z-index:2;
  font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  padding:6px 10px;border-radius:999px;color:#fff;
}
.stock-label.in-stock{background:#5A6C4D;}
.stock-label.out-of-stock{background:#8a8078;}
.product-gallery{
  position:relative;height:340px;border-radius:18px 18px 14px 14px;overflow:hidden;
  margin:-18px -18px 18px -18px;background:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.48);
}
.product-gallery-track{
  display:flex;height:100%;transition:transform .45s ease;
}
.product-gallery-slide{min-width:100%;height:100%;}
.product-gallery-slide img{
  width:100%;height:100%;object-fit:contain;object-position:center;display:block;
  transition:transform .6s ease;
}
.product-card:hover .product-gallery-slide img{transform:scale(1.05);}
.launch-card .product-gallery{height:300px;margin:-20px -20px 18px -20px;}
.launch-card .product-gallery .gallery-nav button{width:28px;height:28px;}
.gallery-nav{
  position:absolute;inset:0 12px auto 12px;top:50%;transform:translateY(-50%);
  display:flex;justify-content:space-between;z-index:2;
  opacity:0;pointer-events:none;transition:opacity .25s ease;
}
.product-gallery:hover .gallery-nav{opacity:1;pointer-events:auto;}
.gallery-nav button{
  width:30px;height:30px;border-radius:50%;
  background:rgba(255,255,255,0.88);color:var(--ink);display:flex;align-items:center;justify-content:center;
  border:1px solid rgba(36,27,20,.08);backdrop-filter:blur(4px);transition:background .2s ease,transform .2s ease;
}
.gallery-nav button:hover{background:#fff;transform:scale(1.06);}
.gallery-dots{
  position:absolute;left:50%;bottom:12px;transform:translateX(-50%);display:flex;gap:6px;z-index:2;
}
.gallery-dots span{
  width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.52);display:block;cursor:pointer;
}
.gallery-dots span.active{background:#fff;box-shadow:0 0 0 2px rgba(255,255,255,.25);}
.product-card h3{font-size:19px;font-weight:500;margin-bottom:7px;color:var(--ink);min-height:24px;}
.product-desc{font-size:13px;color:var(--ink-soft);margin-bottom:10px;line-height:1.5;min-height:36px;}
.product-card .stars{display:flex;align-items:center;gap:4px;margin-bottom:14px;}
.stars svg{width:13px;height:13px;fill:var(--brown);}
.stars span{font-size:12px;color:var(--ink-soft);margin-left:4px;}
.size-options{display:flex;gap:8px;margin-bottom:18px;}
.size-options span{
  font-size:11.5px;padding:5px 10px;border:1px solid var(--line);border-radius:20px;color:var(--ink-soft);
  transition:all .25s ease;cursor:pointer;
}
.size-options span.sel, .size-options span:hover{border-color:var(--brown);color:var(--brown-dark);background:var(--brown-tint);}
.price-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;}
.price{font-size:16px;font-weight:600;color:var(--ink);font-family:var(--serif);}
.price ins{text-decoration:none;}
.price del{text-decoration:line-through;color:#C0392B;font-weight:500;margin-right:6px;}
.add-cart{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  background:var(--white);border:1px solid var(--brown-dark) !important;color:var(--brown-dark);
  padding:11px 14px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  border-radius:10px;transition:all .3s ease;min-width:128px;
}
.add-cart svg{width:14px;height:14px;}
.add-cart:hover{background:var(--brown-dark);color:#fff;}

/* ---------- spotlight ---------- */
.spotlight{background:linear-gradient(115deg, #e8e0d7 0%, #f6f1eb 48%, #dce2db 100%);}
.spotlight .container{
  display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;
}
.spotlight-img{
  height:520px;border-radius:8px;overflow:hidden;position:relative;
}
.spotlight-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease;}
.spotlight-img:hover img{transform:scale(1.04);}
.spotlight-copy .eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--brown);font-weight:600;margin-bottom:16px;display:block;}
.spotlight-copy h2{font-size:clamp(30px,3.4vw,42px);margin-bottom:22px;line-height:1.15;max-width:440px;}
.spotlight-copy > p{font-size:15.5px;color:var(--ink-soft);line-height:1.7;margin-bottom:30px;max-width:420px;}
.benefit-list{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;margin-bottom:36px;}
.benefit-list li{
  display:flex;align-items:center;gap:12px;font-size:14px;font-weight:600;color:var(--ink);
  padding:12px 14px;border:1px solid rgba(111,66,35,0.1);border-radius:14px;background:rgba(255,255,255,0.34);
  box-shadow:0 10px 20px -18px rgba(36,27,20,.55);
}
.benefit-list li svg{
  width:18px;height:18px;flex-shrink:0;color:var(--brown);padding:4px;border:1px solid rgba(111,66,35,0.18);border-radius:50%;background:var(--brown-tint);
}

/* ---------- bundle banner ---------- */
.bundle{
  background:linear-gradient(135deg, #f6efe9 0%, #efe2d5 52%, #e7dccb 100%);
  position:relative;overflow:hidden;
}
.bundle::before{content:'';position:absolute;inset:0;opacity:.22;background-image:radial-gradient(rgba(111,66,35,.22) 1px, transparent 1px);background-size:18px 18px;pointer-events:none;}
.bundle .container{position:relative;z-index:1;}
.bundle .container{
  display:grid;grid-template-columns:0.9fr 2.1fr;gap:60px;align-items:center;
}
.bundle-copy .tag{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--brown);font-weight:600;margin-bottom:16px;display:block;}
.bundle-copy h2{font-size:clamp(28px,3.2vw,42px);line-height:1.1;margin-bottom:18px;max-width:440px;}
.bundle-copy p{font-size:15px;color:var(--ink-soft);margin-bottom:18px;max-width:420px;line-height:1.6;text-align:left;}
.bundle-copy .mini-list{
  list-style:none;display:grid;gap:10px;padding:0;margin:0 0 28px;max-width:420px;
}
.bundle-copy .mini-list li{
  display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:var(--ink);padding:9px 12px;border:1px solid rgba(111,66,35,.12);border-radius:10px;background:rgba(255,255,255,0.28);
}
.bundle-copy .mini-list li::before{
  content:'✓';display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--brown);color:#fff;font-size:12px;
}
.bundle-premium{
  display:grid;grid-template-columns:1.2fr 0.8fr;gap:18px;padding:22px;border-radius:28px;background:rgba(255,255,255,0.38);box-shadow:0 28px 45px -30px rgba(84,48,26,.45);border:1px solid rgba(111,66,35,0.12);
}
.bundle-stack{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.bundle-stack img{
  height:220px;width:100%;object-fit:cover;border-radius:18px;
  box-shadow:0 20px 34px -18px rgba(84,48,26,.35);
  transition:transform .5s ease;
}
.bundle-stack img:hover{transform:translateY(-6px);}
.bundle-feature{
  display:flex;flex-direction:column;justify-content:space-between;padding:24px 22px 18px;background:linear-gradient(180deg, rgba(255,255,255,0.62), rgba(255,255,255,0.22));border-radius:20px;border:1px solid rgba(111,66,35,0.08);
}
.bundle-price-tag{
  display:inline-flex;align-items:center;justify-content:center;width:92px;height:92px;border-radius:50%;
  background:linear-gradient(145deg, #7e4b2d, #5a2f1e);color:#fff;font-family:var(--serif);font-size:30px;line-height:1;
  box-shadow:0 18px 28px -18px rgba(84,48,26,.85);margin:0 0 22px;
}
.bundle-feature h3{font-size:24px;margin-bottom:8px;text-align:left;}
.bundle-feature p{font-size:13px;line-height:1.6;color:var(--ink-soft);margin-bottom:16px;text-align:left;}
.bundle-feature .bundle-item-list{
  list-style:none;display:grid;gap:8px;padding:0;margin:0 0 18px;
}
.bundle-feature .bundle-item-list li{font-size:12.5px;color:var(--ink-soft);display:flex;align-items:center;justify-content:flex-start;gap:6px;text-align:left;}
.bundle-feature .bundle-item-list li::before{content:'•';color:var(--brown);font-size:18px;line-height:1;}
.bundle-feature .btn-primary{display:inline-flex;justify-content:center;width:100%;gap:8px;}
.bundle-feature .btn-primary::before{content:'+';font-size:22px;line-height:1;display:inline-block;}

/* ---------- AI block ---------- */
.ai-block{background:linear-gradient(135deg,#183c39 0%, #214d48 48%, #122d2c 100%);color:#fff;position:relative;overflow:hidden;}
.ai-block .container{
  display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;position:relative;z-index:2;
}
.ai-visual{
  position:relative;height:440px;display:flex;align-items:center;justify-content:center;
}
.ai-visual img{
  width:86%;height:100%;object-fit:cover;border-radius:32px;
  box-shadow:0 38px 64px -28px rgba(0,0,0,.7);border:1px solid rgba(255,255,255,.12);
}
.ai-tag{
  position:absolute;background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.26);
  backdrop-filter:blur(8px);
  padding:9px 14px;border-radius:999px;font-size:11.5px;font-weight:700;
  color:#F1E6DA;letter-spacing:.02em;
  animation:pulse-tag 3.4s ease-in-out infinite;
  box-shadow:0 12px 24px -18px rgba(0,0,0,.8);
}
.ai-tag.t1{top:11%;left:6%;animation-delay:0s;}
.ai-tag.t2{top:46%;right:4%;animation-delay:.6s;}
.ai-tag.t3{bottom:12%;left:8%;animation-delay:1.2s;}
@keyframes pulse-tag{
  0%,100%{transform:translateY(0);opacity:.85;}
  50%{transform:translateY(-8px);opacity:1;}
}
.ai-copy{text-align:left;}
.ai-copy .eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#C9A489;font-weight:600;margin-bottom:16px;display:block;}
.ai-copy h2{font-size:clamp(30px,3.4vw,44px);line-height:1.15;margin-bottom:20px;color:#fff;max-width:480px;}
.ai-copy p{font-size:15.5px;color:#cfc6bd;line-height:1.7;margin-bottom:34px;max-width:420px;}
.ai-block .btn-primary{background:#F1E6DA;color:var(--ink);box-shadow:none;}
.ai-block .btn-primary:hover{background:#fff;}
.ai-glow{
  position:absolute;top:-100px;right:-100px;width:500px;height:500px;border-radius:50%;
  background:radial-gradient(circle, rgba(111,66,35,.35), transparent 70%);
  z-index:1;
}

/* ---------- category grid ---------- */
.cat-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(2,240px);gap:20px;}
.cat-card{
  position:relative;height:100%;border-radius:22px;overflow:hidden;cursor:pointer;
  box-shadow:0 26px 40px -28px rgba(40,25,18,.4);border:1px solid rgba(111,66,35,0.08);
}
.cat-card:first-child{grid-row:span 2;}
.cat-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease;}
.cat-card:hover img{transform:scale(1.08);}
.cat-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to top, rgba(28,20,14,.82) 0%, rgba(28,20,14,0.08) 55%);
}
.cat-label{
  position:absolute;bottom:24px;left:24px;color:#fff;
  font-family:var(--serif);font-size:24px;letter-spacing:.01em;
}
.cat-label span{
  display:block;font-family:var(--sans);font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  color:#F6E7DB;margin-top:8px;font-weight:700;
  opacity:0;transform:translateY(8px);transition:all .35s ease;
}
.cat-card:hover .cat-label span{opacity:1;transform:translateY(0);}
.launch-banner{width:100%;background:#f1e6da;overflow:hidden;}
.launch-banner img{width:100%;height:clamp(180px,24vw,330px);object-fit:cover;object-position:center;}

/* ---------- concerns ---------- */
.concern-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}
.concern-card{
  text-align:center;padding:18px 14px;border-radius:22px;background:rgba(250,248,245,0.9);border:1px solid rgba(111,66,35,0.08);box-shadow:0 22px 32px -26px rgba(84,48,26,.35);transition:transform .35s ease, box-shadow .35s ease;
}
.concern-card:hover{transform:translateY(-6px);box-shadow:0 26px 40px -24px rgba(84,48,26,.3);}
.concern-img{
  height:210px;border-radius:22px;overflow:hidden;margin-bottom:18px;
  box-shadow:0 20px 28px -18px rgba(84,48,26,.25);
  transition:transform .4s ease;
}
.concern-card:hover .concern-img{transform:scale(1.04);}
.concern-img img{width:100%;height:100%;object-fit:cover;}
.concern-card h4{font-family:var(--serif);font-size:18px;font-weight:500;color:var(--ink);}
#category{background:linear-gradient(180deg, #fff 0%, #edf2ec 100%);}
.concerns-section{background-color:#f5efe6;background-image:radial-gradient(rgba(111,66,35,.12) .8px, transparent .8px);background-size:16px 16px;}

/* ---------- new launches slider ---------- */
.launch-slider-wrap{position:relative;}
.launch-slider{
  overflow-x:auto;border-radius:22px;padding:12px 0 4px;scrollbar-width:none;
}
.launch-slider::-webkit-scrollbar{display:none;}
.launch-track{display:flex;}
.launch-slide{min-width:25%;padding:0 15px;}
.launch-card{
  background:linear-gradient(180deg, #fff 0%, #f5efe9 100%);border:1px solid rgba(111,66,35,.08);border-radius:22px;padding:20px;box-shadow:0 22px 32px -26px rgba(84,48,26,.3);height:100%;display:flex;flex-direction:column;overflow:hidden;transition:transform .4s ease, box-shadow .4s ease, border-color .4s ease;
}
.launch-card:hover{transform:translateY(-7px);box-shadow:0 28px 44px -26px rgba(84,48,26,.34);border-color:rgba(111,66,35,.16);}
.launch-card .product-img-wrap{height:220px;border-radius:16px;overflow:hidden;margin-bottom:18px;}
.launch-card .product-img-wrap img{width:100%;height:100%;object-fit:cover;}
.launch-card h3{font-size:20px;margin-bottom:8px;}
.launch-card .product-desc{min-height:42px;}
.launch-card .price-row{margin-top:8px;}

/* ---------- brand story ---------- */
.values{background:radial-gradient(circle at 12% 20%, rgba(229,199,168,.4), transparent 28%),linear-gradient(180deg, #f6efe8 0%, #eee5db 100%);}
.values-intro{text-align:center;margin-bottom:34px;}
.values-intro .tag{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--brown);font-weight:600;margin-bottom:12px;display:block;}
.values-intro h2{font-size:clamp(28px,3vw,40px);line-height:1.1;}
.values-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;}
.value-item{text-align:center;padding:4px 8px;}
.value-icon{width:68px;height:68px;border-radius:50%;background:var(--brown-tint);color:var(--brown);display:flex;align-items:center;justify-content:center;margin:0 auto 18px;border:1px solid rgba(111,66,35,.12);transition:background .3s ease,color .3s ease,transform .3s ease,box-shadow .3s ease;}
.value-icon:hover,.value-item:hover .value-icon{background:var(--brown);color:#fff;transform:translateY(-4px);box-shadow:0 12px 22px -14px rgba(84,48,26,.7);}
.value-icon svg{width:32px;height:32px;}
.value-item h4{font-family:var(--serif);font-size:17px;font-weight:500;line-height:1.28;}

/* ---------- testimonials ---------- */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.review-section{background:linear-gradient(180deg, #f7f1ec 0%, #fdf7f2 100%);}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.testi-card{
  background:#fff;border-radius:18px;padding:28px 24px;border:1px solid rgba(111,66,35,0.08);box-shadow:0 24px 36px -30px rgba(84,48,26,.35);transition:transform .4s ease, box-shadow .4s ease;
}
.testi-card:hover{transform:translateY(-6px);box-shadow:0 28px 46px -30px rgba(84,48,26,.3);}
.testi-card .stars{margin-bottom:18px;}
.testi-card p{font-size:14.5px;line-height:1.75;color:var(--ink);margin-bottom:24px;}
.testi-user{display:flex;align-items:center;gap:12px;}
.testi-avatar{
  width:44px;height:44px;border-radius:50%;overflow:hidden;
  background:var(--brown);color:#fff;display:flex;align-items:center;justify-content:center;
  font-family:var(--serif);font-size:16px;font-weight:600;flex-shrink:0;border:2px solid rgba(111,66,35,0.08);
}
.testi-avatar img{width:100%;height:100%;object-fit:cover;display:block;}
.testi-user h5{font-size:14px;font-weight:600;}
.testi-user span{font-size:12px;color:var(--ink-soft);}

/* ---------- trust + app ---------- */
.trust-app{display:grid;grid-template-columns:1fr 1fr;gap:28px;}
.trust-block{
  border-radius:10px;padding:56px 48px;position:relative;overflow:hidden;
  min-height:280px;display:flex;flex-direction:column;justify-content:center;
}
.trust-block.circle{background:var(--brown-dark);color:#fff;}
.trust-block.app{background:var(--beige);color:var(--ink);display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:20px;}
.trust-block h3{font-size:clamp(24px,2.4vw,30px);margin-bottom:14px;line-height:1.2;}
.trust-block p{font-size:14.5px;line-height:1.6;margin-bottom:24px;opacity:.85;max-width:340px;}
.trust-block.circle::after{
  content:'';position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;
  border:1px solid rgba(255,255,255,.15);
}
.trust-block.circle::before{
  content:'';position:absolute;right:-10px;bottom:-90px;width:180px;height:180px;border-radius:50%;
  border:1px solid rgba(255,255,255,.1);
}
.qr-box{
  width:120px;height:120px;background:#fff;border-radius:8px;padding:10px;
  box-shadow:0 14px 26px -12px rgba(0,0,0,.25);justify-self:end;
}
.qr-box img{width:100%;height:100%;object-fit:contain;}
.link-underline{
  display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
  border-bottom:1px solid currentColor;padding-bottom:3px;width:fit-content;transition:gap .3s ease;
}
.link-underline:hover{gap:13px;}
.trust-block.circle .link-underline{color:#F1E6DA;}

/* ---------- footer ---------- */
footer{background:var(--dark);color:#cfcac4;padding:80px 0 0;}
.footer-grid{
  display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:60px;border-bottom:1px solid rgba(255,255,255,.08);
}
.footer-brand .logo{color:#fff;margin-bottom:16px;}
.footer-brand p{font-size:13.5px;line-height:1.7;color:#a49d95;max-width:280px;margin-bottom:22px;}
.social-row{display:flex;gap:12px;}
.social-row a{
  width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.18);
  display:flex;align-items:center;justify-content:center;transition:all .3s ease;
}
.social-row a:hover{background:var(--brown);border-color:var(--brown);transform:translateY(-3px);}
.footer-col h5{
  font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#fff;font-weight:600;margin-bottom:22px;
}
.footer-col ul li{margin-bottom:13px;}
.footer-col ul li a{font-size:13.5px;color:#a49d95;transition:color .25s ease, padding-left .25s ease;}
.footer-col ul li a:hover{color:#F1E6DA;padding-left:4px;}
.footer-bottom{
  display:flex;align-items:center;justify-content:space-between;padding:26px 0;font-size:12.5px;color:#7a746c;flex-wrap:wrap;gap:10px;
}
.footer-bottom .legal{display:flex;gap:22px;}
.footer-bottom .legal a{color:#7a746c;transition:color .25s ease;}
.footer-bottom .legal a:hover{color:#F1E6DA;}

/* ---------- marketplace + certifications ---------- */
.marketplace-section{background:#fffaf5;padding:48px 0 30px;text-align:center;}
.marketplace-row{display:flex;align-items:center;justify-content:center;gap:28px;}
.marketplace-section h2{font-size:clamp(20px,2.3vw,30px);margin:0;white-space:nowrap;}
.marketplace-logos{display:flex;align-items:center;justify-content:center;gap:28px;}
.marketplace-logo{display:flex;align-items:center;justify-content:center;width:150px;height:72px;border:1px solid var(--line);border-radius:10px;background:#fff;transition:transform .3s ease, box-shadow .3s ease;}
.marketplace-logo:hover{transform:translateY(-4px);box-shadow:0 15px 24px -18px rgba(84,48,26,.4);}
.marketplace-logo img{max-width:116px;max-height:48px;width:auto;height:auto;object-fit:contain;}
.image-showcase{background:#fff4e6;padding:48px 0 54px;}
.showcase-grid{display:grid;grid-template-columns:repeat(6,1fr);align-items:center;gap:20px;}
.showcase-tile{height:150px;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.showcase-tile img{width:100%;height:100%;object-fit:contain;transition:transform .45s ease;}
.showcase-tile:hover img{transform:scale(1.06);}

/* ---------- responsive ---------- */
@media (max-width: 1080px){
  .product-grid{grid-template-columns:repeat(2,1fr);}
  .cat-grid{grid-template-columns:repeat(2,1fr);}
  .concern-grid{grid-template-columns:repeat(2,1fr);}
  .values-grid{grid-template-columns:repeat(2,1fr);row-gap:44px;}
  .testi-grid{grid-template-columns:1fr;}
  .trust-app{grid-template-columns:1fr;}
  .spotlight .container, .bundle .container, .ai-block .container{grid-template-columns:1fr;gap:44px;}
  .spotlight-img{order:-1;height:400px;}
  .bundle-visual{order:-1;}
  .showcase-grid{grid-template-columns:repeat(3,1fr);}
}
@media (max-width: 760px){
  .container{padding:0 22px;}
  .nav-links{display:none;}
  .menu-toggle{display:flex;}
  .nav-row{padding:8px 22px;}
  .hero-slide{grid-template-columns:1fr;padding:0 22px;min-height:auto;padding-top:50px;padding-bottom:40px;gap:30px;}
  .hero-copy p{max-width:100%;}
  .hero-visual{height:320px;order:-1;}
  .hero-visual img{max-height:300px;}
  .section{padding:64px 0;}
  .section-head{flex-direction:column;align-items:flex-start;}
  .section-head .desc{text-align:left;}
  .product-grid{grid-template-columns:repeat(2,1fr);gap:16px;}
  .product-card{padding:18px 16px 20px;}
  .product-img-wrap{height:150px;}
  .product-gallery{height:230px;}
  .launch-slide{min-width:85%;padding:0 8px;}
  .launch-card .product-gallery{height:280px;}
  .cat-grid{grid-template-columns:1fr;}
  .cat-grid{grid-template-rows:none;}
  .cat-card:first-child{grid-row:auto;}
  .cat-card{height:280px;}
  .concern-grid{grid-template-columns:repeat(2,1fr);}
  .values-grid{grid-template-columns:1fr;}
  .trust-block{padding:40px 26px;}
  .trust-block.app{grid-template-columns:1fr;text-align:left;}
  .qr-box{justify-self:start;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .marketplace-section{padding:40px 0 26px;}
  .marketplace-row{gap:8px;}
  .marketplace-section h2{font-size:16px;}
  .marketplace-logos{gap:6px;}
  .marketplace-logo{width:88px;height:54px;}
  .marketplace-logo img{max-width:72px;max-height:34px;}
  .image-showcase{padding:40px 0 46px;}
  .showcase-grid{grid-template-columns:repeat(3,1fr);gap:12px;}
  .showcase-tile{height:116px;}
}

/* =========================================================
   WOOCOMMERCE — shop & single product pages
   Container-width, single-column layout matching the theme.
   ========================================================= */
.woocommerce-container{padding-top:56px;padding-bottom:100px;}
.woocommerce-breadcrumb{
  font-size:12.5px;color:var(--ink-soft);margin-bottom:32px;letter-spacing:.02em;
}
.woocommerce-breadcrumb a{color:var(--ink-soft);transition:color .25s ease;}
.woocommerce-breadcrumb a:hover{color:var(--brown-dark);}

/* ---- single product layout ---- */
.woocommerce div.product{
  display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:flex-start;
}
.woocommerce div.product .woocommerce-product-gallery{
  background:#fff;border-radius:18px;overflow:hidden;border:1px solid rgba(111,66,35,0.08);
  box-shadow:0 18px 26px -22px rgba(84,48,26,.28);
}
.woocommerce div.product .woocommerce-product-gallery__image img{
  width:100%;height:auto;object-fit:contain;
}
.woocommerce div.product .flex-control-thumbs{
  display:flex;gap:10px;padding:12px;margin:0;list-style:none;flex-wrap:wrap;
}
.woocommerce div.product .flex-control-thumbs li{width:64px;}
.woocommerce div.product .flex-control-thumbs img{
  border-radius:8px;border:1px solid var(--line);cursor:pointer;opacity:.7;transition:all .25s ease;
}
.woocommerce div.product .flex-control-thumbs img.flex-active,
.woocommerce div.product .flex-control-thumbs img:hover{opacity:1;border-color:var(--brown);}

.woocommerce div.product .summary{padding-top:4px;}
.woocommerce div.product .product_title{
  font-family:var(--serif);font-weight:500;font-size:clamp(26px,2.6vw,38px);color:var(--ink);
  line-height:1.15;margin-bottom:14px;letter-spacing:-0.01em;
}
.woocommerce div.product .woocommerce-product-rating{
  display:flex;align-items:center;gap:10px;margin-bottom:18px;
}
.woocommerce .star-rating{color:var(--line);font-size:15px;width:5.4em;}
.woocommerce .star-rating span{color:var(--brown);}
.woocommerce .woocommerce-review-link{font-size:13px;color:var(--ink-soft);}

.woocommerce div.product p.price,
.woocommerce div.product span.price{
  font-family:var(--serif);font-size:26px;font-weight:600;color:var(--ink);margin-bottom:20px;display:block;
}
.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins{text-decoration:none;color:var(--ink);}
.woocommerce div.product p.price del,
.woocommerce div.product span.price del{
  text-decoration:line-through;color:#C0392B;font-weight:500;font-size:0.7em;margin-right:8px;opacity:1;
}

.woocommerce div.product .woocommerce-product-details__short-description{
  font-size:15px;line-height:1.7;color:var(--ink-soft);margin-bottom:26px;max-width:460px;
}

/* variations + quantity + add to cart */
.woocommerce div.product form.cart{margin-bottom:30px;}
.woocommerce div.product table.variations{width:100%;margin-bottom:20px;border-collapse:collapse;}
.woocommerce div.product table.variations tr{display:block;margin-bottom:14px;}
.woocommerce div.product table.variations th.label{
  display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);
  font-weight:700;margin-bottom:8px;
}
.woocommerce div.product table.variations td.value{display:block;}
.woocommerce div.product table.variations select{
  width:100%;max-width:280px;padding:12px 14px;font-size:14px;font-family:var(--sans);color:var(--ink);
  border:1px solid var(--line);border-radius:10px;background:#fff;appearance:none;cursor:pointer;
  transition:border-color .25s ease;
}
.woocommerce div.product table.variations select:focus{outline:none;border-color:var(--brown);}
.woocommerce div.product .reset_variations{
  display:inline-block;margin-left:10px;font-size:12px;color:var(--ink-soft);text-decoration:underline;
}
.woocommerce div.product .woocommerce-variation-price .price{font-size:20px;margin-bottom:0;}
.woocommerce div.product .woocommerce-variation-add-to-cart{margin-top:16px;}

.woocommerce div.product .quantity{
  display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:10px;overflow:hidden;
  margin-right:14px;vertical-align:middle;
}
.woocommerce div.product .quantity .qty{
  width:56px;padding:13px 8px;text-align:center;border:none;font-size:14px;font-family:var(--sans);
  color:var(--ink);background:#fff;-moz-appearance:textfield;
}
.woocommerce div.product .quantity .qty::-webkit-inner-spin-button,
.woocommerce div.product .quantity .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;}

.woocommerce div.product .single_add_to_cart_button,
.woocommerce div.product button.button{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  background:var(--brown);color:#fff !important;
  padding:16px 34px;font-size:13.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
  border-radius:2px;border:none;transition:background .3s ease, transform .3s ease, box-shadow .3s ease;
  box-shadow:0 8px 20px -8px rgba(111,66,35,.5);vertical-align:middle;
}
.woocommerce div.product .single_add_to_cart_button:hover,
.woocommerce div.product button.button:hover{background:var(--brown-dark);transform:translateY(-2px);}
.woocommerce div.product .single_add_to_cart_button.disabled{
  background:var(--line);color:var(--ink-soft) !important;box-shadow:none;cursor:not-allowed;
}

.woocommerce div.product .product_meta{
  font-size:12.5px;color:var(--ink-soft);border-top:1px solid var(--line);padding-top:18px;margin-top:24px;
}
.woocommerce div.product .product_meta > span{display:block;margin-bottom:6px;}
.woocommerce div.product .product_meta a{color:var(--brown-dark);}

/* stock / notices */
.woocommerce div.product p.stock{font-size:13px;font-weight:600;color:var(--brown-dark);margin-bottom:16px;}
.woocommerce div.product p.stock.out-of-stock{color:#C0392B;}
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  list-style:none;background:var(--brown-tint);color:var(--ink);border-radius:10px;
  padding:16px 20px;font-size:14px;margin-bottom:28px;border-left:3px solid var(--brown);
}
.woocommerce-error{background:#fbe7e4;border-left-color:#C0392B;}
.woocommerce-message a.button,.woocommerce-info a.button{
  float:right;background:var(--brown);color:#fff;padding:8px 16px;border-radius:6px;font-size:12px;
  text-transform:uppercase;letter-spacing:.05em;
}

/* ---- product tabs ---- */
.woocommerce div.product .woocommerce-tabs{margin-top:70px;clear:both;}
.woocommerce div.product .woocommerce-tabs ul.tabs{
  display:flex;gap:8px;list-style:none;padding:0;margin:0 0 -1px;border-bottom:1px solid var(--line);
  flex-wrap:wrap;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li{margin:0;}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  display:inline-block;padding:14px 22px;font-size:13px;font-weight:600;letter-spacing:.04em;
  text-transform:uppercase;color:var(--ink-soft);border:1px solid transparent;border-bottom:none;
  border-radius:10px 10px 0 0;transition:all .25s ease;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li:hover a{color:var(--brown-dark);}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{
  color:var(--brown-dark);background:#fff;border-color:var(--line);position:relative;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a::after{
  content:'';position:absolute;left:0;right:0;bottom:-1px;height:1px;background:#fff;
}
.woocommerce div.product .woocommerce-tabs .panel{
  padding:36px 4px 0;font-size:14.5px;line-height:1.75;color:var(--ink-soft);max-width:820px;
}
.woocommerce div.product .woocommerce-tabs .panel h2{
  font-size:22px;color:var(--ink);margin-bottom:16px;
}
.woocommerce div.product .woocommerce-tabs table.shop_attributes{
  width:100%;border-collapse:collapse;margin-top:10px;
}
.woocommerce div.product .woocommerce-tabs table.shop_attributes th,
.woocommerce div.product .woocommerce-tabs table.shop_attributes td{
  padding:12px 14px;border:1px solid var(--line);font-size:13.5px;text-align:left;
}
.woocommerce div.product .woocommerce-tabs table.shop_attributes th{
  background:var(--off-white);font-weight:600;width:220px;
}

/* related / upsell products (default WC markup) */
.woocommerce div.product .related.products,
.woocommerce div.product .upsells.products{margin-top:80px;}
.woocommerce div.product .related.products > h2,
.woocommerce div.product .upsells.products > h2{
  font-family:var(--serif);font-size:clamp(24px,2.6vw,32px);color:var(--ink);margin-bottom:32px;font-weight:500;
}
.woocommerce ul.products{
  display:grid;grid-template-columns:repeat(4,1fr);gap:24px;list-style:none;padding:0;margin:0;
}
.woocommerce ul.products li.product{
  background:linear-gradient(180deg, #fff 0%, #f8f4f1 100%);border-radius:18px;padding:18px;
  border:1px solid rgba(111,66,35,0.06);box-shadow:0 18px 26px -22px rgba(84,48,26,.28);
  transition:transform .4s ease, box-shadow .4s ease;
}
.woocommerce ul.products li.product:hover{transform:translateY(-8px);box-shadow:0 28px 44px -24px rgba(84,48,26,.32);}
.woocommerce ul.products li.product img{
  border-radius:14px;height:220px;width:100%;object-fit:contain;background:#fff;margin-bottom:14px;
}
.woocommerce ul.products li.product h3,
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--serif);font-size:17px;font-weight:500;color:var(--ink);margin-bottom:8px;
}
.woocommerce ul.products li.product .price{font-size:15px;color:var(--ink);}
.woocommerce ul.products li.product .button{
  display:inline-flex;margin-top:12px;background:var(--white);border:1px solid var(--brown-dark);
  color:var(--brown-dark);padding:10px 16px;font-size:11px;font-weight:700;letter-spacing:.05em;
  text-transform:uppercase;border-radius:10px;transition:all .3s ease;
}
.woocommerce ul.products li.product .button:hover{background:var(--brown-dark);color:#fff;}
.woocommerce span.onsale{
  position:absolute;top:14px;left:14px;background:var(--brown);color:#fff;font-size:10px;font-weight:700;
  padding:6px 10px;border-radius:999px;letter-spacing:.08em;text-transform:uppercase;
}

@media (max-width: 1080px){
  .woocommerce div.product{grid-template-columns:1fr;gap:36px;}
  .woocommerce ul.products{grid-template-columns:repeat(2,1fr);}
}
@media (max-width: 760px){
  .woocommerce-container{padding-top:36px;padding-bottom:64px;}
  .woocommerce div.product .woocommerce-tabs ul.tabs{overflow-x:auto;flex-wrap:nowrap;}
  .woocommerce ul.products{grid-template-columns:repeat(2,1fr);gap:14px;}
}

/* =========================================================
   PRODUCT BUNDLES (myurvija-product-bundles plugin) — premium redesign
   Overrides the plugin's own frontend.css to match the theme.
   ========================================================= */
.mub-bundle{
  margin:34px 0 32px;padding:28px 26px;border-radius:20px;
  background:linear-gradient(180deg, #fff 0%, #faf6f2 100%);
  border:1px solid rgba(111,66,35,0.1);
  box-shadow:0 22px 34px -28px rgba(84,48,26,.35);
}
.mub-heading{
  font-family:var(--serif) !important;font-size:20px !important;font-weight:500 !important;
  color:var(--ink) !important;margin:0 0 6px !important;letter-spacing:-0.01em;
}
.mub-help{
  font-size:13.5px !important;color:var(--ink-soft) !important;line-height:1.6;margin:0 0 22px !important;
}

.mub-items{gap:16px !important;}

.mub-item{
  border:1px solid rgba(111,66,35,0.1) !important;border-radius:16px !important;
  background:linear-gradient(180deg, #fff 0%, #fbf8f5 100%) !important;
  box-shadow:0 14px 22px -20px rgba(84,48,26,.3);
  transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease !important;
}
.mub-item:hover{transform:translateY(-3px);box-shadow:0 20px 32px -22px rgba(84,48,26,.32);}
.mub-item.mub-item-active{
  border-color:var(--brown) !important;
  background:linear-gradient(180deg, #fff 0%, var(--brown-tint) 220%) !important;
  box-shadow:0 18px 30px -20px rgba(84,48,26,.4);
}

.mub-item-top{padding:20px 20px 16px !important;gap:16px !important;}
.mub-item-thumb{
  width:88px !important;height:88px !important;flex:0 0 88px !important;
  border-radius:12px !important;background:#fff !important;
  border:1px solid var(--line);
}
.mub-item-thumb img{object-fit:contain !important;}

.mub-item-name{
  font-family:var(--serif) !important;font-size:16.5px !important;font-weight:500 !important;
  color:var(--ink) !important;line-height:1.3 !important;margin:0 0 6px !important;
}
.mub-item-desc{font-size:13px !important;color:var(--ink-soft) !important;line-height:1.55 !important;}
.mub-item-oos-label{color:#C0392B !important;}

.mub-view-details-link,
a.mub-view-details-link{
  color:var(--brown-dark) !important;font-weight:600 !important;
  padding-bottom:2px !important;border-bottom:1px solid transparent !important;
  transition:border-color .25s ease !important;
}
.mub-view-details-link:hover,
a.mub-view-details-link:hover{opacity:1 !important;border-bottom-color:var(--brown-dark) !important;}

.mub-item-bottom{border-top:1px solid rgba(111,66,35,0.1) !important;}
.mub-stepper{
  height:52px !important;background:var(--off-white) !important;
}
button.mub-minus,button.mub-plus,
.mub-stepper button.mub-minus,.mub-stepper button.mub-plus{
  height:52px !important;color:var(--brown-dark) !important;font-size:20px !important;font-weight:600 !important;
}
button.mub-minus:hover:not(:disabled),button.mub-plus:hover:not(:disabled),
.mub-stepper button.mub-minus:hover:not(:disabled),.mub-stepper button.mub-plus:hover:not(:disabled){
  background:var(--brown-tint) !important;
}
.mub-qty-display{
  font-family:var(--serif) !important;font-size:17px !important;color:var(--ink) !important;
  border-left-color:rgba(111,66,35,0.14) !important;border-right-color:rgba(111,66,35,0.14) !important;
}

.mub-status{
  margin-top:20px !important;padding:16px 20px !important;border-radius:14px !important;
  background:var(--brown-tint) !important;border:1px solid rgba(111,66,35,0.14) !important;
}
.mub-bag-icon{color:var(--brown) !important;}
.mub-status-text strong{font-family:var(--serif);font-size:14.5px !important;color:var(--ink) !important;font-weight:500;}
.mub-status-hint{color:var(--ink-soft) !important;}
.mub-error{color:#C0392B !important;font-weight:600;}

form.cart .single_add_to_cart_button.mub-not-ready{opacity:.5;}

/* Quick view modal */
.mub-modal-box{border-radius:20px !important;}
.mub-modal-close-btn:hover{background:var(--brown) !important;border-color:var(--brown) !important;}
.mub-modal-main-img-wrap{background:#fff !important;border-color:var(--line) !important;}
.mub-modal-thumb.active,.mub-modal-thumb:hover{border-color:var(--brown) !important;}
.mub-gal-prev,.mub-gal-next{color:var(--brown-dark) !important;}
.mub-modal-title{font-family:var(--serif) !important;font-weight:500 !important;color:var(--ink) !important;}
.mub-modal-price-row{color:var(--brown-dark) !important;font-family:var(--serif);}
.mub-modal-price-row del{color:#C0392B !important;}
.mub-modal-stock-badge{background:var(--brown-tint) !important;color:var(--brown-dark) !important;}
.mub-modal-desc{color:var(--ink-soft) !important;}
.mub-modal-qty-label{color:var(--ink) !important;}
.mub-modal-stepper{border-color:var(--line) !important;background:var(--off-white) !important;}
.mub-modal-stepper button:hover:not(:disabled){background:var(--brown-tint) !important;}
#mub-mobile-bar-count{color:var(--brown-dark) !important;}

@media (max-width: 640px){
  .mub-bundle{padding:20px 16px;}
  .mub-item-top{padding:16px 14px 12px !important;}
}

/* =========================================================
   SIDECART — dynamic mini-cart drawer, site-wide.
   Content inside #sidecart-dynamic is swapped via WooCommerce
   cart fragments after every add / update / remove.
   ========================================================= */
.cart-overlay{
  position:fixed;inset:0;z-index:200;background:rgba(36,27,20,.42);
  opacity:0;visibility:hidden;transition:opacity .35s ease, visibility .35s ease;
}
.cart-overlay.is-open{opacity:1;visibility:visible;}
.sidecart{
  position:absolute;top:0;right:0;width:min(440px,100%);height:100%;
  background:#fffdfb;box-shadow:-22px 0 60px rgba(36,27,20,.2);
  transform:translateX(100%);transition:transform .4s cubic-bezier(.22,.61,.36,1);
  display:flex;flex-direction:column;
}
.cart-overlay.is-open .sidecart{transform:translateX(0);}
.sidecart-head{
  display:flex;align-items:center;justify-content:space-between;
  padding:26px 28px 22px;border-bottom:1px solid var(--line);
}
.sidecart-head h2{font-size:28px;font-family:var(--serif);font-weight:500;}
.cart-close{
  width:36px;height:36px;border:1px solid var(--line);border-radius:50%;
  background:#fff;color:var(--brown);display:flex;align-items:center;justify-content:center;
}
.cart-close:hover{background:var(--brown-tint);}

#sidecart-dynamic{display:flex;flex-direction:column;flex:1;min-height:0;}
.cart-progress{padding:16px 28px;background:var(--brown-tint);font-size:11px;color:var(--brown-dark);}
.cart-progress strong{font-weight:700;}
.progress-track{height:4px;margin-top:10px;border-radius:4px;background:#fff;overflow:hidden;}
.progress-track span{display:block;height:100%;background:var(--brown);transition:width .4s ease;}

.sidecart-body{flex:1;padding:24px 28px;overflow:auto;}
.cart-item{
  display:grid;grid-template-columns:80px 1fr auto;gap:14px;align-items:start;
  padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid var(--line);
}
.cart-item:last-child{margin-bottom:0;}
.cart-item img{width:80px;height:94px;object-fit:cover;background:var(--beige);border-radius:6px;}
.cart-item h3{font-size:17px;font-family:var(--serif);font-weight:500;margin:3px 0 7px;}
.cart-item p{color:var(--ink-soft);font-size:11px;margin-bottom:14px;}
.cart-item-price{font:500 17px var(--serif);color:var(--ink);white-space:nowrap;}
.cart-item-controls{display:flex;align-items:center;width:max-content;border:1px solid var(--line);border-radius:6px;overflow:hidden;}
.cart-item-controls button{width:25px;height:25px;background:#fff;color:var(--brown);font-size:10px;display:flex;align-items:center;justify-content:center;}
.cart-item-controls button:hover{background:var(--brown-tint);}
.cart-item-controls span{width:25px;text-align:center;font-size:11px;}
.cart-item > div:last-child{display:flex;flex-direction:column;align-items:flex-end;gap:14px;}
.remove-item{background:none;color:#a18f82;font-size:11px;margin-top:auto;line-height:1;}
.remove-item:hover{color:#C0392B;}
.cart-note{display:flex;gap:10px;padding:10px 0;color:var(--ink-soft);font-size:11px;line-height:1.5;}
.cart-note i{color:var(--brown);margin-top:2px;}

.sidecart-foot{padding:20px 28px 26px;border-top:1px solid var(--line);background:#fff;}
.subtotal{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;}
.subtotal span{font-size:12px;color:var(--ink-soft);}
.subtotal strong{font:500 25px var(--serif);color:var(--ink);}
.tax-note{font-size:10px;color:var(--ink-soft);margin-bottom:16px;}
.checkout{
  display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:16px;
  background:var(--brown);color:#fff;text-transform:uppercase;letter-spacing:.1em;
  font-size:11px;font-weight:700;border-radius:2px;transition:background .3s ease;
}
.checkout:hover{background:var(--brown-dark);}
.continue-shopping{display:block;text-align:center;color:var(--brown);font-size:11px;margin-top:15px;text-decoration:underline;}

/* Toast notification */
.toast{
  position:fixed;right:22px;bottom:22px;z-index:210;padding:15px 20px;
  background:var(--dark);color:#fff;font-size:12px;border-radius:4px;
  opacity:0;transform:translateY(20px);transition:.3s;pointer-events:none;
}
.toast.show{opacity:1;transform:translateY(0);}

@media (max-width: 580px){
  .sidecart-head,.cart-progress,.sidecart-body,.sidecart-foot{padding-left:20px;padding-right:20px;}
  .sidecart-head h2{font-size:24px;}
}

/* Confirmation popup (used before removing a cart item) */
.confirm-overlay{
  position:fixed;inset:0;z-index:220;background:rgba(36,27,20,.5);
  display:flex;align-items:center;justify-content:center;padding:20px;
  opacity:0;visibility:hidden;transition:opacity .25s ease, visibility .25s ease;
}
.confirm-overlay.is-open{opacity:1;visibility:visible;}
.confirm-box{
  background:#fff;border-radius:16px;padding:28px 26px;max-width:340px;width:100%;
  box-shadow:0 30px 50px -20px rgba(36,27,20,.4);
  transform:translateY(10px) scale(.98);transition:transform .25s ease;
}
.confirm-overlay.is-open .confirm-box{transform:translateY(0) scale(1);}
.confirm-message{font-size:15px;color:var(--ink);line-height:1.5;margin-bottom:22px;font-family:var(--serif);}
.confirm-actions{display:flex;gap:10px;justify-content:flex-end;}
.confirm-actions button{
  padding:11px 20px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:2px;
  transition:all .25s ease;
}
.confirm-cancel{background:#fff;border:1px solid var(--line);color:var(--ink-soft);}
.confirm-cancel:hover{border-color:var(--ink-soft);color:var(--ink);}
.confirm-ok{background:#C0392B;color:#fff;}
.confirm-ok:hover{background:#a52d20;}

/* --- HERO BANNER CAROUSEL (NO CROPPING / RESPONSIVE) --- */
.hero {
  position: relative;
  background: var(--off-white);
  overflow: hidden;
  width: 100%;
}
.hero-track {
  display: flex;
  transition: transform .7s cubic-bezier(.16,1,.3,1);
  will-change: transform;
}
.hero-slide {
  min-width: 100%;
  flex: 0 0 100%;
  display: block !important;
  position: relative;
  text-decoration: none !important;
  line-height: 0;
  padding: 0 !important;
  min-height: 0 !important;
  border: none !important;
  background: transparent !important;
}
.hero-slide::before {
  display: none !important;
}
.hero-slide img {
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  display: block !important;
  object-fit: contain !important;
  aspect-ratio: auto !important;
  pointer-events: none;
}
.hero-arrows {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% - 40px);
  display: flex;
  justify-content: space-between;
  z-index: 5;
  pointer-events: none;
}
.hero-arrows button {
  pointer-events: auto;
  cursor: pointer;
}
@media (max-width: 760px) {
  .hero-slide {
    padding: 0 !important;
    min-height: auto !important;
    gap: 0 !important;
    display: block !important;
  }
  .hero-arrows {
    width: calc(100% - 20px);
  }
  .hero-arrows button {
    width: 36px;
    height: 36px;
  }
}
/* --- 4-COLUMN TESTIMONIALS GRID --- */
.testi-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 22px !important;
}
@media (max-width: 1024px) {
  .testi-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
@media (max-width: 600px) {
  .testi-grid {
    grid-template-columns: 1fr !important;
  }
}
/* --- SPOTLIGHT ALIGNMENT & FOOTER BOTTOM WHITE TEXT --- */
.spotlight .container {
  align-items: flex-start !important;
}
.spotlight-img {
  margin-top: 32px !important;
  height: auto !important;
  border-radius: 12px;
  overflow: hidden;
}
.footer-bottom,
.footer-bottom span,
.footer-bottom a,
.footer-bottom .legal a {
  color: #ffffff !important;
}
/* --- HEADER NAV & PERFECT DROPDOWNS --- */
.nav-links {
  display: flex;
  align-items: center;
}
.main-nav-menu {
  display: flex;
  align-items: center;
  gap: 20px;
  list-style: none;
  margin: 0;
  padding: 0;
  flex-wrap: nowrap;
}
.main-nav-menu > li {
  position: relative;
  padding: 10px 0;
  list-style: none;
  white-space: nowrap;
  flex-shrink: 0;
}
.main-nav-menu > li > a {
  font-family: var(--sans);
  font-size: 13.5px;
  font-weight: 600;
  color: var(--ink);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap;
  transition: color 0.25s ease;
  letter-spacing: 0.02em;
}
.main-nav-menu > li:hover > a {
  color: var(--brown);
}
.nav-chevron {
  font-size: 10px;
  transition: transform 0.25s ease;
  opacity: 0.65;
}
.main-nav-menu > li:hover > a .nav-chevron {
  transform: rotate(180deg);
  opacity: 1;
}

/* Submenu Dropdown Level 1 */
.main-nav-menu .sub-menu {
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 230px;
  background: #ffffff;
  border: 1px solid rgba(111, 66, 35, 0.12);
  box-shadow: 0 20px 45px -15px rgba(36, 27, 20, 0.22);
  border-radius: 14px;
  padding: 10px 0;
  margin: 0;
  list-style: none;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease;
  z-index: 100;
}
.main-nav-menu li.menu-item-has-children::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 16px;
}
.main-nav-menu li.menu-item-has-children:hover > .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(2px);
}

.main-nav-menu .sub-menu li {
  position: relative;
  list-style: none;
  margin: 0;
}
.main-nav-menu .sub-menu li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 22px;
  font-size: 13.5px;
  font-weight: 500;
  color: var(--ink);
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease, padding-left 0.2s ease;
}
.main-nav-menu .sub-menu li:hover > a {
  background: rgba(111, 66, 35, 0.06);
  color: var(--brown-dark);
  padding-left: 26px;
}

/* Submenu Level 2 (Nested Dropdown) */
.main-nav-menu .sub-menu .sub-menu {
  top: -8px;
  left: 100%;
  margin-left: 6px;
  transform: translateX(10px);
}
.main-nav-menu .sub-menu li.menu-item-has-children:hover > .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

/* Set theme mod for header-menu location in DB if needed */


/* --- FULL-WIDTH SPOTLIGHT VIDEO --- */
.spotlight .container {
  display: block !important;
  width: 100% !important;
  max-width: 1280px;
  margin: 0 auto;
}
.spotlight-img {
  width: 100% !important;
  margin-top: 0 !important;
  height: auto !important;
  border-radius: 12px;
  overflow: hidden;
}


/* --- BUNDLE SECTION ENHANCEMENTS --- */
.bundle-inside-heading {
  font-family: var(--serif, serif);
  font-size: 20px;
  color: var(--ink, #1f2c24);
  margin: 28px 0 16px 0;
  font-weight: 600;
}

.bundle-cleanser-list {
  list-style: none;
  padding: 0;
  margin: 0 0 32px 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.bundle-cleanser-item {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px 16px;
  background: rgba(255, 255, 255, 0.65);
  border: 1px solid rgba(111, 66, 35, 0.12);
  border-radius: 12px;
  text-decoration: none !important;
  transition: all 0.25s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}

.bundle-cleanser-item:hover {
  background: #ffffff;
  border-color: #6f4223;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(111, 66, 35, 0.1);
}

.bundle-cleanser-item img {
  width: 56px;
  height: 56px;
  object-fit: cover;
  border-radius: 8px;
  flex-shrink: 0;
  border: 1px solid rgba(0, 0, 0, 0.05);
}

.bundle-cleanser-info strong {
  display: block;
  font-size: 15px;
  color: #1f2c24;
  margin-bottom: 3px;
  font-weight: 600;
}

.bundle-cleanser-info p {
  font-size: 13.5px;
  color: #555;
  margin: 0;
  line-height: 1.45;
}

.bundle-actions {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  margin-top: 24px;
}

.bundle-hero-card {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
  border: 1px solid rgba(111, 66, 35, 0.15);
  background: #ffffff;
}

.bundle-hero-img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  transition: transform 0.6s ease;
}

.bundle-hero-card:hover .bundle-hero-img {
  transform: scale(1.03);
}

.bundle-badge-overlay {
  position: absolute;
  top: 18px;
  right: 18px;
  background: rgba(31, 44, 36, 0.9);
  color: #ffffff;
  font-size: 12px;
  font-weight: 600;
  padding: 6px 14px;
  border-radius: 30px;
  letter-spacing: 0.05em;
  backdrop-filter: blur(4px);
}

.section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 36px;
}

.btn-view-all {
  white-space: nowrap;
  flex-shrink: 0;
}

/* --- SHOP PAGINATION FIX (HORIZONTAL ROW) --- */
.shop-pagination,
.woocommerce-pagination {
  width: 100% !important;
  margin: 45px 0 20px 0 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  clear: both !important;
}

.woocommerce-pagination ul.page-numbers,
.shop-pagination ul.page-numbers {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
}

.woocommerce-pagination ul.page-numbers li,
.shop-pagination ul.page-numbers li {
  display: inline-block !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  list-style: none !important;
}

.woocommerce-pagination ul.page-numbers li a,
.woocommerce-pagination ul.page-numbers li span,
.shop-pagination ul.page-numbers li a,
.shop-pagination ul.page-numbers li span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(111, 66, 35, 0.2) !important;
  background: #ffffff !important;
  color: #5c3a21 !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.04) !important;
}

.woocommerce-pagination ul.page-numbers li span.current,
.shop-pagination ul.page-numbers li span.current {
  background: #6f4223 !important;
  color: #ffffff !important;
  border-color: #6f4223 !important;
}

.woocommerce-pagination ul.page-numbers li a:hover,
.shop-pagination ul.page-numbers li a:hover {
  background: #6f4223 !important;
  color: #ffffff !important;
  border-color: #6f4223 !important;
}


/* --- BUNDLE SECTION 50/50 GRID & SIDE-BY-SIDE BUTTONS --- */
.bundle .container {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 50px !important;
  align-items: center !important;
}

.bundle-copy {
  width: 100% !important;
}

.bundle-visual {
  width: 100% !important;
}

.bundle-actions {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
  margin-top: 28px !important;
}

.bundle-actions .btn-primary,
.bundle-actions .btn-outline {
  margin: 0 !important;
}

@media (max-width: 991px) {
  .bundle .container {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }
}

/* --- COMPLETE SHOP PAGINATION OVERRIDE (NO SEPARATOR LINES) --- */
.shop-pagination,
.woocommerce-pagination {
  width: 100% !important;
  margin: 45px 0 20px 0 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  clear: both !important;
  background: transparent !important;
  border: none !important;
}

.woocommerce-pagination ul.page-numbers,
.shop-pagination ul.page-numbers {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  background: transparent !important;
}

.woocommerce-pagination ul.page-numbers::before,
.woocommerce-pagination ul.page-numbers::after,
.woocommerce-pagination ul.page-numbers li::before,
.woocommerce-pagination ul.page-numbers li::after,
.shop-pagination ul.page-numbers::before,
.shop-pagination ul.page-numbers::after,
.shop-pagination ul.page-numbers li::before,
.shop-pagination ul.page-numbers li::after {
  content: none !important;
  display: none !important;
  border: none !important;
  width: 0 !important;
  height: 0 !important;
}

.woocommerce-pagination ul.page-numbers li,
.shop-pagination ul.page-numbers li {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  list-style: none !important;
  border: none !important;
  background: transparent !important;
}

.woocommerce-pagination ul.page-numbers li a,
.woocommerce-pagination ul.page-numbers li span,
.shop-pagination ul.page-numbers li a,
.shop-pagination ul.page-numbers li span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(111, 66, 35, 0.25) !important;
  background: #ffffff !important;
  color: #5c3a21 !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  line-height: 1 !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.04) !important;
  margin: 0 !important;
  padding: 0 !important;
}

.woocommerce-pagination ul.page-numbers li span.current,
.shop-pagination ul.page-numbers li span.current {
  background: #6f4223 !important;
  color: #ffffff !important;
  border-color: #6f4223 !important;
  box-shadow: 0 6px 14px rgba(111, 66, 35, 0.3) !important;
}

.woocommerce-pagination ul.page-numbers li a:hover,
.shop-pagination ul.page-numbers li a:hover {
  background: #6f4223 !important;
  color: #ffffff !important;
  border-color: #6f4223 !important;
  box-shadow: 0 6px 14px rgba(111, 66, 35, 0.3) !important;
}


/* --- FULL COVERAGE PRODUCT CARD IMAGES --- */
.product-gallery-slide img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}

.product-gallery {
  background: #ffffff !important;
}


/* --- HIDE REMOVED SKININSIGHTS SECTION --- */
#ai, .ai-block {
  display: none !important;
}


/* --- FOOTER CONTACT LIST STYLING --- */
.footer-contact-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}

.footer-contact-list li {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  color: #ffffff !important;
}

.footer-contact-list li span,
.footer-contact-list li a {
  color: #ffffff !important;
  text-decoration: none !important;
  word-break: break-word;
  transition: color 0.2s ease;
}

.footer-contact-list li a:hover {
  color: #d4af37 !important;
}

.contact-icon {
  color: #d4af37 !important;
  font-size: 15px !important;
  margin-top: 3px !important;
  flex-shrink: 0 !important;
}


/* --- FOOTER CONTACT ICON COLOR OVERRIDE --- */
.contact-icon,
.footer-contact-list .contact-icon {
  color: #6F4223 !important;
}

.footer-contact-list li a:hover {
  color: #6F4223 !important;
}


/* --- ABOUT US: OUR PURPOSE SECTION (FLUSH UNCROPPED IMAGE) --- */
.story-band {
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: none !important;
  overflow: hidden;
  width: 100% !important;
}

.story-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  align-items: center !important;
  gap: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.story-visual {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

.story-visual img {
  width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: left center !important;
  display: block !important;
  border: none !important;
  outline: none !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.story-copy {
  padding: 60px 60px 60px 40px !important;
}

@media (max-width: 991px) {
  .story-grid {
    grid-template-columns: 1fr !important;
  }
  .story-copy {
    padding: 40px 24px !important;
  }
}


/* --- STORY BAND BACKGROUND COLOR --- */
.story-band {
  background: #EFE1D2 !important;
}


/* ==========================================================================
   Sidecart Custom Bundle Box Container (Separately Designed with Border)
   ========================================================================== */
.sidecart-bundle-wrapper {
  background: #FAF7F2;
  border: 2px solid #6F4223;
  border-radius: 14px;
  margin-bottom: 22px;
  overflow: hidden;
  box-shadow: 0 4px 14px rgba(111, 66, 35, 0.08);
}
.sidecart-bundle-head {
  background: linear-gradient(135deg, #6F4223 0%, #4D2B14 100%);
  color: #FFFFFF;
  padding: 10px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 13px;
}
.sidecart-bundle-head-left {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 700;
}
.sidecart-bundle-head-left i {
  color: #F59E0B;
}
.sidecart-bundle-badge {
  background: #10B981;
  color: #FFFFFF;
  font-size: 10px;
  font-weight: 800;
  padding: 2px 7px;
  border-radius: 10px;
  letter-spacing: 0.02em;
}
.sidecart-bundle-head-right {
  font-size: 11px;
  color: #E8DFD5;
  font-weight: 600;
}
.sidecart-bundle-items {
  padding: 14px 16px 6px;
  background: #FFFFFF;
}
.sidecart-bundle-items .cart-item {
  padding-bottom: 14px;
  margin-bottom: 14px;
  border-bottom: 1px dashed #E2DDD5;
}
.sidecart-bundle-items .cart-item:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 8px;
}
.sidecart-standard-title {
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #78716C;
  margin: 20px 0 12px;
  padding-bottom: 6px;
  border-bottom: 1px solid #ECE7E1;
}

/* ==========================================================================
   HIGHLIGHTED "CREATE YOUR BUNDLE" MENU ITEM IN HEADER (LUXURY REFINED DESIGN)
   ========================================================================== */
.main-nav-menu > li.menu-item-create-bundle {
  padding: 6px 0;
  display: flex;
  align-items: center;
  margin-left: 8px;
  white-space: nowrap;
  flex-shrink: 0;
}

.byob-header-nav-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  padding: 6px 14px 6px 9px !important;
  background: #FAF5F0 !important;
  color: #6F4223 !important;
  border: 1.5px solid #6F4223 !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  font-family: var(--sans) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  line-height: 1 !important;
  box-shadow: 0 2px 8px rgba(111, 66, 35, 0.08) !important;
  transition: all 0.25s ease !important;
  cursor: pointer;
  white-space: nowrap !important;
  flex-shrink: 0;
}

.nav-links a.byob-header-nav-btn::after,
.main-nav-menu > li.menu-item-create-bundle > a::after {
  display: none !important;
}

.byob-header-nav-btn:hover,
.main-nav-menu > li.menu-item-create-bundle:hover > a.byob-header-nav-btn {
  background: #6F4223 !important;
  color: #FFFFFF !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(111, 66, 35, 0.25) !important;
}

/* Plus Icon inside the Button */
.byob-header-btn-icon {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #6F4223;
  color: #FFFFFF;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 9px;
  transition: all 0.25s ease;
  flex-shrink: 0;
}

.byob-header-nav-btn:hover .byob-header-btn-icon,
.main-nav-menu > li.menu-item-create-bundle:hover .byob-header-btn-icon {
  background: #FFFFFF;
  color: #6F4223;
  transform: rotate(90deg);
}

.byob-header-btn-title {
  color: inherit !important;
  white-space: nowrap;
}

/* Subtle Offer Tag Pill */
.byob-header-tag-pill {
  background: rgba(111, 66, 35, 0.09);
  color: #6F4223;
  font-size: 9.5px;
  font-weight: 800;
  padding: 2px 7px;
  border-radius: 20px;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  white-space: nowrap;
  transition: all 0.25s ease;
}

.byob-header-nav-btn:hover .byob-header-tag-pill,
.main-nav-menu > li.menu-item-create-bundle:hover .byob-header-tag-pill {
  background: rgba(255, 255, 255, 0.22);
  color: #FFFFFF;
}

/* Active State on Bundle Page */
.main-nav-menu > li.menu-item-create-bundle.current-menu-item .byob-header-nav-btn,
.main-nav-menu > li.menu-item-create-bundle.is-active .byob-header-nav-btn {
  background: #6F4223 !important;
  color: #FFFFFF !important;
  box-shadow: 0 3px 12px rgba(111, 66, 35, 0.22) !important;
}

.main-nav-menu > li.menu-item-create-bundle.current-menu-item .byob-header-btn-icon,
.main-nav-menu > li.menu-item-create-bundle.is-active .byob-header-btn-icon {
  background: #FFFFFF;
  color: #6F4223;
}

.main-nav-menu > li.menu-item-create-bundle.current-menu-item .byob-header-tag-pill,
.main-nav-menu > li.menu-item-create-bundle.is-active .byob-header-tag-pill {
  background: rgba(255, 255, 255, 0.22);
  color: #FFFFFF;
}

/* Scrolled state compactness */
header.site.is-scrolled .nav-row {
  padding: 5px 36px;
}
header.site.is-scrolled .logo {
  max-width: 140px;
  height: 50px;
}
header.site.is-scrolled .byob-header-nav-btn {
  padding: 5px 12px 5px 8px !important;
  font-size: 11.5px !important;
}

/* Mobile Header Bundle Pill */
.mobile-byob-header-btn {
  display: none;
}

@media (max-width: 760px) {
  .nav-row {
    padding: 8px 16px;
  }
  .mobile-byob-header-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: #FAF5F0;
    color: #6F4223 !important;
    padding: 5px 10px 5px 7px;
    border-radius: 50px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: 0.03em;
    border: 1.5px solid #6F4223;
    margin-right: 4px;
    line-height: 1;
    transition: all 0.2s ease;
  }
  .mobile-byob-header-btn .fa-plus {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #6F4223;
    color: #FFFFFF;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 8px;
  }
}

/* ==========================================================================
   HOMEPAGE BEFORE & AFTER TRANSFORMATIONS SECTION
   ========================================================================== */
.ba-transformations-section {
  background: #FAF8F5;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  padding: 80px 0;
  position: relative;
}

.ba-carousel-wrapper {
  position: relative;
  max-width: 1200px;
  margin: 30px auto 0;
}

.ba-slides-track {
  position: relative;
  min-height: 480px;
}

.ba-slide-item {
  display: none;
  opacity: 0;
  transition: opacity 0.4s ease;
}

.ba-slide-item.is-active {
  display: block;
  opacity: 1;
}

.ba-slide-inner {
  display: flex;
  align-items: center;
  gap: 48px;
  background: #FFFFFF;
  border: 1px solid rgba(111, 66, 35, 0.12);
  border-radius: 24px;
  padding: 36px 40px;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.05);
}

/* 30% LEFT: BEFORE / AFTER IMAGE COMPARISON */
.ba-visual-col {
  flex: 0 0 32%;
  max-width: 32%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.ba-compare-box {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.1);
  background: #EFEAE3;
  user-select: none;
  touch-action: pan-y;
}

.ba-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  pointer-events: none;
}

.ba-clip-layer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  clip-path: inset(0 calc(100% - var(--pos, 50%)) 0 0);
  pointer-events: none;
  will-change: clip-path;
}

.ba-handle {
  position: absolute;
  top: 0;
  bottom: 0;
  left: var(--pos, 50%);
  transform: translateX(-50%);
  width: 3px;
  background: #FFFFFF;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.4);
  pointer-events: none;
  z-index: 5;
}

.ba-handle-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #6F4223;
  color: #FFFFFF;
  border: 2.5px solid #FFFFFF;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
}

.ba-badge {
  position: absolute;
  top: 14px;
  z-index: 6;
  padding: 4px 10px;
  border-radius: 20px;
  font-size: 10.5px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  backdrop-filter: blur(8px);
  pointer-events: none;
}

.ba-badge-before {
  left: 14px;
  background: rgba(28, 25, 23, 0.7);
  color: #FFFFFF;
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.ba-badge-after {
  right: 14px;
  background: rgba(111, 66, 35, 0.85);
  color: #FFFFFF;
  border: 1px solid rgba(212, 163, 115, 0.5);
}

.ba-slider-input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: ew-resize;
  z-index: 10;
  margin: 0;
}

.ba-drag-hint {
  font-size: 11.5px;
  font-weight: 600;
  color: var(--byob-text-muted, #78716C);
  margin-top: 10px;
  display: flex;
  align-items: center;
  gap: 5px;
}

/* 70% REST: TITLE, CIRCLED IMAGE, WHAT HE/SHE SAID */
.ba-content-col {
  flex: 0 0 calc(68% - 48px);
  max-width: calc(68% - 48px);
  display: flex;
  flex-direction: column;
}

.ba-header-meta {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.ba-regimen-tag {
  font-size: 11.5px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #6F4223;
  background: #FAF4EF;
  border: 1px solid rgba(111, 66, 35, 0.2);
  padding: 3px 10px;
  border-radius: 50px;
}

.ba-metric-pill {
  font-size: 11.5px;
  font-weight: 700;
  color: #15803D;
  background: #F0FDF4;
  border: 1px solid rgba(21, 128, 61, 0.2);
  padding: 3px 10px;
  border-radius: 50px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.ba-story-title {
  font-family: var(--serif, 'Fraunces', serif);
  font-size: 26px;
  font-weight: 700;
  color: #1C1917;
  line-height: 1.3;
  margin: 0 0 10px;
}

.ba-stars-row {
  display: flex;
  gap: 3px;
  color: #F59E0B;
  font-size: 13px;
  margin-bottom: 14px;
}

.ba-quote-card {
  position: relative;
  background: #FAF7F2;
  border-left: 3px solid #6F4223;
  border-radius: 0 14px 14px 0;
  padding: 18px 22px 18px 38px;
  margin-bottom: 22px;
}

.ba-quote-icon {
  position: absolute;
  top: 16px;
  left: 14px;
  font-size: 16px;
  color: #C7B7A6;
}

.ba-quote-text {
  font-family: var(--sans, 'Manrope', sans-serif);
  font-size: 14.5px;
  line-height: 1.65;
  color: #44403C;
  font-style: italic;
  margin: 0;
}

.ba-customer-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding-top: 14px;
  border-top: 1px solid #EFEAE3;
}

.ba-customer-profile {
  display: flex;
  align-items: center;
  gap: 16px;
}

.ba-avatar-circled-wrap {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  padding: 3px;
  background: #FFFFFF;
  border: 2px solid #6F4223;
  box-shadow: 0 4px 12px rgba(111, 66, 35, 0.15);
  flex-shrink: 0;
}

.ba-avatar-circled {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}

.ba-customer-info {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.ba-author-name {
  font-family: var(--serif, 'Fraunces', serif);
  font-size: 17px;
  font-weight: 700;
  color: #1C1917;
  margin: 0;
}

.ba-author-location {
  font-size: 12px;
  color: #78716C;
  display: flex;
  align-items: center;
  gap: 8px;
}

.ba-verified-tag {
  color: #15803D;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 3px;
}

.ba-product-rec {
  font-size: 12px;
  color: #57534E;
  margin-top: 2px;
}

.ba-product-rec a {
  color: #6F4223;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Navigation controls */
.ba-carousel-controls {
  display: flex;
  align-items: center;
  gap: 12px;
}

.ba-nav-arrow {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 1.5px solid #6F4223;
  background: #FFFFFF;
  color: #6F4223;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.ba-nav-arrow:hover {
  background: #6F4223;
  color: #FFFFFF;
  transform: translateY(-1px);
}

.ba-slide-counter {
  font-size: 13px;
  font-weight: 700;
  color: #78716C;
  min-width: 40px;
  text-align: center;
}

.ba-dots-container {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin-top: 24px;
}

.ba-dot-btn {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: none;
  background: #D6D0C5;
  cursor: pointer;
  padding: 0;
  transition: all 0.25s ease;
}

.ba-dot-btn.is-active {
  background: #6F4223;
  width: 24px;
  border-radius: 12px;
}

/* Responsive */
@media (max-width: 900px) {
  .ba-slide-inner {
    flex-direction: column;
    padding: 24px;
    gap: 30px;
  }
  .ba-visual-col {
    flex: 0 0 100%;
    max-width: 360px;
    width: 100%;
  }
  .ba-content-col {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .ba-story-title {
    font-size: 20px;
  }
  .ba-customer-footer {
    flex-wrap: wrap;
    gap: 15px;
  }
}

/* Uniform hero banner height regardless of each image's native aspect ratio */
.hero-slide {
  height: 510px;
  overflow: hidden;
}
.hero-slide > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
@media (max-width: 782px) {
  .hero-slide, .hero-slide > img { height: 320px; }
}
