/**
 * WooCommerce Custom White Luxury Overrides
 * Matches Marcellus / Jost typography and minimalist aesthetic
 *
 * @package LuxuryRepBags
 */

/* ==========================================================================
   1. WooCommerce Catalog & Shop Page
   ========================================================================== */
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 1.75rem !important;
  margin: 2rem 0 !important;
  padding: 0 !important;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
  display: none !important;
}

.woocommerce ul.products li.product {
  width: 100% !important;
  margin: 0 !important;
  float: none !important;
  background: #ffffff !important;
  border: 1px solid var(--lrb-border-subtle) !important;
  border-radius: var(--lrb-radius-md) !important;
  padding: 1.25rem !important;
  display: flex !important;
  flex-direction: column !important;
  transition: transform var(--lrb-transition-smooth), box-shadow var(--lrb-transition-smooth), border-color var(--lrb-transition-smooth) !important;
}

.woocommerce ul.products li.product:hover {
  transform: translateY(-5px) !important;
  box-shadow: var(--lrb-shadow-md) !important;
  border-color: var(--lrb-border-light) !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__link {
  display: block !important;
  margin-bottom: 0.75rem !important;
  text-align: center !important;
}

.woocommerce ul.products li.product img {
  max-height: 260px !important;
  width: auto !important;
  object-fit: contain !important;
  margin: 0 auto !important;
  transition: transform var(--lrb-transition-slow) !important;
}

.woocommerce ul.products li.product:hover img {
  transform: scale(1.05) !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: var(--lrb-font-heading) !important;
  font-size: 1.05rem !important;
  color: var(--lrb-text-primary) !important;
  margin: 0.5rem 0 !important;
  line-height: 1.35 !important;
  padding: 0 !important;
}

.woocommerce ul.products li.product .price {
  font-size: 1.1rem !important;
  font-weight: 600 !important;
  color: var(--lrb-text-primary) !important;
  margin-bottom: 1rem !important;
  display: block !important;
}

.woocommerce ul.products li.product .price del {
  color: var(--lrb-text-light) !important;
  font-size: 0.9rem !important;
  margin-right: 6px !important;
}

.woocommerce ul.products li.product .button {
  background-color: var(--lrb-text-primary) !important;
  color: #ffffff !important;
  font-family: var(--lrb-font-body) !important;
  font-size: 0.8rem !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  padding: 10px 16px !important;
  border-radius: 2px !important;
  border: 1px solid var(--lrb-text-primary) !important;
  text-align: center !important;
  margin-top: auto !important;
  transition: background var(--lrb-transition-fast) !important;
}

.woocommerce ul.products li.product .button:hover {
  background-color: var(--lrb-gold) !important;
  border-color: var(--lrb-gold) !important;
}

/* Suppress WooCommerce Auto-Injected "View Cart" Button on Product Cards */
.added_to_cart,
a.added_to_cart,
.wc-forward:not(.lrb-btn),
.lrb-product-card .added_to_cart,
.lrb-card-hover-actions .added_to_cart,
.lrb-product-card-footer .added_to_cart,
.woocommerce ul.products li.product .added_to_cart,
.woocommerce ul.products li.lrb-product-card .added_to_cart {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  font-size: 0 !important;
  line-height: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
  pointer-events: none !important;
}

.woocommerce ul.products li.product .button.added::after,
.woocommerce ul.products li.lrb-product-card .button.added::after,
.lrb-card-cart-btn.added::after,
.lrb-product-card-cart-btn.added::after {
  display: none !important;
}

/* ==========================================================================
   2. Ultra-Luxury Single Product Page Architecture
   ========================================================================== */
.lrb-single-product-page {
  background-color: #ffffff;
  padding: 1.5rem 0 4rem;
  overflow-x: hidden !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.lrb-single-product-wrapper {
  margin-bottom: 2rem;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  overflow-x: hidden !important;
}

/* Product Top Bar */
.lrb-product-top-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 0 1.5rem;
  border-bottom: 1px solid var(--lrb-border-subtle);
  margin-bottom: 2.5rem;
  flex-wrap: wrap;
  gap: 1rem;
  width: 100%;
  box-sizing: border-box;
}

.lrb-product-crumbs .lrb-breadcrumbs {
  margin: 0;
  font-size: 0.82rem;
  flex-wrap: wrap;
}

.lrb-product-top-meta {
  display: flex;
  align-items: center;
  gap: 0.85rem;
}

.lrb-top-tier-tag {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--lrb-gold-hover);
  background: var(--lrb-gold-light);
  padding: 0.35rem 0.75rem;
  border-radius: 999px;
  border: 1px solid rgba(197, 168, 128, 0.3);
}

.lrb-top-stock-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 0.75rem;
  font-weight: 600;
  color: #007a51;
  background: #f0fbf6;
  padding: 0.35rem 0.75rem;
  border-radius: 999px;
  border: 1px solid rgba(0, 182, 122, 0.2);
}

/* Main 2-Column Stage */
.lrb-product-stage-grid {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 4rem;
  align-items: start;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.lrb-product-gallery-col,
.lrb-product-summary-col {
  min-width: 0;
  max-width: 100%;
  width: 100%;
  box-sizing: border-box;
}

@media (max-width: 1024px) {
  .lrb-product-stage-grid {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 2.25rem !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .lrb-product-gallery-col,
  .lrb-product-summary-col {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    float: none !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
}

@media (max-width: 640px) {
  .lrb-product-stage-grid {
    gap: 1.75rem !important;
  }
}

/* Gallery Column */
.lrb-gallery-sticky-wrap {
  position: sticky;
  top: 100px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

@media (max-width: 1024px) {
  .lrb-gallery-sticky-wrap {
    position: static !important;
  }
}

.lrb-gallery-badges {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1rem;
  flex-wrap: wrap;
}

.lrb-badge-flagship {
  background: #111111;
  color: #ffffff;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.35rem 0.8rem;
  border-radius: 2px;
}

.lrb-badge-qc {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  background: rgba(0, 182, 122, 0.1);
  color: #007a51;
  border: 1px solid rgba(0, 182, 122, 0.25);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 0.35rem 0.8rem;
  border-radius: 2px;
}

.lrb-gallery-main-viewer {
  position: relative;
  background: #faf9f7;
  border: 1px solid var(--lrb-border-light);
  border-radius: var(--lrb-radius-lg);
  padding: 0;
  text-align: center;
  width: 100%;
  aspect-ratio: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
  cursor: crosshair;
  transition: border-color var(--lrb-transition-fast);
}

/* Floating Badges on Gallery Viewer */
.lrb-viewer-floating-qc-badge {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(17, 17, 17, 0.82);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: #00b67a;
  border: 1px solid rgba(0, 182, 122, 0.3);
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 4px 10px;
  border-radius: 999px;
  pointer-events: none;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.lrb-viewer-floating-qc-badge svg {
  width: 14px;
  height: 14px;
}

.lrb-viewer-photo-counter {
  position: absolute;
  bottom: 14px;
  right: 14px;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: rgba(17, 17, 17, 0.75);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  color: #ffffff;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  padding: 4px 10px;
  border-radius: 999px;
  pointer-events: none;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

@supports not (aspect-ratio: 1 / 1) {
  .lrb-gallery-main-viewer {
    min-height: 520px;
  }
}

.lrb-gallery-main-viewer:hover {
  border-color: #c5a880;
}

.lrb-main-product-img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.2s ease;
}

.lrb-gallery-main-viewer:hover .lrb-main-product-img {
  transform: scale(1.05);
}

.lrb-zoom-lens-indicator {
  position: absolute;
  bottom: 1rem;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(8px);
  border: 1px solid var(--lrb-border-light);
  border-radius: 999px;
  padding: 0.4rem 1rem;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.72rem;
  color: var(--lrb-text-muted);
  box-shadow: var(--lrb-shadow-xs);
  pointer-events: none;
}

/* Thumbnail Strip */
.lrb-gallery-thumbs {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  margin-top: 1.25rem;
}

.lrb-thumb-btn {
  background: #faf9f7;
  border: 2px solid transparent;
  border-radius: var(--lrb-radius-md);
  padding: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  transition: all var(--lrb-transition-fast);
}

.lrb-thumb-btn img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.lrb-thumb-btn:hover {
  border-color: var(--lrb-border-light);
  transform: translateY(-2px);
}

.lrb-thumb-btn.is-active {
  border-color: var(--lrb-gold);
  background: #ffffff;
  box-shadow: var(--lrb-shadow-xs);
}

/* 4K QC Trigger Card */
.lrb-gallery-qc-trigger {
  margin-top: 1.5rem;
  background: #f0fbf6;
  border: 1px solid rgba(0, 182, 122, 0.25);
  border-radius: var(--lrb-radius-md);
  padding: 1rem 1.25rem;
  display: flex;
  align-items: center;
  gap: 1rem;
}

.lrb-qc-trigger-icon {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: #00b67a;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.lrb-qc-trigger-content {
  flex: 1;
}

.lrb-qc-trigger-content strong {
  display: block;
  font-size: 0.85rem;
  color: #007a51;
  margin-bottom: 2px;
}

.lrb-qc-trigger-content p {
  font-size: 0.75rem;
  color: var(--lrb-text-muted);
  margin: 0;
  line-height: 1.35;
}

.lrb-btn-outline-sm {
  font-size: 0.75rem;
  padding: 0.45rem 0.85rem;
  border: 1px solid #00b67a;
  color: #007a51;
  background: #ffffff;
  border-radius: 4px;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
}

.lrb-btn-outline-sm:hover {
  background: #00b67a;
  color: #ffffff;
}

/* Product Summary Right Column */
.lrb-summary-header {
  margin-bottom: 1.25rem;
}

.lrb-product-eyebrow {
  display: block;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--lrb-gold);
  margin-bottom: 0.5rem;
}

.lrb-single-title {
  font-family: var(--lrb-font-heading);
  font-size: clamp(2rem, 3.2vw, 2.75rem);
  font-weight: 500;
  line-height: 1.2;
  color: var(--lrb-text-primary);
  margin-bottom: 0.85rem;
  letter-spacing: -0.01em;
}

.lrb-single-tp-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid var(--lrb-border-subtle);
  flex-wrap: wrap;
}

.lrb-single-tp-link {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  text-decoration: none;
  color: var(--lrb-text-secondary);
  font-size: 0.82rem;
  transition: opacity var(--lrb-transition-fast);
}

.lrb-single-tp-link:hover {
  opacity: 0.8;
}

.lrb-tp-stars-inline .lrb-tp-star-box {
  width: 18px;
  height: 18px;
}

.lrb-sku-tag {
  font-size: 0.75rem;
  color: var(--lrb-text-muted);
  font-family: monospace;
}

/* Price & Savings Card */
.lrb-price-savings-card {
  background: #faf9f7;
  border: 1px solid var(--lrb-border-light);
  border-radius: var(--lrb-radius-md);
  padding: 1.25rem 1.5rem;
  margin: 1.25rem 0;
}

.lrb-price-main-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 0.5rem;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.lrb-single-price {
  font-size: 2.2rem;
  font-weight: 700;
  color: var(--lrb-text-primary);
  line-height: 1;
}

.lrb-single-price del {
  color: var(--lrb-text-light);
  font-size: 1.35rem;
  font-weight: 400;
  margin-right: 0.5rem;
}

.lrb-single-price ins {
  text-decoration: none;
  color: var(--lrb-text-primary);
}

.lrb-boutique-compare {
  font-size: 0.85rem;
  color: var(--lrb-text-muted);
}

.lrb-boutique-compare del {
  color: var(--lrb-text-light);
  font-weight: 600;
}

.lrb-savings-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  background: #ffffff;
  border: 1px solid rgba(197, 168, 128, 0.4);
  color: var(--lrb-gold-hover);
  padding: 0.35rem 0.85rem;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 600;
}

/* Stock & Dispatch Pill */
.lrb-dispatch-pill {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  font-size: 0.82rem;
  color: var(--lrb-text-secondary);
  margin-bottom: 1.25rem;
}

.lrb-dispatch-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #00b67a;
  display: inline-block;
  box-shadow: 0 0 0 3px rgba(0, 182, 122, 0.25);
  animation: lrbPulse 2s infinite ease-in-out;
}

@keyframes lrbPulse {
  0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(0, 182, 122, 0.5); }
  70% { transform: scale(1); box-shadow: 0 0 0 6px rgba(0, 182, 122, 0); }
  100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(0, 182, 122, 0); }
}

.lrb-single-short-desc {
  font-size: 0.92rem;
  line-height: 1.7;
  color: var(--lrb-text-secondary);
  margin-bottom: 1.75rem;
}

/* Swatches Selection (Removed) */
.lrb-swatches-section {
  display: none !important;
}

/* Purchase Actions & Quantity */
.lrb-purchase-actions {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 2rem;
}

.lrb-qty-cart-row {
  display: flex;
  gap: 1rem;
  align-items: stretch;
}

.lrb-custom-qty {
  display: inline-flex;
  border: 1px solid var(--lrb-border-light);
  border-radius: var(--lrb-radius-md);
  overflow: hidden;
  background: #ffffff;
}

.lrb-qty-btn {
  background: #faf9f7;
  border: none;
  width: 44px;
  font-size: 1.1rem;
  cursor: pointer;
  transition: background var(--lrb-transition-fast);
}

.lrb-qty-btn:hover {
  background: #ede9e3;
}

.lrb-qty-input {
  width: 48px;
  text-align: center;
  border: none;
  font-weight: 600;
  font-size: 0.95rem;
}

.lrb-btn-cart-lg {
  flex: 1;
  padding: 1rem 2rem;
  font-size: 0.92rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
}

.lrb-whatsapp-order-cta {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}

.lrb-btn-whatsapp-lg {
  background-color: #25d366;
  color: #ffffff;
  padding: 1.05rem 2rem;
  border-radius: 999px;
  font-size: 0.92rem;
  font-weight: 600;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  box-shadow: 0 6px 18px rgba(37, 211, 102, 0.25);
  transition: all var(--lrb-transition-fast);
}

.lrb-btn-whatsapp-lg:hover {
  background-color: #1ebc59;
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(37, 211, 102, 0.35);
}

.lrb-wa-help-note {
  font-size: 0.75rem;
  color: var(--lrb-text-muted);
  text-align: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
}

/* Native Cart Form & Quantity Input */
.lrb-native-cart-form {
  margin: 0;
  width: 100%;
}

.lrb-native-cart-form .quantity {
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--lrb-border-light);
  border-radius: var(--lrb-radius-md);
  overflow: hidden;
  background: #ffffff;
  flex-shrink: 0;
}

.lrb-native-cart-form .quantity input.qty {
  width: 54px;
  height: 48px;
  text-align: center;
  border: none;
  font-weight: 600;
  font-size: 0.95rem;
  background: transparent;
  color: var(--lrb-text-primary);
  padding: 0;
  box-shadow: none;
  -moz-appearance: textfield;
}

.lrb-native-cart-form .quantity input.qty::-webkit-outer-spin-button,
.lrb-native-cart-form .quantity input.qty::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Variable Products Variations Form */
.lrb-variable-cart-form {
  margin-bottom: 1.25rem;
}

.lrb-variable-cart-form table.variations {
  width: 100%;
  margin-bottom: 1rem;
  border-collapse: collapse;
}

.lrb-variable-cart-form table.variations tr {
  display: flex;
  flex-direction: column;
  margin-bottom: 0.85rem;
}

.lrb-variable-cart-form table.variations th.label {
  padding: 0 0 0.35rem 0;
  text-align: left;
}

.lrb-variable-cart-form table.variations th.label label {
  font-size: 0.8rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--lrb-text-primary);
}

.lrb-variable-cart-form table.variations td.value {
  padding: 0;
}

.lrb-variable-cart-form table.variations select {
  width: 100%;
  padding: 0.75rem 1rem;
  border: 1px solid var(--lrb-border-light);
  border-radius: var(--lrb-radius-md);
  background: #ffffff;
  font-size: 0.9rem;
  color: var(--lrb-text-primary);
  font-family: inherit;
}

.lrb-variable-cart-form a.reset_variations {
  display: inline-block;
  font-size: 0.75rem;
  color: var(--lrb-text-muted);
  margin-top: 0.35rem;
  text-decoration: underline;
}

/* 3-Pillar Guarantee Box */
.lrb-single-guarantee-box {
  background: #faf9f7;
  border: 1px solid var(--lrb-border-light);
  border-radius: var(--lrb-radius-md);
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.15rem;
  margin-bottom: 2rem;
}

.lrb-guarantee-row {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}

.lrb-g-icon {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #ffffff;
  border: 1px solid var(--lrb-border-light);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--lrb-gold);
  flex-shrink: 0;
  margin-top: 2px;
}

.lrb-g-text strong {
  display: block;
  font-size: 0.88rem;
  color: var(--lrb-text-primary);
  margin-bottom: 3px;
}

