#dzp-widget,
#dzp-view{display:contents;}
#dzp-product-title[hidden]{display:none !important;}

/* ════════════════════════════════════════════════════════════
   DESKTOP VIEW — original visual system preserved
════════════════════════════════════════════════════════════ */
/* ════════════════════════════════════════════════════════════
   DENZO HOME · Desktop — same token system as the mobile widget.
════════════════════════════════════════════════════════════ */
#dzd-px{
  --dzd-ink:        #16130f;
  --dzd-ink-soft:   #4d463d;
  --dzd-paper:      #faf8f4;
  --dzd-cream:      #f2ede4;
  --dzd-gold:       #b49a6b;
  --dzd-gold-deep:  #8f7546;
  --dzd-bordeaux:   #7e2a33;
  --dzd-line:       rgba(22,19,15,.09);
  --dzd-shadow:     0 18px 44px -18px rgba(22,19,15,.28);
  --dzd-pad:        clamp(28px, 4vw, 64px);
  --dzd-side-rail:  64px;
  --dzd-rail-gap:   16px;
  --dzd-ease:       cubic-bezier(.22,.72,.18,1);
  --dzd-sticky-top: 90px;

  position:relative;
  /* Break out of Elementor's boxed parent before its stretch JS runs. */
  width:100vw;
  max-width:100vw;
  margin-inline:calc(50% - 50vw);
  background:var(--dzd-paper);
  color:var(--dzd-ink);
  font-family:inherit;
  line-height:1.9;
  -webkit-font-smoothing:antialiased;
}
#dzd-px *,#dzd-px *::before,#dzd-px *::after{box-sizing:border-box;}

#dzd-px [hidden]{display:none !important;}
#dzd-px img{display:block;max-width:100%;}
#dzd-px button{font-family:inherit;color:inherit;background:none;border:0;cursor:pointer;}

@media (max-width:1024.98px){ #dzd-px{display:none !important;} }

.dzd-shell{
  width:100%;
  max-width:none;
  margin:0;
  padding-inline-start:calc(var(--dzd-side-rail) + var(--dzd-rail-gap));
  padding-inline-end:var(--dzd-pad);
}

.dzd-kicker{
  margin:0 0 10px;font-size:11px;font-weight:700;
  letter-spacing:.32em;text-transform:uppercase;color:var(--dzd-gold-deep);
}
.dzd-section-title{margin:0 0 26px;font-size:clamp(22px,2vw,28px);font-weight:800;line-height:1.6;}

.dzd-main{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(400px,1fr);
  gap:clamp(34px,4vw,72px);
  align-items:start;
  direction:ltr;
  padding-block:clamp(18px, 2.2vw, 36px) clamp(48px, 5vw, 80px);
}

.dzd-gallery{
  display:flex;
  flex-direction:column;
  gap:clamp(12px,1.2vw,20px);
  min-width:0;
  direction:ltr;
}

.dzd-gallery-item{
  position:relative;
  width:100%;
  aspect-ratio:4/5;
  margin:0;
  overflow:hidden;
  background:var(--dzd-cream);
}

.dzd-gallery-item::after{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:4;
  box-shadow:inset 0 0 0 1px rgba(22,19,15,.05);
}

.dzd-gallery-img{
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
}

.dzd-panel-col{
  position:sticky;
  top:var(--dzd-sticky-top);
  align-self:start;
  min-width:0;
  max-width:none;
  margin:0;
  direction:rtl;
  /*
   * A sticky element taller than the space below its top offset has its lower
   * half permanently off-screen: the page cannot scroll it into view because
   * the element is pinned, so the shopper had to scroll past the entire
   * gallery before the panel released. Capping the height turns that overflow
   * into a scroll of its own. Short panels never reach the cap, so
   * single/variable products behave exactly as before, and scroll chaining
   * still carries the wheel on to the page once the list bottoms out.
   */
  max-height:calc(100dvh - var(--dzd-sticky-top) - 24px);
  overflow-y:auto;
  /*
   * Per spec, an overflow-y other than visible forces overflow-x:visible to
   * compute to auto — which is where the stray horizontal bar came from. The
   * panel never has anything to scroll sideways, so that axis is pinned shut.
   */
  overflow-x:hidden;
  /* Scrollable, but without the two scrollbars cluttering the panel. */
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.dzd-panel-col::-webkit-scrollbar{width:0;height:0;}
/* Older engines without dvh fall back to the classic viewport unit. */
@supports not (height: 100dvh){
  .dzd-panel-col{max-height:calc(100vh - var(--dzd-sticky-top) - 24px);}
}

.dzd-panel{
  padding:clamp(16px,1.4vw,24px) 0 16px;
  border-top:1px solid var(--dzd-gold);
}
.dzd-panel-info{min-width:0;}
.dzd-panel-info > .dzd-kicker{margin-top:0;}

.dzd-crumb{
  display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;
  margin:0 0 clamp(14px,1.4vw,20px);
  font-size:12px;line-height:1.7;color:var(--dzd-ink-soft);
}
.dzd-crumb a{
  color:var(--dzd-ink-soft);text-decoration:none;
  transition:color .3s var(--dzd-ease);
}
.dzd-crumb a:hover{color:var(--dzd-gold-deep);}
.dzd-crumb .dzd-crumb-sep{color:var(--dzd-line);font-size:11px;user-select:none;}
.dzd-crumb .dzd-crumb-current{color:var(--dzd-ink);font-weight:700;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px;}

.dzd-panel-buy{margin-top:clamp(16px,1.8vw,26px);}

.dzd-title{
  margin:0 0 8px;font-size:clamp(24px,1.9vw,31px);
  font-weight:500;line-height:1.55;letter-spacing:-.005em;
}

.dzd-rating{display:flex;align-items:center;gap:10px;margin-bottom:6px;}
.dzd-stars{
  position:relative;display:inline-block;width:92px;height:17px;line-height:1;
  direction:ltr;cursor:pointer;-webkit-tap-highlight-color:transparent;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='92' height='17' viewBox='0 0 92 17'><g fill='%23d8d2c6'><path d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/><path transform='translate(18.75)' d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/><path transform='translate(37.5)' d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/><path transform='translate(56.25)' d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/><path transform='translate(75)' d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/></g></svg>") no-repeat;
}
.dzd-stars-fill{
  position:absolute;inset:0;overflow:hidden;left:0;right:auto;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='92' height='17' viewBox='0 0 92 17'><g fill='%23b49a6b'><path d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/><path transform='translate(18.75)' d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/><path transform='translate(37.5)' d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/><path transform='translate(56.25)' d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/><path transform='translate(75)' d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/></g></svg>") no-repeat;
}
.dzd-rating-count{font-size:12.5px;color:var(--dzd-ink-soft);}

.dzd-price-block{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:12px 0 0;}
.dzd-price-now{margin:0;font-size:26px;font-weight:500;letter-spacing:-.01em;}
.dzd-price-was{margin:0;font-size:15px;color:var(--dzd-ink-soft);text-decoration:line-through;text-decoration-color:var(--dzd-bordeaux);}
.dzd-sale-badge{
  padding:4px 12px;border-radius:999px;align-self:center;
  background:var(--dzd-bordeaux);color:#fff;
  font-size:12px;font-weight:800;letter-spacing:.03em;
}

.dzd-stock{margin:8px 0 0;font-size:13px;font-weight:600;}
.dzd-stock.ok{color:#2d6a4f;}
.dzd-stock.low{color:var(--dzd-gold-deep);}
.dzd-stock.out{color:var(--dzd-bordeaux);}

/* ─── Variations ─── */
.dzd-variations{margin-top:0;}
.dzd-var-group{margin:0 0 clamp(14px,1.4vw,20px);}
.dzd-var-group:last-child{margin-bottom:0;}
.dzd-var-name{
  display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;
  font-size:13px;color:var(--dzd-ink-soft);margin-bottom:8px;
}
.dzd-var-name b{margin-inline-start:auto;color:var(--dzd-ink);font-weight:700;}
.dzd-chips{display:flex;flex-wrap:wrap;gap:9px;}

#dzd-px .dzd-chip{
  padding:9px 16px;border:1px solid rgba(22,19,15,.4);border-radius:0;
  background:transparent;font-size:13.5px;font-weight:600;
  transition:border-color .3s var(--dzd-ease),background .3s var(--dzd-ease),
             color .3s var(--dzd-ease),transform .2s var(--dzd-ease);
}
#dzd-px .dzd-chip:hover{border-color:var(--dzd-ink);}
#dzd-px .dzd-chip:active{transform:scale(.96);}
#dzd-px .dzd-chip.is-on{background:var(--dzd-ink);border-color:var(--dzd-ink);color:var(--dzd-paper);}
#dzd-px .dzd-chip.is-off{opacity:.32;text-decoration:line-through;}

#dzd-px .dzd-chips--fill{
  display:grid;grid-template-columns:repeat(var(--dzd-cols,2),minmax(0,1fr));gap:9px;
}
#dzd-px .dzd-chips--fill .dzd-chip{
  width:auto;text-align:center;white-space:nowrap;padding-inline:8px;
  font-size:clamp(12px,1vw,13.5px);
}

