
/* ════════════════════════════════════════
   LISAD — tooteleht, arhiiv, logo
   (lisa assets/css/theme.css lõppu)
   ════════════════════════════════════════ */

/* ── BREADCRUMB ── */
.bb-breadcrumb {
  padding: 24px 48px 0;
  font-family: 'DM Sans', sans-serif;
  font-size: 13px; color: var(--bb-text-muted);
  display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
}
.bb-breadcrumb a { color: var(--bb-text-muted); transition: color .2s; }
.bb-breadcrumb a:hover { color: var(--bb-gold); }
.bb-breadcrumb span { color: var(--bb-text-muted); }

/* ── TOOTELEHT ── */
#bb-product-page {
  padding-top: 80px;
  background: var(--bb-cream);
  min-height: 100vh;
}
.bb-product-layout {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 64px; padding: 40px 20px 80px;
  max-width: 1400px; margin: 0 auto;
}

/* Galerii */
.bb-product-gallery__main {
  position: relative;
  border-radius: var(--bb-radius-lg);
  background: var(--bb-cream-dark);
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.bb-product-gallery__main img,
.bb-product-gallery__main .bb-main-product-img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .4s ease;
}
.bb-product-gallery__main:hover img { transform: scale(1.03); }

.bb-product-gallery__thumbs {
  display: flex; gap: 10px; margin-top: 12px; flex-wrap: wrap;
}
.bb-thumb {
  width: 72px; height: 72px;
  border-radius: 10px; overflow: hidden;
  background: var(--bb-cream-dark);
  cursor: pointer; border: 2px solid transparent;
  transition: border-color .2s;
}
.bb-thumb.active { border-color: var(--bb-gold); }
.bb-thumb img { width: 100%; height: 100%; object-fit: contain; padding: 4px; }