.lrb-g-text p {
  font-size: 0.8rem;
  color: var(--lrb-text-muted);
  line-height: 1.45;
  margin: 0;
}

/* Presentation Checklist */
.lrb-presentation-checklist {
  background: #ffffff;
  border: 1px solid var(--lrb-border-subtle);
  border-radius: var(--lrb-radius-md);
  padding: 1.25rem 1.5rem;
}

.lrb-checklist-title {
  font-size: 0.82rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--lrb-text-primary);
  margin-bottom: 0.75rem;
}

.lrb-checklist-items {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}

.lrb-checklist-items li {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.8rem;
  color: var(--lrb-text-secondary);
}

.lrb-checklist-items li svg {
  color: #00b67a;
}

/* Anatomy Section */
.lrb-anatomy-section {
  padding: 5rem 0;
  border-top: 1px solid var(--lrb-border-subtle);
  background: #faf9f7;
}

.lrb-anatomy-stage-wrap {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 3.5rem;
  align-items: center;
  margin-top: 3rem;
}

.lrb-anatomy-visual {
  position: relative;
  background: #ffffff;
  border: 1px solid var(--lrb-border-light);
  border-radius: var(--lrb-radius-lg);
  padding: 3rem;
  text-align: center;
  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.04);
}

.lrb-anatomy-visual img {
  max-height: 420px;
  width: auto;
  max-width: 100%;
  object-fit: contain;
}

.lrb-anatomy-pin {
  position: absolute;
  width: 32px;
  height: 32px;
  cursor: pointer;
  transform: translate(-50%, -50%);
  z-index: 5;
}

.lrb-pin-pulsar {
  position: absolute;
  inset: -6px;
  border-radius: 50%;
  border: 2px solid #c5a880;
  animation: lrbPulseRing 2s cubic-bezier(0.215, 0.61, 0.355, 1) infinite;
}

@keyframes lrbPulseRing {
  0% { transform: scale(0.6); opacity: 1; }
  100% { transform: scale(1.6); opacity: 0; }
}

.lrb-pin-core {
  position: relative;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #111111;
  color: #ffffff;
  font-weight: 700;
  font-size: 0.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
  transition: transform var(--lrb-transition-fast), background var(--lrb-transition-fast);
}

.lrb-anatomy-pin:hover .lrb-pin-core,
.lrb-anatomy-pin:focus .lrb-pin-core {
  transform: scale(1.15);
  background: var(--lrb-gold);
}

.lrb-pin-popover {
  position: absolute;
  bottom: 42px;
  left: 50%;
  transform: translateX(-50%);
  width: 240px;
  background: #ffffff;
  border: 1px solid var(--lrb-border-light);
  border-radius: var(--lrb-radius-md);
  padding: 0.85rem 1rem;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: all var(--lrb-transition-fast);
  z-index: 10;
  text-align: left;
}

.lrb-anatomy-pin:hover .lrb-pin-popover,
.lrb-anatomy-pin:focus .lrb-pin-popover {
  opacity: 1;
  visibility: visible;
  bottom: 48px;
}

.lrb-pin-popover strong {
  display: block;
  font-size: 0.82rem;
  color: var(--lrb-text-primary);
  margin-bottom: 4px;
}

.lrb-pin-popover p {
  font-size: 0.75rem;
  color: var(--lrb-text-muted);
  line-height: 1.4;
  margin: 0;
}

.lrb-anatomy-cards {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.lrb-anatomy-card {
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
  background: #ffffff;
  border: 1px solid var(--lrb-border-light);
  border-radius: var(--lrb-radius-md);
  padding: 1.25rem 1.5rem;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.02);
  transition: transform var(--lrb-transition-fast), border-color var(--lrb-transition-fast);
}

.lrb-anatomy-card:hover {
  transform: translateX(4px);
  border-color: #c5a880;
}

.lrb-anatomy-card-num {
  font-family: var(--lrb-font-heading);
  font-size: 1.35rem;
  font-weight: 700;
  color: var(--lrb-gold);
  line-height: 1;
}

.lrb-anatomy-card-text h4 {
  font-size: 0.95rem;
  color: var(--lrb-text-primary);
  margin-bottom: 4px;
}

.lrb-anatomy-card-text p {
  font-size: 0.82rem;
  color: var(--lrb-text-muted);
  line-height: 1.5;
  margin: 0;
}

/* Specifications Accordion Tabs */
.lrb-specs-section {
  padding: 5rem 0;
  border-top: 1px solid var(--lrb-border-subtle);
}

.lrb-specs-tabs-container {
  max-width: 980px;
  margin: 0 auto;
}

.lrb-specs-nav {
  display: flex;
  border-bottom: 1px solid var(--lrb-border-light);
  overflow-x: auto;
  gap: 2rem;
  margin-bottom: 2.5rem;
}

.lrb-spec-tab-btn {
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  padding: 1rem 0;
  font-family: var(--lrb-font-heading);
  font-size: 1.15rem;
  color: var(--lrb-text-muted);
  cursor: pointer;
  white-space: nowrap;
  transition: all var(--lrb-transition-fast);
}

.lrb-spec-tab-btn:hover {
  color: var(--lrb-text-primary);
}

.lrb-spec-tab-btn.is-active {
  color: var(--lrb-text-primary);
  border-bottom-color: var(--lrb-text-primary);
  font-weight: 600;
}

.lrb-spec-pane {
  display: none;
}

.lrb-spec-pane.is-active {
  display: block;
}

.lrb-spec-table-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem 3rem;
  background: #faf9f7;
  border: 1px solid var(--lrb-border-light);
  border-radius: var(--lrb-radius-md);
  padding: 2.25rem 2.5rem;
}

.lrb-spec-row {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--lrb-border-subtle);
}

.lrb-spec-label {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--lrb-text-muted);
}

.lrb-spec-val {
  font-size: 0.92rem;
  font-weight: 500;
  color: var(--lrb-text-primary);
}

.lrb-qc-tab-info h3,
.lrb-unboxing-checklist-full h3,
.lrb-shipping-tab-content h3 {
  font-family: var(--lrb-font-heading);
  font-size: 1.4rem;
  margin-bottom: 1rem;
  color: var(--lrb-text-primary);
}

.lrb-qc-steps-list {
  margin: 1.5rem 0 0 1.25rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  font-size: 0.9rem;
  line-height: 1.6;
  color: var(--lrb-text-secondary);
}

.lrb-unboxing-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
  margin-top: 1.5rem;
}

.lrb-unboxing-card {
  display: flex;
  align-items: center;
  gap: 1rem;
  background: #faf9f7;
  border: 1px solid var(--lrb-border-light);
  border-radius: var(--lrb-radius-md);
  padding: 1.15rem 1.5rem;
  font-size: 0.88rem;
  color: var(--lrb-text-secondary);
}

.lrb-unboxing-icon {
  color: var(--lrb-gold);
}

.lrb-shipping-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  margin-top: 1.5rem;
}

.lrb-ship-pillar {
  background: #faf9f7;
  border: 1px solid var(--lrb-border-light);
  border-radius: var(--lrb-radius-md);
  padding: 1.5rem;
}

.lrb-ship-pillar strong {
  display: block;
  font-size: 0.95rem;
  color: var(--lrb-text-primary);
  margin-bottom: 0.5rem;
}

.lrb-ship-pillar p {
  font-size: 0.82rem;
  color: var(--lrb-text-muted);
  line-height: 1.55;
  margin: 0;
}

.lrb-single-reviews-section {
  padding: 5rem 0;
  border-top: 1px solid var(--lrb-border-subtle);
  background: #faf9f7;
}

/* ==========================================================================
   2.1 Ultra-Luxury Single Product Responsive Engine (Mobile & Tablet)
   ========================================================================== */

