@charset "UTF-8";
/* ============================================================
   BCO CUSTOM PDP STYLES - Complete Library
   ============================================================
   
   All custom PDP styles for Best Craft Organizer product pages,
   scoped per-product to prevent style leakage between products.
   
   Approach:
   - Each product's CSS is wrapped in a product-specific ID scope
   - Products can be updated independently without affecting others
   - Zero visual regression risk vs. existing inline CSS
   
   To locate a product: Ctrl+F for its ID (e.g. #bco-pdp-craftdesk)
   
   ============================================================
   TABLE OF CONTENTS
   ============================================================
   Adjustable Shelf                                   #bco-pdp-adjustableshelf
   Cabinet for Bead Storage Solutions                 #bco-pdp-beadcabinet
   Corner Cabinet                                     #bco-pdp-cornercabinet
   Corner L-Shape Craft Desk                          #bco-pdp-lshapedesk
   Craft Desk (4/5/8/10)                              #bco-pdp-craftdesk
   Craft Island - Customize                           #bco-pdp-craftislandcustom
   Craft Island Kit - Bar Height                      #bco-pdp-craftislandbar
   Craft Island Kit - Counter Height                  #bco-pdp-craftislandcounter
   Cube for Bead Storage Solutions                    #bco-pdp-beadcube
   Cutting Machine Cabinet                            #bco-pdp-cuttingmachine
   Diamond Painting Storage Cabinet Kits              #bco-pdp-diamondpainting
   Die Cutting & Embossing Station                    #bco-pdp-diecutting
   Jewelry Makers Storage Cabinet Kits                #bco-pdp-jewelrymakers
   Paper Crafting Storage Cabinet Kits                #bco-pdp-papercrafting
   Paper Holder                                       #bco-pdp-paperholder
   Storage Add-On for IKEA Kallax Insert              #bco-pdp-kallaxinsert
   Storage Cabinet and Drawer Bundle                  #bco-pdp-cabinetdrawerbundle
   Storage Cube                                       #bco-pdp-storagecube
   ============================================================ */
/* ============================================================
   Paper Holder
   ID: #bco-pdp-paperholder
   ============================================================ */
#bco-pdp-paperholder {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-paperholder *, #bco-pdp-paperholder *::before, #bco-pdp-paperholder *::after {
  box-sizing: border-box; }

#bco-pdp-paperholder h2, #bco-pdp-paperholder h3, #bco-pdp-paperholder h4, #bco-pdp-paperholder p, #bco-pdp-paperholder ul, #bco-pdp-paperholder li, #bco-pdp-paperholder table {
  margin: 0;
  padding: 0; }

#bco-pdp-paperholder ul {
  list-style: none; }

#bco-pdp-paperholder > section, #bco-pdp-paperholder > div[class^="bcopdp-"], #bco-pdp-paperholder > a[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-paperholder > section:last-child, #bco-pdp-paperholder > div[class^="bcopdp-"]:last-child, #bco-pdp-paperholder > a[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-paperholder .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-paperholder .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-paperholder .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-paperholder .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-paperholder .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-paperholder .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-paperholder .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-paperholder .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

#bco-pdp-paperholder .bcopdp-hero p a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 700; }

#bco-pdp-paperholder .bcopdp-hero p a:hover {
  color: var(--bco-teal-deep); }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-paperholder .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-paperholder .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-paperholder .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-paperholder .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-paperholder .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-paperholder .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-paperholder .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-paperholder .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-paperholder .bcopdp-feature p a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-paperholder .bcopdp-feature p a:hover {
  color: var(--bco-teal-deep); }

/* -------- SIZE COMPARISON (2 tinted cards) -------- */
#bco-pdp-paperholder .bcopdp-heights {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-paperholder .bcopdp-heights-head {
  margin-bottom: 24px;
  max-width: 620px; }

#bco-pdp-paperholder .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-paperholder .bcopdp-heights h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-paperholder .bcopdp-heights h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-paperholder .bcopdp-heights-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-paperholder .bcopdp-heights-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px; }

#bco-pdp-paperholder .bcopdp-height-card {
  border-radius: 12px;
  padding: 26px 26px 22px;
  border: 1px solid; }

#bco-pdp-paperholder .bcopdp-height-card:nth-child(1) {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-paperholder .bcopdp-height-card:nth-child(2) {
  background: #eaf2fa;
  border-color: var(--bco-navy); }

#bco-pdp-paperholder .bcopdp-height-name {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.15;
  margin-bottom: 4px; }

#bco-pdp-paperholder .bcopdp-height-card:nth-child(1) .bcopdp-height-name {
  color: var(--bco-teal-deep); }

#bco-pdp-paperholder .bcopdp-height-card:nth-child(2) .bcopdp-height-name {
  color: var(--bco-navy); }

#bco-pdp-paperholder .bcopdp-height-best-for {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 14px; }

#bco-pdp-paperholder .bcopdp-height-card:nth-child(1) .bcopdp-height-best-for {
  color: var(--bco-teal-deep);
  opacity: 0.8; }

#bco-pdp-paperholder .bcopdp-height-card:nth-child(2) .bcopdp-height-best-for {
  color: var(--bco-navy);
  opacity: 0.75; }

#bco-pdp-paperholder .bcopdp-height-dims {
  background: var(--bco-bg-white);
  border-radius: 10px;
  padding: 14px 16px;
  border: 1px solid; }

#bco-pdp-paperholder .bcopdp-height-card:nth-child(1) .bcopdp-height-dims {
  border-color: var(--bco-mint); }

#bco-pdp-paperholder .bcopdp-height-card:nth-child(2) .bcopdp-height-dims {
  border-color: rgba(36, 54, 101, 0.2); }

#bco-pdp-paperholder .bcopdp-height-dim-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 4px 0;
  font-size: 13px;
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-paperholder .bcopdp-height-dim-row:last-child {
  border-bottom: none; }

#bco-pdp-paperholder .bcopdp-height-dim-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-paperholder .bcopdp-height-dim-value {
  color: var(--bco-navy);
  font-weight: 700;
  text-align: right; }

/* -------- USE CASES (GREAT FOR) -------- */
#bco-pdp-paperholder .bcopdp-uses {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-paperholder .bcopdp-uses-head {
  margin-bottom: 22px;
  max-width: 620px; }

#bco-pdp-paperholder .bcopdp-uses h2 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 10px; }

#bco-pdp-paperholder .bcopdp-uses h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-paperholder .bcopdp-uses-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-paperholder .bcopdp-uses-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px; }

#bco-pdp-paperholder .bcopdp-use-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 10px;
  font-size: 14px;
  color: var(--bco-ink);
  line-height: 1.5; }

#bco-pdp-paperholder .bcopdp-use-row svg {
  width: 18px;
  height: 18px;
  color: var(--bco-teal-deep);
  flex-shrink: 0;
  margin-top: 2px; }

#bco-pdp-paperholder .bcopdp-use-row strong {
  font-weight: 700;
  color: var(--bco-navy); }

/* -------- SPECS CARD -------- */
#bco-pdp-paperholder .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 18px 24px; }

#bco-pdp-paperholder .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-paperholder .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 6px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 13px; }

#bco-pdp-paperholder .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

#bco-pdp-paperholder .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 20px; }

#bco-pdp-paperholder .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 20px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-paperholder .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-paperholder .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd), #bco-pdp-paperholder .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; }
  #bco-pdp-paperholder .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-paperholder .bcopdp-specs-grid .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-paperholder .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-paperholder .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- PAIR-IT-WITH -------- */
#bco-pdp-paperholder .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-paperholder .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-paperholder .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-paperholder .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-paperholder .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-paperholder .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-paperholder .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-paperholder .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-paperholder .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-paperholder .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-paperholder .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-paperholder .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-paperholder .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-paperholder .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-paperholder .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- FAQ ACCORDION -------- */
#bco-pdp-paperholder .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-paperholder .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-paperholder .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-paperholder .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-paperholder .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-paperholder .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-paperholder .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-paperholder .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-paperholder .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-paperholder .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-paperholder .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-paperholder .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-paperholder .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

/* -------- PLANNING CTA -------- */
#bco-pdp-paperholder .bcopdp-plan-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-paperholder .bcopdp-plan-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-paperholder .bcopdp-plan-text {
  flex: 1;
  min-width: 240px;
  position: relative;
  z-index: 1; }

#bco-pdp-paperholder .bcopdp-plan-cta h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-paperholder .bcopdp-plan-cta h3 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-paperholder .bcopdp-plan-cta p {
  font-size: 14.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-paperholder .bcopdp-plan-buttons {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  flex-wrap: wrap; }

#bco-pdp-paperholder .bcopdp-plan-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 22px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1; }

#bco-pdp-paperholder .bcopdp-plan-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- RESPONSIVE -------- */
@media (max-width: 768px) {
  #bco-pdp-paperholder > section, #bco-pdp-paperholder > div[class^="bcopdp-"], #bco-pdp-paperholder > a[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-paperholder .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-paperholder .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-paperholder .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-paperholder .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-paperholder .bcopdp-heights {
    padding: 26px 22px; }
  #bco-pdp-paperholder .bcopdp-heights-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-paperholder .bcopdp-uses {
    padding: 26px 22px; }
  #bco-pdp-paperholder .bcopdp-uses-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-paperholder .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-paperholder .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-paperholder .bcopdp-pairs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-paperholder .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-paperholder .bcopdp-plan-cta {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-paperholder .bcopdp-plan-buttons {
    width: 100%; }
  #bco-pdp-paperholder .bcopdp-plan-btn {
    flex: 1;
    justify-content: center; } }

/* --- End Paper Holder --- */
/* ============================================================
   Adjustable Shelf
   ID: #bco-pdp-adjustableshelf
   ============================================================ */
#bco-pdp-adjustableshelf {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-adjustableshelf *, #bco-pdp-adjustableshelf *::before, #bco-pdp-adjustableshelf *::after {
  box-sizing: border-box; }

#bco-pdp-adjustableshelf h2, #bco-pdp-adjustableshelf h3, #bco-pdp-adjustableshelf h4, #bco-pdp-adjustableshelf p, #bco-pdp-adjustableshelf ul, #bco-pdp-adjustableshelf li, #bco-pdp-adjustableshelf table {
  margin: 0;
  padding: 0; }

#bco-pdp-adjustableshelf ul {
  list-style: none; }

#bco-pdp-adjustableshelf > section, #bco-pdp-adjustableshelf > div[class^="bcopdp-"], #bco-pdp-adjustableshelf > a[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-adjustableshelf > section:last-child, #bco-pdp-adjustableshelf > div[class^="bcopdp-"]:last-child, #bco-pdp-adjustableshelf > a[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-adjustableshelf .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-adjustableshelf .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-adjustableshelf .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-adjustableshelf .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-adjustableshelf .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-adjustableshelf .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-adjustableshelf .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-adjustableshelf .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

#bco-pdp-adjustableshelf .bcopdp-hero p a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 700; }

#bco-pdp-adjustableshelf .bcopdp-hero p a:hover {
  color: var(--bco-teal-deep); }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-adjustableshelf .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-adjustableshelf .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-adjustableshelf .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-adjustableshelf .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-adjustableshelf .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-adjustableshelf .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-adjustableshelf .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-adjustableshelf .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-adjustableshelf .bcopdp-feature p a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-adjustableshelf .bcopdp-feature p a:hover {
  color: var(--bco-teal-deep); }

/* -------- USE CASES (GREAT FOR) -------- */
#bco-pdp-adjustableshelf .bcopdp-uses {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-adjustableshelf .bcopdp-uses-head {
  margin-bottom: 22px;
  max-width: 620px; }

#bco-pdp-adjustableshelf .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-adjustableshelf .bcopdp-uses h2 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 10px; }

#bco-pdp-adjustableshelf .bcopdp-uses h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-adjustableshelf .bcopdp-uses-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-adjustableshelf .bcopdp-uses-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px; }

#bco-pdp-adjustableshelf .bcopdp-use-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 10px;
  font-size: 14px;
  color: var(--bco-ink);
  line-height: 1.5; }

#bco-pdp-adjustableshelf .bcopdp-use-row svg {
  width: 18px;
  height: 18px;
  color: var(--bco-teal-deep);
  flex-shrink: 0;
  margin-top: 2px; }

#bco-pdp-adjustableshelf .bcopdp-use-row strong {
  font-weight: 700;
  color: var(--bco-navy); }

/* -------- SPECS CARD -------- */
#bco-pdp-adjustableshelf .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 18px 24px; }

#bco-pdp-adjustableshelf .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-adjustableshelf .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 6px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 13px; }

#bco-pdp-adjustableshelf .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

#bco-pdp-adjustableshelf .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 20px; }

#bco-pdp-adjustableshelf .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 20px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-adjustableshelf .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-adjustableshelf .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd), #bco-pdp-adjustableshelf .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; }
  #bco-pdp-adjustableshelf .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-adjustableshelf .bcopdp-specs-grid .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-adjustableshelf .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-adjustableshelf .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- PAIR-IT-WITH -------- */
#bco-pdp-adjustableshelf .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-adjustableshelf .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-adjustableshelf .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-adjustableshelf .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-adjustableshelf .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-adjustableshelf .bcopdp-pairs-grid.is-four {
  grid-template-columns: repeat(4, 1fr); }

#bco-pdp-adjustableshelf .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-adjustableshelf .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-adjustableshelf .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-adjustableshelf .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-adjustableshelf .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-adjustableshelf .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-adjustableshelf .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-adjustableshelf .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-adjustableshelf .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-adjustableshelf .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- FAQ ACCORDION -------- */
#bco-pdp-adjustableshelf .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-adjustableshelf .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-adjustableshelf .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-adjustableshelf .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-adjustableshelf .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-adjustableshelf .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-adjustableshelf .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-adjustableshelf .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-adjustableshelf .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-adjustableshelf .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-adjustableshelf .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-adjustableshelf .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-adjustableshelf .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

/* -------- PLANNING CTA -------- */
#bco-pdp-adjustableshelf .bcopdp-plan-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-adjustableshelf .bcopdp-plan-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-adjustableshelf .bcopdp-plan-text {
  flex: 1;
  min-width: 240px;
  position: relative;
  z-index: 1; }

#bco-pdp-adjustableshelf .bcopdp-plan-cta h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-adjustableshelf .bcopdp-plan-cta h3 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-adjustableshelf .bcopdp-plan-cta p {
  font-size: 14.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-adjustableshelf .bcopdp-plan-buttons {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  flex-wrap: wrap; }

#bco-pdp-adjustableshelf .bcopdp-plan-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 22px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1; }

#bco-pdp-adjustableshelf .bcopdp-plan-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- RESPONSIVE -------- */
@media (max-width: 980px) {
  #bco-pdp-adjustableshelf .bcopdp-pairs-grid.is-four {
    grid-template-columns: repeat(2, 1fr); } }

@media (max-width: 768px) {
  #bco-pdp-adjustableshelf > section, #bco-pdp-adjustableshelf > div[class^="bcopdp-"], #bco-pdp-adjustableshelf > a[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-adjustableshelf .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-adjustableshelf .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-adjustableshelf .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-adjustableshelf .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-adjustableshelf .bcopdp-uses {
    padding: 26px 22px; }
  #bco-pdp-adjustableshelf .bcopdp-uses-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-adjustableshelf .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-adjustableshelf .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-adjustableshelf .bcopdp-pairs-grid, #bco-pdp-adjustableshelf .bcopdp-pairs-grid.is-four {
    grid-template-columns: 1fr; }
  #bco-pdp-adjustableshelf .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-adjustableshelf .bcopdp-plan-cta {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-adjustableshelf .bcopdp-plan-buttons {
    width: 100%; }
  #bco-pdp-adjustableshelf .bcopdp-plan-btn {
    flex: 1;
    justify-content: center; } }

/* --- End Adjustable Shelf --- */
/* ============================================================
   Cabinet for Bead Storage Solutions
   ID: #bco-pdp-beadcabinet
   ============================================================ */
#bco-pdp-beadcabinet {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-beadcabinet *, #bco-pdp-beadcabinet *::before, #bco-pdp-beadcabinet *::after {
  box-sizing: border-box; }

#bco-pdp-beadcabinet h2, #bco-pdp-beadcabinet h3, #bco-pdp-beadcabinet h4, #bco-pdp-beadcabinet p, #bco-pdp-beadcabinet ul, #bco-pdp-beadcabinet li, #bco-pdp-beadcabinet table {
  margin: 0;
  padding: 0; }

#bco-pdp-beadcabinet ul {
  list-style: none; }

#bco-pdp-beadcabinet > section,
#bco-pdp-beadcabinet > div[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-beadcabinet > section:last-child,
#bco-pdp-beadcabinet > div[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-beadcabinet .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-beadcabinet .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-beadcabinet .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-beadcabinet .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-beadcabinet .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-beadcabinet .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-beadcabinet .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-beadcabinet .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

#bco-pdp-beadcabinet .bcopdp-hero p a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-beadcabinet .bcopdp-hero p a:hover {
  color: var(--bco-teal-deep); }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-beadcabinet .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-beadcabinet .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-beadcabinet .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-beadcabinet .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-beadcabinet .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-beadcabinet .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-beadcabinet .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-beadcabinet .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-beadcabinet .bcopdp-feature p a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-beadcabinet .bcopdp-feature p a:hover {
  color: var(--bco-teal-deep); }

/* -------- THREE-PILLAR STRIP -------- */
#bco-pdp-beadcabinet .bcopdp-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px; }

#bco-pdp-beadcabinet .bcopdp-pillar {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 20px;
  text-align: center;
  transition: all 0.25s ease; }

#bco-pdp-beadcabinet .bcopdp-pillar:hover {
  transform: translateY(-2px);
  border-color: var(--bco-teal);
  box-shadow: 0 10px 22px -10px rgba(36, 54, 101, 0.15); }

#bco-pdp-beadcabinet .bcopdp-pillar-icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  margin-bottom: 12px; }

#bco-pdp-beadcabinet .bcopdp-pillar:nth-child(2) .bcopdp-pillar-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-beadcabinet .bcopdp-pillar:nth-child(3) .bcopdp-pillar-icon {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-beadcabinet .bcopdp-pillar-icon svg {
  width: 22px;
  height: 22px; }

#bco-pdp-beadcabinet .bcopdp-pillar h4 {
  font-family: var(--bco-display);
  font-size: 18px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-beadcabinet .bcopdp-pillar p {
  font-size: 13px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

/* -------- BLOCK 5b VARIANT: SIZE PICKER -------- */
#bco-pdp-beadcabinet .bcopdp-configs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 36px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-beadcabinet .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-beadcabinet .bcopdp-configs h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-beadcabinet .bcopdp-configs h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-beadcabinet .bcopdp-configs-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.65;
  max-width: 680px;
  margin-bottom: 28px; }

#bco-pdp-beadcabinet .bcopdp-configs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px; }

#bco-pdp-beadcabinet .bcopdp-configs-grid.is-two {
  grid-template-columns: repeat(2, 1fr); }

#bco-pdp-beadcabinet .bcopdp-config-card {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px;
  transition: all 0.25s ease;
  display: flex;
  flex-direction: column; }

#bco-pdp-beadcabinet .bcopdp-config-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 14px 28px -14px rgba(36, 54, 101, 0.18); }

#bco-pdp-beadcabinet .bcopdp-config-icon-wrap {
  width: 72px;
  height: 72px;
  border-radius: 16px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  margin-bottom: 18px; }

#bco-pdp-beadcabinet .bcopdp-config-card:nth-child(2) .bcopdp-config-icon-wrap {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-beadcabinet .bcopdp-config-icon-wrap svg {
  width: 36px;
  height: 36px; }

#bco-pdp-beadcabinet .bcopdp-config-name {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 4px; }

#bco-pdp-beadcabinet .bcopdp-config-name em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-beadcabinet .bcopdp-config-tagline {
  font-size: 13px;
  color: var(--bco-teal-deep);
  font-weight: 600;
  letter-spacing: 0.02em;
  margin-bottom: 14px; }

#bco-pdp-beadcabinet .bcopdp-config-desc {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 14px;
  flex: 1; }

#bco-pdp-beadcabinet .bcopdp-config-best {
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 12.5px;
  color: var(--bco-ink);
  line-height: 1.45; }

#bco-pdp-beadcabinet .bcopdp-config-best strong {
  display: block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  margin-bottom: 4px; }

#bco-pdp-beadcabinet .bcopdp-config-card:nth-child(2) .bcopdp-config-best {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-beadcabinet .bcopdp-config-card:nth-child(2) .bcopdp-config-best strong {
  color: var(--bco-blush-deep); }

/* -------- SPECS CARD (with grouped subheadings) -------- */
#bco-pdp-beadcabinet .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px; }

#bco-pdp-beadcabinet .bcopdp-specs h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 22px; }

#bco-pdp-beadcabinet .bcopdp-spec-group {
  margin-bottom: 28px; }

#bco-pdp-beadcabinet .bcopdp-spec-group:last-child {
  margin-bottom: 0; }

#bco-pdp-beadcabinet .bcopdp-spec-group-label {
  display: inline-block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  padding: 5px 12px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-beadcabinet .bcopdp-spec-group:nth-child(3) .bcopdp-spec-group-label {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-beadcabinet .bcopdp-spec-group:nth-child(4) .bcopdp-spec-group-label {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-beadcabinet .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-beadcabinet .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 11px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 14px; }

#bco-pdp-beadcabinet .bcopdp-spec-group .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

@media (max-width: 600px) {
  #bco-pdp-beadcabinet .bcopdp-spec-group .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-beadcabinet .bcopdp-spec-group .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-beadcabinet .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 24px; }

#bco-pdp-beadcabinet .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 24px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-beadcabinet .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd),
  #bco-pdp-beadcabinet .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; } }

#bco-pdp-beadcabinet .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-beadcabinet .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- WHAT'S INCLUDED -------- */
#bco-pdp-beadcabinet .bcopdp-included {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-beadcabinet .bcopdp-included-col {
  border-radius: 12px;
  padding: 24px 26px;
  border: 1px solid; }

#bco-pdp-beadcabinet .bcopdp-included-col.is-yes {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-beadcabinet .bcopdp-included-col.is-no {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-beadcabinet .bcopdp-included-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px; }

#bco-pdp-beadcabinet .bcopdp-included-badge {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

.is-yes .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-teal-deep);
  border: 1px solid var(--bco-mint); }

.is-no .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-blush-deep);
  border: 1px solid var(--bco-blush); }

#bco-pdp-beadcabinet .bcopdp-included-badge svg {
  width: 16px;
  height: 16px; }

#bco-pdp-beadcabinet .bcopdp-included-head h4 {
  font-family: var(--bco-display);
  font-size: 19px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.2; }

.is-yes .bcopdp-included-head h4 {
  color: var(--bco-teal-deep); }

.is-no .bcopdp-included-head h4 {
  color: var(--bco-blush-deep); }

#bco-pdp-beadcabinet .bcopdp-included-list li {
  font-size: 14px;
  color: var(--bco-ink);
  line-height: 1.5;
  padding: 5px 0;
  display: flex;
  align-items: flex-start;
  gap: 8px; }

#bco-pdp-beadcabinet .bcopdp-included-list li::before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  margin-top: 9px;
  flex-shrink: 0; }

.is-yes .bcopdp-included-list li::before {
  background: var(--bco-teal-deep); }

.is-no .bcopdp-included-list li::before {
  background: var(--bco-blush-deep); }

#bco-pdp-beadcabinet .bcopdp-included-list li a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-beadcabinet .bcopdp-included-list li a:hover {
  color: var(--bco-teal-deep); }

/* -------- PAIR-IT-WITH -------- */
#bco-pdp-beadcabinet .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-beadcabinet .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-beadcabinet .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-beadcabinet .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-beadcabinet .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-beadcabinet .bcopdp-pairs-grid.is-two {
  grid-template-columns: repeat(2, 1fr); }

#bco-pdp-beadcabinet .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-beadcabinet .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-beadcabinet .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-beadcabinet .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-beadcabinet .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-beadcabinet .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-beadcabinet .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-beadcabinet .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-beadcabinet .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-beadcabinet .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- FAQ ACCORDION -------- */
#bco-pdp-beadcabinet .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-beadcabinet .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-beadcabinet .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-beadcabinet .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-beadcabinet .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-beadcabinet .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-beadcabinet .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-beadcabinet .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-beadcabinet .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-beadcabinet .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-beadcabinet .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-beadcabinet .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-beadcabinet .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

/* -------- COMPACT-OPTION CTA (Block 12 variant) -------- */
#bco-pdp-beadcabinet .bcopdp-customize-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-beadcabinet .bcopdp-customize-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-beadcabinet .bcopdp-customize-text {
  flex: 1;
  min-width: 240px;
  position: relative;
  z-index: 1; }

#bco-pdp-beadcabinet .bcopdp-customize-cta h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-beadcabinet .bcopdp-customize-cta h3 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-beadcabinet .bcopdp-customize-cta p {
  font-size: 14.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-beadcabinet .bcopdp-customize-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 26px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1;
  flex-shrink: 0;
  position: relative;
  z-index: 1; }

#bco-pdp-beadcabinet .bcopdp-customize-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- ASSEMBLY + WARRANTY FOOTER -------- */
#bco-pdp-beadcabinet .bcopdp-footer-blocks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-beadcabinet .bcopdp-footer-block {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 26px;
  display: flex;
  align-items: flex-start;
  gap: 14px; }

#bco-pdp-beadcabinet .bcopdp-footer-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

#bco-pdp-beadcabinet .bcopdp-footer-block:nth-child(2) .bcopdp-footer-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-beadcabinet .bcopdp-footer-icon svg {
  width: 20px;
  height: 20px; }

#bco-pdp-beadcabinet .bcopdp-footer-block h4 {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  margin-bottom: 4px; }

#bco-pdp-beadcabinet .bcopdp-footer-block p {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 8px; }

#bco-pdp-beadcabinet .bcopdp-footer-block a {
  font-size: 12px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  text-decoration: none;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid currentColor;
  padding-bottom: 1px; }

#bco-pdp-beadcabinet .bcopdp-footer-block a:hover {
  color: var(--bco-navy); }

/* -------- RESPONSIVE -------- */
@media (max-width: 768px) {
  #bco-pdp-beadcabinet > section,
  #bco-pdp-beadcabinet > div[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-beadcabinet .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-beadcabinet .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-beadcabinet .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-beadcabinet .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-beadcabinet .bcopdp-pillars {
    grid-template-columns: 1fr; }
  #bco-pdp-beadcabinet .bcopdp-configs {
    padding: 26px 22px; }
  #bco-pdp-beadcabinet .bcopdp-configs-grid,
  #bco-pdp-beadcabinet .bcopdp-configs-grid.is-two {
    grid-template-columns: 1fr; }
  #bco-pdp-beadcabinet .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-beadcabinet .bcopdp-included {
    grid-template-columns: 1fr; }
  #bco-pdp-beadcabinet .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-beadcabinet .bcopdp-pairs-grid,
  #bco-pdp-beadcabinet .bcopdp-pairs-grid.is-two {
    grid-template-columns: 1fr; }
  #bco-pdp-beadcabinet .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-beadcabinet .bcopdp-customize-cta {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-beadcabinet .bcopdp-customize-btn {
    width: 100%;
    justify-content: center; }
  #bco-pdp-beadcabinet .bcopdp-footer-blocks {
    grid-template-columns: 1fr; } }

/* --- End Cabinet for Bead Storage Solutions --- */
/* ============================================================
   Corner Cabinet
   ID: #bco-pdp-cornercabinet
   ============================================================ */
#bco-pdp-cornercabinet {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-cornercabinet *, #bco-pdp-cornercabinet *::before, #bco-pdp-cornercabinet *::after {
  box-sizing: border-box; }

#bco-pdp-cornercabinet h2, #bco-pdp-cornercabinet h3, #bco-pdp-cornercabinet h4, #bco-pdp-cornercabinet p, #bco-pdp-cornercabinet ul, #bco-pdp-cornercabinet li, #bco-pdp-cornercabinet table {
  margin: 0;
  padding: 0; }

#bco-pdp-cornercabinet ul {
  list-style: none; }

#bco-pdp-cornercabinet > section,
#bco-pdp-cornercabinet > div[class^="bcopdp-"],
#bco-pdp-cornercabinet > a[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-cornercabinet > section:last-child,
#bco-pdp-cornercabinet > div[class^="bcopdp-"]:last-child,
#bco-pdp-cornercabinet > a[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-cornercabinet .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-cornercabinet .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-cornercabinet .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-cornercabinet .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-cornercabinet .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-cornercabinet .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-cornercabinet .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cornercabinet .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

#bco-pdp-cornercabinet .bcopdp-hero p a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 700; }

#bco-pdp-cornercabinet .bcopdp-hero p a:hover {
  color: var(--bco-teal-deep); }

/* -------- HOW IT FITS (top-down floorplan diagram) -------- */
#bco-pdp-cornercabinet .bcopdp-fit {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 36px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-cornercabinet .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-cornercabinet .bcopdp-fit h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-cornercabinet .bcopdp-fit h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cornercabinet .bcopdp-fit-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.65;
  max-width: 680px;
  margin-bottom: 24px; }

#bco-pdp-cornercabinet .bcopdp-fit-diagram {
  background: #faf6f1;
  border-radius: 12px;
  padding: 32px 24px 22px; }

#bco-pdp-cornercabinet .bcopdp-fit-svg {
  width: 100%;
  max-width: 480px;
  height: auto;
  margin: 0 auto 16px;
  display: block; }

#bco-pdp-cornercabinet .bcopdp-fit-key {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  justify-content: center;
  padding-top: 8px; }

#bco-pdp-cornercabinet .bcopdp-fit-key-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: var(--bco-ink); }

#bco-pdp-cornercabinet .bcopdp-fit-key-swatch {
  width: 18px;
  height: 18px;
  border-radius: 4px;
  border: 1.5px solid; }

#bco-pdp-cornercabinet .bcopdp-fit-key-swatch.is-corner {
  background: var(--bco-mint-soft);
  border-color: var(--bco-teal); }

#bco-pdp-cornercabinet .bcopdp-fit-key-swatch.is-cabinet {
  background: var(--bco-bg-white);
  border-color: #d4cfc6; }

#bco-pdp-cornercabinet .bcopdp-fit-key-swatch.is-opening {
  background: transparent;
  border: none;
  border-top: 3px solid var(--bco-blush-deep);
  border-radius: 0;
  height: 18px;
  box-sizing: border-box;
  border-radius: 2px; }

#bco-pdp-cornercabinet .bcopdp-fit-key-text strong {
  font-weight: 700;
  color: var(--bco-navy); }

/* -------- HEIGHT COMPARISON -------- */
#bco-pdp-cornercabinet .bcopdp-heights {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-cornercabinet .bcopdp-heights-head {
  margin-bottom: 24px;
  max-width: 620px; }

#bco-pdp-cornercabinet .bcopdp-heights h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-cornercabinet .bcopdp-heights h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cornercabinet .bcopdp-heights-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-cornercabinet .bcopdp-heights-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px; }

#bco-pdp-cornercabinet .bcopdp-height-card {
  border-radius: 12px;
  padding: 26px 26px 22px;
  border: 1px solid; }

#bco-pdp-cornercabinet .bcopdp-height-card:nth-child(1) {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-cornercabinet .bcopdp-height-card:nth-child(2) {
  background: #eaf2fa;
  border-color: var(--bco-navy); }