#dzd-px .dzd-chip--swatch{
  width:40px;height:40px;padding:0;border-radius:0;
  display:inline-flex;align-items:center;justify-content:center;
  background:transparent;border:2px solid transparent;
}
#dzd-px .dzd-swatch-dot{width:28px;height:28px;border-radius:0;box-shadow:inset 0 0 0 1px rgba(22,19,15,.18);}
#dzd-px .dzd-chip--swatch.is-on{background:transparent;border:2px solid var(--dzd-gold-deep);transform:scale(1.06);}
#dzd-px .dzd-chip--swatch.is-off{opacity:.3;text-decoration:none;position:relative;}
#dzd-px .dzd-chip--swatch.is-off::after{
  content:"";position:absolute;inset:9px;border-radius:0;
  background:linear-gradient(45deg,transparent 45%,rgba(22,19,15,.6) 45%,rgba(22,19,15,.6) 55%,transparent 55%);
}

#dzd-px .dzd-guide-btn{
  display:inline-flex;align-items:center;gap:5px;
  padding:5px 12px;border:1px solid rgba(143,117,70,.45);border-radius:0;
  font-size:11.5px;font-weight:500;color:var(--dzd-gold-deep);
  transition:background .3s var(--dzd-ease),color .3s var(--dzd-ease),border-color .3s var(--dzd-ease);
}
#dzd-px .dzd-guide-btn:hover{background:var(--dzd-gold-deep);color:#fff;border-color:var(--dzd-gold-deep);}
.dzd-guide-ico{width:14px;height:14px;flex:0 0 auto;}

#dzd-px .dzd-setbox{
  margin-top:clamp(14px,1.4vw,20px);
  border:1px solid rgba(22,19,15,.4);border-radius:0;
  background:transparent;
  animation:dzdSetIn .45s var(--dzd-ease);
}
@keyframes dzdSetIn{from{opacity:0;transform:translateY(6px);}}
#dzd-px .dzd-setbox > summary{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:11px 15px;list-style:none;cursor:pointer;
  font-size:12.5px;font-weight:700;letter-spacing:.02em;color:var(--dzd-ink);
  -webkit-tap-highlight-color:transparent;
}
#dzd-px .dzd-setbox > summary::-webkit-details-marker{display:none;}
.dzd-setbox-mark{
  flex:0 0 auto;font-size:16px;font-weight:400;color:var(--dzd-gold-deep);
  transition:transform .4s var(--dzd-ease);
}
.dzd-setbox-title{margin:0;font-size:12.5px;font-weight:700;letter-spacing:.02em;color:var(--dzd-ink);line-height:1.6;}
#dzd-px .dzd-setbox[open] .dzd-setbox-mark{transform:rotate(45deg);}
.dzd-setbox-body{padding:0 15px 13px;}
.dzd-setbox-list{list-style:none;margin:0;padding:0;}
.dzd-setbox-list li{
  position:relative;padding-inline-start:16px;
  font-size:12.5px;line-height:1.9;color:var(--dzd-ink-soft);
}
.dzd-setbox-list li::before{
  content:"";position:absolute;inset-inline-start:0;top:.72em;
  width:5px;height:5px;background:var(--dzd-gold-deep);
}

.dzd-buy-row{
  display:flex;align-items:stretch;gap:10px;
  margin-top:clamp(16px,1.8vw,24px);
}
.dzd-qty{
  display:flex;align-items:center;gap:4px;flex:0 0 auto;
  border:1px solid var(--dzd-line);border-radius:999px;background:#fff;
}
.dzd-qty-btn{width:40px;height:40px;font-size:19px;line-height:1;color:var(--dzd-ink);}
.dzd-qty-btn:disabled{opacity:.25;}
.dzd-qty-num{min-width:32px;text-align:center;font-size:15px;font-weight:700;}

.dzd-btn{
  flex:1 1 auto;padding:13px 10px;border-radius:999px;
  font-size:14.5px;font-weight:800;letter-spacing:.02em;
  transition:transform .2s var(--dzd-ease),opacity .3s var(--dzd-ease),
             background .3s var(--dzd-ease),color .3s var(--dzd-ease);
}
.dzd-btn:active{transform:scale(.97);}
.dzd-btn:disabled{opacity:.35;pointer-events:none;}
#dzd-px .dzd-btn-solid{
  background:var(--dzd-ink);color:var(--dzd-paper);
  border:1.5px solid var(--dzd-ink);
  box-shadow:inset 0 0 0 1px rgba(180,154,107,.45);
}
#dzd-px .dzd-btn-solid:hover{background:#000;color:var(--dzd-paper);border-color:var(--dzd-ink);}
#dzd-px .dzd-btn-outline{
  background:transparent;color:var(--dzd-ink);
  border:1px solid var(--dzd-ink);
}
.dzd-btn.is-busy{position:relative;color:transparent !important;}
.dzd-btn.is-busy::after{
  content:"";position:absolute;inset:0;margin:auto;
  width:18px;height:18px;border-radius:50%;
  border:2px solid rgba(180,154,107,.4);border-top-color:var(--dzd-gold);
  animation:dzdSpin .7s linear infinite;
}
@keyframes dzdSpin{to{transform:rotate(360deg);}}

#dzd-px .dzd-jump{
  display:block;width:100%;margin-top:16px;padding-top:14px;
  border-top:1px solid var(--dzd-line);
  font-size:13px;font-weight:700;color:var(--dzd-gold-deep);
  text-align:center;letter-spacing:.02em;
  transition:color .3s var(--dzd-ease);
}
#dzd-px .dzd-jump:hover{color:var(--dzd-ink);}

.dzd-acc-h2{margin:0 0 clamp(16px,1.6vw,22px);font-size:clamp(19px,1.7vw,23px);font-weight:500;}
.dzd-accordions{margin:0;border-top:1px solid var(--dzd-gold);}
.dzd-acc{border-bottom:1px solid var(--dzd-line);}
.dzd-acc summary{
  display:flex;justify-content:space-between;align-items:center;
  padding:16px 2px;list-style:none;cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
.dzd-acc summary::-webkit-details-marker{display:none;}

.dzd-acc-h3{
  margin:0;font-size:15px;font-weight:500;letter-spacing:.02em;
  line-height:1.6;color:var(--dzd-ink);
}
.dzd-acc-mark{
  font-size:18px;font-weight:400;color:var(--dzd-gold-deep);
  transition:transform .4s var(--dzd-ease);
}
.dzd-acc[open] .dzd-acc-mark{transform:rotate(45deg);}
.dzd-acc-body{padding:2px 2px 20px;font-size:14px;color:var(--dzd-ink-soft);line-height:2;}

.dzd-spec-list{margin:0;}
.dzd-spec-row{
  display:flex;justify-content:space-between;gap:16px;
  padding:11px 0;border-bottom:1px dashed var(--dzd-line);
}
.dzd-spec-row:last-child{border-bottom:0;}
.dzd-spec-row dt{flex:0 0 auto;font-size:13.5px;color:var(--dzd-ink-soft);}
.dzd-spec-row dd{margin:0;font-size:14px;font-weight:600;text-align:left;color:var(--dzd-ink);}
.dzd-meta span{display:block;margin-top:6px;font-size:13px;}

.dzd-story{
  padding:clamp(40px,4vw,64px) 0;
  border-top:1px solid var(--dzd-line);
}

.dzd-story-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(400px,1fr);
  gap:clamp(34px,4vw,72px);
  align-items:start;
  direction:ltr;
}
.dzd-longdesc-col{min-width:0;direction:rtl;}
.dzd-acc-col{
  position:sticky;top:var(--dzd-sticky-top);
  align-self:start;min-width:0;direction:rtl;
}
.dzd-longdesc{font-size:15px;color:var(--dzd-ink-soft);text-align:right;}
.dzd-longdesc:empty{display:none;}
.dzd-longdesc img{width:100%;height:auto;border-radius:14px;margin:18px 0;}
.dzd-longdesc h1,.dzd-longdesc h2,.dzd-longdesc h3,.dzd-longdesc h4{
  color:var(--dzd-ink);line-height:1.6;margin:1.4em 0 .5em;
}
.dzd-longdesc table{width:100%;border-collapse:collapse;font-size:13.5px;}
.dzd-longdesc td,.dzd-longdesc th{border:1px solid var(--dzd-line);padding:8px 10px;}