.bb-badge {
  position: absolute; top: 16px; left: 16px;
  font-family: 'DM Sans', sans-serif;
  font-size: 11px; font-weight: 600; letter-spacing: .1em;
  text-transform: uppercase; padding: 5px 12px;
  border-radius: 50px; color: white;
}
.bb-badge--sale { background: #C0392B; }
.bb-badge--out  { background: #888; }

/* Toote info */
.bb-product-info { padding-top: 16px; }
.bb-product-info__cat {
  font-family: 'DM Sans', sans-serif;
  font-size: 11px; font-weight: 500; letter-spacing: .16em;
  color: var(--bb-gold); text-transform: uppercase; margin-bottom: 12px;
}
.bb-product-info__title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(24px, 2.8vw, 38px); line-height: 1.2;
  color: var(--bb-brown-dark); margin-bottom: 20px;
}
.bb-product-info__short-desc {
  font-family: 'DM Sans', sans-serif;
  font-size: 15px; line-height: 1.7; color: var(--bb-text-muted);
  margin-bottom: 24px;
}

.bb-product-attrs {
  display: flex; flex-direction: column; gap: 8px;
  margin-bottom: 28px;
  padding: 20px; background: var(--bb-cream-dark);
  border-radius: var(--bb-radius); border: 1px solid rgba(184,150,90,.1);
}
.bb-attr-row { display: flex; gap: 8px; font-family: 'DM Sans', sans-serif; font-size: 14px; }
.bb-attr-label { color: var(--bb-text-muted); min-width: 120px; }
.bb-attr-val   { color: var(--bb-brown-dark); font-weight: 500; }

.bb-product-info__price {
  display: flex; align-items: center; gap: 12px;
  margin-bottom: 16px;
}
.bb-price-current {
  font-family: 'Playfair Display', serif;
  font-size: 32px; font-weight: 500; color: var(--bb-brown-dark);
}
.bb-price-current .woocommerce-Price-amount { font-size: inherit; }
.bb-price-old {
  font-family: 'DM Sans', sans-serif;
  font-size: 18px; color: var(--bb-text-muted);
  text-decoration: line-through; font-weight: 400;
}
.bb-price-sale { color: #C0392B; }

.bb-stock-info {
  font-family: 'DM Sans', sans-serif;
  font-size: 13px; font-weight: 500;
  display: flex; align-items: center; gap: 7px;
  margin-bottom: 28px;
}
.bb-stock-dot {
  width: 8px; height: 8px; border-radius: 50%;
}
.bb-stock-info.in-stock  { color: #2E7D32; }
.bb-stock-info.in-stock  .bb-stock-dot { background: #4CAF50; }
.bb-stock-info.out-stock { color: #888; }
.bb-stock-info.out-stock .bb-stock-dot { background: #ccc; }

.bb-add-to-cart-wrap {
  display: flex; gap: 12px; align-items: center;
  margin-bottom: 20px; flex-wrap: wrap;
}
.bb-qty-wrap {
  display: flex; align-items: center;
  border: 1.5px solid rgba(29,21,16,.18);
  border-radius: 50px; overflow: hidden;
}
.bb-qty-btn {
  background: none; border: none; cursor: pointer;
  width: 40px; height: 48px; font-size: 18px;
  color: var(--bb-brown-dark); transition: background .2s;
  font-family: 'DM Sans', sans-serif;
}
.bb-qty-btn:hover { background: var(--bb-cream-dark); }
#bb-qty-input {
  width: 44px; text-align: center; border: none; outline: none;
  font-family: 'DM Sans', sans-serif; font-size: 15px; font-weight: 500;
  background: transparent; color: var(--bb-brown-dark);
}
#bb-qty-input::-webkit-outer-spin-button,
#bb-qty-input::-webkit-inner-spin-button { -webkit-appearance: none; }

.bb-cart-submit { flex: 1; justify-content: center; min-width: 200px; }

.bb-wishlist-btn-lg {
  width: 48px; height: 48px; flex-shrink: 0;
  border-radius: 50%;
  border: 1.5px solid rgba(29,21,16,.18);
  background: transparent; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  color: var(--bb-text-muted); transition: all .2s;
}
.bb-wishlist-btn-lg:hover,
.bb-wishlist-btn-lg.active { color: #C0392B; border-color: #C0392B; }

.bb-delivery-note {
  font-family: 'DM Sans', sans-serif;
  font-size: 13px; color: var(--bb-text-muted);
  display: flex; align-items: center; gap: 8px;
  padding: 14px 18px;
  background: var(--bb-cream-dark);
  border-radius: var(--bb-radius);
  border: 1px solid rgba(184,150,90,.12);
}

.bb-product-desc {
  max-width: 1200px; margin: 0 auto;
  padding: 0 48px 80px;
}
.bb-product-desc__title {
  font-family: 'Playfair Display', serif;
  font-size: 24px; color: var(--bb-brown-dark); margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(184,150,90,.2);
}
.bb-product-desc__body {
  font-family: 'DM Sans', sans-serif;
  font-size: 15px; line-height: 1.8; color: var(--bb-text-body);
  columns: 2; gap: 48px;
}
.bb-product-desc__body p { margin-bottom: 14px; break-inside: avoid; }

/* ── TOOTEINFO TABID ── */
.bb-product-tabs-wrap {
  max-width: 1200px; margin: 0 auto;
  padding: 0 48px 80px;
}
.bb-product-tabs-nav {
  display: flex; gap: 0;
  border-bottom: 1px solid rgba(184,150,90,.2);
  margin-bottom: 40px;
}
.bb-product-tab-btn {
  font-family: 'DM Sans', sans-serif; font-size: 15px; font-weight: 500;
  color: var(--bb-text-muted); background: none; border: none; outline: none;
  padding: 14px 28px; cursor: pointer;
  border-bottom: 2px solid transparent; margin-bottom: -1px;
  transition: all .2s;
}
.bb-product-tab-btn:hover { color: var(--bb-brown-dark); }
.bb-product-tab-btn.active {
  color: var(--bb-brown-dark);
  border-bottom-color: var(--bb-gold);
}
.bb-product-tab-panel { display: none; }
.bb-product-tab-panel.active { display: block; }

/* Tooteinfo kaardid */
.bb-tooteinfo-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 20px;
}
.bb-tooteinfo-card {
  background: white; border-radius: 16px;
  padding: 24px 20px; text-align: center;
  border: 1px solid rgba(184,150,90,.12);
  transition: box-shadow .2s, transform .2s;
}
.bb-tooteinfo-card:hover {
  box-shadow: 0 8px 24px rgba(28,21,16,.08);
  transform: translateY(-2px);
}
.bb-tooteinfo-icon {
  width: 48px; height: 48px; margin: 0 auto 14px;
  background: var(--bb-cream-dark); border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
}
.bb-tooteinfo-icon svg {
  width: 22px; height: 22px;
  stroke: var(--bb-gold); fill: none;
}
.bb-tooteinfo-label {
  font-family: 'DM Sans', sans-serif; font-size: 11px;
  font-weight: 600; letter-spacing: .12em; text-transform: uppercase;
  color: var(--bb-text-muted); margin-bottom: 8px;
}
.bb-tooteinfo-val {
  font-family: 'DM Sans', sans-serif; font-size: 14px;
  font-weight: 500; color: var(--bb-brown-dark);
  line-height: 1.4;
}

.bb-related-wrap {
  max-width: 1400px; margin: 0 auto;
  padding: 0 48px 96px;
}

/* ── ARHIIV LEHT ── */
#bb-archive-page {
  padding-top: 72px;
  background: var(--bb-cream);
  min-height: 100vh;
}

.bb-archive-header {
  position: relative; padding: 48px 48px 32px;
  overflow: hidden;
}
.bb-archive-header.has-image {
  min-height: 280px;
  display: flex; align-items: flex-end;
}
.bb-archive-header__bg {
  position: absolute; inset: 0;
}
.bb-archive-header__bg img {
  width: 100%; height: 100%; object-fit: cover;
}
.bb-archive-header__bg::after {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(to right, rgba(28,21,16,.75) 0%, rgba(28,21,16,.3) 60%, transparent 100%);
}
.bb-archive-header__content {
  position: relative; z-index: 1;
  width: 100%;
}
.bb-archive-header__content .bb-breadcrumb {
  padding: 0 0 12px 0;
}
.bb-archive-header.has-image .bb-archive-header__content .bb-breadcrumb {
  color: rgba(255,255,255,.65);
}
.bb-archive-header.has-image .bb-breadcrumb a { color: rgba(255,255,255,.65); }
.bb-archive-header__title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(32px, 4vw, 52px); line-height: 1.1;
  color: var(--bb-brown-dark);
  margin: 0;
}
.bb-archive-header.has-image .bb-archive-header__title { color: white; }

/* Pealkiri + meta samal real */
.bb-archive-header__title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.bb-archive-header__meta {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
}
.bb-archive-header__count {
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  color: var(--bb-text-muted);
  white-space: nowrap;
}
.bb-archive-header__sort {
  font-family: 'DM Sans', sans-serif; font-size: 13px;
  color: var(--bb-brown-dark); background: var(--bb-cream-dark);
  border: 1.5px solid rgba(184,150,90,.2); border-radius: 50px;
  padding: 8px 16px; cursor: pointer; outline: none;
  transition: border-color .2s;
}
.bb-archive-header__sort:hover { border-color: var(--bb-gold); }
.bb-archive-header.has-image .bb-archive-header__title { color: white; }
.bb-archive-header__desc {
  font-family: 'DM Sans', sans-serif;
  font-size: 15px; color: var(--bb-text-muted); margin-top: 12px;
}
.bb-archive-header.has-image .bb-archive-header__desc { color: rgba(255,255,255,.65); }

/* Alamkategooriad */
.bb-subcats {
  display: flex; flex-wrap: wrap; gap: 10px;
  padding: 24px 48px;
  border-bottom: 1px solid rgba(184,150,90,.12);
}
.bb-subcat-chip {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: 'DM Sans', sans-serif; font-size: 13px; font-weight: 500;
  color: var(--bb-brown-mid);
  padding: 8px 18px; border-radius: 50px;
  background: var(--bb-cream-dark);
  border: 1.5px solid transparent;
  transition: all .2s; text-decoration: none;
}
.bb-subcat-chip:hover { border-color: var(--bb-gold); color: var(--bb-gold); }
.bb-subcat-chip img {
  width: 20px; height: 20px; border-radius: 50%; object-fit: cover;
}
.bb-subcat-count {
  background: rgba(184,150,90,.15); color: var(--bb-gold);
  font-size: 11px; padding: 2px 7px; border-radius: 50px;
}

/* Filter riba */
.bb-filter-bar {
  display: flex; align-items: center; justify-content: space-between;
  padding: 20px 48px;
  border-bottom: 1px solid rgba(184,150,90,.1);
}
.bb-filter-bar__count {
  font-family: 'DM Sans', sans-serif; font-size: 14px; color: var(--bb-text-muted);
}
.bb-filter-bar__sort select {
  font-family: 'DM Sans', sans-serif; font-size: 13px;
  color: var(--bb-brown-dark); background: var(--bb-cream-dark);
  border: 1.5px solid rgba(184,150,90,.2); border-radius: 50px;
  padding: 8px 16px; cursor: pointer; outline: none;
  transition: border-color .2s;
}
.bb-filter-bar__sort select:hover { border-color: var(--bb-gold); }

/* Arhiivi grid */
.bb-archive-grid {
  grid-template-columns: repeat(4, 1fr);
  padding: 40px 48px;
  gap: 28px;
}

/* Pagination */
.bb-pagination {
  padding: 20px 48px 80px;
  display: flex; justify-content: center;
}
.bb-pagination .page-numbers {
  display: flex; gap: 6px; list-style: none; padding: 0; margin: 0;
}
.bb-pagination .page-numbers li a,
.bb-pagination .page-numbers li span {
  font-family: 'DM Sans', sans-serif; font-size: 14px; font-weight: 500;
  width: 40px; height: 40px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 50%; text-decoration: none;
  color: var(--bb-brown-mid);
  border: 1.5px solid transparent;
  transition: all .2s;
}
.bb-pagination .page-numbers li a:hover { border-color: var(--bb-gold); color: var(--bb-gold); }
.bb-pagination .page-numbers li span.current {
  background: var(--bb-brown-dark); color: white;
  border-color: var(--bb-brown-dark);
}

/* Empty state */
.bb-empty-state {
  text-align: center; padding: 80px 48px;
  font-family: 'DM Sans', sans-serif; color: var(--bb-text-muted);
}

/* ── LOGO MUUTMINE ── */
.bb-logo-wrap {
  position: relative; display: inline-block;
}
.bb-logo-replace {
  position: absolute; bottom: -8px; right: -8px;
  background: var(--bb-gold); color: white;
  border: none; border-radius: 50%;
  width: 28px; height: 28px;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; font-size: 12px;
  box-shadow: 0 2px 8px rgba(0,0,0,.2);
  transition: all .2s; opacity: 0;
}
.bb-nav__logo:hover .bb-logo-replace { opacity: 1; }
.bb-logo-replace:hover { background: var(--bb-gold-light); transform: scale(1.1); }

/* ── WOOCOMMERCE HINNA OVERRIDE ── */
.bb-price-current .woocommerce-Price-currencySymbol { font-size: 0.7em; }
ins .woocommerce-Price-amount { color: #C0392B; text-decoration: none; }
del .woocommerce-Price-amount { color: var(--bb-text-muted); font-size: 0.8em; }

/* ── RESPONSIVE ── */
@media (max-width: 900px) {
  .bb-product-layout { grid-template-columns: 1fr; gap: 32px; padding: 24px; }
  .bb-archive-grid   { grid-template-columns: repeat(2, 1fr); padding: 24px; }
  .bb-filter-bar, .bb-subcats, .bb-archive-header { padding-left: 24px; padding-right: 24px; }
  .bb-product-desc   { padding: 0 24px 48px; }
  .bb-product-desc__body { columns: 1; }
  .bb-related-wrap   { padding: 0 24px 48px; }
  .bb-breadcrumb     { padding-left: 24px; }
}
@media (max-width: 600px) {
  .bb-archive-grid { grid-template-columns: 1fr 1fr; gap: 14px; }
  .bb-add-to-cart-wrap { flex-direction: column; }
  .bb-cart-submit { width: 100%; }
}

/* ════════════════════════════════
   OSTUKORV
   ════════════════════════════════ */
#bb-cart-page, #bb-checkout-page, #bb-wishlist-page {
  padding-top: 80px; min-height: 100vh;
  background: var(--bb-cream);
}
.bb-page-header { padding: 48px 48px 0; }
.bb-page-title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(28px, 3.5vw, 44px);
  color: var(--bb-brown-dark); margin-top: 12px;
  display: flex; align-items: center; gap: 14px;
}
.bb-cart-count-badge {
  background: var(--bb-gold); color: white;
  font-family: 'DM Sans', sans-serif;
  font-size: 14px; font-weight: 600;
  padding: 2px 12px; border-radius: 50px;
  vertical-align: middle;
}
.bb-back-link {
  font-family: 'DM Sans', sans-serif; font-size: 13px;
  color: var(--bb-text-muted); text-decoration: none;
  display: inline-flex; align-items: center; gap: 6px;
  margin-top: 8px; transition: color .2s;
}
.bb-back-link:hover { color: var(--bb-gold); }

.bb-cart-layout {
  display: grid; grid-template-columns: 1fr 380px;
  gap: 40px; padding: 40px 48px 80px; align-items: start;
}
.bb-cart-item {
  display: grid; grid-template-columns: 80px 1fr auto auto auto;
  gap: 20px; align-items: center;
  padding: 20px 0;
  border-bottom: 1px solid rgba(184,150,90,.12);
}
.bb-cart-item__img {
  width: 80px; height: 80px; border-radius: 10px;
  overflow: hidden; background: var(--bb-cream-dark);
}
.bb-cart-item__img img { width: 100%; height: 100%; object-fit: contain; padding: 4px; }
.bb-cart-item__name a {
  font-family: 'Playfair Display', serif; font-size: 16px;
  color: var(--bb-brown-dark); text-decoration: none; line-height: 1.4;
}
.bb-cart-item__unit-price {
  font-family: 'DM Sans', sans-serif; font-size: 13px;
  color: var(--bb-text-muted); margin-top: 4px;
}
.bb-cart-item__subtotal {
  font-family: 'DM Sans', sans-serif; font-size: 16px;
  font-weight: 500; color: var(--bb-brown-dark); white-space: nowrap;
}
.bb-cart-item__remove {
  color: var(--bb-text-muted); cursor: pointer;
  padding: 6px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  transition: color .2s, background .2s; text-decoration: none;
}
.bb-cart-item__remove:hover { color: #C0392B; background: rgba(192,57,43,.08); }

/* WC qty input override */
.bb-cart-item .quantity input { 
  width: 50px; text-align: center; border: 1.5px solid rgba(184,150,90,.2);
  border-radius: 8px; padding: 6px; font-family: 'DM Sans', sans-serif;
  font-size: 14px; color: var(--bb-brown-dark); background: var(--bb-cream);
}

.bb-cart-actions {
  display: flex; gap: 12px; align-items: center;
  padding: 24px 0; flex-wrap: wrap;
}
.bb-coupon-wrap { display: flex; gap: 0; flex: 1; min-width: 200px; }
.bb-coupon-input {
  flex: 1; padding: 12px 16px; border: 1.5px solid rgba(184,150,90,.2);
  border-right: none; border-radius: 50px 0 0 50px;
  font-family: 'DM Sans', sans-serif; font-size: 13px;
  background: var(--bb-cream); color: var(--bb-brown-dark); outline: none;
}
.bb-coupon-btn { border-radius: 0 50px 50px 0 !important; padding: 12px 20px !important; }

/* Cart summary */
.bb-cart-summary {
  background: white; border-radius: var(--bb-radius-lg);
  padding: 32px; border: 1.5px solid rgba(184,150,90,.12);
  position: sticky; top: 90px;
}
.bb-cart-summary__title {
  font-family: 'Playfair Display', serif; font-size: 20px;
  color: var(--bb-brown-dark); margin-bottom: 24px;
  padding-bottom: 16px; border-bottom: 1px solid rgba(184,150,90,.15);
}
.bb-summary-rows { display: flex; flex-direction: column; gap: 12px; margin-bottom: 20px; }
.bb-summary-row {
  display: flex; justify-content: space-between; align-items: center;
  font-family: 'DM Sans', sans-serif; font-size: 14px; color: var(--bb-text-body);
}
.bb-summary-row--discount { color: #2E7D32; }
.bb-remove-coupon {
  color: var(--bb-text-muted); margin-left: 6px; text-decoration: none; font-size: 16px;
}
.bb-summary-total {
  display: flex; justify-content: space-between; align-items: center;
  padding: 20px 0; margin: 8px 0 24px;
  border-top: 1.5px solid rgba(184,150,90,.2);
  border-bottom: 1.5px solid rgba(184,150,90,.2);
  font-family: 'DM Sans', sans-serif; font-size: 16px; font-weight: 600;
  color: var(--bb-brown-dark);
}
.bb-total-price {
  font-family: 'Playfair Display', serif; font-size: 24px; font-weight: 500;
}
.bb-checkout-btn { width: 100%; justify-content: center; }
.bb-cart-trust {
  display: flex; flex-direction: column; gap: 8px; margin-top: 20px;
}
.bb-trust-item {
  display: flex; align-items: center; gap: 8px;
  font-family: 'DM Sans', sans-serif; font-size: 12px; color: var(--bb-text-muted);
}

/* ════════════════════════════════
   CHECKOUT
   ════════════════════════════════ */
.bb-checkout-steps {
  display: flex; align-items: center;
  padding: 24px 48px; gap: 0;
}
.bb-step {
  display: flex; align-items: center; gap: 8px;
  font-family: 'DM Sans', sans-serif; font-size: 13px; font-weight: 500;
  color: var(--bb-text-muted);
}
.bb-step--active { color: var(--bb-brown-dark); }
.bb-step--done   { color: var(--bb-gold); }
.bb-step__num {
  width: 28px; height: 28px; border-radius: 50%;
  background: var(--bb-cream-dark); display: flex; align-items: center; justify-content: center;
  font-size: 12px; font-weight: 600;
}
.bb-step--active .bb-step__num { background: var(--bb-brown-dark); color: white; }
.bb-step--done   .bb-step__num { background: var(--bb-gold); color: white; }
.bb-step__line { flex: 1; height: 1px; background: rgba(184,150,90,.2); margin: 0 12px; }
.bb-step__line--done { background: var(--bb-gold); }

.bb-checkout-layout {
  display: grid; grid-template-columns: 1fr 380px;
  gap: 40px; padding: 0 48px 80px; align-items: start;
}
.bb-checkout-section {
  background: white; border-radius: var(--bb-radius-lg);
  padding: 32px; border: 1.5px solid rgba(184,150,90,.1);
  margin-bottom: 20px;
}
.bb-checkout-section__title {
  font-family: 'Playfair Display', serif; font-size: 20px;
  color: var(--bb-brown-dark); margin-bottom: 24px;
  display: flex; align-items: center; gap: 10px;
}

/* WC checkout fields override */
.bb-checkout-fields .form-row { margin-bottom: 16px; }
.bb-checkout-fields label {
  font-family: 'DM Sans', sans-serif; font-size: 12px;
  font-weight: 500; letter-spacing: .06em; color: var(--bb-text-muted);
  text-transform: uppercase; margin-bottom: 6px; display: block;
}
.bb-checkout-fields input[type=text],
.bb-checkout-fields input[type=email],
.bb-checkout-fields input[type=tel],
.bb-checkout-fields select,
.woocommerce-checkout .form-row input,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea {
  width: 100%; padding: 12px 16px;
  border: 1.5px solid rgba(184,150,90,.2); border-radius: 10px;
  font-family: 'DM Sans', sans-serif; font-size: 14px;
  color: var(--bb-brown-dark); background: var(--bb-cream);
  outline: none; transition: border-color .2s;
}
.woocommerce-checkout .form-row input:focus,
.woocommerce-checkout .form-row select:focus { border-color: var(--bb-gold); }

/* Payment section */
.bb-payment-section { margin-top: 0; }
.woocommerce-checkout #payment { background: transparent !important; padding: 0 !important; }
.woocommerce-checkout #payment ul.payment_methods { padding: 0; margin: 0; }
.woocommerce-checkout #payment ul.payment_methods li {
  border: 1.5px solid rgba(184,150,90,.15) !important;
  border-radius: 10px !important; margin-bottom: 10px !important;
  padding: 14px 16px !important; background: var(--bb-cream) !important;
  transition: border-color .2s;
}
.woocommerce-checkout #payment ul.payment_methods li:has(input:checked) { border-color: var(--bb-gold) !important; }
.woocommerce-checkout #payment .place-order { padding: 0; margin-top: 20px; }
.woocommerce-checkout #payment #place_order {
  width: 100%; background: var(--bb-brown-dark) !important;
  color: white !important; border: none !important;
  font-family: 'DM Sans', sans-serif !important; font-size: 15px !important;
  font-weight: 500 !important; padding: 18px !important; border-radius: 50px !important;
  cursor: pointer; transition: background .2s !important;
}
.woocommerce-checkout #payment #place_order:hover { background: var(--bb-brown-mid) !important; }

/* Checkout summary */
.bb-checkout-summary {
  background: white; border-radius: var(--bb-radius-lg);
  padding: 32px; border: 1.5px solid rgba(184,150,90,.12);
  position: sticky; top: 90px;
}
.bb-checkout-items { display: flex; flex-direction: column; gap: 14px; margin-bottom: 24px; }
.bb-checkout-item {
  display: grid; grid-template-columns: 50px 1fr auto;
  gap: 12px; align-items: center;
}
.bb-checkout-item__img {
  width: 50px; height: 50px; border-radius: 8px;
  background: var(--bb-cream-dark); overflow: hidden;
}
.bb-checkout-item__img img { width: 100%; height: 100%; object-fit: contain; padding: 3px; }
.bb-checkout-item__name {
  font-family: 'DM Sans', sans-serif; font-size: 13px;
  color: var(--bb-brown-dark); line-height: 1.4;
}
.bb-checkout-item__qty { color: var(--bb-text-muted); font-size: 12px; }
.bb-checkout-item__price {
  font-family: 'DM Sans', sans-serif; font-size: 13px;
  font-weight: 500; white-space: nowrap;
}
.bb-checkout-totals {
  display: flex; flex-direction: column; gap: 10px;
  padding-bottom: 16px; border-bottom: 1px solid rgba(184,150,90,.15);
  margin-bottom: 16px;
}

/* ════════════════════════════════
   LEMMIKUTE LEHT
   ════════════════════════════════ */
.bb-wishlist-content { padding: 32px 48px 80px; }
.bb-wishlist-empty {
  flex-direction: column; align-items: center; justify-content: center;
  text-align: center; padding: 80px;
  font-family: 'DM Sans', sans-serif; color: var(--bb-text-muted);
  grid-column: 1 / -1;
}
.bb-wishlist-actions {
  display: flex; gap: 10px; margin-top: 12px; align-items: center;
}
.bb-remove-wishlist-btn {
  width: 38px; height: 38px; flex-shrink: 0;
  border-radius: 50%; border: 1.5px solid rgba(184,150,90,.2);
  background: transparent; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  color: var(--bb-text-muted); transition: all .2s;
}
.bb-remove-wishlist-btn:hover { color: #C0392B; border-color: #C0392B; }

/* Responsive */
@media (max-width: 900px) {
  .bb-cart-layout, .bb-checkout-layout { grid-template-columns: 1fr; }
  .bb-cart-summary, .bb-checkout-summary { position: static; }
  .bb-page-header, .bb-cart-layout, .bb-checkout-layout,
  .bb-checkout-steps, .bb-wishlist-content { padding-left: 24px; padding-right: 24px; }
  .bb-cart-item { grid-template-columns: 64px 1fr auto auto; }
}
@media (max-width: 600px) {
  .bb-cart-item { grid-template-columns: 56px 1fr auto; }
  .bb-cart-item__subtotal { display: none; }
}

/* ════════════════════════════════════════
   ÄRIKLIENDILE LEHT
   ════════════════════════════════════════ */
#bb-arikliendile { background: var(--bb-cream); }

/* Hero */
.bb-biz-hero-new {
  position: relative;
  min-height: 95vh;
  display: flex; align-items: center;
  overflow: hidden;
  padding-top: 72px;
}
.bb-biz-hero-new__img-wrap {
  position: absolute; inset: 0;
  border-radius: 0; height: 100%; box-shadow: none;
}
.bb-biz-hero-new__img-wrap img {
  width: 100%; height: 100%; object-fit: cover; display: block;
  transition: transform .5s ease;
}
.bb-biz-hero-new__img-wrap:hover img { transform: scale(1.02); }
.bb-biz-hero-new__img-wrap:hover .bb-img-replace { opacity: 1; }
/* Gradient: tume vasakult, sulandub läbipaistvaks paremal */
.bb-biz-hero-new__img-wrap::after {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(
    to right,
    rgba(20,14,10,0.96) 0%,
    rgba(20,14,10,0.88) 30%,
    rgba(20,14,10,0.55) 55%,
    rgba(20,14,10,0.15) 75%,
    transparent 100%
  );
}
.bb-biz-hero-new__content {
  position: relative; z-index: 2;
  padding: 80px 64px; max-width: 680px;
}
.bb-biz-hero-new__tag {
  font-size: 11px; font-weight: 600; letter-spacing: .22em;
  text-transform: uppercase; color: var(--bb-gold);
  margin-bottom: 24px; display: flex; align-items: center; gap: 12px;
}
.bb-biz-hero-new__tag::before {
  content: ''; width: 44px; height: 1.5px; background: var(--bb-gold); flex-shrink: 0;
}
.bb-biz-hero-new__title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(38px, 4.5vw, 64px); line-height: 1.1;
  color: white; margin-bottom: 24px;
}
.bb-biz-hero-new__title em { font-style: italic; color: var(--bb-gold-light); }
.bb-biz-hero-new__subtitle {
  font-family: 'DM Sans', sans-serif;
  font-size: 17px; line-height: 1.75; color: rgba(255,255,255,.7);
  max-width: 480px; margin-bottom: 40px;
}
@media (max-width: 768px) {
  .bb-biz-hero-new__content { padding: 60px 24px; max-width: 100%; }
  .bb-biz-hero-new__img-wrap::after {
    background: linear-gradient(to bottom, rgba(20,14,10,.9) 0%, rgba(20,14,10,.6) 100%);
  }
}

/* Features grid */
.bb-biz-features-section { background: var(--bb-cream-dark); }
.bb-biz-features-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px;
}
.bb-biz-feature-card {
  background: var(--bb-cream); border-radius: var(--bb-radius-lg);
  padding: 36px 28px; transition: transform .25s, box-shadow .25s;
}
.bb-biz-feature-card:hover {
  transform: translateY(-4px); box-shadow: var(--bb-shadow-lg);
}
.bb-biz-feature-card__icon {
  width: 56px; height: 56px; background: rgba(184,150,90,.1);
  border-radius: 14px; display: flex; align-items: center;
  justify-content: center; color: var(--bb-gold); margin-bottom: 20px;
}
.bb-biz-feature-card h3 {
  font-family: 'Playfair Display', serif; font-size: 20px;
  color: var(--bb-brown-dark); margin-bottom: 12px;
}
.bb-biz-feature-card p {
  font-family: 'DM Sans', sans-serif; font-size: 14px;
  line-height: 1.7; color: var(--bb-text-muted);
}

/* Solutions */
.bb-biz-solution {
  display: grid; grid-template-columns: 1fr 1fr;
  min-height: 560px;
}
.bb-biz-solution--reverse { direction: rtl; }
.bb-biz-solution--reverse > * { direction: ltr; }
.bb-biz-solution__image {
  position: relative; overflow: hidden;
  border-radius: 24px;
  margin: 40px 0 40px 48px;
  box-shadow: 0 24px 64px rgba(28,21,16,.18);
}
.bb-biz-solution--reverse .bb-biz-solution__image {
  margin: 40px 48px 40px 0;
}
.bb-biz-solution__image img {
  width: 100%; height: 100%; object-fit: cover; display: block;
  transition: transform .5s ease;
}
.bb-biz-solution__image:hover img { transform: scale(1.03); }
.bb-biz-solution__content {
  background: var(--bb-cream); padding: 72px 64px;
  display: flex; flex-direction: column; justify-content: center;
}
.bb-biz-solution__tag {
  font-family: 'DM Sans', sans-serif;
  font-size: 11px; font-weight: 500; letter-spacing: .18em;
  color: var(--bb-gold); text-transform: uppercase;
  margin-bottom: 16px; display: flex; align-items: center; gap: 10px;
}
.bb-biz-solution__tag::before { content: ''; width: 24px; height: 1px; background: var(--bb-gold); }
.bb-biz-solution__title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(26px, 2.8vw, 38px); line-height: 1.15;
  color: var(--bb-brown-dark); margin-bottom: 16px;
}
.bb-biz-solution__title em { font-style: italic; color: var(--bb-brown-mid); }
.bb-biz-solution__desc {
  font-family: 'DM Sans', sans-serif;
  font-size: 15px; line-height: 1.7; color: var(--bb-text-muted);
  margin-bottom: 24px;
}
.bb-biz-solution__list {
  list-style: none; display: flex; flex-direction: column;
  gap: 10px; margin-bottom: 36px;
}
.bb-biz-solution__list li {
  font-family: 'DM Sans', sans-serif; font-size: 14px;
  color: var(--bb-text-body); display: flex; align-items: center; gap: 10px;
}
.bb-biz-solution__list li svg { color: var(--bb-gold); flex-shrink: 0; }