#bco-pdp-cornercabinet .bcopdp-height-name {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.15;
  margin-bottom: 4px; }

#bco-pdp-cornercabinet .bcopdp-height-card:nth-child(1) .bcopdp-height-name {
  color: var(--bco-teal-deep); }

#bco-pdp-cornercabinet .bcopdp-height-card:nth-child(2) .bcopdp-height-name {
  color: var(--bco-navy); }

#bco-pdp-cornercabinet .bcopdp-height-best-for {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 12px; }

#bco-pdp-cornercabinet .bcopdp-height-card:nth-child(1) .bcopdp-height-best-for {
  color: var(--bco-teal-deep);
  opacity: 0.8; }

#bco-pdp-cornercabinet .bcopdp-height-card:nth-child(2) .bcopdp-height-best-for {
  color: var(--bco-navy);
  opacity: 0.75; }

#bco-pdp-cornercabinet .bcopdp-height-shelves {
  display: flex;
  align-items: center;
  gap: 10px;
  background: var(--bco-bg-white);
  border-radius: 10px;
  padding: 12px 14px;
  margin-bottom: 12px;
  border: 1px solid; }

#bco-pdp-cornercabinet .bcopdp-height-card:nth-child(1) .bcopdp-height-shelves {
  border-color: var(--bco-mint); }

#bco-pdp-cornercabinet .bcopdp-height-card:nth-child(2) .bcopdp-height-shelves {
  border-color: rgba(36, 54, 101, 0.2); }

#bco-pdp-cornercabinet .bcopdp-height-shelves-icon {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  color: var(--bco-teal-deep); }

#bco-pdp-cornercabinet .bcopdp-height-card:nth-child(2) .bcopdp-height-shelves-icon {
  color: var(--bco-navy); }

#bco-pdp-cornercabinet .bcopdp-height-shelves-text {
  font-size: 13.5px;
  color: var(--bco-ink);
  line-height: 1.4; }

#bco-pdp-cornercabinet .bcopdp-height-shelves-text strong {
  font-weight: 700;
  color: var(--bco-navy); }

#bco-pdp-cornercabinet .bcopdp-height-desc {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-cornercabinet .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-cornercabinet .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-cornercabinet .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-cornercabinet .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-cornercabinet .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-cornercabinet .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-cornercabinet .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cornercabinet .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

/* -------- TURNTABLE CALLOUT -------- */
#bco-pdp-cornercabinet .bcopdp-turntable {
  background: linear-gradient(135deg, var(--bco-mint-soft) 0%, var(--bco-blush-wash) 100%);
  border: 1px solid var(--bco-mint);
  border-radius: 14px;
  padding: 32px 36px;
  display: flex;
  align-items: center;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-cornercabinet .bcopdp-turntable-graphic {
  width: 120px;
  flex-shrink: 0; }

#bco-pdp-cornercabinet .bcopdp-turntable-graphic svg {
  width: 100%;
  height: auto;
  display: block; }

#bco-pdp-cornercabinet .bcopdp-turntable-text {
  flex: 1;
  min-width: 240px; }

#bco-pdp-cornercabinet .bcopdp-turntable-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-bg-white);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 12px; }

#bco-pdp-cornercabinet .bcopdp-turntable h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 8px; }

#bco-pdp-cornercabinet .bcopdp-turntable h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cornercabinet .bcopdp-turntable p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

/* -------- THREE-PILLAR STRIP -------- */
#bco-pdp-cornercabinet .bcopdp-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px; }

#bco-pdp-cornercabinet .bcopdp-pillar {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 20px;
  text-align: center;
  transition: all 0.25s ease; }

#bco-pdp-cornercabinet .bcopdp-pillar:hover {
  transform: translateY(-2px);
  border-color: var(--bco-teal);
  box-shadow: 0 10px 22px -10px rgba(36, 54, 101, 0.15); }

#bco-pdp-cornercabinet .bcopdp-pillar-icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  margin-bottom: 12px; }

#bco-pdp-cornercabinet .bcopdp-pillar:nth-child(2) .bcopdp-pillar-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-cornercabinet .bcopdp-pillar:nth-child(3) .bcopdp-pillar-icon {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-cornercabinet .bcopdp-pillar-icon svg {
  width: 22px;
  height: 22px; }

#bco-pdp-cornercabinet .bcopdp-pillar h4 {
  font-family: var(--bco-display);
  font-size: 18px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-cornercabinet .bcopdp-pillar p {
  font-size: 13px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

/* -------- SPECS CARD -------- */
#bco-pdp-cornercabinet .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 18px 24px; }

#bco-pdp-cornercabinet .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-cornercabinet .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 6px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 13px; }

#bco-pdp-cornercabinet .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

#bco-pdp-cornercabinet .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 20px; }

#bco-pdp-cornercabinet .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 20px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-cornercabinet .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-cornercabinet .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd),
  #bco-pdp-cornercabinet .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; }
  #bco-pdp-cornercabinet .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-cornercabinet .bcopdp-specs-grid .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-cornercabinet .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-cornercabinet .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- PAIR-IT-WITH (3 cards) -------- */
#bco-pdp-cornercabinet .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-cornercabinet .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-cornercabinet .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cornercabinet .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-cornercabinet .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-cornercabinet .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-cornercabinet .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-cornercabinet .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-cornercabinet .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-cornercabinet .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-cornercabinet .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-cornercabinet .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-cornercabinet .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-cornercabinet .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-cornercabinet .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- FAQ ACCORDION -------- */
#bco-pdp-cornercabinet .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-cornercabinet .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-cornercabinet .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cornercabinet .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-cornercabinet .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-cornercabinet .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-cornercabinet .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-cornercabinet .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-cornercabinet .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-cornercabinet .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-cornercabinet .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-cornercabinet .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-cornercabinet .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

/* -------- PLANNING CTA -------- */
#bco-pdp-cornercabinet .bcopdp-plan-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-cornercabinet .bcopdp-plan-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-cornercabinet .bcopdp-plan-text {
  flex: 1;
  min-width: 240px;
  position: relative;
  z-index: 1; }

#bco-pdp-cornercabinet .bcopdp-plan-cta h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-cornercabinet .bcopdp-plan-cta h3 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-cornercabinet .bcopdp-plan-cta p {
  font-size: 14.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-cornercabinet .bcopdp-plan-buttons {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  flex-wrap: wrap; }

#bco-pdp-cornercabinet .bcopdp-plan-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 22px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1; }

#bco-pdp-cornercabinet .bcopdp-plan-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- RESPONSIVE -------- */
@media (max-width: 768px) {
  #bco-pdp-cornercabinet > section,
  #bco-pdp-cornercabinet > div[class^="bcopdp-"],
  #bco-pdp-cornercabinet > a[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-cornercabinet .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-cornercabinet .bcopdp-fit {
    padding: 26px 22px; }
  #bco-pdp-cornercabinet .bcopdp-fit-diagram {
    padding: 22px 14px 14px; }
  #bco-pdp-cornercabinet .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-cornercabinet .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-cornercabinet .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-cornercabinet .bcopdp-turntable {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-cornercabinet .bcopdp-turntable-graphic {
    width: 88px; }
  #bco-pdp-cornercabinet .bcopdp-pillars {
    grid-template-columns: 1fr; }
  #bco-pdp-cornercabinet .bcopdp-heights {
    padding: 26px 22px; }
  #bco-pdp-cornercabinet .bcopdp-heights-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-cornercabinet .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-cornercabinet .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-cornercabinet .bcopdp-pairs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-cornercabinet .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-cornercabinet .bcopdp-plan-cta {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-cornercabinet .bcopdp-plan-buttons {
    width: 100%; }
  #bco-pdp-cornercabinet .bcopdp-plan-btn {
    flex: 1;
    justify-content: center; } }

/* --- End Corner Cabinet --- */
/* ============================================================
   Corner L-Shape Craft Desk
   ID: #bco-pdp-lshapedesk
   ============================================================ */
#bco-pdp-lshapedesk {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-lshapedesk *, #bco-pdp-lshapedesk *::before, #bco-pdp-lshapedesk *::after {
  box-sizing: border-box; }

#bco-pdp-lshapedesk h2, #bco-pdp-lshapedesk h3, #bco-pdp-lshapedesk h4, #bco-pdp-lshapedesk p, #bco-pdp-lshapedesk ul, #bco-pdp-lshapedesk li, #bco-pdp-lshapedesk table {
  margin: 0;
  padding: 0; }

#bco-pdp-lshapedesk ul {
  list-style: none; }

#bco-pdp-lshapedesk > section,
#bco-pdp-lshapedesk > div[class^="bcopdp-"],
#bco-pdp-lshapedesk > a[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-lshapedesk > section:last-child,
#bco-pdp-lshapedesk > div[class^="bcopdp-"]:last-child,
#bco-pdp-lshapedesk > a[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-lshapedesk .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-lshapedesk .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-lshapedesk .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-lshapedesk .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-lshapedesk .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-lshapedesk .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-lshapedesk .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-lshapedesk .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

/* -------- PRODUCT DEMO VIDEO -------- */
#bco-pdp-lshapedesk .bcopdp-video {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-lshapedesk .bcopdp-video-head {
  margin-bottom: 22px;
  max-width: 620px; }

#bco-pdp-lshapedesk .bcopdp-video-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 12px; }

#bco-pdp-lshapedesk .bcopdp-video h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-lshapedesk .bcopdp-video h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-lshapedesk .bcopdp-video-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

#bco-pdp-lshapedesk .bcopdp-video-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 12px;
  overflow: hidden;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  box-shadow: 0 14px 32px -16px rgba(36, 54, 101, 0.25); }

#bco-pdp-lshapedesk .bcopdp-video-frame iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block; }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-lshapedesk .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-lshapedesk .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-lshapedesk .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-lshapedesk .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-lshapedesk .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-lshapedesk .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-lshapedesk .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-lshapedesk .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

/* -------- THREE-PILLAR STRIP -------- */
#bco-pdp-lshapedesk .bcopdp-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px; }

#bco-pdp-lshapedesk .bcopdp-pillar {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 20px;
  text-align: center;
  transition: all 0.25s ease; }

#bco-pdp-lshapedesk .bcopdp-pillar:hover {
  transform: translateY(-2px);
  border-color: var(--bco-teal);
  box-shadow: 0 10px 22px -10px rgba(36, 54, 101, 0.15); }

#bco-pdp-lshapedesk .bcopdp-pillar-icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  margin-bottom: 12px; }

#bco-pdp-lshapedesk .bcopdp-pillar:nth-child(2) .bcopdp-pillar-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-lshapedesk .bcopdp-pillar:nth-child(3) .bcopdp-pillar-icon {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-lshapedesk .bcopdp-pillar-icon svg {
  width: 22px;
  height: 22px; }

#bco-pdp-lshapedesk .bcopdp-pillar h4 {
  font-family: var(--bco-display);
  font-size: 18px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-lshapedesk .bcopdp-pillar p {
  font-size: 13px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

/* -------- SIZE COMPARISON STRIP -------- */
#bco-pdp-lshapedesk .bcopdp-sizes {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-lshapedesk .bcopdp-sizes-head {
  margin-bottom: 24px;
  max-width: 620px; }

#bco-pdp-lshapedesk .bcopdp-sizes h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-lshapedesk .bcopdp-sizes h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-lshapedesk .bcopdp-sizes-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-lshapedesk .bcopdp-sizes-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px; }

#bco-pdp-lshapedesk .bcopdp-size-card {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 26px 24px 22px;
  text-align: center;
  transition: all 0.25s ease; }

#bco-pdp-lshapedesk .bcopdp-size-card:hover {
  transform: translateY(-2px);
  border-color: var(--bco-teal);
  box-shadow: 0 10px 22px -10px rgba(36, 54, 101, 0.15); }

#bco-pdp-lshapedesk .bcopdp-size-svg {
  width: 100%;
  max-width: 200px;
  height: 140px;
  margin: 0 auto 16px;
  display: block; }

#bco-pdp-lshapedesk .bcopdp-size-name {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.1;
  margin-bottom: 4px; }

#bco-pdp-lshapedesk .bcopdp-size-bases {
  font-size: 12px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 10px; }

#bco-pdp-lshapedesk .bcopdp-size-desc {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

/* -------- ORIENTATION STRIP (right-facing vs left-facing) -------- */
#bco-pdp-lshapedesk .bcopdp-orient {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-lshapedesk .bcopdp-orient-head {
  margin-bottom: 24px;
  max-width: 620px; }

#bco-pdp-lshapedesk .bcopdp-orient h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-lshapedesk .bcopdp-orient h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-lshapedesk .bcopdp-orient-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-lshapedesk .bcopdp-orient-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px; }

#bco-pdp-lshapedesk .bcopdp-orient-card {
  border-radius: 12px;
  padding: 24px 24px 20px;
  text-align: center;
  border: 1px solid; }

#bco-pdp-lshapedesk .bcopdp-orient-card:nth-child(1) {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-lshapedesk .bcopdp-orient-card:nth-child(2) {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-lshapedesk .bcopdp-orient-svg {
  width: 100%;
  max-width: 200px;
  height: 140px;
  margin: 0 auto 14px;
  display: block; }

#bco-pdp-lshapedesk .bcopdp-orient-name {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-lshapedesk .bcopdp-orient-card:nth-child(1) .bcopdp-orient-name {
  color: var(--bco-teal-deep); }

#bco-pdp-lshapedesk .bcopdp-orient-card:nth-child(2) .bcopdp-orient-name {
  color: var(--bco-blush-deep); }

#bco-pdp-lshapedesk .bcopdp-orient-desc {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

/* -------- HEIGHT OPTIONS STRIP -------- */
#bco-pdp-lshapedesk .bcopdp-heights {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-lshapedesk .bcopdp-heights-head {
  margin-bottom: 22px;
  max-width: 620px; }

#bco-pdp-lshapedesk .bcopdp-heights h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-lshapedesk .bcopdp-heights h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-lshapedesk .bcopdp-heights-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-lshapedesk .bcopdp-heights-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-lshapedesk .bcopdp-height-card {
  border-radius: 12px;
  padding: 22px 22px;
  border: 1px solid; }

#bco-pdp-lshapedesk .bcopdp-height-card:nth-child(1) {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-lshapedesk .bcopdp-height-card:nth-child(2) {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-lshapedesk .bcopdp-height-card:nth-child(3) {
  background: #eaf2fa;
  border-color: var(--bco-navy); }

#bco-pdp-lshapedesk .bcopdp-height-name {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.15;
  margin-bottom: 4px; }

#bco-pdp-lshapedesk .bcopdp-height-card:nth-child(1) .bcopdp-height-name {
  color: var(--bco-teal-deep); }

#bco-pdp-lshapedesk .bcopdp-height-card:nth-child(2) .bcopdp-height-name {
  color: var(--bco-blush-deep); }

#bco-pdp-lshapedesk .bcopdp-height-card:nth-child(3) .bcopdp-height-name {
  color: var(--bco-navy); }

#bco-pdp-lshapedesk .bcopdp-height-best-for {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 10px; }

#bco-pdp-lshapedesk .bcopdp-height-card:nth-child(1) .bcopdp-height-best-for {
  color: var(--bco-teal-deep);
  opacity: 0.8; }

#bco-pdp-lshapedesk .bcopdp-height-card:nth-child(2) .bcopdp-height-best-for {
  color: var(--bco-blush-deep);
  opacity: 0.85; }

#bco-pdp-lshapedesk .bcopdp-height-card:nth-child(3) .bcopdp-height-best-for {
  color: var(--bco-navy);
  opacity: 0.75; }

#bco-pdp-lshapedesk .bcopdp-height-desc {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

/* -------- SLOT SYSTEM REMINDER -------- */
#bco-pdp-lshapedesk .bcopdp-slots {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 36px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-lshapedesk .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-lshapedesk .bcopdp-slots h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-lshapedesk .bcopdp-slots h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-lshapedesk .bcopdp-slots-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.65;
  max-width: 680px;
  margin-bottom: 24px; }

#bco-pdp-lshapedesk .bcopdp-slot-key {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  padding-top: 4px; }

@media (max-width: 600px) {
  #bco-pdp-lshapedesk .bcopdp-slot-key {
    grid-template-columns: 1fr;
    gap: 12px; } }

#bco-pdp-lshapedesk .bcopdp-slot-key-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-size: 14px;
  color: var(--bco-ink); }

#bco-pdp-lshapedesk .bcopdp-slot-key-swatch {
  width: 28px;
  height: 28px;
  border-radius: 6px;
  flex-shrink: 0;
  border: 1.5px solid;
  margin-top: 1px; }

#bco-pdp-lshapedesk .bcopdp-slot-key-swatch.is-drawer {
  background: var(--bco-mint-soft);
  border-color: var(--bco-teal); }

#bco-pdp-lshapedesk .bcopdp-slot-key-swatch.is-paper {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush-deep); }

#bco-pdp-lshapedesk .bcopdp-slot-key-swatch.is-shelf {
  background: #f0f3f6;
  border-color: var(--bco-navy);
  border-style: dashed; }

#bco-pdp-lshapedesk .bcopdp-slot-key-text strong {
  font-weight: 700;
  color: var(--bco-navy); }

#bco-pdp-lshapedesk .bcopdp-slot-key-text-hint {
  font-size: 12.5px;
  color: var(--bco-muted);
  margin-top: 1px; }

/* -------- SPECS CARD -------- */
#bco-pdp-lshapedesk .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 18px 24px; }

#bco-pdp-lshapedesk .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-lshapedesk .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 6px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 13px; }

#bco-pdp-lshapedesk .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

#bco-pdp-lshapedesk .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 20px; }

#bco-pdp-lshapedesk .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 20px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-lshapedesk .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-lshapedesk .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd),
  #bco-pdp-lshapedesk .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; }
  #bco-pdp-lshapedesk .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-lshapedesk .bcopdp-specs-grid .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-lshapedesk .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-lshapedesk .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- WHAT'S INCLUDED -------- */
#bco-pdp-lshapedesk .bcopdp-included {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-lshapedesk .bcopdp-included-col {
  border-radius: 12px;
  padding: 24px 26px;
  border: 1px solid; }

#bco-pdp-lshapedesk .bcopdp-included-col.is-yes {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-lshapedesk .bcopdp-included-col.is-no {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-lshapedesk .bcopdp-included-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px; }

#bco-pdp-lshapedesk .bcopdp-included-badge {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

.is-yes .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-teal-deep);
  border: 1px solid var(--bco-mint); }

.is-no .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-blush-deep);
  border: 1px solid var(--bco-blush); }

#bco-pdp-lshapedesk .bcopdp-included-badge svg {
  width: 16px;
  height: 16px; }

#bco-pdp-lshapedesk .bcopdp-included-head h4 {
  font-family: var(--bco-display);
  font-size: 19px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.2; }

.is-yes .bcopdp-included-head h4 {
  color: var(--bco-teal-deep); }

.is-no .bcopdp-included-head h4 {
  color: var(--bco-blush-deep); }

#bco-pdp-lshapedesk .bcopdp-included-list li {
  font-size: 14px;
  color: var(--bco-ink);
  line-height: 1.5;
  padding: 5px 0;
  display: flex;
  align-items: flex-start;
  gap: 8px; }

#bco-pdp-lshapedesk .bcopdp-included-list li::before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  margin-top: 9px;
  flex-shrink: 0; }

.is-yes .bcopdp-included-list li::before {
  background: var(--bco-teal-deep); }

.is-no .bcopdp-included-list li::before {
  background: var(--bco-blush-deep); }

#bco-pdp-lshapedesk .bcopdp-included-list li a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-lshapedesk .bcopdp-included-list li a:hover {
  color: var(--bco-teal-deep); }

/* -------- PAIR-IT-WITH (3 cards) -------- */
#bco-pdp-lshapedesk .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-lshapedesk .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-lshapedesk .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-lshapedesk .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-lshapedesk .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-lshapedesk .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-lshapedesk .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-lshapedesk .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-lshapedesk .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-lshapedesk .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-lshapedesk .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-lshapedesk .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-lshapedesk .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-lshapedesk .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-lshapedesk .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- FAQ ACCORDION -------- */
#bco-pdp-lshapedesk .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-lshapedesk .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-lshapedesk .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-lshapedesk .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-lshapedesk .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-lshapedesk .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-lshapedesk .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-lshapedesk .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-lshapedesk .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-lshapedesk .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-lshapedesk .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-lshapedesk .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-lshapedesk .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

/* -------- STRAIGHT DESK CALLOUT (cross-sell back to 4–10 ft desk) -------- */
#bco-pdp-lshapedesk .bcopdp-straight {
  display: flex;
  align-items: center;
  gap: 22px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 14px;
  padding: 22px 28px;
  text-decoration: none;
  color: inherit;
  transition: all 0.25s ease; }

#bco-pdp-lshapedesk .bcopdp-straight:hover {
  border-color: var(--bco-teal);
  transform: translateY(-2px);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.18); }

#bco-pdp-lshapedesk .bcopdp-straight-icon {
  width: 56px;
  height: 56px;
  border-radius: 12px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

#bco-pdp-lshapedesk .bcopdp-straight-icon svg {
  width: 30px;
  height: 30px; }

#bco-pdp-lshapedesk .bcopdp-straight-text {
  flex: 1;
  min-width: 0; }

#bco-pdp-lshapedesk .bcopdp-straight-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  margin-bottom: 4px; }

#bco-pdp-lshapedesk .bcopdp-straight h4 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-lshapedesk .bcopdp-straight h4 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-lshapedesk .bcopdp-straight p {
  font-size: 14px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-lshapedesk .bcopdp-straight-arrow {
  flex-shrink: 0;
  color: var(--bco-teal-deep);
  font-size: 20px;
  font-weight: 700;
  transition: transform 0.25s ease; }

#bco-pdp-lshapedesk .bcopdp-straight:hover .bcopdp-straight-arrow {
  transform: translateX(4px); }

@media (max-width: 640px) {
  #bco-pdp-lshapedesk .bcopdp-straight {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
    padding: 22px;
    text-align: left; }
  #bco-pdp-lshapedesk .bcopdp-straight-arrow {
    display: none; } }

/* -------- PLANNING CTA -------- */
#bco-pdp-lshapedesk .bcopdp-plan-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-lshapedesk .bcopdp-plan-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-lshapedesk .bcopdp-plan-text {
  flex: 1;
  min-width: 240px;
  position: relative;
  z-index: 1; }

#bco-pdp-lshapedesk .bcopdp-plan-cta h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-lshapedesk .bcopdp-plan-cta h3 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-lshapedesk .bcopdp-plan-cta p {
  font-size: 14.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-lshapedesk .bcopdp-plan-buttons {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  flex-wrap: wrap; }

#bco-pdp-lshapedesk .bcopdp-plan-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 22px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1; }

#bco-pdp-lshapedesk .bcopdp-plan-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- ASSEMBLY + WARRANTY FOOTER -------- */
#bco-pdp-lshapedesk .bcopdp-footer-blocks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-lshapedesk .bcopdp-footer-block {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 26px;
  display: flex;
  align-items: flex-start;
  gap: 14px; }

#bco-pdp-lshapedesk .bcopdp-footer-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

#bco-pdp-lshapedesk .bcopdp-footer-block:nth-child(2) .bcopdp-footer-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-lshapedesk .bcopdp-footer-icon svg {
  width: 20px;
  height: 20px; }

#bco-pdp-lshapedesk .bcopdp-footer-block h4 {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  margin-bottom: 4px; }

#bco-pdp-lshapedesk .bcopdp-footer-block p {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 8px; }

#bco-pdp-lshapedesk .bcopdp-footer-block-links {
  display: flex;
  gap: 14px;
  flex-wrap: wrap; }

#bco-pdp-lshapedesk .bcopdp-footer-block a {
  font-size: 12px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  text-decoration: none;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid currentColor;
  padding-bottom: 1px;
  line-height: 1.4; }

#bco-pdp-lshapedesk .bcopdp-footer-block a:hover {
  color: var(--bco-navy); }

/* -------- RESPONSIVE -------- */
@media (max-width: 768px) {
  #bco-pdp-lshapedesk > section,
  #bco-pdp-lshapedesk > div[class^="bcopdp-"],
  #bco-pdp-lshapedesk > a[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-lshapedesk .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-lshapedesk .bcopdp-video {
    padding: 24px 22px; }
  #bco-pdp-lshapedesk .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-lshapedesk .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-lshapedesk .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-lshapedesk .bcopdp-pillars {
    grid-template-columns: 1fr; }
  #bco-pdp-lshapedesk .bcopdp-sizes {
    padding: 26px 22px; }
  #bco-pdp-lshapedesk .bcopdp-orient {
    padding: 26px 22px; }
  #bco-pdp-lshapedesk .bcopdp-orient-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-lshapedesk .bcopdp-heights {
    padding: 26px 22px; }
  #bco-pdp-lshapedesk .bcopdp-heights-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-lshapedesk .bcopdp-slots {
    padding: 26px 22px; }
  #bco-pdp-lshapedesk .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-lshapedesk .bcopdp-included {
    grid-template-columns: 1fr; }
  #bco-pdp-lshapedesk .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-lshapedesk .bcopdp-pairs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-lshapedesk .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-lshapedesk .bcopdp-plan-cta {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-lshapedesk .bcopdp-plan-buttons {
    width: 100%; }
  #bco-pdp-lshapedesk .bcopdp-plan-btn {
    flex: 1;
    justify-content: center; }
  #bco-pdp-lshapedesk .bcopdp-footer-blocks {
    grid-template-columns: 1fr; } }

@media (max-width: 480px) {
  #bco-pdp-lshapedesk .bcopdp-sizes-grid {
    grid-template-columns: 1fr; } }

/* --- End Corner L-Shape Craft Desk --- */
/* ============================================================
   Craft Desk (4/5/8/10)
   ID: #bco-pdp-craftdesk
   ============================================================ */
#bco-pdp-craftdesk {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-craftdesk *, #bco-pdp-craftdesk *::before, #bco-pdp-craftdesk *::after {
  box-sizing: border-box; }

#bco-pdp-craftdesk h2, #bco-pdp-craftdesk h3, #bco-pdp-craftdesk h4, #bco-pdp-craftdesk p, #bco-pdp-craftdesk ul, #bco-pdp-craftdesk li, #bco-pdp-craftdesk table {
  margin: 0;
  padding: 0; }

#bco-pdp-craftdesk ul {
  list-style: none; }

#bco-pdp-craftdesk > section,
#bco-pdp-craftdesk > div[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-craftdesk > section:last-child,
#bco-pdp-craftdesk > div[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-craftdesk .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-craftdesk .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-craftdesk .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-craftdesk .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-craftdesk .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-craftdesk .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-craftdesk .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftdesk .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

/* -------- PRODUCT DEMO VIDEO -------- */
#bco-pdp-craftdesk .bcopdp-video {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-craftdesk .bcopdp-video-head {
  margin-bottom: 22px;
  max-width: 620px; }

#bco-pdp-craftdesk .bcopdp-video-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 12px; }

#bco-pdp-craftdesk .bcopdp-video h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-craftdesk .bcopdp-video h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftdesk .bcopdp-video-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

#bco-pdp-craftdesk .bcopdp-video-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 12px;
  overflow: hidden;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  box-shadow: 0 14px 32px -16px rgba(36, 54, 101, 0.25); }

#bco-pdp-craftdesk .bcopdp-video-frame iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block; }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-craftdesk .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-craftdesk .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-craftdesk .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-craftdesk .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-craftdesk .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-craftdesk .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-craftdesk .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftdesk .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

/* -------- THREE-PILLAR STRIP -------- */
#bco-pdp-craftdesk .bcopdp-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px; }

#bco-pdp-craftdesk .bcopdp-pillar {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 20px;
  text-align: center;
  transition: all 0.25s ease; }

#bco-pdp-craftdesk .bcopdp-pillar:hover {
  transform: translateY(-2px);
  border-color: var(--bco-teal);
  box-shadow: 0 10px 22px -10px rgba(36, 54, 101, 0.15); }

#bco-pdp-craftdesk .bcopdp-pillar-icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  margin-bottom: 12px; }

#bco-pdp-craftdesk .bcopdp-pillar:nth-child(2) .bcopdp-pillar-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-craftdesk .bcopdp-pillar:nth-child(3) .bcopdp-pillar-icon {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-craftdesk .bcopdp-pillar-icon svg {
  width: 22px;
  height: 22px; }

#bco-pdp-craftdesk .bcopdp-pillar h4 {
  font-family: var(--bco-display);
  font-size: 18px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-craftdesk .bcopdp-pillar p {
  font-size: 13px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

/* -------- SIZE COMPARISON STRIP -------- */
#bco-pdp-craftdesk .bcopdp-sizes {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-craftdesk .bcopdp-sizes-head {
  margin-bottom: 24px;
  max-width: 620px; }

#bco-pdp-craftdesk .bcopdp-sizes h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-craftdesk .bcopdp-sizes h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftdesk .bcopdp-sizes-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-craftdesk .bcopdp-sizes-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px; }

#bco-pdp-craftdesk .bcopdp-size-card {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 20px 20px;
  text-align: center;
  transition: all 0.25s ease; }

#bco-pdp-craftdesk .bcopdp-size-card:hover {
  transform: translateY(-2px);
  border-color: var(--bco-teal);
  box-shadow: 0 10px 22px -10px rgba(36, 54, 101, 0.15); }

#bco-pdp-craftdesk .bcopdp-size-svg {
  width: 100%;
  max-width: 140px;
  height: 56px;
  margin: 0 auto 14px;
  display: block; }

#bco-pdp-craftdesk .bcopdp-size-name {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.1;
  margin-bottom: 4px; }

#bco-pdp-craftdesk .bcopdp-size-bases {
  font-size: 12px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 10px; }

#bco-pdp-craftdesk .bcopdp-size-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.5; }

/* -------- HEIGHT OPTIONS STRIP -------- */
#bco-pdp-craftdesk .bcopdp-heights {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-craftdesk .bcopdp-heights-head {
  margin-bottom: 22px;
  max-width: 620px; }

#bco-pdp-craftdesk .bcopdp-heights h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-craftdesk .bcopdp-heights h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftdesk .bcopdp-heights-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-craftdesk .bcopdp-heights-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-craftdesk .bcopdp-height-card {
  border-radius: 12px;
  padding: 22px 22px;
  border: 1px solid; }

#bco-pdp-craftdesk .bcopdp-height-card:nth-child(1) {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-craftdesk .bcopdp-height-card:nth-child(2) {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-craftdesk .bcopdp-height-card:nth-child(3) {
  background: #eaf2fa;
  border-color: var(--bco-navy); }

#bco-pdp-craftdesk .bcopdp-height-name {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.15;
  margin-bottom: 4px; }

#bco-pdp-craftdesk .bcopdp-height-card:nth-child(1) .bcopdp-height-name {
  color: var(--bco-teal-deep); }

#bco-pdp-craftdesk .bcopdp-height-card:nth-child(2) .bcopdp-height-name {
  color: var(--bco-blush-deep); }

#bco-pdp-craftdesk .bcopdp-height-card:nth-child(3) .bcopdp-height-name {
  color: var(--bco-navy); }

#bco-pdp-craftdesk .bcopdp-height-best-for {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 10px; }