/* ─── Reviews ─── */
.dzd-reviews{
  padding:clamp(40px,4vw,64px) 0;
  border-top:1px solid var(--dzd-line);
}
.dzd-rv-grid{
  display:grid;grid-template-columns:260px minmax(0,1fr);
  gap:clamp(28px,4vw,64px);align-items:start;
}
.dzd-rv-summary{
  position:sticky;top:var(--dzd-sticky-top);
  text-align:center;padding:26px 20px;
  background:var(--dzd-cream);border-radius:18px;
}
.dzd-rv-avg{margin:0;font-size:44px;font-weight:800;line-height:1.2;}
.dzd-rv-summary .dzd-stars{cursor:default;margin-top:4px;}
.dzd-rv-total{margin:8px 0 16px;font-size:12.5px;color:var(--dzd-ink-soft);}
.dzd-rv-cta{flex:0 0 auto;width:100%;padding:12px 10px;font-size:13.5px;}
.dzd-rv-list{display:flex;flex-direction:column;}
.dzd-rv-item{padding:20px 0;border-bottom:1px solid var(--dzd-line);}
.dzd-rv-item:first-child{padding-top:4px;}
.dzd-rv-head{display:flex;align-items:center;gap:12px;margin-bottom:8px;}
.dzd-rv-ava{width:40px;height:40px;border-radius:50%;object-fit:cover;background:var(--dzd-cream);flex:0 0 auto;}
.dzd-rv-ava--empty{
  display:flex;align-items:center;justify-content:center;overflow:hidden;
  color:var(--dzd-ink);opacity:.34;
  box-shadow:inset 0 0 0 1px rgba(22,19,15,.07);
}
.dzd-rv-ava--empty svg{width:100%;height:100%;display:block;}
.dzd-rv-who{display:flex;flex-direction:column;line-height:1.6;}
.dzd-rv-name{font-size:13.5px;font-weight:700;}
.dzd-rv-date{font-size:11.5px;color:var(--dzd-ink-soft);}
.dzd-rv-item .dzd-stars{margin-inline-start:auto;cursor:default;transform:scale(.85);transform-origin:left center;}
.dzd-rv-text{margin:0;font-size:13.5px;color:var(--dzd-ink-soft);}
.dzd-rv-text p{margin:0 0 .4em;}
.dzd-rv-empty{padding:24px 0;font-size:13.5px;color:var(--dzd-ink-soft);}

/* ─── Related products ─── */
.dzd-related{
  padding:clamp(40px,4vw,64px) 0 clamp(56px,5vw,88px);
  border-top:1px solid var(--dzd-line);
}
.dzd-rel-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px;}
.dzd-rel-head .dzd-section-title{margin-bottom:0;}
.dzd-rel-nav{display:flex;gap:8px;}
#dzd-px .dzd-rel-arrow{
  width:44px;height:44px;border-radius:50%;
  border:1px solid rgba(22,19,15,.24);font-size:17px;
  transition:background .3s var(--dzd-ease),color .3s var(--dzd-ease),opacity .3s var(--dzd-ease);
}
#dzd-px .dzd-rel-arrow:hover{background:var(--dzd-ink);color:var(--dzd-paper);}
#dzd-px .dzd-rel-arrow:disabled{opacity:.25;pointer-events:none;}
.dzd-rel-track{
  display:flex;gap:clamp(14px,1.4vw,22px);
  overflow-x:auto;scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;scrollbar-width:none;
  padding-bottom:6px;
}
.dzd-rel-track::-webkit-scrollbar{display:none;}
.dzd-rel-card{
  flex:0 0 clamp(220px, 21vw, 300px);
  scroll-snap-align:start;
  text-decoration:none;color:inherit;
}
.dzd-rel-imgwrap{overflow:hidden;background:var(--dzd-cream);}
.dzd-rel-card img{
  width:100%;aspect-ratio:3/4;object-fit:cover;
  transition:transform 1.2s var(--dzd-ease);
}
@media (hover:hover){
  .dzd-rel-card:hover img{transform:scale(1.05);}
}
.dzd-rel-name{
  margin:12px 0 2px;font-size:13.5px;font-weight:700;line-height:1.7;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.dzd-rel-price{margin:0;font-size:13px;color:var(--dzd-gold-deep);font-weight:700;}

/* ─── Review modal ─── */
.dzd-veil{
  position:fixed;inset:0;z-index:95;
  background:rgba(22,19,15,.45);
  -webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);
  opacity:0;transition:opacity .45s var(--dzd-ease);
}
.dzd-veil.is-in{opacity:1;}
.dzd-modal{
  position:fixed;z-index:96;top:50%;left:50%;
  width:min(480px, calc(100vw - 48px));
  background:var(--dzd-paper);border-radius:22px;
  padding:34px 32px 28px;
  box-shadow:var(--dzd-shadow);
  text-align:center;
  transform:translate(-50%,-50%) scale(.94);opacity:0;
  transition:transform .55s var(--dzd-ease),opacity .4s var(--dzd-ease);
}
.dzd-modal.is-in{transform:translate(-50%,-50%) scale(1);opacity:1;}
#dzd-px .dzd-modal-close{
  position:absolute;top:18px;right:20px;left:auto;
  width:26px;height:26px;padding:0;
  display:block;
  font-size:0;line-height:0;color:transparent;
  border:0;background:transparent;
  opacity:.6;transition:opacity .3s var(--dzd-ease);
}
#dzd-px .dzd-modal-close:hover{opacity:1;}
#dzd-px .dzd-modal-close::before,
#dzd-px .dzd-modal-close::after{
  content:"";position:absolute;top:50%;left:50%;
  width:18px;height:1.5px;border-radius:2px;background:var(--dzd-ink);
}
#dzd-px .dzd-modal-close::before{transform:translate(-50%,-50%) rotate(45deg);}
#dzd-px .dzd-modal-close::after{transform:translate(-50%,-50%) rotate(-45deg);}
.dzd-modal-title{margin:2px 0 14px;font-size:17px;font-weight:800;line-height:1.7;}
.dzd-pick-stars{display:flex;justify-content:center;gap:8px;}
#dzd-px .dzd-pick-star{
  font-size:38px;line-height:1;padding:4px 6px;color:#d8d2c6;
  background:transparent;border:0;
  transition:color .25s var(--dzd-ease),transform .25s var(--dzd-ease);
}
#dzd-px .dzd-pick-star.is-lit{color:var(--dzd-gold);text-shadow:0 2px 14px rgba(180,154,107,.45);}
#dzd-px .dzd-pick-star:active{transform:scale(1.2);}
.dzd-pick-label{margin:6px 0 4px;min-height:1.6em;font-size:12.5px;font-weight:700;color:var(--dzd-gold-deep);}
.dzd-field{
  width:100%;margin-top:10px;padding:12px 14px;
  border:1px solid rgba(22,19,15,.2);border-radius:12px;
  background:#fff;font-family:inherit;font-size:13.5px;color:var(--dzd-ink);
  outline:none;transition:border-color .3s var(--dzd-ease);
}
.dzd-field:focus{border-color:var(--dzd-gold-deep);}
.dzd-field-area{resize:none;line-height:1.9;}
.dzd-field-ltr{direction:ltr;text-align:left;}
.dzd-guest-fields{display:grid;grid-template-columns:1fr 1.4fr;gap:10px;}
.dzd-guest-fields .dzd-field{margin-top:10px;}
.dzd-modal-submit{display:block;width:100%;margin-top:16px;}

#dzd-px .dzd-guide{
  position:fixed;z-index:96;top:50%;left:50%;
  width:min(620px, calc(100vw - 48px));max-height:86vh;
  display:flex;flex-direction:column;
  background:var(--dzd-paper);border-radius:22px;overflow:hidden;
  box-shadow:var(--dzd-shadow);
  transform:translate(-50%,-50%) scale(.965);opacity:0;visibility:hidden;
  transition:opacity .34s var(--dzd-ease),
             transform .42s var(--dzd-ease),
             visibility 0s linear .42s;
}
#dzd-px .dzd-guide.is-in{
  opacity:1;visibility:visible;transform:translate(-50%,-50%) scale(1);
  transition:opacity .34s var(--dzd-ease),
             transform .42s var(--dzd-ease),
             visibility 0s;
}
.dzd-guide-head{
  flex:0 0 auto;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
  padding:22px 26px 16px;border-bottom:1px solid var(--dzd-line);
}
.dzd-guide-title{margin:2px 0 0;font-size:18px;font-weight:800;line-height:1.6;}
#dzd-px .dzd-guide-close{
  flex:0 0 auto;width:32px;height:32px;border-radius:50%;
  font-size:13px;color:var(--dzd-ink-soft);border:1px solid var(--dzd-line);
}
.dzd-guide-body{flex:1 1 auto;overflow-y:auto;padding:26px;}