/* Brands */
.bb-biz-brands { background: var(--bb-cream-dark); }
.bb-brands-grid {
  display: flex; align-items: center; justify-content: center;
  flex-wrap: wrap; gap: 48px;
}
.bb-brand-logo {
  opacity: .6; transition: opacity .25s;
  width: 140px; height: 60px;
  display: flex; align-items: center; justify-content: center;
}
.bb-brand-logo:hover { opacity: 1; }
.bb-brand-logo img { width: 100%; height: 100%; object-fit: contain; filter: grayscale(30%); }

/* Contact */
.bb-biz-contact { background: var(--bb-cream); }
.bb-biz-contact__inner {
  display: grid; grid-template-columns: 1fr 1.4fr; gap: 80px; align-items: start;
}
.bb-biz-contact__title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(28px, 3vw, 40px); color: var(--bb-brown-dark);
  margin-bottom: 16px;
}
.bb-biz-contact__desc {
  font-family: 'DM Sans', sans-serif;
  font-size: 15px; line-height: 1.7; color: var(--bb-text-muted);
  margin-bottom: 36px;
}
.bb-biz-contact__info {
  display: flex; flex-direction: column; gap: 16px;
}
.bb-biz-contact__info a,
.bb-biz-contact__info span {
  font-family: 'DM Sans', sans-serif; font-size: 15px;
  color: var(--bb-text-body); text-decoration: none;
  display: flex; align-items: center; gap: 10px; transition: color .2s;
}
.bb-biz-contact__info a:hover { color: var(--bb-gold); }
.bb-biz-contact__info svg { color: var(--bb-gold); flex-shrink: 0; }