/* Tablet & Medium Screens (max-width: 1024px) */
@media (max-width: 1024px) {
  .lrb-single-product-page {
    padding: 1.25rem 0 3.5rem;
    overflow-x: hidden !important;
  }

  .lrb-product-stage-grid {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 2.25rem !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .lrb-product-gallery-col,
  .lrb-product-summary-col {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    float: none !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  .lrb-gallery-sticky-wrap {
    position: static !important;
    max-width: 640px;
    margin: 0 auto;
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .lrb-product-summary-col {
    max-width: 680px;
    margin: 0 auto;
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .lrb-anatomy-section {
    padding: 3.5rem 0;
  }

  .lrb-anatomy-stage-wrap {
    grid-template-columns: 1fr;
    gap: 2.5rem;
    margin-top: 2rem;
  }

  .lrb-anatomy-visual {
    padding: 2.25rem 1.5rem;
    max-width: 580px;
    margin: 0 auto;
    width: 100%;
    box-sizing: border-box;
  }

  .lrb-anatomy-visual img {
    max-height: 340px;
  }

  .lrb-anatomy-cards {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
  }

  .lrb-specs-section {
    padding: 3.5rem 0;
  }

  .lrb-shipping-pillars {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
  }

  .lrb-shipping-pillars .lrb-ship-pillar:last-child {
    grid-column: 1 / -1;
  }
}

/* Tablets & Mobile Devices (max-width: 768px) */
@media (max-width: 768px) {
  .lrb-single-product-page {
    padding: 0.75rem 0 3rem;
    overflow-x: hidden !important;
    width: 100% !important;
    max-width: 100vw !important;
  }

  .lrb-gallery-sticky-wrap {
    max-width: 100% !important;
    margin: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  .lrb-product-summary-col {
    max-width: 100% !important;
    margin: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  /* Product Top Bar */
  .lrb-product-top-bar {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.5rem 0 1rem;
    margin-bottom: 1.25rem;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .lrb-product-crumbs {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .lrb-product-crumbs .lrb-breadcrumbs {
    font-size: 0.76rem;
    line-height: 1.4;
    flex-wrap: wrap !important;
    word-break: break-word !important;
  }

  .lrb-product-top-meta {
    width: 100%;
    flex-wrap: wrap;
    gap: 0.5rem;
  }

  .lrb-top-tier-tag,
  .lrb-top-stock-pill {
    font-size: 0.7rem;
    padding: 0.3rem 0.65rem;
  }

  .lrb-single-title {
    word-break: break-word !important;
    overflow-wrap: break-word !important;
  }

  /* Gallery Column */
  .lrb-gallery-badges {
    display: none !important; /* Hide duplicate badge row on mobile */
  }

  .lrb-gallery-main-viewer {
    border-radius: 14px;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.04);
    max-height: 400px;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .lrb-zoom-lens-indicator {
    display: none !important; /* Hide hover hint on touch screens */
  }

  /* Touch-Friendly Horizontal Thumbnail Carousel */
  .lrb-gallery-thumbs {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 0.65rem;
    padding: 6px 2px 10px;
    margin-top: 0.75rem;
    scrollbar-width: thin;
    scrollbar-color: #c5a880 #f0f0f0;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .lrb-gallery-thumbs::-webkit-scrollbar {
    height: 4px;
  }

  .lrb-gallery-thumbs::-webkit-scrollbar-track {
    background: #f0f0f0;
    border-radius: 4px;
  }

  .lrb-gallery-thumbs::-webkit-scrollbar-thumb {
    background: #c5a880;
    border-radius: 4px;
  }

  .lrb-thumb-btn {
    flex: 0 0 68px !important;
    min-width: 68px !important;
    max-width: 68px !important;
    height: 68px !important;
    width: 68px !important;
    flex-shrink: 0 !important;
    scroll-snap-align: start;
    border-radius: 8px;
    padding: 0;
    box-sizing: border-box !important;
  }

  /* 4K QC Trigger Card (Positioned under purchase actions) */
  .lrb-gallery-qc-trigger {
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
    padding: 1rem 1.15rem;
    gap: 0.85rem;
    flex-wrap: wrap;
    background: #f0fbf6;
    border: 1px solid rgba(0, 182, 122, 0.25);
    border-radius: var(--lrb-radius-md);
  }

  .lrb-qc-trigger-icon {
    width: 32px;
    height: 32px;
  }

  .lrb-qc-trigger-content {
    flex: 1 1 calc(100% - 46px);
  }

  .lrb-qc-trigger-content strong {
    font-size: 0.82rem;
  }

  .lrb-qc-trigger-content p {
    font-size: 0.72rem;
  }

  .lrb-btn-outline-sm.lrb-qc-play-action {
    width: 100%;
    text-align: center;
    justify-content: center;
    display: inline-flex;
    padding: 0.6rem 1rem;
    margin-top: 0.35rem;
    box-sizing: border-box;
    border-radius: 6px;
  }

  /* Product Summary Column */
  .lrb-summary-header {
    margin-bottom: 1rem;
  }

  .lrb-product-eyebrow {
    font-size: 0.7rem;
    margin-bottom: 0.35rem;
  }

  .lrb-single-title {
    font-size: 1.85rem;
    line-height: 1.25;
    margin-bottom: 0.65rem;
  }

  .lrb-single-tp-bar {
    padding-bottom: 0.85rem;
    gap: 0.65rem;
  }

  .lrb-single-tp-link {
    font-size: 0.78rem;
  }

  .lrb-sku-tag {
    font-size: 0.72rem;
  }

  /* Price & Savings */
  .lrb-price-savings-card {
    padding: 1rem 1.15rem;
    margin: 1rem 0;
  }

  .lrb-single-price {
    font-size: 1.9rem;
  }

  .lrb-single-price del {
    font-size: 1.2rem;
  }

  .lrb-boutique-compare {
    font-size: 0.8rem;
  }

  .lrb-savings-pill {
    font-size: 0.74rem;
    padding: 0.3rem 0.7rem;
  }

  .lrb-dispatch-pill {
    font-size: 0.78rem;
    margin-bottom: 1rem;
  }

  .lrb-single-short-desc {
    font-size: 0.88rem;
    line-height: 1.6;
    margin-bottom: 1.35rem;
  }

  /* Purchase Actions */
  .lrb-purchase-actions {
    gap: 0.85rem;
    margin-bottom: 1.5rem;
  }

  .lrb-qty-cart-row {
    gap: 0.75rem;
  }

  .lrb-btn-cart-lg {
    padding: 0.9rem 1.25rem;
    font-size: 0.88rem;
  }

  .lrb-btn-whatsapp-lg {
    padding: 0.95rem 1.25rem;
    font-size: 0.88rem;
  }

  .lrb-wa-help-note {
    font-size: 0.72rem;
    line-height: 1.4;
  }

  /* Guarantee Box */
  .lrb-single-guarantee-box {
    padding: 1.15rem 1.25rem;
    gap: 1rem;
    margin-bottom: 1.5rem;
  }

  .lrb-guarantee-row {
    gap: 0.75rem;
  }

  .lrb-g-icon {
    width: 30px;
    height: 30px;
  }

  .lrb-g-text strong {
    font-size: 0.84rem;
  }

  .lrb-g-text p {
    font-size: 0.78rem;
  }

  .lrb-presentation-checklist {
    padding: 1.15rem 1.25rem;
  }

  /* Anatomy Section */
  .lrb-anatomy-section {
    padding: 3rem 0;
  }

  .lrb-anatomy-stage-wrap {
    grid-template-columns: 1fr;
    gap: 1.75rem;
    margin-top: 1.75rem;
  }

  .lrb-anatomy-visual {
    padding: 1.5rem 1rem;
    max-width: 100%;
    box-sizing: border-box;
  }

  .lrb-anatomy-visual img {
    max-height: 280px;
  }

  .lrb-anatomy-cards {
    grid-template-columns: 1fr;
    gap: 0.85rem;
  }

  .lrb-anatomy-card {
    padding: 1rem 1.15rem;
    gap: 1rem;
  }

  .lrb-anatomy-card-num {
    font-size: 1.15rem;
  }

  .lrb-anatomy-card-text h4 {
    font-size: 0.88rem;
  }

  .lrb-anatomy-card-text p {
    font-size: 0.78rem;
  }

  /* Specifications Accordion Tabs */
  .lrb-specs-section {
    padding: 3rem 0;
  }

  .lrb-specs-nav {
    gap: 1.25rem;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
  }

  .lrb-spec-tab-btn {
    font-size: 1rem;
    padding: 0.75rem 0;
  }

  .lrb-spec-table-grid {
    grid-template-columns: 1fr;
    gap: 0.85rem;
    padding: 1.25rem;
  }

  .lrb-spec-row {
    padding-bottom: 0.75rem;
  }

  .lrb-qc-meta-tags {
    flex-direction: column !important;
    gap: 8px !important;
    margin: 10px 0 15px 0 !important;
  }

  .lrb-qc-meta-tags span {
    width: 100%;
    box-sizing: border-box;
    font-size: 0.78rem !important;
  }

  .lrb-qc-steps-list {
    margin-left: 1rem;
    font-size: 0.82rem;
    gap: 0.75rem;
  }

  .lrb-unboxing-grid {
    grid-template-columns: 1fr;
    gap: 0.75rem;
    margin-top: 1rem;
  }

  .lrb-unboxing-card {
    padding: 0.95rem 1.15rem;
    font-size: 0.84rem;
  }

  .lrb-shipping-pillars {
    grid-template-columns: 1fr;
    gap: 1rem;
    margin-top: 1rem;
  }

  .lrb-ship-pillar {
    padding: 1.25rem;
  }

  .lrb-ship-pillar strong {
    font-size: 0.9rem;
  }

  .lrb-ship-pillar p {
    font-size: 0.78rem;
  }

  /* Reviews Section */
  .lrb-single-reviews-section {
    padding: 3rem 0;
  }
}

/* Small Smartphone Devices (max-width: 480px) */
@media (max-width: 480px) {
  .lrb-single-product-page {
    padding: 0.5rem 0 2.5rem;
    overflow-x: hidden !important;
    width: 100% !important;
    max-width: 100vw !important;
  }

  .lrb-single-title {
    font-size: 1.45rem;
    line-height: 1.22;
    word-break: break-word !important;
  }

  .lrb-gallery-thumbs {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .lrb-thumb-btn {
    flex: 0 0 62px !important;
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    max-width: 62px !important;
    box-sizing: border-box !important;
  }

  .lrb-price-main-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
  }

  .lrb-single-price {
    font-size: 1.7rem;
  }

  .lrb-single-price del {
    font-size: 1.1rem;
  }

  .lrb-boutique-compare {
    font-size: 0.76rem;
  }

  .lrb-savings-pill {
    font-size: 0.7rem;
    padding: 0.25rem 0.65rem;
  }

  .lrb-qty-cart-row {
    flex-wrap: wrap !important;
    gap: 0.65rem !important;
  }

  .lrb-custom-qty {
    flex-shrink: 0;
    width: 100%;
    max-width: 130px;
    justify-content: space-between;
  }

  .lrb-qty-btn {
    width: 36px;
    font-size: 1rem;
  }

  .lrb-qty-input {
    width: 38px;
    font-size: 0.9rem;
  }

  .lrb-native-cart-form .quantity {
    max-width: 130px;
  }

  .lrb-native-cart-form .quantity input.qty {
    width: 50px;
    height: 44px;
    font-size: 0.9rem;
  }

  .lrb-btn-cart-lg {
    padding: 0.85rem 1rem !important;
    font-size: 0.85rem !important;
    gap: 0.4rem;
    width: 100% !important;
    flex: 1 1 100% !important;
    white-space: normal !important;
    box-sizing: border-box !important;
  }

  .lrb-btn-cart-lg svg {
    width: 16px;
    height: 16px;
  }

  .lrb-btn-whatsapp-lg {
    padding: 0.85rem 1rem !important;
    font-size: 0.82rem !important;
    text-align: center !important;
    width: 100% !important;
    white-space: normal !important;
    box-sizing: border-box !important;
  }

  .lrb-btn-whatsapp-lg svg {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
  }

  .lrb-anatomy-visual img {
    max-height: 220px;
  }

  .lrb-anatomy-pin {
    width: 26px;
    height: 26px;
  }

  .lrb-pin-core {
    width: 26px;
    height: 26px;
    font-size: 0.68rem;
  }

  .lrb-pin-popover {
    width: 190px;
    padding: 0.65rem 0.85rem;
    font-size: 0.72rem;
  }

  .lrb-spec-tab-btn {
    font-size: 0.92rem;
  }

  .lrb-unboxing-card {
    font-size: 0.8rem;
    padding: 0.85rem;
  }

  .lrb-ship-pillar {
    padding: 1rem;
  }

  .lrb-single-reviews-section {
    padding: 2.5rem 0;
  }
}

/* ==========================================================================
   Related Atelier Masterpieces (Single Product)
   ========================================================================== */
.lrb-related-section {
  padding: 5rem 0 3.5rem;
  border-top: 1px solid var(--lrb-border-subtle);
  background: #ffffff;
}

.lrb-related-section .lrb-section-header {
  margin-bottom: 3rem;
  text-align: center;
}

.lrb-related-section .lrb-section-eyebrow {
  display: inline-block;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--lrb-gold);
  margin-bottom: 0.5rem;
}

.lrb-related-section .lrb-section-title {
  font-family: var(--lrb-font-heading);
  font-size: 2.25rem;
  font-weight: 400;
  color: var(--lrb-text-primary);
  letter-spacing: -0.01em;
  margin: 0 0 0.6rem;
}

.lrb-related-section .lrb-section-sub {
  font-size: 0.95rem;
  color: var(--lrb-text-muted);
  max-width: 580px;
  margin: 0 auto;
  line-height: 1.6;
}

.lrb-related-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.75rem;
}

.lrb-related-grid .lrb-product-card {
  background: #ffffff;
  border: 1px solid var(--lrb-border-subtle);
  border-radius: var(--lrb-radius-md);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform var(--lrb-transition-smooth), box-shadow var(--lrb-transition-smooth), border-color var(--lrb-transition-smooth);
}

.lrb-related-grid .lrb-product-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);
  border-color: #dcd7cc;
}

.lrb-related-grid .lrb-product-card-top {
  position: relative;
  aspect-ratio: 1 / 1;
  height: auto;
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  overflow: hidden;
  border-bottom: 1px solid var(--lrb-border-subtle);
}

.lrb-related-grid .lrb-card-img-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden;
}

.lrb-related-grid .lrb-card-img-link img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);
}

.lrb-related-grid .lrb-product-card:hover .lrb-card-img-link img {
  transform: scale(1.06);
}

.lrb-related-grid .lrb-card-tier-tag {
  position: absolute;
  top: 10px;
  left: 10px;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(4px);
  border: 1px solid rgba(0, 0, 0, 0.06);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 3px 8px;
  border-radius: 3px;
  color: var(--lrb-text-primary);
  z-index: 2;
}

.lrb-related-grid .lrb-card-hover-actions {
  position: absolute;
  bottom: 10px;
  left: 10px;
  right: 10px;
  display: flex;
  gap: 0.4rem;
  opacity: 0;
  transform: translateY(8px);
  transition: all 0.25s ease-out;
  z-index: 5;
}

.lrb-related-grid .lrb-product-card:hover .lrb-card-hover-actions {
  opacity: 1;
  transform: translateY(0);
}

.lrb-related-grid .lrb-product-card-body {
  padding: 1.2rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.lrb-related-grid .lrb-product-brand {
  font-size: 0.72rem;
  color: var(--lrb-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: 500;
  margin-bottom: 0.3rem;
  display: block;
}

.lrb-related-grid .lrb-product-title {
  font-size: 0.95rem;
  line-height: 1.4;
  margin: 0 0 0.5rem;
  font-weight: 500;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.8em;
}

.lrb-related-grid .lrb-product-title a {
  color: var(--lrb-text-primary);
  text-decoration: none;
  transition: color var(--lrb-transition-fast);
}

.lrb-related-grid .lrb-product-title a:hover {
  color: var(--lrb-gold);
}

.lrb-related-grid .lrb-product-rating {
  display: flex;
  align-items: center;
  gap: 2px;
  color: #d4a359;
  margin-bottom: 0.75rem;
  font-size: 0.8rem;
}

.lrb-related-grid .lrb-product-price-row {
  margin-top: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid var(--lrb-border-subtle);
  padding-top: 0.75rem;
}

.lrb-related-grid .lrb-product-price {
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--lrb-text-primary);
}

.lrb-related-grid .lrb-product-price del {
  color: var(--lrb-text-light);
  font-size: 0.82rem;
  font-weight: 400;
  margin-right: 4px;
}

.lrb-related-grid .lrb-product-price ins {
  text-decoration: none;
  color: var(--lrb-text-primary);
}

.lrb-related-grid .lrb-stock-tag {
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: #15803d;
  background: #f0fdf4;
  padding: 2px 7px;
  border-radius: 3px;
}

.lrb-related-grid .lrb-product-card-footer {
  display: none;
  margin-top: 0.75rem;
}

/* Atelier Concierge Reassurance Banner */
.lrb-related-concierge-banner {
  margin-top: 3.5rem;
  background: linear-gradient(135deg, #fcfbfa 0%, #f6f3ee 100%);
  border: 1px solid var(--lrb-border-light);
  border-radius: var(--lrb-radius-md);
  padding: 1.75rem 2.25rem;
  display: flex;
  align-items: center;
  gap: 1.75rem;
  box-shadow: var(--lrb-shadow-sm);
}

.lrb-related-concierge-icon {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  border-radius: 50%;
  background: #ffffff;
  border: 1px solid var(--lrb-border-light);
  color: var(--lrb-gold);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(197, 160, 89, 0.12);
}

.lrb-related-concierge-icon svg {
  width: 22px;
  height: 22px;
}

.lrb-related-concierge-content {
  flex: 1;
}

.lrb-related-concierge-content h4 {
  font-family: var(--lrb-font-heading);
  font-size: 1.15rem;
  font-weight: 500;
  color: var(--lrb-text-primary);
  margin: 0 0 0.35rem;
}

.lrb-related-concierge-content p {
  font-size: 0.88rem;
  color: var(--lrb-text-muted);
  line-height: 1.5;
  margin: 0;
}

.lrb-related-concierge-btn {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  white-space: nowrap;
  background: #ffffff;
  border-color: var(--lrb-border-light);
  color: var(--lrb-text-primary);
  font-weight: 500;
  padding: 0.65rem 1.25rem;
  transition: all var(--lrb-transition-fast);
}

.lrb-related-concierge-btn:hover {
  background: var(--lrb-text-primary);
  color: #ffffff;
  border-color: var(--lrb-text-primary);
}

.lrb-related-concierge-btn svg {
  color: #25d366;
}

.lrb-related-concierge-btn:hover svg {
  color: #ffffff;
}

/* Tablet & Mobile Responsiveness for Related Section */
@media (max-width: 1024px) {
  .lrb-related-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
  }

  .lrb-related-concierge-banner {
    flex-direction: column;
    text-align: center;
    padding: 1.5rem;
    gap: 1.25rem;
  }

  .lrb-related-concierge-btn {
    width: 100%;
    justify-content: center;
  }
}

@media (max-width: 680px) {
  .lrb-related-section {
    padding: 3.5rem 0 2.5rem;
  }

  .lrb-related-section .lrb-section-header {
    margin-bottom: 2rem;
  }

  .lrb-related-section .lrb-section-title {
    font-size: 1.75rem;
  }

  .lrb-related-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
  }

  .lrb-related-grid .lrb-product-card-top {
    padding: 0 !important;
  }

  .lrb-related-grid .lrb-card-hover-actions {
    display: none;
  }

  .lrb-related-grid .lrb-product-card-body {
    padding: 0.85rem;
  }

  .lrb-related-grid .lrb-product-title {
    font-size: 0.85rem;
    min-height: auto;
  }

  .lrb-related-grid .lrb-product-price {
    font-size: 0.95rem;
  }

  .lrb-related-grid .lrb-stock-tag {
    font-size: 0.62rem;
    padding: 2px 5px;
  }

  .lrb-related-grid .lrb-product-card-footer {
    display: block;
  }

  .lrb-related-grid .lrb-product-card-cart-btn,
  .lrb-related-grid .lrb-product-card-wa-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    width: 100%;
    background: #111111;
    color: #ffffff;
    font-size: 0.74rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 7px 10px;
    border-radius: 4px;
    text-decoration: none;
    transition: background 0.2s ease;
  }

  .lrb-related-grid .lrb-product-card-cart-btn:hover {
    background: var(--lrb-gold, #c5a880);
    color: #ffffff;
  }
}

@media (max-width: 380px) {
  .lrb-related-grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}

/* ==========================================================================
   3. Cart & Checkout White Minimalist Styling
   ========================================================================== */
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce {
  margin: 3rem 0;
}

.woocommerce table.shop_table {
  border: 1px solid var(--lrb-border-subtle) !important;
  border-radius: var(--lrb-radius-md) !important;
  background: #ffffff !important;
}

.woocommerce table.shop_table th {
  font-family: var(--lrb-font-heading) !important;
  font-size: 1rem !important;
  background: var(--lrb-bg-pearl) !important;
  padding: 14px 18px !important;
}

.woocommerce table.shop_table td {
  padding: 16px 18px !important;
}

.woocommerce-cart .cart-collaterals .cart_totals {
  background: #ffffff !important;
  border: 1px solid var(--lrb-border-subtle) !important;
  border-radius: var(--lrb-radius-md) !important;
  padding: 2rem !important;
}

.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
  background-color: var(--lrb-text-primary) !important;
  color: #ffffff !important;
  padding: 14px 24px !important;
  font-size: 0.9rem !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  border-radius: 2px !important;
  transition: background var(--lrb-transition-fast) !important;
}

.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
  background-color: var(--lrb-gold) !important;
}

@media (max-width: 900px) {
  .woocommerce ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  .woocommerce div.product {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 500px) {
  .woocommerce ul.products {
    grid-template-columns: 1fr !important;
  }
}

/* ==========================================================================
   5. Ultra-Luxury Category Showcase & Product Archive Architecture
   ========================================================================== */
.lrb-category-hero {
  padding: 3.5rem 0 2.5rem;
  background: var(--lrb-bg-porcelain);
  border-bottom: 1px solid var(--lrb-border-subtle);
  position: relative;
}

.lrb-cat-breadcrumbs {
  margin-bottom: 0.75rem;
}

.lrb-cat-eyebrow-wrap {
  margin-bottom: 0.5rem;
}

.lrb-cat-trust-pill-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
  margin: 0.85rem 0 1.25rem;
}

.lrb-cat-tp-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #ffffff;
  border: 1px solid var(--lrb-border-light);
  border-radius: 30px;
  padding: 5px 14px;
  text-decoration: none;
  box-shadow: var(--lrb-shadow-sm);
  transition: all var(--lrb-transition-fast);
}

.lrb-cat-tp-badge:hover {
  border-color: #00b67a;
  transform: translateY(-1px);
}

.lrb-cat-tp-text {
  font-size: 0.78rem;
  color: var(--lrb-text-primary);
}

.lrb-cat-qc-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #ffffff;
  border: 1px solid var(--lrb-border-light);
  border-radius: 30px;
  padding: 5px 14px;
  font-size: 0.78rem;
  font-weight: 600;
  color: #1a1a1a;
  box-shadow: var(--lrb-shadow-sm);
}

.lrb-cat-qc-badge svg {
  color: #c5a880;
}

.lrb-cat-desc {
  max-width: 760px;
  margin: 0 auto 1.5rem;
  font-size: 0.95rem;
  line-height: 1.65;
  color: #555555;
}

.lrb-pill-sm {
  font-size: 0.75rem !important;
  padding: 4px 12px !important;
}

/* Category 3-Pillar Guarantees Ribbon */
.lrb-category-guarantees-bar {
  background: #faf9f6;
  border-bottom: 1px solid var(--lrb-border-subtle);
  padding: 1.25rem 0;
}

.lrb-cat-pillars-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}

.lrb-cat-pillar-item {
  display: flex;
  align-items: center;
  gap: 12px;
}

.lrb-pillar-icon {
  width: 38px;
  height: 38px;
  flex-shrink: 0;
  background: #ffffff;
  border: 1px solid var(--lrb-border-light);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #c5a880;
  box-shadow: var(--lrb-shadow-sm);
}

.lrb-pillar-content strong {
  display: block;
  font-size: 0.85rem;
  color: var(--lrb-text-primary);
  margin-bottom: 2px;
}

.lrb-pillar-content p {
  font-size: 0.75rem;
  color: var(--lrb-text-muted);
  margin: 0;
  line-height: 1.35;
}

@media (max-width: 768px) {
  .lrb-cat-pillars-grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}

/* WooCommerce Product Loop with Luxury Cards */
.woocommerce ul.products li.lrb-product-card {
  list-style: none !important;
  padding: 0 !important;
  background: #ffffff !important;
  border: 1px solid var(--lrb-border-subtle) !important;
  border-radius: var(--lrb-radius-md) !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
}

.woocommerce ul.products li.lrb-product-card .lrb-product-card-top {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  height: auto;
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  overflow: hidden;
  border-bottom: 1px solid var(--lrb-border-subtle);
}

.woocommerce ul.products li.lrb-product-card .lrb-card-img-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden;
}

.woocommerce ul.products li.lrb-product-card .lrb-card-img-link img {
  width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  max-width: 100% !important;
  object-fit: cover !important;
  transition: transform var(--lrb-transition-slow) !important;
  display: block !important;
  margin: 0 !important;
}

.woocommerce ul.products li.lrb-product-card:hover .lrb-card-img-link img {
  transform: scale(1.05) !important;
}

.woocommerce ul.products li.lrb-product-card .lrb-product-card-body {
  padding: 1.25rem !important;
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
}

.woocommerce ul.products li.lrb-product-card .lrb-product-title {
  font-family: var(--lrb-font-heading) !important;
  font-size: 1.05rem !important;
  color: var(--lrb-text-primary) !important;
  margin: 0.35rem 0 0.5rem !important;
  line-height: 1.4 !important;
}