.dzd-guide-media{
  position:relative;width:100%;aspect-ratio:4/3;
  max-height:calc(86vh - 150px);
  margin-inline:auto;
  background:var(--dzd-cream);border-radius:14px;overflow:hidden;
}
.dzd-guide-media::before{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.5) 50%,transparent 80%);
  transform:translateX(-100%);
  animation:dzdGShine 1.6s var(--dzd-ease) infinite;
}
.dzd-guide-media.is-done::before{animation:none;opacity:0;}
@keyframes dzdGShine{to{transform:translateX(100%);}}
#dzd-px .dzd-guide-img{
  position:absolute;inset:0;z-index:2;width:100%;height:100%;
  object-fit:contain;object-position:center;
  opacity:0;transition:opacity .5s var(--dzd-ease);
}
#dzd-px .dzd-guide-img.is-loaded{opacity:1;}
.dzd-guide-ph{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;
  min-height:260px;padding:48px 24px;text-align:center;
  border:1.5px dashed rgba(22,19,15,.22);border-radius:16px;
  color:var(--dzd-ink-soft);font-size:14px;line-height:1.8;
}
.dzd-guide-ph-mark{font-size:28px;color:var(--dzd-gold);}

/* ─── Toast ─── */
.dzd-toast{
  position:fixed;z-index:90;bottom:28px;left:50%;
  transform:translate(-50%,16px);
  max-width:520px;
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:13px 20px;border-radius:14px;
  background:var(--dzd-ink);color:var(--dzd-paper);
  font-size:13.5px;box-shadow:var(--dzd-shadow);
  opacity:0;
  transition:transform .45s var(--dzd-ease),opacity .45s var(--dzd-ease);
}
.dzd-toast.is-in{transform:translate(-50%,0);opacity:1;}
.dzd-toast-link{color:var(--dzd-gold);font-weight:800;text-decoration:none;white-space:nowrap;}

/* ─── Skeleton ─── */
.dzd-skeleton{padding-block:clamp(28px,3vw,48px);}
.dzd-sk-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(400px,1fr);
  gap:clamp(34px,4vw,72px);
  align-items:start;
  direction:ltr;
}
.dzd-sk-galside{display:block;}
.dzd-sk-panelside{
  position:sticky;top:var(--dzd-sticky-top);
  max-width:none;width:100%;margin:0;direction:rtl;
}
.dzd-sk{
  position:relative;overflow:hidden;border-radius:14px;
  background:var(--dzd-cream);
  opacity:0;transform:translateY(14px);
  animation:dzdSkIn .7s var(--dzd-ease) forwards;
}
.dzd-sk::after{
  content:"";position:absolute;inset:0;transform:translateX(-100%);
  background:linear-gradient(100deg,
    transparent 18%, rgba(255,255,255,.65) 38%, rgba(180,154,107,.22) 50%,
    rgba(255,255,255,.65) 62%, transparent 82%);
  animation:dzdSweep 2s var(--dzd-ease) infinite;
}
@keyframes dzdSkIn{to{opacity:1;transform:none;}}
@keyframes dzdSweep{to{transform:translateX(100%);}}
.dzd-sk-stage{width:100%;height:auto;aspect-ratio:4/5;}
.dzd-sk-kicker{height:9px;width:88px;border-radius:6px;background:linear-gradient(90deg,var(--dzd-gold-deep),var(--dzd-gold));filter:saturate(.7);}
.dzd-sk-title{height:32px;width:70%;margin-top:18px;}
.dzd-sk-line{height:13px;width:88%;margin-top:16px;}
.dzd-sk-line.short{width:52%;}
.dzd-sk-pill{height:30px;width:160px;border-radius:999px;margin-top:20px;}
.dzd-sk-chiprow{height:40px;width:100%;margin-top:22px;}
.dzd-sk-btn{height:52px;width:100%;border-radius:999px;margin-top:24px;}
.dzd-sk-panelside .dzd-sk:nth-child(1){animation-delay:.05s;}
.dzd-sk-panelside .dzd-sk:nth-child(2){animation-delay:.12s;}
.dzd-sk-panelside .dzd-sk:nth-child(3){animation-delay:.19s;}
.dzd-sk-panelside .dzd-sk:nth-child(4){animation-delay:.26s;}
.dzd-sk-panelside .dzd-sk:nth-child(5){animation-delay:.33s;}
.dzd-sk-panelside .dzd-sk:nth-child(6){animation-delay:.40s;}
.dzd-sk-panelside .dzd-sk:nth-child(7){animation-delay:.47s;}

/* ─── Error ─── */
.dzd-error{padding:90px 0;text-align:center;}
.dzd-error-mark{font-size:26px;color:var(--dzd-gold);margin-bottom:10px;}
.dzd-error-text{font-size:14px;color:var(--dzd-ink-soft);margin:0 0 20px;}
#dzd-px .dzd-error-retry{
  padding:11px 30px;border:1px solid var(--dzd-ink);border-radius:999px;
  font-size:13.5px;font-weight:700;
}

/* ─── Laptop refinement ─── */
@media (max-width:1280px){
  .dzd-main,
  .dzd-sk-grid,
  .dzd-story-grid{
    grid-template-columns:minmax(0,1fr) minmax(380px,1fr);
    gap:clamp(28px,3vw,42px);
  }
  .dzd-rv-grid{grid-template-columns:230px minmax(0,1fr);}
}

/* ─── Reduced motion ─── */
@media (prefers-reduced-motion:reduce){
  #dzd-px *{animation-duration:.01ms !important;transition-duration:.01ms !important;}
}

/* ════════════════════════════════════════════════════════════
   MOBILE VIEW — original visual system preserved
════════════════════════════════════════════════════════════ */
/* ════════════════════════════════════════════════════════════
   DENZO HOME · Design tokens
════════════════════════════════════════════════════════════ */
#dz-px{
  --dz-ink:        #16130f;
  --dz-ink-soft:   #4d463d;
  --dz-paper:      #faf8f4;
  --dz-cream:      #f2ede4;
  --dz-gold:       #b49a6b;
  --dz-gold-deep:  #8f7546;
  --dz-bordeaux:   #7e2a33;
  --dz-line:       rgba(22,19,15,.09);
  --dz-shadow:     0 18px 44px -18px rgba(22,19,15,.28);
  --dz-radius:     18px;
  --dz-pad:        clamp(18px, 5vw, 28px);
  --dz-ease:       cubic-bezier(.22,.72,.18,1);
  --dz-bounce:     cubic-bezier(.34,1.56,.64,1);

  --dz-sticky-top: 0px;
  --dz-sticky-extra: 0px;
  --dz-sticky-fallback: 60px;
  /* --dz-header-selector: ".whb-sticky-row"; */
  --dz-bottom-off: 0px;

  position:relative;
  background:var(--dz-paper);
  color:var(--dz-ink);
  font-family:inherit;
  line-height:1.9;
  -webkit-font-smoothing:antialiased;
}
#dz-px *,#dz-px *::before,#dz-px *::after{box-sizing:border-box;}
#dz-px [hidden]{display:none !important;}
#dz-px img{display:block;max-width:100%;}
#dz-px button{font-family:inherit;color:inherit;background:none;border:0;cursor:pointer;}

/* full-bleed breakout */
.dz-px.dz-fullbleed{width:100vw;max-width:100vw;margin-inline:calc(50% - 50vw);}
/*
 * 100vw is measured against the layout viewport, which on iOS Safari and some
 * Android builds is a few pixels wider than the area the finger can actually
 * see. That surplus turned the whole product page into a horizontally pannable
 * surface. Clipping the document's horizontal axis contains it.
 *
 * `clip` rather than `hidden` on purpose: hidden would turn the body into a
 * scroll container and silently break every position:sticky in the page --
 * the tab bar, the desktop buy column, the running total.
 */