#bco-pdp-craftdesk .bcopdp-height-card:nth-child(1) .bcopdp-height-best-for {
  color: var(--bco-teal-deep);
  opacity: 0.8; }

#bco-pdp-craftdesk .bcopdp-height-card:nth-child(2) .bcopdp-height-best-for {
  color: var(--bco-blush-deep);
  opacity: 0.85; }

#bco-pdp-craftdesk .bcopdp-height-card:nth-child(3) .bcopdp-height-best-for {
  color: var(--bco-navy);
  opacity: 0.75; }

#bco-pdp-craftdesk .bcopdp-height-desc {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

/* -------- SLOT SYSTEM DIAGRAM -------- */
#bco-pdp-craftdesk .bcopdp-slots {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 36px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-craftdesk .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-craftdesk .bcopdp-slots h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-craftdesk .bcopdp-slots h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftdesk .bcopdp-slots-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.65;
  max-width: 680px;
  margin-bottom: 28px; }

#bco-pdp-craftdesk .bcopdp-slot-diagram {
  background: #faf6f1;
  border-radius: 12px;
  padding: 32px 24px 24px;
  margin-bottom: 28px; }

#bco-pdp-craftdesk .bcopdp-slot-svg {
  width: 100%;
  max-width: 680px;
  height: auto;
  margin: 0 auto 8px;
  display: block; }

#bco-pdp-craftdesk .bcopdp-slot-svg-caption {
  text-align: center;
  font-size: 12px;
  font-style: italic;
  color: var(--bco-muted);
  margin: 0 auto 20px;
  max-width: 480px;
  line-height: 1.5; }

#bco-pdp-craftdesk .bcopdp-slot-key {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  padding-top: 20px;
  border-top: 1px solid #e8e2da; }

@media (max-width: 600px) {
  #bco-pdp-craftdesk .bcopdp-slot-key {
    grid-template-columns: 1fr;
    gap: 12px; } }

#bco-pdp-craftdesk .bcopdp-slot-key-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-size: 14px;
  color: var(--bco-ink); }

#bco-pdp-craftdesk .bcopdp-slot-key-swatch {
  width: 28px;
  height: 28px;
  border-radius: 6px;
  flex-shrink: 0;
  border: 1.5px solid;
  margin-top: 1px; }

#bco-pdp-craftdesk .bcopdp-slot-key-swatch.is-drawer {
  background: var(--bco-mint-soft);
  border-color: var(--bco-teal); }

#bco-pdp-craftdesk .bcopdp-slot-key-swatch.is-paper {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush-deep); }

#bco-pdp-craftdesk .bcopdp-slot-key-swatch.is-shelf {
  background: #f0f3f6;
  border-color: var(--bco-navy);
  border-style: dashed; }

#bco-pdp-craftdesk .bcopdp-slot-key-text strong {
  font-weight: 700;
  color: var(--bco-navy); }

#bco-pdp-craftdesk .bcopdp-slot-key-text-hint {
  font-size: 12.5px;
  color: var(--bco-muted);
  margin-top: 1px; }

/* -------- SPECS CARD -------- */
#bco-pdp-craftdesk .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 18px 24px; }

#bco-pdp-craftdesk .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-craftdesk .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 6px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 13px; }

#bco-pdp-craftdesk .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

#bco-pdp-craftdesk .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 20px; }

#bco-pdp-craftdesk .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 20px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-craftdesk .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-craftdesk .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd),
  #bco-pdp-craftdesk .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; }
  #bco-pdp-craftdesk .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-craftdesk .bcopdp-specs-grid .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-craftdesk .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-craftdesk .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- WHAT'S INCLUDED -------- */
#bco-pdp-craftdesk .bcopdp-included {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-craftdesk .bcopdp-included-col {
  border-radius: 12px;
  padding: 24px 26px;
  border: 1px solid; }

#bco-pdp-craftdesk .bcopdp-included-col.is-yes {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-craftdesk .bcopdp-included-col.is-no {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-craftdesk .bcopdp-included-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px; }

#bco-pdp-craftdesk .bcopdp-included-badge {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

.is-yes .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-teal-deep);
  border: 1px solid var(--bco-mint); }

.is-no .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-blush-deep);
  border: 1px solid var(--bco-blush); }

#bco-pdp-craftdesk .bcopdp-included-badge svg {
  width: 16px;
  height: 16px; }

#bco-pdp-craftdesk .bcopdp-included-head h4 {
  font-family: var(--bco-display);
  font-size: 19px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.2; }

.is-yes .bcopdp-included-head h4 {
  color: var(--bco-teal-deep); }

.is-no .bcopdp-included-head h4 {
  color: var(--bco-blush-deep); }

#bco-pdp-craftdesk .bcopdp-included-list li {
  font-size: 14px;
  color: var(--bco-ink);
  line-height: 1.5;
  padding: 5px 0;
  display: flex;
  align-items: flex-start;
  gap: 8px; }

#bco-pdp-craftdesk .bcopdp-included-list li::before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  margin-top: 9px;
  flex-shrink: 0; }

.is-yes .bcopdp-included-list li::before {
  background: var(--bco-teal-deep); }

.is-no .bcopdp-included-list li::before {
  background: var(--bco-blush-deep); }

#bco-pdp-craftdesk .bcopdp-included-list li a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-craftdesk .bcopdp-included-list li a:hover {
  color: var(--bco-teal-deep); }

/* -------- PAIR-IT-WITH (3 cards) -------- */
#bco-pdp-craftdesk .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-craftdesk .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-craftdesk .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftdesk .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-craftdesk .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-craftdesk .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-craftdesk .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-craftdesk .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-craftdesk .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-craftdesk .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-craftdesk .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-craftdesk .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-craftdesk .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-craftdesk .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-craftdesk .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- FAQ ACCORDION -------- */
#bco-pdp-craftdesk .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-craftdesk .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-craftdesk .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftdesk .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-craftdesk .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-craftdesk .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-craftdesk .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-craftdesk .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-craftdesk .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-craftdesk .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-craftdesk .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-craftdesk .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-craftdesk .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

/* -------- L-SHAPE CALLOUT (cross-sell to corner desk) -------- */
#bco-pdp-craftdesk .bcopdp-lshape {
  display: flex;
  align-items: center;
  gap: 22px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 14px;
  padding: 22px 28px;
  text-decoration: none;
  color: inherit;
  transition: all 0.25s ease; }

#bco-pdp-craftdesk .bcopdp-lshape:hover {
  border-color: var(--bco-teal);
  transform: translateY(-2px);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.18); }

#bco-pdp-craftdesk .bcopdp-lshape-icon {
  width: 56px;
  height: 56px;
  border-radius: 12px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

#bco-pdp-craftdesk .bcopdp-lshape-icon svg {
  width: 30px;
  height: 30px; }

#bco-pdp-craftdesk .bcopdp-lshape-text {
  flex: 1;
  min-width: 0; }

#bco-pdp-craftdesk .bcopdp-lshape-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  margin-bottom: 4px; }

#bco-pdp-craftdesk .bcopdp-lshape h4 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-craftdesk .bcopdp-lshape h4 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftdesk .bcopdp-lshape p {
  font-size: 14px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-craftdesk .bcopdp-lshape-arrow {
  flex-shrink: 0;
  color: var(--bco-teal-deep);
  font-size: 20px;
  font-weight: 700;
  transition: transform 0.25s ease; }

#bco-pdp-craftdesk .bcopdp-lshape:hover .bcopdp-lshape-arrow {
  transform: translateX(4px); }

@media (max-width: 640px) {
  #bco-pdp-craftdesk .bcopdp-lshape {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
    padding: 22px;
    text-align: left; }
  #bco-pdp-craftdesk .bcopdp-lshape-arrow {
    display: none; } }

/* -------- PLANNING CTA -------- */
#bco-pdp-craftdesk .bcopdp-plan-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-craftdesk .bcopdp-plan-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-craftdesk .bcopdp-plan-text {
  flex: 1;
  min-width: 240px;
  position: relative;
  z-index: 1; }

#bco-pdp-craftdesk .bcopdp-plan-cta h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-craftdesk .bcopdp-plan-cta h3 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-craftdesk .bcopdp-plan-cta p {
  font-size: 14.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-craftdesk .bcopdp-plan-buttons {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  flex-wrap: wrap; }

#bco-pdp-craftdesk .bcopdp-plan-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 22px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1; }

#bco-pdp-craftdesk .bcopdp-plan-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- ASSEMBLY + WARRANTY FOOTER -------- */
#bco-pdp-craftdesk .bcopdp-footer-blocks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-craftdesk .bcopdp-footer-block {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 26px;
  display: flex;
  align-items: flex-start;
  gap: 14px; }

#bco-pdp-craftdesk .bcopdp-footer-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

#bco-pdp-craftdesk .bcopdp-footer-block:nth-child(2) .bcopdp-footer-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-craftdesk .bcopdp-footer-icon svg {
  width: 20px;
  height: 20px; }

#bco-pdp-craftdesk .bcopdp-footer-block h4 {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  margin-bottom: 4px; }

#bco-pdp-craftdesk .bcopdp-footer-block p {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 8px; }

#bco-pdp-craftdesk .bcopdp-footer-block-links {
  display: flex;
  gap: 14px;
  flex-wrap: wrap; }

#bco-pdp-craftdesk .bcopdp-footer-block a {
  font-size: 12px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  text-decoration: none;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid currentColor;
  padding-bottom: 1px;
  line-height: 1.4; }

#bco-pdp-craftdesk .bcopdp-footer-block a:hover {
  color: var(--bco-navy); }

/* -------- RESPONSIVE -------- */
@media (max-width: 768px) {
  #bco-pdp-craftdesk > section,
  #bco-pdp-craftdesk > div[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-craftdesk .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-craftdesk .bcopdp-video {
    padding: 24px 22px; }
  #bco-pdp-craftdesk .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-craftdesk .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-craftdesk .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-craftdesk .bcopdp-pillars {
    grid-template-columns: 1fr; }
  #bco-pdp-craftdesk .bcopdp-sizes {
    padding: 26px 22px; }
  #bco-pdp-craftdesk .bcopdp-sizes-grid {
    grid-template-columns: repeat(2, 1fr); }
  #bco-pdp-craftdesk .bcopdp-heights {
    padding: 26px 22px; }
  #bco-pdp-craftdesk .bcopdp-heights-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-craftdesk .bcopdp-slots {
    padding: 26px 22px; }
  #bco-pdp-craftdesk .bcopdp-slot-diagram {
    padding: 22px 16px 16px; }
  #bco-pdp-craftdesk .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-craftdesk .bcopdp-included {
    grid-template-columns: 1fr; }
  #bco-pdp-craftdesk .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-craftdesk .bcopdp-pairs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-craftdesk .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-craftdesk .bcopdp-plan-cta {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-craftdesk .bcopdp-plan-buttons {
    width: 100%; }
  #bco-pdp-craftdesk .bcopdp-plan-btn {
    flex: 1;
    justify-content: center; }
  #bco-pdp-craftdesk .bcopdp-footer-blocks {
    grid-template-columns: 1fr; } }

@media (max-width: 480px) {
  #bco-pdp-craftdesk .bcopdp-sizes-grid {
    grid-template-columns: 1fr; } }

/* --- End Craft Desk (4/5/8/10) --- */
/* ============================================================
   Craft Island - Customize
   ID: #bco-pdp-craftislandcustom
   ============================================================ */
#bco-pdp-craftislandcustom {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-craftislandcustom *, #bco-pdp-craftislandcustom *::before, #bco-pdp-craftislandcustom *::after {
  box-sizing: border-box; }

#bco-pdp-craftislandcustom h2, #bco-pdp-craftislandcustom h3, #bco-pdp-craftislandcustom h4, #bco-pdp-craftislandcustom p, #bco-pdp-craftislandcustom ul, #bco-pdp-craftislandcustom li, #bco-pdp-craftislandcustom table {
  margin: 0;
  padding: 0; }

#bco-pdp-craftislandcustom ul {
  list-style: none; }

#bco-pdp-craftislandcustom > section,
#bco-pdp-craftislandcustom > div[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-craftislandcustom > section:last-child,
#bco-pdp-craftislandcustom > div[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-craftislandcustom .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-craftislandcustom .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-craftislandcustom .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-craftislandcustom .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-craftislandcustom .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-craftislandcustom .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-craftislandcustom .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandcustom .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

/* -------- PRODUCT DEMO VIDEO -------- */
#bco-pdp-craftislandcustom .bcopdp-video {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-craftislandcustom .bcopdp-video-head {
  margin-bottom: 22px;
  max-width: 620px; }

#bco-pdp-craftislandcustom .bcopdp-video-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 12px; }

#bco-pdp-craftislandcustom .bcopdp-video h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-craftislandcustom .bcopdp-video h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandcustom .bcopdp-video-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

#bco-pdp-craftislandcustom .bcopdp-video-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 12px;
  overflow: hidden;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  box-shadow: 0 14px 32px -16px rgba(36, 54, 101, 0.25); }

#bco-pdp-craftislandcustom .bcopdp-video-frame iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block; }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-craftislandcustom .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-craftislandcustom .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-craftislandcustom .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-craftislandcustom .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-craftislandcustom .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-craftislandcustom .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-craftislandcustom .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandcustom .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

/* -------- THREE-PILLAR STRIP -------- */
#bco-pdp-craftislandcustom .bcopdp-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px; }

#bco-pdp-craftislandcustom .bcopdp-pillar {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 20px;
  text-align: center;
  transition: all 0.25s ease; }

#bco-pdp-craftislandcustom .bcopdp-pillar:hover {
  transform: translateY(-2px);
  border-color: var(--bco-teal);
  box-shadow: 0 10px 22px -10px rgba(36, 54, 101, 0.15); }

#bco-pdp-craftislandcustom .bcopdp-pillar-icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  margin-bottom: 12px; }

#bco-pdp-craftislandcustom .bcopdp-pillar:nth-child(2) .bcopdp-pillar-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-craftislandcustom .bcopdp-pillar:nth-child(3) .bcopdp-pillar-icon {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-craftislandcustom .bcopdp-pillar-icon svg {
  width: 22px;
  height: 22px; }

#bco-pdp-craftislandcustom .bcopdp-pillar h4 {
  font-family: var(--bco-display);
  font-size: 18px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-craftislandcustom .bcopdp-pillar p {
  font-size: 13px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

/* -------- SLOT SYSTEM DIAGRAM (adapted for Craft Island) -------- */
#bco-pdp-craftislandcustom .bcopdp-slots {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 36px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-craftislandcustom .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-craftislandcustom .bcopdp-slots h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-craftislandcustom .bcopdp-slots h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandcustom .bcopdp-slots-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.65;
  max-width: 680px;
  margin-bottom: 28px; }

#bco-pdp-craftislandcustom .bcopdp-slot-diagram {
  background: #faf6f1;
  border-radius: 12px;
  padding: 32px 24px 24px;
  margin-bottom: 28px; }

#bco-pdp-craftislandcustom .bcopdp-slot-svg {
  width: 100%;
  max-width: 540px;
  height: auto;
  margin: 0 auto 8px;
  display: block; }

#bco-pdp-craftislandcustom .bcopdp-slot-svg-caption {
  text-align: center;
  font-size: 12px;
  font-style: italic;
  color: var(--bco-muted);
  margin: 0 auto 20px;
  max-width: 480px;
  line-height: 1.5; }

#bco-pdp-craftislandcustom .bcopdp-slot-key {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  padding-top: 20px;
  border-top: 1px solid #e8e2da; }

@media (max-width: 600px) {
  #bco-pdp-craftislandcustom .bcopdp-slot-key {
    grid-template-columns: 1fr;
    gap: 12px; } }

#bco-pdp-craftislandcustom .bcopdp-slot-key-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-size: 14px;
  color: var(--bco-ink); }

#bco-pdp-craftislandcustom .bcopdp-slot-key-swatch {
  width: 28px;
  height: 28px;
  border-radius: 6px;
  flex-shrink: 0;
  border: 1.5px solid;
  margin-top: 1px; }

#bco-pdp-craftislandcustom .bcopdp-slot-key-swatch.is-drawer {
  background: var(--bco-mint-soft);
  border-color: var(--bco-teal); }

#bco-pdp-craftislandcustom .bcopdp-slot-key-swatch.is-paper {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush-deep); }

#bco-pdp-craftislandcustom .bcopdp-slot-key-swatch.is-shelf {
  background: #f0f3f6;
  border-color: var(--bco-navy);
  border-style: dashed; }

#bco-pdp-craftislandcustom .bcopdp-slot-key-text strong {
  font-weight: 700;
  color: var(--bco-navy); }

#bco-pdp-craftislandcustom .bcopdp-slot-key-text-hint {
  font-size: 12.5px;
  color: var(--bco-muted);
  margin-top: 1px; }

/* Slot count caption + table */
#bco-pdp-craftislandcustom .bcopdp-slot-caption {
  font-family: var(--bco-display);
  font-size: 18px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  margin-bottom: 10px; }

#bco-pdp-craftislandcustom .bcopdp-slot-caption em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandcustom .bcopdp-slot-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: 12px;
  border: 1px solid var(--bco-border); }

#bco-pdp-craftislandcustom .bcopdp-slot-table {
  width: 100%;
  min-width: 480px;
  border-collapse: collapse;
  font-size: 14px;
  background: var(--bco-bg-white); }

#bco-pdp-craftislandcustom .bcopdp-slot-table thead th {
  background: var(--bco-mint-soft);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  padding: 14px 16px;
  text-align: center;
  border-bottom: 1px solid var(--bco-mint); }

#bco-pdp-craftislandcustom .bcopdp-slot-table thead th:first-child {
  text-align: left;
  color: var(--bco-navy); }

#bco-pdp-craftislandcustom .bcopdp-slot-table tbody td {
  padding: 13px 16px;
  border-bottom: 1px solid var(--bco-border);
  text-align: center;
  color: var(--bco-ink); }

#bco-pdp-craftislandcustom .bcopdp-slot-table tbody td:first-child {
  text-align: left;
  font-weight: 600;
  color: var(--bco-navy); }

#bco-pdp-craftislandcustom .bcopdp-slot-table tbody tr:last-child td {
  border-bottom: none; }

#bco-pdp-craftislandcustom .bcopdp-slot-table tbody tr:hover td {
  background: var(--bco-blush-wash); }

#bco-pdp-craftislandcustom .bcopdp-slot-num {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1; }

#bco-pdp-craftislandcustom .bcopdp-slot-unit {
  font-size: 11px;
  color: var(--bco-muted);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-left: 2px; }

#bco-pdp-craftislandcustom .bcopdp-slot-example {
  margin-top: 20px;
  padding: 16px 22px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 10px;
  font-size: 14px;
  color: var(--bco-ink);
  line-height: 1.65; }

#bco-pdp-craftislandcustom .bcopdp-slot-example strong {
  color: var(--bco-navy);
  font-weight: 700; }

/* -------- SPECS CARD (grouped, tightened) -------- */
#bco-pdp-craftislandcustom .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 18px 24px; }

#bco-pdp-craftislandcustom .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-craftislandcustom .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 6px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 13px; }

/* Remove bottom border from the last 2 rows (bottom of the 2-column grid) */
#bco-pdp-craftislandcustom .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

#bco-pdp-craftislandcustom .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 20px; }

#bco-pdp-craftislandcustom .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 20px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-craftislandcustom .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd),
  #bco-pdp-craftislandcustom .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; }
  #bco-pdp-craftislandcustom .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-craftislandcustom .bcopdp-specs-grid .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-craftislandcustom .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-craftislandcustom .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- WHAT'S INCLUDED -------- */
#bco-pdp-craftislandcustom .bcopdp-included {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-craftislandcustom .bcopdp-included-col {
  border-radius: 12px;
  padding: 24px 26px;
  border: 1px solid; }

#bco-pdp-craftislandcustom .bcopdp-included-col.is-yes {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-craftislandcustom .bcopdp-included-col.is-no {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-craftislandcustom .bcopdp-included-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px; }

#bco-pdp-craftislandcustom .bcopdp-included-badge {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

.is-yes .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-teal-deep);
  border: 1px solid var(--bco-mint); }

.is-no .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-blush-deep);
  border: 1px solid var(--bco-blush); }

#bco-pdp-craftislandcustom .bcopdp-included-badge svg {
  width: 16px;
  height: 16px; }

#bco-pdp-craftislandcustom .bcopdp-included-head h4 {
  font-family: var(--bco-display);
  font-size: 19px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.2; }

.is-yes .bcopdp-included-head h4 {
  color: var(--bco-teal-deep); }

.is-no .bcopdp-included-head h4 {
  color: var(--bco-blush-deep); }

#bco-pdp-craftislandcustom .bcopdp-included-list li {
  font-size: 14px;
  color: var(--bco-ink);
  line-height: 1.5;
  padding: 5px 0;
  display: flex;
  align-items: flex-start;
  gap: 8px; }

#bco-pdp-craftislandcustom .bcopdp-included-list li::before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  margin-top: 9px;
  flex-shrink: 0; }

.is-yes .bcopdp-included-list li::before {
  background: var(--bco-teal-deep); }

.is-no .bcopdp-included-list li::before {
  background: var(--bco-blush-deep); }

#bco-pdp-craftislandcustom .bcopdp-included-list li a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-craftislandcustom .bcopdp-included-list li a:hover {
  color: var(--bco-teal-deep); }

/* -------- PULLED REVIEW -------- */
#bco-pdp-craftislandcustom .bcopdp-review {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 36px 40px;
  position: relative;
  box-shadow: 0 6px 18px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-craftislandcustom .bcopdp-review::before {
  content: '\201C';
  font-family: var(--bco-display);
  font-style: italic;
  font-size: 96px;
  color: var(--bco-blush);
  position: absolute;
  top: 14px;
  left: 24px;
  line-height: 1;
  pointer-events: none; }

#bco-pdp-craftislandcustom .bcopdp-review-stars {
  color: var(--bco-blush-deep);
  font-size: 14px;
  letter-spacing: 0.12em;
  margin-bottom: 12px;
  position: relative;
  z-index: 1; }

#bco-pdp-craftislandcustom .bcopdp-review-text {
  font-family: var(--bco-display);
  font-size: 19px;
  font-style: italic;
  font-weight: 500;
  color: var(--bco-ink);
  line-height: 1.55;
  margin-bottom: 18px;
  padding-top: 18px;
  letter-spacing: -0.005em;
  position: relative;
  z-index: 1; }

#bco-pdp-craftislandcustom .bcopdp-review-attribution {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 14px; }

#bco-pdp-craftislandcustom .bcopdp-review-author {
  font-weight: 700;
  color: var(--bco-navy); }

#bco-pdp-craftislandcustom .bcopdp-review-context {
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandcustom .bcopdp-review-divider {
  color: var(--bco-muted); }

/* -------- PAIR-IT-WITH (3 cards) -------- */
#bco-pdp-craftislandcustom .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-craftislandcustom .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-craftislandcustom .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandcustom .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-craftislandcustom .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-craftislandcustom .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-craftislandcustom .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-craftislandcustom .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-craftislandcustom .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-craftislandcustom .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-craftislandcustom .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-craftislandcustom .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-craftislandcustom .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-craftislandcustom .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-craftislandcustom .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- FAQ ACCORDION -------- */
#bco-pdp-craftislandcustom .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-craftislandcustom .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-craftislandcustom .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandcustom .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-craftislandcustom .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-craftislandcustom .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-craftislandcustom .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-craftislandcustom .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-craftislandcustom .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-craftislandcustom .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-craftislandcustom .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-craftislandcustom .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-craftislandcustom .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

/* -------- KITS CTA (replaces "customize CTA" — points the OTHER way) -------- */
#bco-pdp-craftislandcustom .bcopdp-kits-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-craftislandcustom .bcopdp-kits-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-craftislandcustom .bcopdp-kits-text {
  flex: 1;
  min-width: 240px;
  position: relative;
  z-index: 1; }

#bco-pdp-craftislandcustom .bcopdp-kits-cta h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-craftislandcustom .bcopdp-kits-cta h3 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-craftislandcustom .bcopdp-kits-cta p {
  font-size: 14.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-craftislandcustom .bcopdp-kits-buttons {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  flex-wrap: wrap; }

#bco-pdp-craftislandcustom .bcopdp-kits-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 22px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1; }

#bco-pdp-craftislandcustom .bcopdp-kits-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- ASSEMBLY + WARRANTY FOOTER -------- */
#bco-pdp-craftislandcustom .bcopdp-footer-blocks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-craftislandcustom .bcopdp-footer-block {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 26px;
  display: flex;
  align-items: flex-start;
  gap: 14px; }

#bco-pdp-craftislandcustom .bcopdp-footer-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

#bco-pdp-craftislandcustom .bcopdp-footer-block:nth-child(2) .bcopdp-footer-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-craftislandcustom .bcopdp-footer-icon svg {
  width: 20px;
  height: 20px; }

#bco-pdp-craftislandcustom .bcopdp-footer-block h4 {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  margin-bottom: 4px; }

#bco-pdp-craftislandcustom .bcopdp-footer-block p {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 8px; }

#bco-pdp-craftislandcustom .bcopdp-footer-block-links {
  display: flex;
  gap: 14px;
  flex-wrap: wrap; }

#bco-pdp-craftislandcustom .bcopdp-footer-block a {
  font-size: 12px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  text-decoration: none;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid currentColor;
  padding-bottom: 1px;
  line-height: 1.4; }

#bco-pdp-craftislandcustom .bcopdp-footer-block a:hover {
  color: var(--bco-navy); }

/* -------- RESPONSIVE -------- */
@media (max-width: 768px) {
  #bco-pdp-craftislandcustom > section,
  #bco-pdp-craftislandcustom > div[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-craftislandcustom .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-craftislandcustom .bcopdp-video {
    padding: 24px 22px; }
  #bco-pdp-craftislandcustom .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-craftislandcustom .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-craftislandcustom .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-craftislandcustom .bcopdp-pillars {
    grid-template-columns: 1fr; }
  #bco-pdp-craftislandcustom .bcopdp-slots {
    padding: 26px 22px; }
  #bco-pdp-craftislandcustom .bcopdp-slot-diagram {
    padding: 22px 16px 16px; }
  #bco-pdp-craftislandcustom .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-craftislandcustom .bcopdp-included {
    grid-template-columns: 1fr; }
  #bco-pdp-craftislandcustom .bcopdp-review {
    padding: 28px 26px; }
  #bco-pdp-craftislandcustom .bcopdp-review::before {
    font-size: 72px;
    left: 14px;
    top: 8px; }
  #bco-pdp-craftislandcustom .bcopdp-review-text {
    font-size: 17px; }
  #bco-pdp-craftislandcustom .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-craftislandcustom .bcopdp-pairs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-craftislandcustom .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-craftislandcustom .bcopdp-kits-cta {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-craftislandcustom .bcopdp-kits-buttons {
    width: 100%; }
  #bco-pdp-craftislandcustom .bcopdp-kits-btn {
    flex: 1;
    justify-content: center; }
  #bco-pdp-craftislandcustom .bcopdp-footer-blocks {
    grid-template-columns: 1fr; } }

/* --- End Craft Island - Customize --- */
/* ============================================================
   Craft Island Kit - Bar Height
   ID: #bco-pdp-craftislandbar
   ============================================================ */
#bco-pdp-craftislandbar {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-craftislandbar *, #bco-pdp-craftislandbar *::before, #bco-pdp-craftislandbar *::after {
  box-sizing: border-box; }

#bco-pdp-craftislandbar h2, #bco-pdp-craftislandbar h3, #bco-pdp-craftislandbar h4, #bco-pdp-craftislandbar p, #bco-pdp-craftislandbar ul, #bco-pdp-craftislandbar li, #bco-pdp-craftislandbar table {
  margin: 0;
  padding: 0; }

#bco-pdp-craftislandbar ul {
  list-style: none; }

#bco-pdp-craftislandbar > section,
#bco-pdp-craftislandbar > div[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-craftislandbar > section:last-child,
#bco-pdp-craftislandbar > div[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-craftislandbar .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-craftislandbar .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-craftislandbar .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-craftislandbar .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-craftislandbar .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-craftislandbar .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-craftislandbar .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandbar .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

/* -------- PRODUCT DEMO VIDEO -------- */
#bco-pdp-craftislandbar .bcopdp-video {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-craftislandbar .bcopdp-video-head {
  margin-bottom: 22px;
  max-width: 620px; }

#bco-pdp-craftislandbar .bcopdp-video-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 12px; }

#bco-pdp-craftislandbar .bcopdp-video h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-craftislandbar .bcopdp-video h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandbar .bcopdp-video-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

#bco-pdp-craftislandbar .bcopdp-video-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 12px;
  overflow: hidden;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  box-shadow: 0 14px 32px -16px rgba(36, 54, 101, 0.25); }

#bco-pdp-craftislandbar .bcopdp-video-frame iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block; }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-craftislandbar .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-craftislandbar .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-craftislandbar .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-craftislandbar .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-craftislandbar .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-craftislandbar .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-craftislandbar .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandbar .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

/* -------- COLUMN OPTIONS PICKER (3 cards showing the 3 storage options) -------- */
#bco-pdp-craftislandbar .bcopdp-options {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 36px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-craftislandbar .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-craftislandbar .bcopdp-options h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-craftislandbar .bcopdp-options h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandbar .bcopdp-options-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.65;
  max-width: 680px;
  margin-bottom: 28px; }

#bco-pdp-craftislandbar .bcopdp-options-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-bottom: 28px; }

#bco-pdp-craftislandbar .bcopdp-option-card {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px;
  transition: all 0.25s ease;
  display: flex;
  flex-direction: column; }

#bco-pdp-craftislandbar .bcopdp-option-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 14px 28px -14px rgba(36, 54, 101, 0.18); }

#bco-pdp-craftislandbar .bcopdp-option-icon-wrap {
  width: 100%;
  max-width: 110px;
  aspect-ratio: 1 / 2;
  background: #faf6f1;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
  padding: 8px 8px 10px;
  overflow: hidden;
  position: relative; }

#bco-pdp-craftislandbar .bcopdp-option-icon-wrap svg {
  width: 100%;
  height: 100%;
  display: block; }

#bco-pdp-craftislandbar .bcopdp-option-name {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 4px;
  text-align: center; }

#bco-pdp-craftislandbar .bcopdp-option-tagline {
  font-size: 13px;
  color: var(--bco-teal-deep);
  font-weight: 600;
  letter-spacing: 0.02em;
  margin-bottom: 16px;
  text-align: center;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-craftislandbar .bcopdp-option-card:nth-child(2) .bcopdp-option-tagline {
  color: var(--bco-navy); }

#bco-pdp-craftislandbar .bcopdp-option-card:nth-child(3) .bcopdp-option-tagline {
  color: var(--bco-blush-deep); }

#bco-pdp-craftislandbar .bcopdp-option-includes {
  font-size: 13px;
  color: var(--bco-ink);
  line-height: 1.55;
  margin-bottom: 14px; }

#bco-pdp-craftislandbar .bcopdp-option-includes strong {
  display: block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-muted);
  margin-bottom: 4px; }

#bco-pdp-craftislandbar .bcopdp-option-best {
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 12.5px;
  color: var(--bco-ink);
  line-height: 1.45;
  margin-top: auto; }

#bco-pdp-craftislandbar .bcopdp-option-best strong {
  display: block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  margin-bottom: 4px; }