/* Form */
.bb-contact-form { display: flex; flex-direction: column; gap: 16px; }
.bb-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.bb-form-group { display: flex; flex-direction: column; gap: 6px; }
.bb-form-group label {
  font-family: 'DM Sans', sans-serif; font-size: 12px; font-weight: 500;
  letter-spacing: .06em; text-transform: uppercase; color: var(--bb-text-muted);
}
.bb-form-group input,
.bb-form-group select,
.bb-form-group textarea {
  font-family: 'DM Sans', sans-serif; font-size: 14px;
  color: var(--bb-brown-dark); background: white;
  border: 1.5px solid rgba(29,21,16,.12); border-radius: 10px;
  padding: 12px 16px; outline: none; transition: border-color .2s;
  width: 100%;
}
.bb-form-group input:focus,
.bb-form-group select:focus,
.bb-form-group textarea:focus { border-color: var(--bb-gold); }
.bb-form-group textarea { resize: vertical; min-height: 120px; }
.bb-form-note {
  font-family: 'DM Sans', sans-serif; font-size: 12px;
  color: var(--bb-text-muted); text-align: center; margin-top: 4px;
}
.bb-form-success {
  text-align: center; padding: 48px 24px;
  display: flex; flex-direction: column; align-items: center; gap: 16px;
}
.bb-form-success svg { color: var(--bb-gold); }
.bb-form-success h3 {
  font-family: 'Playfair Display', serif; font-size: 24px; color: var(--bb-brown-dark);
}

/* Responsive */
@media (max-width: 1024px) {
  .bb-biz-features-grid { grid-template-columns: repeat(2, 1fr); }
  .bb-biz-solution { grid-template-columns: 1fr; }
  .bb-biz-solution--reverse { direction: ltr; }
  .bb-biz-solution__image { min-height: 320px; }
  .bb-biz-solution__content { padding: 48px 32px; }
  .bb-biz-contact__inner { grid-template-columns: 1fr; gap: 40px; }
  .bb-biz-hero__content { padding: 48px 32px; }
}
@media (max-width: 640px) {
  .bb-biz-features-grid { grid-template-columns: 1fr; }
  .bb-form-row { grid-template-columns: 1fr; }
}