html:has(#dz-px),html:has(#dzd-px){overflow-x:clip;}
body:has(#dz-px),body:has(#dzd-px){overflow-x:clip;}
.dz-shell{max-width:560px;margin-inline:auto;}

@media (min-width:1025px){ #dz-px{display:none !important;} }

body:has(.whb-sticked) #dz-px{ --dz-sticky-top:var(--dz-sticky-fallback); }

/* ─── Sections ─── */
/*
 * The two tab panels are now stacked page sections: buy first, story below.
 * They no longer toggle, so they simply always render.
 */
#dz-px > .dz-shell > .dz-panel{
  display:block;
  width:100%!important;
  max-width:none!important;
  float:none!important;
  animation:none!important;
}
#dz-px > .dz-shell > .dz-panel[hidden]{display:none!important;}

/* ─── Overview: hero head ─── */
.dz-hero-head{padding:34px var(--dz-pad) 10px;text-align:center;}
.dz-kicker{
  margin:0 0 10px;font-size:11px;font-weight:700;
  letter-spacing:.32em;text-transform:uppercase;color:var(--dz-gold-deep);
}
.dz-hero-title{
  margin:0;font-size:clamp(18px,4.6vw,22px);
  font-weight:500;line-height:1.6;letter-spacing:normal;
}

/* ─── Overview: stacked gallery ─── */
.dz-gallery-stack{display:flex;flex-direction:column;gap:14px;padding:22px 0 8px;}
.dz-gallery-stack figure{margin:0;overflow:hidden;background:var(--dz-cream);}
.dz-gallery-stack img{
  width:100%;height:auto;
  opacity:0;transform:translateY(16px) scale(1.015);
  transition:opacity .9s var(--dz-ease),transform .9s var(--dz-ease);
  will-change:opacity,transform;
}
.dz-gallery-stack img.is-in{opacity:1;transform:none;}

/* ─── Sections ─── */
.dz-section{padding:38px var(--dz-pad) 8px;}
.dz-section-title{margin:0 0 16px;font-size:20px;font-weight:500;line-height:1.6;}
.dz-longdesc,.dz-shortdesc{font-size:14.5px;color:var(--dz-ink-soft);}
.dz-longdesc img{width:100%;height:auto;border-radius:12px;margin:14px 0;}
.dz-longdesc h1,.dz-longdesc h2,.dz-longdesc h3,.dz-longdesc h4{
  color:var(--dz-ink);line-height:1.6;margin:1.4em 0 .5em;
}
.dz-longdesc table{width:100%;border-collapse:collapse;font-size:13.5px;}
.dz-longdesc td,.dz-longdesc th{border:1px solid var(--dz-line);padding:8px 10px;}

/* ─── Spec list ─── */
.dz-spec-list{margin:0;border-top:1px solid var(--dz-line);}
.dz-spec-row{
  display:flex;justify-content:space-between;gap:16px;
  padding:12px 2px;border-bottom:1px solid var(--dz-line);
}
.dz-spec-row dt{flex:0 0 auto;font-size:13px;color:var(--dz-ink-soft);}
.dz-spec-row dd{margin:0;font-size:13.5px;font-weight:600;text-align:left;}

#dz-px .dz-ghost-btn{
  display:block;width:100%;margin:22px 0 8px;padding:13px 18px;
  border:1px solid var(--dz-ink);border-radius:999px;
  font-size:14px;font-weight:700;letter-spacing:.02em;
  transition:background .3s var(--dz-ease),color .3s var(--dz-ease);
}
#dz-px .dz-ghost-btn:active{background:var(--dz-ink);color:var(--dz-paper);}

.dz-accordions{border-top:1px solid var(--dz-line);}
.dz-acc{border-bottom:1px solid var(--dz-line);}
.dz-acc summary{
  display:flex;justify-content:space-between;align-items:center;
  padding:14px 2px;list-style:none;cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
.dz-acc summary::-webkit-details-marker{display:none;}
.dz-acc-h3{margin:0;font-size:15px;font-weight:500;letter-spacing:.02em;line-height:1.6;color:var(--dz-ink);}
.dz-acc-mark{font-size:17px;font-weight:400;color:var(--dz-gold-deep);transition:transform .4s var(--dz-ease);}
.dz-acc[open] .dz-acc-mark{transform:rotate(45deg);}
.dz-acc-body{padding:2px 2px 16px;}
.dz-acc-body .dz-spec-list{border-top:0;}

/* ─── Buy tab: slider ─── */
.dz-slider-wrap{position:relative;background:var(--dz-cream);}
.dz-slider{
  display:flex;overflow-x:auto;scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;scrollbar-width:none;
  /*
   * Without this the horizontal swipe hands off to the document once the last
   * slide is reached. On iOS that hand-off is what left the page stuck
   * mid-gesture, unable to scroll either way until it was tapped again.
   */
  overscroll-behavior-x:contain;
  touch-action:pan-x pan-y pinch-zoom;
}
.dz-slider::-webkit-scrollbar{display:none;}
.dz-slide{flex:0 0 100%;scroll-snap-align:center;}
/*
 * The box used to be a hard 4/5 while the photographs are nearer to square, so
 * object-fit:contain letterboxed every slide and the dots landed on that cream
 * band instead of on the picture. The ratio now comes from the real image
 * dimensions, published by the server as --dz-slide-ratio, so there is no
 * letterbox to sit on and still no layout shift.
 */
.dz-slide img{
  width:100%;height:auto;
  aspect-ratio:var(--dz-slide-ratio, 4/5);
  object-fit:contain;object-position:center;
  background:var(--dz-cream);
  transition:opacity .35s var(--dz-ease);
}
/* Fixed square geometry prevents theme button styles from stretching the
 * controls into ovals. The chevron is absolutely centred inside that circle. */
#dz-px .dz-slider-nav{
  position:absolute;top:50%;transform:translateY(-50%);z-index:3;
  display:block;box-sizing:border-box!important;
  width:40px!important;height:40px!important;
  min-width:40px!important;min-height:40px!important;
  max-width:40px!important;max-height:40px!important;
  aspect-ratio:1/1;padding:0!important;margin:0;
  border:1px solid rgba(22,19,15,.14)!important;border-radius:50%!important;
  overflow:hidden;line-height:0;
  background:#faf8f4!important;color:#16130f;
  box-shadow:0 3px 12px -5px rgba(22,19,15,.5);
  -webkit-appearance:none;appearance:none;
  transition:opacity .25s var(--dz-ease),background .25s var(--dz-ease);
}
#dz-px .dz-slider-chev{
  position:absolute;top:50%;left:50%;display:block;
  width:12px;height:12px;margin:0;border:0;
  transform:translate(-50%,-50%);pointer-events:none;
}
#dz-px .dz-slider-chev::before,
#dz-px .dz-slider-chev::after{
  content:"";position:absolute;top:50%;
  width:8px;height:2px;margin:0;border:0;border-radius:999px;
  background:#16130f;pointer-events:none;
}
/* 3.172px = 6 - (8 × cos45 ÷ 2): this puts the full chevron bounds,
 * not merely its transform box, on the exact centre of the circle. */
#dz-px .dz-slider-prev .dz-slider-chev::before,
#dz-px .dz-slider-prev .dz-slider-chev::after{
  right:3.172px;transform-origin:right center;
}
#dz-px .dz-slider-next .dz-slider-chev::before,
#dz-px .dz-slider-next .dz-slider-chev::after{
  left:3.172px;transform-origin:left center;
}
#dz-px .dz-slider-chev::before{transform:translateY(-50%) rotate(45deg);}
#dz-px .dz-slider-chev::after{transform:translateY(-50%) rotate(-45deg);}
#dz-px .dz-slider-nav:disabled{opacity:.32;cursor:default;}
#dz-px .dz-slider-nav[hidden]{display:none !important;}
/* Inline offsets, so the pair flips correctly with the RTL strip. */
#dz-px .dz-slider-prev{inset-inline-start:10px;}
#dz-px .dz-slider-next{inset-inline-end:10px;}

.dz-dots{
  position:absolute;bottom:14px;
  display:flex;justify-content:center;gap:6px;pointer-events:none;
}
/*
 * A tinted pill so the marks read against a pale set photograph. No
 * backdrop-filter here either, for the same Android rendering reason.
 */
.dz-dots:not(:empty){
  left:50%;transform:translateX(-50%);
  width:max-content;padding:6px 10px;border-radius:999px;
  background:rgba(22,19,15,.5);
}
.dz-dot{
  width:6px;height:6px;border-radius:50%;
  background:rgba(255,255,255,.5);transition:all .3s var(--dz-ease);
}
.dz-dot.is-on{width:18px;border-radius:4px;background:#fff;}
.dz-sale-badge{
  position:absolute;top:14px;inset-inline-start:14px;
  padding:5px 12px;border-radius:999px;
  background:var(--dz-bordeaux);color:#fff;
  font-size:12px;font-weight:800;letter-spacing:.03em;
  box-shadow:0 8px 20px -8px rgba(126,42,51,.6);
}

/* ─── Buy tab: head / price ─── */
.dz-buy-head{padding:24px var(--dz-pad) 0;}
.dz-buy-title{margin:0 0 8px;font-size:clamp(18px,4.6vw,22px);font-weight:500;line-height:1.6;}
.dz-rating{display:flex;align-items:center;gap:8px;}
.dz-stars{
  position:relative;display:inline-block;width:92px;height:17px;line-height:1;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='92' height='17' viewBox='0 0 92 17'><g fill='%23d8d2c6'><path d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/><path transform='translate(18.75)' d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/><path transform='translate(37.5)' d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/><path transform='translate(56.25)' d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/><path transform='translate(75)' d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/></g></svg>") no-repeat;
}
.dz-stars-fill{
  position:absolute;inset:0;overflow:hidden;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='92' height='17' viewBox='0 0 92 17'><g fill='%23b49a6b'><path d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/><path transform='translate(18.75)' d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/><path transform='translate(37.5)' d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/><path transform='translate(56.25)' d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/><path transform='translate(75)' d='M8.5 0l2.3 5.2 5.7.5-4.3 3.8 1.3 5.6-5-3-5 3 1.3-5.6L.5 5.7l5.7-.5z'/></g></svg>") no-repeat;
}
.dz-stars{direction:ltr;cursor:pointer;-webkit-tap-highlight-color:transparent;}
.dz-stars-fill{left:0;right:auto;}
.dz-rating-count{font-size:12.5px;color:var(--dz-ink-soft);}
#dz-px .dz-rate-btn{
  margin-inline-start:auto;padding:6px 13px;
  border:1px solid rgba(143,117,70,.45);border-radius:999px;
  font-size:11.5px;font-weight:700;color:var(--dz-gold-deep);
  transition:background .3s var(--dz-ease),color .3s var(--dz-ease);
}
#dz-px .dz-rate-btn:active{background:var(--dz-gold-deep);color:#fff;}

