/* ── Category header band — baseline (text only, applies to every archive) ─── */
.dzw-cathead{
  position:relative;overflow:hidden;border-radius:14px;margin:6px 0 26px;
  min-height:132px;display:flex;flex-direction:column;justify-content:center;
  padding:24px clamp(22px,3vw,40px);
  background:linear-gradient(105deg,#f3e7db 0%,#efe0df 52%,#f7efe6 100%);
  border:1px solid #e4dcd0;border-bottom:3px solid #c69a3f;
}
.dzw-cathead .wp-block-query-title,.dzw-cathead h1{font-family:Georgia,"Times New Roman",serif!important;color:#5c1a25!important;font-weight:600!important;font-size:clamp(1.5rem,3vw,2rem)!important;line-height:1.06!important;margin:0!important}
.dzw-cathead .wp-block-term-description,.dzw-cathead .term-description{color:#6f5f52!important;max-width:60ch;margin:.45em 0 0;font-size:.95rem;line-height:1.5}
.dzw-cathead .wp-block-term-description p,.dzw-cathead .term-description p{margin:0;color:inherit}

/* ── Category header band — photo hero override (all product categories) ──── */
:is(body.tax-product_cat,body.post-type-archive-product) .dzw-cathead{
  position:relative;overflow:hidden;border-radius:14px;
  min-height:200px;display:flex;flex-direction:column;justify-content:center;
  padding:30px clamp(22px,3vw,40px);
  border:1px solid #e4dcd0;border-bottom:3px solid #c69a3f;
  box-shadow:0 16px 34px -22px rgba(60,40,30,.34);
}
:is(body.tax-product_cat,body.post-type-archive-product) .dzw-cathead::before{content:"";position:absolute;inset:0;z-index:0;background-image:var(--dzw-cat-banner,url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-collections-lifestyle-v2.jpg'));background-size:cover;background-position:var(--dzw-cat-pos,center 22%)}
:is(body.tax-product_cat,body.post-type-archive-product) .dzw-cathead::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(28,18,16,.86) 0%,rgba(28,18,16,.66) 42%,rgba(28,18,16,.20) 66%,rgba(28,18,16,0) 88%)}
:is(body.tax-product_cat,body.post-type-archive-product) .dzw-cathead > *{position:relative;z-index:2}
:is(body.tax-product_cat,body.post-type-archive-product) .dzw-cathead .wp-block-query-title,
:is(body.tax-product_cat,body.post-type-archive-product) .dzw-cathead h1{color:#fff!important;font-family:Georgia,"Times New Roman",serif!important;font-weight:600!important;font-size:clamp(1.7rem,3.4vw,2.15rem)!important;line-height:1.06!important;margin:0 0 .32em!important}
:is(body.tax-product_cat,body.post-type-archive-product) .dzw-cathead .wp-block-term-description,
:is(body.tax-product_cat,body.post-type-archive-product) .dzw-cathead .term-description{color:rgba(255,255,255,.92)!important;max-width:52ch;font-size:.96rem;line-height:1.5;margin:0}
:is(body.tax-product_cat,body.post-type-archive-product) .dzw-cathead .wp-block-term-description p,
:is(body.tax-product_cat,body.post-type-archive-product) .dzw-cathead .term-description p{margin:0;color:inherit}
@media (max-width:640px){
:is(body.tax-product_cat,body.post-type-archive-product) .dzw-cathead{min-height:168px;padding:22px 20px}
:is(body.tax-product_cat,body.post-type-archive-product) .dzw-cathead::after{background:linear-gradient(90deg,rgba(28,18,16,.9) 0%,rgba(28,18,16,.74) 62%,rgba(28,18,16,.42) 100%)}
}
body.term-women .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-36 .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-men .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-65 .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-kids-and-baby .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-kids-and-baby-lifestyle-v2.jpg')}
body.term-29 .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-kids-and-baby-lifestyle-v2.jpg')}
body.term-sarees .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-sarees-lifestyle-v2.jpg')}
body.term-43 .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-sarees-lifestyle-v2.jpg')}
body.term-fabrics .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-fabrics-lifestyle-v2.jpg')}
body.term-25 .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-fabrics-lifestyle-v2.jpg')}
body.term-uniforms .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-uniforms-lifestyle-v2.jpg')}
body.term-22 .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-uniforms-lifestyle-v2.jpg')}
body.term-collections .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-collections-lifestyle-v2.jpg')}
body.term-blouses .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-blouse-pieces .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-readymade-blouses .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-women-bottoms .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-women-bottoms-leggings .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-women-bottoms-palazzo-pants .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-women-pants .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-women-bottoms-shorts .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-women-skirts .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-dress-materials .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-dupattas .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-gowns .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-half-sarees .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-kurtas-and-salwar-sets .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-anarkali-kurtas-kurtas-and-salwar-sets-4 .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-dress-and-gowns-kurtas-and-salwar-sets-4 .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-kurta-sets-2 .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-palazzo-sets-kurtas-and-salwar-sets-4 .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-salwar-kameez-kurtas-and-salwar-sets-4 .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-salwar-sets .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-straight-kurtas-kurtas-and-salwar-sets-4 .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-lehengas .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-tops .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-women-tops-casual-tops .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-co-ord-sets .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-jumpsuits .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-women-tops-tunics .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-western-fusion .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-women-lifestyle-v2.jpg')}
body.term-chiffon-sarees .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-sarees-lifestyle-v2.jpg')}
body.term-cotton-sarees .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-sarees-lifestyle-v2.jpg')}
body.term-georgette-sarees .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-sarees-lifestyle-v2.jpg')}
body.term-kerala-sarees .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-sarees-lifestyle-v2.jpg')}
body.term-linen-sarees .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-sarees-lifestyle-v2.jpg')}
body.term-printed-sarees .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-sarees-lifestyle-v2.jpg')}
body.term-silk-sarees .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-sarees-lifestyle-v2.jpg')}
body.term-men-bottoms .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-dhotis-veshtis .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-men-bottoms-pants .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-men-bottoms-shorts .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-men-ethnic-occasion .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-indo-western .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-jacket-sets .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-kurta-pyjama-sets .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-sherwanis .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-waistcoats .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-men-tops .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-kurtas .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-men-tops-polo-shirts .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-men-shirts .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-men-tops-t-shirts .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-men-lifestyle-v2.jpg')}
body.term-baby-and-toddler-wear .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-kids-and-baby-lifestyle-v2.jpg')}
body.term-kids-and-baby-boys .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-kids-and-baby-lifestyle-v2.jpg')}
body.term-frocks-and-gowns .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-kids-and-baby-lifestyle-v2.jpg')}
body.term-kids-and-baby-girls .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-kids-and-baby-lifestyle-v2.jpg')}
body.term-kids-ethnic-wear .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-kids-and-baby-lifestyle-v2.jpg')}
body.term-kids-kurta-sets .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-kids-and-baby-lifestyle-v2.jpg')}
body.term-kids-lehengas .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-kids-and-baby-lifestyle-v2.jpg')}
body.term-kids-and-baby-outerwear .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-kids-and-baby-lifestyle-v2.jpg')}
body.term-pattu-pavadai .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-kids-and-baby-lifestyle-v2.jpg')}
body.term-blouse-fabrics .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-fabrics-lifestyle-v2.jpg')}
body.term-cotton-fabrics .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-fabrics-lifestyle-v2.jpg')}
body.term-silk-fabrics .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-fabrics-lifestyle-v2.jpg')}
body.term-school-uniforms .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-uniforms-lifestyle-v2.jpg')}
body.term-work-uniforms .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-uniforms-lifestyle-v2.jpg')}
body.term-daily-wear .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-collections-lifestyle-v2.jpg')}
body.term-festive-collection .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-collections-lifestyle-v2.jpg')}
body.term-new-arrivals .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-collections-lifestyle-v2.jpg')}
body.term-offers .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-collections-lifestyle-v2.jpg')}
body.term-wedding-collection .dzw-cathead{--dzw-cat-banner:url('https://dreamzwear.com/wp-content/uploads/2026/07/dzw-cat-banner-collections-lifestyle-v2.jpg')}

.wp-block-woocommerce-product-sale-badge,
.wc-block-components-product-sale-badge,
.woocommerce span.onsale {
  display: none !important;
}
.wp-block-woocommerce-product-sale-badge.dzw-sale-badge-host-ready {
  display: block !important;
}
.wp-block-woocommerce-product-sale-badge.dzw-sale-badge-ready,
.wc-block-components-product-sale-badge.dzw-sale-badge-ready,
.woocommerce span.onsale.dzw-sale-badge-ready {
  align-items: center;
  background: #7a2331 !important;
  border: 0 !important;
  border-radius: 4px !important;
  color: #fff !important;
  display: inline-flex !important;
  font-size: 0.76rem !important;
  font-weight: 750 !important;
  letter-spacing: 0.01em;
  line-height: 1.1 !important;
  min-height: 0 !important;
  padding: 7px 9px !important;
  width: auto !important;
}

/* Hide WooCommerce's default product meta on the PDP (internal SKU, category,
   and tag links are not customer-facing). */
.woocommerce div.product .product_meta,
.woocommerce-page div.product .product_meta,
body.single-product .product_meta,
body.single-product .posted_in,
body.single-product .tagged_as,
body.single-product .sku_wrapper,
body.single-product .taxonomy-product_cat,
body.single-product .wp-block-post-terms,
body.single-product .wc-block-components-product-metadata {
  display: none !important;
}

/* Suppress exact in-stock quantities but keep sold-out warnings visible. */
body.single-product .stock.in-stock,
body.single-product .wc-block-components-product-stock-indicator--in-stock {
  display: none !important;
}



:root {
  --dzw-site-width: 1540px;
  --dzw-inner-width: 1440px;
  --dzw-site-gutter: clamp(18px, 3vw, 40px);
}

/* Type scale: readable base copy + a clear heading hierarchy.
   Base was 22px/weight 300 (oversized + light) with headings smaller than body. */
body {
  font-size: 1.0625rem !important; /* ~17px */
  font-weight: 400 !important;
  line-height: 1.65 !important;
}
/* Light meta/utility text back to a normal weight. */
.woocommerce-result-count,
.wp-block-post-excerpt__excerpt,
.wc-block-components-product-name,
p.price,
.price {
  font-weight: 400;
}
/* Tame the oversized page/archive H1 (product & page titles, category title).
   Scoped to h1 so product-card titles (h2/h3 .wp-block-post-title) are untouched. */
h1.wp-block-post-title,
h1.wp-block-query-title {
  font-size: clamp(1.9rem, 1.4rem + 1.6vw, 2.5rem) !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
}
/* Content heading steps for article/description/policy bodies. Excludes the
   editorial homepage sections (body:not(.home) keeps .dzw-section sizes) and
   product-card titles (.wp-block-post-title is a card title on archives/related). */
body:not(.home) .entry-content h2:not(.wp-block-post-title),
body:not(.home) .wp-block-post-content h2:not(.wp-block-post-title),
.woocommerce-Tabs-panel h2 {
  font-size: clamp(1.5rem, 1.2rem + 0.9vw, 1.85rem) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}
body:not(.home) .entry-content h3:not(.wp-block-post-title),
body:not(.home) .wp-block-post-content h3:not(.wp-block-post-title),
.woocommerce-Tabs-panel h3 {
  font-size: 1.35rem !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}
body:not(.home) .entry-content h4:not(.wp-block-post-title),
body:not(.home) .wp-block-post-content h4:not(.wp-block-post-title),
.woocommerce-Tabs-panel h4 {
  font-size: 1.125rem !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}

.dzw-announcement-bar {
  background: #17110d;
  color: #fff8ed;
  font-size: 0.78rem;
  font-weight: 650;
  letter-spacing: 0;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.dzw-announcement-viewport {
  margin: 0 auto;
  overflow: hidden;
  width: min(var(--dzw-inner-width), calc(100% - (var(--dzw-site-gutter) * 2)));
}
.dzw-announcement-track {
  align-items: center;
  display: flex;
  gap: 22px;
  justify-content: center;
  min-height: 32px;
  white-space: nowrap;
  width: 100%;
}
.dzw-announcement-track span {
  align-items: center;
  display: inline-flex;
  gap: 8px;
}
.dzw-announcement-track span::before {
  background: #f2c766;
  border-radius: 999px;
  content: "";
  display: inline-flex;
  height: 5px;
  width: 5px;
}

body.single-product h1.wp-block-post-title,
body.single-product .product_title {
  font-size: clamp(1.85rem, 1.3rem + 1.35vw, 2.25rem) !important;
  letter-spacing: 0 !important;
  line-height: 1.12 !important;
  max-width: 780px;
}
body.single-product .summary,
body.single-product div.product .summary {
  color: #201811;
}
body.single-product .woocommerce-product-gallery {
  margin-bottom: 30px;
}
body.single-product .woocommerce-product-gallery__image img {
  background: #f5efe8;
}
body.single-product div.product p.price,
body.single-product div.product span.price,
.price,
.price .amount,
.price del,
.price ins {
  color: #201811;
  font-size: clamp(1.25rem, 1.05rem + 0.7vw, 1.55rem) !important;
  font-weight: 500;
  line-height: 1.45 !important;
  margin: 18px 0 22px;
}
body.single-product .woocommerce-product-details__short-description {
  color: #3b322c;
  font-size: 1rem;
  line-height: 1.62;
  max-width: 720px;
}
body.single-product .woocommerce-product-details__short-description p {
  margin: 0 0 12px;
}
body.single-product .woocommerce-product-details__short-description p:last-child {
  margin-bottom: 0;
}
body.single-product form.cart {
  margin-top: 22px;
}
body.single-product form.cart .button {
  background: #7a2331 !important;
  border-radius: 8px !important;
  color: #fffaf3 !important;
  font-weight: 800 !important;
  min-height: 54px;
  padding-left: 34px !important;
  padding-right: 34px !important;
}
body.single-product form.cart .button.disabled,
body.single-product form.cart .button:disabled,
body.single-product form.cart .button[disabled] {
  background: #9a938d !important;
  color: #fffaf3 !important;
  opacity: 1 !important;
}
body.single-product form.cart .button:not(.disabled):hover,
body.single-product form.cart .button:not(:disabled):hover {
  background: #5c1a25 !important;
}
body.single-product .woocommerce-variation-availability,
body.single-product p.stock {
  color: #27613d;
  font-size: 0.95rem;
  font-weight: 700;
  margin: 10px 0 0;
}
body.single-product .woocommerce-tabs .reviews_tab,
body.single-product #tab-title-reviews,
body.single-product #tab-reviews,
body.single-product #reviews {
  display: none !important;
}

/* Product purchase panel enhancements. */
body.single-product.dzw-pdp-enhanced .wp-block-columns.alignwide {
  align-items: flex-start;
}
body.single-product.dzw-pdp-enhanced .wp-block-columns.alignwide > .wp-block-column:last-child {
  align-self: flex-start;
  position: sticky;
  top: 24px;
}
body.single-product .dzw-pdp-discount {
  background: #f2e6dc;
  border-radius: 999px;
  color: #8b332e;
  display: inline-flex;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.025em;
  margin-left: 10px;
  padding: 4px 9px;
  text-transform: uppercase;
  vertical-align: middle;
}
body.single-product .dzw-pdp-intro {
  color: #3b322c;
  font-size: 1rem;
  line-height: 1.62;
  margin: 0;
}
body.single-product .dzw-pdp-services {
  border: 1px solid #e1d7cd;
  border-radius: 8px;
  margin-top: 22px;
  overflow: hidden;
}
body.single-product .dzw-pdp-service {
  display: grid;
  gap: 2px 12px;
  grid-template-columns: 26px minmax(0, 1fr);
  padding: 13px 15px;
}
body.single-product .dzw-pdp-service + .dzw-pdp-service {
  border-top: 1px solid #eee5dc;
}
body.single-product .dzw-pdp-service-icon {
  color: #8b413b;
  font-size: 1.05rem;
  grid-row: 1 / 3;
  line-height: 1.35;
  text-align: center;
}
body.single-product .dzw-pdp-service strong {
  color: #201811;
  font-size: 0.92rem;
  line-height: 1.35;
}
body.single-product .dzw-pdp-service span:last-child,
body.single-product .dzw-pdp-service a {
  color: #62564d;
  font-size: 0.84rem;
  line-height: 1.45;
}
body.single-product .dzw-pdp-service a {
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}
body.single-product .dzw-pdp-accordions {
  border-top: 1px solid #dcd1c7;
  margin-top: 20px;
}
body.single-product .dzw-pdp-accordion {
  border-bottom: 1px solid #dcd1c7;
}
body.single-product .dzw-pdp-accordion > summary {
  align-items: center;
  color: #201811;
  cursor: pointer;
  display: flex;
  font-size: 0.96rem;
  font-weight: 750;
  justify-content: space-between;
  list-style: none;
  min-height: 50px;
  padding: 0 2px;
}
body.single-product .dzw-pdp-accordion > summary::-webkit-details-marker {
  display: none;
}
body.single-product .dzw-pdp-accordion > summary::after {
  content: +;
  font-size: 1.35rem;
  font-weight: 400;
  line-height: 1;
}
body.single-product .dzw-pdp-accordion[open] > summary::after {
  content: \2212;
}
body.single-product .dzw-pdp-accordion-body {
  color: #51463e;
  font-size: 0.9rem;
  line-height: 1.55;
  padding: 0 4px 16px;
}
body.single-product .dzw-pdp-accordion-body p {
  margin: 0 0 10px;
}
body.single-product .dzw-pdp-accordion-body p:last-child {
  margin-bottom: 0;
}
body.single-product .dzw-pdp-accordion-body ul {
  margin: 7px 0 0;
  padding-left: 20px;
}
body.single-product .dzw-pdp-accordion-body li + li {
  margin-top: 5px;
}
body.single-product .dzw-pdp-specs {
  border-collapse: collapse;
  width: 100%;
}
body.single-product .dzw-pdp-specs th,
body.single-product .dzw-pdp-specs td {
  border-bottom: 1px solid #eee5dc;
  font-size: 0.88rem;
  padding: 8px 0;
  text-align: left;
  vertical-align: top;
}
body.single-product .dzw-pdp-specs th {
  color: #62564d;
  font-weight: 600;
  padding-right: 18px;
  width: 36%;
}
body.single-product.dzw-pdp-enhanced .wp-block-woocommerce-product-details {
  display: none !important;
}

@media (max-width: 781px) {
  body.single-product.dzw-pdp-enhanced .wp-block-columns.alignwide > .wp-block-column:last-child {
    position: static;
  }
  body.single-product .dzw-pdp-discount {
    font-size: 0.72rem;
    margin-left: 7px;
    padding: 3px 7px;
  }
}

body.woocommerce-cart .wp-block-post-content,
body.woocommerce-cart .wp-block-post-title {
  box-sizing: border-box;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: var(--dzw-inner-width) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: min(var(--dzw-inner-width), 100%) !important;
}
body.woocommerce-cart .wp-block-post-content {
  display: block;
}
body.woocommerce-cart .wp-block-post-content > .woocommerce {
  align-items: start;
  display: grid;
  gap: 32px;
  grid-template-columns: minmax(0, 1fr) 420px;
  max-width: none !important;
  width: 100% !important;
}
body.woocommerce-cart .woocommerce-notices-wrapper,
body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-cart .woocommerce-info {
  grid-column: 1 / -1;
}
body.woocommerce-cart .woocommerce-notices-wrapper {
  margin-bottom: 18px;
}
body.woocommerce-cart .woocommerce-cart-form {
  min-width: 0;
}
body.woocommerce-cart .cart-collaterals,
body.woocommerce-cart .cart_totals {
  float: none !important;
  width: 100% !important;
}
body.woocommerce-cart .cart-collaterals {
  margin-top: 0;
}
body.woocommerce-cart .cart_totals {
  background: #fff;
  border: 1px solid rgba(32, 24, 17, 0.12);
  border-radius: 8px;
  box-sizing: border-box;
  padding: 22px 24px;
  position: sticky;
  top: 24px;
}
body.woocommerce-cart .cart_totals h2 {
  font-size: 1.55rem;
  letter-spacing: 0;
  line-height: 1.15;
  margin: 0 0 16px;
  text-align: left;
}
body.woocommerce-cart table.shop_table {
  border: 1px solid rgba(32, 24, 17, 0.12) !important;
  border-collapse: separate !important;
  border-radius: 8px;
  overflow: hidden;
  width: 100% !important;
}
body.woocommerce-cart table.shop_table th,
body.woocommerce-cart table.shop_table td {
  border-color: rgba(32, 24, 17, 0.1) !important;
}
body.woocommerce-cart table.cart th {
  color: #8a7f72;
  font-size: 0.78rem;
  font-weight: 750;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
body.woocommerce-cart table.cart th.product-remove,
body.woocommerce-cart table.cart th.product-thumbnail {
  font-size: 0;
  letter-spacing: 0;
}
body.woocommerce-cart table.cart th.product-remove,
body.woocommerce-cart table.cart td.product-remove {
  width: 38px;
}
body.woocommerce-cart table.cart th.product-thumbnail,
body.woocommerce-cart table.cart td.product-thumbnail {
  width: 112px;
}
body.woocommerce-cart table.cart td {
  padding-bottom: 22px !important;
  padding-top: 22px !important;
  vertical-align: middle;
}
body.woocommerce-cart table.cart img {
  aspect-ratio: 1 / 1;
  border-radius: 6px;
  object-fit: cover;
  width: 88px;
}
body.woocommerce-cart table.cart .product-name a {
  color: #201811;
  font-weight: 650;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
body.woocommerce-cart table.cart .product-remove a {
  color: #a32121 !important;
  font-weight: 700;
}
body.woocommerce-cart table.cart input.qty {
  border: 1px solid rgba(32, 24, 17, 0.28);
  border-radius: 4px;
  min-height: 38px;
  text-align: center;
  width: 72px;
}
body.woocommerce-cart table.cart td.actions {
  background: #fff;
  padding: 18px 22px !important;
}
body.woocommerce-cart table.cart td.actions .coupon {
  display: none !important;
}
body.woocommerce-cart .dzw-cart-actions-row {
  align-items: center;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  width: 100%;
}
body.woocommerce-cart .dzw-continue-shopping {
  align-items: center;
  color: #c4542c;
  display: inline-flex;
  font-size: 0.98rem;
  font-weight: 750;
  gap: 10px;
  text-decoration: none !important;
}
body.woocommerce-cart .dzw-continue-shopping::before {
  content: "\2190";
  font-size: 1.15rem;
  line-height: 1;
}
body.woocommerce-cart .dzw-continue-shopping:hover,
body.woocommerce-cart .dzw-continue-shopping:focus-visible {
  color: #8b413b;
}
body.woocommerce-cart table.cart td.actions > .button,
body.woocommerce-cart .dzw-cart-actions-row .button {
  background: #fffaf3 !important;
  border: 2px solid #241913 !important;
  border-radius: 8px !important;
  color: #201811 !important;
  min-height: 48px;
  min-width: 160px;
  padding: 0 22px !important;
}
body.woocommerce-cart table.cart td.actions > .button:disabled,
body.woocommerce-cart .dzw-cart-actions-row .button:disabled {
  background: #fffaf3 !important;
  border-color: #241913 !important;
  color: #201811 !important;
  opacity: 1 !important;
}
body.woocommerce-cart .dzw-summary-coupon {
  border-bottom: 1px solid #f0e8db;
  margin: 0 0 20px;
  padding: 0 0 20px;
}
body.woocommerce-cart .dzw-summary-coupon-toggle {
  align-items: center;
  appearance: none;
  background: transparent;
  border: 0;
  color: #c4542c;
  cursor: pointer;
  display: inline-flex;
  font-size: 1rem;
  font-weight: 750;
  gap: 10px;
  min-height: 36px;
  padding: 0;
}
body.woocommerce-cart .dzw-summary-coupon-toggle svg {
  flex: 0 0 auto;
  height: 20px;
  width: 20px;
}
body.woocommerce-cart .dzw-summary-coupon .coupon {
  display: none !important;
  gap: 10px;
  margin-top: 12px;
}
body.woocommerce-cart .dzw-summary-coupon.is-open .coupon {
  display: grid !important;
}
body.woocommerce-cart .dzw-summary-coupon label {
  display: none !important;
}
body.woocommerce-cart .dzw-summary-coupon .input-text {
  border: 1px solid rgba(32, 24, 17, 0.16);
  border-radius: 8px;
  min-height: 44px;
  min-width: 0;
  padding: 0 12px;
  width: 100% !important;
}

body.woocommerce-cart .button,
body.woocommerce-cart .checkout-button {
  border-radius: 4px !important;
  font-weight: 750 !important;
}
body.woocommerce-cart .coupon .button,
body.woocommerce-cart .checkout-button {
  background: #111 !important;
  color: #fffaf3 !important;
}
body.woocommerce-cart .cart_totals table.shop_table {
  border: 0 !important;
  border-radius: 0;
  margin: 0;
}
body.woocommerce-cart .cart_totals table.shop_table th,
body.woocommerce-cart .cart_totals table.shop_table td {
  border-bottom: 0 !important;
  color: #5c5149;
  font-size: 1.08rem;
  font-weight: 500;
  padding: 10px 0 !important;
}
body.woocommerce-cart .cart_totals table.shop_table td {
  color: #201811;
  font-weight: 750;
  text-align: right;
}
body.woocommerce-cart .dzw-cart-checkout-note {
  display: none !important;
}
body.woocommerce-cart .dzw-cart-estimate {
  border-top: 3px solid #241913;
  margin: 18px 0 22px;
  padding-top: 18px;
}
body.woocommerce-cart .dzw-cart-estimate-row {
  align-items: center;
  color: #5c5149;
  display: flex;
  font-size: 1.08rem;
  justify-content: space-between;
  margin-bottom: 14px;
}
body.woocommerce-cart .dzw-cart-estimate-row strong {
  color: #201811;
  font-size: 1.7rem;
  font-weight: 850;
}
body.woocommerce-cart .dzw-cart-estimate-row.dzw-cart-total-row span {
  color: #201811;
  font-size: 1.25rem;
  font-weight: 800;
}
body.woocommerce-cart .dzw-cart-free-shipping {
  background: #f8efe3;
  border: 1px solid #eadfce;
  border-radius: 8px;
  color: #201811;
  margin: 18px 0 4px;
  padding: 16px 18px;
}
body.woocommerce-cart .dzw-cart-free-shipping span {
  display: block;
  font-weight: 650;
  margin-bottom: 12px;
}
body.woocommerce-cart .dzw-cart-free-track {
  background: #ecdcca;
  border-radius: 99px;
  height: 8px;
  overflow: hidden;
}
body.woocommerce-cart .dzw-cart-free-fill {
  background: linear-gradient(90deg, #ee7b33, #df3f2f);
  border-radius: inherit;
  display: block;
  height: 100%;
  width: var(--dzw-cart-free-progress, 100%);
}
body.woocommerce-cart .cart_totals th,
body.woocommerce-cart .cart_totals td {
  padding: 16px 18px !important;
  vertical-align: top;
}
body.woocommerce-cart .cart_totals th {
  color: #201811;
  width: 34%;
}
body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals,
body.woocommerce-cart .cart_totals tr.order-total,
body.woocommerce-cart .cart_totals .woocommerce-shipping-methods,
body.woocommerce-cart .cart_totals .woocommerce-shipping-destination,
body.woocommerce-cart .cart_totals .woocommerce-shipping-calculator {
  display: none !important;
}
body.woocommerce-cart .woocommerce-shipping-methods {
  display: grid;
  gap: 12px;
  list-style: none;
  margin: 0 !important;
  padding: 0 !important;
}
body.woocommerce-cart .woocommerce-shipping-methods li {
  align-items: flex-start;
  background: #fffaf3;
  border: 1px solid #eadfce;
  border-radius: 6px;
  display: grid;
  gap: 10px;
  grid-template-columns: 18px 1fr;
  line-height: 1.4;
  padding: 10px 12px;
}
body.woocommerce-cart .woocommerce-shipping-methods input {
  margin-top: 4px;
}
body.woocommerce-cart .woocommerce-shipping-methods label {
  color: #332721;
  font-weight: 650;
}
body.woocommerce-cart .cart_totals tr.order-total th,
body.woocommerce-cart .cart_totals tr.order-total td {
  border-top: 2px solid #241913 !important;
  color: #201811;
  font-size: 1.08rem;
  font-weight: 750;
}
body.woocommerce-cart .woocommerce-shipping-destination {
  color: #5c5149;
  font-size: 0.94rem;
  line-height: 1.5;
  margin: 16px 0 0;
}
body.woocommerce-cart .wc-proceed-to-checkout {
  padding: 0 !important;
}
body.woocommerce-cart .checkout-button {
  align-items: center;
  border-radius: 8px !important;
  display: flex !important;
  font-size: 1rem !important;
  gap: 10px;
  justify-content: center;
  margin: 0 auto !important;
  min-height: 54px;
  padding: 0 20px !important;
  max-width: 360px;
  width: calc(100% - 56px);
}
body.woocommerce-cart .checkout-button::after {
  content: "\2192";
  font-size: 1.15rem;
  line-height: 1;
}

body.woocommerce-order-received .wp-block-post-content,
body.woocommerce-order-received .wp-block-post-title {
  box-sizing: border-box;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: var(--dzw-inner-width) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: min(var(--dzw-inner-width), calc(100% - (var(--dzw-site-gutter) * 2))) !important;
}
/* The order-confirmation template has NO .wp-block-post-content wrapper — the
   confirmation blocks are direct alignwide children of <main>, so the theme's
   .is-layout-constrained > .alignwide rule sizes them at the WordPress "wide"
   width (1340px), wider than the site's --dzw-inner-width (1196px) header/
   footer line. Constrain each block to the same inner line. Classes doubled to
   out-rank the theme's layout-support rule (same trick as address-wrapper). */
body.woocommerce-order-received .wc-block-order-confirmation-status.wc-block-order-confirmation-status,
body.woocommerce-order-received .wc-block-order-confirmation-status-description.wc-block-order-confirmation-status-description,
body.woocommerce-order-received .wc-block-order-confirmation-summary.wc-block-order-confirmation-summary,
body.woocommerce-order-received .wc-block-order-confirmation-totals-wrapper.wc-block-order-confirmation-totals-wrapper,
body.woocommerce-order-received .wc-block-order-confirmation-downloads-wrapper.wc-block-order-confirmation-downloads-wrapper,
body.woocommerce-order-received .wc-block-order-confirmation-additional-information.wc-block-order-confirmation-additional-information,
body.woocommerce-order-received .dzw-confirmation-sent {
  box-sizing: border-box;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: var(--dzw-inner-width) !important;
  width: min(var(--dzw-inner-width), calc(100% - (var(--dzw-site-gutter) * 2))) !important;
}
body.woocommerce-order-received .wp-block-post-content {
  display: block;
}
body.woocommerce-order-received .wp-block-post-content > .woocommerce {
  box-sizing: border-box;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: none !important;
  padding: 0 !important;
  width: 100% !important;
}
body.woocommerce-order-received .wp-block-woocommerce-order-confirmation-status,
body.woocommerce-order-received .wc-block-order-confirmation-status-description,
body.woocommerce-order-received .wc-block-order-confirmation-address-wrapper {
  box-sizing: border-box;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: var(--dzw-inner-width) !important;
  width: min(var(--dzw-inner-width), calc(100% - (var(--dzw-site-gutter) * 2))) !important;
}
/* Doubled class selector: the theme's own layout-support CSS for
   .is-layout-constrained > .alignwide children fixes this block's width/margin
   at a different (wider, WordPress-native "wide size") value than our
   --dzw-inner-width system. A single-class !important rule loses to it, so this
   repeats the class to force higher specificity and win the cascade. */
body.woocommerce-order-received .wc-block-order-confirmation-address-wrapper.wc-block-order-confirmation-address-wrapper {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: var(--dzw-inner-width) !important;
  width: min(var(--dzw-inner-width), calc(100% - (var(--dzw-site-gutter) * 2))) !important;
}
body.woocommerce-order-received {
  --dzw-oc-font: Manrope, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --dzw-oc-accent: #8b413b;
  background: #fbf7f2;
}
/* Redesign 2026-07-27: narrow, receipt-style centered column. The confirmation
   blocks live inside <main>; scoping --dzw-inner-width here re-flows every block
   that references it to ~880px, WITHOUT touching the header/footer parts (which
   sit outside <main> and keep the global width). */
body.woocommerce-order-received main,
body.woocommerce-order-received .wp-block-post-content {
  --dzw-inner-width: 1080px;
}
body.woocommerce-order-received .wc-block-order-confirmation-status {
  text-align: center;
  margin: 8px auto 28px;
  font-family: var(--dzw-oc-font);
}
body.woocommerce-order-received .dzw-confirm-icon {
  width: 52px;
  height: 52px;
  margin: 0 auto 14px;
  border-radius: 999px;
  background: #2f7d4f;
  color: #fffaf3;
  display: flex;
  align-items: center;
  justify-content: center;
}
body.woocommerce-order-received .dzw-confirm-icon svg {
  width: 26px;
  height: 26px;
}
body.woocommerce-order-received .wc-block-order-confirmation-status h1 {
  font-size: clamp(28px, 4vw, 40px);
  font-weight: 650;
  color: #201811;
  margin: 0 0 10px;
}
body.woocommerce-order-received .wc-block-order-confirmation-status p {
  color: #5c5149;
  font-size: 1rem;
  margin: 0;
}
body.woocommerce-order-received .wc-block-order-confirmation-summary-list {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  list-style: none;
  margin: 0 0 24px;
  padding: 0;
  font-family: var(--dzw-oc-font);
}
body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item {
  background: #fff;
  border: 1px solid rgba(32, 24, 17, 0.12);
  border-radius: 8px;
  flex: 1 1 150px;
  padding: 14px 16px;
  box-sizing: border-box;
}
body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item__key {
  display: block;
  color: #8a7f72;
  font-size: 0.74rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item__value {
  display: block;
  margin-top: 5px;
  color: #201811;
  font-size: 1rem;
  font-weight: 650;
  word-break: break-word;
}
body.woocommerce-order-received .wc-block-order-confirmation-summary-list.dzw-stat-band {
  background: #fff;
  border: 1px solid #ece5de;
  border-radius: 12px;
  gap: 0;
  overflow: hidden;
}
body.woocommerce-order-received .dzw-stat-band .wc-block-order-confirmation-summary-list-item {
  background: transparent;
  border: none;
  border-right: 1px solid #ece5de;
  border-radius: 0;
  flex: 1 1 140px;
  padding: 18px 22px;
}
body.woocommerce-order-received .dzw-stat-band .wc-block-order-confirmation-summary-list-item:last-child {
  border-right: none;
}
body.woocommerce-order-received .dzw-stat-band .wc-block-order-confirmation-summary-list-item__key {
  color: #8a7f72;
}
body.woocommerce-order-received .dzw-stat-band .wc-block-order-confirmation-summary-list-item__value {
  color: #201811;
}
/* The total is deliberately NOT oversized: after purchase the customer's key
   reference is the order number; re-shouting the amount spent reads as
   store-serving. Gold accent only, same scale as the other stats (it still
   matters for pay-at-pickup — how much to bring). */
body.woocommerce-order-received .dzw-stat-band .dzw-stat-total .wc-block-order-confirmation-summary-list-item__value,
body.woocommerce-order-received .dzw-stat-band .dzw-stat-total .wc-block-order-confirmation-summary-list-item__value * {
  color: var(--dzw-oc-accent) !important;
  font-weight: 700 !important;
}
body.woocommerce-order-received .wc-block-order-confirmation-status p strong {
  font-weight: 650;
}
body.woocommerce-order-received .dzw-confirmation-sent {
  margin: 10px 0 24px;
  text-align: right;
  color: #8a7f72;
  font-size: 0.86rem;
  font-family: var(--dzw-oc-font);
}
body.woocommerce-order-received .dzw-confirmation-sent strong {
  color: #201811;
}
body.woocommerce-order-received .dzw-address-link {
  margin: 14px 0 0;
}
body.woocommerce-order-received .dzw-address-link a {
  color: #8b413b;
  font-weight: 650;
  text-decoration: none;
}
body.woocommerce-order-received .dzw-address-link a:hover {
  text-decoration: underline;
}
@media (max-width: 680px) {
  body.woocommerce-order-received .dzw-stat-band .wc-block-order-confirmation-summary-list-item {
    border-right: none;
    border-bottom: 1px solid #ece5de;
  }
  body.woocommerce-order-received .dzw-stat-band .wc-block-order-confirmation-summary-list-item:last-child {
    border-bottom: none;
  }
}
body.woocommerce-order-received .wc-block-order-confirmation-totals-wrapper,
body.woocommerce-order-received .wc-block-order-confirmation-billing-wrapper,
body.woocommerce-order-received .wc-block-order-confirmation-shipping-wrapper,
body.woocommerce-order-received .dzw-help-card {
  background: #fff;
  border: 1px solid #ece5de;
  border-radius: 12px;
  box-sizing: border-box;
  box-shadow: 0 12px 30px rgba(36, 25, 19, 0.035);
  padding: 26px 28px;
  font-family: var(--dzw-oc-font);
}
body.woocommerce-order-received .wc-block-order-confirmation-totals-wrapper h2,
body.woocommerce-order-received .wc-block-order-confirmation-billing-wrapper h2,
body.woocommerce-order-received .wc-block-order-confirmation-shipping-wrapper h2,
body.woocommerce-order-received .dzw-help-card h2 {
  margin: 0 0 18px;
  font-size: 1.2rem;
  font-weight: 650;
  line-height: 1.25;
  color: #201811;
}
body.woocommerce-order-received .wc-block-order-confirmation-totals__table {
  width: 100%;
  border-collapse: collapse;
}
body.woocommerce-order-received .wc-block-order-confirmation-totals__table th,
body.woocommerce-order-received .wc-block-order-confirmation-totals__table td {
  padding: 11px 0;
  border-bottom: 1px solid #f0e8db;
  text-align: left;
}
body.woocommerce-order-received td.wc-block-order-confirmation-totals__product a {
  color: #201811;
  font-weight: 650;
  text-decoration: none;
}
body.woocommerce-order-received td.wc-block-order-confirmation-totals__product a:hover {
  text-decoration: underline;
}
body.woocommerce-order-received td.wc-block-order-confirmation-totals__product .dzw-product-qty {
  display: block;
  margin-top: 3px;
  color: #8a7f72;
  font-size: 0.86em;
  font-weight: 400;
}
body.woocommerce-order-received .wc-block-order-confirmation-totals__table tfoot tr:last-child th,
body.woocommerce-order-received .wc-block-order-confirmation-totals__table tfoot tr:last-child td {
  font-size: 1.12em;
  font-weight: 700;
  border-top: 2px solid #241913;
  border-bottom: none;
  padding-top: 14px;
}
body.woocommerce-order-received .wc-block-order-confirmation-order-note {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid #f0e8db;
}
body.woocommerce-order-received .wc-block-order-confirmation-order-note__label {
  margin: 0 0 4px;
  font-weight: 650;
  color: #201811;
}
body.woocommerce-order-received .wc-block-order-confirmation-address-wrapper {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  margin-top: 20px !important;
}
body.woocommerce-order-received .wc-block-order-confirmation-address-wrapper.dzw-addresses-same {
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.9fr);
}
body.woocommerce-order-received .wc-block-order-confirmation-address-wrapper > .wp-block-column {
  flex: none !important;
  margin: 0 !important;
  min-width: 0;
}
body.woocommerce-order-received .wc-block-order-confirmation-billing-address,
body.woocommerce-order-received .wc-block-order-confirmation-shipping-address,
body.woocommerce-order-received .wc-block-order-confirmation-billing-wrapper address,
body.woocommerce-order-received .wc-block-order-confirmation-shipping-wrapper address {
  color: #5c5149;
  font-size: 0.98rem;
  font-style: normal;
  font-weight: 400 !important;
  line-height: 1.6;
}
body.woocommerce-order-received .wc-block-order-confirmation-billing-address *,
body.woocommerce-order-received .wc-block-order-confirmation-shipping-address *,
body.woocommerce-order-received .wc-block-order-confirmation-billing-wrapper address *,
body.woocommerce-order-received .wc-block-order-confirmation-shipping-wrapper address * {
  font-weight: 400 !important;
}
body.woocommerce-order-received .wc-block-order-confirmation-billing-wrapper[style*="display: none"] {
  display: none !important;
}
body.woocommerce-order-received .dzw-help-card {
  background: #241913;
  border-color: #241913;
  box-shadow: none;
  color: #fffaf3;
  height: 100%;
}
body.woocommerce-order-received .dzw-help-card h2 {
  color: #fffaf3;
}
body.woocommerce-order-received .dzw-help-card p {
  margin: 0 0 14px;
  color: #e5dace;
  line-height: 1.5;
}
body.woocommerce-order-received .dzw-help-card a {
  display: block;
  color: #fffaf3;
  font-weight: 600;
  text-decoration: none;
  margin-top: 6px;
}
body.woocommerce-order-received .wc-block-order-confirmation-additional-information {
  background: #fbf6ed;
  border-radius: 8px;
  margin-top: 20px !important;
  padding: 14px 18px;
  color: #5c5149;
  font-size: 0.92rem;
  font-family: var(--dzw-oc-font);
}
body.woocommerce-order-received .dzw-order-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 18px;
  margin: 28px 0 52px;
  font-family: var(--dzw-oc-font);
}
/* ── Redesign 2026-07-27: status tracker, ETA banner, product thumbnail ─────── */
body.woocommerce-order-received .dzw-oc-tracker {
  display: flex;
  align-items: center;
  background: #fff;
  border: 1px solid #ece5de;
  border-radius: 14px;
  padding: 22px clamp(18px, 3vw, 30px);
  margin: 8px auto 20px;
  font-family: var(--dzw-oc-font);
}
body.woocommerce-order-received .dzw-oc-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
  text-align: center;
}
body.woocommerce-order-received .dzw-oc-step .dot {
  width: 30px;
  height: 30px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.85rem;
  font-weight: 700;
  border: 2px solid #d9cdba;
  color: #a4988a;
  background: #fff;
}
body.woocommerce-order-received .dzw-oc-step .lbl {
  font-size: 0.78rem;
  font-weight: 650;
  color: #a4988a;
  white-space: nowrap;
}
body.woocommerce-order-received .dzw-oc-step.done .dot {
  background: var(--dzw-oc-accent);
  border-color: var(--dzw-oc-accent);
  color: #fff;
}
body.woocommerce-order-received .dzw-oc-step.done .lbl,
body.woocommerce-order-received .dzw-oc-step.current .lbl {
  color: #201811;
}
body.woocommerce-order-received .dzw-oc-step.current .dot {
  border-color: var(--dzw-oc-accent);
  color: var(--dzw-oc-accent);
}
body.woocommerce-order-received .dzw-oc-bar {
  flex: 1 1 auto;
  height: 2px;
  background: #e4dcd0;
  margin: 0 6px 22px;
}
body.woocommerce-order-received .dzw-oc-bar.done {
  background: var(--dzw-oc-accent);
}
@media (max-width: 560px) {
  body.woocommerce-order-received .dzw-oc-step .lbl { font-size: 0.68rem; }
  body.woocommerce-order-received .dzw-oc-tracker { padding: 18px 12px; }
}
body.woocommerce-order-received .dzw-oc-eta {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #fbeee0;
  border: 1px solid #f0dcc4;
  border-radius: 12px;
  padding: 14px 18px;
  margin: 0 auto 20px;
  font-family: var(--dzw-oc-font);
  font-size: 0.95rem;
  color: #4a3f36;
}
body.woocommerce-order-received .dzw-oc-eta strong { color: #201811; }
body.woocommerce-order-received .dzw-oc-eta .dzw-oc-eta-ico { font-size: 1.2rem; flex: 0 0 auto; }
/* Trim the footer to essentials right after checkout: drop the marketing
   blurb, the policy strip (redundant with what's already on this page), and
   the shop-category links (the Continue shopping button already covers that),
   keeping only contact details and store policies. Scoped to this page only -
   the footer is untouched everywhere else on the site. */
body.woocommerce-order-received .dzw-footer-policy-strip,
body.woocommerce-order-received .dzw-footer-brand,
body.woocommerce-order-received nav.dzw-footer-links[aria-label="Shop categories"] {
  display: none !important;
}
body.woocommerce-order-received .dzw-footer-inner {
  grid-template-columns: minmax(230px, 1fr) minmax(190px, 0.8fr) !important;
}
body.woocommerce-order-received .dzw-order-actions a.dzw-action-primary {
  border-radius: 8px;
  font-weight: 600;
  padding: 13px 22px;
  text-decoration: none;
  text-align: center;
  background: #241913;
  color: #fffaf3;
}
body.woocommerce-order-received .dzw-order-actions a.dzw-action-link {
  color: #8b413b;
  font-weight: 650;
  text-decoration: none;
}
body.woocommerce-order-received .dzw-order-actions a.dzw-action-link:hover {
  text-decoration: underline;
}
@media (max-width: 900px) {
  body.woocommerce-order-received .wc-block-order-confirmation-address-wrapper,
  body.woocommerce-order-received .wc-block-order-confirmation-address-wrapper.dzw-addresses-same {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 680px) {
  body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item {
    flex-basis: 100%;
  }
}

.dzw-header-brand {
  align-items: center;
  display: inline-flex;
  gap: 10px;
  min-width: max-content;
}
.dzw-header-brand .wp-block-site-logo,
.dzw-header-brand .wp-block-site-logo a {
  line-height: 0;
}
.dzw-header-brand .wp-block-site-logo img {
  border-radius: 0;
  display: block;
  height: 42px;
  object-fit: contain;
  width: 42px;
}
.dzw-header-brand .wp-block-site-title {
  font-size: 1.28rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
  margin: 0;
}
.dzw-header-brand .wp-block-site-title a {
  text-decoration: none !important;
}
.dzw-header-cart-link {
  align-items: center;
  color: #201811;
  display: inline-flex;
  height: 32px;
  justify-content: center;
  text-decoration: none !important;
  width: 32px;
}
.dzw-header-cart-link svg {
  display: block;
  height: 24px;
  width: 24px;
}
.dzw-header-cart-link:hover,
.dzw-header-cart-link:focus-visible {
  color: #8b413b;
}
header.wp-block-template-part {
  border-bottom: 1px solid rgba(24, 19, 15, 0.08);
  position: relative;
  z-index: 200;
}
header.wp-block-template-part > .wp-block-group {
  margin-left: auto !important;
  margin-right: auto !important;
  row-gap: 14px;
  width: min(var(--dzw-site-width), calc(100% - (var(--dzw-site-gutter) * 2))) !important;
}
.dzw-primary-nav {
  align-items: center;
  gap: 14px;
}
.dzw-primary-nav a {
  color: #201811;
  font-size: 0.9rem;
  font-weight: 650;
  letter-spacing: 0;
  text-decoration: none !important;
}
.dzw-primary-nav a:hover,
.dzw-primary-nav a:focus-visible {
  color: #8b413b;
}
.dzw-footer {
  background: #1f1813;
  color: #fffaf3;
  margin-top: 0;
  padding: 58px 0 34px;
}
.dzw-footer * {
  box-sizing: border-box;
}
.dzw-footer a {
  color: #f3eadf;
  text-decoration: none;
}
.dzw-footer a:hover,
.dzw-footer a:focus-visible {
  color: #f2c766;
}
.dzw-footer-inner,
.dzw-footer-bottom,
.dzw-footer-policy-strip {
  margin: 0 auto;
  width: min(var(--dzw-inner-width), calc(100% - (var(--dzw-site-gutter) * 2)));
}
.dzw-footer-policy-strip {
  border: 1px solid rgba(255, 250, 243, 0.13);
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 42px;
  overflow: hidden;
}
.dzw-footer-policy-strip span {
  background: rgba(255, 255, 255, 0.055);
  color: #d9cec2;
  display: grid;
  font-size: 0.94rem;
  gap: 7px;
  line-height: 1.45;
  min-height: 112px;
  padding: 20px;
}
.dzw-footer-policy-strip strong {
  color: #f2c766;
  display: block;
  font-size: 0.82rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.dzw-footer-inner {
  display: grid;
  gap: 34px;
  grid-template-columns: minmax(240px, 1.4fr) minmax(230px, 1fr) minmax(150px, 0.72fr) minmax(190px, 0.78fr);
}
.dzw-footer-brand strong {
  color: #fffaf3;
  display: block;
  font-size: 1.65rem;
  line-height: 1.05;
  margin-bottom: 14px;
}
.dzw-footer p {
  color: #cfc4b9;
  font-size: 1rem;
  line-height: 1.65;
  margin: 0;
}
.dzw-footer a {
  font-size: 1rem;
  line-height: 1.45;
}
.dzw-footer h2 {
  color: #f2c766;
  font-size: 0.9rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: 1;
  margin: 0 0 16px;
  text-transform: uppercase;
}
.dzw-footer-contact p + p {
  margin-top: 14px;
}
.dzw-footer-links {
  display: grid;
  gap: 9px;
}
.dzw-footer-links h2 {
  margin-bottom: 6px;
}
.dzw-footer-bottom {
  border-top: 1px solid rgba(255, 250, 243, 0.14);
  color: #b9aea4;
  display: flex;
  font-size: 0.92rem;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: space-between;
  margin-top: 42px;
  padding-top: 22px;
}
footer.wp-block-template-part > .wp-block-group {
  display: none;
}
footer.wp-block-template-part {
  background: #1f1813;
  margin-block-start: 0 !important;
}
body:not(.home) .wp-site-blocks > main {
  min-height: 52vh;
}
.dzw-policy-page {
  color: #201811;
  margin: 0 auto;
  max-width: 860px;
  padding: 72px 20px 86px;
}
.dzw-policy-page h2 {
  color: #18130f;
  font-size: 2rem;
  line-height: 1.15;
  margin: 34px 0 14px;
}
.dzw-policy-page h2:first-child {
  font-size: 3rem;
  margin-top: 0;
}
.dzw-policy-page p,
.dzw-policy-page li {
  color: #5f554c;
  font-size: 1rem;
  line-height: 1.72;
}
.dzw-policy-page ul {
  padding-left: 22px;
}
@media (max-width: 1060px) {
  .dzw-primary-nav .wp-block-navigation__responsive-container-open {
    display: flex !important;
  }
  .dzw-primary-nav .wp-block-navigation__responsive-container:not(.is-menu-open):not(.has-modal-open) {
    display: none !important;
  }
}
@media (max-width: 1060px) {
  .dzw-primary-nav {
    gap: 12px;
  }
  .dzw-primary-nav a {
    font-size: 0.86rem;
  }
  .dzw-footer-inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .dzw-footer-policy-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 600px) {
  .dzw-header-brand .wp-block-site-logo img {
    height: 36px;
    width: 36px;
  }
  .dzw-header-brand .wp-block-site-title {
    font-size: 1.08rem;
  }
  .dzw-footer {
    padding: 44px 0 28px;
  }
  .dzw-footer-inner {
    grid-template-columns: 1fr;
  }
  .dzw-footer-policy-strip {
    grid-template-columns: 1fr;
  }
  .dzw-footer-policy-strip span {
    min-height: auto;
  }
  .dzw-footer-bottom {
    display: grid;
  }
  .dzw-announcement-viewport {
    width: min(100% - 28px, var(--dzw-inner-width));
  }
  .dzw-announcement-track {
    flex-wrap: wrap;
    justify-content: center;
    row-gap: 4px;
    white-space: normal;
    width: 100%;
  }
  .dzw-announcement-bar {
    font-size: 0.76rem;
  }
  body.woocommerce-cart .wp-block-post-content,
  body.woocommerce-cart .wp-block-post-title {
    width: 100% !important;
  }
  body.woocommerce-cart .wp-block-post-content > .woocommerce {
    grid-template-columns: 1fr;
  }
  body.woocommerce-cart .wp-block-post-content {
    display: block;
  }
  body.woocommerce-cart .wp-block-post-content > .woocommerce {
    display: block;
    width: 100% !important;
  }
  body.woocommerce-order-received .wp-block-post-content,
  body.woocommerce-order-received .wp-block-post-title {
    width: min(100% - 28px, var(--dzw-inner-width)) !important;
  }
  body.woocommerce-cart .cart_totals {
    position: static;
  }
  body.woocommerce-cart .cart-collaterals {
    margin-top: 30px;
  }
  body.woocommerce-cart .dzw-cart-actions-row {
    align-items: stretch;
    flex-direction: column-reverse;
  }
  body.woocommerce-cart .dzw-continue-shopping {
    justify-content: center;
  }
  body.woocommerce-cart table.cart td.actions .coupon {
    display: grid;
    gap: 10px;
    width: 100%;
  }
  body.woocommerce-cart table.cart td.actions .coupon .input-text,
  body.woocommerce-cart table.cart td.actions .coupon .button,
  body.woocommerce-cart table.cart td.actions > .button,
  body.woocommerce-cart .dzw-cart-actions-row .button {
    width: 100% !important;
  }
  body.single-product h1.wp-block-post-title,
  body.single-product .product_title {
    font-size: 2.05rem !important;
  }
  .dzw-policy-page {
    padding: 52px 18px 64px;
  }
  .dzw-policy-page h2:first-child {
    font-size: 2.35rem;
  }
}
/* Header Cart Link Badge count styling */
.dzw-header-cart-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.dzw-header-cart-link svg {
  width: 24px;
  height: 24px;
}
.dzw-header-cart-link .dzw-cart-count {
  position: absolute;
  top: -6px;
  right: -8px;
  background: #7a2331; /* Accent maroon count badge */
  color: #fff !important;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  border-radius: 99px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 0 2px #fff;
  z-index: 2;
}
/* Percent-off chips replace the plain "Sale" badge text (set by JS). */
.wc-block-components-product-sale-badge__text.dzw-pct-off,
.onsale.dzw-pct-off {
  font-weight: 700;
  letter-spacing: 0.02em;
}
body.woocommerce ul.products .price del,
body.woocommerce .wc-block-components-product-price del,
body.woocommerce .wc-block-grid__product-price del {
  color: #7a6f63 !important;
  opacity: 1 !important;
}
body.woocommerce ul.products .price ins,
body.woocommerce .wc-block-components-product-price ins,
body.woocommerce .wc-block-grid__product-price ins {
  color: #7a2331 !important;
  font-weight: 750 !important;
  text-decoration: none !important;
}
/* Inline "NN% off" in the card price line — replaces the on-image badge, shown
   only for standout deals (>= DZW_MIN_DISCOUNT, set in JS). */
.dzw-inline-off {
  color: #7a2331;
  font-weight: 800;
  font-size: 0.72rem;
  letter-spacing: 0.02em;
  margin-left: 6px;
  white-space: nowrap;
}
/* Size guide link + modal */
.dzw-size-guide-link {
  background: none;
  border: none;
  color: #8b6b1f;
  cursor: pointer;
  font-size: 0.88rem;
  font-weight: 700;
  margin-left: 12px;
  padding: 0;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.dzw-size-guide-overlay {
  position: fixed;
  inset: 0;
  z-index: 1200;
  background: rgba(24, 19, 15, 0.55);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
}
.dzw-size-guide-overlay[hidden] { display: none !important; }
.dzw-size-guide-modal {
  background: #fffdf8;
  border-radius: 12px;
  max-width: 560px;
  width: 100%;
  max-height: 86vh;
  overflow: auto;
  padding: 24px 26px;
  box-shadow: 0 18px 48px rgba(32, 24, 17, 0.3);
}
.dzw-size-guide-modal h3 {
  margin: 0 0 6px;
  font-size: 1.2rem;
}
.dzw-size-guide-modal p {
  color: #5c5149;
  font-size: 0.88rem;
  line-height: 1.5;
  margin: 0 0 12px;
}
.dzw-size-guide-modal table {
  border-collapse: collapse;
  width: 100%;
  font-size: 0.9rem;
  margin-bottom: 14px;
}
.dzw-size-guide-modal th,
.dzw-size-guide-modal td {
  border: 1px solid #e5dace;
  padding: 8px 10px;
  text-align: center;
}
.dzw-size-guide-modal th {
  background: #fbf6ed;
  font-weight: 700;
}
.dzw-size-guide-close {
  background: #241913;
  border: none;
  border-radius: 8px;
  color: #fffaf3;
  cursor: pointer;
  font-weight: 650;
  padding: 10px 18px;
}
/* Recently viewed row on product pages */
body.single-product main#wp--skip-link--target.has-global-padding {
  padding-left: var(--dzw-site-gutter, 24px) !important;
  padding-right: var(--dzw-site-gutter, 24px) !important;
}
body.single-product main .alignwide {
  max-width: var(--dzw-inner-width, 1196px) !important;
  width: 100% !important;
}
.dzw-recently-viewed {
  border-top: 1px solid #e4dcd0;
  margin: 40px auto 0;
  max-width: var(--dzw-inner-width, 1196px);
  padding: 24px 0 48px;
  width: 100%;
  box-sizing: border-box;
}
.dzw-recently-viewed h2 {
  font-size: 1rem;
  font-weight: 500;
  margin: 0 0 16px;
}
.dzw-recently-viewed-track {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}
.dzw-recently-viewed-track a {
  align-content: start;
  color: #201811;
  text-decoration: none;
  display: grid;
  grid-template-rows: auto 50px auto;
  text-align: center;
}
.dzw-recently-viewed-track img {
  aspect-ratio: 4 / 5;
  object-fit: cover;
  width: 100%;
  border-radius: 8px;
  background: #f4ede2;
}
.dzw-recently-viewed-track .dzw-rv-name {
  display: -webkit-box;
  font-size: 0.96rem;
  font-weight: 400;
  line-height: 1.25;
  margin: 8px 0 2px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.dzw-recently-viewed-track .dzw-rv-price {
  color: #5c5149;
  font-size: 0.86rem;
}
@media (max-width: 781px) {
  .dzw-recently-viewed-track {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 600px) {
  .dzw-recently-viewed {
    margin: 32px auto 0;
    padding: 20px 0 32px;
  }
  .dzw-recently-viewed-track {
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
/* One catalog image ratio everywhere: 4:5 portrait for clothing cards. */
ul.products li.product img.attachment-woocommerce_thumbnail,
.wp-block-post-template .wc-block-components-product-image img,
.wc-block-grid__product-image img,
.related.products li.product img,
ul.products li.product .attachment-woocommerce_thumbnail {
  aspect-ratio: 4 / 5;
  object-fit: cover;
  width: 100%;
  height: auto;
}
/* WhatsApp floating contact button */
.dzw-whatsapp-fab {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 990;
  width: 52px;
  height: 52px;
  border-radius: 999px;
  background: #1fa855;
  color: #fff !important;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 14px rgba(20, 60, 30, 0.35);
  transition: transform 0.15s ease, background 0.15s ease;
}
.dzw-whatsapp-fab:hover {
  background: #178a45;
  transform: scale(1.06);
}
.dzw-whatsapp-fab svg {
  width: 28px;
  height: 28px;
  display: block;
}
body.woocommerce-checkout .dzw-whatsapp-fab {
  display: none; /* keep checkout distraction-free */
}
@media (max-width: 768px) {
  /* The PDP purchase bar owns the bottom edge on mobile. Keep WhatsApp
     reachable without covering the purchase button. */
  body.single-product .dzw-whatsapp-fab {
    bottom: calc(82px + env(safe-area-inset-bottom));
  }
}
@media (min-width: 769px) {
  /* On desktop product pages the FAB otherwise floats over the bottom-right
     card of the related-products row. Lift it clear of that row's controls.
     Tune the offset if the related grid height changes. */
  body.single-product .dzw-whatsapp-fab {
    bottom: 92px;
  }
}
/* Sticky add-to-cart bar on mobile product pages */
.dzw-sticky-atc {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 980;
  display: none;
  align-items: center;
  gap: 12px;
  padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
  background: #fffdf8;
  border-top: 1px solid #e5dace;
  box-shadow: 0 -4px 16px rgba(32, 24, 17, 0.08);
}
.dzw-sticky-atc .dzw-sticky-atc-info {
  min-width: 0;
  flex: 1 1 auto;
}
.dzw-sticky-atc .dzw-sticky-atc-name {
  display: block;
  font-size: 0.82rem;
  font-weight: 650;
  color: #201811;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.dzw-sticky-atc .dzw-sticky-atc-price {
  display: block;
  font-size: 0.95rem;
  font-weight: 700;
  color: #201811;
}
.dzw-sticky-atc .dzw-sticky-atc-price del {
  color: #8c8177;
  font-weight: 400;
  font-size: 0.8em;
  margin-right: 6px;
}
.dzw-sticky-atc button {
  flex: 0 0 auto;
  background: #7a2331;
  color: #fffaf3;
  border: none;
  border-radius: 8px;
  padding: 12px 22px;
  font-size: 0.95rem;
  font-weight: 650;
  cursor: pointer;
}
@media (min-width: 769px) {
  .dzw-sticky-atc { display: none !important; }
}

.dzw-loop-swatches {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 2px 0 0;
  min-height: 24px;
}
.dzw-loop-options {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  justify-content: flex-start;
  margin: 5px 0 0;
  min-height: 24px;
}
.dzw-loop-options--empty {
  visibility: hidden;
}
.dzw-loop-chip {
  align-items: center;
  color: #4b4139;
  display: inline-flex;
  font-size: 0.75rem;
  font-weight: 600;
  gap: 5px;
  line-height: 1.15;
  min-height: 18px;
}
.dzw-loop-chip--attention {
  color: #4b4139;
}
.dzw-loop-chip-label {
  color: #8f8276;
  font-weight: 600;
}
.dzw-loop-swatch {
  background: var(--dzw-swatch, #ddd);
  border: 1px solid rgba(24, 19, 15, 0.28);
  border-radius: 999px;
  box-shadow: 0 0 0 2px #fff, 0 1px 2px rgba(24, 19, 15, 0.12);
  display: inline-flex;
  flex: 0 0 auto;
  height: 22px;
  padding: 0;
  width: 22px;
}
.dzw-loop-swatch[type=button] {
  cursor: pointer;
}
.dzw-loop-swatch[type=button]:hover,
.dzw-loop-swatch[type=button]:focus-visible,
.dzw-loop-swatch.is-selected {
  border-color: #18130f;
  box-shadow: 0 0 0 2px #fff, 0 0 0 2px #18130f;
  outline: none;
}
.dzw-loop-swatch[style*="#fff"],
.dzw-loop-swatch[style*="#ffffff"],
.dzw-loop-swatch[style*="#f7"] {
  border-color: rgba(24, 19, 15, 0.34);
}
.dzw-loop-swatch-more {
  color: #6f6256;
  font-size: 0.75rem;
  font-weight: 650;
  line-height: 1;
  margin-left: 2px;
}
.dzw-loop-patterns {
  align-items: center;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 7px;
}
.dzw-loop-pattern-swatch {
  background-color: #f4f1ed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border: 1px solid rgba(24, 19, 15, 0.3);
  border-radius: 6px;
  box-shadow: 0 0 0 2px #fff, 0 1px 3px rgba(24, 19, 15, 0.14);
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 auto;
  height: 30px;
  padding: 0;
  transition: border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
  width: 30px;
}
.dzw-loop-pattern-swatch:hover,
.dzw-loop-pattern-swatch:focus-visible,
.dzw-loop-pattern-swatch.is-selected {
  border-color: #18130f;
  box-shadow: 0 0 0 2px #fff, 0 0 0 2px #18130f;
  outline: none;
  transform: translateY(-1px);
}
.dzw-loop-pattern-count {
  color: #6f6256;
  font-size: 0.75rem;
  font-weight: 650;
  line-height: 1.15;
  margin-left: 2px;
}
.woocommerce ul.products li.product .dzw-loop-options + .price,
.woocommerce ul.products li.product .dzw-loop-swatches + .price {
  margin-top: 0;
}
.wc-block-product .dzw-loop-options {
  justify-content: center;
  margin: 5px 0 0;
}
.wc-block-product .wp-block-woocommerce-product-price,
.wc-block-product .wc-block-components-product-price {
  margin-bottom: 0 !important;
}
.dzw-load-more-wrap {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 10px;
  grid-column: 1 / -1;
  justify-content: center;
  margin: 38px 0 8px;
  width: 100%;
}
.dzw-load-more-button {
  background: #18130f;
  border: 1px solid #18130f;
  border-radius: 3px;
  color: #fff;
  cursor: pointer;
  font: inherit;
  font-size: 0.94rem;
  font-weight: 750;
  min-height: 46px;
  min-width: 220px;
  padding: 0 24px;
}
.dzw-load-more-button:hover,
.dzw-load-more-button:focus-visible {
  background: #3b3028;
  outline: 2px solid #c69a34;
  outline-offset: 2px;
}
.dzw-load-more-button:disabled {
  cursor: wait;
  opacity: 0.65;
}
.dzw-load-more-status {
  color: #6f6256;
  font-size: 0.85rem;
}
.dzw-load-more-enhanced {
  display: none !important;
}
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product button.button,
.woocommerce ul.products li.product .wp-block-button,
.woocommerce ul.products li.product .wp-block-button__link,
.wc-block-product .wp-block-woocommerce-product-button,
.wc-block-product .wc-block-components-product-button,
.wc-block-product .wp-block-button,
.wc-block-grid__product .wp-block-button,
.wc-block-grid__product .wp-block-button__link {
  display: none !important;
}
.woocommerce ul.products li.product,
.wc-block-product,
.wc-block-grid__product {
  cursor: pointer;
}
:root {
  --dzw-site-width: 1296px;
  --dzw-inner-width: 1196px;
  --dzw-site-gutter: clamp(18px, 3vw, 40px);
}
body.tax-product_cat .wp-site-blocks > main,
body.post-type-archive-product .wp-site-blocks > main,
body.woocommerce-shop .wp-site-blocks > main {
  box-sizing: border-box;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: none !important;
  width: min(var(--dzw-site-width), calc(100% - (var(--dzw-site-gutter) * 2))) !important;
}
body.archive.woocommerce ul.products,
body.post-type-archive-product.woocommerce ul.products,
body.tax-product_cat .wc-block-product-template__responsive,
body.post-type-archive-product .wc-block-product-template__responsive,
body.woocommerce-shop .wc-block-product-template__responsive {
  display: grid !important;
  gap: 42px 28px !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  margin-top: 18px !important;
}
body.archive.woocommerce ul.products::before,
body.archive.woocommerce ul.products::after,
body.post-type-archive-product.woocommerce ul.products::before,
body.post-type-archive-product.woocommerce ul.products::after,
body.tax-product_cat .wc-block-product-template__responsive::before,
body.tax-product_cat .wc-block-product-template__responsive::after,
body.post-type-archive-product .wc-block-product-template__responsive::before,
body.post-type-archive-product .wc-block-product-template__responsive::after {
  display: none !important;
}
body.archive.woocommerce ul.products li.product,
body.post-type-archive-product.woocommerce ul.products li.product,
body.tax-product_cat .wc-block-product-template__responsive > li.wc-block-product,
body.post-type-archive-product .wc-block-product-template__responsive > li.wc-block-product,
body.woocommerce-shop .wc-block-product-template__responsive > li.wc-block-product {
  float: none !important;
  margin: 0 !important;
  max-width: none !important;
  min-width: 0 !important;
  text-align: left;
  width: auto !important;
}
body.archive.woocommerce ul.products li.product a,
body.post-type-archive-product.woocommerce ul.products li.product a,
body.tax-product_cat .wc-block-product-template__responsive > li.wc-block-product a,
body.post-type-archive-product .wc-block-product-template__responsive > li.wc-block-product a,
body.woocommerce-shop .wc-block-product-template__responsive > li.wc-block-product a {
  color: inherit;
  text-decoration: none;
}
body.archive.woocommerce ul.products li.product a img,
body.post-type-archive-product.woocommerce ul.products li.product a img,
body.tax-product_cat .wc-block-product-template__responsive > li.wc-block-product img,
body.post-type-archive-product .wc-block-product-template__responsive > li.wc-block-product img,
body.woocommerce-shop .wc-block-product-template__responsive > li.wc-block-product img {
  aspect-ratio: 4 / 5;
  background: #f6f4f1;
  display: block;
  height: auto;
  margin: 0 0 14px;
  object-fit: cover;
  object-position: center top;
  transition: opacity 160ms ease;
  width: 100%;
}
body.archive.woocommerce ul.products li.product a:hover img,
body.post-type-archive-product.woocommerce ul.products li.product a:hover img,
body.tax-product_cat .wc-block-product-template__responsive > li.wc-block-product a:hover img,
body.post-type-archive-product .wc-block-product-template__responsive > li.wc-block-product a:hover img,
body.woocommerce-shop .wc-block-product-template__responsive > li.wc-block-product a:hover img {
  opacity: 0.94;
}
body.archive.woocommerce .woocommerce-products-header__title.page-title,
body.archive.woocommerce h1.page-title,
body.tax-product_cat h1.wp-block-query-title,
body.post-type-archive-product.woocommerce .woocommerce-products-header__title.page-title,
body.post-type-archive-product.woocommerce h1.page-title {
  color: #18130f;
  font-size: clamp(2.45rem, 4vw, 3.35rem);
  letter-spacing: 0;
  line-height: 1.04;
  margin-bottom: 18px;
}
body.archive.woocommerce .woocommerce-result-count,
body.archive.woocommerce .woocommerce-ordering,
body.post-type-archive-product.woocommerce .woocommerce-result-count,
body.post-type-archive-product.woocommerce .woocommerce-ordering {
  font-size: 1rem;
}
body.archive.woocommerce ul.products li.product .woocommerce-loop-product__title,
body.post-type-archive-product.woocommerce ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat .wc-block-product-template__responsive .wp-block-post-title,
body.post-type-archive-product .wc-block-product-template__responsive .wp-block-post-title,
body.woocommerce-shop .wc-block-product-template__responsive .wp-block-post-title {
  color: #201811;
  font-size: clamp(0.96rem, 1vw, 1.05rem) !important;
  font-weight: 650;
  line-height: 1.28;
  margin: 0 0 6px !important;
  padding: 0;
}
body.archive.woocommerce ul.products li.product .price,
body.post-type-archive-product.woocommerce ul.products li.product .price,
body.tax-product_cat .wc-block-product-template__responsive .wc-block-components-product-price,
body.post-type-archive-product .wc-block-product-template__responsive .wc-block-components-product-price,
body.woocommerce-shop .wc-block-product-template__responsive .wc-block-components-product-price {
  color: #201811;
  display: block;
  font-size: 0.96rem !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  margin: 0 !important;
}
body.archive.woocommerce ul.products li.product .price del,
body.post-type-archive-product.woocommerce ul.products li.product .price del,
body.tax-product_cat .wc-block-product-template__responsive .wc-block-components-product-price del,
body.post-type-archive-product .wc-block-product-template__responsive .wc-block-components-product-price del,
body.woocommerce-shop .wc-block-product-template__responsive .wc-block-components-product-price del {
  color: #5f574f;
  font-size: 0.9em !important;
  font-weight: 500 !important;
  margin-right: 6px;
}
body.archive.woocommerce ul.products li.product .price ins,
body.post-type-archive-product.woocommerce ul.products li.product .price ins,
body.tax-product_cat .wc-block-product-template__responsive .wc-block-components-product-price ins,
body.post-type-archive-product .wc-block-product-template__responsive .wc-block-components-product-price ins,
body.woocommerce-shop .wc-block-product-template__responsive .wc-block-components-product-price ins {
  color: #d71920;
  font-weight: 750 !important;
  text-decoration: none;
}
body.archive.woocommerce ul.products li.product .star-rating,
body.post-type-archive-product.woocommerce ul.products li.product .star-rating,
body.tax-product_cat .wc-block-product-template__responsive .wc-block-components-product-rating,
body.post-type-archive-product .wc-block-product-template__responsive .wc-block-components-product-rating,
body.woocommerce-shop .wc-block-product-template__responsive .wc-block-components-product-rating {
  font-size: 0.84rem;
  margin: 8px 0 0;
}
body.tax-product_cat,
body.post-type-archive-product,
body.woocommerce-shop {
  overflow-x: hidden;
}
body.tax-product_cat .wp-site-blocks,
body.post-type-archive-product .wp-site-blocks,
body.woocommerce-shop .wp-site-blocks {
  max-width: 100vw;
  overflow-x: hidden;
}
.dzw-subcategory-rail {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-start;
  margin: 0 0 28px;
  width: 100%;
}
.dzw-subcategory-rail a {
  align-items: center;
  border: 1px solid #e1d5ca;
  box-sizing: border-box;
  color: #201811;
  display: inline-flex;
  font-size: 0.92rem;
  font-weight: 750;
  justify-content: center;
  line-height: 1;
  min-height: 40px;
  padding: 0 15px;
  text-decoration: none;
}
.dzw-subcategory-rail a:hover,
.dzw-subcategory-rail a:focus-visible {
  border-color: #18130f;
  outline: none;
}
@media (max-width: 1100px) {
  body.archive.woocommerce ul.products,
  body.post-type-archive-product.woocommerce ul.products,
  body.tax-product_cat .wc-block-product-template__responsive,
  body.post-type-archive-product .wc-block-product-template__responsive,
  body.woocommerce-shop .wc-block-product-template__responsive {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (min-width: 701px) {
  body.tax-product_cat .dzw-subcategory-rail,
  body.post-type-archive-product .dzw-subcategory-rail,
  body.woocommerce-shop .dzw-subcategory-rail {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: none !important;
    width: auto !important;
  }
}
@media (max-width: 700px) {
  body.archive.woocommerce ul.products,
  body.post-type-archive-product.woocommerce ul.products,
  body.tax-product_cat .wc-block-product-template__responsive,
  body.post-type-archive-product .wc-block-product-template__responsive,
  body.woocommerce-shop .wc-block-product-template__responsive {
    gap: 30px 16px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    max-width: 100% !important;
    width: 100% !important;
  }
  body.tax-product_cat .wc-block-product-template__responsive > li.wc-block-product,
  body.post-type-archive-product .wc-block-product-template__responsive > li.wc-block-product,
  body.woocommerce-shop .wc-block-product-template__responsive > li.wc-block-product {
    min-width: 0 !important;
  }
  body.tax-product_cat .wp-site-blocks > main,
  body.post-type-archive-product .wp-site-blocks > main,
  body.woocommerce-shop .wp-site-blocks > main {
    width: min(100% - 28px, var(--dzw-site-width)) !important;
  }
  body.archive.woocommerce ul.products li.product .woocommerce-loop-product__title,
  body.post-type-archive-product.woocommerce ul.products li.product .woocommerce-loop-product__title,
  body.tax-product_cat .wc-block-product-template__responsive .wp-block-post-title,
  body.post-type-archive-product .wc-block-product-template__responsive .wp-block-post-title,
  body.woocommerce-shop .wc-block-product-template__responsive .wp-block-post-title {
    font-size: 0.9rem !important;
    padding: 0;
  }
  .dzw-subcategory-rail {
    flex-wrap: nowrap;
    margin-bottom: 22px;
    overflow-x: auto;
    padding-bottom: 4px;
    scrollbar-width: none;
  }
  .dzw-subcategory-rail::-webkit-scrollbar {
    display: none;
  }
  .dzw-subcategory-rail a {
    flex: 0 0 auto;
    min-height: 40px;
    padding: 0 14px;
  }
}

body.single-product form.variations_form table.variations {
  border: 0;
  margin: 26px 0 28px;
}
body.single-product form.variations_form table.variations tbody,
body.single-product form.variations_form table.variations tr,
body.single-product form.variations_form table.variations th,
body.single-product form.variations_form table.variations td {
  border: 0;
  display: block;
  padding: 0;
  text-align: left;
  width: auto;
}
body.single-product form.variations_form table.variations tr {
  margin: 0 0 22px;
}
body.single-product form.variations_form table.variations th label {
  align-items: baseline;
  color: #18130f;
  display: flex;
  flex-wrap: wrap;
  font-size: 1.02rem;
  font-weight: 800;
  gap: 6px;
  line-height: 1.3;
  margin: 0 0 11px;
}
.dzw-pdp-selected-value {
  color: #615850;
  font-weight: 500;
}
body.single-product form.variations_form table.variations select,
body.single-product form.variations_form select.dzw-native-variation-select {
  height: 1px !important;
  left: -10000px !important;
  opacity: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  width: 1px !important;
}
.dzw-pdp-options {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 11px;
  margin: 0;
}
.dzw-pdp-option {
  align-items: center;
  background: #fff;
  border: 1px solid #d7d1ca;
  border-radius: 5px;
  color: #201811;
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-weight: 700;
  justify-content: center;
  min-height: 46px;
  min-width: 52px;
  padding: 0 14px;
  position: relative;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, color 0.15s ease;
}
.dzw-pdp-option:hover,
.dzw-pdp-option:focus-visible {
  border-color: #18130f;
  box-shadow: 0 0 0 1px #18130f;
  outline: none;
}
.dzw-pdp-option.is-selected {
  border-color: #18130f;
  box-shadow: 0 0 0 2px #18130f;
}
.dzw-pdp-option.is-disabled,
.dzw-pdp-option:disabled {
  color: #9a928a;
  cursor: not-allowed;
  opacity: 0.45;
}
.dzw-pdp-option.is-disabled::after {
  background: #b9b1a8;
  content: "";
  height: 1px;
  left: 7px;
  position: absolute;
  right: 7px;
  top: 50%;
  transform: rotate(-38deg);
}
.dzw-pdp-option--color {
  background: var(--dzw-pdp-swatch, #ddd);
  border-radius: 999px;
  box-shadow: inset 0 0 0 2px #fff;
  height: 34px;
  min-height: 34px;
  min-width: 34px;
  padding: 0;
  width: 34px;
}
.dzw-pdp-option--color.is-selected {
  box-shadow: inset 0 0 0 2px #fff, 0 0 0 2px #18130f;
}
.dzw-pdp-option--color .dzw-pdp-option-text {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
.dzw-pdp-option--pattern {
  background-color: #f4f1ed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 7px;
  box-shadow: inset 0 0 0 2px #fff, 0 1px 3px rgba(24, 19, 15, 0.14);
  height: 54px;
  min-height: 54px;
  min-width: 54px;
  padding: 0;
  width: 54px;
}
.dzw-pdp-option--pattern.is-selected {
  box-shadow: inset 0 0 0 2px #fff, 0 0 0 2px #18130f;
}
.dzw-pdp-option--pattern .dzw-pdp-option-text {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
body.single-product form.variations_form .reset_variations {
  color: #6f6256;
  display: inline-flex !important;
  font-size: 0.92rem;
  margin-top: 12px;
}
@media (max-width: 640px) {
  .dzw-pdp-options {
    gap: 10px;
  }
  .dzw-pdp-option {
    min-height: 44px;
    min-width: 50px;
  }
}

body.woocommerce-order-received .dzw-order-product {
  display: inline-grid;
  grid-template-columns: 72px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  vertical-align: middle;
}
body.woocommerce-order-received .dzw-order-product__thumb {
  width: 72px;
  height: 88px;
  object-fit: cover;
  border-radius: 8px;
  border: 1px solid #ece5de;
  background: #f7f2ed;
}
@media (max-width: 600px) {
  body.woocommerce-order-received .dzw-order-product {
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 10px;
  }
  body.woocommerce-order-received .dzw-order-product__thumb {
    width: 56px;
    height: 68px;
  }
}