/* ── TOOTEGALERII LÕPLIK FIX ── */
.bb-product-gallery__main {
  position: relative !important;
  border-radius: var(--bb-radius-lg) !important;
  overflow: hidden !important;
  background: var(--bb-cream-dark) !important;
  aspect-ratio: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.bb-product-gallery__main img,
.bb-product-gallery__main .bb-main-product-img {
  max-width: 85% !important;
  max-height: 85% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
  margin: auto !important;
  transition: transform .4s ease !important;
  position: relative !important;
}
.bb-product-gallery__main:hover img { transform: scale(1.03) !important; }

/* ════════════════════════════════════════
   PILTIDE DEFINITIIVNE FIX — kõik tootepildid
   ════════════════════════════════════════ */

/* Kategooria/arhiivi tootepildid — contain, ei ole hägused */
.bb-product-card__img {
  aspect-ratio: 1 !important;
  background: var(--bb-cream-dark) !important;
  border-radius: var(--bb-radius) !important;
  overflow: hidden !important;
  position: relative !important;
  margin-bottom: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.bb-product-card__img img {
  max-width: 85% !important;
  max-height: 85% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
  transition: transform .4s ease !important;
}
.bb-product-card:hover .bb-product-card__img img { transform: scale(1.04) !important; }

/* Tootelehe peapilt — täpne tsentreering */
.bb-product-gallery__main {
  position: relative !important;
  border-radius: var(--bb-radius-lg) !important;
  background: var(--bb-cream-dark) !important;
  aspect-ratio: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}
.bb-product-gallery__main img,
.bb-product-gallery__main .bb-main-product-img,
#bb-main-img {
  max-width: 82% !important;
  max-height: 82% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
  position: static !important;
  transition: transform .4s ease !important;
}

/* Galerii thumbid — tsentris, õige suurus */
.bb-product-gallery__thumbs {
  display: flex !important;
  gap: 10px !important;
  margin-top: 12px !important;
  flex-wrap: wrap !important;
}
.bb-thumb {
  width: 72px !important; height: 72px !important;
  border-radius: 10px !important;
  background: var(--bb-cream-dark) !important;
  cursor: pointer !important;
  border: 2px solid transparent !important;
  transition: border-color .2s !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
}
.bb-thumb.active { border-color: var(--bb-gold) !important; }
.bb-thumb img {
  max-width: 78% !important;
  max-height: 78% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
  padding: 0 !important;
}

/* ── GALERII NOOLED ── */
.bb-gallery-arrow {
  position: absolute; top: 50%; transform: translateY(-50%);
  width: 40px; height: 40px; border-radius: 50%;
  background: rgba(255,255,255,0.92);
  border: 1.5px solid rgba(184,150,90,0.2);
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; z-index: 2;
  color: var(--bb-brown-dark);
  box-shadow: 0 2px 12px rgba(28,21,16,.1);
  transition: all .2s;
  opacity: 0;
}
.bb-product-gallery__main:hover .bb-gallery-arrow { opacity: 1; }
.bb-gallery-arrow:hover {
  background: white;
  border-color: var(--bb-gold);
  color: var(--bb-gold);
  transform: translateY(-50%) scale(1.08);
}
.bb-gallery-arrow--prev { left: 12px; }
.bb-gallery-arrow--next { right: 12px; }

/* Arhiivi tootepildid — täida konteiner */
.bb-archive-grid .bb-product-card__img img {
  max-width: 100% !important;
  max-height: 100% !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 16px !important;
}

/* ── GALERII VERTIKAALNE LAYOUT ── */
.bb-product-gallery {
  display: grid !important;
  grid-template-columns: 88px 1fr !important;
  gap: 12px !important;
  align-items: start !important;
}

/* Thumbid vasakul, vertikaalselt */
.bb-product-gallery__thumbs--vertical {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin-top: 0 !important;
}

.bb-product-gallery__thumbs--vertical .bb-thumb {
  width: 80px !important;
  height: 80px !important;
  border-radius: 10px !important;
  background: var(--bb-cream-dark) !important;
  cursor: pointer !important;
  border: 2px solid transparent !important;
  transition: border-color .2s !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
}
.bb-product-gallery__thumbs--vertical .bb-thumb.active {
  border-color: var(--bb-gold) !important;
}
.bb-product-gallery__thumbs--vertical .bb-thumb img {
  max-width: 78% !important;
  max-height: 78% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
  padding: 0 !important;
}

/* Responsive */
@media (max-width: 900px) {
  .bb-product-gallery {
    grid-template-columns: 1fr !important;
  }
  .bb-product-gallery__thumbs--vertical {
    flex-direction: row !important;
    order: 2 !important;
  }
  .bb-product-gallery__main { order: 1 !important; }
}

/* ── LEMMIKUTE LEHT — ühtlane joondus ── */
#bb-wishlist-page .bb-archive-header,
#bb-wishlist-page .bb-wishlist-wrap {
  padding-left: 48px !important;
  padding-right: 48px !important;
}
#bb-wishlist-page .bb-archive-header {
  padding-top: 40px !important;
  padding-bottom: 24px !important;
}
#bb-wishlist-page .bb-archive-header__title,
#bb-wishlist-page .bb-breadcrumb {
  padding-left: 0 !important;
  margin-left: 0 !important;
}
#bb-wishlist-page .bb-wishlist-wrap {
  padding-top: 0 !important;
}

/* Lemmikute grid — sama padding kui header */
#bb-wishlist-page .bb-archive-grid {
  padding-left: 48px !important;
  padding-right: 48px !important;
  padding-top: 16px !important;
}

/* Wishlist grid — sama padding kui archive-header */
#bb-wishlist-page .bb-archive-grid {
  padding: 16px 48px 80px !important;
}

/* ── B2B PORTAAL ─────────────────────────────────────────────────────────── */

/* Ärikliendile hero CTA rida */
.bb-biz-hero__cta-row {
  display: flex; gap: 14px; flex-wrap: wrap; margin-top: 32px;
}