#bco-pdp-craftislandbar .bcopdp-option-card:nth-child(2) .bcopdp-option-best {
  background: #eaf2fa;
  border-color: var(--bco-navy); }

#bco-pdp-craftislandbar .bcopdp-option-card:nth-child(2) .bcopdp-option-best strong {
  color: var(--bco-navy); }

#bco-pdp-craftislandbar .bcopdp-option-card:nth-child(3) .bcopdp-option-best {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-craftislandbar .bcopdp-option-card:nth-child(3) .bcopdp-option-best strong {
  color: var(--bco-blush-deep); }

/* Mix-and-match example */
#bco-pdp-craftislandbar .bcopdp-mix-example {
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 12px;
  padding: 20px 24px;
  margin-top: 8px; }

#bco-pdp-craftislandbar .bcopdp-mix-label {
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  margin-bottom: 6px; }

#bco-pdp-craftislandbar .bcopdp-mix-title {
  font-family: var(--bco-display);
  font-size: 19px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 12px; }

#bco-pdp-craftislandbar .bcopdp-mix-title em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandbar .bcopdp-mix-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px; }

#bco-pdp-craftislandbar .bcopdp-mix-col {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  border-radius: 8px;
  padding: 12px;
  text-align: center; }

#bco-pdp-craftislandbar .bcopdp-mix-col-num {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-muted);
  margin-bottom: 4px; }

#bco-pdp-craftislandbar .bcopdp-mix-col-pick {
  font-family: var(--bco-display);
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2; }

/* -------- SPECS CARD (flat dense list) -------- */
#bco-pdp-craftislandbar .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 18px 24px; }

#bco-pdp-craftislandbar .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-craftislandbar .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 6px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 13px; }

#bco-pdp-craftislandbar .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

#bco-pdp-craftislandbar .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 20px; }

#bco-pdp-craftislandbar .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 20px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-craftislandbar .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd),
  #bco-pdp-craftislandbar .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; }
  #bco-pdp-craftislandbar .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-craftislandbar .bcopdp-specs-grid .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-craftislandbar .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-craftislandbar .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- PAIR-IT-WITH (3 cards) -------- */
#bco-pdp-craftislandbar .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-craftislandbar .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-craftislandbar .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandbar .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-craftislandbar .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-craftislandbar .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-craftislandbar .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-craftislandbar .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-craftislandbar .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-craftislandbar .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-craftislandbar .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-craftislandbar .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-craftislandbar .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-craftislandbar .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-craftislandbar .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- FAQ ACCORDION -------- */
#bco-pdp-craftislandbar .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-craftislandbar .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-craftislandbar .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandbar .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-craftislandbar .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-craftislandbar .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-craftislandbar .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-craftislandbar .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-craftislandbar .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-craftislandbar .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-craftislandbar .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-craftislandbar .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-craftislandbar .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

/* -------- DUAL CTA (Bar Kit + Customize) -------- */
#bco-pdp-craftislandbar .bcopdp-dual-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden; }

#bco-pdp-craftislandbar .bcopdp-dual-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-craftislandbar .bcopdp-dual-cta-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  position: relative;
  z-index: 1; }

#bco-pdp-craftislandbar .bcopdp-dual-cta-card {
  border-radius: 10px;
  padding: 18px 20px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  display: flex;
  flex-direction: column; }

#bco-pdp-craftislandbar .bcopdp-dual-cta-eyebrow {
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-blush);
  margin-bottom: 6px; }

#bco-pdp-craftislandbar .bcopdp-dual-cta h4 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-craftislandbar .bcopdp-dual-cta h4 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-craftislandbar .bcopdp-dual-cta-card p {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0 0 14px 0; }

#bco-pdp-craftislandbar .bcopdp-dual-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 18px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1;
  align-self: flex-start;
  margin-top: auto; }

#bco-pdp-craftislandbar .bcopdp-dual-cta-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- ASSEMBLY + WARRANTY FOOTER -------- */
#bco-pdp-craftislandbar .bcopdp-footer-blocks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-craftislandbar .bcopdp-footer-block {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 26px;
  display: flex;
  align-items: flex-start;
  gap: 14px; }

#bco-pdp-craftislandbar .bcopdp-footer-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

#bco-pdp-craftislandbar .bcopdp-footer-block:nth-child(2) .bcopdp-footer-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-craftislandbar .bcopdp-footer-icon svg {
  width: 20px;
  height: 20px; }

#bco-pdp-craftislandbar .bcopdp-footer-block h4 {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  margin-bottom: 4px; }

#bco-pdp-craftislandbar .bcopdp-footer-block p {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 8px; }

#bco-pdp-craftislandbar .bcopdp-footer-block a {
  font-size: 12px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  text-decoration: none;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid currentColor;
  padding-bottom: 1px; }

#bco-pdp-craftislandbar .bcopdp-footer-block a:hover {
  color: var(--bco-navy); }

/* -------- RESPONSIVE -------- */
@media (max-width: 768px) {
  #bco-pdp-craftislandbar > section,
  #bco-pdp-craftislandbar > div[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-craftislandbar .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-craftislandbar .bcopdp-video {
    padding: 24px 22px; }
  #bco-pdp-craftislandbar .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-craftislandbar .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-craftislandbar .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-craftislandbar .bcopdp-options {
    padding: 26px 22px; }
  #bco-pdp-craftislandbar .bcopdp-options-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-craftislandbar .bcopdp-mix-list {
    grid-template-columns: repeat(2, 1fr); }
  #bco-pdp-craftislandbar .bcopdp-specs {
    padding: 18px 20px; }
  #bco-pdp-craftislandbar .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-craftislandbar .bcopdp-pairs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-craftislandbar .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-craftislandbar .bcopdp-dual-cta {
    padding: 26px 24px; }
  #bco-pdp-craftislandbar .bcopdp-dual-cta-grid {
    grid-template-columns: 1fr;
    gap: 14px; }
  #bco-pdp-craftislandbar .bcopdp-footer-blocks {
    grid-template-columns: 1fr; } }

/* --- End Craft Island Kit - Bar Height --- */
/* ============================================================
   Craft Island Kit - Counter Height
   ID: #bco-pdp-craftislandcounter
   ============================================================ */
#bco-pdp-craftislandcounter {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-craftislandcounter *, #bco-pdp-craftislandcounter *::before, #bco-pdp-craftislandcounter *::after {
  box-sizing: border-box; }

#bco-pdp-craftislandcounter h2, #bco-pdp-craftislandcounter h3, #bco-pdp-craftislandcounter h4, #bco-pdp-craftislandcounter p, #bco-pdp-craftislandcounter ul, #bco-pdp-craftislandcounter li, #bco-pdp-craftislandcounter table {
  margin: 0;
  padding: 0; }

#bco-pdp-craftislandcounter ul {
  list-style: none; }

#bco-pdp-craftislandcounter > section,
#bco-pdp-craftislandcounter > div[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-craftislandcounter > section:last-child,
#bco-pdp-craftislandcounter > div[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-craftislandcounter .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-craftislandcounter .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-craftislandcounter .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-craftislandcounter .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-craftislandcounter .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-craftislandcounter .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-craftislandcounter .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandcounter .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

/* -------- PRODUCT DEMO VIDEO -------- */
#bco-pdp-craftislandcounter .bcopdp-video {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-craftislandcounter .bcopdp-video-head {
  margin-bottom: 22px;
  max-width: 620px; }

#bco-pdp-craftislandcounter .bcopdp-video-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 12px; }

#bco-pdp-craftislandcounter .bcopdp-video h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-craftislandcounter .bcopdp-video h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandcounter .bcopdp-video-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

#bco-pdp-craftislandcounter .bcopdp-video-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 12px;
  overflow: hidden;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  box-shadow: 0 14px 32px -16px rgba(36, 54, 101, 0.25); }

#bco-pdp-craftislandcounter .bcopdp-video-frame iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block; }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-craftislandcounter .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-craftislandcounter .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-craftislandcounter .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-craftislandcounter .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-craftislandcounter .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-craftislandcounter .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-craftislandcounter .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandcounter .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

/* -------- COLUMN OPTIONS PICKER (3 cards showing the 3 storage options) -------- */
#bco-pdp-craftislandcounter .bcopdp-options {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 36px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-craftislandcounter .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-craftislandcounter .bcopdp-options h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-craftislandcounter .bcopdp-options h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandcounter .bcopdp-options-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.65;
  max-width: 680px;
  margin-bottom: 28px; }

#bco-pdp-craftislandcounter .bcopdp-options-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-bottom: 28px; }

#bco-pdp-craftislandcounter .bcopdp-option-card {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px;
  transition: all 0.25s ease;
  display: flex;
  flex-direction: column; }

#bco-pdp-craftislandcounter .bcopdp-option-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 14px 28px -14px rgba(36, 54, 101, 0.18); }

#bco-pdp-craftislandcounter .bcopdp-option-icon-wrap {
  width: 100%;
  max-width: 110px;
  aspect-ratio: 1 / 2;
  background: #faf6f1;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
  padding: 8px 8px 10px;
  overflow: hidden;
  position: relative; }

#bco-pdp-craftislandcounter .bcopdp-option-icon-wrap svg {
  width: 100%;
  height: 100%;
  display: block; }

#bco-pdp-craftislandcounter .bcopdp-option-name {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 4px;
  text-align: center; }

#bco-pdp-craftislandcounter .bcopdp-option-tagline {
  font-size: 13px;
  color: var(--bco-teal-deep);
  font-weight: 600;
  letter-spacing: 0.02em;
  margin-bottom: 16px;
  text-align: center;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-craftislandcounter .bcopdp-option-card:nth-child(2) .bcopdp-option-tagline {
  color: var(--bco-navy); }

#bco-pdp-craftislandcounter .bcopdp-option-card:nth-child(3) .bcopdp-option-tagline {
  color: var(--bco-blush-deep); }

#bco-pdp-craftislandcounter .bcopdp-option-includes {
  font-size: 13px;
  color: var(--bco-ink);
  line-height: 1.55;
  margin-bottom: 14px; }

#bco-pdp-craftislandcounter .bcopdp-option-includes strong {
  display: block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-muted);
  margin-bottom: 4px; }

#bco-pdp-craftislandcounter .bcopdp-option-best {
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 12.5px;
  color: var(--bco-ink);
  line-height: 1.45;
  margin-top: auto; }

#bco-pdp-craftislandcounter .bcopdp-option-best strong {
  display: block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  margin-bottom: 4px; }

#bco-pdp-craftislandcounter .bcopdp-option-card:nth-child(2) .bcopdp-option-best {
  background: #eaf2fa;
  border-color: var(--bco-navy); }

#bco-pdp-craftislandcounter .bcopdp-option-card:nth-child(2) .bcopdp-option-best strong {
  color: var(--bco-navy); }

#bco-pdp-craftislandcounter .bcopdp-option-card:nth-child(3) .bcopdp-option-best {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-craftislandcounter .bcopdp-option-card:nth-child(3) .bcopdp-option-best strong {
  color: var(--bco-blush-deep); }

/* Mix-and-match example */
#bco-pdp-craftislandcounter .bcopdp-mix-example {
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 12px;
  padding: 20px 24px;
  margin-top: 8px; }

#bco-pdp-craftislandcounter .bcopdp-mix-label {
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  margin-bottom: 6px; }

#bco-pdp-craftislandcounter .bcopdp-mix-title {
  font-family: var(--bco-display);
  font-size: 19px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 12px; }

#bco-pdp-craftislandcounter .bcopdp-mix-title em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandcounter .bcopdp-mix-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px; }

#bco-pdp-craftislandcounter .bcopdp-mix-col {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  border-radius: 8px;
  padding: 12px;
  text-align: center; }

#bco-pdp-craftislandcounter .bcopdp-mix-col-num {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-muted);
  margin-bottom: 4px; }

#bco-pdp-craftislandcounter .bcopdp-mix-col-pick {
  font-family: var(--bco-display);
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2; }

/* -------- SPECS CARD (flat dense list) -------- */
#bco-pdp-craftislandcounter .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 18px 24px; }

#bco-pdp-craftislandcounter .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-craftislandcounter .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 6px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 13px; }

#bco-pdp-craftislandcounter .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

#bco-pdp-craftislandcounter .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 20px; }

#bco-pdp-craftislandcounter .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 20px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-craftislandcounter .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd),
  #bco-pdp-craftislandcounter .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; }
  #bco-pdp-craftislandcounter .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-craftislandcounter .bcopdp-specs-grid .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-craftislandcounter .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-craftislandcounter .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- PAIR-IT-WITH (3 cards) -------- */
#bco-pdp-craftislandcounter .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-craftislandcounter .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-craftislandcounter .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandcounter .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-craftislandcounter .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-craftislandcounter .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-craftislandcounter .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-craftislandcounter .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-craftislandcounter .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-craftislandcounter .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-craftislandcounter .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-craftislandcounter .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-craftislandcounter .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-craftislandcounter .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-craftislandcounter .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- FAQ ACCORDION -------- */
#bco-pdp-craftislandcounter .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-craftislandcounter .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-craftislandcounter .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-craftislandcounter .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-craftislandcounter .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-craftislandcounter .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-craftislandcounter .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-craftislandcounter .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-craftislandcounter .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-craftislandcounter .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-craftislandcounter .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-craftislandcounter .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-craftislandcounter .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

/* -------- DUAL CTA (Bar Kit + Customize) -------- */
#bco-pdp-craftislandcounter .bcopdp-dual-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden; }

#bco-pdp-craftislandcounter .bcopdp-dual-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-craftislandcounter .bcopdp-dual-cta-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  position: relative;
  z-index: 1; }

#bco-pdp-craftislandcounter .bcopdp-dual-cta-card {
  border-radius: 10px;
  padding: 18px 20px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  display: flex;
  flex-direction: column; }

#bco-pdp-craftislandcounter .bcopdp-dual-cta-eyebrow {
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-blush);
  margin-bottom: 6px; }

#bco-pdp-craftislandcounter .bcopdp-dual-cta h4 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-craftislandcounter .bcopdp-dual-cta h4 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-craftislandcounter .bcopdp-dual-cta-card p {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0 0 14px 0; }

#bco-pdp-craftislandcounter .bcopdp-dual-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 18px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1;
  align-self: flex-start;
  margin-top: auto; }

#bco-pdp-craftislandcounter .bcopdp-dual-cta-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- ASSEMBLY + WARRANTY FOOTER -------- */
#bco-pdp-craftislandcounter .bcopdp-footer-blocks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-craftislandcounter .bcopdp-footer-block {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 26px;
  display: flex;
  align-items: flex-start;
  gap: 14px; }

#bco-pdp-craftislandcounter .bcopdp-footer-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

#bco-pdp-craftislandcounter .bcopdp-footer-block:nth-child(2) .bcopdp-footer-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-craftislandcounter .bcopdp-footer-icon svg {
  width: 20px;
  height: 20px; }

#bco-pdp-craftislandcounter .bcopdp-footer-block h4 {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  margin-bottom: 4px; }

#bco-pdp-craftislandcounter .bcopdp-footer-block p {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 8px; }

#bco-pdp-craftislandcounter .bcopdp-footer-block a {
  font-size: 12px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  text-decoration: none;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid currentColor;
  padding-bottom: 1px; }

#bco-pdp-craftislandcounter .bcopdp-footer-block a:hover {
  color: var(--bco-navy); }

/* -------- RESPONSIVE -------- */
@media (max-width: 768px) {
  #bco-pdp-craftislandcounter > section,
  #bco-pdp-craftislandcounter > div[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-craftislandcounter .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-craftislandcounter .bcopdp-video {
    padding: 24px 22px; }
  #bco-pdp-craftislandcounter .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-craftislandcounter .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-craftislandcounter .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-craftislandcounter .bcopdp-options {
    padding: 26px 22px; }
  #bco-pdp-craftislandcounter .bcopdp-options-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-craftislandcounter .bcopdp-mix-list {
    grid-template-columns: repeat(2, 1fr); }
  #bco-pdp-craftislandcounter .bcopdp-specs {
    padding: 18px 20px; }
  #bco-pdp-craftislandcounter .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-craftislandcounter .bcopdp-pairs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-craftislandcounter .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-craftislandcounter .bcopdp-dual-cta {
    padding: 26px 24px; }
  #bco-pdp-craftislandcounter .bcopdp-dual-cta-grid {
    grid-template-columns: 1fr;
    gap: 14px; }
  #bco-pdp-craftislandcounter .bcopdp-footer-blocks {
    grid-template-columns: 1fr; } }

/* --- End Craft Island Kit - Counter Height --- */
/* ============================================================
   Cube for Bead Storage Solutions
   ID: #bco-pdp-beadcube
   ============================================================ */
#bco-pdp-beadcube {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-beadcube *, #bco-pdp-beadcube *::before, #bco-pdp-beadcube *::after {
  box-sizing: border-box; }

#bco-pdp-beadcube h2, #bco-pdp-beadcube h3, #bco-pdp-beadcube h4, #bco-pdp-beadcube p, #bco-pdp-beadcube ul, #bco-pdp-beadcube li, #bco-pdp-beadcube table {
  margin: 0;
  padding: 0; }

#bco-pdp-beadcube ul {
  list-style: none; }

#bco-pdp-beadcube > section,
#bco-pdp-beadcube > div[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-beadcube > section:last-child,
#bco-pdp-beadcube > div[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-beadcube .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-beadcube .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-beadcube .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-beadcube .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-beadcube .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-beadcube .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-beadcube .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-beadcube .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

#bco-pdp-beadcube .bcopdp-hero p a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-beadcube .bcopdp-hero p a:hover {
  color: var(--bco-teal-deep); }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-beadcube .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-beadcube .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-beadcube .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-beadcube .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-beadcube .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-beadcube .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-beadcube .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-beadcube .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-beadcube .bcopdp-feature p a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-beadcube .bcopdp-feature p a:hover {
  color: var(--bco-teal-deep); }

/* -------- THREE-PILLAR STRIP -------- */
#bco-pdp-beadcube .bcopdp-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px; }

#bco-pdp-beadcube .bcopdp-pillar {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 20px;
  text-align: center;
  transition: all 0.25s ease; }

#bco-pdp-beadcube .bcopdp-pillar:hover {
  transform: translateY(-2px);
  border-color: var(--bco-teal);
  box-shadow: 0 10px 22px -10px rgba(36, 54, 101, 0.15); }

#bco-pdp-beadcube .bcopdp-pillar-icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  margin-bottom: 12px; }

#bco-pdp-beadcube .bcopdp-pillar:nth-child(2) .bcopdp-pillar-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-beadcube .bcopdp-pillar:nth-child(3) .bcopdp-pillar-icon {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-beadcube .bcopdp-pillar-icon svg {
  width: 22px;
  height: 22px; }

#bco-pdp-beadcube .bcopdp-pillar h4 {
  font-family: var(--bco-display);
  font-size: 18px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-beadcube .bcopdp-pillar p {
  font-size: 13px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

/* -------- BLOCK 5b VARIANT: SIZE PICKER -------- */
#bco-pdp-beadcube .bcopdp-configs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 36px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-beadcube .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-beadcube .bcopdp-configs h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-beadcube .bcopdp-configs h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-beadcube .bcopdp-configs-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.65;
  max-width: 680px;
  margin-bottom: 28px; }

#bco-pdp-beadcube .bcopdp-configs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px; }

#bco-pdp-beadcube .bcopdp-configs-grid.is-two {
  grid-template-columns: repeat(2, 1fr); }

#bco-pdp-beadcube .bcopdp-config-card {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px;
  transition: all 0.25s ease;
  display: flex;
  flex-direction: column; }

#bco-pdp-beadcube .bcopdp-config-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 14px 28px -14px rgba(36, 54, 101, 0.18); }

#bco-pdp-beadcube .bcopdp-config-icon-wrap {
  width: 72px;
  height: 72px;
  border-radius: 16px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  margin-bottom: 18px; }

#bco-pdp-beadcube .bcopdp-config-card:nth-child(2) .bcopdp-config-icon-wrap {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-beadcube .bcopdp-config-icon-wrap svg {
  width: 36px;
  height: 36px; }

#bco-pdp-beadcube .bcopdp-config-name {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 4px; }

#bco-pdp-beadcube .bcopdp-config-name em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-beadcube .bcopdp-config-tagline {
  font-size: 13px;
  color: var(--bco-teal-deep);
  font-weight: 600;
  letter-spacing: 0.02em;
  margin-bottom: 14px; }

#bco-pdp-beadcube .bcopdp-config-desc {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 14px;
  flex: 1; }

#bco-pdp-beadcube .bcopdp-config-best {
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 12.5px;
  color: var(--bco-ink);
  line-height: 1.45; }

#bco-pdp-beadcube .bcopdp-config-best strong {
  display: block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  margin-bottom: 4px; }

#bco-pdp-beadcube .bcopdp-config-card:nth-child(2) .bcopdp-config-best {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-beadcube .bcopdp-config-card:nth-child(2) .bcopdp-config-best strong {
  color: var(--bco-blush-deep); }

/* -------- SPECS CARD (with grouped subheadings) -------- */
#bco-pdp-beadcube .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px; }

#bco-pdp-beadcube .bcopdp-specs h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 22px; }

#bco-pdp-beadcube .bcopdp-spec-group {
  margin-bottom: 28px; }

#bco-pdp-beadcube .bcopdp-spec-group:last-child {
  margin-bottom: 0; }

#bco-pdp-beadcube .bcopdp-spec-group-label {
  display: inline-block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  padding: 5px 12px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-beadcube .bcopdp-spec-group:nth-child(3) .bcopdp-spec-group-label {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-beadcube .bcopdp-spec-group:nth-child(4) .bcopdp-spec-group-label {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-beadcube .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-beadcube .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 11px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 14px; }

#bco-pdp-beadcube .bcopdp-spec-group .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

@media (max-width: 600px) {
  #bco-pdp-beadcube .bcopdp-spec-group .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-beadcube .bcopdp-spec-group .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-beadcube .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 24px; }

#bco-pdp-beadcube .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 24px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-beadcube .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd),
  #bco-pdp-beadcube .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; } }

#bco-pdp-beadcube .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-beadcube .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

#bco-pdp-beadcube .bcopdp-spec-figure {
  margin-top: 22px;
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  overflow: hidden;
  background: var(--bco-bg-white); }

#bco-pdp-beadcube .bcopdp-spec-figure img {
  display: block;
  width: 100%;
  height: auto; }

#bco-pdp-beadcube .bcopdp-spec-figure-caption {
  font-size: 12.5px;
  color: var(--bco-muted);
  text-align: center;
  padding: 10px 16px;
  border-top: 1px solid var(--bco-border);
  background: var(--bco-mint-soft); }

/* -------- WHAT'S INCLUDED -------- */
#bco-pdp-beadcube .bcopdp-included {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-beadcube .bcopdp-included-col {
  border-radius: 12px;
  padding: 24px 26px;
  border: 1px solid; }

#bco-pdp-beadcube .bcopdp-included-col.is-yes {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-beadcube .bcopdp-included-col.is-no {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-beadcube .bcopdp-included-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px; }

#bco-pdp-beadcube .bcopdp-included-badge {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

.is-yes .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-teal-deep);
  border: 1px solid var(--bco-mint); }

.is-no .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-blush-deep);
  border: 1px solid var(--bco-blush); }

#bco-pdp-beadcube .bcopdp-included-badge svg {
  width: 16px;
  height: 16px; }

#bco-pdp-beadcube .bcopdp-included-head h4 {
  font-family: var(--bco-display);
  font-size: 19px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.2; }

.is-yes .bcopdp-included-head h4 {
  color: var(--bco-teal-deep); }

.is-no .bcopdp-included-head h4 {
  color: var(--bco-blush-deep); }

#bco-pdp-beadcube .bcopdp-included-list li {
  font-size: 14px;
  color: var(--bco-ink);
  line-height: 1.5;
  padding: 5px 0;
  display: flex;
  align-items: flex-start;
  gap: 8px; }

#bco-pdp-beadcube .bcopdp-included-list li::before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  margin-top: 9px;
  flex-shrink: 0; }

.is-yes .bcopdp-included-list li::before {
  background: var(--bco-teal-deep); }

.is-no .bcopdp-included-list li::before {
  background: var(--bco-blush-deep); }

#bco-pdp-beadcube .bcopdp-included-list li a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-beadcube .bcopdp-included-list li a:hover {
  color: var(--bco-teal-deep); }

/* -------- PAIR-IT-WITH -------- */
#bco-pdp-beadcube .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-beadcube .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-beadcube .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-beadcube .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-beadcube .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-beadcube .bcopdp-pairs-grid.is-two {
  grid-template-columns: repeat(2, 1fr); }

#bco-pdp-beadcube .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-beadcube .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-beadcube .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-beadcube .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-beadcube .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-beadcube .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-beadcube .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-beadcube .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-beadcube .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-beadcube .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- FAQ ACCORDION -------- */
#bco-pdp-beadcube .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-beadcube .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-beadcube .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-beadcube .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-beadcube .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-beadcube .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-beadcube .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-beadcube .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-beadcube .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-beadcube .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-beadcube .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-beadcube .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-beadcube .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

/* -------- GO-BIGGER CTA (Block 12 variant) -------- */
#bco-pdp-beadcube .bcopdp-customize-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-beadcube .bcopdp-customize-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-beadcube .bcopdp-customize-text {
  flex: 1;
  min-width: 240px;
  position: relative;
  z-index: 1; }

#bco-pdp-beadcube .bcopdp-customize-cta h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-beadcube .bcopdp-customize-cta h3 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-beadcube .bcopdp-customize-cta p {
  font-size: 14.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-beadcube .bcopdp-customize-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 26px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1;
  flex-shrink: 0;
  position: relative;
  z-index: 1; }

#bco-pdp-beadcube .bcopdp-customize-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- ASSEMBLY + WARRANTY FOOTER -------- */
#bco-pdp-beadcube .bcopdp-footer-blocks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-beadcube .bcopdp-footer-block {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 26px;
  display: flex;
  align-items: flex-start;
  gap: 14px; }

#bco-pdp-beadcube .bcopdp-footer-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

#bco-pdp-beadcube .bcopdp-footer-block:nth-child(2) .bcopdp-footer-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-beadcube .bcopdp-footer-icon svg {
  width: 20px;
  height: 20px; }

#bco-pdp-beadcube .bcopdp-footer-block h4 {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  margin-bottom: 4px; }

#bco-pdp-beadcube .bcopdp-footer-block p {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 8px; }

#bco-pdp-beadcube .bcopdp-footer-block a {
  font-size: 12px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  text-decoration: none;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid currentColor;
  padding-bottom: 1px; }

#bco-pdp-beadcube .bcopdp-footer-block a:hover {
  color: var(--bco-navy); }

/* -------- LEGAL DISCLAIMER LINE -------- */
#bco-pdp-beadcube .bcopdp-disclaimer {
  font-size: 12px;
  color: var(--bco-muted);
  text-align: center;
  padding-top: 4px; }

/* -------- RESPONSIVE -------- */
@media (max-width: 768px) {
  #bco-pdp-beadcube > section,
  #bco-pdp-beadcube > div[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-beadcube .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-beadcube .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-beadcube .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-beadcube .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-beadcube .bcopdp-pillars {
    grid-template-columns: 1fr; }
  #bco-pdp-beadcube .bcopdp-configs {
    padding: 26px 22px; }
  #bco-pdp-beadcube .bcopdp-configs-grid,
  #bco-pdp-beadcube .bcopdp-configs-grid.is-two {
    grid-template-columns: 1fr; }
  #bco-pdp-beadcube .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-beadcube .bcopdp-included {
    grid-template-columns: 1fr; }
  #bco-pdp-beadcube .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-beadcube .bcopdp-pairs-grid,
  #bco-pdp-beadcube .bcopdp-pairs-grid.is-two {
    grid-template-columns: 1fr; }
  #bco-pdp-beadcube .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-beadcube .bcopdp-customize-cta {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-beadcube .bcopdp-customize-btn {
    width: 100%;
    justify-content: center; }
  #bco-pdp-beadcube .bcopdp-footer-blocks {
    grid-template-columns: 1fr; } }

/* --- End Cube for Bead Storage Solutions --- */
/* ============================================================
   Cutting Machine Cabinet
   ID: #bco-pdp-cuttingmachine
   ============================================================ */
#bco-pdp-cuttingmachine {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-cuttingmachine *, #bco-pdp-cuttingmachine *::before, #bco-pdp-cuttingmachine *::after {
  box-sizing: border-box; }

#bco-pdp-cuttingmachine h2, #bco-pdp-cuttingmachine h3, #bco-pdp-cuttingmachine h4, #bco-pdp-cuttingmachine p, #bco-pdp-cuttingmachine ul, #bco-pdp-cuttingmachine li, #bco-pdp-cuttingmachine table {
  margin: 0;
  padding: 0; }

#bco-pdp-cuttingmachine ul {
  list-style: none; }

#bco-pdp-cuttingmachine > section,
#bco-pdp-cuttingmachine > div[class^="bcopdp-"],
#bco-pdp-cuttingmachine > a[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-cuttingmachine > section:last-child,
#bco-pdp-cuttingmachine > div[class^="bcopdp-"]:last-child,
#bco-pdp-cuttingmachine > a[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-cuttingmachine .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-cuttingmachine .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-cuttingmachine .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-cuttingmachine .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-cuttingmachine .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-cuttingmachine .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-cuttingmachine .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cuttingmachine .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

#bco-pdp-cuttingmachine .bcopdp-hero p a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 700; }

#bco-pdp-cuttingmachine .bcopdp-hero p a:hover {
  color: var(--bco-teal-deep); }

/* -------- COMPATIBILITY STRIP (cutting machines) -------- */
#bco-pdp-cuttingmachine .bcopdp-machines {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 24px 28px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-cuttingmachine .bcopdp-machines-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  margin-bottom: 12px; }

#bco-pdp-cuttingmachine .bcopdp-machines-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center; }

#bco-pdp-cuttingmachine .bcopdp-machine-chip {
  display: inline-flex;
  align-items: center;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-navy);
  font-size: 13px;
  font-weight: 600;
  padding: 6px 14px;
  border-radius: 100px;
  line-height: 1.3; }

#bco-pdp-cuttingmachine .bcopdp-machines-more {
  font-size: 13px;
  color: var(--bco-muted);
  font-style: italic;
  align-self: center;
  padding: 0 8px; }

/* -------- HEADLINE FEATURE (slide-out shelf) -------- */
#bco-pdp-cuttingmachine .bcopdp-headline {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 36px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-cuttingmachine .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-cuttingmachine .bcopdp-headline h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-cuttingmachine .bcopdp-headline h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cuttingmachine .bcopdp-headline-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.65;
  max-width: 680px;
  margin-bottom: 24px; }

#bco-pdp-cuttingmachine .bcopdp-headline-diagram {
  background: #faf6f1;
  border-radius: 12px;
  padding: 28px 24px 22px; }

#bco-pdp-cuttingmachine .bcopdp-headline-photo {
  width: 100%;
  max-width: 560px;
  height: auto;
  margin: 0 auto 14px;
  display: block;
  border-radius: 10px;
  box-shadow: 0 14px 32px -16px rgba(36, 54, 101, 0.25); }

#bco-pdp-cuttingmachine .bcopdp-headline-states {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 8px; }

@media (max-width: 600px) {
  #bco-pdp-cuttingmachine .bcopdp-headline-states {
    grid-template-columns: 1fr; } }

