/* MERCURY F.6.20.45.5C.7.9.6.5.8 — Product Modal + Bag Concept Alignment
   Final visual layer for the approved premium retail concepts.
   It deliberately styles the native product panel and native bag panel only. */

/* =========================================================
   PRODUCT DETAIL — editorial centred modal
   ========================================================= */
.dp-commerce-product[data-product-drawer] > .dp-commerce-product-panel{
  grid-template-columns:minmax(0,56fr) minmax(390px,44fr)!important;
  width:min(1450px,calc(100vw - 56px))!important;
  max-width:1450px!important;
  height:min(860px,calc(100dvh - 58px))!important;
  max-height:calc(100dvh - 58px)!important;
  border:1px solid rgba(255,215,0,.30)!important;
  border-radius:6px!important;
  background:#070707!important;
  box-shadow:0 34px 110px rgba(0,0,0,.76)!important;
}
.dp-commerce-product[data-product-drawer] > .dp-commerce-backdrop{
  background:rgba(0,0,0,.82)!important;
}
.dp-commerce-product[data-product-drawer] > .dp-commerce-product-panel > .dp-commerce-product-media{
  position:relative!important;
  padding:18px 18px 14px!important;
  background:var(--shop-builder-image-bg,#eee8df)!important;
  border-right:1px solid rgba(255,255,255,.08)!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-product-main{
  position:relative!important;
  min-height:0!important;
  background:var(--shop-builder-image-bg,#eee8df)!important;
  border-radius:4px!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-product-main img{
  padding:24px!important;
  object-fit:contain!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-gallery{
  gap:8px!important;
  padding-top:12px!important;
  scrollbar-width:thin!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-gallery button{
  flex:0 0 62px!important;
  width:62px!important;
  height:62px!important;
  padding:4px!important;
  background:#f5f2ed!important;
  border:1px solid rgba(0,0,0,.14)!important;
  border-radius:3px!important;
  opacity:.86!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-gallery button.is-active{
  border-color:#ffd700!important;
  opacity:1!important;
}
.dp-commerce-product[data-product-drawer] .mercury-gallery-arrow{
  position:absolute!important;
  top:50%!important;
  z-index:12!important;
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  margin-top:-38px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,255,255,.20)!important;
  border-radius:50%!important;
  background:rgba(8,8,8,.66)!important;
  color:#fff!important;
  font:300 28px/1 Helvetica,Arial,sans-serif!important;
  cursor:pointer!important;
  backdrop-filter:none!important;
  transition:background .16s ease,border-color .16s ease!important;
}
.dp-commerce-product[data-product-drawer] .mercury-gallery-arrow:hover{
  background:#0a0a0a!important;
  border-color:rgba(255,215,0,.65)!important;
}
.dp-commerce-product[data-product-drawer] .mercury-gallery-prev{left:28px!important}
.dp-commerce-product[data-product-drawer] .mercury-gallery-next{right:28px!important}

.dp-commerce-product[data-product-drawer] > .dp-commerce-product-panel > .dp-commerce-product-copy{
  padding:38px 38px 32px!important;
  background:#070707!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-close{
  top:14px!important;
  right:14px!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  border:0!important;
  background:transparent!important;
  color:#e9e9e5!important;
  font-size:30px!important;
  line-height:1!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-product-badges{
  min-height:0!important;
  margin:0 42px 12px 0!important;
  gap:5px!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-product-badges i{
  padding:4px 6px!important;
  border-color:#6d5f00!important;
  font-size:7px!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-product-copy>span{
  margin-bottom:5px!important;
  color:#ffd700!important;
  font-size:8px!important;
  letter-spacing:.18em!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-product-copy>small{
  margin-top:0!important;
  color:#686863!important;
  font-size:8px!important;
  letter-spacing:.14em!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-product-copy h2{
  margin:10px 40px 0 0!important;
  color:#f4f4f1!important;
  font-size:clamp(30px,2.5vw,45px)!important;
  font-weight:300!important;
  line-height:1.01!important;
  letter-spacing:-.035em!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-product-intro{
  margin:20px 0 18px!important;
  color:#aaa9a3!important;
  font-size:13px!important;
  line-height:1.62!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-product-price{
  padding:17px 0!important;
  border-top:1px solid #242424!important;
  border-bottom:1px solid #242424!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-product-price strong{
  font-size:28px!important;
  font-weight:300!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-product-price span{
  position:relative!important;
  padding-left:15px!important;
  color:#c8c8c2!important;
  font-size:8px!important;
  letter-spacing:.16em!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-product-price span:not(.is-out)::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:50%!important;
  width:7px!important;
  height:7px!important;
  margin-top:-4px!important;
  border-radius:50%!important;
  background:#52d672!important;
  box-shadow:0 0 0 3px rgba(82,214,114,.08)!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-variant-picker{
  padding:16px 0 2px!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-variant-picker>span{
  margin-bottom:8px!important;
  font-size:8px!important;
  letter-spacing:.16em!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-variant-picker button{
  min-width:150px!important;
  padding:11px 12px!important;
  border:1px solid #2c2c2c!important;
  background:#0a0a0a!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-variant-picker button.is-active{
  border-color:#ffd700!important;
  box-shadow:inset 0 0 0 1px rgba(255,215,0,.15)!important;
}
.dp-commerce-product[data-product-drawer] [data-product-add]{
  min-height:56px!important;
  margin:17px 0 5px!important;
  background:#ffd700!important;
  color:#080808!important;
  font-size:10px!important;
  letter-spacing:.20em!important;
}

/* Compact accordions created by the concept enhancer. */
.dp-commerce-product[data-product-drawer] [data-product-details]{
  margin-top:10px!important;
  border-bottom:1px solid #202020!important;
}
.dp-commerce-product[data-product-drawer] [data-product-details] details.mercury-product-accordion{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-top:1px solid #202020!important;
  background:transparent!important;
}
.dp-commerce-product[data-product-drawer] [data-product-details] details.mercury-product-accordion summary{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  min-height:54px!important;
  padding:0 30px 0 0!important;
  list-style:none!important;
  color:#d5d5d1!important;
  font:700 8px/1.2 Helvetica,Arial,sans-serif!important;
  letter-spacing:.17em!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
}
.dp-commerce-product[data-product-drawer] [data-product-details] details.mercury-product-accordion summary::-webkit-details-marker{display:none!important}
.dp-commerce-product[data-product-drawer] [data-product-details] details.mercury-product-accordion summary::after{
  content:"+"!important;
  position:absolute!important;
  right:3px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  color:#aaa!important;
  font-size:18px!important;
  font-weight:300!important;
}
.dp-commerce-product[data-product-drawer] [data-product-details] details.mercury-product-accordion[open] summary::after{content:"−"!important}
.dp-commerce-product[data-product-drawer] .mercury-product-accordion-body{
  padding:0 30px 17px 0!important;
  color:#999992!important;
  font-size:11px!important;
  line-height:1.55!important;
}
.dp-commerce-product[data-product-drawer] .mercury-product-accordion-body p{margin:0!important}
.dp-commerce-product[data-product-drawer] .mercury-product-accordion-body ul{margin:0!important;padding-left:16px!important}
.dp-commerce-product[data-product-drawer] .mercury-product-accordion-body li{margin:4px 0!important}
.dp-commerce-product[data-product-drawer] .dp-commerce-detail-tags{display:flex!important;flex-wrap:wrap!important;gap:5px!important}
.dp-commerce-product[data-product-drawer] .dp-commerce-detail-tags span{
  padding:6px 8px!important;
  border:1px solid #292929!important;
  color:#aaa!important;
  font-size:7px!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
}
.dp-commerce-product[data-product-drawer] .dp-commerce-product-footnote{
  margin-top:15px!important;
  color:#555!important;
  font-size:8px!important;
  line-height:1.5!important;
}

/* =========================================================
   BAG — compact premium drawer
   ========================================================= */
.dp-commerce-bag[data-bag-drawer] > .dp-commerce-bag-panel{
  width:min(460px,calc(100vw - 18px))!important;
  max-width:460px!important;
  background:#070707!important;
  border-left:1px solid rgba(255,215,0,.22)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scrollbar-width:thin!important;
}
.dp-commerce-bag-panel > .mercury-bag-heading{
  position:sticky!important;
  top:0!important;
  z-index:12!important;
  padding:22px 24px!important;
  background:rgba(7,7,7,.985)!important;
  border-bottom:1px solid #262626!important;
}
.dp-commerce-bag-panel > .mercury-bag-heading span{
  color:#f0f0ed!important;
  font-size:15px!important;
  font-weight:500!important;
  letter-spacing:.17em!important;
}
.dp-commerce-bag-panel > .mercury-bag-heading strong{
  color:#ffd700!important;
  font-size:13px!important;
  font-weight:500!important;
  letter-spacing:.14em!important;
}
.dp-commerce-bag-panel > .mercury-bag-heading .mercury-bag-close{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  font-size:27px!important;
}
.dp-commerce-bag-panel > .dp-commerce-bag-items{
  flex:0 0 auto!important;
  min-height:0!important;
  overflow:visible!important;
}
.dp-commerce-bag-panel.is-overflowing > .dp-commerce-bag-items{
  flex:1 1 auto!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
}
.dp-commerce-bag-panel .dp-commerce-bag-item{
  position:relative!important;
  grid-template-columns:88px minmax(0,1fr) auto!important;
  gap:14px!important;
  min-height:132px!important;
  padding:18px 24px!important;
  border-bottom:1px solid #242424!important;
}
.dp-commerce-bag-panel .dp-commerce-bag-item-media{
  width:88px!important;
  height:88px!important;
  align-self:start!important;
  background:#f3f1ed!important;
  border:1px solid rgba(255,255,255,.10)!important;
}
.dp-commerce-bag-panel .dp-commerce-bag-item-media img{
  padding:7px!important;
  object-fit:contain!important;
}
.dp-commerce-bag-panel .dp-commerce-bag-item-copy{
  padding-top:2px!important;
  padding-bottom:26px!important;
}
.dp-commerce-bag-panel .dp-commerce-bag-item-copy>span{
  margin:0 0 5px!important;
  color:#85857f!important;
  font-size:8px!important;
  letter-spacing:.17em!important;
}
.dp-commerce-bag-panel .dp-commerce-bag-item-copy>strong{
  padding-right:4px!important;
  color:#f1f1ee!important;
  font-size:13px!important;
  font-weight:400!important;
  line-height:1.18!important;
}
.dp-commerce-bag-panel .dp-commerce-bag-item-copy>small{
  margin-top:6px!important;
  color:#8a8a84!important;
  font-size:10px!important;
}
.dp-commerce-bag-panel .dp-commerce-bag-item-price{
  padding-top:1px!important;
  color:#f1f1ee!important;
  font-size:14px!important;
  font-weight:400!important;
  text-align:right!important;
}
.dp-commerce-bag-panel .dp-commerce-bag-qty{
  grid-template-columns:31px 36px 31px!important;
  margin-top:11px!important;
  border-color:#343434!important;
}
.dp-commerce-bag-panel .dp-commerce-bag-qty button,
.dp-commerce-bag-panel .dp-commerce-bag-qty b{
  height:31px!important;
  min-height:31px!important;
  background:#090909!important;
  font-size:12px!important;
}
.dp-commerce-bag-panel .dp-commerce-bag-remove{
  position:absolute!important;
  right:24px!important;
  bottom:18px!important;
  width:auto!important;
  margin:0!important;
  color:#85857f!important;
  font-size:8px!important;
  line-height:1!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  border-bottom:1px solid #666!important;
}
.dp-commerce-bag-panel > [data-bag-footer]{
  position:relative!important;
  bottom:auto!important;
  flex:0 0 auto!important;
  z-index:8!important;
  margin:0!important;
  padding:20px 24px 24px!important;
  background:#070707!important;
  border-top:1px solid rgba(255,215,0,.42)!important;
}
.dp-commerce-bag-panel.is-overflowing > [data-bag-footer]{
  position:sticky!important;
  bottom:0!important;
  box-shadow:0 -18px 34px rgba(0,0,0,.58)!important;
}
.dp-commerce-bag-panel [data-bag-footer]::before{
  content:"SUBTOTAL"!important;
  display:block!important;
  float:left!important;
  margin-top:4px!important;
  color:#d5d5d1!important;
  font:500 10px/1 Helvetica,Arial,sans-serif!important;
  letter-spacing:.22em!important;
}
.dp-commerce-bag-panel [data-bag-subtotal]{
  display:block!important;
  margin-left:auto!important;
  color:#ffd700!important;
  font-size:28px!important;
  font-weight:300!important;
  line-height:1!important;
  text-align:right!important;
}
.dp-commerce-bag-panel .dp-commerce-checkout{
  clear:both!important;
  width:100%!important;
  min-height:60px!important;
  margin:21px 0 0!important;
  border:1px solid #ffd700!important;
  background:#ffd700!important;
  color:#080808!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.22em!important;
}
.dp-commerce-bag-panel .mercury-checkout-note{
  position:relative!important;
  display:block!important;
  margin:15px auto 0!important;
  padding-left:19px!important;
  width:max-content!important;
  max-width:100%!important;
  color:#989892!important;
  font-size:10px!important;
  line-height:1.4!important;
  text-align:center!important;
}
.dp-commerce-bag-panel .mercury-checkout-note:not(.is-error)::before{
  content:""!important;
  position:absolute!important;
  left:1px!important;
  top:2px!important;
  width:9px!important;
  height:8px!important;
  border:1px solid #aaa!important;
  border-radius:1px!important;
  box-sizing:border-box!important;
}
.dp-commerce-bag-panel .mercury-checkout-note:not(.is-error)::after{
  content:""!important;
  position:absolute!important;
  left:3px!important;
  top:-2px!important;
  width:5px!important;
  height:6px!important;
  border:1px solid #aaa!important;
  border-bottom:0!important;
  border-radius:5px 5px 0 0!important;
  box-sizing:border-box!important;
}
.dp-commerce-bag-panel .mercury-bag-aftercare{
  margin:12px 0 0!important;
  color:#565650!important;
  font-size:9px!important;
  line-height:1.55!important;
  text-align:left!important;
}

@media(max-width:980px){
  .dp-commerce-product[data-product-drawer] > .dp-commerce-product-panel{
    grid-template-columns:1fr!important;
    grid-template-rows:minmax(300px,46vh) minmax(0,1fr)!important;
    width:calc(100vw - 24px)!important;
    height:calc(100dvh - 24px)!important;
  }
  .dp-commerce-product[data-product-drawer] .mercury-gallery-arrow{display:none!important}
}
@media(max-width:650px){
  .dp-commerce-bag[data-bag-drawer] > .dp-commerce-bag-panel{width:100vw!important;max-width:none!important}
  .dp-commerce-bag-panel > .mercury-bag-heading{padding:17px!important}
  .dp-commerce-bag-panel .dp-commerce-bag-item{grid-template-columns:74px minmax(0,1fr) auto!important;gap:11px!important;padding:15px 17px!important;min-height:116px!important}
  .dp-commerce-bag-panel .dp-commerce-bag-item-media{width:74px!important;height:74px!important}
  .dp-commerce-bag-panel .dp-commerce-bag-remove{right:17px!important;bottom:15px!important}
  .dp-commerce-bag-panel > [data-bag-footer]{padding:18px 17px 22px!important}
  .dp-commerce-bag-panel [data-bag-subtotal]{font-size:25px!important}
  .dp-commerce-bag-panel .dp-commerce-checkout{min-height:56px!important}
}


/* MERCURY F.6.20.45.5C.7.9.6.5.8.2 BAG FOOTER DEDUPLICATION */
/* Native footer already renders its own SUBTOTAL label. The 5.8 concept pseudo-label
   created the visible duplicate, so suppress only the generated copy. */
.dp-commerce-bag-panel [data-bag-footer]::before{
  content:none!important;
  display:none!important;
}
/* Keep one concise concept reassurance sentence and hide the older native duplicate. */
.dp-commerce-bag-panel .mercury-legacy-checkout-copy{
  display:none!important;
}