/* Login */
.bb-b2b-login-wrap {
  min-height: 80vh; display: flex; align-items: center; justify-content: center;
  padding: 60px 24px; background: var(--bb-cream);
}
.bb-b2b-login-box {
  background: white; border-radius: 20px;
  padding: 48px 40px; width: 100%; max-width: 440px;
  box-shadow: 0 24px 60px rgba(28,21,16,.08);
}
.bb-b2b-login-logo img { max-height: 48px; margin-bottom: 24px; }
.bb-b2b-login-brand {
  font-family: 'Playfair Display', serif; font-size: 24px;
  color: var(--bb-brown-dark); margin-bottom: 24px; display: block;
}
.bb-b2b-login-tag {
  font-size: 11px; font-weight: 600; letter-spacing: .16em;
  text-transform: uppercase; color: var(--bb-gold);
  font-family: 'DM Sans', sans-serif; margin-bottom: 10px;
}
.bb-b2b-login-title {
  font-family: 'Playfair Display', serif; font-size: 26px;
  color: var(--bb-brown-dark); margin-bottom: 8px;
}
.bb-b2b-login-sub {
  font-family: 'DM Sans', sans-serif; font-size: 14px;
  color: var(--bb-text-muted); margin-bottom: 28px;
}
.bb-b2b-login-error {
  background: #FDECEA; border: 1.5px solid #e74c3c; border-radius: 10px;
  padding: 10px 14px; font-size: 13px; color: #c0392b;
  font-family: 'DM Sans', sans-serif; margin-bottom: 16px;
}
.bb-b2b-login-form .bb-field { margin-bottom: 16px; }
.bb-b2b-login-form .bb-field label {
  display: block; font-family: 'DM Sans', sans-serif; font-size: 12px;
  font-weight: 500; letter-spacing: .06em; text-transform: uppercase;
  color: var(--bb-brown-mid); margin-bottom: 6px;
}
.bb-b2b-login-form .bb-field input {
  width: 100%; padding: 12px 16px; border: 1.5px solid rgba(29,21,16,.15);
  border-radius: 10px; font-family: 'DM Sans', sans-serif; font-size: 14px;
  color: var(--bb-brown-dark); box-sizing: border-box; outline: none; transition: border-color .2s;
}
.bb-b2b-login-form .bb-field input:focus { border-color: var(--bb-gold); }
.bb-b2b-login-submit {
  width: 100%; padding: 14px; background: var(--bb-brown-dark); color: white;
  border: none; border-radius: 50px; font-family: 'DM Sans', sans-serif;
  font-size: 15px; font-weight: 500; cursor: pointer; display: flex;
  align-items: center; justify-content: center; gap: 8px; transition: background .2s;
  margin-top: 8px;
}
.bb-b2b-login-submit:hover { background: #2c1f14; }
.bb-b2b-login-help {
  text-align: center; font-family: 'DM Sans', sans-serif; font-size: 13px;
  color: var(--bb-text-muted); margin-top: 20px;
}
.bb-b2b-login-help a { color: var(--bb-gold); text-decoration: none; }

/* Portaali päis */
#bb-b2b-page { background: var(--bb-cream); min-height: 100vh; padding-bottom: 80px; padding-top: 72px; }
.bb-b2b-header {
  display: flex; align-items: center; justify-content: space-between;
  padding: 48px 48px 0; margin-bottom: 0;
}
.bb-b2b-header__tag {
  font-size: 11px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase;
  color: var(--bb-gold); font-family: 'DM Sans', sans-serif; margin-bottom: 8px;
}
.bb-b2b-header__title {
  font-family: 'Playfair Display', serif; font-size: 32px; color: var(--bb-brown-dark);
  margin: 0;
}
.bb-b2b-logout {
  font-family: 'DM Sans', sans-serif; font-size: 13px; color: var(--bb-text-muted);
  text-decoration: none; display: flex; align-items: center; gap: 6px; transition: color .2s;
}
.bb-b2b-logout:hover { color: var(--bb-brown-dark); }

/* Tabid */
.bb-b2b-tabs {
  display: flex; gap: 0; padding: 32px 48px 0; border-bottom: 1px solid rgba(184,150,90,.15);
  margin-bottom: 0;
}
.bb-b2b-tab {
  font-family: 'DM Sans', sans-serif; font-size: 14px; font-weight: 500;
  color: var(--bb-text-muted); text-decoration: none;
  padding: 12px 20px; border-bottom: 2px solid transparent;
  display: flex; align-items: center; gap: 7px; transition: all .2s; margin-bottom: -1px;
}
.bb-b2b-tab:hover { color: var(--bb-brown-dark); }
.bb-b2b-tab.active { color: var(--bb-brown-dark); border-bottom-color: var(--bb-gold); }

/* Sektsioon */
.bb-b2b-section { padding: 36px 48px; }
.bb-b2b-order-info {
  background: #FBF5EC; border: 1.5px solid rgba(184,150,90,.3); border-radius: 10px;
  padding: 12px 16px; font-family: 'DM Sans', sans-serif; font-size: 13px;
  color: var(--bb-brown-mid); display: flex; align-items: center; gap: 8px;
  margin-bottom: 28px;
}

/* Kategooria blokk */
.bb-b2b-cat-block { margin-bottom: 36px; }
.bb-b2b-cat-title {
  font-family: 'DM Sans', sans-serif; font-size: 11px; font-weight: 600;
  letter-spacing: .16em; text-transform: uppercase; color: var(--bb-gold);
  margin-bottom: 12px;
}

/* Toote tabel */
.bb-b2b-product-table { background: white; border-radius: 14px; overflow: hidden; }
.bb-b2b-table-head {
  display: grid; grid-template-columns: 1fr 120px 120px 140px;
  padding: 12px 20px; background: rgba(184,150,90,.06);
  font-family: 'DM Sans', sans-serif; font-size: 11px; font-weight: 600;
  letter-spacing: .1em; text-transform: uppercase; color: var(--bb-text-muted);
  border-bottom: 1px solid rgba(29,21,16,.06);
}
.bb-b2b-table-row {
  display: grid; grid-template-columns: 1fr 120px 120px 140px;
  padding: 16px 20px; align-items: center;
  border-bottom: 1px solid rgba(29,21,16,.06);
  transition: background .15s;
}
.bb-b2b-table-row:last-child { border-bottom: none; }
.bb-b2b-table-row:hover { background: rgba(184,150,90,.03); }
.bb-b2b-table-row.out-of-stock { opacity: .5; }
.bb-b2b-product-info { display: flex; align-items: center; gap: 14px; }
.bb-b2b-product-info img {
  width: 48px; height: 48px; object-fit: contain; border-radius: 8px;
  background: var(--bb-cream-dark);
}
.bb-b2b-product-name {
  font-family: 'DM Sans', sans-serif; font-size: 14px; font-weight: 500;
  color: var(--bb-brown-dark);
}
.bb-b2b-product-sku {
  font-family: 'DM Sans', sans-serif; font-size: 12px; color: var(--bb-text-muted);
  margin-top: 2px;
}
.bb-b2b-product-stock {
  font-size: 11px; color: #e74c3c; font-family: 'DM Sans', sans-serif; margin-top: 2px;
}
.bb-b2b-pub-price {
  font-family: 'DM Sans', sans-serif; font-size: 14px; color: var(--bb-text-muted);
  text-decoration: line-through;
}
.bb-b2b-b2b-price {
  font-family: 'DM Sans', sans-serif; font-size: 15px; font-weight: 600;
  color: var(--bb-gold);
}
.bb-b2b-tiers {
  display: flex; flex-direction: column; gap: 3px; margin-top: 6px;
}
.bb-b2b-tier-badge {
  font-family: 'DM Sans', sans-serif; font-size: 11px;
  color: var(--bb-text-muted); background: rgba(184,150,90,.08);
  border: 1px solid rgba(184,150,90,.2); border-radius: 50px;
  padding: 2px 8px; display: inline-block; transition: all .2s;
  white-space: nowrap;
}
.bb-b2b-tier-badge.active {
  background: rgba(184,150,90,.2); color: var(--bb-gold);
  border-color: var(--bb-gold); font-weight: 600;
}

/* Kogus */
.bb-b2b-qty-wrap { display: flex; align-items: center; gap: 6px; }
.bb-b2b-qty-btn {
  width: 32px; height: 32px; border: 1.5px solid rgba(29,21,16,.15); border-radius: 8px;
  background: none; cursor: pointer; font-size: 18px; line-height: 1;
  color: var(--bb-brown-dark); display: flex; align-items: center; justify-content: center;
  transition: all .2s;
}
.bb-b2b-qty-btn:hover { border-color: var(--bb-gold); color: var(--bb-gold); }
.bb-b2b-qty-input {
  width: 52px; text-align: center; padding: 6px; border: 1.5px solid rgba(29,21,16,.15);
  border-radius: 8px; font-family: 'DM Sans', sans-serif; font-size: 14px;
  color: var(--bb-brown-dark); outline: none; transition: border-color .2s;
}
.bb-b2b-qty-input:focus { border-color: var(--bb-gold); }

/* Tellimuse jalus */
.bb-b2b-order-footer {
  margin-top: 32px; background: white; border-radius: 16px; padding: 28px 32px;
  display: flex; align-items: center; gap: 32px; flex-wrap: wrap;
}
.bb-b2b-order-total-label {
  font-family: 'DM Sans', sans-serif; font-size: 13px; color: var(--bb-text-muted);
  margin-bottom: 4px;
}
.bb-b2b-order-total {
  font-family: 'Playfair Display', serif; font-size: 28px; color: var(--bb-brown-dark);
  font-weight: 500;
}
.bb-b2b-payment-choice { display: flex; gap: 12px; flex: 1; }
.bb-b2b-radio { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; }
.bb-b2b-radio input { display: none; }
.bb-b2b-radio-box {
  border: 1.5px solid rgba(29,21,16,.15); border-radius: 12px; padding: 12px 16px;
  transition: all .2s; min-width: 160px;
}
.bb-b2b-radio input:checked + .bb-b2b-radio-box {
  border-color: var(--bb-gold); background: #FBF5EC;
}
.bb-b2b-radio-title {
  font-family: 'DM Sans', sans-serif; font-size: 13px; font-weight: 600;
  color: var(--bb-brown-dark); display: block;
}
.bb-b2b-radio-desc {
  font-family: 'DM Sans', sans-serif; font-size: 12px; color: var(--bb-text-muted);
  display: block; margin-top: 3px;
}
.bb-b2b-submit-btn {
  padding: 14px 28px; font-size: 15px; white-space: nowrap;
  opacity: 1; transition: opacity .2s;
}
.bb-b2b-submit-btn:disabled { opacity: .4; cursor: not-allowed; }

/* Tellimuste ajalugu */
.bb-b2b-empty {
  text-align: center; padding: 60px 20px;
  font-family: 'DM Sans', sans-serif; color: var(--bb-text-muted); font-size: 15px;
}
.bb-b2b-empty svg { display: block; margin: 0 auto 16px; color: rgba(184,150,90,.4); }
.bb-b2b-orders-list { display: flex; flex-direction: column; gap: 16px; }
.bb-b2b-order-card {
  background: white; border-radius: 14px; overflow: hidden;
  border: 1px solid rgba(29,21,16,.07);
}
.bb-b2b-order-card__head {
  display: flex; justify-content: space-between; align-items: flex-start;
  padding: 20px 24px 16px; border-bottom: 1px solid rgba(29,21,16,.06);
}
.bb-b2b-order-card__num {
  font-family: 'DM Sans', sans-serif; font-size: 15px; font-weight: 600;
  color: var(--bb-brown-dark);
}
.bb-b2b-order-card__date {
  font-family: 'DM Sans', sans-serif; font-size: 13px; color: var(--bb-text-muted);
  margin-top: 3px;
}
.bb-b2b-order-card__right { text-align: right; }
.bb-b2b-order-card__total {
  font-family: 'DM Sans', sans-serif; font-size: 16px; font-weight: 600;
  color: var(--bb-brown-dark); margin-top: 4px;
}
.bb-b2b-status {
  font-family: 'DM Sans', sans-serif; font-size: 11px; font-weight: 600;
  letter-spacing: .08em; text-transform: uppercase;
  padding: 4px 10px; border-radius: 50px;
}
.bb-b2b-status--processing, .bb-b2b-status--on-hold {
  background: #FBF5EC; color: var(--bb-gold);
}
.bb-b2b-status--completed { background: #EAF6F0; color: #2ecc71; }
.bb-b2b-status--cancelled { background: #FDECEA; color: #e74c3c; }
.bb-b2b-order-card__items { padding: 16px 24px; }
.bb-b2b-order-item {
  display: flex; gap: 12px; align-items: center;
  padding: 6px 0; border-bottom: 1px solid rgba(29,21,16,.04);
  font-family: 'DM Sans', sans-serif; font-size: 13px;
}
.bb-b2b-order-item:last-child { border-bottom: none; }
.bb-b2b-order-item__name { flex: 1; color: var(--bb-brown-dark); }
.bb-b2b-order-item__qty { color: var(--bb-text-muted); }
.bb-b2b-order-item__price { font-weight: 500; color: var(--bb-brown-dark); }
.bb-b2b-order-card__foot {
  display: flex; gap: 16px; padding: 14px 24px;
  background: rgba(184,150,90,.03); border-top: 1px solid rgba(29,21,16,.06);
}
.bb-b2b-order-link {
  font-family: 'DM Sans', sans-serif; font-size: 13px; color: var(--bb-gold);
  text-decoration: none; display: flex; align-items: center; gap: 5px; transition: opacity .2s;
}
.bb-b2b-order-link:hover { opacity: .7; }

/* ── PÄRITOLU KAARDI POPUP ── */
.bb-tooteinfo-card--origin {
  cursor: pointer;
  position: relative;
}
.bb-tooteinfo-card--origin:hover {
  border-color: var(--bb-gold);
  box-shadow: 0 8px 24px rgba(184,150,90,.15);
}
.bb-tooteinfo-map-hint {
  display: flex; align-items: center; justify-content: center; gap: 4px;
  font-family: 'DM Sans', sans-serif; font-size: 11px;
  color: var(--bb-gold); margin-top: 10px; font-weight: 500;
  letter-spacing: .04em;
}

.bb-origin-modal {
  background: #FBF8F4; border-radius: 20px; padding: 36px 40px;
  width: 100%; max-width: 780px; position: relative;
  box-shadow: 0 24px 60px rgba(0,0,0,.18);
  animation: bbModalIn .25s ease;
}
.bb-origin-modal__tag {
  font-size: 11px; font-weight: 600; letter-spacing: .14em;
  text-transform: uppercase; color: var(--bb-gold);
  font-family: 'DM Sans', sans-serif; margin-bottom: 6px;
}
.bb-origin-modal__title {
  font-family: 'Playfair Display', serif; font-size: 20px;
  color: var(--bb-brown-dark); margin-bottom: 16px; margin-top: 0;
}
.bb-origin-countries {
  display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px;
}
.bb-origin-badge {
  background: rgba(184,150,90,.12); color: var(--bb-gold);
  border: 1px solid rgba(184,150,90,.3); border-radius: 50px;
  font-family: 'DM Sans', sans-serif; font-size: 12px; font-weight: 600;
  padding: 4px 12px; letter-spacing: .04em;
}
.bb-origin-map-wrap {
  border-radius: 12px; overflow: hidden;
  border: 1px solid rgba(184,150,90,.15);
}
#bb-world-map { width: 100%; height: auto; display: block; }

@keyframes bbPinDrop {
  from { opacity: 0; transform: translateY(-12px); }
  to   { opacity: 1; transform: none; }
}
@keyframes bbPulse {
  0%,100% { r: 12; opacity: .5; }
  50%      { r: 18; opacity: 0; }
}


/* ── TOOTEINFO UUENDATUD GRID ── */
.bb-ti-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 16px;
}
.bb-ti-card {
  background: white; border-radius: 16px;
  border: 1px solid rgba(184,150,90,.12); padding: 24px;
  transition: box-shadow .2s, border-color .2s;
}
.bb-ti-card:hover { box-shadow: 0 6px 20px rgba(28,21,16,.07); }
.bb-ti-card-label {
  font-family: 'DM Sans', sans-serif; font-size: 11px; font-weight: 600;
  letter-spacing: .14em; text-transform: uppercase;
  color: var(--bb-text-muted); margin-bottom: 14px;
}
.bb-ti-attr-val {
  font-family: 'DM Sans', sans-serif; font-size: 15px;
  font-weight: 500; color: var(--bb-brown-dark);
}

/* Röstimisaste — 3×1 */
.bb-ti-roast { grid-column: 1 / 4; }
.bb-ti-roast-row { display: flex; gap: 20px; align-items: flex-end; margin-bottom: 12px; }
.bb-ti-bean-item { display: flex; flex-direction: column; align-items: center; gap: 6px; }
.bb-ti-bean-svg { width: 38px; height: 52px; }
.bb-ti-bean-lbl {
  font-family: 'DM Sans', sans-serif; font-size: 10px; color: var(--bb-text-muted);
  letter-spacing: .06em;
}
.bb-ti-roast-name {
  font-family: 'Playfair Display', serif; font-size: 20px;
  color: var(--bb-brown-dark); font-weight: 500; margin-top: 4px;
}

/* Maitseprofiil + tärnid — 3×1 */
.bb-ti-flavors-card { grid-column: 4 / 7; }
.bb-ti-flavors-wrap { display: flex; gap: 20px; flex-wrap: wrap; margin-bottom: 16px; }
.bb-ti-flavor { display: flex; flex-direction: column; align-items: center; gap: 8px; flex: 1; min-width: 64px; }
.bb-ti-flavor-img-wrap {
  width: 68px; height: 68px; border-radius: 12px; overflow: hidden;
  background: var(--bb-cream-dark); flex-shrink: 0;
}
.bb-ti-flavor-img-wrap img { width: 100%; height: 100%; object-fit: cover; }
.bb-ti-flavor-lbl {
  font-family: 'DM Sans', sans-serif; font-size: 12px; font-weight: 500;
  color: var(--bb-brown-dark); text-align: center; line-height: 1.3;
}

/* Tärnid */
.bb-ti-ratings { display: flex; gap: 20px; flex-wrap: wrap; }
.bb-ti-ratings--border { padding-top: 16px; border-top: 1px solid rgba(184,150,90,.15); }
.bb-ti-rating-item { display: flex; flex-direction: column; gap: 5px; }
.bb-ti-rating-label {
  font-family: 'DM Sans', sans-serif; font-size: 12px; font-weight: 600;
  letter-spacing: .08em; text-transform: uppercase; color: var(--bb-text-muted);
}
.bb-ti-stars { display: flex; gap: 2px; }
.bb-ti-star { width: 16px; height: 16px; fill: #DDD5C8; stroke: none; }
.bb-ti-star.filled { fill: #B8965A; }

/* Muud atribuudid — 2×1 kaardid */
.bb-ti-attr-card {
  grid-column: span 2;
  display: flex; flex-direction: column; gap: 6px;
}
.bb-ti-attr-ico {
  width: 36px; height: 36px; background: var(--bb-cream-dark);
  border-radius: 10px; display: flex; align-items: center; justify-content: center;
  margin-bottom: 4px; flex-shrink: 0;
}
.bb-ti-attr-ico svg { width: 18px; height: 18px; stroke: var(--bb-gold); fill: none; }

/* Kaart — 4×2 (viimane rida) */
.bb-ti-map-card {
  grid-column: 3 / 7;
  grid-row: 2 / 4;
  display: flex; flex-direction: column; gap: 12px;
}
.bb-ti-map-card:hover { border-color: var(--bb-gold); }
.bb-ti-map-top {
  display: flex; justify-content: space-between; align-items: flex-start;
}
.bb-ti-map-hint {
  display: flex; align-items: center; gap: 5px;
  font-family: 'DM Sans', sans-serif; font-size: 12px;
  color: var(--bb-gold); font-weight: 500; white-space: nowrap;
}
.bb-ti-map-wrap {
  flex: 1; border-radius: 10px; overflow: hidden;
  border: 1px solid rgba(184,150,90,.1); min-height: 160px;
}

@media (max-width: 960px) {
  .bb-ti-grid { grid-template-columns: 1fr 1fr; }
  .bb-ti-roast { grid-column: 1 / 3; }
  .bb-ti-flavors-card { grid-column: 1 / 3; }
  .bb-ti-attr-card { grid-column: span 1; }
  .bb-ti-map-card { grid-column: 1 / 3; grid-row: auto; min-height: 220px; }
}

/* ── ÄRIKLIENDILE LAHENDUSTE KAARDID ──────────────────────────────────── */
.bb-biz-cards-section { background: var(--bb-cream-dark); padding-top: 64px; }
.bb-biz-cards-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 32px;
}
.bb-biz-card {
  display: block; text-decoration: none; border-radius: 24px;
  overflow: hidden; background: white;
  box-shadow: 0 8px 32px rgba(28,21,16,.08);
  border: 1.5px solid rgba(184,150,90,.1);
  transition: transform .3s, box-shadow .3s;
}
.bb-biz-card:hover { transform: translateY(-6px); box-shadow: 0 20px 60px rgba(28,21,16,.15); }
.bb-biz-card__img {
  position: relative; height: 280px; overflow: hidden;
}
.bb-biz-card__img img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform .5s ease;
}
.bb-biz-card:hover .bb-biz-card__img img { transform: scale(1.05); }
.bb-biz-card__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to bottom, transparent 50%, rgba(28,21,16,.3) 100%);
}
.bb-biz-card__body { padding: 28px 32px 32px; }
.bb-biz-card__tag {
  font-family: 'DM Sans', sans-serif; font-size: 11px; font-weight: 600;
  letter-spacing: .16em; text-transform: uppercase;
  color: var(--bb-gold); margin-bottom: 10px;
}
.bb-biz-card__title {
  font-family: 'Playfair Display', serif; font-size: 22px;
  color: var(--bb-brown-dark); margin-bottom: 12px; line-height: 1.3;
}
.bb-biz-card__desc {
  font-family: 'DM Sans', sans-serif; font-size: 14px;
  color: var(--bb-text-muted); line-height: 1.7; margin-bottom: 20px;
}
.bb-biz-card__link {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: 'DM Sans', sans-serif; font-size: 14px; font-weight: 600;
  color: var(--bb-brown-dark); transition: gap .2s;
}
.bb-biz-card:hover .bb-biz-card__link { gap: 12px; color: var(--bb-gold); }