#bco-pdp-cuttingmachine .bcopdp-headline-state {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 10px;
  font-size: 13.5px;
  color: var(--bco-ink);
  line-height: 1.5; }

#bco-pdp-cuttingmachine .bcopdp-headline-state strong {
  font-weight: 700;
  color: var(--bco-navy); }

#bco-pdp-cuttingmachine .bcopdp-headline-state-num {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: var(--bco-display);
  font-size: 16px;
  font-weight: 700;
  background: var(--bco-mint-soft);
  color: var(--bco-teal-deep);
  border: 1px solid var(--bco-mint); }

#bco-pdp-cuttingmachine .bcopdp-headline-state:nth-child(2) .bcopdp-headline-state-num {
  background: var(--bco-blush-wash);
  color: var(--bco-blush-deep);
  border-color: var(--bco-blush); }

/* -------- SIZE/HEIGHT MATRIX (4 configurations) -------- */
#bco-pdp-cuttingmachine .bcopdp-configs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-cuttingmachine .bcopdp-configs-head {
  margin-bottom: 24px;
  max-width: 660px; }

#bco-pdp-cuttingmachine .bcopdp-configs h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-cuttingmachine .bcopdp-configs h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cuttingmachine .bcopdp-configs-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-cuttingmachine .bcopdp-configs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px; }

#bco-pdp-cuttingmachine .bcopdp-config-card {
  border-radius: 12px;
  padding: 22px 22px 20px;
  border: 1px solid var(--bco-border);
  background: var(--bco-bg-white);
  transition: all 0.25s ease; }

#bco-pdp-cuttingmachine .bcopdp-config-card:hover {
  transform: translateY(-2px);
  border-color: var(--bco-teal);
  box-shadow: 0 10px 22px -10px rgba(36, 54, 101, 0.15); }

#bco-pdp-cuttingmachine .bcopdp-config-svg {
  width: 100%;
  max-width: 220px;
  height: 120px;
  margin: 0 auto 12px;
  display: block; }

#bco-pdp-cuttingmachine .bcopdp-config-name {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.15;
  margin-bottom: 4px;
  text-align: center; }

#bco-pdp-cuttingmachine .bcopdp-config-meta {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  margin-bottom: 12px;
  text-align: center; }

#bco-pdp-cuttingmachine .bcopdp-config-bundle {
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 10px;
  padding: 14px 16px; }

#bco-pdp-cuttingmachine .bcopdp-config-bundle-title {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  margin-bottom: 8px; }

#bco-pdp-cuttingmachine .bcopdp-config-bundle-list {
  list-style: none;
  padding: 0;
  margin: 0; }

#bco-pdp-cuttingmachine .bcopdp-config-bundle-list li {
  font-size: 13px;
  color: var(--bco-ink);
  line-height: 1.5;
  padding: 3px 0;
  display: flex;
  align-items: flex-start;
  gap: 8px; }

#bco-pdp-cuttingmachine .bcopdp-config-bundle-list li::before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--bco-teal-deep);
  margin-top: 8px;
  flex-shrink: 0; }

#bco-pdp-cuttingmachine .bcopdp-config-bundle-list li strong {
  font-weight: 700;
  color: var(--bco-navy); }

#bco-pdp-cuttingmachine .bcopdp-config-bundle-list li em {
  font-style: italic;
  color: var(--bco-blush-deep);
  font-size: 12px;
  display: block;
  margin-top: 1px; }

/* -------- BUILD YOUR OWN — SLOT REFERENCE -------- */
#bco-pdp-cuttingmachine .bcopdp-buildyourown {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-cuttingmachine .bcopdp-buildyourown-head {
  margin-bottom: 22px;
  max-width: 660px; }

#bco-pdp-cuttingmachine .bcopdp-buildyourown h2 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 10px; }

#bco-pdp-cuttingmachine .bcopdp-buildyourown h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cuttingmachine .bcopdp-buildyourown-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

/* Insert links — drawers, paper shelves, adjustable shelves */
#bco-pdp-cuttingmachine .bcopdp-inserts-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-bottom: 28px; }

@media (max-width: 700px) {
  #bco-pdp-cuttingmachine .bcopdp-inserts-grid {
    grid-template-columns: 1fr; } }

#bco-pdp-cuttingmachine .bcopdp-insert-link {
  display: grid;
  grid-template-columns: 48px 1fr auto;
  gap: 14px;
  align-items: center;
  padding: 14px 18px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 10px;
  text-decoration: none;
  color: inherit;
  transition: all 0.2s ease; }

#bco-pdp-cuttingmachine .bcopdp-insert-link:hover {
  transform: translateY(-2px);
  border-color: var(--bco-teal);
  box-shadow: 0 6px 14px -8px rgba(36, 54, 101, 0.2);
  background: var(--bco-bg-white); }

#bco-pdp-cuttingmachine .bcopdp-insert-link-icon {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

#bco-pdp-cuttingmachine .bcopdp-insert-link-icon svg {
  width: 24px;
  height: 24px; }

#bco-pdp-cuttingmachine .bcopdp-insert-link-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.15; }

#bco-pdp-cuttingmachine .bcopdp-insert-link-meta {
  font-size: 12px;
  color: var(--bco-muted);
  margin-top: 1px; }

#bco-pdp-cuttingmachine .bcopdp-insert-link-arrow {
  font-size: 18px;
  color: var(--bco-teal-deep);
  font-weight: 700;
  transition: transform 0.2s ease; }

#bco-pdp-cuttingmachine .bcopdp-insert-link:hover .bcopdp-insert-link-arrow {
  transform: translateX(3px); }

/* Slot table sub-heading */
#bco-pdp-cuttingmachine .bcopdp-slot-table-heading {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-cuttingmachine .bcopdp-slot-table-heading em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cuttingmachine .bcopdp-slot-table-intro {
  font-size: 14px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 14px;
  max-width: 640px; }

#bco-pdp-cuttingmachine .bcopdp-slot-table {
  background: #faf6f1;
  border-radius: 12px;
  padding: 8px;
  margin-bottom: 18px; }

#bco-pdp-cuttingmachine .bcopdp-slot-table-row {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr 1fr;
  gap: 8px;
  align-items: center;
  padding: 14px 16px;
  border-radius: 8px; }

#bco-pdp-cuttingmachine .bcopdp-slot-table-row.is-head {
  background: transparent;
  padding: 8px 16px 6px; }

#bco-pdp-cuttingmachine .bcopdp-slot-table-row.is-head > div {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-muted);
  text-align: center; }

#bco-pdp-cuttingmachine .bcopdp-slot-table-row.is-head > div:first-child {
  text-align: left; }

#bco-pdp-cuttingmachine .bcopdp-slot-table-row.is-data {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border); }

#bco-pdp-cuttingmachine .bcopdp-slot-table-row.is-data + .bcopdp-slot-table-row.is-data {
  margin-top: 6px; }

#bco-pdp-cuttingmachine .bcopdp-slot-config {
  font-family: var(--bco-display);
  font-size: 16px;
  font-weight: 600;
  color: var(--bco-navy);
  line-height: 1.25; }

#bco-pdp-cuttingmachine .bcopdp-slot-config-meta {
  display: block;
  font-family: 'Inter', sans-serif;
  font-size: 11px;
  font-weight: 500;
  color: var(--bco-muted);
  letter-spacing: 0.04em;
  margin-top: 1px; }

#bco-pdp-cuttingmachine .bcopdp-slot-cell {
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  color: var(--bco-navy);
  font-family: var(--bco-display);
  line-height: 1; }

#bco-pdp-cuttingmachine .bcopdp-slot-cell-mark {
  display: block;
  font-size: 10px;
  font-weight: 700;
  color: var(--bco-muted);
  letter-spacing: 0.08em;
  margin-top: 4px;
  font-family: 'Inter', sans-serif; }

#bco-pdp-cuttingmachine .bcopdp-slot-cell.is-empty {
  color: var(--bco-border); }

@media (max-width: 700px) {
  #bco-pdp-cuttingmachine .bcopdp-slot-table-row {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 6px;
    padding: 12px 10px; }
  #bco-pdp-cuttingmachine .bcopdp-slot-table-row.is-head {
    padding: 6px 10px 4px; }
  #bco-pdp-cuttingmachine .bcopdp-slot-config {
    font-size: 13px; }
  #bco-pdp-cuttingmachine .bcopdp-slot-config-meta {
    font-size: 10px; }
  #bco-pdp-cuttingmachine .bcopdp-slot-cell {
    font-size: 16px; } }

#bco-pdp-cuttingmachine .bcopdp-buildyourown-tip {
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 10px;
  padding: 14px 18px;
  font-size: 13.5px;
  color: var(--bco-ink);
  line-height: 1.55;
  display: flex;
  align-items: flex-start;
  gap: 10px; }

#bco-pdp-cuttingmachine .bcopdp-buildyourown-tip svg {
  width: 18px;
  height: 18px;
  color: var(--bco-teal-deep);
  flex-shrink: 0;
  margin-top: 1px; }

#bco-pdp-cuttingmachine .bcopdp-buildyourown-tip strong {
  font-weight: 700;
  color: var(--bco-navy); }

/* -------- DRAWER-BY-PURPOSE (mapping drawer height → supplies) -------- */
#bco-pdp-cuttingmachine .bcopdp-mapping {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-cuttingmachine .bcopdp-mapping-head {
  margin-bottom: 22px;
  max-width: 660px; }

#bco-pdp-cuttingmachine .bcopdp-mapping h2 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 10px; }

#bco-pdp-cuttingmachine .bcopdp-mapping h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cuttingmachine .bcopdp-mapping-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-cuttingmachine .bcopdp-mapping-rows {
  display: flex;
  flex-direction: column;
  gap: 14px; }

#bco-pdp-cuttingmachine .bcopdp-mapping-row {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 18px;
  align-items: center;
  padding: 16px 18px;
  border-radius: 12px;
  border: 1px solid; }

#bco-pdp-cuttingmachine .bcopdp-mapping-row.is-single {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-cuttingmachine .bcopdp-mapping-row.is-double {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-cuttingmachine .bcopdp-mapping-row.is-triple {
  background: #eaf2fa;
  border-color: var(--bco-navy); }

#bco-pdp-cuttingmachine .bcopdp-mapping-svg {
  width: 100px;
  height: 60px;
  flex-shrink: 0; }

#bco-pdp-cuttingmachine .bcopdp-mapping-name {
  font-family: var(--bco-display);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.15;
  margin-bottom: 2px;
  letter-spacing: -0.01em; }

#bco-pdp-cuttingmachine .bcopdp-mapping-row.is-single .bcopdp-mapping-name {
  color: var(--bco-teal-deep); }

#bco-pdp-cuttingmachine .bcopdp-mapping-row.is-double .bcopdp-mapping-name {
  color: var(--bco-blush-deep); }

#bco-pdp-cuttingmachine .bcopdp-mapping-row.is-triple .bcopdp-mapping-name {
  color: var(--bco-navy); }

#bco-pdp-cuttingmachine .bcopdp-mapping-meta {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  margin-bottom: 6px;
  opacity: 0.8; }

#bco-pdp-cuttingmachine .bcopdp-mapping-row.is-single .bcopdp-mapping-meta {
  color: var(--bco-teal-deep); }

#bco-pdp-cuttingmachine .bcopdp-mapping-row.is-double .bcopdp-mapping-meta {
  color: var(--bco-blush-deep); }

#bco-pdp-cuttingmachine .bcopdp-mapping-row.is-triple .bcopdp-mapping-meta {
  color: var(--bco-navy); }

#bco-pdp-cuttingmachine .bcopdp-mapping-supplies {
  font-size: 14px;
  color: var(--bco-ink);
  line-height: 1.55; }

#bco-pdp-cuttingmachine .bcopdp-mapping-supplies strong {
  font-weight: 700;
  color: var(--bco-navy); }

@media (max-width: 600px) {
  #bco-pdp-cuttingmachine .bcopdp-mapping-row {
    grid-template-columns: 1fr;
    gap: 10px; }
  #bco-pdp-cuttingmachine .bcopdp-mapping-svg {
    width: 80px;
    height: 48px; } }

/* -------- INCLUDED ACCESSORIES -------- */
#bco-pdp-cuttingmachine .bcopdp-accessories {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-cuttingmachine .bcopdp-accessories-head {
  margin-bottom: 22px;
  max-width: 660px; }

#bco-pdp-cuttingmachine .bcopdp-accessories h2 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 10px; }

#bco-pdp-cuttingmachine .bcopdp-accessories h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cuttingmachine .bcopdp-accessories-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-cuttingmachine .bcopdp-accessory-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-bottom: 18px; }

#bco-pdp-cuttingmachine .bcopdp-accessory-grid--single {
  grid-template-columns: 1fr; }

@media (max-width: 600px) {
  #bco-pdp-cuttingmachine .bcopdp-accessory-grid {
    grid-template-columns: 1fr; } }

/* -------- BUNDLE EXTRAS (4 accessories included with bundles) -------- */
#bco-pdp-cuttingmachine .bcopdp-bundle-extras {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-cuttingmachine .bcopdp-bundle-extras-head {
  margin-bottom: 22px;
  max-width: 660px; }

#bco-pdp-cuttingmachine .bcopdp-bundle-extras h2 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 10px; }

#bco-pdp-cuttingmachine .bcopdp-bundle-extras h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cuttingmachine .bcopdp-bundle-extras-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-cuttingmachine .bcopdp-bundle-extras-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  margin-bottom: 22px; }

@media (max-width: 600px) {
  #bco-pdp-cuttingmachine .bcopdp-bundle-extras-grid {
    grid-template-columns: 1fr; } }

#bco-pdp-cuttingmachine .bcopdp-bundle-extra {
  display: flex;
  flex-direction: column;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 12px;
  overflow: hidden; }

#bco-pdp-cuttingmachine .bcopdp-bundle-extra-photo {
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: var(--bco-bg-white);
  border-bottom: 1px solid var(--bco-mint); }

#bco-pdp-cuttingmachine .bcopdp-bundle-extra-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block; }

#bco-pdp-cuttingmachine .bcopdp-bundle-extra-text {
  padding: 14px 16px 16px; }

@media (max-width: 600px) {
  #bco-pdp-cuttingmachine .bcopdp-bundle-extra-photo {
    aspect-ratio: 16 / 10; } }

#bco-pdp-cuttingmachine .bcopdp-bundle-extra-name {
  font-family: var(--bco-display);
  font-size: 18px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-cuttingmachine .bcopdp-bundle-extra-desc {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.5; }

/* Vinyl-roll math callout */
#bco-pdp-cuttingmachine .bcopdp-vinyl-callout {
  background: linear-gradient(135deg, var(--bco-blush-wash) 0%, var(--bco-mint-soft) 100%);
  border: 1px solid var(--bco-blush);
  border-radius: 12px;
  padding: 20px;
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 22px;
  align-items: center; }

@media (max-width: 700px) {
  #bco-pdp-cuttingmachine .bcopdp-vinyl-callout {
    grid-template-columns: 1fr;
    gap: 18px; } }

#bco-pdp-cuttingmachine .bcopdp-vinyl-callout-photo {
  width: 180px;
  aspect-ratio: 1;
  border-radius: 10px;
  overflow: hidden;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-blush);
  flex-shrink: 0; }

@media (max-width: 700px) {
  #bco-pdp-cuttingmachine .bcopdp-vinyl-callout-photo {
    width: 100%;
    max-width: 280px;
    margin: 0 auto; } }

#bco-pdp-cuttingmachine .bcopdp-vinyl-callout-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block; }

#bco-pdp-cuttingmachine .bcopdp-vinyl-callout-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-blush-deep);
  margin-bottom: 6px; }

#bco-pdp-cuttingmachine .bcopdp-vinyl-callout h4 {
  font-family: var(--bco-display);
  font-size: 20px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.25;
  margin-bottom: 6px; }

#bco-pdp-cuttingmachine .bcopdp-vinyl-callout h4 em {
  font-style: italic;
  color: var(--bco-blush-deep);
  font-weight: 500; }

#bco-pdp-cuttingmachine .bcopdp-vinyl-callout p {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 14px; }

#bco-pdp-cuttingmachine .bcopdp-vinyl-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px; }

@media (max-width: 700px) {
  #bco-pdp-cuttingmachine .bcopdp-vinyl-grid {
    grid-template-columns: repeat(2, 1fr); } }

#bco-pdp-cuttingmachine .bcopdp-vinyl-cell {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-blush);
  border-radius: 8px;
  padding: 10px 12px;
  text-align: center; }

#bco-pdp-cuttingmachine .bcopdp-vinyl-cell-config {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--bco-muted);
  margin-bottom: 4px; }

#bco-pdp-cuttingmachine .bcopdp-vinyl-cell-num {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 700;
  color: var(--bco-blush-deep);
  line-height: 1; }

#bco-pdp-cuttingmachine .bcopdp-vinyl-cell-num span {
  display: block;
  font-family: 'Inter', sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--bco-muted);
  margin-top: 4px; }

#bco-pdp-cuttingmachine .bcopdp-accessory-card {
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 12px;
  padding: 24px;
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 28px;
  align-items: center; }

#bco-pdp-cuttingmachine .bcopdp-accessory-photo {
  width: 280px;
  aspect-ratio: 1;
  border-radius: 10px;
  overflow: hidden;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  flex-shrink: 0; }

#bco-pdp-cuttingmachine .bcopdp-accessory-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block; }

@media (max-width: 600px) {
  #bco-pdp-cuttingmachine .bcopdp-accessory-card {
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 18px; }
  #bco-pdp-cuttingmachine .bcopdp-accessory-photo {
    width: 100%;
    max-width: 360px;
    margin: 0 auto; } }

#bco-pdp-cuttingmachine .bcopdp-accessory-name {
  font-family: var(--bco-display);
  font-size: 20px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-cuttingmachine .bcopdp-accessory-desc {
  font-size: 14px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

#bco-pdp-cuttingmachine .bcopdp-accessory-warn {
  background: var(--bco-bg-white);
  border-left: 3px solid var(--bco-blush-deep);
  border-radius: 6px;
  padding: 12px 16px;
  font-size: 13px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  display: flex;
  align-items: flex-start;
  gap: 10px; }

#bco-pdp-cuttingmachine .bcopdp-accessory-warn svg {
  width: 18px;
  height: 18px;
  color: var(--bco-blush-deep);
  flex-shrink: 0;
  margin-top: 1px; }

#bco-pdp-cuttingmachine .bcopdp-accessory-warn strong {
  font-weight: 700;
  color: var(--bco-navy); }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-cuttingmachine .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-cuttingmachine .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-cuttingmachine .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-cuttingmachine .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-cuttingmachine .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-cuttingmachine .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-cuttingmachine .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cuttingmachine .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

/* -------- SPECS CARD -------- */
#bco-pdp-cuttingmachine .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 18px 24px; }

#bco-pdp-cuttingmachine .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-cuttingmachine .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 6px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 13px; }

#bco-pdp-cuttingmachine .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

#bco-pdp-cuttingmachine .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 20px; }

#bco-pdp-cuttingmachine .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 20px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-cuttingmachine .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-cuttingmachine .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd),
  #bco-pdp-cuttingmachine .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; }
  #bco-pdp-cuttingmachine .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-cuttingmachine .bcopdp-specs-grid .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-cuttingmachine .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-cuttingmachine .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- DIMENSIONS -------- */
#bco-pdp-cuttingmachine .bcopdp-dimensions {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-cuttingmachine .bcopdp-dimensions-head {
  margin-bottom: 22px;
  max-width: 660px; }

#bco-pdp-cuttingmachine .bcopdp-dimensions h2 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 10px; }

#bco-pdp-cuttingmachine .bcopdp-dimensions h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cuttingmachine .bcopdp-dimensions-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-cuttingmachine .bcopdp-dimensions-content {
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 28px;
  align-items: start; }

@media (max-width: 800px) {
  #bco-pdp-cuttingmachine .bcopdp-dimensions-content {
    grid-template-columns: 1fr;
    gap: 20px; } }

#bco-pdp-cuttingmachine .bcopdp-dimensions-photo {
  background: #faf6f1;
  border: 1px solid var(--bco-border);
  border-radius: 10px;
  padding: 14px;
  display: flex;
  align-items: center;
  justify-content: center; }

#bco-pdp-cuttingmachine .bcopdp-dimensions-photo img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 4px; }

#bco-pdp-cuttingmachine .bcopdp-dimensions-table {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 10px;
  overflow: hidden; }

#bco-pdp-cuttingmachine .bcopdp-dim-row {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr;
  gap: 8px;
  align-items: center;
  padding: 12px 16px;
  border-bottom: 1px solid var(--bco-border);
  font-size: 13.5px; }

#bco-pdp-cuttingmachine .bcopdp-dim-row:last-of-type {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-cuttingmachine .bcopdp-dim-row--head {
  background: #faf6f1; }

#bco-pdp-cuttingmachine .bcopdp-dim-row--head > div {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-muted); }

.bcopdp-dim-row--head > div:nth-child(2),
#bco-pdp-cuttingmachine .bcopdp-dim-row--head > div:nth-child(3) {
  text-align: center; }

#bco-pdp-cuttingmachine .bcopdp-dim-config {
  font-family: var(--bco-display);
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  line-height: 1.2; }

#bco-pdp-cuttingmachine .bcopdp-dim-value {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 700;
  color: var(--bco-navy);
  text-align: center; }

#bco-pdp-cuttingmachine .bcopdp-dim-footnote {
  background: var(--bco-mint-soft);
  padding: 12px 16px;
  font-size: 12.5px;
  color: var(--bco-ink);
  line-height: 1.5;
  border-top: 1px solid var(--bco-mint); }

#bco-pdp-cuttingmachine .bcopdp-dim-footnote strong {
  color: var(--bco-navy);
  font-weight: 700; }

/* -------- PAIR-IT-WITH (3 cards) -------- */
#bco-pdp-cuttingmachine .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-cuttingmachine .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-cuttingmachine .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cuttingmachine .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-cuttingmachine .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-cuttingmachine .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-cuttingmachine .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-cuttingmachine .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-cuttingmachine .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-cuttingmachine .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-cuttingmachine .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-cuttingmachine .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-cuttingmachine .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-cuttingmachine .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-cuttingmachine .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- FAQ ACCORDION -------- */
#bco-pdp-cuttingmachine .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-cuttingmachine .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-cuttingmachine .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cuttingmachine .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-cuttingmachine .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-cuttingmachine .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-cuttingmachine .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-cuttingmachine .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-cuttingmachine .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-cuttingmachine .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-cuttingmachine .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-cuttingmachine .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-cuttingmachine .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

/* -------- PLANNING CTA -------- */
#bco-pdp-cuttingmachine .bcopdp-plan-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-cuttingmachine .bcopdp-plan-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-cuttingmachine .bcopdp-plan-text {
  flex: 1;
  min-width: 240px;
  position: relative;
  z-index: 1; }

#bco-pdp-cuttingmachine .bcopdp-plan-cta h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-cuttingmachine .bcopdp-plan-cta h3 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-cuttingmachine .bcopdp-plan-cta p {
  font-size: 14.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-cuttingmachine .bcopdp-plan-buttons {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  flex-wrap: wrap; }

#bco-pdp-cuttingmachine .bcopdp-plan-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 22px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1; }

#bco-pdp-cuttingmachine .bcopdp-plan-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- RESPONSIVE -------- */
@media (max-width: 768px) {
  #bco-pdp-cuttingmachine > section,
  #bco-pdp-cuttingmachine > div[class^="bcopdp-"],
  #bco-pdp-cuttingmachine > a[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-cuttingmachine .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-cuttingmachine .bcopdp-machines {
    padding: 22px 20px; }
  #bco-pdp-cuttingmachine .bcopdp-headline {
    padding: 26px 22px; }
  #bco-pdp-cuttingmachine .bcopdp-headline-diagram {
    padding: 22px 14px 14px; }
  #bco-pdp-cuttingmachine .bcopdp-configs {
    padding: 26px 22px; }
  #bco-pdp-cuttingmachine .bcopdp-configs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-cuttingmachine .bcopdp-buildyourown {
    padding: 26px 22px; }
  #bco-pdp-cuttingmachine .bcopdp-mapping {
    padding: 26px 22px; }
  #bco-pdp-cuttingmachine .bcopdp-accessories {
    padding: 26px 22px; }
  #bco-pdp-cuttingmachine .bcopdp-bundle-extras {
    padding: 26px 22px; }
  #bco-pdp-cuttingmachine .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-cuttingmachine .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-cuttingmachine .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-cuttingmachine .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-cuttingmachine .bcopdp-dimensions {
    padding: 26px 22px; }
  #bco-pdp-cuttingmachine .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-cuttingmachine .bcopdp-pairs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-cuttingmachine .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-cuttingmachine .bcopdp-plan-cta {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-cuttingmachine .bcopdp-plan-buttons {
    width: 100%; }
  #bco-pdp-cuttingmachine .bcopdp-plan-btn {
    flex: 1;
    justify-content: center; } }

/* --- End Cutting Machine Cabinet --- */
/* ============================================================
   Diamond Painting Storage Cabinet Kits
   ID: #bco-pdp-diamondpainting
   ============================================================ */
#bco-pdp-diamondpainting {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-diamondpainting *, #bco-pdp-diamondpainting *::before, #bco-pdp-diamondpainting *::after {
  box-sizing: border-box; }

#bco-pdp-diamondpainting h2, #bco-pdp-diamondpainting h3, #bco-pdp-diamondpainting h4, #bco-pdp-diamondpainting p, #bco-pdp-diamondpainting ul, #bco-pdp-diamondpainting li, #bco-pdp-diamondpainting table {
  margin: 0;
  padding: 0; }

#bco-pdp-diamondpainting ul {
  list-style: none; }

#bco-pdp-diamondpainting > section, #bco-pdp-diamondpainting > div[class^="bcopdp-"], #bco-pdp-diamondpainting > a[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-diamondpainting > section:last-child, #bco-pdp-diamondpainting > div[class^="bcopdp-"]:last-child, #bco-pdp-diamondpainting > a[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-diamondpainting .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-diamondpainting .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-diamondpainting .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-diamondpainting .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-diamondpainting .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-diamondpainting .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-diamondpainting .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-diamondpainting .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

#bco-pdp-diamondpainting .bcopdp-hero p a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 700; }

#bco-pdp-diamondpainting .bcopdp-hero p a:hover {
  color: var(--bco-teal-deep); }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-diamondpainting .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-diamondpainting .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-diamondpainting .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-diamondpainting .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-diamondpainting .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-diamondpainting .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-diamondpainting .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-diamondpainting .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

/* -------- KIT COMPARISON (2 tinted cards) -------- */
#bco-pdp-diamondpainting .bcopdp-heights {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-diamondpainting .bcopdp-heights-head {
  margin-bottom: 24px;
  max-width: 620px; }

#bco-pdp-diamondpainting .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-diamondpainting .bcopdp-heights h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-diamondpainting .bcopdp-heights h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-diamondpainting .bcopdp-heights-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-diamondpainting .bcopdp-heights-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px; }

#bco-pdp-diamondpainting .bcopdp-height-card {
  border-radius: 12px;
  padding: 26px 26px 22px;
  border: 1px solid; }

#bco-pdp-diamondpainting .bcopdp-height-card:nth-child(1) {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-diamondpainting .bcopdp-height-card:nth-child(2) {
  background: #eaf2fa;
  border-color: var(--bco-navy); }

#bco-pdp-diamondpainting .bcopdp-height-kicker {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin-bottom: 6px; }

#bco-pdp-diamondpainting .bcopdp-height-card:nth-child(1) .bcopdp-height-kicker {
  color: var(--bco-teal-deep); }

#bco-pdp-diamondpainting .bcopdp-height-card:nth-child(2) .bcopdp-height-kicker {
  color: var(--bco-navy); }

#bco-pdp-diamondpainting .bcopdp-height-name {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.15;
  margin-bottom: 4px; }

#bco-pdp-diamondpainting .bcopdp-height-card:nth-child(1) .bcopdp-height-name {
  color: var(--bco-teal-deep); }

#bco-pdp-diamondpainting .bcopdp-height-card:nth-child(2) .bcopdp-height-name {
  color: var(--bco-navy); }

#bco-pdp-diamondpainting .bcopdp-height-best-for {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 14px; }

#bco-pdp-diamondpainting .bcopdp-height-card:nth-child(1) .bcopdp-height-best-for {
  color: var(--bco-teal-deep);
  opacity: 0.8; }

#bco-pdp-diamondpainting .bcopdp-height-card:nth-child(2) .bcopdp-height-best-for {
  color: var(--bco-navy);
  opacity: 0.75; }

#bco-pdp-diamondpainting .bcopdp-height-dims {
  background: var(--bco-bg-white);
  border-radius: 10px;
  padding: 14px 16px;
  border: 1px solid; }

#bco-pdp-diamondpainting .bcopdp-height-card:nth-child(1) .bcopdp-height-dims {
  border-color: var(--bco-mint); }

#bco-pdp-diamondpainting .bcopdp-height-card:nth-child(2) .bcopdp-height-dims {
  border-color: rgba(36, 54, 101, 0.2); }

#bco-pdp-diamondpainting .bcopdp-height-dim-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 4px 0;
  font-size: 13px;
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-diamondpainting .bcopdp-height-dim-row:last-child {
  border-bottom: none; }

#bco-pdp-diamondpainting .bcopdp-height-dim-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-diamondpainting .bcopdp-height-dim-value {
  color: var(--bco-navy);
  font-weight: 700;
  text-align: right; }

/* -------- INCLUDED-ORGANIZER SHOWCASE / PAIR CARDS -------- */
#bco-pdp-diamondpainting .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-diamondpainting .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-diamondpainting .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-diamondpainting .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-diamondpainting .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-diamondpainting .bcopdp-pairs-grid.is-two {
  grid-template-columns: repeat(2, 1fr); }

#bco-pdp-diamondpainting .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-diamondpainting .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-diamondpainting .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-diamondpainting .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-diamondpainting .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-diamondpainting .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-diamondpainting .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-diamondpainting .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-diamondpainting .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-diamondpainting .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- KIT DETAILS & SETUP GUIDES (accordions) -------- */
#bco-pdp-diamondpainting .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-diamondpainting .bcopdp-faqs-head {
  margin-bottom: 10px;
  max-width: 620px; }

#bco-pdp-diamondpainting .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-diamondpainting .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-diamondpainting .bcopdp-faqs-intro {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6;
  margin-bottom: 16px; }

#bco-pdp-diamondpainting .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-diamondpainting .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-diamondpainting .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-diamondpainting .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-diamondpainting .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-diamondpainting .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-diamondpainting .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-diamondpainting .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-diamondpainting .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-diamondpainting .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-diamondpainting .bcopdp-kit-subhead {
  display: inline-block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  padding: 5px 12px;
  border-radius: 100px;
  margin: 14px 0 10px; }

#bco-pdp-diamondpainting .bcopdp-kit-subhead.is-blush {
  color: var(--bco-blush-deep);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-diamondpainting .bcopdp-faq-body ul.bcopdp-kitlist {
  list-style: none;
  margin: 0 0 6px; }

#bco-pdp-diamondpainting .bcopdp-faq-body ul.bcopdp-kitlist > li {
  padding: 4px 0 4px 18px;
  position: relative; }