/* ─── Related products ─── */
.dz-related{
  margin-top:38px;padding:0 var(--dz-pad);padding-bottom:48px;
  border-top:1px solid var(--dz-line);
}
.dz-rel-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding-top:38px;margin-bottom:20px;}
.dz-rel-head .dz-section-title{margin-bottom:0;}
.dz-rel-nav{display:flex;gap:8px;flex:0 0 auto;}
#dz-px .dz-rel-arrow{
  width:40px;height:40px;border-radius:50%;
  border:1px solid rgba(22,19,15,.24);font-size:16px;
  transition:background .3s var(--dz-ease),color .3s var(--dz-ease),opacity .3s var(--dz-ease);
  -webkit-tap-highlight-color:transparent;
}
#dz-px .dz-rel-arrow:active{background:var(--dz-ink);color:var(--dz-paper);}
#dz-px .dz-rel-arrow:disabled{opacity:.25;pointer-events:none;}
.dz-rel-track{
  display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;scrollbar-width:none;
  overscroll-behavior-x:contain;touch-action:pan-x pan-y pinch-zoom;
  padding-bottom:6px;
}
.dz-rel-track::-webkit-scrollbar{display:none;}
.dz-rel-card{
  flex:0 0 clamp(150px,45vw,200px);min-width:0;
  scroll-snap-align:start;text-decoration:none;color:inherit;
}
.dz-rel-imgwrap{overflow:hidden;background:var(--dz-cream);}
.dz-rel-card img{width:100%;aspect-ratio:3/4;object-fit:cover;}
.dz-rel-name{
  margin:10px 0 2px;font-size:13px;font-weight:700;line-height:1.7;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.dz-rel-price{margin:0;font-size:12.5px;color:var(--dz-gold-deep);font-weight:700;}

/* ─── Review sheet ─── */
.dz-veil{
  position:fixed;inset:0;z-index:95;
  background:rgba(22,19,15,.45);
  -webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);
  opacity:0;transition:opacity .45s var(--dz-ease);
}
.dz-veil.is-in{opacity:1;}
.dz-sheet{
  position:fixed;z-index:96;inset-inline:0;bottom:0;
  max-width:560px;margin-inline:auto;
  background:var(--dz-paper);border-radius:24px 24px 0 0;
  padding:16px var(--dz-pad) calc(22px + env(safe-area-inset-bottom,0px));
  box-shadow:0 -20px 60px -20px rgba(22,19,15,.4);
  transform:translateY(105%);opacity:0;
  transition:transform .6s var(--dz-ease),opacity .45s var(--dz-ease);
  text-align:center;
}
.dz-sheet.is-in{transform:none;opacity:1;}
.dz-sheet-grip{display:none;}
#dz-px .dz-sheet-close{
  position:absolute;top:18px;right:20px;left:auto;
  width:26px;height:26px;padding:0;
  display:block;
  font-size:0;line-height:0;color:transparent;
  border:0;background:transparent;
  opacity:.6;transition:opacity .3s var(--dz-ease);
}
#dz-px .dz-sheet-close:active{opacity:1;}
#dz-px .dz-sheet-close::before,
#dz-px .dz-sheet-close::after{
  content:"";position:absolute;top:50%;left:50%;
  width:18px;height:1.5px;border-radius:2px;background:var(--dz-ink);
}
#dz-px .dz-sheet-close::before{transform:translate(-50%,-50%) rotate(45deg);}
#dz-px .dz-sheet-close::after{transform:translate(-50%,-50%) rotate(-45deg);}
.dz-sheet-title{margin:2px 0 14px;font-size:17px;font-weight:800;line-height:1.7;}
.dz-pick-stars{display:flex;justify-content:center;gap:8px;}
#dz-px .dz-pick-star{
  font-size:38px;line-height:1;padding:4px 6px;color:#d8d2c6;
  background:transparent;border:0;
  transition:color .25s var(--dz-ease),transform .25s var(--dz-ease);
  -webkit-tap-highlight-color:transparent;
}
#dz-px .dz-pick-star.is-lit{color:var(--dz-gold);text-shadow:0 2px 14px rgba(180,154,107,.45);}
#dz-px .dz-pick-star:active{transform:scale(1.2);}
.dz-pick-label{margin:6px 0 4px;min-height:1.6em;font-size:12.5px;font-weight:700;color:var(--dz-gold-deep);}
.dz-field{
  width:100%;margin-top:10px;padding:12px 14px;
  border:1px solid rgba(22,19,15,.2);border-radius:12px;
  background:#fff;font-family:inherit;font-size:13.5px;color:var(--dz-ink);
  outline:none;transition:border-color .3s var(--dz-ease);
}
.dz-field:focus{border-color:var(--dz-gold-deep);}
.dz-field-area{resize:none;line-height:1.9;}
.dz-field-ltr{direction:ltr;text-align:left;}
.dz-guest-fields{display:grid;grid-template-columns:1fr 1.4fr;gap:10px;}
.dz-guest-fields .dz-field{margin-top:10px;}
.dz-sheet-submit{display:block;width:100%;margin-top:16px;}

/* ─── Guide popup ─── */
#dz-px .dz-guide{
  position:fixed;z-index:96;inset-inline:14px;top:50%;
  max-width:520px;margin-inline:auto;max-height:86vh;
  display:flex;flex-direction:column;
  background:var(--dz-paper);border-radius:20px;overflow:hidden;
  box-shadow:0 30px 70px -20px rgba(22,19,15,.5);
  transform:translateY(-50%) scale(.965);opacity:0;visibility:hidden;
  transition:opacity .34s var(--dz-ease),
             transform .42s var(--dz-bounce),
             visibility 0s linear .42s;
}
#dz-px .dz-guide.is-in{
  opacity:1;visibility:visible;transform:translateY(-50%) scale(1);
  transition:opacity .34s var(--dz-ease),
             transform .42s var(--dz-bounce),
             visibility 0s;
}
.dz-guide-head{
  flex:0 0 auto;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
  padding:18px var(--dz-pad) 14px;border-bottom:1px solid var(--dz-line);
}
.dz-guide-title{margin:2px 0 0;font-size:17px;font-weight:800;line-height:1.6;}
#dz-px .dz-guide-close{
  flex:0 0 auto;width:32px;height:32px;border-radius:50%;
  font-size:13px;color:var(--dz-ink-soft);border:1px solid var(--dz-line);
}
.dz-guide-body{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:var(--dz-pad);}
.dz-guide-media{
  position:relative;width:100%;aspect-ratio:3/4;
  max-height:calc(86vh - 132px);
  margin-inline:auto;
  background:var(--dz-cream);border-radius:12px;overflow:hidden;
}
.dz-guide-media::before{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.5) 50%,transparent 80%);
  transform:translateX(-100%);
  animation:dzGShine 1.6s var(--dz-ease) infinite;
}
.dz-guide-media.is-done::before{animation:none;opacity:0;}
@keyframes dzGShine{to{transform:translateX(100%);}}
#dz-px .dz-guide-img{
  position:absolute;inset:0;z-index:2;width:100%;height:100%;
  object-fit:contain;object-position:center;
  opacity:0;transition:opacity .5s var(--dz-ease);
}
#dz-px .dz-guide-img.is-loaded{opacity:1;}
.dz-guide-ph{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;
  min-height:240px;padding:44px 20px;text-align:center;
  border:1.5px dashed rgba(22,19,15,.22);border-radius:16px;
  color:var(--dz-ink-soft);font-size:13.5px;line-height:1.8;
}
.dz-guide-ph-mark{font-size:26px;color:var(--dz-gold);}