/* ── PAKETID ───────────────────────────────────────────────────────────── */
.bb-paketid-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
  align-items: start;
}
.bb-pakett {
  background: white; border-radius: 20px; padding: 32px;
  border: 1.5px solid rgba(184,150,90,.12);
  position: relative;
}
.bb-pakett--featured {
  border-color: var(--bb-gold);
  box-shadow: 0 12px 40px rgba(184,150,90,.2);
  transform: scale(1.03);
}
.bb-pakett__badge {
  position: absolute; top: -14px; left: 50%; transform: translateX(-50%);
  background: var(--bb-gold); color: white;
  font-family: 'DM Sans', sans-serif; font-size: 12px; font-weight: 600;
  padding: 4px 16px; border-radius: 50px; white-space: nowrap;
}
.bb-pakett__tag {
  font-family: 'DM Sans', sans-serif; font-size: 11px; font-weight: 600;
  letter-spacing: .14em; text-transform: uppercase;
  color: var(--bb-gold); margin-bottom: 10px;
}
.bb-pakett__title {
  font-family: 'Playfair Display', serif; font-size: 22px;
  color: var(--bb-brown-dark); margin-bottom: 10px;
}
.bb-pakett__desc {
  font-family: 'DM Sans', sans-serif; font-size: 14px;
  color: var(--bb-text-muted); margin-bottom: 20px; line-height: 1.6;
}
.bb-pakett__list {
  list-style: none; display: flex; flex-direction: column; gap: 10px;
  margin-bottom: 28px; padding: 0;
}
.bb-pakett__list li {
  display: flex; align-items: flex-start; gap: 10px;
  font-family: 'DM Sans', sans-serif; font-size: 14px;
  color: var(--bb-brown-dark); line-height: 1.4;
}
.bb-pakett__list svg { flex-shrink: 0; color: var(--bb-gold); margin-top: 2px; }
.bb-pakett .bb-btn { width: 100%; justify-content: center; }