#bco-pdp-diamondpainting .bcopdp-faq-body ul.bcopdp-kitlist > li::before {
  content: '';
  position: absolute;
  left: 2px;
  top: 13px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--bco-teal-deep); }

#bco-pdp-diamondpainting .bcopdp-faq-body ul.bcopdp-kitlist ul {
  list-style: none;
  margin: 4px 0 2px; }

#bco-pdp-diamondpainting .bcopdp-faq-body ul.bcopdp-kitlist ul > li {
  padding: 2px 0 2px 18px;
  position: relative;
  font-size: 13.5px; }

#bco-pdp-diamondpainting .bcopdp-faq-body ul.bcopdp-kitlist ul > li::before {
  content: '';
  position: absolute;
  left: 4px;
  top: 11px;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--bco-blush-deep); }

#bco-pdp-diamondpainting .bcopdp-faq-body .bcopdp-kit-note {
  font-size: 13px;
  color: var(--bco-muted);
  margin-top: 8px; }

/* -------- SPECS CARD -------- */
#bco-pdp-diamondpainting .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 18px 24px; }

#bco-pdp-diamondpainting .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-diamondpainting .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 6px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 13px; }

#bco-pdp-diamondpainting .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

#bco-pdp-diamondpainting .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 20px; }

#bco-pdp-diamondpainting .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 20px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-diamondpainting .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-diamondpainting .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd), #bco-pdp-diamondpainting .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; }
  #bco-pdp-diamondpainting .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-diamondpainting .bcopdp-specs-grid .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-diamondpainting .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-diamondpainting .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- PLANNING CTA -------- */
#bco-pdp-diamondpainting .bcopdp-plan-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-diamondpainting .bcopdp-plan-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-diamondpainting .bcopdp-plan-text {
  flex: 1;
  min-width: 240px;
  position: relative;
  z-index: 1; }

#bco-pdp-diamondpainting .bcopdp-plan-cta h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-diamondpainting .bcopdp-plan-cta h3 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-diamondpainting .bcopdp-plan-cta p {
  font-size: 14.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-diamondpainting .bcopdp-plan-buttons {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  flex-wrap: wrap; }

#bco-pdp-diamondpainting .bcopdp-plan-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 22px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1; }

#bco-pdp-diamondpainting .bcopdp-plan-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- RESPONSIVE -------- */
@media (max-width: 768px) {
  #bco-pdp-diamondpainting > section, #bco-pdp-diamondpainting > div[class^="bcopdp-"], #bco-pdp-diamondpainting > a[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-diamondpainting .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-diamondpainting .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-diamondpainting .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-diamondpainting .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-diamondpainting .bcopdp-heights {
    padding: 26px 22px; }
  #bco-pdp-diamondpainting .bcopdp-heights-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-diamondpainting .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-diamondpainting .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-diamondpainting .bcopdp-pairs-grid, #bco-pdp-diamondpainting .bcopdp-pairs-grid.is-two {
    grid-template-columns: 1fr; }
  #bco-pdp-diamondpainting .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-diamondpainting .bcopdp-plan-cta {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-diamondpainting .bcopdp-plan-buttons {
    width: 100%; }
  #bco-pdp-diamondpainting .bcopdp-plan-btn {
    flex: 1;
    justify-content: center; } }

/* --- End Diamond Painting Storage Cabinet Kits --- */
/* ============================================================
   Die Cutting & Embossing Station
   ID: #bco-pdp-diecutting
   ============================================================ */
#bco-pdp-diecutting {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-diecutting *, #bco-pdp-diecutting *::before, #bco-pdp-diecutting *::after {
  box-sizing: border-box; }

#bco-pdp-diecutting h2, #bco-pdp-diecutting h3, #bco-pdp-diecutting h4, #bco-pdp-diecutting p, #bco-pdp-diecutting ul, #bco-pdp-diecutting li, #bco-pdp-diecutting table {
  margin: 0;
  padding: 0; }

#bco-pdp-diecutting ul {
  list-style: none; }

#bco-pdp-diecutting > section, #bco-pdp-diecutting > div[class^="bcopdp-"], #bco-pdp-diecutting > a[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-diecutting > section:last-child, #bco-pdp-diecutting > div[class^="bcopdp-"]:last-child, #bco-pdp-diecutting > a[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-diecutting .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-diecutting .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-diecutting .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-diecutting .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-diecutting .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-diecutting .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-diecutting .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-diecutting .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

#bco-pdp-diecutting .bcopdp-hero p a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 700; }

#bco-pdp-diecutting .bcopdp-hero p a:hover {
  color: var(--bco-teal-deep); }

/* -------- PRODUCT DEMO VIDEO -------- */
#bco-pdp-diecutting .bcopdp-video {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-diecutting .bcopdp-video-head {
  margin-bottom: 22px;
  max-width: 620px; }

#bco-pdp-diecutting .bcopdp-video-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 12px; }

#bco-pdp-diecutting .bcopdp-video h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-diecutting .bcopdp-video h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-diecutting .bcopdp-video-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

#bco-pdp-diecutting .bcopdp-video-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 12px;
  overflow: hidden;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  box-shadow: 0 14px 32px -16px rgba(36, 54, 101, 0.25); }

#bco-pdp-diecutting .bcopdp-video-frame iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block; }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-diecutting .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-diecutting .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-diecutting .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-diecutting .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-diecutting .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-diecutting .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-diecutting .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-diecutting .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

/* -------- HEIGHT COMPARISON -------- */
#bco-pdp-diecutting .bcopdp-heights {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-diecutting .bcopdp-heights-head {
  margin-bottom: 24px;
  max-width: 620px; }

#bco-pdp-diecutting .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-diecutting .bcopdp-heights h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-diecutting .bcopdp-heights h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-diecutting .bcopdp-heights-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-diecutting .bcopdp-heights-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px; }

#bco-pdp-diecutting .bcopdp-height-card {
  border-radius: 12px;
  padding: 26px 26px 22px;
  border: 1px solid; }

#bco-pdp-diecutting .bcopdp-height-card:nth-child(1) {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-diecutting .bcopdp-height-card:nth-child(2) {
  background: #eaf2fa;
  border-color: var(--bco-navy); }

#bco-pdp-diecutting .bcopdp-height-name {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.15;
  margin-bottom: 4px; }

#bco-pdp-diecutting .bcopdp-height-card:nth-child(1) .bcopdp-height-name {
  color: var(--bco-teal-deep); }

#bco-pdp-diecutting .bcopdp-height-card:nth-child(2) .bcopdp-height-name {
  color: var(--bco-navy); }

#bco-pdp-diecutting .bcopdp-height-best-for {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 14px; }

#bco-pdp-diecutting .bcopdp-height-card:nth-child(1) .bcopdp-height-best-for {
  color: var(--bco-teal-deep);
  opacity: 0.8; }

#bco-pdp-diecutting .bcopdp-height-card:nth-child(2) .bcopdp-height-best-for {
  color: var(--bco-navy);
  opacity: 0.75; }

#bco-pdp-diecutting .bcopdp-height-dims {
  background: var(--bco-bg-white);
  border-radius: 10px;
  padding: 14px 16px;
  border: 1px solid; }

#bco-pdp-diecutting .bcopdp-height-card:nth-child(1) .bcopdp-height-dims {
  border-color: var(--bco-mint); }

#bco-pdp-diecutting .bcopdp-height-card:nth-child(2) .bcopdp-height-dims {
  border-color: rgba(36, 54, 101, 0.2); }

#bco-pdp-diecutting .bcopdp-height-dim-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 4px 0;
  font-size: 13px;
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-diecutting .bcopdp-height-dim-row:last-child {
  border-bottom: none; }

#bco-pdp-diecutting .bcopdp-height-dim-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-diecutting .bcopdp-height-dim-value {
  color: var(--bco-navy);
  font-weight: 700;
  text-align: right; }

/* -------- WHAT'S INCLUDED -------- */
#bco-pdp-diecutting .bcopdp-included {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-diecutting .bcopdp-included-col {
  border-radius: 12px;
  padding: 24px 26px;
  border: 1px solid;
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-diecutting .bcopdp-included-col.is-alt {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-diecutting .bcopdp-included-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px; }

#bco-pdp-diecutting .bcopdp-included-badge {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: var(--bco-bg-white);
  color: var(--bco-teal-deep);
  border: 1px solid var(--bco-mint); }

.is-alt .bcopdp-included-badge {
  color: var(--bco-blush-deep);
  border-color: var(--bco-blush); }

#bco-pdp-diecutting .bcopdp-included-badge svg {
  width: 16px;
  height: 16px; }

#bco-pdp-diecutting .bcopdp-included-head h4 {
  font-family: var(--bco-display);
  font-size: 19px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.2;
  color: var(--bco-teal-deep); }

.is-alt .bcopdp-included-head h4 {
  color: var(--bco-blush-deep); }

#bco-pdp-diecutting .bcopdp-included-list li {
  font-size: 14px;
  color: var(--bco-ink);
  line-height: 1.5;
  padding: 5px 0;
  display: flex;
  align-items: flex-start;
  gap: 8px; }

#bco-pdp-diecutting .bcopdp-included-list li::before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  margin-top: 9px;
  flex-shrink: 0;
  background: var(--bco-teal-deep); }

.is-alt .bcopdp-included-list li::before {
  background: var(--bco-blush-deep); }

/* -------- USE CASES (GREAT FOR) -------- */
#bco-pdp-diecutting .bcopdp-uses {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-diecutting .bcopdp-uses-head {
  margin-bottom: 22px;
  max-width: 620px; }

#bco-pdp-diecutting .bcopdp-uses h2 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 10px; }

#bco-pdp-diecutting .bcopdp-uses h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-diecutting .bcopdp-uses-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-diecutting .bcopdp-uses-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px; }

#bco-pdp-diecutting .bcopdp-use-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 10px;
  font-size: 14px;
  color: var(--bco-ink);
  line-height: 1.5; }

#bco-pdp-diecutting .bcopdp-use-row svg {
  width: 18px;
  height: 18px;
  color: var(--bco-teal-deep);
  flex-shrink: 0;
  margin-top: 2px; }

#bco-pdp-diecutting .bcopdp-use-row strong {
  font-weight: 700;
  color: var(--bco-navy); }

/* -------- SPECS CARD -------- */
#bco-pdp-diecutting .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 18px 24px; }

#bco-pdp-diecutting .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-diecutting .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 6px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 13px; }

#bco-pdp-diecutting .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

#bco-pdp-diecutting .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 20px; }

#bco-pdp-diecutting .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 20px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-diecutting .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-diecutting .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd), #bco-pdp-diecutting .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; }
  #bco-pdp-diecutting .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-diecutting .bcopdp-specs-grid .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-diecutting .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-diecutting .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- PAIR-IT-WITH -------- */
#bco-pdp-diecutting .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-diecutting .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-diecutting .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-diecutting .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-diecutting .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-diecutting .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-diecutting .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-diecutting .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-diecutting .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-diecutting .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-diecutting .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-diecutting .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-diecutting .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-diecutting .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-diecutting .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- FAQ ACCORDION -------- */
#bco-pdp-diecutting .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-diecutting .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-diecutting .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-diecutting .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-diecutting .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-diecutting .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-diecutting .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-diecutting .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-diecutting .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-diecutting .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-diecutting .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-diecutting .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-diecutting .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

/* -------- PLANNING CTA -------- */
#bco-pdp-diecutting .bcopdp-plan-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-diecutting .bcopdp-plan-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-diecutting .bcopdp-plan-text {
  flex: 1;
  min-width: 240px;
  position: relative;
  z-index: 1; }

#bco-pdp-diecutting .bcopdp-plan-cta h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-diecutting .bcopdp-plan-cta h3 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-diecutting .bcopdp-plan-cta p {
  font-size: 14.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-diecutting .bcopdp-plan-buttons {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  flex-wrap: wrap; }

#bco-pdp-diecutting .bcopdp-plan-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 22px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1; }

#bco-pdp-diecutting .bcopdp-plan-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- RESPONSIVE -------- */
@media (max-width: 768px) {
  #bco-pdp-diecutting > section, #bco-pdp-diecutting > div[class^="bcopdp-"], #bco-pdp-diecutting > a[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-diecutting .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-diecutting .bcopdp-video {
    padding: 24px 22px; }
  #bco-pdp-diecutting .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-diecutting .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-diecutting .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-diecutting .bcopdp-heights {
    padding: 26px 22px; }
  #bco-pdp-diecutting .bcopdp-heights-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-diecutting .bcopdp-included {
    grid-template-columns: 1fr; }
  #bco-pdp-diecutting .bcopdp-uses {
    padding: 26px 22px; }
  #bco-pdp-diecutting .bcopdp-uses-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-diecutting .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-diecutting .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-diecutting .bcopdp-pairs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-diecutting .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-diecutting .bcopdp-plan-cta {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-diecutting .bcopdp-plan-buttons {
    width: 100%; }
  #bco-pdp-diecutting .bcopdp-plan-btn {
    flex: 1;
    justify-content: center; } }

/* --- End Die Cutting & Embossing Station --- */
/* ============================================================
   Jewelry Makers Storage Cabinet Kits
   ID: #bco-pdp-jewelrymakers
   ============================================================ */
#bco-pdp-jewelrymakers {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-jewelrymakers *, #bco-pdp-jewelrymakers *::before, #bco-pdp-jewelrymakers *::after {
  box-sizing: border-box; }

#bco-pdp-jewelrymakers h2, #bco-pdp-jewelrymakers h3, #bco-pdp-jewelrymakers h4, #bco-pdp-jewelrymakers p, #bco-pdp-jewelrymakers ul, #bco-pdp-jewelrymakers li, #bco-pdp-jewelrymakers table {
  margin: 0;
  padding: 0; }

#bco-pdp-jewelrymakers ul {
  list-style: none; }

#bco-pdp-jewelrymakers > section, #bco-pdp-jewelrymakers > div[class^="bcopdp-"], #bco-pdp-jewelrymakers > a[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-jewelrymakers > section:last-child, #bco-pdp-jewelrymakers > div[class^="bcopdp-"]:last-child, #bco-pdp-jewelrymakers > a[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-jewelrymakers .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-jewelrymakers .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-jewelrymakers .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-jewelrymakers .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-jewelrymakers .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-jewelrymakers .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-jewelrymakers .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-jewelrymakers .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

#bco-pdp-jewelrymakers .bcopdp-hero p a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 700; }

#bco-pdp-jewelrymakers .bcopdp-hero p a:hover {
  color: var(--bco-teal-deep); }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-jewelrymakers .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-jewelrymakers .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-jewelrymakers .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-jewelrymakers .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-jewelrymakers .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-jewelrymakers .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-jewelrymakers .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-jewelrymakers .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

/* -------- KIT COMPARISON (3 tinted cards) -------- */
#bco-pdp-jewelrymakers .bcopdp-heights {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-jewelrymakers .bcopdp-heights-head {
  margin-bottom: 24px;
  max-width: 620px; }

#bco-pdp-jewelrymakers .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-jewelrymakers .bcopdp-heights h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-jewelrymakers .bcopdp-heights h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-jewelrymakers .bcopdp-heights-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-jewelrymakers .bcopdp-heights-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px; }

#bco-pdp-jewelrymakers .bcopdp-height-card {
  border-radius: 12px;
  padding: 26px 26px 22px;
  border: 1px solid; }

#bco-pdp-jewelrymakers .bcopdp-height-card:nth-child(1) {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-jewelrymakers .bcopdp-height-card:nth-child(2) {
  background: #eaf2fa;
  border-color: var(--bco-navy); }

#bco-pdp-jewelrymakers .bcopdp-height-card:nth-child(3) {
  background: var(--bco-navy);
  border-color: var(--bco-navy-deep); }

#bco-pdp-jewelrymakers .bcopdp-height-kicker {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin-bottom: 6px; }

#bco-pdp-jewelrymakers .bcopdp-height-card:nth-child(1) .bcopdp-height-kicker {
  color: var(--bco-teal-deep); }

#bco-pdp-jewelrymakers .bcopdp-height-card:nth-child(2) .bcopdp-height-kicker {
  color: var(--bco-navy); }

#bco-pdp-jewelrymakers .bcopdp-height-card:nth-child(3) .bcopdp-height-kicker {
  color: var(--bco-blush); }

#bco-pdp-jewelrymakers .bcopdp-height-name {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.15;
  margin-bottom: 4px; }

#bco-pdp-jewelrymakers .bcopdp-height-card:nth-child(1) .bcopdp-height-name {
  color: var(--bco-teal-deep); }

#bco-pdp-jewelrymakers .bcopdp-height-card:nth-child(2) .bcopdp-height-name {
  color: var(--bco-navy); }

#bco-pdp-jewelrymakers .bcopdp-height-card:nth-child(3) .bcopdp-height-name {
  color: #ffffff; }

#bco-pdp-jewelrymakers .bcopdp-height-best-for {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 14px; }

#bco-pdp-jewelrymakers .bcopdp-height-card:nth-child(1) .bcopdp-height-best-for {
  color: var(--bco-teal-deep);
  opacity: 0.8; }

#bco-pdp-jewelrymakers .bcopdp-height-card:nth-child(2) .bcopdp-height-best-for {
  color: var(--bco-navy);
  opacity: 0.75; }

#bco-pdp-jewelrymakers .bcopdp-height-card:nth-child(3) .bcopdp-height-best-for {
  color: rgba(255, 255, 255, 0.85); }

#bco-pdp-jewelrymakers .bcopdp-height-dims {
  background: var(--bco-bg-white);
  border-radius: 10px;
  padding: 14px 16px;
  border: 1px solid; }

#bco-pdp-jewelrymakers .bcopdp-height-card:nth-child(1) .bcopdp-height-dims {
  border-color: var(--bco-mint); }

#bco-pdp-jewelrymakers .bcopdp-height-card:nth-child(2) .bcopdp-height-dims {
  border-color: rgba(36, 54, 101, 0.2); }

#bco-pdp-jewelrymakers .bcopdp-height-card:nth-child(3) .bcopdp-height-dims {
  border-color: rgba(255, 255, 255, 0.25); }

#bco-pdp-jewelrymakers .bcopdp-height-dim-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 4px 0;
  font-size: 13px;
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-jewelrymakers .bcopdp-height-dim-row:last-child {
  border-bottom: none; }

#bco-pdp-jewelrymakers .bcopdp-height-dim-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-jewelrymakers .bcopdp-height-dim-value {
  color: var(--bco-navy);
  font-weight: 700;
  text-align: right; }

/* -------- ACCESSORY SHOWCASE / PAIR CARDS -------- */
#bco-pdp-jewelrymakers .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-jewelrymakers .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-jewelrymakers .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-jewelrymakers .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-jewelrymakers .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-jewelrymakers .bcopdp-pairs-grid.is-four {
  grid-template-columns: repeat(4, 1fr); }

#bco-pdp-jewelrymakers .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-jewelrymakers .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-jewelrymakers .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-jewelrymakers .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-jewelrymakers .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-jewelrymakers .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-jewelrymakers .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-jewelrymakers .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-jewelrymakers .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-jewelrymakers .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- KIT DETAILS & SETUP GUIDES (accordions) -------- */
#bco-pdp-jewelrymakers .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-jewelrymakers .bcopdp-faqs-head {
  margin-bottom: 10px;
  max-width: 620px; }

#bco-pdp-jewelrymakers .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-jewelrymakers .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-jewelrymakers .bcopdp-faqs-intro {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6;
  margin-bottom: 16px; }

#bco-pdp-jewelrymakers .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-jewelrymakers .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-jewelrymakers .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-jewelrymakers .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-jewelrymakers .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-jewelrymakers .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-jewelrymakers .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-jewelrymakers .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-jewelrymakers .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-jewelrymakers .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-jewelrymakers .bcopdp-kit-subhead {
  display: inline-block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  padding: 5px 12px;
  border-radius: 100px;
  margin: 14px 0 10px; }

#bco-pdp-jewelrymakers .bcopdp-kit-subhead.is-blush {
  color: var(--bco-blush-deep);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-jewelrymakers .bcopdp-faq-body ul.bcopdp-kitlist {
  list-style: none;
  margin: 0 0 6px; }

#bco-pdp-jewelrymakers .bcopdp-faq-body ul.bcopdp-kitlist > li {
  padding: 4px 0 4px 18px;
  position: relative; }

#bco-pdp-jewelrymakers .bcopdp-faq-body ul.bcopdp-kitlist > li::before {
  content: '';
  position: absolute;
  left: 2px;
  top: 13px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--bco-teal-deep); }

#bco-pdp-jewelrymakers .bcopdp-faq-body ul.bcopdp-kitlist ul {
  list-style: none;
  margin: 4px 0 2px; }

#bco-pdp-jewelrymakers .bcopdp-faq-body ul.bcopdp-kitlist ul > li {
  padding: 2px 0 2px 18px;
  position: relative;
  font-size: 13.5px; }

#bco-pdp-jewelrymakers .bcopdp-faq-body ul.bcopdp-kitlist ul > li::before {
  content: '';
  position: absolute;
  left: 4px;
  top: 11px;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--bco-blush-deep); }

#bco-pdp-jewelrymakers .bcopdp-faq-body .bcopdp-kit-note {
  font-size: 13px;
  color: var(--bco-muted);
  margin-top: 8px; }

/* -------- SPECS CARD -------- */
#bco-pdp-jewelrymakers .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 18px 24px; }

#bco-pdp-jewelrymakers .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-jewelrymakers .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 6px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 13px; }

#bco-pdp-jewelrymakers .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

#bco-pdp-jewelrymakers .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 20px; }

#bco-pdp-jewelrymakers .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 20px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-jewelrymakers .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-jewelrymakers .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd), #bco-pdp-jewelrymakers .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; }
  #bco-pdp-jewelrymakers .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-jewelrymakers .bcopdp-specs-grid .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-jewelrymakers .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-jewelrymakers .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- PLANNING CTA -------- */
#bco-pdp-jewelrymakers .bcopdp-plan-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-jewelrymakers .bcopdp-plan-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-jewelrymakers .bcopdp-plan-text {
  flex: 1;
  min-width: 240px;
  position: relative;
  z-index: 1; }

#bco-pdp-jewelrymakers .bcopdp-plan-cta h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-jewelrymakers .bcopdp-plan-cta h3 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-jewelrymakers .bcopdp-plan-cta p {
  font-size: 14.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-jewelrymakers .bcopdp-plan-buttons {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  flex-wrap: wrap; }

#bco-pdp-jewelrymakers .bcopdp-plan-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 22px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1; }

#bco-pdp-jewelrymakers .bcopdp-plan-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- RESPONSIVE -------- */
@media (max-width: 980px) {
  #bco-pdp-jewelrymakers .bcopdp-pairs-grid.is-four {
    grid-template-columns: repeat(2, 1fr); }
  #bco-pdp-jewelrymakers .bcopdp-heights-grid {
    grid-template-columns: 1fr; } }

@media (max-width: 768px) {
  #bco-pdp-jewelrymakers > section, #bco-pdp-jewelrymakers > div[class^="bcopdp-"], #bco-pdp-jewelrymakers > a[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-jewelrymakers .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-jewelrymakers .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-jewelrymakers .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-jewelrymakers .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-jewelrymakers .bcopdp-heights {
    padding: 26px 22px; }
  #bco-pdp-jewelrymakers .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-jewelrymakers .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-jewelrymakers .bcopdp-pairs-grid, #bco-pdp-jewelrymakers .bcopdp-pairs-grid.is-four {
    grid-template-columns: 1fr; }
  #bco-pdp-jewelrymakers .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-jewelrymakers .bcopdp-plan-cta {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-jewelrymakers .bcopdp-plan-buttons {
    width: 100%; }
  #bco-pdp-jewelrymakers .bcopdp-plan-btn {
    flex: 1;
    justify-content: center; } }

/* --- End Jewelry Makers Storage Cabinet Kits --- */
/* ============================================================
   Paper Crafting Storage Cabinet Kits
   ID: #bco-pdp-papercrafting
   ============================================================ */
#bco-pdp-papercrafting {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-papercrafting *, #bco-pdp-papercrafting *::before, #bco-pdp-papercrafting *::after {
  box-sizing: border-box; }

#bco-pdp-papercrafting h2, #bco-pdp-papercrafting h3, #bco-pdp-papercrafting h4, #bco-pdp-papercrafting p, #bco-pdp-papercrafting ul, #bco-pdp-papercrafting li, #bco-pdp-papercrafting table {
  margin: 0;
  padding: 0; }

#bco-pdp-papercrafting ul {
  list-style: none; }

#bco-pdp-papercrafting > section, #bco-pdp-papercrafting > div[class^="bcopdp-"], #bco-pdp-papercrafting > a[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-papercrafting > section:last-child, #bco-pdp-papercrafting > div[class^="bcopdp-"]:last-child, #bco-pdp-papercrafting > a[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-papercrafting .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-papercrafting .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-papercrafting .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-papercrafting .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-papercrafting .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-papercrafting .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-papercrafting .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-papercrafting .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

#bco-pdp-papercrafting .bcopdp-hero p a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 700; }

#bco-pdp-papercrafting .bcopdp-hero p a:hover {
  color: var(--bco-teal-deep); }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-papercrafting .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-papercrafting .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-papercrafting .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-papercrafting .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-papercrafting .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-papercrafting .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-papercrafting .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-papercrafting .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

/* -------- KIT COMPARISON (4 tinted cards) -------- */
#bco-pdp-papercrafting .bcopdp-heights {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-papercrafting .bcopdp-heights-head {
  margin-bottom: 24px;
  max-width: 620px; }

#bco-pdp-papercrafting .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-papercrafting .bcopdp-heights h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-papercrafting .bcopdp-heights h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-papercrafting .bcopdp-heights-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

#bco-pdp-papercrafting .bcopdp-heights-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px; }

#bco-pdp-papercrafting .bcopdp-height-card {
  border-radius: 12px;
  padding: 26px 26px 22px;
  border: 1px solid; }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(1) {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(2) {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(3) {
  background: #eaf2fa;
  border-color: var(--bco-navy); }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(4) {
  background: var(--bco-navy);
  border-color: var(--bco-navy-deep); }

#bco-pdp-papercrafting .bcopdp-height-kicker {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin-bottom: 6px; }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(1) .bcopdp-height-kicker {
  color: var(--bco-teal-deep); }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(2) .bcopdp-height-kicker {
  color: var(--bco-blush-deep); }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(3) .bcopdp-height-kicker {
  color: var(--bco-navy); }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(4) .bcopdp-height-kicker {
  color: var(--bco-blush); }

#bco-pdp-papercrafting .bcopdp-height-name {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.15;
  margin-bottom: 4px; }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(1) .bcopdp-height-name {
  color: var(--bco-teal-deep); }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(2) .bcopdp-height-name {
  color: var(--bco-blush-deep); }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(3) .bcopdp-height-name {
  color: var(--bco-navy); }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(4) .bcopdp-height-name {
  color: #ffffff; }

#bco-pdp-papercrafting .bcopdp-height-best-for {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 14px; }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(1) .bcopdp-height-best-for {
  color: var(--bco-teal-deep);
  opacity: 0.8; }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(2) .bcopdp-height-best-for {
  color: var(--bco-blush-deep);
  opacity: 0.85; }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(3) .bcopdp-height-best-for {
  color: var(--bco-navy);
  opacity: 0.75; }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(4) .bcopdp-height-best-for {
  color: rgba(255, 255, 255, 0.85); }

#bco-pdp-papercrafting .bcopdp-height-dims {
  background: var(--bco-bg-white);
  border-radius: 10px;
  padding: 14px 16px;
  border: 1px solid; }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(1) .bcopdp-height-dims {
  border-color: var(--bco-mint); }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(2) .bcopdp-height-dims {
  border-color: var(--bco-blush); }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(3) .bcopdp-height-dims {
  border-color: rgba(36, 54, 101, 0.2); }

#bco-pdp-papercrafting .bcopdp-height-card:nth-child(4) .bcopdp-height-dims {
  border-color: rgba(255, 255, 255, 0.25); }

#bco-pdp-papercrafting .bcopdp-height-dim-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 4px 0;
  font-size: 13px;
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-papercrafting .bcopdp-height-dim-row:last-child {
  border-bottom: none; }

#bco-pdp-papercrafting .bcopdp-height-dim-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-papercrafting .bcopdp-height-dim-value {
  color: var(--bco-navy);
  font-weight: 700;
  text-align: right; }

/* -------- ACCESSORY SHOWCASE / PAIR CARDS -------- */
#bco-pdp-papercrafting .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-papercrafting .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-papercrafting .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-papercrafting .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-papercrafting .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-papercrafting .bcopdp-pairs-grid.is-four {
  grid-template-columns: repeat(4, 1fr); }

#bco-pdp-papercrafting .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-papercrafting .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-papercrafting .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-papercrafting .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-papercrafting .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-papercrafting .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-papercrafting .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-papercrafting .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-papercrafting .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-papercrafting .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- KIT DETAILS & SETUP GUIDES (accordions) -------- */
#bco-pdp-papercrafting .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-papercrafting .bcopdp-faqs-head {
  margin-bottom: 10px;
  max-width: 620px; }

#bco-pdp-papercrafting .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-papercrafting .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-papercrafting .bcopdp-faqs-intro {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6;
  margin-bottom: 16px; }

#bco-pdp-papercrafting .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-papercrafting .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-papercrafting .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-papercrafting .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-papercrafting .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-papercrafting .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-papercrafting .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-papercrafting .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-papercrafting .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-papercrafting .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-papercrafting .bcopdp-kit-subhead {
  display: inline-block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  padding: 5px 12px;
  border-radius: 100px;
  margin: 14px 0 10px; }

#bco-pdp-papercrafting .bcopdp-kit-subhead.is-blush {
  color: var(--bco-blush-deep);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-papercrafting .bcopdp-faq-body ul.bcopdp-kitlist {
  list-style: none;
  margin: 0 0 6px; }

#bco-pdp-papercrafting .bcopdp-faq-body ul.bcopdp-kitlist > li {
  padding: 4px 0 4px 18px;
  position: relative; }

#bco-pdp-papercrafting .bcopdp-faq-body ul.bcopdp-kitlist > li::before {
  content: '';
  position: absolute;
  left: 2px;
  top: 13px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--bco-teal-deep); }

#bco-pdp-papercrafting .bcopdp-faq-body ul.bcopdp-kitlist ul {
  list-style: none;
  margin: 4px 0 2px; }

#bco-pdp-papercrafting .bcopdp-faq-body ul.bcopdp-kitlist ul > li {
  padding: 2px 0 2px 18px;
  position: relative;
  font-size: 13.5px; }

#bco-pdp-papercrafting .bcopdp-faq-body ul.bcopdp-kitlist ul > li::before {
  content: '';
  position: absolute;
  left: 4px;
  top: 11px;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--bco-blush-deep); }

#bco-pdp-papercrafting .bcopdp-faq-body .bcopdp-kit-note {
  font-size: 13px;
  color: var(--bco-muted);
  margin-top: 8px; }

/* -------- SPECS CARD -------- */
#bco-pdp-papercrafting .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 18px 24px; }

#bco-pdp-papercrafting .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-papercrafting .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 6px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 13px; }

#bco-pdp-papercrafting .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

#bco-pdp-papercrafting .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 20px; }