.woocommerce ul.products li.lrb-product-card .lrb-product-title a {
  color: var(--lrb-text-primary) !important;
  text-decoration: none !important;
}

.woocommerce ul.products li.lrb-product-card .lrb-product-title a:hover {
  color: var(--lrb-gold) !important;
}

/* Luxury Pagination */
.woocommerce nav.woocommerce-pagination {
  text-align: center !important;
  margin: 3.5rem 0 1.5rem !important;
}

.woocommerce nav.woocommerce-pagination ul {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
}

.woocommerce nav.woocommerce-pagination ul li {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: none !important;
  float: none !important;
  display: inline-block !important;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 42px !important;
  height: 42px !important;
  padding: 0 14px !important;
  background: #ffffff !important;
  border: 1px solid var(--lrb-border-light) !important;
  border-radius: 4px !important;
  font-family: var(--lrb-font-body) !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  color: var(--lrb-text-primary) !important;
  text-decoration: none !important;
  transition: all var(--lrb-transition-fast) !important;
  line-height: 1 !important;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
  background: var(--lrb-text-primary) !important;
  color: #ffffff !important;
  border-color: var(--lrb-text-primary) !important;
}

.woocommerce nav.woocommerce-pagination ul li a:hover {
  background: var(--lrb-gold) !important;
  color: #ffffff !important;
  border-color: var(--lrb-gold) !important;
}

/* ==========================================================================
   8. Ultra-Luxury Slide-in Side Cart Drawer (Mini-Cart)
   ========================================================================== */
#lrb-cart-drawer.lrb-cart-drawer {
  z-index: 2200;
}

#lrb-cart-drawer.lrb-cart-drawer .lrb-drawer-panel {
  width: 100%;
  max-width: 480px;
  background: #ffffff;
  display: flex;
  flex-direction: column;
  box-shadow: -10px 0 45px rgba(0, 0, 0, 0.12);
  z-index: 2201;
  height: 100%;
}

@media (max-width: 540px) {
  #lrb-cart-drawer.lrb-cart-drawer .lrb-drawer-panel {
    max-width: 100%;
  }
}

/* Drawer Header */
#lrb-cart-drawer .lrb-drawer-header {
  padding: 1.35rem 1.75rem;
  border-bottom: 1px solid var(--lrb-border-subtle);
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #ffffff;
  flex-shrink: 0;
}

#lrb-cart-drawer .lrb-drawer-title-wrap {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

#lrb-cart-drawer .lrb-drawer-title {
  font-family: var(--lrb-font-heading);
  font-size: 1.3rem;
  font-weight: 400;
  color: var(--lrb-text-primary);
  margin: 0;
  letter-spacing: 0.02em;
}

.lrb-drawer-count-badge {
  display: inline-flex;
  align-items: center;
  font-family: var(--lrb-font-body);
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: var(--lrb-gold);
  background: var(--lrb-gold-light);
  border: 1px solid var(--lrb-gold-border);
  padding: 2px 9px;
  border-radius: 12px;
}

#lrb-cart-drawer .lrb-drawer-close {
  position: static;
  background: transparent;
  border: none;
  color: var(--lrb-text-muted);
  padding: 6px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all var(--lrb-transition-fast);
}

#lrb-cart-drawer .lrb-drawer-close svg {
  width: 18px;
  height: 18px;
  stroke-width: 2;
}

#lrb-cart-drawer .lrb-drawer-close:hover {
  background: var(--lrb-bg-pearl);
  color: var(--lrb-text-primary);
  transform: rotate(90deg);
}

/* Drawer Body & Inner Container */
#lrb-cart-drawer .lrb-drawer-body {
  padding: 0;
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  overflow: hidden;
  background: #ffffff;
}

.lrb-minicart-inner {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  height: 100%;
}

.lrb-sidecart-wrapper {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  height: 100%;
}

/* Top Reassurance Banner */
.lrb-sidecart-unlocked-banner {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  padding: 0.85rem 1.5rem;
  background: linear-gradient(135deg, #fdfbf7 0%, #faf6ee 100%);
  border-bottom: 1px solid #ede4d6;
  flex-shrink: 0;
}

.lrb-unlocked-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #ffffff;
  color: var(--lrb-gold);
  border: 1px solid var(--lrb-gold-border);
  flex-shrink: 0;
  box-shadow: 0 2px 6px rgba(197, 168, 128, 0.15);
}

.lrb-unlocked-icon svg {
  width: 16px;
  height: 16px;
}

.lrb-unlocked-text {
  min-width: 0;
}

.lrb-unlocked-text strong {
  display: block;
  font-size: 0.76rem;
  font-weight: 600;
  color: var(--lrb-text-primary);
  letter-spacing: 0.02em;
  line-height: 1.25;
}

.lrb-unlocked-text p {
  margin: 2px 0 0;
  font-size: 0.72rem;
  color: var(--lrb-text-secondary);
  line-height: 1.3;
}

/* Scrollable Cart Items List */
.lrb-sidecart-items {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 0 1.5rem;
  margin: 0 !important;
  list-style: none !important;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}

.lrb-sidecart-items::-webkit-scrollbar {
  width: 5px;
}

.lrb-sidecart-items::-webkit-scrollbar-track {
  background: #fbfbfb;
}

.lrb-sidecart-items::-webkit-scrollbar-thumb {
  background: #e2e2e2;
  border-radius: 4px;
}

.lrb-sidecart-items::-webkit-scrollbar-thumb:hover {
  background: var(--lrb-gold);
}

/* Cart Item Row */
.lrb-sidecart-items li.lrb-sidecart-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 1.15rem !important;
  padding: 1.25rem 0 !important;
  border-bottom: 1px solid var(--lrb-border-subtle) !important;
  background: transparent !important;
  position: relative !important;
  margin: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  width: 100% !important;
  float: none !important;
}

.lrb-sidecart-items li.lrb-sidecart-item:last-child {
  border-bottom: none !important;
}

/* Cart Item Thumbnail */
.lrb-sidecart-thumb {
  width: 84px;
  height: 84px;
  flex-shrink: 0;
  background: #fcfbf9;
  border: 1px solid var(--lrb-border-subtle);
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding: 4px;
  position: relative;
}

.lrb-sidecart-thumb a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.lrb-sidecart-thumb img {
  max-width: 100% !important;
  max-height: 100% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  margin: 0 !important;
  transition: transform 0.3s ease !important;
}

.lrb-sidecart-thumb:hover img {
  transform: scale(1.06);
}

/* Cart Item Details */
.lrb-sidecart-details {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.lrb-sidecart-meta-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  margin-bottom: 0.3rem;
}

.lrb-sidecart-brand {
  font-size: 0.68rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--lrb-gold);
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.lrb-sidecart-tier-pill {
  font-size: 0.64rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background: var(--lrb-bg-pearl);
  color: var(--lrb-text-secondary);
  padding: 2px 6px;
  border-radius: 3px;
  font-weight: 500;
  white-space: nowrap;
  border: 1px solid #ebebeb;
}

.lrb-sidecart-name {
  font-family: var(--lrb-font-heading);
  font-size: 0.95rem;
  font-weight: 400;
  line-height: 1.35;
  margin: 0 0 0.35rem;
  color: var(--lrb-text-primary);
}

.lrb-sidecart-name a {
  color: var(--lrb-text-primary);
  text-decoration: none;
  transition: color var(--lrb-transition-fast);
}

.lrb-sidecart-name a:hover {
  color: var(--lrb-gold);
}

/* Variation Metadata */
.lrb-sidecart-details dl.variation {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 2px 8px;
  font-size: 0.72rem;
  color: var(--lrb-text-muted);
  margin: 0 0 0.4rem;
  padding: 0;
  border: none;
}

.lrb-sidecart-details dl.variation dt {
  font-weight: 600;
  margin: 0;
}

.lrb-sidecart-details dl.variation dd {
  margin: 0;
}

/* Price & Remove Button Row */
.lrb-sidecart-price-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 0.25rem;
}

.lrb-sidecart-qty-price {
  display: flex;
  align-items: baseline;
  gap: 5px;
}

.lrb-sidecart-qty {
  font-size: 0.8rem;
  color: var(--lrb-text-muted);
  font-weight: 400;
}

.lrb-sidecart-unit-price {
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--lrb-text-primary);
}

.lrb-sidecart-remove {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  height: 24px !important;
  border-radius: 50% !important;
  background: transparent !important;
  color: var(--lrb-text-light) !important;
  border: 1px solid var(--lrb-border-subtle) !important;
  padding: 0 !important;
  margin: 0 !important;
  transition: all var(--lrb-transition-fast) !important;
  cursor: pointer !important;
  text-decoration: none !important;
}

.lrb-sidecart-remove svg {
  width: 13px;
  height: 13px;
}

.lrb-sidecart-remove:hover {
  background: #fff0f0 !important;
  color: var(--lrb-error) !important;
  border-color: #ffcdd2 !important;
  transform: scale(1.08);
}

/* 4K QC Note */
.lrb-sidecart-qc-note {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 0.68rem;
  color: var(--lrb-text-secondary);
  background: var(--lrb-bg-pearl);
  padding: 3px 7px;
  border-radius: 3px;
  margin-top: 0.5rem;
  width: fit-content;
  border-left: 2px solid var(--lrb-gold);
}

.lrb-sidecart-qc-note svg {
  width: 12px;
  height: 12px;
  color: var(--lrb-gold);
}

/* Pinned Sticky Drawer Footer */
.lrb-sidecart-footer {
  background: #ffffff;
  border-top: 1px solid var(--lrb-border-subtle);
  padding: 1.25rem 1.75rem 1.5rem;
  box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.04);
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  flex-shrink: 0;
}

.lrb-sidecart-subtotal-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin: 0 0 0.25rem;
  padding: 0;
  border: none !important;
}

.lrb-sidecart-subtotal-label {
  font-size: 0.82rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--lrb-text-secondary);
  font-weight: 500;
}

.lrb-sidecart-subtotal-amount {
  font-family: var(--lrb-font-heading);
  font-size: 1.4rem;
  font-weight: 600;
  color: var(--lrb-text-primary);
  line-height: 1;
}

.lrb-sidecart-packaging-tag {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 0.72rem;
  color: var(--lrb-text-secondary);
  background: #faf8f5;
  border: 1px dashed var(--lrb-gold-border);
  padding: 6px 10px;
  border-radius: 4px;
  line-height: 1.35;
}

.lrb-sidecart-packaging-tag svg {
  width: 14px;
  height: 14px;
  color: var(--lrb-gold);
  flex-shrink: 0;
}

/* Action Buttons */
.lrb-sidecart-actions {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  margin-top: 0.35rem;
}

.lrb-sidecart-btn-checkout {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  background: var(--lrb-text-primary) !important;
  color: #ffffff !important;
  font-family: var(--lrb-font-body) !important;
  font-size: 0.82rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  padding: 14px 20px !important;
  border-radius: 3px !important;
  text-decoration: none !important;
  transition: all var(--lrb-transition-fast) !important;
  border: 1px solid var(--lrb-text-primary) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.lrb-sidecart-btn-checkout svg {
  width: 15px;
  height: 15px;
  transition: transform var(--lrb-transition-fast);
}

.lrb-sidecart-btn-checkout:hover {
  background: var(--lrb-gold) !important;
  border-color: var(--lrb-gold) !important;
  color: #ffffff !important;
  box-shadow: 0 6px 18px rgba(197, 168, 128, 0.35);
}

.lrb-sidecart-btn-checkout:hover svg {
  transform: translateX(4px);
}

.lrb-sidecart-btn-wa {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  background: #25d366 !important;
  color: #ffffff !important;
  font-family: var(--lrb-font-body) !important;
  font-size: 0.78rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.05em !important;
  padding: 12px 18px !important;
  border-radius: 3px !important;
  text-decoration: none !important;
  transition: all var(--lrb-transition-fast) !important;
  border: 1px solid #25d366 !important;
}

.lrb-sidecart-btn-wa svg {
  width: 16px;
  height: 16px;
}

.lrb-sidecart-btn-wa:hover {
  background: #1ebd5a !important;
  border-color: #1ebd5a !important;
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(37, 211, 102, 0.3);
}

.lrb-sidecart-link-viewcart {
  text-align: center;
  font-size: 0.78rem;
  color: var(--lrb-text-muted);
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color var(--lrb-transition-fast);
  padding: 4px 0;
}

.lrb-sidecart-link-viewcart:hover {
  color: var(--lrb-text-primary);
}

/* Security Badges */
.lrb-sidecart-trust-badges {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid var(--lrb-border-subtle);
  padding-top: 0.75rem;
  margin-top: 0.25rem;
}

.lrb-sidecart-trust-badges span {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 0.65rem;
  color: var(--lrb-text-muted);
  letter-spacing: 0.02em;
}

.lrb-sidecart-trust-badges svg {
  width: 12px;
  height: 12px;
  color: var(--lrb-gold);
  flex-shrink: 0;
}

/* Ultra-Luxury Empty Cart State */
.lrb-sidecart-empty-state {
  padding: 3rem 2rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex: 1;
  height: 100%;
  overflow-y: auto;
}

.lrb-sidecart-empty-icon {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: #faf8f5;
  border: 1px solid var(--lrb-gold-border);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--lrb-gold);
  margin-bottom: 1.5rem;
  box-shadow: 0 4px 16px rgba(197, 168, 128, 0.12);
}

.lrb-sidecart-empty-icon svg {
  width: 32px;
  height: 32px;
}

.lrb-sidecart-empty-title {
  font-family: var(--lrb-font-heading);
  font-size: 1.45rem;
  font-weight: 400;
  color: var(--lrb-text-primary);
  margin: 0 0 0.6rem;
}

.lrb-sidecart-empty-desc {
  font-size: 0.85rem;
  color: var(--lrb-text-muted);
  line-height: 1.6;
  max-width: 330px;
  margin: 0 auto 1.75rem;
}

.lrb-sidecart-empty-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: var(--lrb-text-primary) !important;
  color: #ffffff !important;
  padding: 13px 26px !important;
  font-size: 0.8rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  border-radius: 3px !important;
  text-decoration: none !important;
  transition: all var(--lrb-transition-fast) !important;
}

.lrb-sidecart-empty-btn svg {
  width: 14px;
  height: 14px;
  transition: transform var(--lrb-transition-fast);
}

.lrb-sidecart-empty-btn:hover {
  background: var(--lrb-gold) !important;
  box-shadow: 0 6px 18px rgba(197, 168, 128, 0.35);
}

.lrb-sidecart-empty-btn:hover svg {
  transform: translateX(3px);
}

/* Quick Links in Empty Cart */
.lrb-sidecart-quick-links {
  margin-top: 2.25rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--lrb-border-subtle);
  width: 100%;
}

.lrb-sidecart-quick-label {
  display: block;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--lrb-text-muted);
  margin-bottom: 0.75rem;
}

.lrb-sidecart-pills-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
}

.lrb-sidecart-pills-row .lrb-pill {
  font-size: 0.75rem;
  padding: 5px 12px;
  background: var(--lrb-bg-pearl);
  border: 1px solid #ebebeb;
  border-radius: 20px;
  color: var(--lrb-text-secondary);
  text-decoration: none;
  transition: all var(--lrb-transition-fast);
}

.lrb-sidecart-pills-row .lrb-pill:hover {
  background: var(--lrb-text-primary);
  color: #ffffff;
  border-color: var(--lrb-text-primary);
}

/* Concierge Box */
.lrb-sidecart-concierge-box {
  margin-top: 1.5rem;
  background: #fafafa;
  border: 1px dashed var(--lrb-border-light);
  border-radius: 6px;
  padding: 1.1rem 1.25rem;
  width: 100%;
}

.lrb-sidecart-concierge-box p {
  font-size: 0.78rem;
  color: var(--lrb-text-secondary);
  line-height: 1.45;
  margin: 0 0 0.65rem;
}

.lrb-sidecart-wa-assist {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #1e8346;
  font-size: 0.78rem;
  font-weight: 600;
  text-decoration: none;
  transition: color var(--lrb-transition-fast);
}

.lrb-sidecart-wa-assist svg {
  width: 15px;
  height: 15px;
}

.lrb-sidecart-wa-assist:hover {
  color: #145a30;
  text-decoration: underline;
}

/* ==========================================================================
   9. Ultra-Luxury Shopping Bag & Cart Page Architecture
   ========================================================================== */

/* Cart Page Header (Centered Atelier Presentation) */
.lrb-cart-page-header {
  background: #ffffff;
  border-bottom: 1px solid var(--lrb-border-subtle);
  padding: 2.75rem 0 2rem;
  text-align: center;
}

.lrb-cart-header-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  margin: 0 auto !important;
}