@media (max-width: 900px) {
  .bb-biz-cards-grid { grid-template-columns: 1fr; }
  .bb-paketid-grid { grid-template-columns: 1fr; }
  .bb-pakett--featured { transform: none; }
}

.bb-brands-marquee-wrap {
  overflow: hidden;
  -webkit-mask: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
  mask: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
}
.bb-brands-marquee {
  display: flex; gap: 32px; align-items: center;
  width: max-content;
  animation: bbMarquee 22s linear infinite;
}
.bb-brands-marquee:hover { animation-play-state: paused; }
@keyframes bbMarquee {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}
.bb-brand-logo {
  display: flex; align-items: center; justify-content: center;
  padding: 16px 28px; background: white; border-radius: 14px;
  border: 1.5px solid rgba(184,150,90,.1); flex-shrink: 0;
  transition: all .2s; min-width: 140px;
}
.bb-brand-logo:hover { border-color: var(--bb-gold); box-shadow: 0 4px 20px rgba(28,21,16,.08); }
.bb-brand-logo img { max-height: 44px; max-width: 130px; object-fit: contain; filter: grayscale(1); opacity: .55; transition: all .3s; }
.bb-brand-logo:hover img { filter: none; opacity: 1; }
/* ── Cart lehe uued stiilid ── */

/* Wrap */
.bb-cart-wrap {
  max-width: 1200px; margin: 0 auto;
  padding: 0 48px 80px; box-sizing: border-box;
}

/* Breadcrumb + pealkiri samal joonel */
.bb-cart-title-block {
  padding-top: 28px;
  margin-bottom: 28px;
}
.bb-cart-title-block .bb-breadcrumb {
  margin-bottom: 6px;
}
.bb-cart-title-block .bb-page-title {
  margin: 0;
}

/* Tabeli päis */
.bb-cart-items__head {
  display: grid;
  grid-template-columns: 1fr 120px 160px 100px 36px;
  padding: 0 0 12px;
  border-bottom: 1.5px solid rgba(184,150,90,.12);
  font-family: 'DM Sans', sans-serif;
  font-size: 11px; font-weight: 600;
  color: var(--bb-text-muted);
  text-transform: uppercase; letter-spacing: .06em;
}
.bb-head-center { text-align: center; }
.bb-head-right  { text-align: right; }

/* Toote rida */
.bb-cart-row {
  display: grid;
  grid-template-columns: 1fr 120px 160px 100px 36px;
  align-items: center;
  padding: 16px 0;
  border-bottom: 1px solid rgba(184,150,90,.08);
}
.bb-cart-row__subtotal { text-align: right; font-weight: 600; font-family: 'DM Sans', sans-serif; }

/* Koguse kontrol */
.bb-qty-ctrl {
  display: flex; align-items: center; justify-content: center;
  gap: 0; width: fit-content; margin: 0 auto;
  border: 1.5px solid rgba(184,150,90,.2); border-radius: 8px;
  overflow: hidden; background: var(--bb-cream);
}
.bb-qty-btn {
  background: none; border: none;
  width: 32px; height: 36px;
  font-size: 16px; cursor: pointer;
  color: var(--bb-brown-dark);
  transition: background .15s;
  display: flex; align-items: center; justify-content: center;
}
.bb-qty-btn:hover { background: rgba(184,150,90,.1); }
.bb-qty-input {
  width: 40px; height: 36px;
  border: none; border-left: 1px solid rgba(184,150,90,.15);
  border-right: 1px solid rgba(184,150,90,.15);
  text-align: center; font-family: 'DM Sans', sans-serif;
  font-size: 14px; font-weight: 500;
  background: white; color: var(--bb-brown-dark);
  -moz-appearance: textfield;
}
.bb-qty-input::-webkit-outer-spin-button,
.bb-qty-input::-webkit-inner-spin-button { -webkit-appearance: none; }
.bb-qty-input:focus { outline: none; }

/* Nupud — Tagasi poodi vasak, Maksma parem */
.bb-cart-btns {
  display: flex; align-items: center;
  justify-content: space-between; gap: 12px;
  margin-top: 20px;
}
.bb-cart-back-btn {
  display: inline-flex; align-items: center; gap: 7px;
  font-family: 'DM Sans', sans-serif; font-size: 13px;
  color: var(--bb-text-muted); text-decoration: none;
  padding: 10px 16px; border-radius: 50px;
  border: 1.5px solid rgba(29,21,16,.12);
  transition: border-color .2s, color .2s;
}
.bb-cart-back-btn:hover { border-color: var(--bb-gold); color: var(--bb-brown-dark); }
.bb-cart-checkout-btn {
  display: inline-flex; align-items: center; gap: 8px;
  background: var(--bb-brown-dark) !important; color: white !important;
  font-family: 'DM Sans', sans-serif; font-size: 14px; font-weight: 500;
  padding: 12px 24px; border-radius: 50px; text-decoration: none;
  transition: background .2s;
}
.bb-cart-checkout-btn:hover { background: #2c1f14 !important; }

/* Peida trust items */
.bb-cart-trust { display: none !important; }

/* ── Cart fixes ── */
/* Laiem wrap */
.bb-cart-wrap {
  max-width: 1400px !important;
  padding: 0 32px 80px !important;
}

/* Layout grid — laiem */
#bb-cart-page .bb-cart-layout {
  padding: 24px 0 80px !important;
  gap: 32px !important;
}

/* Pealkiri joondus — samale joonele tabeliga */
.bb-cart-title-block {
  padding: 28px 0 0 !important;
  margin-bottom: 20px !important;
}

/* Nupud — flex row, tagasi vasak, maksma parem */
.bb-cart-btns {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-top: 20px !important;
}
.bb-cart-back-btn {
  flex-shrink: 0 !important;
}
.bb-cart-checkout-btn {
  flex-shrink: 0 !important;
}

/* ── Cart summary + nupud fix ── */
#bb-cart-page .bb-cart-summary {
  padding: 24px !important;
  min-width: 0 !important;
}
#bb-cart-page .bb-cart-btns {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  margin-top: 16px !important;
  flex-wrap: nowrap !important;
}
#bb-cart-page .bb-cart-back-btn {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  font-size: 13px !important;
  padding: 10px 14px !important;
}
#bb-cart-page .bb-cart-checkout-btn {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  font-size: 14px !important;
  padding: 11px 20px !important;
}

/* Nupud täpselt samale joonele */
#bb-cart-page .bb-cart-btns {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  margin-top: 16px !important;
}
#bb-cart-page .bb-cart-back-btn,
#bb-cart-page .bb-cart-checkout-btn {
  display: inline-flex !important;
  align-items: center !important;
  height: 42px !important;
  white-space: nowrap !important;
}

/* Nupud — lõplik fix */
#bb-cart-page .bb-cart-btns {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  margin-top: 16px !important;
}
#bb-cart-page .bb-cart-back-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  height: 44px !important;
  padding: 0 18px !important;
  border-radius: 50px !important;
  border: 1.5px solid rgba(29,21,16,.15) !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  color: var(--bb-text-muted) !important;
  text-decoration: none !important;
  background: transparent !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
  line-height: 1 !important;
}
#bb-cart-page .bb-cart-checkout-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  height: 44px !important;
  padding: 0 22px !important;
  border-radius: 50px !important;
  background: var(--bb-brown-dark) !important;
  color: white !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
  line-height: 1 !important;
}

/* Cart breadcrumb + pealkiri täpselt tabeliga joonduses */
#bb-cart-page .bb-cart-title-block {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
#bb-cart-page .bb-cart-layout {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Cart + Account breadcrumb — nulli oma padding, wrap annab juba 48px */
#bb-cart-page .bb-breadcrumb,
#bb-account-page .bb-breadcrumb {
  padding: 0 !important;
  margin: 0 0 6px 0 !important;
}