#bco-pdp-papercrafting .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 20px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-papercrafting .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-papercrafting .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd), #bco-pdp-papercrafting .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; }
  #bco-pdp-papercrafting .bcopdp-specs-grid .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-papercrafting .bcopdp-specs-grid .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-papercrafting .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-papercrafting .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- PLANNING CTA -------- */
#bco-pdp-papercrafting .bcopdp-plan-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-papercrafting .bcopdp-plan-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-papercrafting .bcopdp-plan-text {
  flex: 1;
  min-width: 240px;
  position: relative;
  z-index: 1; }

#bco-pdp-papercrafting .bcopdp-plan-cta h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-papercrafting .bcopdp-plan-cta h3 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-papercrafting .bcopdp-plan-cta p {
  font-size: 14.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-papercrafting .bcopdp-plan-buttons {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  flex-wrap: wrap; }

#bco-pdp-papercrafting .bcopdp-plan-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 22px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1; }

#bco-pdp-papercrafting .bcopdp-plan-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- RESPONSIVE -------- */
@media (max-width: 980px) {
  #bco-pdp-papercrafting .bcopdp-pairs-grid.is-four {
    grid-template-columns: repeat(2, 1fr); } }

@media (max-width: 768px) {
  #bco-pdp-papercrafting > section, #bco-pdp-papercrafting > div[class^="bcopdp-"], #bco-pdp-papercrafting > a[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-papercrafting .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-papercrafting .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-papercrafting .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-papercrafting .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-papercrafting .bcopdp-heights {
    padding: 26px 22px; }
  #bco-pdp-papercrafting .bcopdp-heights-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-papercrafting .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-papercrafting .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-papercrafting .bcopdp-pairs-grid, #bco-pdp-papercrafting .bcopdp-pairs-grid.is-four {
    grid-template-columns: 1fr; }
  #bco-pdp-papercrafting .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-papercrafting .bcopdp-plan-cta {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-papercrafting .bcopdp-plan-buttons {
    width: 100%; }
  #bco-pdp-papercrafting .bcopdp-plan-btn {
    flex: 1;
    justify-content: center; } }

/* --- End Paper Crafting Storage Cabinet Kits --- */
/* ============================================================
   Storage Add-On for IKEA Kallax Insert
   ID: #bco-pdp-kallaxinsert
   ============================================================ */
#bco-pdp-kallaxinsert {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-kallaxinsert *, #bco-pdp-kallaxinsert *::before, #bco-pdp-kallaxinsert *::after {
  box-sizing: border-box; }

#bco-pdp-kallaxinsert h2, #bco-pdp-kallaxinsert h3, #bco-pdp-kallaxinsert h4, #bco-pdp-kallaxinsert p, #bco-pdp-kallaxinsert ul, #bco-pdp-kallaxinsert li, #bco-pdp-kallaxinsert table {
  margin: 0;
  padding: 0; }

#bco-pdp-kallaxinsert ul {
  list-style: none; }

#bco-pdp-kallaxinsert > section,
#bco-pdp-kallaxinsert > div[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-kallaxinsert > section:last-child,
#bco-pdp-kallaxinsert > div[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-kallaxinsert .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-kallaxinsert .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-kallaxinsert .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-kallaxinsert .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-kallaxinsert .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-kallaxinsert .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-kallaxinsert .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-kallaxinsert .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

#bco-pdp-kallaxinsert .bcopdp-hero-fineprint {
  position: relative;
  z-index: 1;
  font-size: 12px !important;
  color: var(--bco-muted) !important;
  margin-top: 12px !important; }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-kallaxinsert .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-kallaxinsert .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-kallaxinsert .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-kallaxinsert .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-kallaxinsert .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-kallaxinsert .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-kallaxinsert .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-kallaxinsert .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

/* -------- THREE-PILLAR STRIP -------- */
#bco-pdp-kallaxinsert .bcopdp-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px; }

#bco-pdp-kallaxinsert .bcopdp-pillar {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 20px;
  text-align: center;
  transition: all 0.25s ease; }

#bco-pdp-kallaxinsert .bcopdp-pillar:hover {
  transform: translateY(-2px);
  border-color: var(--bco-teal);
  box-shadow: 0 10px 22px -10px rgba(36, 54, 101, 0.15); }

#bco-pdp-kallaxinsert .bcopdp-pillar-icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  margin-bottom: 12px; }

#bco-pdp-kallaxinsert .bcopdp-pillar:nth-child(2) .bcopdp-pillar-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-kallaxinsert .bcopdp-pillar:nth-child(3) .bcopdp-pillar-icon {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-kallaxinsert .bcopdp-pillar-icon svg {
  width: 22px;
  height: 22px; }

#bco-pdp-kallaxinsert .bcopdp-pillar h4 {
  font-family: var(--bco-display);
  font-size: 18px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-kallaxinsert .bcopdp-pillar p {
  font-size: 13px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

/* -------- BLOCK 5b VARIANT: SPACE GUIDE -------- */
#bco-pdp-kallaxinsert .bcopdp-configs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 36px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-kallaxinsert .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-kallaxinsert .bcopdp-configs h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-kallaxinsert .bcopdp-configs h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-kallaxinsert .bcopdp-configs-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.65;
  max-width: 680px;
  margin-bottom: 28px; }

#bco-pdp-kallaxinsert .bcopdp-configs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px; }

#bco-pdp-kallaxinsert .bcopdp-configs-grid.is-four {
  grid-template-columns: repeat(4, 1fr);
  gap: 14px; }

#bco-pdp-kallaxinsert .bcopdp-config-card {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px;
  transition: all 0.25s ease;
  display: flex;
  flex-direction: column; }

#bco-pdp-kallaxinsert .bcopdp-config-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 14px 28px -14px rgba(36, 54, 101, 0.18); }

#bco-pdp-kallaxinsert .bcopdp-config-icon-wrap {
  width: 72px;
  height: 72px;
  border-radius: 16px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  margin-bottom: 18px; }

#bco-pdp-kallaxinsert .bcopdp-config-card:nth-child(2) .bcopdp-config-icon-wrap {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-kallaxinsert .bcopdp-config-card:nth-child(3) .bcopdp-config-icon-wrap {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-kallaxinsert .bcopdp-config-card:nth-child(4) .bcopdp-config-icon-wrap {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-kallaxinsert .bcopdp-config-icon-wrap svg {
  width: 36px;
  height: 36px; }

#bco-pdp-kallaxinsert .bcopdp-config-name {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 4px; }

#bco-pdp-kallaxinsert .bcopdp-config-name em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-kallaxinsert .bcopdp-config-tagline {
  font-size: 13px;
  color: var(--bco-teal-deep);
  font-weight: 600;
  letter-spacing: 0.02em;
  margin-bottom: 14px; }

#bco-pdp-kallaxinsert .bcopdp-config-desc {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 14px;
  flex: 1; }

#bco-pdp-kallaxinsert .bcopdp-config-best {
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 12.5px;
  color: var(--bco-ink);
  line-height: 1.45; }

#bco-pdp-kallaxinsert .bcopdp-config-best strong {
  display: block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  margin-bottom: 4px; }

.bcopdp-config-card:nth-child(2) .bcopdp-config-best,
#bco-pdp-kallaxinsert .bcopdp-config-card:nth-child(4) .bcopdp-config-best {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

.bcopdp-config-card:nth-child(2) .bcopdp-config-best strong,
#bco-pdp-kallaxinsert .bcopdp-config-card:nth-child(4) .bcopdp-config-best strong {
  color: var(--bco-blush-deep); }

/* -------- SPECS CARD (with grouped subheadings) -------- */
#bco-pdp-kallaxinsert .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px; }

#bco-pdp-kallaxinsert .bcopdp-specs h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 22px; }

#bco-pdp-kallaxinsert .bcopdp-spec-group {
  margin-bottom: 28px; }

#bco-pdp-kallaxinsert .bcopdp-spec-group:last-child {
  margin-bottom: 0; }

#bco-pdp-kallaxinsert .bcopdp-spec-group-label {
  display: inline-block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  padding: 5px 12px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-kallaxinsert .bcopdp-spec-group:nth-child(3) .bcopdp-spec-group-label {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-kallaxinsert .bcopdp-spec-group:nth-child(4) .bcopdp-spec-group-label {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-kallaxinsert .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-kallaxinsert .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 11px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 14px; }

#bco-pdp-kallaxinsert .bcopdp-spec-group .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

@media (max-width: 600px) {
  #bco-pdp-kallaxinsert .bcopdp-spec-group .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-kallaxinsert .bcopdp-spec-group .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-kallaxinsert .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 24px; }

#bco-pdp-kallaxinsert .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 24px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-kallaxinsert .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd),
  #bco-pdp-kallaxinsert .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; } }

#bco-pdp-kallaxinsert .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-kallaxinsert .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- WHAT'S INCLUDED -------- */
#bco-pdp-kallaxinsert .bcopdp-included {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-kallaxinsert .bcopdp-included-col {
  border-radius: 12px;
  padding: 24px 26px;
  border: 1px solid; }

#bco-pdp-kallaxinsert .bcopdp-included-col.is-yes {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-kallaxinsert .bcopdp-included-col.is-no {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-kallaxinsert .bcopdp-included-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px; }

#bco-pdp-kallaxinsert .bcopdp-included-badge {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

.is-yes .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-teal-deep);
  border: 1px solid var(--bco-mint); }

.is-no .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-blush-deep);
  border: 1px solid var(--bco-blush); }

#bco-pdp-kallaxinsert .bcopdp-included-badge svg {
  width: 16px;
  height: 16px; }

#bco-pdp-kallaxinsert .bcopdp-included-head h4 {
  font-family: var(--bco-display);
  font-size: 19px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.2; }

.is-yes .bcopdp-included-head h4 {
  color: var(--bco-teal-deep); }

.is-no .bcopdp-included-head h4 {
  color: var(--bco-blush-deep); }

#bco-pdp-kallaxinsert .bcopdp-included-list li {
  font-size: 14px;
  color: var(--bco-ink);
  line-height: 1.5;
  padding: 5px 0;
  display: flex;
  align-items: flex-start;
  gap: 8px; }

#bco-pdp-kallaxinsert .bcopdp-included-list li::before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  margin-top: 9px;
  flex-shrink: 0; }

.is-yes .bcopdp-included-list li::before {
  background: var(--bco-teal-deep); }

.is-no .bcopdp-included-list li::before {
  background: var(--bco-blush-deep); }

#bco-pdp-kallaxinsert .bcopdp-included-list li a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-kallaxinsert .bcopdp-included-list li a:hover {
  color: var(--bco-teal-deep); }

/* -------- PAIR-IT-WITH -------- */
#bco-pdp-kallaxinsert .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-kallaxinsert .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-kallaxinsert .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-kallaxinsert .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-kallaxinsert .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-kallaxinsert .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-kallaxinsert .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-kallaxinsert .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-kallaxinsert .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-kallaxinsert .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-kallaxinsert .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-kallaxinsert .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-kallaxinsert .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-kallaxinsert .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-kallaxinsert .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- FAQ ACCORDION -------- */
#bco-pdp-kallaxinsert .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-kallaxinsert .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-kallaxinsert .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-kallaxinsert .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-kallaxinsert .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-kallaxinsert .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-kallaxinsert .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-kallaxinsert .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-kallaxinsert .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-kallaxinsert .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-kallaxinsert .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-kallaxinsert .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-kallaxinsert .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

/* -------- STANDALONE CTA (Block 12 variant) -------- */
#bco-pdp-kallaxinsert .bcopdp-customize-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-kallaxinsert .bcopdp-customize-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-kallaxinsert .bcopdp-customize-text {
  flex: 1;
  min-width: 240px;
  position: relative;
  z-index: 1; }

#bco-pdp-kallaxinsert .bcopdp-customize-cta h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-kallaxinsert .bcopdp-customize-cta h3 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-kallaxinsert .bcopdp-customize-cta p {
  font-size: 14.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-kallaxinsert .bcopdp-customize-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 26px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1;
  flex-shrink: 0;
  position: relative;
  z-index: 1; }

#bco-pdp-kallaxinsert .bcopdp-customize-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- ASSEMBLY + WARRANTY FOOTER -------- */
#bco-pdp-kallaxinsert .bcopdp-footer-blocks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-kallaxinsert .bcopdp-footer-block {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 26px;
  display: flex;
  align-items: flex-start;
  gap: 14px; }

#bco-pdp-kallaxinsert .bcopdp-footer-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

#bco-pdp-kallaxinsert .bcopdp-footer-block:nth-child(2) .bcopdp-footer-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-kallaxinsert .bcopdp-footer-icon svg {
  width: 20px;
  height: 20px; }

#bco-pdp-kallaxinsert .bcopdp-footer-block h4 {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  margin-bottom: 4px; }

#bco-pdp-kallaxinsert .bcopdp-footer-block p {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 8px; }

#bco-pdp-kallaxinsert .bcopdp-footer-block a {
  font-size: 12px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  text-decoration: none;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid currentColor;
  padding-bottom: 1px; }

#bco-pdp-kallaxinsert .bcopdp-footer-block a:hover {
  color: var(--bco-navy); }

/* -------- LEGAL DISCLAIMER LINE -------- */
#bco-pdp-kallaxinsert .bcopdp-disclaimer {
  font-size: 12px;
  color: var(--bco-muted);
  text-align: center;
  padding-top: 4px; }

/* -------- RESPONSIVE -------- */
@media (max-width: 900px) {
  #bco-pdp-kallaxinsert .bcopdp-configs-grid.is-four {
    grid-template-columns: repeat(2, 1fr); } }

@media (max-width: 768px) {
  #bco-pdp-kallaxinsert > section,
  #bco-pdp-kallaxinsert > div[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-kallaxinsert .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-kallaxinsert .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-kallaxinsert .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-kallaxinsert .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-kallaxinsert .bcopdp-pillars {
    grid-template-columns: 1fr; }
  #bco-pdp-kallaxinsert .bcopdp-configs {
    padding: 26px 22px; }
  #bco-pdp-kallaxinsert .bcopdp-configs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-kallaxinsert .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-kallaxinsert .bcopdp-included {
    grid-template-columns: 1fr; }
  #bco-pdp-kallaxinsert .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-kallaxinsert .bcopdp-pairs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-kallaxinsert .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-kallaxinsert .bcopdp-customize-cta {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-kallaxinsert .bcopdp-customize-btn {
    width: 100%;
    justify-content: center; }
  #bco-pdp-kallaxinsert .bcopdp-footer-blocks {
    grid-template-columns: 1fr; } }

@media (max-width: 480px) {
  #bco-pdp-kallaxinsert .bcopdp-configs-grid.is-four {
    grid-template-columns: 1fr; } }

/* --- End Storage Add-On for IKEA Kallax Insert --- */
/* ============================================================
   Storage Cabinet and Drawer Bundle
   ID: #bco-pdp-cabinetdrawerbundle
   ============================================================ */
#bco-pdp-cabinetdrawerbundle {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-cabinetdrawerbundle *, #bco-pdp-cabinetdrawerbundle *::before, #bco-pdp-cabinetdrawerbundle *::after {
  box-sizing: border-box; }

#bco-pdp-cabinetdrawerbundle h2, #bco-pdp-cabinetdrawerbundle h3, #bco-pdp-cabinetdrawerbundle h4, #bco-pdp-cabinetdrawerbundle p, #bco-pdp-cabinetdrawerbundle ul, #bco-pdp-cabinetdrawerbundle li, #bco-pdp-cabinetdrawerbundle table {
  margin: 0;
  padding: 0; }

#bco-pdp-cabinetdrawerbundle ul {
  list-style: none; }

#bco-pdp-cabinetdrawerbundle > section,
#bco-pdp-cabinetdrawerbundle > div[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-cabinetdrawerbundle > section:last-child,
#bco-pdp-cabinetdrawerbundle > div[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-cabinetdrawerbundle .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-cabinetdrawerbundle .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-cabinetdrawerbundle .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cabinetdrawerbundle .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-cabinetdrawerbundle .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-cabinetdrawerbundle .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-cabinetdrawerbundle .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-cabinetdrawerbundle .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-cabinetdrawerbundle .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cabinetdrawerbundle .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

/* -------- THREE-PILLAR STRIP -------- */
#bco-pdp-cabinetdrawerbundle .bcopdp-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-pillar {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 20px;
  text-align: center;
  transition: all 0.25s ease; }

#bco-pdp-cabinetdrawerbundle .bcopdp-pillar:hover {
  transform: translateY(-2px);
  border-color: var(--bco-teal);
  box-shadow: 0 10px 22px -10px rgba(36, 54, 101, 0.15); }

#bco-pdp-cabinetdrawerbundle .bcopdp-pillar-icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  margin-bottom: 12px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-pillar:nth-child(2) .bcopdp-pillar-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-cabinetdrawerbundle .bcopdp-pillar:nth-child(3) .bcopdp-pillar-icon {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-cabinetdrawerbundle .bcopdp-pillar-icon svg {
  width: 22px;
  height: 22px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-pillar h4 {
  font-family: var(--bco-display);
  font-size: 18px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-pillar p {
  font-size: 13px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

/* -------- BLOCK 5b: CONFIGURATION PICKER (NEW) -------- */
#bco-pdp-cabinetdrawerbundle .bcopdp-configs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 36px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-cabinetdrawerbundle .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-configs h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-configs h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cabinetdrawerbundle .bcopdp-configs-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.65;
  max-width: 680px;
  margin-bottom: 28px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-configs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-config-card {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px;
  transition: all 0.25s ease;
  display: flex;
  flex-direction: column; }

#bco-pdp-cabinetdrawerbundle .bcopdp-config-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 14px 28px -14px rgba(36, 54, 101, 0.18); }

#bco-pdp-cabinetdrawerbundle .bcopdp-config-icon-wrap {
  width: 72px;
  height: 72px;
  border-radius: 16px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  margin-bottom: 18px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-config-card:nth-child(2) .bcopdp-config-icon-wrap {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-cabinetdrawerbundle .bcopdp-config-card:nth-child(3) .bcopdp-config-icon-wrap {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-cabinetdrawerbundle .bcopdp-config-icon-wrap svg {
  width: 36px;
  height: 36px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-config-name {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 4px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-config-name em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cabinetdrawerbundle .bcopdp-config-tagline {
  font-size: 13px;
  color: var(--bco-teal-deep);
  font-weight: 600;
  letter-spacing: 0.02em;
  margin-bottom: 14px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-config-desc {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 14px;
  flex: 1; }

#bco-pdp-cabinetdrawerbundle .bcopdp-config-best {
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 12.5px;
  color: var(--bco-ink);
  line-height: 1.45; }

#bco-pdp-cabinetdrawerbundle .bcopdp-config-best strong {
  display: block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  margin-bottom: 4px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-config-card:nth-child(2) .bcopdp-config-best {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-cabinetdrawerbundle .bcopdp-config-card:nth-child(2) .bcopdp-config-best strong {
  color: var(--bco-blush-deep); }

/* -------- SPECS CARD (with grouped subheadings) -------- */
#bco-pdp-cabinetdrawerbundle .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-specs h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 22px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-spec-group {
  margin-bottom: 28px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-spec-group:last-child {
  margin-bottom: 0; }

#bco-pdp-cabinetdrawerbundle .bcopdp-spec-group-label {
  display: inline-block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  padding: 5px 12px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-spec-group:nth-child(3) .bcopdp-spec-group-label {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-cabinetdrawerbundle .bcopdp-spec-group:nth-child(4) .bcopdp-spec-group-label {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-cabinetdrawerbundle .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-cabinetdrawerbundle .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 11px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 14px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-spec-group .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

@media (max-width: 600px) {
  #bco-pdp-cabinetdrawerbundle .bcopdp-spec-group .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-cabinetdrawerbundle .bcopdp-spec-group .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-cabinetdrawerbundle .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 24px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 24px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-cabinetdrawerbundle .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd),
  #bco-pdp-cabinetdrawerbundle .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; } }

#bco-pdp-cabinetdrawerbundle .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-cabinetdrawerbundle .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- WHAT'S INCLUDED -------- */
#bco-pdp-cabinetdrawerbundle .bcopdp-included {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-included-col {
  border-radius: 12px;
  padding: 24px 26px;
  border: 1px solid; }

#bco-pdp-cabinetdrawerbundle .bcopdp-included-col.is-yes {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-cabinetdrawerbundle .bcopdp-included-col.is-no {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-cabinetdrawerbundle .bcopdp-included-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-included-badge {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

.is-yes .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-teal-deep);
  border: 1px solid var(--bco-mint); }

.is-no .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-blush-deep);
  border: 1px solid var(--bco-blush); }

#bco-pdp-cabinetdrawerbundle .bcopdp-included-badge svg {
  width: 16px;
  height: 16px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-included-head h4 {
  font-family: var(--bco-display);
  font-size: 19px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.2; }

.is-yes .bcopdp-included-head h4 {
  color: var(--bco-teal-deep); }

.is-no .bcopdp-included-head h4 {
  color: var(--bco-blush-deep); }

#bco-pdp-cabinetdrawerbundle .bcopdp-included-list li {
  font-size: 14px;
  color: var(--bco-ink);
  line-height: 1.5;
  padding: 5px 0;
  display: flex;
  align-items: flex-start;
  gap: 8px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-included-list li::before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  margin-top: 9px;
  flex-shrink: 0; }

.is-yes .bcopdp-included-list li::before {
  background: var(--bco-teal-deep); }

.is-no .bcopdp-included-list li::before {
  background: var(--bco-blush-deep); }

#bco-pdp-cabinetdrawerbundle .bcopdp-included-list li a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-cabinetdrawerbundle .bcopdp-included-list li a:hover {
  color: var(--bco-teal-deep); }

/* -------- PAIR-IT-WITH (4 cards) -------- */
#bco-pdp-cabinetdrawerbundle .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cabinetdrawerbundle .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-cabinetdrawerbundle .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-cabinetdrawerbundle .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-cabinetdrawerbundle .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-cabinetdrawerbundle .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-cabinetdrawerbundle .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-cabinetdrawerbundle .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- FAQ ACCORDION -------- */
#bco-pdp-cabinetdrawerbundle .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-cabinetdrawerbundle .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-cabinetdrawerbundle .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-cabinetdrawerbundle .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-cabinetdrawerbundle .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-cabinetdrawerbundle .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-cabinetdrawerbundle .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-cabinetdrawerbundle .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-cabinetdrawerbundle .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-cabinetdrawerbundle .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

/* -------- CUSTOMIZE CTA (NEW BLOCK 12) -------- */
#bco-pdp-cabinetdrawerbundle .bcopdp-customize-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-cabinetdrawerbundle .bcopdp-customize-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-cabinetdrawerbundle .bcopdp-customize-text {
  flex: 1;
  min-width: 240px;
  position: relative;
  z-index: 1; }

#bco-pdp-cabinetdrawerbundle .bcopdp-customize-cta h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-customize-cta h3 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-cabinetdrawerbundle .bcopdp-customize-cta p {
  font-size: 14.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-cabinetdrawerbundle .bcopdp-customize-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 26px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1;
  flex-shrink: 0;
  position: relative;
  z-index: 1; }

#bco-pdp-cabinetdrawerbundle .bcopdp-customize-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- ASSEMBLY + WARRANTY FOOTER -------- */
#bco-pdp-cabinetdrawerbundle .bcopdp-footer-blocks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-footer-block {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 26px;
  display: flex;
  align-items: flex-start;
  gap: 14px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-footer-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

#bco-pdp-cabinetdrawerbundle .bcopdp-footer-block:nth-child(2) .bcopdp-footer-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-cabinetdrawerbundle .bcopdp-footer-icon svg {
  width: 20px;
  height: 20px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-footer-block h4 {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  margin-bottom: 4px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-footer-block p {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 8px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-footer-block a {
  font-size: 12px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  text-decoration: none;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid currentColor;
  padding-bottom: 1px; }

#bco-pdp-cabinetdrawerbundle .bcopdp-footer-block a:hover {
  color: var(--bco-navy); }

/* -------- RESPONSIVE -------- */
@media (max-width: 768px) {
  #bco-pdp-cabinetdrawerbundle > section,
  #bco-pdp-cabinetdrawerbundle > div[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-cabinetdrawerbundle .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-cabinetdrawerbundle .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-cabinetdrawerbundle .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-cabinetdrawerbundle .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-cabinetdrawerbundle .bcopdp-pillars {
    grid-template-columns: 1fr; }
  #bco-pdp-cabinetdrawerbundle .bcopdp-configs {
    padding: 26px 22px; }
  #bco-pdp-cabinetdrawerbundle .bcopdp-configs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-cabinetdrawerbundle .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-cabinetdrawerbundle .bcopdp-included {
    grid-template-columns: 1fr; }
  #bco-pdp-cabinetdrawerbundle .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-cabinetdrawerbundle .bcopdp-pairs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-cabinetdrawerbundle .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-cabinetdrawerbundle .bcopdp-customize-cta {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-cabinetdrawerbundle .bcopdp-customize-btn {
    width: 100%;
    justify-content: center; }
  #bco-pdp-cabinetdrawerbundle .bcopdp-footer-blocks {
    grid-template-columns: 1fr; } }

/* --- End Storage Cabinet and Drawer Bundle --- */
/* ============================================================
   Storage Cube
   ID: #bco-pdp-storagecube
   ============================================================ */
#bco-pdp-storagecube {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-storagecube *, #bco-pdp-storagecube *::before, #bco-pdp-storagecube *::after {
  box-sizing: border-box; }

#bco-pdp-storagecube h2, #bco-pdp-storagecube h3, #bco-pdp-storagecube h4, #bco-pdp-storagecube p, #bco-pdp-storagecube ul, #bco-pdp-storagecube li, #bco-pdp-storagecube table {
  margin: 0;
  padding: 0; }

#bco-pdp-storagecube ul {
  list-style: none; }

#bco-pdp-storagecube > section,
#bco-pdp-storagecube > div[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-storagecube > section:last-child,
#bco-pdp-storagecube > div[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- HERO LEAD -------- */
#bco-pdp-storagecube .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-storagecube .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-storagecube .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-storagecube .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-storagecube .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-storagecube .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-storagecube .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-storagecube .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

/* -------- FEATURE HIGHLIGHT -------- */
#bco-pdp-storagecube .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-storagecube .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-storagecube .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-storagecube .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-storagecube .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-storagecube .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-storagecube .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-storagecube .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

/* -------- THREE-PILLAR STRIP -------- */
#bco-pdp-storagecube .bcopdp-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px; }

#bco-pdp-storagecube .bcopdp-pillar {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 20px;
  text-align: center;
  transition: all 0.25s ease; }

#bco-pdp-storagecube .bcopdp-pillar:hover {
  transform: translateY(-2px);
  border-color: var(--bco-teal);
  box-shadow: 0 10px 22px -10px rgba(36, 54, 101, 0.15); }

#bco-pdp-storagecube .bcopdp-pillar-icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  margin-bottom: 12px; }

#bco-pdp-storagecube .bcopdp-pillar:nth-child(2) .bcopdp-pillar-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-storagecube .bcopdp-pillar:nth-child(3) .bcopdp-pillar-icon {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-storagecube .bcopdp-pillar-icon svg {
  width: 22px;
  height: 22px; }

#bco-pdp-storagecube .bcopdp-pillar h4 {
  font-family: var(--bco-display);
  font-size: 18px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-storagecube .bcopdp-pillar p {
  font-size: 13px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

/* -------- BLOCK 5b VARIANT: SPACE GUIDE -------- */
#bco-pdp-storagecube .bcopdp-configs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 36px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-storagecube .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-storagecube .bcopdp-configs h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-storagecube .bcopdp-configs h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-storagecube .bcopdp-configs-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.65;
  max-width: 680px;
  margin-bottom: 28px; }

#bco-pdp-storagecube .bcopdp-configs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px; }

#bco-pdp-storagecube .bcopdp-configs-grid.is-four {
  grid-template-columns: repeat(4, 1fr);
  gap: 14px; }

#bco-pdp-storagecube .bcopdp-config-card {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px;
  transition: all 0.25s ease;
  display: flex;
  flex-direction: column; }

#bco-pdp-storagecube .bcopdp-config-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 14px 28px -14px rgba(36, 54, 101, 0.18); }

#bco-pdp-storagecube .bcopdp-config-icon-wrap {
  width: 72px;
  height: 72px;
  border-radius: 16px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  margin-bottom: 18px; }

#bco-pdp-storagecube .bcopdp-config-card:nth-child(2) .bcopdp-config-icon-wrap {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-storagecube .bcopdp-config-card:nth-child(3) .bcopdp-config-icon-wrap {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-storagecube .bcopdp-config-card:nth-child(4) .bcopdp-config-icon-wrap {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-storagecube .bcopdp-config-icon-wrap svg {
  width: 36px;
  height: 36px; }

#bco-pdp-storagecube .bcopdp-config-name {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 4px; }

#bco-pdp-storagecube .bcopdp-config-name em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-storagecube .bcopdp-config-tagline {
  font-size: 13px;
  color: var(--bco-teal-deep);
  font-weight: 600;
  letter-spacing: 0.02em;
  margin-bottom: 14px; }

#bco-pdp-storagecube .bcopdp-config-desc {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 14px;
  flex: 1; }

#bco-pdp-storagecube .bcopdp-config-best {
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 8px;
  padding: 10px 12px;
  font-size: 12.5px;
  color: var(--bco-ink);
  line-height: 1.45; }

#bco-pdp-storagecube .bcopdp-config-best strong {
  display: block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  margin-bottom: 4px; }

.bcopdp-config-card:nth-child(2) .bcopdp-config-best,
#bco-pdp-storagecube .bcopdp-config-card:nth-child(4) .bcopdp-config-best {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

.bcopdp-config-card:nth-child(2) .bcopdp-config-best strong,
#bco-pdp-storagecube .bcopdp-config-card:nth-child(4) .bcopdp-config-best strong {
  color: var(--bco-blush-deep); }

/* -------- SPECS CARD (with grouped subheadings) -------- */
#bco-pdp-storagecube .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px; }

#bco-pdp-storagecube .bcopdp-specs h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 22px; }

#bco-pdp-storagecube .bcopdp-spec-group {
  margin-bottom: 28px; }

#bco-pdp-storagecube .bcopdp-spec-group:last-child {
  margin-bottom: 0; }

#bco-pdp-storagecube .bcopdp-spec-group-label {
  display: inline-block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  padding: 5px 12px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-storagecube .bcopdp-spec-group:nth-child(3) .bcopdp-spec-group-label {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-storagecube .bcopdp-spec-group:nth-child(4) .bcopdp-spec-group-label {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-storagecube .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-storagecube .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 11px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 14px; }

#bco-pdp-storagecube .bcopdp-spec-group .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

@media (max-width: 600px) {
  #bco-pdp-storagecube .bcopdp-spec-group .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-storagecube .bcopdp-spec-group .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-storagecube .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 24px; }

#bco-pdp-storagecube .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 24px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-storagecube .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd),
  #bco-pdp-storagecube .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; } }

#bco-pdp-storagecube .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-storagecube .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- WHAT'S INCLUDED -------- */
#bco-pdp-storagecube .bcopdp-included {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-storagecube .bcopdp-included-col {
  border-radius: 12px;
  padding: 24px 26px;
  border: 1px solid; }

#bco-pdp-storagecube .bcopdp-included-col.is-yes {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-storagecube .bcopdp-included-col.is-no {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-storagecube .bcopdp-included-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px; }

#bco-pdp-storagecube .bcopdp-included-badge {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

.is-yes .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-teal-deep);
  border: 1px solid var(--bco-mint); }