.lrb-cart-crumbs {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.5rem !important;
  margin: 0 0 0.85rem !important;
  font-size: 0.8rem !important;
}

.lrb-cart-crumbs a {
  color: var(--lrb-text-muted);
  text-decoration: none;
  transition: color var(--lrb-transition-fast);
}

.lrb-cart-crumbs a:hover {
  color: var(--lrb-text-primary);
}

.lrb-cart-crumbs .lrb-breadcrumb-separator {
  color: #cccccc;
  font-size: 0.75rem;
}

.lrb-cart-crumbs .lrb-breadcrumb-current {
  color: var(--lrb-text-primary);
  font-weight: 500;
}

.lrb-cart-crumbs-wrap {
  display: flex !important;
  justify-content: center !important;
  margin-bottom: 0.85rem !important;
}

.lrb-cart-crumbs-wrap .lrb-breadcrumbs {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  font-size: 0.8rem !important;
}

.lrb-cart-title-row {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  gap: 0.75rem !important;
  margin-bottom: 1.5rem !important;
  width: 100% !important;
}

.lrb-cart-main-title {
  font-family: var(--lrb-font-heading);
  font-size: 2.2rem;
  font-weight: 400;
  color: var(--lrb-text-primary);
  margin: 0 !important;
  letter-spacing: 0.02em;
  text-align: center !important;
}

.lrb-cart-secure-tag {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  font-size: 0.75rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.05em !important;
  color: var(--lrb-gold) !important;
  background: var(--lrb-gold-light) !important;
  border: 1px solid var(--lrb-gold-border) !important;
  padding: 5px 14px !important;
  border-radius: 20px !important;
  margin: 0 auto !important;
}

.lrb-cart-secure-tag svg {
  width: 14px;
  height: 14px;
}

/* Checkout Steps Progress Bar (Centered globally across Cart & Checkout) */
.lrb-checkout-steps-bar {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 1.25rem !important;
  padding-top: 1.25rem !important;
  border-top: 1px solid #f2f2f2 !important;
  width: 100% !important;
  max-width: 580px !important;
  margin: 0 auto !important;
  text-align: center !important;
}

.lrb-step-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  opacity: 0.45;
  transition: opacity var(--lrb-transition-fast);
}

.lrb-step-item.is-active {
  opacity: 1;
}

.lrb-step-item.is-completed {
  opacity: 0.85;
}

.lrb-step-number {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #f0f0f0;
  color: #555;
  font-size: 0.72rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
}

.lrb-step-item.is-completed .lrb-step-number {
  background: #2e7d32;
  color: #ffffff;
}

.lrb-step-item.is-completed .lrb-step-number svg {
  width: 12px;
  height: 12px;
}

.lrb-step-item.is-completed a,
.lrb-step-item a {
  color: var(--lrb-text-primary);
  text-decoration: none;
}

.lrb-step-item.is-active .lrb-step-number {
  background: var(--lrb-text-primary);
  color: #ffffff;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}

.lrb-step-text {
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--lrb-text-primary);
}

.lrb-step-divider {
  flex: 0 0 40px;
  height: 1px;
  background: #e0e0e0;
}

.lrb-step-divider.is-active {
  background: #2e7d32;
}

@media (max-width: 600px) {
  .lrb-checkout-steps-bar {
    display: none !important;
  }
}

/* Cart Page Body */
.lrb-cart-page-body {
  padding: 2.5rem 0 5rem;
  background: #ffffff;
}

/* Customs & 4K QC Reassurance Banner */
.lrb-cart-unlocked-banner {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  padding: 1rem 1.5rem;
  background: linear-gradient(135deg, #fdfbf7 0%, #faf6ee 100%);
  border: 1px solid #ede4d6;
  border-radius: 6px;
  margin-bottom: 2.5rem;
}

.lrb-unlocked-banner-icon {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #ffffff;
  color: var(--lrb-gold);
  border: 1px solid var(--lrb-gold-border);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 2px 8px rgba(197, 168, 128, 0.15);
}

.lrb-unlocked-banner-icon svg {
  width: 20px;
  height: 20px;
}

.lrb-unlocked-banner-text {
  flex: 1;
  min-width: 0;
}

.lrb-unlocked-banner-text strong {
  display: block;
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--lrb-text-primary);
  margin-bottom: 2px;
}

.lrb-unlocked-banner-text p {
  margin: 0;
  font-size: 0.8rem;
  color: var(--lrb-text-secondary);
  line-height: 1.4;
}

.lrb-unlocked-banner-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #ffffff;
  border: 1px solid var(--lrb-gold-border);
  padding: 5px 12px;
  border-radius: 20px;
  font-size: 0.72rem;
  font-weight: 600;
  color: var(--lrb-gold);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  flex-shrink: 0;
}

.lrb-unlocked-banner-badge svg {
  width: 14px;
  height: 14px;
}

@media (max-width: 768px) {
  .lrb-cart-unlocked-banner {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
  }
}

/* 2-Column Split Cart Grid */
.lrb-cart-main-grid {
  display: grid;
  grid-template-columns: 1fr 390px;
  gap: 3rem;
  align-items: start;
}

@media (max-width: 1080px) {
  .lrb-cart-main-grid {
    grid-template-columns: 1fr 340px;
    gap: 2rem;
  }
}

@media (max-width: 900px) {
  .lrb-cart-main-grid {
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }
}

/* Left Column: Cart Items Table */
.lrb-cart-col-items {
  min-width: 0;
}

.lrb-cart-table {
  width: 100% !important;
  border-collapse: collapse !important;
  border: none !important;
  margin: 0 0 2.5rem !important;
}

.lrb-cart-table thead th {
  font-family: var(--lrb-font-body);
  font-size: 0.72rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--lrb-text-muted);
  padding: 0 0 1rem;
  border-bottom: 1px solid var(--lrb-border-light);
  border-top: none;
  background: transparent;
}

.lrb-cart-item-row {
  border-bottom: 1px solid var(--lrb-border-subtle);
}

.lrb-cart-item-row td {
  padding: 1.75rem 0.5rem 1.75rem 0;
  vertical-align: middle;
  border: none;
}

/* Remove button */
.lrb-col-remove {
  width: 36px;
  text-align: center;
}

.lrb-btn-item-remove {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 26px !important;
  height: 26px !important;
  border-radius: 50% !important;
  background: transparent !important;
  color: var(--lrb-text-light) !important;
  border: 1px solid var(--lrb-border-subtle) !important;
  padding: 0 !important;
  transition: all var(--lrb-transition-fast) !important;
  cursor: pointer !important;
  text-decoration: none !important;
}

.lrb-btn-item-remove svg {
  width: 14px;
  height: 14px;
}

.lrb-btn-item-remove:hover {
  background: #fff0f0 !important;
  color: var(--lrb-error) !important;
  border-color: #ffcdd2 !important;
  transform: scale(1.08);
}

/* Thumbnail */
.lrb-col-thumb {
  width: 110px;
}

.lrb-cart-thumb-box {
  width: 100px;
  height: 100px;
  background: #fdfbf9;
  border: 1px solid var(--lrb-border-subtle);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding: 6px;
  position: relative;
}

.lrb-cart-thumb-box a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.lrb-cart-thumb-box img {
  max-width: 100% !important;
  max-height: 100% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  margin: 0 !important;
  transition: transform 0.3s ease !important;
}

.lrb-cart-thumb-box:hover img {
  transform: scale(1.06);
}

/* Name & Metadata */
.lrb-col-name {
  padding-left: 1rem !important;
  padding-right: 1.5rem !important;
}

.lrb-cart-item-meta-top {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 0.35rem;
}

.lrb-cart-item-brand {
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--lrb-gold);
  font-weight: 600;
}

.lrb-cart-item-tier {
  font-size: 0.65rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  background: var(--lrb-bg-pearl);
  color: var(--lrb-text-secondary);
  padding: 2px 7px;
  border-radius: 12px;
  font-weight: 500;
  border: 1px solid #ebebeb;
}

.lrb-cart-item-title {
  font-family: var(--lrb-font-heading);
  font-size: 1.15rem;
  font-weight: 400;
  line-height: 1.35;
  margin: 0 0 0.5rem;
  color: var(--lrb-text-primary);
}

.lrb-cart-item-title a {
  color: var(--lrb-text-primary);
  text-decoration: none;
  transition: color var(--lrb-transition-fast);
}

.lrb-cart-item-title a:hover {
  color: var(--lrb-gold);
}

.lrb-col-name dl.variation {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 2px 8px;
  font-size: 0.75rem;
  color: var(--lrb-text-muted);
  margin: 0 0 0.65rem;
  padding: 0;
  border: none;
}

.lrb-col-name dl.variation dt {
  font-weight: 600;
  margin: 0;
}

.lrb-col-name dl.variation dd {
  margin: 0;
}

.lrb-cart-item-perks {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.lrb-perk-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.72rem;
  color: var(--lrb-text-secondary);
  background: #faf8f5;
  padding: 3px 8px;
  border-radius: 3px;
  width: fit-content;
  line-height: 1.3;
}

.lrb-perk-chip svg {
  width: 12px;
  height: 12px;
  color: var(--lrb-gold);
  flex-shrink: 0;
}

.lrb-perk-chip.lrb-perk-qc {
  background: #f7faf8;
  color: #1e8346;
}

.lrb-perk-chip.lrb-perk-qc svg {
  color: #1e8346;
}

/* Price & Subtotal */
.lrb-col-price .lrb-price-val,
.lrb-col-subtotal .lrb-subtotal-val {
  font-family: var(--lrb-font-heading);
  font-size: 1.15rem;
  font-weight: 600;
  color: var(--lrb-text-primary);
}

.lrb-col-subtotal .lrb-subtotal-val {
  color: var(--lrb-text-primary);
}

/* Quantity input in cart */
.lrb-col-qty .quantity {
  margin: 0;
}

.lrb-col-qty .quantity input.qty {
  width: 60px !important;
  height: 42px !important;
  padding: 0 !important;
  text-align: center !important;
  font-family: var(--lrb-font-body) !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  border: 1px solid var(--lrb-border-medium) !important;
  border-radius: 4px !important;
  background: #ffffff !important;
  color: var(--lrb-text-primary) !important;
}

.lrb-col-qty .quantity input.qty:focus {
  border-color: var(--lrb-gold) !important;
  outline: none !important;
}

/* Cart Actions & VIP Coupon Row */
.lrb-cart-actions-row td.actions {
  padding: 2rem 0 0 !important;
  background: transparent !important;
  border: none !important;
}

.lrb-cart-actions-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--lrb-border-subtle);
}

.lrb-coupon-box {
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.lrb-coupon-input-wrap {
  display: flex;
  align-items: center;
  gap: 8px;
}

.lrb-coupon-input {
  width: 220px !important;
  height: 44px !important;
  padding: 0 14px !important;
  border: 1px solid var(--lrb-border-medium) !important;
  border-radius: 3px !important;
  font-family: var(--lrb-font-body) !important;
  font-size: 0.85rem !important;
  background: #ffffff !important;
}

.lrb-coupon-input:focus {
  border-color: var(--lrb-gold) !important;
  outline: none !important;
}

.lrb-btn-coupon {
  height: 44px !important;
  padding: 0 18px !important;
  background: #ffffff !important;
  color: var(--lrb-text-primary) !important;
  border: 1px solid var(--lrb-text-primary) !important;
  border-radius: 3px !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  cursor: pointer !important;
  transition: all var(--lrb-transition-fast) !important;
}

.lrb-btn-coupon:hover {
  background: var(--lrb-text-primary) !important;
  color: #ffffff !important;
}

.lrb-cart-update-group {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}

.lrb-link-continue-shopping {
  font-size: 0.82rem;
  font-weight: 500;
  color: var(--lrb-text-muted);
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color var(--lrb-transition-fast);
}

.lrb-link-continue-shopping:hover {
  color: var(--lrb-text-primary);
}

.lrb-btn-update-cart {
  height: 44px !important;
  padding: 0 20px !important;
  background: var(--lrb-bg-pearl) !important;
  color: var(--lrb-text-primary) !important;
  border: 1px solid var(--lrb-border-medium) !important;
  border-radius: 3px !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  cursor: pointer !important;
  transition: all var(--lrb-transition-fast) !important;
}

.lrb-btn-update-cart:hover {
  background: var(--lrb-text-primary) !important;
  color: #ffffff !important;
  border-color: var(--lrb-text-primary) !important;
}

/* 3-Pillar Promises Grid */
.lrb-cart-promises-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
  margin-top: 3.5rem;
  padding-top: 2rem;
  border-top: 1px solid var(--lrb-border-subtle);
}

@media (max-width: 680px) {
  .lrb-cart-promises-grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}

.lrb-cart-promise-card {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1.25rem;
  background: #fafaf9;
  border: 1px solid #ede8e0;
  border-radius: 6px;
}

.lrb-promise-icon {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #ffffff;
  color: var(--lrb-gold);
  border: 1px solid var(--lrb-gold-border);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.lrb-promise-icon svg {
  width: 16px;
  height: 16px;
}

.lrb-promise-info h5 {
  font-family: var(--lrb-font-body);
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--lrb-text-primary);
  margin: 0 0 0.35rem;
}

.lrb-promise-info p {
  font-size: 0.75rem;
  color: var(--lrb-text-muted);
  line-height: 1.45;
  margin: 0;
}

/* Right Column: Sticky Order Summary Card */
.lrb-cart-col-totals {
  position: sticky;
  top: 100px;
}

.lrb-cart-totals-card {
  width: 100% !important;
  float: none !important;
  background: #faf9f7 !important;
  border: 1px solid #ede4d4 !important;
  border-radius: 8px !important;
  padding: 2rem !important;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.04) !important;
  margin: 0 !important;
}

.lrb-totals-header {
  border-bottom: 1px solid #ebdcc8;
  padding-bottom: 1.25rem;
  margin-bottom: 1.5rem;
}

.lrb-totals-title {
  font-family: var(--lrb-font-heading) !important;
  font-size: 1.45rem !important;
  font-weight: 400 !important;
  color: var(--lrb-text-primary) !important;
  margin: 0 0 0.25rem !important;
  letter-spacing: 0.02em;
}

.lrb-totals-subtitle {
  font-size: 0.75rem;
  color: var(--lrb-text-muted);
  display: block;
}

.lrb-totals-table {
  width: 100% !important;
  border-collapse: collapse !important;
  border: none !important;
  margin: 0 0 1.5rem !important;
}

.lrb-totals-row {
  border-bottom: 1px solid #eee5d8;
}

.lrb-totals-row th,
.lrb-totals-row td {
  padding: 0.9rem 0 !important;
  border: none !important;
  background: transparent !important;
}

.lrb-totals-row th {
  font-size: 0.82rem !important;
  font-weight: 500 !important;
  color: var(--lrb-text-secondary) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  width: 50% !important;
}

.lrb-totals-row td {
  text-align: right !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  color: var(--lrb-text-primary) !important;
}

.lrb-free-shipping-tag,
.lrb-qc-free-tag {
  display: inline-block;
  font-size: 0.72rem;
  font-weight: 600;
  color: #1e8346;
  background: #edf7ee;
  border: 1px solid #c8e6c9;
  padding: 3px 8px;
  border-radius: 3px;
  letter-spacing: 0.03em;
}

.lrb-totals-row.lrb-row-grand-total {
  border-top: 2px solid #e2cfb7 !important;
  border-bottom: none !important;
  padding-top: 1rem !important;
}

.lrb-totals-row.lrb-row-grand-total th {
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  color: var(--lrb-text-primary) !important;
  padding-top: 1.25rem !important;
}

.lrb-totals-row.lrb-row-grand-total td {
  font-family: var(--lrb-font-heading) !important;
  font-size: 1.6rem !important;
  font-weight: 600 !important;
  color: var(--lrb-text-primary) !important;
  padding-top: 1.25rem !important;
}

/* Packaging Tag in Totals */
.lrb-totals-packaging-tag {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.74rem;
  color: var(--lrb-text-secondary);
  background: #ffffff;
  border: 1px dashed var(--lrb-gold-border);
  padding: 8px 12px;
  border-radius: 4px;
  margin-bottom: 1.5rem;
  line-height: 1.35;
}

.lrb-totals-packaging-tag svg {
  width: 14px;
  height: 14px;
  color: var(--lrb-gold);
  flex-shrink: 0;
}

/* Proceed to Checkout Buttons */
.lrb-proceed-to-checkout {
  padding: 0 !important;
  margin-bottom: 1.5rem !important;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.lrb-proceed-to-checkout a.checkout-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  background: var(--lrb-text-primary) !important;
  color: #ffffff !important;
  font-family: var(--lrb-font-body) !important;
  font-size: 0.85rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  padding: 16px 20px !important;
  border-radius: 3px !important;
  text-decoration: none !important;
  transition: all var(--lrb-transition-fast) !important;
  border: 1px solid var(--lrb-text-primary) !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.1) !important;
}

