:root{--lbh-pink:#f8dce5;--lbh-hot:#e73f79;--lbh-ink:#171717;--lbh-line:#eadfe3}.lbh-page,.lbh-page *{box-sizing:border-box}.lbh-page{font-family:Arial,sans-serif;color:var(--lbh-ink);background:#fff}.lbh-announcement{overflow:hidden;background:linear-gradient(90deg,#f9bfd1,#ffeaf0,#f9bfd1);font-size:13px;font-weight:700;white-space:nowrap}.lbh-announcement div{display:inline-block;padding:9px 0;min-width:100%;animation:lbh-marquee 18s linear infinite}@keyframes lbh-marquee{from{transform:translateX(100%)}to{transform:translateX(-100%)}}@media(prefers-reduced-motion:reduce){.lbh-announcement div{animation:none;text-align:center}}
.lbh-header{max-width:1440px;margin:auto;display:grid;grid-template-columns:190px 1fr auto;gap:24px;align-items:center;padding:18px 28px}.lbh-logo img{width:175px;max-height:70px;object-fit:contain}.lbh-search{display:flex;border:1px solid #e4cfd6;border-radius:8px;overflow:hidden}.lbh-search input{width:100%;border:0;padding:15px 17px;font-size:15px;outline:none}.lbh-search button{width:54px;border:0;background:#111;color:#fff;font-size:24px}.lbh-head-actions{display:flex;gap:18px}.lbh-head-actions a{color:#111;text-decoration:none;font-weight:600;font-size:14px}
.lbh-hero{max-width:1380px;min-height:500px;margin:0 auto 28px;background-size:cover;background-position:center;border-radius:10px;display:flex;align-items:center;padding:52px;position:relative;overflow:hidden;isolation:isolate}.lbh-hero:before{content:"";position:absolute;z-index:-1;inset:0 auto 0 0;width:56%;background:linear-gradient(90deg,rgba(255,250,246,.98) 0%,rgba(255,250,246,.94) 62%,rgba(255,250,246,.35) 88%,transparent 100%)}.lbh-hero-content{max-width:510px;padding:28px 30px;border-radius:12px;background:rgba(255,255,255,.72);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);position:relative;z-index:1}.lbh-hero-content>span{color:#d43f75;font-weight:700}.lbh-hero h1{font-family:Georgia,serif;font-size:56px;line-height:1.04;margin:12px 0 14px}.lbh-hero p{font-size:17px;line-height:1.55;max-width:430px;margin:0 0 5px}.lbh-btn{display:inline-block;padding:15px 24px;margin:12px 10px 0 0;border-radius:6px;text-decoration:none;font-weight:700;font-size:13px}.lbh-btn.dark{background:#111;color:#fff}.lbh-btn.light{background:#fff;color:#111;border:1px solid #ddd}
.lbh-section{max-width:1380px;margin:0 auto;padding:20px 28px}.lbh-section h2{font-size:26px;margin:0}.lbh-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.lbh-section-head a{color:#111;text-decoration:none;font-weight:700}.lbh-categories>h2{margin-bottom:14px}.lbh-category-track,.lbh-collection-track{display:flex;gap:14px;overflow-x:auto;scrollbar-width:none;padding-bottom:8px}.lbh-category-track::-webkit-scrollbar,.lbh-collection-track::-webkit-scrollbar,.lbh-product-track::-webkit-scrollbar{display:none}.lbh-category-track a{flex:0 0 auto;padding:15px 22px;border:1px solid var(--lbh-line);border-radius:14px;color:#111;text-decoration:none;font-weight:700;background:#fff}.lbh-category-track a:hover{background:#fff3f7}
.lbh-carousel-shell{position:relative}.lbh-product-track{display:flex;gap:16px;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x proximity;padding:4px 2px 12px;scrollbar-width:none}.lbh-product-card{flex:0 0 calc((100% - 80px)/6);min-width:185px;scroll-snap-align:start;background:#fff;border:1px solid #f0e8eb;border-radius:12px;overflow:hidden}.lbh-product-image{position:relative;display:block;aspect-ratio:1/1;background:#fafafa}.lbh-product-image img{width:100%;height:100%;object-fit:contain}.lbh-badge{position:absolute;left:8px;top:8px;background:var(--lbh-hot);color:#fff;padding:5px 8px;border-radius:5px;font-size:12px;font-weight:700}.lbh-product-body{padding:12px}.lbh-product-body h3{font-size:14px;line-height:1.35;margin:0 0 7px}.lbh-product-body h3 a{color:#111;text-decoration:none}.lbh-product-body p{font-size:12px;color:#666;line-height:1.35;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.lbh-price{font-weight:700;font-size:14px}.lbh-price del{font-weight:400;color:#888}.lbh-price ins{text-decoration:none;color:#d12f64}.lbh-arrow{position:absolute;z-index:3;top:40%;width:42px;height:42px;border-radius:50%;border:1px solid #ddd;background:#fff;box-shadow:0 4px 12px #0002;font-size:30px;cursor:pointer}.lbh-prev{left:-18px}.lbh-next{right:-18px}
.lbh-collection-card{flex:0 0 320px;border:1px solid var(--lbh-line);border-radius:14px;padding:16px;background:linear-gradient(145deg,#fff,#fff4f7)}.lbh-collection-top{display:flex;justify-content:space-between;align-items:center}.lbh-collection-top h3{font-family:Georgia,serif;font-size:23px;margin:0 0 12px}.lbh-collection-top a,.lbh-view-more{color:#111;text-decoration:none;font-weight:700}.lbh-collection-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.lbh-collection-grid a{aspect-ratio:1/1;background:#fff;border-radius:9px;overflow:hidden}.lbh-collection-grid img{width:100%;height:100%;object-fit:contain}.lbh-view-more{display:inline-block;margin-top:12px}
.lbh-benefits{max-width:1324px;margin:26px auto;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#eadde1;border:1px solid #eadde1;border-radius:12px;overflow:hidden}.lbh-benefits div{background:#fff4f7;padding:20px;text-align:center}.lbh-benefits strong,.lbh-benefits span{display:block}.lbh-benefits strong{margin-bottom:6px}.lbh-benefits span{font-size:13px;color:#666;line-height:1.4}
.lbh-newsletter{max-width:1324px;margin:26px auto;padding:28px 34px;background:linear-gradient(100deg,#ffe9f0,#fff8fa);border:1px solid #f1d9e1;border-radius:12px;display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:center}.lbh-newsletter h2{font-family:Georgia,serif;font-size:30px;margin:0 0 7px}.lbh-newsletter p{margin:0;color:#666}.lbh-newsletter form{display:flex}.lbh-newsletter input{flex:1;padding:15px;border:1px solid #ddd;border-radius:6px 0 0 6px}.lbh-newsletter button{border:0;background:#111;color:#fff;font-weight:700;padding:0 24px;border-radius:0 6px 6px 0}.lbh-form-msg{grid-column:1/-1;color:#387349;font-weight:700}
.lbh-instagram-placeholder{padding:30px;border:1px dashed #d8c4cb;border-radius:10px;text-align:center;color:#777}.lbh-footer{margin-top:28px;background:#111;color:#fff;padding:45px max(28px,calc((100% - 1324px)/2));display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:35px}.lbh-footer img{width:180px;filter:brightness(0) invert(1)}.lbh-footer p{color:#bbb;line-height:1.6}.lbh-footer h3{margin-top:0}.lbh-footer a{display:block;color:#d9d9d9;text-decoration:none;margin:8px 0;font-size:14px}.lbh-copyright{grid-column:1/-1;border-top:1px solid #333;padding-top:20px;color:#aaa;font-size:13px}.lbh-category-search{display:flex;gap:8px;margin:0 0 20px}.lbh-category-search input{flex:1;padding:12px;border:1px solid #ddd;border-radius:6px}.lbh-category-search button{padding:12px 20px;background:#111;color:#fff;border:0;border-radius:6px}
@media(max-width:1024px){.lbh-header{grid-template-columns:150px 1fr auto;padding:15px 20px;gap:14px}.lbh-logo img{width:145px}.lbh-hero{min-height:420px;margin:0 20px 20px;padding:34px;background-position:62% center}.lbh-hero:before{width:68%}.lbh-hero-content{max-width:470px;padding:24px}.lbh-hero h1{font-size:44px}.lbh-product-card{flex-basis:calc((100% - 32px)/3)}.lbh-benefits{margin-left:20px;margin-right:20px;grid-template-columns:repeat(2,1fr)}.lbh-newsletter{margin-left:20px;margin-right:20px}.lbh-footer{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){.lbh-header{grid-template-columns:1fr auto;gap:10px;padding:12px 16px}.lbh-logo img{width:145px}.lbh-search{grid-column:1/-1;grid-row:2}.lbh-head-actions{gap:12px}.lbh-hero{min-height:460px;margin:0 12px 16px;padding:20px;align-items:flex-end;background-position:68% center}.lbh-hero:before{inset:0;width:100%;background:linear-gradient(180deg,rgba(255,255,255,.08) 25%,rgba(255,250,246,.96) 72%,rgba(255,250,246,.99) 100%)}.lbh-hero-content{max-width:100%;width:100%;padding:20px;background:rgba(255,255,255,.86)}.lbh-hero h1{font-size:36px}.lbh-hero p{font-size:14px}.lbh-btn{padding:12px 15px;font-size:11px}.lbh-section{padding:17px 16px}.lbh-section h2{font-size:22px}.lbh-product-card{flex-basis:76%;min-width:240px}.lbh-arrow{display:none}.lbh-collection-card{flex-basis:84vw}.lbh-benefits{margin:18px 16px;grid-template-columns:1fr 1fr}.lbh-benefits div{padding:16px 10px}.lbh-newsletter{margin:20px 16px;padding:24px 18px;grid-template-columns:1fr}.lbh-newsletter form{flex-direction:column;gap:8px}.lbh-newsletter input,.lbh-newsletter button{border-radius:6px;min-height:50px}.lbh-footer{grid-template-columns:1fr;padding:36px 22px;gap:22px}.lbh-copyright{grid-column:1}.lbh-announcement{font-size:11px}}

/* =========================================================
   LUNA BLOOM ENHANCED SHOP / PRODUCT CATEGORY ARCHIVES
   ========================================================= */
body.lbh-enhanced-shop .site-main,
body.lbh-enhanced-shop main,
body.lbh-enhanced-shop .woocommerce {
  min-width: 0;
}

.lbh-shop-tools,
body.lbh-enhanced-shop .woocommerce-products-header,
body.lbh-enhanced-shop .woocommerce-result-count,
body.lbh-enhanced-shop .woocommerce-ordering,
body.lbh-enhanced-shop ul.products,
body.lbh-enhanced-shop .lbh-shop-pagination {
  width: min(1320px, calc(100% - 40px));
  margin-left: auto;
  margin-right: auto;
}

.lbh-shop-tools {
  margin-top: 24px;
  margin-bottom: 28px;
  padding: 28px;
  border: 1px solid #f0dfe5;
  border-radius: 18px;
  background: linear-gradient(135deg, #fff 0%, #fff7f9 100%);
  box-shadow: 0 10px 30px rgba(67, 35, 46, .06);
}

.lbh-shop-tools__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 22px;
}

.lbh-shop-kicker {
  display: block;
  margin-bottom: 5px;
  color: #d43f75;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.lbh-shop-tools__title {
  margin: 0;
  font-family: Georgia, serif;
  font-size: clamp(32px, 4vw, 48px);
  line-height: 1.05;
  color: #171717;
}

.lbh-shop-tools__head p {
  max-width: 480px;
  margin: 0;
  color: #666;
  line-height: 1.55;
}

.lbh-shop-category-buttons,
.lbh-subcategory-buttons {
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
  overflow-x: auto;
  padding: 2px 1px 10px;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.lbh-shop-category-buttons::-webkit-scrollbar,
.lbh-subcategory-buttons::-webkit-scrollbar { display: none; }

.lbh-shop-category-buttons a,
.lbh-subcategory-buttons a {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 11px 20px;
  border: 1px solid #eadce1;
  border-radius: 999px;
  background: #fff;
  color: #171717;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  transition: transform .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
}

.lbh-shop-category-buttons a:hover,
.lbh-subcategory-buttons a:hover {
  transform: translateY(-1px);
  border-color: #d9a9ba;
  background: #fff0f5;
}

.lbh-shop-category-buttons a.is-active,
.lbh-subcategory-buttons a.is-active {
  border-color: #171717;
  background: #171717;
  color: #fff;
}

.lbh-shop-search {
  display: grid;
  grid-template-columns: 1fr auto;
  margin-top: 14px;
  overflow: hidden;
  border: 1px solid #dccbd1;
  border-radius: 10px;
  background: #fff;
}

.lbh-shop-search input[type="search"] {
  width: 100%;
  min-width: 0;
  min-height: 54px;
  padding: 0 18px;
  border: 0;
  background: transparent;
  color: #171717;
  font-size: 15px;
  outline: 0;
}

.lbh-shop-search button {
  min-width: 112px;
  border: 0;
  background: #171717;
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  cursor: pointer;
}

.lbh-subcategory-wrap {
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid #efe1e6;
}
.lbh-subcategory-wrap > strong { display: block; margin-bottom: 10px; }
.lbh-subcategory-buttons a { min-height: 40px; padding: 9px 15px; font-size: 13px; }

/* Hide a false empty notice when the product loop actually contains products. */
body.lbh-enhanced-shop:has(ul.products li.product) .woocommerce-no-products-found,
body.lbh-enhanced-shop:has(ul.products li.product) .woocommerce-info:has(+ ul.products) {
  display: none !important;
}

/* Keep count and sorting neatly aligned. */
body.lbh-enhanced-shop .woocommerce-result-count {
  float: none !important;
  width: auto;
  margin: 0 0 16px max(20px, calc((100% - 1320px)/2)) !important;
  color: #555;
}
body.lbh-enhanced-shop .woocommerce-ordering {
  float: none !important;
  width: min(220px, calc(100% - 40px));
  margin: -46px max(20px, calc((100% - 1320px)/2)) 20px auto !important;
}
body.lbh-enhanced-shop .woocommerce-ordering select {
  width: 100%;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid #d9d1d4;
  border-radius: 8px;
  background: #fff;
}

/* Stable grid: no mysterious blank columns or stretched gaps. */
body.lbh-enhanced-shop ul.products {
  float: none !important;
  clear: both !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 34px 22px !important;
  padding: 0 !important;
  list-style: none !important;
}

body.lbh-enhanced-shop ul.products::before,
body.lbh-enhanced-shop ul.products::after { display: none !important; }

body.lbh-enhanced-shop ul.products li.product {
  float: none !important;
  clear: none !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 0 18px !important;
  display: flex !important;
  flex-direction: column;
  border: 1px solid #f0e7ea;
  border-radius: 14px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 5px 18px rgba(56, 34, 42, .045);
}

body.lbh-enhanced-shop ul.products li.product > a:first-child,
body.lbh-enhanced-shop ul.products li.product .woocommerce-LoopProduct-link {
  display: flex !important;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  text-decoration: none;
}

body.lbh-enhanced-shop ul.products li.product img {
  display: block;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1;
  margin: 0 !important;
  padding: 10px;
  object-fit: contain;
  background: #fafafa;
}

body.lbh-enhanced-shop ul.products li.product .woocommerce-loop-product__title,
body.lbh-enhanced-shop ul.products li.product h2,
body.lbh-enhanced-shop ul.products li.product h3 {
  margin: 14px 15px 8px !important;
  padding: 0 !important;
  min-height: 3.9em;
  color: #171717;
  font-size: 15px !important;
  line-height: 1.3 !important;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

body.lbh-enhanced-shop ul.products li.product .price {
  display: block;
  margin: auto 15px 12px !important;
  color: #c89012 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
}

body.lbh-enhanced-shop ul.products li.product .button,
body.lbh-enhanced-shop ul.products li.product .added_to_cart {
  align-self: flex-start;
  margin: 0 15px 0 !important;
  padding: 11px 17px !important;
  border-radius: 999px !important;
  background: #d9aa25 !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

body.lbh-enhanced-shop ul.products li.product .button:hover { background: #171717 !important; }

.lbh-shop-pagination { clear: both; padding: 38px 0 54px; }
.lbh-shop-pagination ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  border: 0 !important;
  list-style: none;
}
.lbh-shop-pagination li { margin: 0 !important; border: 0 !important; }
.lbh-shop-pagination a,
.lbh-shop-pagination span {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 8px 14px !important;
  border: 1px solid #e0d4d8 !important;
  border-radius: 8px;
  background: #fff !important;
  color: #171717 !important;
  text-decoration: none;
}
.lbh-shop-pagination .current,
.lbh-shop-pagination a:hover {
  border-color: #171717 !important;
  background: #171717 !important;
  color: #fff !important;
}

@media (max-width: 1024px) {
  .lbh-shop-tools,
  body.lbh-enhanced-shop .woocommerce-products-header,
  body.lbh-enhanced-shop ul.products,
  body.lbh-enhanced-shop .lbh-shop-pagination { width: calc(100% - 32px); }
  .lbh-shop-tools__head { align-items: flex-start; flex-direction: column; gap: 8px; }
  body.lbh-enhanced-shop ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 24px 16px !important; }
  body.lbh-enhanced-shop .woocommerce-result-count { margin-left: 16px !important; }
  body.lbh-enhanced-shop .woocommerce-ordering { margin-right: 16px !important; }
}

@media (max-width: 767px) {
  .lbh-shop-tools { width: calc(100% - 24px); margin-top: 14px; padding: 20px 16px; border-radius: 14px; }
  .lbh-shop-tools__title { font-size: 34px; }
  .lbh-shop-search { grid-template-columns: 1fr; overflow: visible; border: 0; background: transparent; gap: 8px; }
  .lbh-shop-search input[type="search"] { border: 1px solid #dccbd1; border-radius: 8px; background: #fff; }
  .lbh-shop-search button { min-height: 48px; border-radius: 8px; }
  body.lbh-enhanced-shop .woocommerce-result-count,
  body.lbh-enhanced-shop .woocommerce-ordering { float: none !important; width: calc(100% - 24px); margin: 0 auto 12px !important; }
  body.lbh-enhanced-shop ul.products { width: calc(100% - 24px); grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 16px 10px !important; }
  body.lbh-enhanced-shop ul.products li.product { border-radius: 11px; }
  body.lbh-enhanced-shop ul.products li.product img { padding: 5px; }
  body.lbh-enhanced-shop ul.products li.product .woocommerce-loop-product__title,
  body.lbh-enhanced-shop ul.products li.product h2,
  body.lbh-enhanced-shop ul.products li.product h3 { margin: 10px 10px 6px !important; min-height: 3.6em; font-size: 13px !important; -webkit-line-clamp: 3; }
  body.lbh-enhanced-shop ul.products li.product .price { margin: auto 10px 10px !important; font-size: 13px !important; }
  body.lbh-enhanced-shop ul.products li.product .button,
  body.lbh-enhanced-shop ul.products li.product .added_to_cart { margin: 0 10px 0 !important; padding: 9px 12px !important; font-size: 11px !important; }
  .lbh-shop-pagination { width: calc(100% - 24px); padding-top: 26px; }
}


/* =========================================================
   v1.0.4 SHOP ARCHIVE CLEANUP
   ========================================================= */
/* Hide legacy Elementor/shop-page product blocks that can still be injected
   above the native WooCommerce archive by some page-builder templates. */
body.lbh-enhanced-shop .elementor-widget-woocommerce-products,
body.lbh-enhanced-shop .elementor-widget-wc-archive-products ~ .elementor-widget-woocommerce-products,
body.lbh-enhanced-shop .wp-block-woocommerce-product-collection,
body.lbh-enhanced-shop .wc-block-grid:not(.lbh-shop-tools *) {
  display: none !important;
}

/* The Luna Bloom toolbar is the primary archive introduction. */
body.lbh-enhanced-shop .lbh-shop-tools { clear: both; }

/* Use only WooCommerce's native pagination, preventing a duplicated second row. */
body.lbh-enhanced-shop .woocommerce-pagination {
  width: min(1320px, calc(100% - 40px));
  margin: 0 auto !important;
  padding: 38px 0 54px;
  clear: both;
}
body.lbh-enhanced-shop .woocommerce-pagination ul.page-numbers {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
body.lbh-enhanced-shop .woocommerce-pagination ul.page-numbers li {
  margin: 0 !important;
  border: 0 !important;
}
body.lbh-enhanced-shop .woocommerce-pagination .page-numbers a,
body.lbh-enhanced-shop .woocommerce-pagination .page-numbers span {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 8px 14px !important;
  border: 1px solid #e0d4d8 !important;
  border-radius: 8px;
  background: #fff !important;
  color: #171717 !important;
  text-decoration: none;
}
body.lbh-enhanced-shop .woocommerce-pagination .page-numbers .current,
body.lbh-enhanced-shop .woocommerce-pagination .page-numbers a:hover {
  border-color: #171717 !important;
  background: #171717 !important;
  color: #fff !important;
}

/* Twenty products produce five complete rows on desktop. */
@media (min-width: 1025px) {
  body.lbh-enhanced-shop ul.products { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
}


/* v1.0.5: cleaner, easier-to-scroll category chips */
.lbh-shop-category-buttons,
.lbh-subcategory-buttons {
  position: relative;
  scroll-behavior: smooth;
  scroll-snap-type: x proximity;
  overscroll-behavior-x: contain;
  cursor: grab;
  touch-action: pan-x;
  padding-bottom: 12px;
}

.lbh-shop-category-buttons:active,
.lbh-subcategory-buttons:active { cursor: grabbing; }

.lbh-shop-category-buttons a,
.lbh-subcategory-buttons a {
  scroll-snap-align: start;
  user-select: none;
}

/* Hide product-count badges even if another plugin/theme adds them. */
.lbh-subcategory-buttons .count,
.lbh-subcategory-buttons .product-count,
.lbh-subcategory-buttons .term-count,
.lbh-subcategory-buttons sup,
.lbh-subcategory-buttons a > span {
  display: none !important;
}

@media (max-width: 767px) {
  .lbh-shop-category-buttons,
  .lbh-subcategory-buttons {
    gap: 9px;
    margin-right: -16px;
    padding-right: 28px;
  }

  .lbh-shop-category-buttons a,
  .lbh-subcategory-buttons a {
    min-height: 42px;
    padding: 10px 16px;
    font-size: 13px;
  }
}

/* =========================================================
   v1.0.6 SHARP LOGO RENDERING
   Keeps the original full-resolution logo from being stretched or softened.
   ========================================================= */
.lbh-logo {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
}
.lbh-logo img,
.lbh-footer img {
  display: block;
  width: auto !important;
  height: auto !important;
  max-width: 100%;
  object-fit: contain;
  object-position: left center;
  image-rendering: auto;
  filter: none !important;
  opacity: 1 !important;
  transform: translateZ(0);
  backface-visibility: hidden;
}
.lbh-header .lbh-logo img {
  max-width: 165px;
  max-height: 64px;
}
.lbh-footer > div:first-child > img {
  max-width: 180px;
  max-height: 72px;
}
@media (max-width: 1024px) {
  .lbh-header .lbh-logo img { max-width: 145px; max-height: 58px; }
  .lbh-footer > div:first-child > img { max-width: 165px; }
}
@media (max-width: 767px) {
  .lbh-header .lbh-logo img { max-width: 125px; max-height: 50px; }
  .lbh-footer > div:first-child > img { max-width: 150px; }
}

/* =========================================================
   v1.0.7 — SHARP RESPONSIVE LOGOS + GLOBAL FOOTER BRAND LOGO
   ========================================================= */
.lbh-logo,
.lbh-footer-logo {
  display: inline-flex;
  align-items: center;
  line-height: 0;
}

.lbh-logo img {
  display: block;
  width: min(175px, 100%);
  height: auto;
  max-height: none;
  object-fit: contain;
  object-position: left center;
  image-rendering: auto;
  backface-visibility: hidden;
  transform: translateZ(0);
}

/* A deliberate white logo panel keeps the original black logo crisp on the
   dark footer and prevents it from appearing as a blank white rectangle. */
.lbh-footer-logo {
  width: min(230px, 100%);
  min-height: 74px;
  padding: 10px 14px;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}

.lbh-footer-logo img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 58px;
  object-fit: contain;
  object-position: left center;
  filter: none !important;
  image-rendering: auto;
  backface-visibility: hidden;
  transform: translateZ(0);
}

.lbh-footer-brand p {
  max-width: 300px;
}

/* Override the older broad footer image rule. */
.lbh-footer > div > img,
.lbh-footer img {
  filter: none;
}

@media (max-width: 1024px) {
  .lbh-logo img { width: min(150px, 100%); }
  .lbh-footer-logo { width: min(210px, 100%); }
}

@media (max-width: 767px) {
  .lbh-logo img { width: min(132px, 100%); }
  .lbh-footer-logo {
    width: min(205px, 100%);
    min-height: 66px;
    padding: 9px 12px;
  }
  .lbh-footer-logo img { max-height: 50px; }
}


/* =========================================================
   v1.0.8 — SINGLE PRODUCT + AUTOMATIC RELATED PRODUCTS CAROUSEL
   WooCommerce automatically selects related products from matching categories
   and tags. Ten items are loaded and can be swiped or horizontally scrolled.
   ========================================================= */

/* Product and related-product images always behave as direct product links. */
.lbh-single-product .woocommerce-product-gallery a,
.lbh-single-product .related.products li.product > a.woocommerce-LoopProduct-link,
.lbh-single-product .related.products li.product a img {
  cursor: pointer;
}

.lbh-single-product .related.products {
  position: relative;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  margin-top: 34px;
}

.lbh-single-product .related.products > h2 {
  margin: 0 0 18px;
  font-size: clamp(24px, 2.4vw, 34px);
  line-height: 1.2;
}

.lbh-single-product .related.products ul.products {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: stretch;
  gap: 18px;
  width: 100%;
  max-width: 100%;
  margin: 0 !important;
  padding: 2px 2px 18px !important;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  scroll-snap-type: x proximity;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scrollbar-color: #d9b8c3 transparent;
}

.lbh-single-product .related.products ul.products::-webkit-scrollbar {
  height: 7px;
}
.lbh-single-product .related.products ul.products::-webkit-scrollbar-track {
  background: transparent;
}
.lbh-single-product .related.products ul.products::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: #d9b8c3;
}

.lbh-single-product .related.products ul.products li.product {
  float: none !important;
  flex: 0 0 clamp(190px, 20vw, 245px);
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
  padding: 12px !important;
  border: 1px solid #eee2e6;
  border-radius: 15px;
  background: #fff;
  scroll-snap-align: start;
  box-shadow: 0 4px 14px rgba(32, 18, 24, .045);
}

.lbh-single-product .related.products ul.products li.product a.woocommerce-LoopProduct-link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.lbh-single-product .related.products ul.products li.product a img {
  display: block;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1;
  margin: 0 0 12px !important;
  border-radius: 11px;
  background: #fafafa;
  object-fit: contain;
}

.lbh-single-product .related.products ul.products li.product .woocommerce-loop-product__title {
  min-height: 2.8em;
  margin: 0 0 8px !important;
  font-size: 15px !important;
  line-height: 1.4;
}

.lbh-single-product .related.products ul.products li.product .price {
  display: block;
  margin-bottom: 12px !important;
}

.lbh-single-product .related.products ul.products li.product .button {
  margin-top: auto !important;
}

@media (max-width: 1024px) {
  .lbh-single-product .related.products ul.products li.product {
    flex-basis: clamp(185px, 31vw, 225px);
  }
}

@media (max-width: 767px) {
  .lbh-single-product .related.products {
    margin-top: 26px;
  }
  .lbh-single-product .related.products ul.products {
    gap: 12px;
    padding-bottom: 14px !important;
  }
  .lbh-single-product .related.products ul.products li.product {
    flex-basis: min(72vw, 220px);
    padding: 10px !important;
  }
}

/* Variation image feedback on single-product pages */
.single-product .woocommerce-product-gallery.lbh-variation-loading {
  opacity: .72;
  transition: opacity .16s ease;
}
.single-product .woocommerce-product-gallery__image img {
  transition: opacity .18s ease;
}


/* =========================================================
   MOBILE INSTAGRAM SECTION — v1.0.10
   ========================================================= */
.lbh-instagram .lbh-section-head {
  gap: 14px;
  min-width: 0;
}

.lbh-instagram .lbh-section-head h2,
.lbh-instagram .lbh-section-head a {
  min-width: 0;
}

.lbh-instagram .lbh-section-head a {
  overflow-wrap: anywhere;
  word-break: break-word;
}

@media (max-width: 767px) {
  .lbh-instagram {
    width: 100%;
    max-width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    overflow: hidden;
  }

  .lbh-instagram .lbh-section-head {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;
    margin-bottom: 16px;
    text-align: center;
  }

  .lbh-instagram .lbh-section-head h2 {
    width: 100%;
    margin: 0;
    font-size: clamp(23px, 7vw, 30px);
    line-height: 1.18;
    white-space: normal;
  }

  .lbh-instagram .lbh-section-head a {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0;
    font-size: 14px;
    line-height: 1.35;
    text-align: center;
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  .lbh-instagram-placeholder {
    width: 100%;
    max-width: 100%;
    min-height: 120px;
    padding: 24px 18px;
    font-size: 14px;
    line-height: 1.5;
  }

  /* Keeps connected Instagram feeds inside the phone viewport. */
  .lbh-instagram > div:not(.lbh-section-head):not(.lbh-instagram-placeholder),
  .lbh-instagram iframe,
  .lbh-instagram img {
    max-width: 100%;
  }

  .lbh-instagram iframe {
    width: 100%;
  }
}

/* Hide WooCommerce archive Select Options buttons; product image/title remain clickable. */
.woocommerce ul.products li.product a.button.product_type_variable,
.woocommerce ul.products li.product a.button.add_to_cart_button,
body.lbh-enhanced-shop ul.products li.product > a.button {
  display: none !important;
}
/* ==================================================
   LUNA BLOOM — WELLNESS CATEGORY COLOR
================================================== */

.lbh-page .lbh-category-track > a:last-child,
.lbh-page .lbh-category-track > a[href*="wellness"],
.lbh-shop-tools .lbh-shop-category-buttons > a:last-child,
.lbh-shop-tools .lbh-shop-category-buttons > a[href*="wellness"] {
    background: #fff3c4 !important;
    border-color: #f2d67a !important;
    color: #3a3224 !important;
}

.lbh-page .lbh-category-track > a:last-child:hover,
.lbh-page .lbh-category-track > a[href*="wellness"]:hover,
.lbh-shop-tools .lbh-shop-category-buttons > a:last-child:hover,
.lbh-shop-tools .lbh-shop-category-buttons > a[href*="wellness"]:hover,
.lbh-shop-tools .lbh-shop-category-buttons > a[href*="wellness"].is-active {
    background: #ffe79b !important;
    border-color: #e8c95a !important;
    color: #2b2417 !important;
}