.dz-price-block{padding:14px var(--dz-pad) 0;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;}
.dz-price-now{margin:0;font-size:24px;font-weight:500;letter-spacing:-.01em;}
.dz-price-was{margin:0;font-size:14.5px;color:var(--dz-ink-soft);text-decoration:line-through;text-decoration-color:var(--dz-bordeaux);}

.dz-stock{padding:6px var(--dz-pad) 0;margin:0;font-size:13px;font-weight:600;}
.dz-stock.ok{color:#2d6a4f;}
.dz-stock.low{color:var(--dz-gold-deep);}
.dz-stock.out{color:var(--dz-bordeaux);}

/* ─── Variations ─── */
.dz-variations{padding:10px var(--dz-pad) 0;}
.dz-var-group{margin:16px 0 0;}
.dz-var-name{
  display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;
  font-size:13px;color:var(--dz-ink-soft);margin-bottom:10px;
}
.dz-var-name b{margin-inline-start:auto;color:var(--dz-ink);font-weight:700;}
.dz-chips{display:flex;flex-wrap:wrap;gap:9px;}
.dz-chips.dz-chips--fill{
  display:grid;grid-template-columns:repeat(var(--dz-cols,2),minmax(0,1fr));gap:6px;
}
#dz-px .dz-chips--fill .dz-chip{
  width:100%;padding-left:4px;padding-right:4px;
  text-align:center;white-space:nowrap;font-size:clamp(11px,3vw,13px);
}
#dz-px .dz-chip{
  padding:9px 16px;border:1px solid rgba(22,19,15,.4);border-radius:0;
  background:transparent;font-size:13.5px;font-weight:600;
  transition:border-color .3s var(--dz-ease),background .3s var(--dz-ease),
             color .3s var(--dz-ease),transform .2s var(--dz-ease);
  -webkit-tap-highlight-color:transparent;
}
#dz-px .dz-chip:active{transform:scale(.96);}
#dz-px .dz-chip.is-on{background:var(--dz-ink);border-color:var(--dz-ink);color:var(--dz-paper);}
#dz-px .dz-chip.is-off{opacity:.32;text-decoration:line-through;pointer-events:auto;}
#dz-px .dz-chip--swatch{
  width:40px;height:40px;padding:0;border-radius:0;
  display:inline-flex;align-items:center;justify-content:center;
  background:transparent;border:2px solid transparent;
}
#dz-px .dz-swatch-dot{width:28px;height:28px;border-radius:0;box-shadow:inset 0 0 0 1px rgba(22,19,15,.18);}
#dz-px .dz-chip--swatch.is-on{background:transparent;border:2px solid var(--dz-gold-deep);transform:scale(1.06);}
#dz-px .dz-chip--swatch.is-off{opacity:.3;text-decoration:none;position:relative;}
#dz-px .dz-chip--swatch.is-off::after{
  content:"";position:absolute;inset:9px;border-radius:0;
  background:linear-gradient(45deg,transparent 45%,rgba(22,19,15,.6) 45%,rgba(22,19,15,.6) 55%,transparent 55%);
}
#dz-px .dz-guide-btn{
  display:inline-flex;align-items:center;gap:5px;
  padding:5px 11px;border:1px solid rgba(143,117,70,.45);border-radius:0;
  font-size:11.5px;font-weight:500;color:var(--dz-gold-deep);
  -webkit-tap-highlight-color:transparent;
  transition:background .3s var(--dz-ease),color .3s var(--dz-ease),border-color .3s var(--dz-ease);
}
#dz-px .dz-guide-btn:active{background:var(--dz-gold-deep);color:#fff;border-color:var(--dz-gold-deep);}
.dz-guide-ico{width:14px;height:14px;flex:0 0 auto;}

#dz-px .dz-setbox{
  margin:16px var(--dz-pad) 0;
  border:1px solid rgba(22,19,15,.4);border-radius:0;
  background:transparent;
  animation:dzSetIn .4s var(--dz-ease);
}
@keyframes dzSetIn{from{opacity:0;transform:translateY(6px);}}
#dz-px .dz-setbox > summary{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:11px 15px;list-style:none;cursor:pointer;
  font-size:12px;font-weight:700;letter-spacing:.02em;color:var(--dz-ink);
  -webkit-tap-highlight-color:transparent;
}
#dz-px .dz-setbox > summary::-webkit-details-marker{display:none;}
.dz-setbox-mark{flex:0 0 auto;font-size:16px;font-weight:400;color:var(--dz-gold-deep);transition:transform .4s var(--dz-ease);}
#dz-px .dz-setbox[open] .dz-setbox-mark{transform:rotate(45deg);}
.dz-setbox-title{margin:0;font-size:12px;font-weight:700;letter-spacing:.02em;color:var(--dz-ink);line-height:1.6;}
.dz-setbox-body{padding:0 15px 13px;}
.dz-setbox-list{list-style:none;margin:0;padding:0;}
.dz-setbox-list li{
  position:relative;padding-inline-start:15px;
  font-size:12.5px;line-height:1.95;color:var(--dz-ink-soft);
}
.dz-setbox-list li::before{
  content:"";position:absolute;inset-inline-start:0;top:.72em;
  width:5px;height:5px;background:var(--dz-gold-deep);
}

.dz-buy-row{display:flex;align-items:stretch;gap:10px;padding:22px var(--dz-pad) 0;}
.dz-qty{display:flex;align-items:center;gap:4px;flex:0 0 auto;border:1px solid var(--dz-line);border-radius:999px;background:#fff;}
.dz-qty-btn{width:42px;height:42px;font-size:19px;line-height:1;color:var(--dz-ink);}
.dz-qty-btn:disabled{opacity:.25;}
.dz-qty-num{min-width:32px;text-align:center;font-size:15px;font-weight:700;}
#dz-px .dz-buy-row .dz-btn{flex:1 1 auto;}

/* ─── Meta ─── */
.dz-meta{padding:8px 2px 8px;font-size:12.5px;color:var(--dz-ink-soft);}
.dz-meta span{display:block;margin-top:6px;}

/* ─── Buy bar ─── */
.dz-buybar{
  position:fixed;z-index:80;
  inset-inline:0;bottom:0;
  display:flex;gap:10px;
  padding:12px var(--dz-pad) calc(12px + var(--dz-bottom-off) + env(safe-area-inset-bottom,0px));
  background:color-mix(in srgb, var(--dz-paper) 92%, transparent);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border-top:1px solid var(--dz-line);
}
.dz-buybar-spacer{height:96px;}
.dz-btn{
  flex:1 1 0;padding:15px 10px;border-radius:999px;
  font-size:14.5px;font-weight:800;letter-spacing:.02em;
  transition:transform .2s var(--dz-ease),opacity .3s var(--dz-ease);
}
.dz-btn:active{transform:scale(.97);}
.dz-btn:disabled{opacity:.35;pointer-events:none;}
#dz-px .dz-btn-solid{
  background:var(--dz-ink);color:var(--dz-paper);
  border:1.5px solid var(--dz-ink);
  box-shadow:inset 0 0 0 1px rgba(180,154,107,.45);
}
.dz-btn.is-busy{position:relative;color:transparent !important;}
.dz-btn.is-busy::after{
  content:"";position:absolute;inset:0;margin:auto;
  width:18px;height:18px;border-radius:50%;
  border:2px solid rgba(180,154,107,.4);border-top-color:var(--dz-gold);
  animation:dzSpin .7s linear infinite;
}
@keyframes dzSpin{to{transform:rotate(360deg);}}

/* ─── Toast ─── */
.dz-toast{
  position:fixed;z-index:90;inset-inline:20px;
  bottom:calc(92px + var(--dz-bottom-off) + env(safe-area-inset-bottom,0px));
  max-width:520px;margin-inline:auto;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:13px 18px;border-radius:14px;
  background:var(--dz-ink);color:var(--dz-paper);
  font-size:13.5px;box-shadow:var(--dz-shadow);
  transform:translateY(16px);opacity:0;
  transition:transform .45s var(--dz-ease),opacity .45s var(--dz-ease);
}
.dz-toast.is-in{transform:none;opacity:1;}
.dz-toast-link{color:var(--dz-gold);font-weight:800;text-decoration:none;white-space:nowrap;}