.lrb-proceed-to-checkout a.checkout-button:hover {
  background: var(--lrb-gold) !important;
  border-color: var(--lrb-gold) !important;
  color: #ffffff !important;
  box-shadow: 0 6px 20px rgba(197, 168, 128, 0.35) !important;
}

.lrb-btn-cart-wa {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  gap: 8px !important;
  background: #25d366 !important;
  color: #ffffff !important;
  font-family: var(--lrb-font-body) !important;
  font-size: 0.82rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.05em !important;
  padding: 14px 18px !important;
  border-radius: 3px !important;
  text-decoration: none !important;
  transition: all var(--lrb-transition-fast) !important;
  border: 1px solid #25d366 !important;
}

.lrb-btn-cart-wa svg {
  width: 16px;
  height: 16px;
}

.lrb-btn-cart-wa:hover {
  background: #1ebd5a !important;
  border-color: #1ebd5a !important;
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(37, 211, 102, 0.3) !important;
}

/* Trust Badges Footer */
.lrb-totals-trust-footer {
  border-top: 1px solid #ebdcc8;
  padding-top: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

.lrb-trust-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.72rem;
  color: var(--lrb-text-secondary);
  letter-spacing: 0.02em;
}

.lrb-trust-item svg {
  width: 14px;
  height: 14px;
  color: var(--lrb-gold);
  flex-shrink: 0;
}

/* Ultra-Luxury Empty Cart Canvas */
.lrb-cart-empty-canvas {
  padding: 4rem 1rem 6rem;
  display: flex;
  justify-content: center;
}

.lrb-cart-empty-card {
  max-width: 740px;
  width: 100%;
  background: #ffffff;
  border: 1px solid var(--lrb-border-subtle);
  border-radius: 8px;
  padding: 4rem 3rem;
  text-align: center;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.03);
  display: flex;
  flex-direction: column;
  align-items: center;
}

.lrb-empty-icon-circle {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: #faf8f5;
  border: 1px solid var(--lrb-gold-border);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--lrb-gold);
  margin-bottom: 1.75rem;
  box-shadow: 0 4px 18px rgba(197, 168, 128, 0.15);
}

.lrb-empty-icon-circle svg {
  width: 36px;
  height: 36px;
}

.lrb-empty-eyebrow {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: var(--lrb-gold);
  font-weight: 600;
  display: block;
  margin-bottom: 0.5rem;
}

.lrb-empty-heading {
  font-family: var(--lrb-font-heading);
  font-size: 1.85rem;
  font-weight: 400;
  color: var(--lrb-text-primary);
  margin: 0 0 1rem;
}

.lrb-empty-description {
  font-size: 0.9rem;
  color: var(--lrb-text-muted);
  line-height: 1.65;
  max-width: 520px;
  margin: 0 auto 2.25rem;
}

.lrb-empty-actions a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: var(--lrb-text-primary) !important;
  color: #ffffff !important;
  padding: 16px 36px !important;
  font-size: 0.85rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  border-radius: 3px !important;
  text-decoration: none !important;
  transition: all var(--lrb-transition-fast) !important;
}

.lrb-empty-actions a svg {
  width: 14px;
  height: 14px;
  transition: transform var(--lrb-transition-fast);
}

.lrb-empty-actions a:hover {
  background: var(--lrb-gold) !important;
  box-shadow: 0 6px 20px rgba(197, 168, 128, 0.35) !important;
}

.lrb-empty-actions a:hover svg {
  transform: translateX(4px);
}

/* Quick Collections in Empty Bag */
.lrb-empty-quick-collections {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid var(--lrb-border-subtle);
  width: 100%;
}

.lrb-quick-collections-title {
  display: block;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--lrb-text-muted);
  margin-bottom: 1rem;
}

.lrb-empty-pills {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}

.lrb-empty-pill {
  font-size: 0.78rem;
  padding: 6px 14px;
  background: var(--lrb-bg-pearl);
  border: 1px solid #e5e5e5;
  border-radius: 20px;
  color: var(--lrb-text-secondary);
  text-decoration: none;
  transition: all var(--lrb-transition-fast);
}

.lrb-empty-pill:hover {
  background: var(--lrb-text-primary);
  color: #ffffff;
  border-color: var(--lrb-text-primary);
}

/* Bespoke Sourcing Concierge Box in Empty Bag */
.lrb-empty-concierge-card {
  margin-top: 2.25rem;
  background: #fafaf9;
  border: 1px dashed var(--lrb-gold-border);
  border-radius: 6px;
  padding: 1.5rem 2rem;
  width: 100%;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  text-align: left;
}

.lrb-concierge-icon {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #25d366;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 4px 12px rgba(37, 211, 102, 0.25);
}

.lrb-concierge-icon svg {
  width: 22px;
  height: 22px;
}

.lrb-concierge-body h5 {
  font-family: var(--lrb-font-body);
  font-size: 0.92rem;
  font-weight: 600;
  color: var(--lrb-text-primary);
  margin: 0 0 0.35rem;
}

.lrb-concierge-body p {
  font-size: 0.8rem;
  color: var(--lrb-text-secondary);
  line-height: 1.45;
  margin: 0 0 0.65rem;
}

.lrb-concierge-link {
  font-size: 0.8rem;
  font-weight: 600;
  color: #1e8346;
  text-decoration: none;
  transition: color var(--lrb-transition-fast);
}

.lrb-concierge-link:hover {
  color: #145a30;
  text-decoration: underline;
}

@media (max-width: 650px) {
  .lrb-empty-concierge-card {
    flex-direction: column;
    text-align: center;
    padding: 1.5rem;
  }
}

/* Mobile responsive cart table */
@media (max-width: 768px) {
  .lrb-cart-table thead {
    display: none;
  }

  .lrb-cart-item-row {
    display: grid;
    grid-template-columns: 80px 1fr;
    grid-template-areas: 
      "thumb name"
      "thumb price"
      "qty subtotal"
      "remove remove";
    gap: 0.75rem;
    padding: 1.25rem 0;
  }

  .lrb-col-remove {
    grid-area: remove;
    width: 100%;
    text-align: left;
    padding: 0.5rem 0 0;
  }

  .lrb-col-thumb {
    grid-area: thumb;
    width: 80px;
    padding: 0 !important;
  }

  .lrb-cart-thumb-box {
    width: 80px;
    height: 80px;
  }

  .lrb-col-name {
    grid-area: name;
    padding: 0 !important;
  }

  .lrb-col-price {
    grid-area: price;
    padding: 0 !important;
  }

  .lrb-col-qty {
    grid-area: qty;
    padding: 0 !important;
  }

  .lrb-col-subtotal {
    grid-area: subtotal;
    padding: 0 !important;
    text-align: right;
  }

  .lrb-cart-actions-wrapper {
    flex-direction: column;
    align-items: stretch;
  }

  .lrb-coupon-input-wrap {
    flex-direction: column;
    align-items: stretch;
  }

  .lrb-coupon-input {
    width: 100% !important;
  }

  .lrb-cart-update-group {
    flex-direction: column;
    align-items: stretch;
  }
}

/* ==========================================================================
   10. Ultra-Luxury Atelier Checkout Page Architecture
   ========================================================================== */

/* Checkout Page Header (Clean & Centered) */
.lrb-checkout-page-header {
  background: #ffffff;
  border-bottom: 1px solid var(--lrb-border-subtle);
  padding: 2.75rem 0 2rem;
  text-align: center;
}

.lrb-checkout-header-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.lrb-checkout-crumbs {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.5rem !important;
  margin: 0 0 0.85rem !important;
  font-size: 0.8rem !important;
}

.lrb-checkout-main-title {
  font-family: var(--lrb-font-heading);
  font-size: 2.2rem;
  font-weight: 400;
  color: var(--lrb-text-primary);
  margin: 0 0 0.75rem;
  letter-spacing: 0.02em;
}

.lrb-checkout-badge-wrap {
  margin-bottom: 1.5rem;
}

.lrb-checkout-secure-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: var(--lrb-gold);
  background: var(--lrb-gold-light);
  border: 1px solid var(--lrb-gold-border);
  padding: 5px 14px;
  border-radius: 20px;
}

.lrb-checkout-secure-tag svg {
  width: 14px;
  height: 14px;
}

/* Centered Steps Progress Bar */
.lrb-checkout-steps-bar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
  padding-top: 1.25rem;
  border-top: 1px solid #f2f2f2;
  width: 100%;
  max-width: 580px;
}

.lrb-step-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  opacity: 0.45;
  transition: opacity var(--lrb-transition-fast);
}

.lrb-step-item.is-active {
  opacity: 1;
}

.lrb-step-item.is-completed {
  opacity: 0.85;
}

.lrb-step-number {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #f0f0f0;
  color: #555;
  font-size: 0.72rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
}

.lrb-step-item.is-completed .lrb-step-number {
  background: #2e7d32;
  color: #ffffff;
}

.lrb-step-item.is-completed .lrb-step-number svg {
  width: 12px;
  height: 12px;
}

.lrb-step-item.is-completed a {
  color: var(--lrb-text-primary);
  text-decoration: none;
}

.lrb-step-item.is-active .lrb-step-number {
  background: var(--lrb-text-primary);
  color: #ffffff;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}

.lrb-step-text {
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--lrb-text-primary);
}

.lrb-step-divider {
  flex: 0 0 40px;
  height: 1px;
  background: #e0e0e0;
}

.lrb-step-divider.is-active {
  background: #2e7d32;
}

@media (max-width: 600px) {
  .lrb-checkout-steps-bar {
    display: none;
  }
}

/* Checkout Page Container */
.lrb-checkout-page-body {
  padding: 2.5rem 0 5rem;
  background: #ffffff;
}

.lrb-checkout-container {
  max-width: 1220px !important;
  margin: 0 auto;
}

/* Coupon Notice Bar Override (Replace default ugly blue box) */
.woocommerce-checkout .woocommerce-info {
  background: #ffffff !important;
  border: 1px solid var(--lrb-border-light) !important;
  border-left: 3px solid var(--lrb-gold) !important;
  color: var(--lrb-text-secondary) !important;
  border-radius: 4px !important;
  padding: 12px 18px !important;
  font-family: var(--lrb-font-body) !important;
  font-size: 0.85rem !important;
  margin-bottom: 2rem !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.02) !important;
}

.woocommerce-checkout .woocommerce-info::before {
  display: none !important;
}

.woocommerce-checkout .woocommerce-info a.showcoupon {
  color: var(--lrb-text-primary) !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  transition: color var(--lrb-transition-fast) !important;
}

.woocommerce-checkout .woocommerce-info a.showcoupon:hover {
  color: var(--lrb-gold) !important;
}

.woocommerce-checkout form.checkout_coupon {
  background: #fafaf9 !important;
  border: 1px solid var(--lrb-border-light) !important;
  border-radius: 6px !important;
  padding: 1.25rem 1.5rem !important;
  margin-bottom: 2rem !important;
  display: flex !important;
  gap: 10px !important;
  align-items: center !important;
  flex-wrap: wrap !important;
}

.woocommerce-checkout form.checkout_coupon .input-text {
  flex: 1 !important;
  max-width: 280px !important;
  height: 44px !important;
  padding: 0 14px !important;
  border: 1px solid var(--lrb-border-medium) !important;
  border-radius: 4px !important;
}

.woocommerce-checkout form.checkout_coupon button.button {
  height: 44px !important;
  padding: 0 20px !important;
  background: var(--lrb-text-primary) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 3px !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
}

/* Single Top Reassurance Strip */
.lrb-checkout-top-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #fdfcf9;
  border: 1px solid #ede5d8;
  border-radius: 6px;
  padding: 0.9rem 1.4rem;
  margin-bottom: 2.25rem;
  gap: 1rem;
}

.lrb-top-strip-left {
  display: flex;
  align-items: center;
  gap: 10px;
}

.lrb-strip-icon {
  color: var(--lrb-gold);
  display: flex;
  align-items: center;
}

.lrb-strip-icon svg {
  width: 18px;
  height: 18px;
}

.lrb-strip-text strong {
  font-size: 0.82rem;
  color: var(--lrb-text-primary);
  font-weight: 600;
}

.lrb-strip-sub {
  font-size: 0.78rem;
  color: var(--lrb-text-secondary);
}

.lrb-strip-wa-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.76rem;
  font-weight: 600;
  color: #1e8346;
  text-decoration: none;
  background: #edf7ee;
  padding: 5px 12px;
  border-radius: 20px;
  border: 1px solid #c8e6c9;
  white-space: nowrap;
  transition: all var(--lrb-transition-fast);
}

.lrb-strip-wa-link svg {
  width: 14px;
  height: 14px;
}

.lrb-strip-wa-link:hover {
  background: #25d366;
  color: #ffffff;
  border-color: #25d366;
}

@media (max-width: 768px) {
  .lrb-checkout-top-strip {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* 2-Column Split Checkout Grid */
.lrb-checkout-main-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 460px;
  gap: 3rem;
  align-items: start;
}

@media (max-width: 1140px) {
  .lrb-checkout-main-grid {
    grid-template-columns: minmax(0, 1fr) 410px;
    gap: 2rem;
  }
}

@media (max-width: 920px) {
  .lrb-checkout-main-grid {
    grid-template-columns: 1fr;
    gap: 2.25rem;
  }
}

/* Left Column: Customer Form Fields (Fixing the double-column squeeze) */
.lrb-checkout-col-fields {
  min-width: 0;
}

/* Remove WooCommerce float on col-1 and col-2 so fields span full width of left column */
.woocommerce-checkout .col2-set,
.woocommerce-checkout #customer_details {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
}

.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2,
.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2 {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.woocommerce-checkout .col2-set .col-2 {
  margin-top: 2rem !important;
  padding-top: 1.75rem !important;
  border-top: 1px solid var(--lrb-border-subtle) !important;
}

/* Section Headers */
.lrb-checkout-section-header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 1.5rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid var(--lrb-border-subtle);
}

.lrb-sec-number {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--lrb-text-primary);
  color: #ffffff;
  font-size: 0.72rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
}

.lrb-sec-title {
  font-family: var(--lrb-font-heading) !important;
  font-size: 1.35rem !important;
  font-weight: 400 !important;
  color: var(--lrb-text-primary) !important;
  margin: 0 !important;
  letter-spacing: 0.02em;
}

.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
.woocommerce-additional-fields h3 {
  display: none !important; /* replaced by custom .lrb-checkout-section-header */
}

/* Form row layout */
.woocommerce-checkout .form-row {
  margin-bottom: 1.15rem !important;
  padding: 0 !important;
}

.woocommerce-checkout .form-row-first,
.woocommerce-checkout .form-row-last {
  width: 48.5% !important;
  float: left !important;
}

.woocommerce-checkout .form-row-last {
  float: right !important;
}

.woocommerce-checkout .form-row-wide {
  width: 100% !important;
  clear: both !important;
}

@media (max-width: 580px) {
  .woocommerce-checkout .form-row-first,
  .woocommerce-checkout .form-row-last {
    width: 100% !important;
    float: none !important;
  }
}

.woocommerce-checkout .form-row label {
  display: block;
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--lrb-text-primary);
  margin-bottom: 0.4rem;
  letter-spacing: 0.02em;
}

.woocommerce-checkout .form-row label .required {
  color: var(--lrb-gold);
  text-decoration: none;
}

.woocommerce-checkout .form-row .input-text,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea {
  width: 100% !important;
  background: #ffffff !important;
  border: 1px solid #d4d4d4 !important;
  border-radius: 4px !important;
  padding: 12px 14px !important;
  font-family: var(--lrb-font-body) !important;
  font-size: 0.9rem !important;
  color: var(--lrb-text-primary) !important;
  transition: all var(--lrb-transition-fast) !important;
  box-shadow: none !important;
  height: auto !important;
}

.woocommerce-checkout .form-row .input-text:focus,
.woocommerce-checkout .form-row select:focus,
.woocommerce-checkout .form-row textarea:focus {
  border-color: var(--lrb-gold) !important;
  outline: none !important;
  box-shadow: 0 0 0 1px var(--lrb-gold) !important;
}

.woocommerce-checkout .form-row textarea {
  min-height: 80px;
  resize: vertical;
}

/* Right Column: Sticky Order Review Card */
.lrb-checkout-col-review {
  position: sticky;
  top: 90px;
  min-width: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.lrb-checkout-sticky-review {
  background: #faf9f7;
  border: 1px solid #ebdcc8;
  border-radius: 10px;
  padding: 1.5rem 1.4rem;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.03);
  box-sizing: border-box !important;
  max-width: 100% !important;
  width: 100% !important;
  overflow: hidden !important;
}

#order_review,
.lrb-checkout-review-card {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.lrb-review-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #ebdcc8;
  padding-bottom: 1rem;
  margin-bottom: 1.25rem;
}