.is-no .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-blush-deep);
  border: 1px solid var(--bco-blush); }

#bco-pdp-storagecube .bcopdp-included-badge svg {
  width: 16px;
  height: 16px; }

#bco-pdp-storagecube .bcopdp-included-head h4 {
  font-family: var(--bco-display);
  font-size: 19px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.2; }

.is-yes .bcopdp-included-head h4 {
  color: var(--bco-teal-deep); }

.is-no .bcopdp-included-head h4 {
  color: var(--bco-blush-deep); }

#bco-pdp-storagecube .bcopdp-included-list li {
  font-size: 14px;
  color: var(--bco-ink);
  line-height: 1.5;
  padding: 5px 0;
  display: flex;
  align-items: flex-start;
  gap: 8px; }

#bco-pdp-storagecube .bcopdp-included-list li::before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  margin-top: 9px;
  flex-shrink: 0; }

.is-yes .bcopdp-included-list li::before {
  background: var(--bco-teal-deep); }

.is-no .bcopdp-included-list li::before {
  background: var(--bco-blush-deep); }

#bco-pdp-storagecube .bcopdp-included-list li a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-storagecube .bcopdp-included-list li a:hover {
  color: var(--bco-teal-deep); }

/* -------- PAIR-IT-WITH -------- */
#bco-pdp-storagecube .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-storagecube .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-storagecube .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-storagecube .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-storagecube .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px; }

#bco-pdp-storagecube .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-storagecube .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-storagecube .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-storagecube .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-storagecube .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-storagecube .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-storagecube .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-storagecube .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-storagecube .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-storagecube .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- FAQ ACCORDION -------- */
#bco-pdp-storagecube .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-storagecube .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-storagecube .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-storagecube .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-storagecube .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-storagecube .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-storagecube .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-storagecube .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-storagecube .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-storagecube .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-storagecube .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-storagecube .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-storagecube .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

/* -------- BUNDLE CTA (Block 12 variant) -------- */
#bco-pdp-storagecube .bcopdp-customize-cta {
  background: linear-gradient(135deg, var(--bco-navy) 0%, var(--bco-navy-deep) 100%);
  color: #ffffff;
  border-radius: 14px;
  padding: 32px 36px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap; }

#bco-pdp-storagecube .bcopdp-customize-cta::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(245, 201, 180, 0.2) 0%, transparent 70%);
  pointer-events: none; }

#bco-pdp-storagecube .bcopdp-customize-text {
  flex: 1;
  min-width: 240px;
  position: relative;
  z-index: 1; }

#bco-pdp-storagecube .bcopdp-customize-cta h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-storagecube .bcopdp-customize-cta h3 em {
  font-style: italic;
  color: var(--bco-blush);
  font-weight: 500; }

#bco-pdp-storagecube .bcopdp-customize-cta p {
  font-size: 14.5px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.55;
  margin: 0; }

#bco-pdp-storagecube .bcopdp-customize-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 26px;
  background: var(--bco-bg-white);
  color: var(--bco-navy) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 100px;
  transition: all 0.25s ease;
  line-height: 1;
  flex-shrink: 0;
  position: relative;
  z-index: 1; }

#bco-pdp-storagecube .bcopdp-customize-btn:hover {
  background: var(--bco-blush);
  color: var(--bco-navy) !important;
  transform: translateY(-1px); }

/* -------- ASSEMBLY + WARRANTY FOOTER -------- */
#bco-pdp-storagecube .bcopdp-footer-blocks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-storagecube .bcopdp-footer-block {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 26px;
  display: flex;
  align-items: flex-start;
  gap: 14px; }

#bco-pdp-storagecube .bcopdp-footer-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

#bco-pdp-storagecube .bcopdp-footer-block:nth-child(2) .bcopdp-footer-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-storagecube .bcopdp-footer-icon svg {
  width: 20px;
  height: 20px; }

#bco-pdp-storagecube .bcopdp-footer-block h4 {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  margin-bottom: 4px; }

#bco-pdp-storagecube .bcopdp-footer-block p {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 8px; }

#bco-pdp-storagecube .bcopdp-footer-block a {
  font-size: 12px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  text-decoration: none;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid currentColor;
  padding-bottom: 1px; }

#bco-pdp-storagecube .bcopdp-footer-block a:hover {
  color: var(--bco-navy); }

/* -------- RESPONSIVE -------- */
@media (max-width: 900px) {
  #bco-pdp-storagecube .bcopdp-configs-grid.is-four {
    grid-template-columns: repeat(2, 1fr); } }

@media (max-width: 768px) {
  #bco-pdp-storagecube > section,
  #bco-pdp-storagecube > div[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-storagecube .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-storagecube .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-storagecube .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-storagecube .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-storagecube .bcopdp-pillars {
    grid-template-columns: 1fr; }
  #bco-pdp-storagecube .bcopdp-configs {
    padding: 26px 22px; }
  #bco-pdp-storagecube .bcopdp-configs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-storagecube .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-storagecube .bcopdp-included {
    grid-template-columns: 1fr; }
  #bco-pdp-storagecube .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-storagecube .bcopdp-pairs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-storagecube .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-storagecube .bcopdp-customize-cta {
    padding: 26px 24px;
    flex-direction: column;
    align-items: flex-start; }
  #bco-pdp-storagecube .bcopdp-customize-btn {
    width: 100%;
    justify-content: center; }
  #bco-pdp-storagecube .bcopdp-footer-blocks {
    grid-template-columns: 1fr; } }

@media (max-width: 480px) {
  #bco-pdp-storagecube .bcopdp-configs-grid.is-four {
    grid-template-columns: 1fr; } }

/* --- End Storage Cube --- */
/* ============================================================
   CRAFT STORAGE CABINET - CUSTOMIZE
   ID: #bco-pdp-storagecabinetcustom
   ============================================================ */
#bco-pdp-storagecabinetcustom {
  --bco-navy: #243665;
  --bco-navy-deep: #1a2749;
  --bco-teal: #50b4a7;
  --bco-teal-deep: #3a9187;
  --bco-mint: #b4e5d7;
  --bco-mint-soft: #dcf2ea;
  --bco-blush: #f5c9b4;
  --bco-blush-deep: #d99b82;
  --bco-blush-wash: #fdf1eb;
  --bco-bg-white: #ffffff;
  --bco-ink: #1a1f2e;
  --bco-ink-soft: #3a4050;
  --bco-muted: #6a6f80;
  --bco-border: #ececec;
  --bco-display: 'Cormorant Garamond', Georgia, serif;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--bco-ink);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  max-width: 100%; }

#bco-pdp-storagecabinetcustom *, #bco-pdp-storagecabinetcustom *::before, #bco-pdp-storagecabinetcustom *::after {
  box-sizing: border-box; }

#bco-pdp-storagecabinetcustom h2, #bco-pdp-storagecabinetcustom h3, #bco-pdp-storagecabinetcustom h4, #bco-pdp-storagecabinetcustom p, #bco-pdp-storagecabinetcustom ul, #bco-pdp-storagecabinetcustom li, #bco-pdp-storagecabinetcustom table {
  margin: 0;
  padding: 0; }

#bco-pdp-storagecabinetcustom ul {
  list-style: none; }

/* All blocks share consistent vertical rhythm */
#bco-pdp-storagecabinetcustom > section,
#bco-pdp-storagecabinetcustom > div[class^="bcopdp-"] {
  margin-bottom: 36px; }

#bco-pdp-storagecabinetcustom > section:last-child,
#bco-pdp-storagecabinetcustom > div[class^="bcopdp-"]:last-child {
  margin-bottom: 0; }

/* -------- BLOCK 2: HERO LEAD -------- */
#bco-pdp-storagecabinetcustom .bcopdp-hero {
  background: var(--bco-blush-wash);
  border-radius: 14px;
  padding: 36px 32px;
  position: relative;
  overflow: hidden; }

#bco-pdp-storagecabinetcustom .bcopdp-hero::before {
  content: '';
  position: absolute;
  top: -80px;
  right: -60px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, var(--bco-mint-soft) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55; }

#bco-pdp-storagecabinetcustom .bcopdp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 720px; }

#bco-pdp-storagecabinetcustom .bcopdp-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 16px; }

#bco-pdp-storagecabinetcustom .bcopdp-hero-eyebrow svg {
  width: 12px;
  height: 12px; }

#bco-pdp-storagecabinetcustom .bcopdp-hero h2 {
  font-family: var(--bco-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin-bottom: 14px; }

#bco-pdp-storagecabinetcustom .bcopdp-hero h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-storagecabinetcustom .bcopdp-hero p {
  font-size: 16px;
  color: var(--bco-ink);
  line-height: 1.6;
  max-width: 600px; }

/* -------- BLOCK 2.5: PRODUCT DEMO VIDEO -------- */
#bco-pdp-storagecabinetcustom .bcopdp-video {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-storagecabinetcustom .bcopdp-video-head {
  margin-bottom: 22px;
  max-width: 620px; }

#bco-pdp-storagecabinetcustom .bcopdp-video-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 12px; }

#bco-pdp-storagecabinetcustom .bcopdp-video h3 {
  font-family: var(--bco-display);
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.15;
  margin-bottom: 6px; }

#bco-pdp-storagecabinetcustom .bcopdp-video h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-storagecabinetcustom .bcopdp-video-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

#bco-pdp-storagecabinetcustom .bcopdp-video-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 12px;
  overflow: hidden;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  box-shadow: 0 14px 32px -16px rgba(36, 54, 101, 0.25); }

#bco-pdp-storagecabinetcustom .bcopdp-video-frame iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
  display: block; }

/* -------- BLOCK 3: FEATURE HIGHLIGHT -------- */
#bco-pdp-storagecabinetcustom .bcopdp-feature {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 24px;
  align-items: flex-start;
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-storagecabinetcustom .bcopdp-feature-icon {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  flex-shrink: 0; }

#bco-pdp-storagecabinetcustom .bcopdp-feature-icon.is-blush {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-storagecabinetcustom .bcopdp-feature-icon.is-navy {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-storagecabinetcustom .bcopdp-feature-icon svg {
  width: 32px;
  height: 32px; }

#bco-pdp-storagecabinetcustom .bcopdp-feature h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-storagecabinetcustom .bcopdp-feature h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-storagecabinetcustom .bcopdp-feature p {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.6; }

/* -------- BLOCK 4: THREE-PILLAR STRIP -------- */
#bco-pdp-storagecabinetcustom .bcopdp-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px; }

#bco-pdp-storagecabinetcustom .bcopdp-pillar {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 20px;
  text-align: center;
  transition: all 0.25s ease; }

#bco-pdp-storagecabinetcustom .bcopdp-pillar:hover {
  transform: translateY(-2px);
  border-color: var(--bco-teal);
  box-shadow: 0 10px 22px -10px rgba(36, 54, 101, 0.15); }

#bco-pdp-storagecabinetcustom .bcopdp-pillar-icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--bco-teal-deep);
  margin-bottom: 12px; }

#bco-pdp-storagecabinetcustom .bcopdp-pillar:nth-child(2) .bcopdp-pillar-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-storagecabinetcustom .bcopdp-pillar:nth-child(3) .bcopdp-pillar-icon {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-storagecabinetcustom .bcopdp-pillar-icon svg {
  width: 22px;
  height: 22px; }

#bco-pdp-storagecabinetcustom .bcopdp-pillar h4 {
  font-family: var(--bco-display);
  font-size: 18px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 6px; }

#bco-pdp-storagecabinetcustom .bcopdp-pillar p {
  font-size: 13px;
  color: var(--bco-ink-soft);
  line-height: 1.55; }

/* -------- BLOCK 5: SLOT SYSTEM DIAGRAM -------- */
#bco-pdp-storagecabinetcustom .bcopdp-slots {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 36px 32px;
  box-shadow: 0 4px 14px -10px rgba(26, 39, 73, 0.08); }

#bco-pdp-storagecabinetcustom .bcopdp-section-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  padding: 6px 14px;
  border-radius: 100px;
  margin-bottom: 14px; }

#bco-pdp-storagecabinetcustom .bcopdp-slots h2 {
  font-family: var(--bco-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.1;
  margin-bottom: 12px; }

#bco-pdp-storagecabinetcustom .bcopdp-slots h2 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-storagecabinetcustom .bcopdp-slots-intro {
  font-size: 15px;
  color: var(--bco-ink-soft);
  line-height: 1.65;
  max-width: 680px;
  margin-bottom: 28px; }

#bco-pdp-storagecabinetcustom .bcopdp-slot-diagram {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  align-items: center;
  background: var(--bco-blush-wash);
  border-radius: 12px;
  padding: 28px;
  margin-bottom: 28px; }

#bco-pdp-storagecabinetcustom .bcopdp-slot-svg {
  width: 100%;
  max-width: 200px;
  margin: 0 auto;
  display: block; }

#bco-pdp-storagecabinetcustom .bcopdp-slot-key {
  display: flex;
  flex-direction: column;
  gap: 12px; }

#bco-pdp-storagecabinetcustom .bcopdp-slot-key-item {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 14px;
  color: var(--bco-ink); }

#bco-pdp-storagecabinetcustom .bcopdp-slot-key-swatch {
  width: 28px;
  height: 28px;
  border-radius: 6px;
  flex-shrink: 0;
  border: 1.5px solid; }

#bco-pdp-storagecabinetcustom .bcopdp-slot-key-swatch.is-drawer {
  background: var(--bco-mint-soft);
  border-color: var(--bco-teal); }

#bco-pdp-storagecabinetcustom .bcopdp-slot-key-swatch.is-paper {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush-deep); }

#bco-pdp-storagecabinetcustom .bcopdp-slot-key-swatch.is-shelf {
  background: #f0f3f6;
  border-color: var(--bco-navy);
  border-style: dashed; }

#bco-pdp-storagecabinetcustom .bcopdp-slot-key-swatch.is-empty {
  background: transparent;
  border-color: var(--bco-border); }

#bco-pdp-storagecabinetcustom .bcopdp-slot-key-text strong {
  font-weight: 700;
  color: var(--bco-navy); }

#bco-pdp-storagecabinetcustom .bcopdp-slot-key-text-hint {
  font-size: 12.5px;
  color: var(--bco-muted);
  margin-top: 1px; }

/* Slot count table */
/* Slot count table */
#bco-pdp-storagecabinetcustom .bcopdp-slot-caption {
  font-family: var(--bco-display);
  font-size: 18px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  margin-bottom: 10px; }

#bco-pdp-storagecabinetcustom .bcopdp-slot-caption em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-storagecabinetcustom .bcopdp-slot-num {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1; }

#bco-pdp-storagecabinetcustom .bcopdp-slot-unit {
  font-size: 11px;
  color: var(--bco-muted);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-left: 2px; }

#bco-pdp-storagecabinetcustom .bcopdp-slot-na {
  color: var(--bco-muted);
  font-size: 18px; }

#bco-pdp-storagecabinetcustom .bcopdp-slot-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: 12px;
  border: 1px solid var(--bco-border); }

#bco-pdp-storagecabinetcustom .bcopdp-slot-table {
  width: 100%;
  min-width: 480px;
  border-collapse: collapse;
  font-size: 14px;
  background: var(--bco-bg-white); }

#bco-pdp-storagecabinetcustom .bcopdp-slot-table thead th {
  background: var(--bco-mint-soft);
  color: var(--bco-teal-deep);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  padding: 14px 16px;
  text-align: center;
  border-bottom: 1px solid var(--bco-mint); }

#bco-pdp-storagecabinetcustom .bcopdp-slot-table thead th:first-child {
  text-align: left;
  color: var(--bco-navy); }

#bco-pdp-storagecabinetcustom .bcopdp-slot-table tbody td {
  padding: 13px 16px;
  border-bottom: 1px solid var(--bco-border);
  text-align: center;
  color: var(--bco-ink); }

#bco-pdp-storagecabinetcustom .bcopdp-slot-table tbody td:first-child {
  text-align: left;
  font-weight: 600;
  color: var(--bco-navy); }

#bco-pdp-storagecabinetcustom .bcopdp-slot-table tbody tr:last-child td {
  border-bottom: none; }

#bco-pdp-storagecabinetcustom .bcopdp-slot-table tbody tr:hover td {
  background: var(--bco-blush-wash); }

#bco-pdp-storagecabinetcustom .bcopdp-slot-example {
  margin-top: 20px;
  padding: 16px 22px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  border-radius: 10px;
  font-size: 14px;
  color: var(--bco-ink);
  line-height: 1.65; }

#bco-pdp-storagecabinetcustom .bcopdp-slot-example strong {
  color: var(--bco-navy);
  font-weight: 700; }

/* -------- BLOCK 6: SPECS CARD -------- */
#bco-pdp-storagecabinetcustom .bcopdp-specs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 28px 32px; }

#bco-pdp-storagecabinetcustom .bcopdp-specs h3 {
  font-family: var(--bco-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 22px; }

/* Spec groups — separate sections within the specs card */
#bco-pdp-storagecabinetcustom .bcopdp-spec-group {
  margin-bottom: 28px; }

#bco-pdp-storagecabinetcustom .bcopdp-spec-group:last-child {
  margin-bottom: 0; }

#bco-pdp-storagecabinetcustom .bcopdp-spec-group-label {
  display: inline-block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--bco-teal-deep);
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  padding: 5px 12px;
  border-radius: 100px;
  margin-bottom: 14px; }

/* Alternating group label colors so groups are visually distinct */
#bco-pdp-storagecabinetcustom .bcopdp-spec-group:nth-child(3) .bcopdp-spec-group-label {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-storagecabinetcustom .bcopdp-spec-group:nth-child(4) .bcopdp-spec-group-label {
  background: #eaf2fa;
  border-color: var(--bco-navy);
  color: var(--bco-navy); }

#bco-pdp-storagecabinetcustom .bcopdp-specs-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; }

#bco-pdp-storagecabinetcustom .bcopdp-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 11px 0;
  border-bottom: 1px solid var(--bco-border);
  font-size: 14px; }

/* Within each group: remove bottom border from final 2 rows (or 1 if odd row count) */
#bco-pdp-storagecabinetcustom .bcopdp-spec-group .bcopdp-spec-row:nth-last-child(-n+2) {
  border-bottom: none; }

/* When grid wraps to single column, only the last row has no border */
@media (max-width: 600px) {
  #bco-pdp-storagecabinetcustom .bcopdp-spec-group .bcopdp-spec-row:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--bco-border); }
  #bco-pdp-storagecabinetcustom .bcopdp-spec-group .bcopdp-spec-row:last-child {
    border-bottom: none; } }

#bco-pdp-storagecabinetcustom .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd) {
  padding-right: 24px; }

#bco-pdp-storagecabinetcustom .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
  padding-left: 24px;
  border-left: 1px solid var(--bco-border); }

@media (max-width: 600px) {
  #bco-pdp-storagecabinetcustom .bcopdp-specs-grid {
    grid-template-columns: 1fr; }
  #bco-pdp-storagecabinetcustom .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(odd),
  #bco-pdp-storagecabinetcustom .bcopdp-specs-grid > .bcopdp-spec-row:nth-child(even) {
    padding-left: 0;
    padding-right: 0;
    border-left: none; } }

#bco-pdp-storagecabinetcustom .bcopdp-spec-label {
  color: var(--bco-muted);
  font-weight: 500; }

#bco-pdp-storagecabinetcustom .bcopdp-spec-value {
  color: var(--bco-navy);
  font-weight: 600;
  text-align: right; }

/* -------- BLOCK 7: WHAT'S INCLUDED -------- */
#bco-pdp-storagecabinetcustom .bcopdp-included {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-storagecabinetcustom .bcopdp-included-col {
  border-radius: 12px;
  padding: 24px 26px;
  border: 1px solid; }

#bco-pdp-storagecabinetcustom .bcopdp-included-col.is-yes {
  background: var(--bco-mint-soft);
  border-color: var(--bco-mint); }

#bco-pdp-storagecabinetcustom .bcopdp-included-col.is-no {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush); }

#bco-pdp-storagecabinetcustom .bcopdp-included-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px; }

#bco-pdp-storagecabinetcustom .bcopdp-included-badge {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

.is-yes .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-teal-deep);
  border: 1px solid var(--bco-mint); }

.is-no .bcopdp-included-badge {
  background: var(--bco-bg-white);
  color: var(--bco-blush-deep);
  border: 1px solid var(--bco-blush); }

#bco-pdp-storagecabinetcustom .bcopdp-included-badge svg {
  width: 16px;
  height: 16px; }

#bco-pdp-storagecabinetcustom .bcopdp-included-head h4 {
  font-family: var(--bco-display);
  font-size: 19px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.2; }

.is-yes .bcopdp-included-head h4 {
  color: var(--bco-teal-deep); }

.is-no .bcopdp-included-head h4 {
  color: var(--bco-blush-deep); }

#bco-pdp-storagecabinetcustom .bcopdp-included-list li {
  font-size: 14px;
  color: var(--bco-ink);
  line-height: 1.5;
  padding: 5px 0;
  display: flex;
  align-items: flex-start;
  gap: 8px; }

#bco-pdp-storagecabinetcustom .bcopdp-included-list li::before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  margin-top: 9px;
  flex-shrink: 0; }

.is-yes .bcopdp-included-list li::before {
  background: var(--bco-teal-deep); }

.is-no .bcopdp-included-list li::before {
  background: var(--bco-blush-deep); }

#bco-pdp-storagecabinetcustom .bcopdp-included-list li a {
  color: var(--bco-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

#bco-pdp-storagecabinetcustom .bcopdp-included-list li a:hover {
  color: var(--bco-teal-deep); }

/* -------- BLOCK 8: PULLED REVIEW -------- */
#bco-pdp-storagecabinetcustom .bcopdp-review {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 36px 40px;
  position: relative;
  box-shadow: 0 6px 18px -10px rgba(26, 39, 73, 0.1); }

#bco-pdp-storagecabinetcustom .bcopdp-review::before {
  content: '\201C';
  font-family: var(--bco-display);
  font-style: italic;
  font-size: 96px;
  color: var(--bco-blush);
  position: absolute;
  top: 14px;
  left: 24px;
  line-height: 1;
  pointer-events: none; }

#bco-pdp-storagecabinetcustom .bcopdp-review-stars {
  color: var(--bco-blush-deep);
  font-size: 14px;
  letter-spacing: 0.12em;
  margin-bottom: 12px;
  position: relative;
  z-index: 1; }

#bco-pdp-storagecabinetcustom .bcopdp-review-text {
  font-family: var(--bco-display);
  font-size: 19px;
  font-style: italic;
  font-weight: 500;
  color: var(--bco-ink);
  line-height: 1.55;
  margin-bottom: 18px;
  padding-top: 18px;
  letter-spacing: -0.005em;
  position: relative;
  z-index: 1; }

#bco-pdp-storagecabinetcustom .bcopdp-review-attribution {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 14px; }

#bco-pdp-storagecabinetcustom .bcopdp-review-author {
  font-weight: 700;
  color: var(--bco-navy); }

#bco-pdp-storagecabinetcustom .bcopdp-review-context {
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-storagecabinetcustom .bcopdp-review-divider {
  color: var(--bco-muted); }

/* -------- BLOCK 9: PAIR-IT-WITH -------- */
#bco-pdp-storagecabinetcustom .bcopdp-pairs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-storagecabinetcustom .bcopdp-pairs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-storagecabinetcustom .bcopdp-pairs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-storagecabinetcustom .bcopdp-pairs-sub {
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  margin-bottom: 22px; }

#bco-pdp-storagecabinetcustom .bcopdp-pairs-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px; }

#bco-pdp-storagecabinetcustom .bcopdp-pair-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--bco-border);
  transition: all 0.25s ease;
  background: var(--bco-bg-white); }

#bco-pdp-storagecabinetcustom .bcopdp-pair-card:hover {
  transform: translateY(-3px);
  border-color: var(--bco-teal);
  box-shadow: 0 12px 24px -12px rgba(36, 54, 101, 0.2); }

#bco-pdp-storagecabinetcustom .bcopdp-pair-img-wrap {
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--bco-mint-soft); }

#bco-pdp-storagecabinetcustom .bcopdp-pair-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease; }

#bco-pdp-storagecabinetcustom .bcopdp-pair-card:hover .bcopdp-pair-img {
  transform: scale(1.05); }

#bco-pdp-storagecabinetcustom .bcopdp-pair-info {
  padding: 14px 16px 16px; }

#bco-pdp-storagecabinetcustom .bcopdp-pair-name {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin-bottom: 4px; }

#bco-pdp-storagecabinetcustom .bcopdp-pair-desc {
  font-size: 12.5px;
  color: var(--bco-ink-soft);
  line-height: 1.45;
  margin-bottom: 8px; }

#bco-pdp-storagecabinetcustom .bcopdp-pair-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: gap 0.2s ease; }

#bco-pdp-storagecabinetcustom .bcopdp-pair-card:hover .bcopdp-pair-link {
  gap: 8px; }

/* -------- BLOCK 10: FAQ ACCORDION -------- */
#bco-pdp-storagecabinetcustom .bcopdp-faqs {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 14px;
  padding: 32px; }

#bco-pdp-storagecabinetcustom .bcopdp-faqs h3 {
  font-family: var(--bco-display);
  font-size: 24px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.015em;
  margin-bottom: 18px; }

#bco-pdp-storagecabinetcustom .bcopdp-faqs h3 em {
  font-style: italic;
  color: var(--bco-teal-deep);
  font-weight: 500; }

#bco-pdp-storagecabinetcustom .bcopdp-faq {
  border-bottom: 1px solid var(--bco-border); }

#bco-pdp-storagecabinetcustom .bcopdp-faq:last-child {
  border-bottom: none; }

#bco-pdp-storagecabinetcustom .bcopdp-faq summary {
  list-style: none;
  cursor: pointer;
  padding: 16px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bco-navy);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transition: color 0.2s ease; }

#bco-pdp-storagecabinetcustom .bcopdp-faq summary::-webkit-details-marker {
  display: none; }

#bco-pdp-storagecabinetcustom .bcopdp-faq summary:hover {
  color: var(--bco-teal-deep); }

#bco-pdp-storagecabinetcustom .bcopdp-faq-icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.25s ease; }

#bco-pdp-storagecabinetcustom .bcopdp-faq[open] .bcopdp-faq-icon {
  transform: rotate(45deg);
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-storagecabinetcustom .bcopdp-faq-icon svg {
  width: 12px;
  height: 12px; }

#bco-pdp-storagecabinetcustom .bcopdp-faq-body {
  padding: 0 0 18px;
  font-size: 14.5px;
  color: var(--bco-ink-soft);
  line-height: 1.65; }

#bco-pdp-storagecabinetcustom .bcopdp-faq-body a {
  color: var(--bco-teal-deep);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600; }

/* -------- BLOCK 11: ASSEMBLY + WARRANTY -------- */
#bco-pdp-storagecabinetcustom .bcopdp-footer-blocks {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px; }

#bco-pdp-storagecabinetcustom .bcopdp-footer-block {
  background: var(--bco-bg-white);
  border: 1px solid var(--bco-border);
  border-radius: 12px;
  padding: 22px 26px;
  display: flex;
  align-items: flex-start;
  gap: 14px; }

#bco-pdp-storagecabinetcustom .bcopdp-footer-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--bco-mint-soft);
  border: 1px solid var(--bco-mint);
  color: var(--bco-teal-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0; }

#bco-pdp-storagecabinetcustom .bcopdp-footer-block:nth-child(2) .bcopdp-footer-icon {
  background: var(--bco-blush-wash);
  border-color: var(--bco-blush);
  color: var(--bco-blush-deep); }

#bco-pdp-storagecabinetcustom .bcopdp-footer-icon svg {
  width: 20px;
  height: 20px; }

#bco-pdp-storagecabinetcustom .bcopdp-footer-block h4 {
  font-family: var(--bco-display);
  font-size: 17px;
  font-weight: 600;
  color: var(--bco-navy);
  letter-spacing: -0.01em;
  margin-bottom: 4px; }

#bco-pdp-storagecabinetcustom .bcopdp-footer-block p {
  font-size: 13.5px;
  color: var(--bco-ink-soft);
  line-height: 1.55;
  margin-bottom: 8px; }

#bco-pdp-storagecabinetcustom .bcopdp-footer-block a {
  font-size: 12px;
  font-weight: 700;
  color: var(--bco-teal-deep);
  text-decoration: none;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid currentColor;
  padding-bottom: 1px; }

#bco-pdp-storagecabinetcustom .bcopdp-footer-block a:hover {
  color: var(--bco-navy); }

/* -------- RESPONSIVE -------- */
@media (max-width: 1024px) {
  #bco-pdp-storagecabinetcustom .bcopdp-pairs-grid {
    grid-template-columns: repeat(2, 1fr); } }

@media (max-width: 768px) {
  #bco-pdp-storagecabinetcustom > section,
  #bco-pdp-storagecabinetcustom > div[class^="bcopdp-"] {
    margin-bottom: 28px; }
  #bco-pdp-storagecabinetcustom .bcopdp-hero {
    padding: 28px 22px; }
  #bco-pdp-storagecabinetcustom .bcopdp-video {
    padding: 24px 22px; }
  #bco-pdp-storagecabinetcustom .bcopdp-feature {
    padding: 22px 22px;
    grid-template-columns: 56px 1fr;
    gap: 16px; }
  #bco-pdp-storagecabinetcustom .bcopdp-feature-icon {
    width: 48px;
    height: 48px; }
  #bco-pdp-storagecabinetcustom .bcopdp-feature-icon svg {
    width: 24px;
    height: 24px; }
  #bco-pdp-storagecabinetcustom .bcopdp-pillars {
    grid-template-columns: 1fr; }
  #bco-pdp-storagecabinetcustom .bcopdp-slots {
    padding: 26px 22px; }
  #bco-pdp-storagecabinetcustom .bcopdp-slot-diagram {
    grid-template-columns: 1fr;
    gap: 22px;
    padding: 22px; }
  #bco-pdp-storagecabinetcustom .bcopdp-specs {
    padding: 22px; }
  #bco-pdp-storagecabinetcustom .bcopdp-included {
    grid-template-columns: 1fr; }
  #bco-pdp-storagecabinetcustom .bcopdp-review {
    padding: 28px 26px; }
  #bco-pdp-storagecabinetcustom .bcopdp-review::before {
    font-size: 72px;
    left: 14px;
    top: 8px; }
  #bco-pdp-storagecabinetcustom .bcopdp-review-text {
    font-size: 17px; }
  #bco-pdp-storagecabinetcustom .bcopdp-pairs {
    padding: 24px; }
  #bco-pdp-storagecabinetcustom .bcopdp-pairs-grid {
    grid-template-columns: repeat(2, 1fr); }
  #bco-pdp-storagecabinetcustom .bcopdp-faqs {
    padding: 24px; }
  #bco-pdp-storagecabinetcustom .bcopdp-footer-blocks {
    grid-template-columns: 1fr; } }

@media (max-width: 480px) {
  #bco-pdp-storagecabinetcustom .bcopdp-pairs-grid {
    grid-template-columns: 1fr; } }

/* --- End Craft Storage Cabinet - Customize --- */
/* ============================================================
   END BCO Custom PDP Styles
   ============================================================ */