/* ─── Skeleton ─── */
.dz-skeleton{padding:42px var(--dz-pad);}
.dz-sk{
  position:relative;overflow:hidden;
  border-radius:14px;margin-bottom:18px;
  background:var(--dz-cream);
  opacity:0;transform:translateY(14px);
  animation:dzSkIn .7s var(--dz-ease) forwards;
}
.dz-sk::after{
  content:"";position:absolute;inset:0;transform:translateX(-100%);
  background:linear-gradient(100deg,
    transparent 18%, rgba(255,255,255,.65) 38%, rgba(180,154,107,.22) 50%,
    rgba(255,255,255,.65) 62%, transparent 82%);
  animation:dzSweep 2s var(--dz-ease) infinite;
}
@keyframes dzSkIn{to{opacity:1;transform:none;}}
@keyframes dzSweep{to{transform:translateX(100%);}}
.dz-sk:nth-child(1){animation-delay:.05s;} .dz-sk:nth-child(1)::after{animation-delay:.10s;}
.dz-sk:nth-child(2){animation-delay:.12s;} .dz-sk:nth-child(2)::after{animation-delay:.18s;}
.dz-sk:nth-child(3){animation-delay:.19s;} .dz-sk:nth-child(3)::after{animation-delay:.26s;}
.dz-sk:nth-child(4){animation-delay:.26s;} .dz-sk:nth-child(4)::after{animation-delay:.34s;}
.dz-sk:nth-child(5){animation-delay:.33s;} .dz-sk:nth-child(5)::after{animation-delay:.42s;}
.dz-sk:nth-child(6){animation-delay:.40s;} .dz-sk:nth-child(6)::after{animation-delay:.50s;}
.dz-sk:nth-child(7){animation-delay:.47s;} .dz-sk:nth-child(7)::after{animation-delay:.58s;}
.dz-sk:nth-child(8){animation-delay:.54s;} .dz-sk:nth-child(8)::after{animation-delay:.66s;}
.dz-sk:nth-child(9){animation-delay:.61s;} .dz-sk:nth-child(9)::after{animation-delay:.74s;}
.dz-sk-kicker{
  height:9px;width:88px;margin-inline:auto;border-radius:6px;
  background:linear-gradient(90deg,var(--dz-gold-deep),var(--dz-gold));
  opacity:0;filter:saturate(.7);
}
.dz-sk-kicker.dz-sk{animation:dzSkInSoft .7s var(--dz-ease) forwards;}
@keyframes dzSkInSoft{to{opacity:.45;transform:none;}}
.dz-sk-title{height:30px;width:64%;margin-inline:auto;}
.dz-sk-sub{height:13px;width:84%;margin-inline:auto;}
.dz-sk-sub.short{width:52%;}
.dz-sk-pill{height:30px;width:150px;margin-inline:auto;border-radius:999px;}
.dz-sk-hero{height:330px;border-radius:20px;}
.dz-sk-hero.small{height:240px;}
.dz-sk-line{height:12px;width:100%;}
.dz-sk-line.short{width:55%;}

/* ─── Error ─── */
.dz-error{padding:70px var(--dz-pad);text-align:center;}
.dz-error-mark{font-size:26px;color:var(--dz-gold);margin-bottom:10px;}
.dz-error-text{font-size:14px;color:var(--dz-ink-soft);margin:0 0 20px;}
#dz-px .dz-error-retry{
  padding:11px 30px;border:1px solid var(--dz-ink);border-radius:999px;
  font-size:13.5px;font-weight:700;
}

/* ─── Reduced motion ─── */
@media (prefers-reduced-motion:reduce){
  #dz-px *{animation-duration:.01ms !important;transition-duration:.01ms !important;}
  .dz-gallery-stack img{opacity:1;transform:none;}
}
#dzp-ssr-view{display:contents}
#dzp-view[hidden]{display:none!important}
#dzp-ssr-view[hidden]{display:none!important}

/* ═══ Grouped products — one buyable row per child ═══ */
#dzd-px .dzd-grouped{display:block;margin-block:clamp(14px,1.6vw,22px);}
/*
 * The mobile shell is full-bleed, so every block owns its own horizontal
 * padding via --dz-pad rather than inheriting it from a wrapper. Without this
 * the rows ran edge to edge.
 */
#dz-px .dz-grouped{display:block;margin:18px 0 0;padding:0 var(--dz-pad);}
.dzd-gr-head,.dz-gr-head{margin-bottom:12px;}
.dzd-gr-hint,.dz-gr-hint{margin:2px 0 12px;font-size:.94rem;opacity:.72;line-height:1.85;}
.dzd-gr-all,.dz-gr-all{
  appearance:none;border:1px solid currentColor;background:transparent;color:inherit;
  border-radius:999px;padding:9px 20px;font:inherit;font-size:.94rem;cursor:pointer;
  opacity:.78;transition:opacity .25s var(--dzd-ease,ease),background .25s var(--dzd-ease,ease);
}
.dzd-gr-all:hover,.dz-gr-all:hover{opacity:1;background:rgba(22,19,15,.05);}
.dzd-gr-fold,.dz-gr-fold{margin-top:4px;border-top:1px solid rgba(22,19,15,.1);}
.dzd-gr-fold-head,.dz-gr-fold-head{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:12px 0;cursor:pointer;list-style:none;font-size:.98rem;
}
.dzd-gr-fold-head::-webkit-details-marker,.dz-gr-fold-head::-webkit-details-marker{display:none;}
.dzd-gr-fold-mark,.dz-gr-fold-mark{
  font-size:1.15rem;line-height:1;opacity:.55;flex:0 0 auto;
  transition:transform .3s var(--dzd-ease,ease);
}
.dzd-gr-fold[open] .dzd-gr-fold-mark,.dz-gr-fold[open] .dz-gr-fold-mark{transform:rotate(45deg);}
.dzd-gr-fold[open] .dzd-gr-fold-head,.dz-gr-fold[open] .dz-gr-fold-head{border-bottom:1px solid rgba(22,19,15,.08);}
.dzd-gr-list,.dz-gr-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;}
.dzd-gr-row,.dz-gr-row{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:11px 0;border-bottom:1px solid rgba(22,19,15,.08);
  transition:opacity .2s var(--dzd-ease,ease);
}
.dzd-gr-row:last-child,.dz-gr-row:last-child{border-bottom:0;}
.dzd-gr-row.is-off,.dz-gr-row.is-off{opacity:.4;}
.dzd-gr-meta,.dz-gr-meta{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto;}
/* min-width:0 above plus overflow-wrap here lets long part names break
   instead of forcing the row wider than a 320px screen. */
.dzd-gr-name,.dz-gr-name{font-size:1.04rem;line-height:1.65;overflow-wrap:anywhere;}
.dzd-gr-price,.dz-gr-price{font-size:.95rem;opacity:.66;font-variant-numeric:tabular-nums;}
.dzd-gr-flag,.dz-gr-flag{font-size:.92rem;opacity:.7;flex:0 0 auto;}
.dzd-gr-link,.dz-gr-link{font-size:.94rem;text-decoration:underline;color:inherit;flex:0 0 auto;}
.dzd-gr-qty,.dz-gr-qty{
  display:flex;align-items:center;gap:2px;flex:0 0 auto;
  border:1px solid rgba(22,19,15,.18);border-radius:999px;padding:2px;
}
/* The whole-set button is a real tap target, not a text link. */
.dz-gr-all{width:100%;text-align:center;padding:12px 18px;}
/* Narrow phones: trim the stepper rather than let the row overflow. */
@media (max-width:359.98px){
  .dz-gr-btn{width:32px;height:32px;}
  .dz-gr-num{min-width:26px;}
  .dz-gr-row{gap:10px;}
  .dz-gr-name{font-size:1rem;}
}
.dzd-gr-btn,.dz-gr-btn{
  appearance:none;border:0;background:transparent;color:inherit;font:inherit;font-size:1.05rem;
  width:36px;height:36px;line-height:1;border-radius:50%;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
}
.dzd-gr-btn:hover:not(:disabled),.dz-gr-btn:hover:not(:disabled){background:rgba(22,19,15,.08);}
.dzd-gr-btn:disabled,.dz-gr-btn:disabled{opacity:.28;cursor:default;}
.dzd-gr-num,.dz-gr-num{min-width:30px;text-align:center;font-size:1.02rem;font-variant-numeric:tabular-nums;}

.dzd-gr-sum,.dz-gr-sum{
  display:flex;align-items:baseline;justify-content:space-between;gap:12px;
  margin-top:12px;padding:12px 0 10px;
  border-top:1px solid rgba(22,19,15,.14);
  font-size:.98rem;opacity:.6;transition:opacity .25s var(--dzd-ease,ease);
}
/*
 * Only the desktop panel pins its total, because there the column is its own
 * capped scroller and the figure would otherwise leave the box entirely. On
 * mobile the page is the scroller and the total is already right under the
 * list, so pinning it just made the number chase the finger.
 */
.dzd-gr-sum{
  position:sticky;bottom:0;z-index:2;
  background:var(--dzd-paper,#faf8f4);
}
.dzd-gr-sum.is-active,.dz-gr-sum.is-active{opacity:1;}
.dzd-gr-sum-total,.dz-gr-sum-total{font-size:1.14rem;font-weight:600;}