.lrb-review-title {
  font-family: var(--lrb-font-heading) !important;
  font-size: 1.35rem !important;
  font-weight: 400 !important;
  color: var(--lrb-text-primary) !important;
  margin: 0 !important;
  letter-spacing: 0.02em;
}

.lrb-review-count {
  font-size: 0.72rem;
  font-weight: 600;
  color: var(--lrb-gold);
  background: var(--lrb-gold-light);
  border: 1px solid var(--lrb-gold-border);
  padding: 3px 10px;
  border-radius: 12px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

/* Order Review Table Architecture (Clean atelier receipt card) */
.woocommerce-checkout table.shop_table.lrb-checkout-review-table,
.woocommerce-checkout #order_review table.shop_table {
  width: 100% !important;
  max-width: 100% !important;
  table-layout: fixed !important;
  box-sizing: border-box !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border: 1px solid #ebdcc8 !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  overflow: hidden !important;
  margin: 0 0 1.25rem !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.02) !important;
}

/* Give explicit column widths in thead for table-layout: fixed while keeping header collapsed */
.woocommerce-checkout table.shop_table.lrb-checkout-review-table thead,
.woocommerce-checkout #order_review table.shop_table thead {
  display: table-header-group !important;
  visibility: collapse !important;
  height: 0 !important;
  line-height: 0 !important;
}

.woocommerce-checkout table.shop_table.lrb-checkout-review-table thead th,
.woocommerce-checkout #order_review table.shop_table thead th {
  padding: 0 !important;
  height: 0 !important;
  line-height: 0 !important;
  border: none !important;
  visibility: collapse !important;
  font-size: 0 !important;
}

.woocommerce-checkout table.shop_table.lrb-checkout-review-table thead th.product-name,
.woocommerce-checkout #order_review table.shop_table thead th.product-name {
  width: 58% !important;
}

.woocommerce-checkout table.shop_table.lrb-checkout-review-table thead th.product-total,
.woocommerce-checkout #order_review table.shop_table thead th.product-total {
  width: 42% !important;
}

/* Product row inside shop_table */
.woocommerce-checkout table.shop_table tbody td.lrb-review-product-cell,
.woocommerce-checkout #order_review table.shop_table tbody td {
  padding: 14px 14px !important;
  border-bottom: 1px solid #f0ece5 !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
  max-width: 100% !important;
  width: 100% !important;
  overflow: hidden !important;
}

.lrb-review-item-flex {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
}

.lrb-review-thumb-box {
  position: relative !important;
  width: 60px !important;
  height: 60px !important;
  background: #ffffff !important;
  border: 1px solid #ebdcc8 !important;
  border-radius: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 3px !important;
  flex-shrink: 0 !important;
  box-sizing: border-box !important;
}

.lrb-review-thumb-box img {
  max-width: 100% !important;
  max-height: 100% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  margin: 0 !important;
  border-radius: 4px;
}

.lrb-review-qty-bubble {
  position: absolute;
  top: -6px;
  right: -6px;
  background: #111111;
  color: #ffffff;
  font-size: 0.65rem;
  font-weight: 700;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
  border: 2px solid #ffffff;
  z-index: 2;
}

.lrb-review-details {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.lrb-review-meta-row {
  display: flex;
  align-items: center;
  gap: 5px;
  margin-bottom: 3px;
  line-height: 1;
  flex-wrap: wrap;
}

.lrb-review-brand {
  font-size: 0.66rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--lrb-gold);
  white-space: nowrap;
}

.lrb-review-dot {
  color: #c5a880;
  font-size: 0.65rem;
}

.lrb-review-tier {
  font-size: 0.6rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  background: #f4efe9;
  color: #6a573d;
  padding: 2px 5px;
  border-radius: 3px;
  white-space: nowrap;
}

.lrb-review-title {
  font-family: var(--lrb-font-heading) !important;
  font-size: 0.98rem !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  margin: 0 0 4px !important;
  color: var(--lrb-text-primary) !important;
  white-space: normal !important;
  word-break: break-word !important;
  overflow-wrap: break-word !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.lrb-review-qc-tag {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 0.66rem;
  font-weight: 500;
  color: #1e8346;
  margin-top: 2px;
}

.lrb-review-qc-tag svg {
  width: 11px;
  height: 11px;
}

.lrb-review-price-col {
  font-family: var(--lrb-font-heading) !important;
  font-size: 1.15rem !important;
  font-weight: 500 !important;
  color: var(--lrb-text-primary) !important;
  white-space: nowrap !important;
  text-align: right !important;
  margin-left: auto !important;
  padding-left: 10px !important;
  flex-shrink: 0 !important;
}

/* Totals Rows in shop_table footer */
.woocommerce-checkout table.shop_table tfoot tr.lrb-totals-row,
.woocommerce-checkout table.shop_table tfoot tr {
  border-bottom: 1px solid #f2eee8 !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  background: #ffffff !important;
}

.woocommerce-checkout table.shop_table tfoot th,
.woocommerce-checkout #order_review table.shop_table tfoot th {
  padding: 12px 14px !important;
  font-family: var(--lrb-font-body) !important;
  font-size: 0.82rem !important;
  font-weight: 500 !important;
  color: #555555 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  text-align: left !important;
  border: none !important;
  background: #ffffff !important;
  vertical-align: middle !important;
  width: 58% !important;
  max-width: 58% !important;
  box-sizing: border-box !important;
  word-break: break-word !important;
  overflow-wrap: break-word !important;
}

.woocommerce-checkout table.shop_table tfoot td,
.woocommerce-checkout #order_review table.shop_table tfoot td {
  padding: 12px 14px !important;
  font-family: var(--lrb-font-body) !important;
  font-size: 0.92rem !important;
  font-weight: 600 !important;
  color: var(--lrb-text-primary) !important;
  text-align: right !important;
  border: none !important;
  background: #ffffff !important;
  vertical-align: middle !important;
  width: 42% !important;
  max-width: 42% !important;
  box-sizing: border-box !important;
  word-break: break-word !important;
}

/* Reset any nested table / shipping method artifacts */
.woocommerce-checkout table.shop_table #shipping_method,
.woocommerce-checkout #shipping_method {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.woocommerce-checkout table.shop_table #shipping_method li {
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 6px !important;
}

.woocommerce-checkout table.shop_table .woocommerce-shipping-destination {
  display: none !important;
}

.lrb-free-shipping-tag,
.lrb-qc-free-tag {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  font-size: 0.68rem !important;
  font-weight: 600 !important;
  padding: 3px 8px !important;
  border-radius: 4px !important;
  letter-spacing: 0.02em !important;
  white-space: normal !important;
  text-align: right !important;
  line-height: 1.25 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.lrb-free-shipping-tag {
  color: #1e8346 !important;
  background: #edf7ee !important;
  border: 1px solid #c8e6c9 !important;
}

.lrb-free-shipping-tag svg,
.lrb-qc-free-tag svg {
  width: 12px !important;
  height: 12px !important;
}

.lrb-qc-free-tag {
  color: #9c7a42 !important;
  background: #fbf7f0 !important;
  border: 1px solid #ebdcc8 !important;
}

/* Grand Total Row (Highlighted bottom of table) */
.woocommerce-checkout table.shop_table tfoot tr.order-total,
.woocommerce-checkout #order_review table.shop_table tfoot tr.order-total {
  background: #faf8f5 !important;
  border-top: 1px solid #ebdcc8 !important;
  border-bottom: none !important;
}

.woocommerce-checkout table.shop_table tfoot tr.order-total th,
.woocommerce-checkout #order_review table.shop_table tfoot tr.order-total th {
  background: #faf8f5 !important;
  padding: 14px 14px !important;
  border: none !important;
  width: 58% !important;
  max-width: 58% !important;
  box-sizing: border-box !important;
}

.lrb-grand-total-label {
  display: block;
  font-family: var(--lrb-font-heading);
  font-size: 1.1rem;
  font-weight: 500;
  color: var(--lrb-text-primary);
  letter-spacing: 0.02em;
  text-transform: none;
}

.lrb-grand-total-sub {
  display: block;
  font-size: 0.66rem;
  font-weight: 400;
  color: #888888;
  letter-spacing: 0;
  text-transform: none;
  margin-top: 2px;
  line-height: 1.3;
}

.woocommerce-checkout table.shop_table tfoot tr.order-total td,
.woocommerce-checkout #order_review table.shop_table tfoot tr.order-total td {
  background: #faf8f5 !important;
  font-family: var(--lrb-font-heading) !important;
  font-size: 1.45rem !important;
  font-weight: 500 !important;
  color: var(--lrb-text-primary) !important;
  padding: 14px 14px !important;
  letter-spacing: 0.02em !important;
  border: none !important;
  width: 42% !important;
  max-width: 42% !important;
  box-sizing: border-box !important;
  text-align: right !important;
}

/* Packaging Note (Single instance below table) */
.lrb-checkout-packaging-note {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.74rem;
  color: var(--lrb-text-secondary);
  background: #ffffff;
  border: 1px dashed var(--lrb-gold-border);
  padding: 8px 12px;
  border-radius: 4px;
  margin: 1.25rem 0;
  line-height: 1.35;
}

.lrb-checkout-packaging-note svg {
  width: 14px;
  height: 14px;
  color: var(--lrb-gold);
  flex-shrink: 0;
}

/* Payment Gateway Accordion in Checkout */
.woocommerce-checkout #payment {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin-top: 1.25rem !important;
}

.woocommerce-checkout #payment ul.payment_methods {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 1.25rem !important;
  border: none !important;
}

.woocommerce-checkout #payment ul.payment_methods li {
  background: #ffffff !important;
  border: 1px solid #ede4d4 !important;
  border-radius: 6px !important;
  padding: 12px 14px !important;
  margin-bottom: 8px !important;
  transition: all var(--lrb-transition-fast) !important;
}

.woocommerce-checkout #payment ul.payment_methods li:hover {
  border-color: var(--lrb-gold) !important;
}

.woocommerce-checkout #payment ul.payment_methods li input[type="radio"] {
  accent-color: #111111;
  margin-right: 8px;
}

.woocommerce-checkout #payment ul.payment_methods li label {
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  color: var(--lrb-text-primary) !important;
  cursor: pointer !important;
}

.woocommerce-checkout #payment div.payment_box {
  background: #fafaf9 !important;
  border: 1px solid #eee8df !important;
  border-radius: 4px !important;
  padding: 10px 12px !important;
  font-size: 0.78rem !important;
  color: var(--lrb-text-secondary) !important;
  line-height: 1.45 !important;
  margin-top: 8px !important;
}

.woocommerce-checkout #payment div.payment_box::before {
  display: none !important;
}

/* Place Order Button */
.woocommerce-checkout #place_order {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  background: var(--lrb-text-primary) !important;
  color: #ffffff !important;
  font-family: var(--lrb-font-body) !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  padding: 18px 24px !important;
  border-radius: 3px !important;
  cursor: pointer !important;
  transition: all var(--lrb-transition-fast) !important;
  border: 1px solid var(--lrb-text-primary) !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12) !important;
  margin-top: 1rem !important;
}

.woocommerce-checkout #place_order:hover {
  background: var(--lrb-gold) !important;
  border-color: var(--lrb-gold) !important;
  box-shadow: 0 6px 22px rgba(197, 168, 128, 0.4) !important;
}

/* Privacy & Stealth Statement Note */
.lrb-checkout-privacy-note {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  background: #ffffff;
  border: 1px solid #eee5d8;
  border-radius: 6px;
  padding: 1rem 1.25rem;
  margin-top: 1.5rem;
}

.lrb-privacy-lock-icon {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #fdfbf7;
  color: var(--lrb-gold);
  border: 1px solid var(--lrb-gold-border);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.lrb-privacy-lock-icon svg {
  width: 15px;
  height: 15px;
}

.lrb-privacy-lock-text strong {
  display: block;
  font-size: 0.78rem;
  font-weight: 600;
  color: var(--lrb-text-primary);
  margin-bottom: 2px;
}

.lrb-privacy-lock-text p {
  font-size: 0.72rem;
  color: var(--lrb-text-secondary);
  line-height: 1.4;
  margin: 0;
}

/* 3 Security Pillars in Review Sidebar */
.lrb-checkout-trust-pillars {
  border-top: 1px solid #ebdcc8;
  padding-top: 1.25rem;
  margin-top: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

.lrb-trust-pillar {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.72rem;
  color: var(--lrb-text-secondary);
  letter-spacing: 0.02em;
}

.lrb-trust-pillar svg {
  width: 14px;
  height: 14px;
  color: var(--lrb-gold);
  flex-shrink: 0;
}

/* ==========================================================================
   Checkout Responsive Optimization (Tablets, Mobile & Micro-Screens)
   ========================================================================== */

/* 1. Medium Tablets & Laptops (max-width: 920px) */
@media (max-width: 920px) {
  .lrb-checkout-main-grid {
    grid-template-columns: 1fr !important;
    gap: 2.25rem !important;
  }

  .lrb-checkout-col-review {
    position: static !important;
    top: auto !important;
    max-width: 100% !important;
    width: 100% !important;
    margin-top: 0 !important;
  }

  .lrb-checkout-sticky-review {
    position: static !important;
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* 2. Tablets & Mobile Devices (max-width: 768px) */
@media (max-width: 768px) {
  /* Page Header & Container */
  .lrb-checkout-page-header {
    padding: 1.5rem 1rem 1.25rem !important;
  }

  .lrb-checkout-crumbs {
    font-size: 0.75rem !important;
    gap: 0.35rem !important;
    margin-bottom: 0.5rem !important;
    flex-wrap: wrap !important;
  }

  .lrb-checkout-main-title {
    font-size: clamp(1.4rem, 5.5vw, 1.85rem) !important;
    margin-bottom: 0.5rem !important;
    line-height: 1.25 !important;
  }

  .lrb-checkout-badge-wrap {
    margin-bottom: 1rem !important;
  }

  .lrb-checkout-secure-tag {
    font-size: 0.7rem !important;
    padding: 4px 10px !important;
    letter-spacing: 0.02em !important;
    white-space: normal !important;
    text-align: center !important;
    line-height: 1.3 !important;
  }

  .lrb-checkout-steps-bar {
    display: none !important; /* Hide steps progression on mobile for clean screen real estate */
  }

  .lrb-checkout-page-body {
    padding: 1.25rem 0 3.5rem !important;
  }

  .lrb-checkout-container {
    padding: 0 1rem !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Coupon Notice & Form */
  .woocommerce-checkout .woocommerce-info {
    font-size: 0.8rem !important;
    padding: 10px 14px !important;
    margin-bottom: 1.25rem !important;
    flex-wrap: wrap !important;
    line-height: 1.4 !important;
  }

  .woocommerce-checkout form.checkout_coupon {
    padding: 1rem !important;
    margin-bottom: 1.5rem !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0.75rem !important;
  }

  .woocommerce-checkout form.checkout_coupon .input-text {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 48px !important;
    font-size: 16px !important; /* Prevents iOS Safari auto-zoom */
    box-sizing: border-box !important;
  }

  .woocommerce-checkout form.checkout_coupon button.button {
    width: 100% !important;
    min-height: 48px !important;
    font-size: 0.82rem !important;
  }

  /* Reassurance Strip */
  .lrb-checkout-top-strip {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0.85rem !important;
    padding: 0.9rem 1rem !important;
    margin-bottom: 1.75rem !important;
  }

  .lrb-top-strip-left {
    align-items: flex-start !important;
    gap: 8px !important;
  }

  .lrb-strip-icon svg {
    width: 16px !important;
    height: 16px !important;
    margin-top: 2px !important;
  }

  .lrb-strip-text strong {
    font-size: 0.78rem !important;
    display: block !important;
    line-height: 1.3 !important;
  }

  .lrb-strip-sub {
    font-size: 0.72rem !important;
    display: block !important;
    margin-top: 2px !important;
    line-height: 1.3 !important;
  }

  .lrb-strip-wa-link {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 8px 12px !important;
    font-size: 0.78rem !important;
    box-sizing: border-box !important;
  }

  /* Customer Details Form Rows */
  .lrb-checkout-section-header {
    margin-bottom: 1.25rem !important;
    padding-bottom: 0.6rem !important;
  }

  .lrb-sec-number {
    width: 22px !important;
    height: 22px !important;
    font-size: 0.68rem !important;
  }

  .lrb-sec-title {
    font-size: 1.15rem !important;
  }

  .woocommerce-checkout .form-row-first,
  .woocommerce-checkout .form-row-last {
    width: 100% !important;
    float: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .woocommerce-checkout .form-row {
    margin-bottom: 1rem !important;
  }

  .woocommerce-checkout .form-row label {
    font-size: 0.82rem !important;
    margin-bottom: 0.35rem !important;
  }

  /* Form Inputs (16px to prevent iOS Safari auto-zoom) */
  .woocommerce-checkout .form-row .input-text,
  .woocommerce-checkout .form-row select,
  .woocommerce-checkout .form-row textarea {
    font-size: 16px !important;
    min-height: 48px !important;
    padding: 12px 14px !important;
    border-radius: 4px !important;
    box-sizing: border-box !important;
  }

  .woocommerce-checkout .form-row textarea {
    min-height: 90px !important;
  }

  /* Select2 Mobile Polish */
  .woocommerce-checkout .select2-container {
    width: 100% !important;
    max-width: 100% !important;
  }

  .woocommerce-checkout .select2-container .select2-selection--single {
    height: 48px !important;
    min-height: 48px !important;
    line-height: 48px !important;
    border: 1px solid #d4d4d4 !important;
    border-radius: 4px !important;
    display: flex !important;
    align-items: center !important;
  }

  .woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 48px !important;
    padding-left: 14px !important;
    padding-right: 32px !important;
    color: var(--lrb-text-primary) !important;
    font-size: 16px !important;
  }

  .woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 46px !important;
    right: 10px !important;
  }

  .woocommerce-checkout .select2-dropdown {
    font-size: 15px !important;
    border-color: var(--lrb-gold) !important;
  }

  .woocommerce-checkout .select2-search--dropdown .select2-search__field {
    font-size: 16px !important;
    min-height: 42px !important;
    padding: 8px 12px !important;
  }

  /* Checkboxes & Labels */
  .woocommerce-checkout .woocommerce-form__label-for-checkbox,
  .woocommerce-checkout #ship-to-different-address label,
  .woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    font-size: 0.82rem !important;
    line-height: 1.4 !important;
  }

  .woocommerce-checkout input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    margin-top: 2px !important;
    accent-color: var(--lrb-text-primary) !important;
    flex-shrink: 0 !important;
  }

  /* Sticky Order Review Card on Mobile */
  .lrb-checkout-sticky-review {
    padding: 1.25rem 1rem !important;
    border-radius: 8px !important;
    box-sizing: border-box !important;
  }

  .lrb-review-header {
    padding-bottom: 0.85rem !important;
    margin-bottom: 1rem !important;
  }

  .lrb-review-title {
    font-size: 1.15rem !important;
  }

  .lrb-review-count {
    font-size: 0.68rem !important;
    padding: 2px 8px !important;
  }

  /* Order Review Table */
  .woocommerce-checkout table.shop_table.lrb-checkout-review-table,
  .woocommerce-checkout #order_review table.shop_table {
    border-radius: 6px !important;
    margin-bottom: 1rem !important;
  }

  .woocommerce-checkout table.shop_table tbody td.lrb-review-product-cell,
  .woocommerce-checkout #order_review table.shop_table tbody td {
    padding: 14px 10px !important;
  }

  .lrb-review-item-flex {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    width: 100% !important;
  }

  .lrb-review-thumb-box {
    width: 58px !important;
    height: 58px !important;
    border-radius: 6px !important;
    flex-shrink: 0 !important;
    padding: 3px !important;
  }

  .lrb-review-qty-bubble {
    width: 18px !important;
    height: 18px !important;
    font-size: 0.65rem !important;
    top: -6px !important;
    right: -6px !important;
  }

  .lrb-review-details {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  .lrb-review-meta-row {
    gap: 4px !important;
    margin-bottom: 2px !important;
  }

  .lrb-review-brand {
    font-size: 0.64rem !important;
  }

  .lrb-review-tier {
    font-size: 0.58rem !important;
    padding: 1px 5px !important;
  }

  .lrb-review-title {
    font-size: 0.92rem !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    word-break: break-word !important;
    line-height: 1.35 !important;
    margin: 0 0 4px !important;
  }

  .lrb-review-qc-tag {
    font-size: 0.65rem !important;
    margin-top: 2px !important;
  }

  .lrb-review-qc-tag svg {
    width: 11px !important;
    height: 11px !important;
  }

  .lrb-review-price-col {
    font-size: 1.05rem !important;
    white-space: nowrap !important;
    padding-left: 8px !important;
    align-self: flex-start !important;
    margin-top: 2px !important;
  }

  /* Table Totals Rows */
  .woocommerce-checkout table.shop_table tfoot th,
  .woocommerce-checkout #order_review table.shop_table tfoot th {
    padding: 11px 12px !important;
    font-size: 0.78rem !important;
  }

  .woocommerce-checkout table.shop_table tfoot td,
  .woocommerce-checkout #order_review table.shop_table tfoot td {
    padding: 11px 12px !important;
    font-size: 0.88rem !important;
  }

  .lrb-free-shipping-tag,
  .lrb-qc-free-tag {
    font-size: 0.66rem !important;
    padding: 3px 8px !important;
    white-space: normal !important;
    text-align: right !important;
    display: inline-flex !important;
  }

  /* Grand Total Row */
  .woocommerce-checkout table.shop_table tfoot tr.order-total th,
  .woocommerce-checkout #order_review table.shop_table tfoot tr.order-total th {
    padding: 14px 12px !important;
  }

  .woocommerce-checkout table.shop_table tfoot tr.order-total td,
  .woocommerce-checkout #order_review table.shop_table tfoot tr.order-total td {
    padding: 14px 12px !important;
    font-size: 1.35rem !important;
  }

  .lrb-grand-total-label {
    font-size: 1rem !important;
  }

  .lrb-grand-total-sub {
    font-size: 0.62rem !important;
  }

  /* Packaging Note */
  .lrb-checkout-packaging-note {
    font-size: 0.72rem !important;
    padding: 8px 10px !important;
    margin: 1rem 0 !important;
    gap: 6px !important;
  }

  /* Payment Gateway Accordion */
  .woocommerce-checkout #payment ul.payment_methods li {
    padding: 12px 12px !important;
  }

  .woocommerce-checkout #payment ul.payment_methods li label {
    font-size: 0.82rem !important;
  }

  .woocommerce-checkout #payment div.payment_box {
    padding: 10px 12px !important;
    font-size: 0.76rem !important;
    line-height: 1.4 !important;
  }

  /* Place Order Button */
  .woocommerce-checkout #place_order {
    font-size: 0.86rem !important;
    padding: 16px 18px !important;
    min-height: 52px !important;
    letter-spacing: 0.08em !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Privacy Note & Trust Pillars */
  .lrb-checkout-privacy-note {
    padding: 0.85rem 1rem !important;
    margin-top: 1.25rem !important;
    gap: 10px !important;
  }

  .lrb-privacy-lock-icon {
    width: 26px !important;
    height: 26px !important;
  }

  .lrb-privacy-lock-text strong {
    font-size: 0.76rem !important;
  }

  .lrb-privacy-lock-text p {
    font-size: 0.7rem !important;
  }

  .lrb-checkout-trust-pillars {
    margin-top: 1rem !important;
    padding-top: 1rem !important;
    gap: 0.5rem !important;
  }

  .lrb-trust-pillar {
    font-size: 0.7rem !important;
  }
}

/* 3. Small Mobile & Micro-Screens (max-width: 480px) */
@media (max-width: 480px) {
  .lrb-checkout-page-header {
    padding: 1.25rem 0.75rem 1rem !important;
  }

  .lrb-checkout-crumbs {
    font-size: 0.72rem !important;
  }

  .lrb-checkout-main-title {
    font-size: 1.45rem !important;
  }

  .lrb-checkout-container {
    padding: 0 0.75rem !important;
  }

  .lrb-checkout-sticky-review {
    padding: 1rem 0.75rem !important;
  }

  .woocommerce-checkout table.shop_table tbody td.lrb-review-product-cell,
  .woocommerce-checkout #order_review table.shop_table tbody td {
    padding: 12px 8px !important;
  }

  .lrb-review-thumb-box {
    width: 50px !important;
    height: 50px !important;
  }

  .lrb-review-qty-bubble {
    width: 17px !important;
    height: 17px !important;
    font-size: 0.6rem !important;
    top: -5px !important;
    right: -5px !important;
  }

  .lrb-review-title {
    font-size: 0.88rem !important;
  }

  .lrb-review-price-col {
    font-size: 0.96rem !important;
    padding-left: 6px !important;
  }

  .woocommerce-checkout table.shop_table tfoot th,
  .woocommerce-checkout #order_review table.shop_table tfoot th {
    padding: 10px 8px !important;
    font-size: 0.75rem !important;
  }

  .woocommerce-checkout table.shop_table tfoot td,
  .woocommerce-checkout #order_review table.shop_table tfoot td {
    padding: 10px 8px !important;
    font-size: 0.84rem !important;
  }

  .woocommerce-checkout table.shop_table tfoot tr.order-total th,
  .woocommerce-checkout #order_review table.shop_table tfoot tr.order-total th,
  .woocommerce-checkout table.shop_table tfoot tr.order-total td,
  .woocommerce-checkout #order_review table.shop_table tfoot tr.order-total td {
    padding: 12px 8px !important;
  }

  .woocommerce-checkout table.shop_table tfoot tr.order-total td,
  .woocommerce-checkout #order_review table.shop_table tfoot tr.order-total td {
    font-size: 1.25rem !important;
  }
}

/* ==========================================================================
   Order Received / Thank You Page Styling
   ========================================================================== */
.lrb-thankyou-canvas {
  padding: 4rem 1rem 6rem;
  display: flex;
  justify-content: center;
}

.lrb-thankyou-card {
  max-width: 820px;
  width: 100%;
  background: #ffffff;
  border: 1px solid var(--lrb-border-subtle);
  border-radius: 8px;
  padding: 3.5rem 3rem;
  text-align: center;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.03);
  display: flex;
  flex-direction: column;
  align-items: center;
}

.lrb-thankyou-icon {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.5rem;
}

.lrb-icon-success {
  background: #edf7ee;
  border: 1px solid #c8e6c9;
  color: #2e7d32;
  box-shadow: 0 4px 18px rgba(46, 125, 50, 0.15);
}

.lrb-icon-failed {
  background: #fdeaea;
  border: 1px solid #fca5a5;
  color: #d32f2f;
}

.lrb-thankyou-icon svg {
  width: 36px;
  height: 36px;
}

.lrb-thankyou-eyebrow {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: var(--lrb-gold);
  font-weight: 600;
  display: block;
  margin-bottom: 0.5rem;
}

.lrb-thankyou-title {
  font-family: var(--lrb-font-heading);
  font-size: 2rem;
  font-weight: 400;
  color: var(--lrb-text-primary);
  margin: 0 0 0.85rem;
}

.lrb-thankyou-desc {
  font-size: 0.92rem;
  color: var(--lrb-text-muted);
  line-height: 1.6;
  max-width: 600px;
  margin: 0 auto 2.25rem;
}

/* Order Meta Strip */
.lrb-thankyou-meta-strip {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  background: #fafaf9;
  border: 1px solid #ede8e0;
  border-radius: 6px;
  padding: 1.25rem;
  width: 100%;
  margin-bottom: 2.5rem;
  text-align: left;
}

@media (max-width: 680px) {
  .lrb-thankyou-meta-strip {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
  }
}

.lrb-meta-cell {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.lrb-meta-label {
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--lrb-text-muted);
}

.lrb-meta-value {
  font-family: var(--lrb-font-heading);
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--lrb-text-primary);
}

/* Next Steps Timeline */
.lrb-thankyou-timeline {
  width: 100%;
  text-align: left;
  border-top: 1px solid var(--lrb-border-subtle);
  padding-top: 2rem;
  margin-bottom: 2.5rem;
}

.lrb-timeline-heading {
  font-family: var(--lrb-font-heading);
  font-size: 1.25rem;
  font-weight: 400;
  color: var(--lrb-text-primary);
  margin: 0 0 1.25rem;
}

.lrb-timeline-steps {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.lrb-timeline-step {
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
}

.lrb-step-bullet {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--lrb-text-primary);
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.85rem;
  font-weight: 600;
  flex-shrink: 0;
}

.lrb-step-content strong {
  display: block;
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--lrb-text-primary);
  margin-bottom: 3px;
}

.lrb-step-content p {
  font-size: 0.8rem;
  color: var(--lrb-text-muted);
  line-height: 1.5;
  margin: 0;
}

/* WhatsApp Box in Thank You */
.lrb-thankyou-wa-box {
  background: #f7faf8;
  border: 1px solid #c8e6c9;
  border-radius: 6px;
  padding: 1.5rem 2rem;
  width: 100%;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  text-align: left;
  margin-bottom: 2.5rem;
}

.lrb-wa-box-icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #25d366;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 4px 14px rgba(37, 211, 102, 0.25);
}

.lrb-wa-box-icon svg {
  width: 24px;
  height: 24px;
}

.lrb-wa-box-text {
  flex: 1;
  min-width: 0;
}

.lrb-wa-box-text h5 {
  font-family: var(--lrb-font-body);
  font-size: 0.98rem;
  font-weight: 600;
  color: #1e8346;
  margin: 0 0 0.35rem;
}

.lrb-wa-box-text p {
  font-size: 0.82rem;
  color: #4a4a4a;
  line-height: 1.45;
  margin: 0;
}

.lrb-thankyou-wa-box .lrb-btn-whatsapp {
  white-space: nowrap;
}

@media (max-width: 768px) {
  .lrb-thankyou-canvas {
    padding: 2rem 0.75rem 4rem !important;
  }

  .lrb-thankyou-card {
    padding: 2rem 1.25rem !important;
  }

  .lrb-thankyou-icon {
    width: 60px !important;
    height: 60px !important;
    margin-bottom: 1rem !important;
  }

  .lrb-thankyou-icon svg {
    width: 28px !important;
    height: 28px !important;
  }

  .lrb-thankyou-title {
    font-size: 1.5rem !important;
    line-height: 1.25 !important;
  }

  .lrb-thankyou-desc {
    font-size: 0.86rem !important;
    margin-bottom: 1.75rem !important;
  }

  .lrb-thankyou-meta-strip {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 0.85rem !important;
    padding: 1rem !important;
    margin-bottom: 1.75rem !important;
  }

  .lrb-thankyou-timeline {
    padding-top: 1.5rem !important;
    margin-bottom: 1.75rem !important;
  }

  .lrb-timeline-step {
    gap: 0.85rem !important;
  }

  .lrb-step-bullet {
    width: 28px !important;
    height: 28px !important;
    font-size: 0.78rem !important;
  }

  .lrb-step-content strong {
    font-size: 0.85rem !important;
  }

  .lrb-step-content p {
    font-size: 0.76rem !important;
  }

  .lrb-thankyou-wa-box {
    flex-direction: column !important;
    text-align: center !important;
    padding: 1.25rem 1rem !important;
    gap: 1rem !important;
    margin-bottom: 1.75rem !important;
  }

  .lrb-thankyou-wa-box .lrb-btn-whatsapp {
    width: 100% !important;
    justify-content: center !important;
  }

  .lrb-thankyou-actions {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    gap: 0.75rem !important;
  }

  .lrb-thankyou-actions .lrb-btn {
    width: 100% !important;
    justify-content: center !important;
  }
}

@media (max-width: 480px) {
  .lrb-thankyou-card {
    padding: 1.75rem 1rem !important;
  }

  .lrb-thankyou-title {
    font-size: 1.35rem !important;
  }

  .lrb-thankyou-meta-strip {
    grid-template-columns: 1fr !important;
    gap: 0.75rem !important;
  }
}

/* WooCommerce native order details in thank you */
.lrb-thankyou-wc-details {
  width: 100%;
  text-align: left;
  border-top: 1px solid var(--lrb-border-subtle);
  padding-top: 2rem;
}

.lrb-thankyou-wc-details h2 {
  font-family: var(--lrb-font-heading);
  font-size: 1.35rem;
  margin: 0 0 1.25rem;
}

.lrb-thankyou-wc-details .shop_table {
  width: 100%;
  border-collapse: collapse;
}

.lrb-thankyou-wc-details .shop_table th,
.lrb-thankyou-wc-details .shop_table td {
  padding: 1rem 0;
  border-bottom: 1px solid var(--lrb-border-subtle);
}

/* ==========================================================================
   Full Container Edge-to-Edge Product Card Images (Zero Padding)
   ========================================================================== */
.lrb-product-card-top,
.lrb-card-img-wrap,
.lrb-related-grid .lrb-product-card-top,
.woocommerce ul.products li.lrb-product-card .lrb-product-card-top {
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  max-height: none !important;
  background: #ffffff !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-bottom: 1px solid var(--lrb-border-subtle) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.lrb-card-img-link,
.lrb-card-img-wrap {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.lrb-card-img-link img,
.lrb-card-img-wrap img,
.lrb-product-card-top img,
.woocommerce ul.products li.lrb-product-card .lrb-card-img-link img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  margin: 0 auto !important;
  padding: 0 !important;
  transition: transform var(--lrb-transition-slow) !important;
}

.lrb-product-card:hover .lrb-card-img-link img,
.lrb-collection-card:hover .lrb-card-img-wrap img,
.woocommerce ul.products li.lrb-product-card:hover .lrb-card-img-link img {
  transform: scale(1.05) !important;
}





