/* ═══════════════════════════════════════════════════════════════
   DHW — Header
═══════════════════════════════════════════════════════════════ */
.theme-header-topbar {
  border-bottom: 1px solid rgba(47,74,63,0.08) !important;
  padding: 0 !important;
  background-color: #F4F3EF !important;
}

.theme-header-topbar .zpcontainer {
  max-width:       1160px !important;
  margin:          0 auto !important;
  padding-block:   10px !important;
  padding-inline:  40px !important;
  display:         flex !important;
  align-items:     center !important;
  justify-content: center !important;
}

.theme-header-topbar [data-topbarinfo-position] {
  display:         flex !important;
  align-items:     center !important;
  justify-content: center !important;
  width:           100% !important;
}

.theme-header-topbar .theme-topbar-contact-info {
  display:     flex !important;
  align-items: center !important;
  width:       auto !important;
}

.theme-header-topbar ul[data-contact-info-inner] {
  display:     flex !important;
  align-items: center !important;
  gap:         32px !important;
  margin:      0 !important;
  padding:     0 !important;
  list-style:  none !important;
}

.theme-header-topbar li.theme-topbar-info {
  display:     flex !important;
  align-items: center !important;
  margin:      0 !important;
  padding:     0 !important;
}

.theme-header-topbar li.theme-topbar-info + li.theme-topbar-info {
  padding-left: 32px !important;
  border-left:  1px solid rgba(47,74,63,0.15) !important;
  margin-left:  0 !important;
}

.theme-header-topbar li.theme-topbar-info a {
  display:         flex !important;
  align-items:     center !important;
  gap:             7px !important;
  font-family:     'Montserrat', sans-serif !important;
  font-size:       12px !important;
  font-weight:     400 !important;
  letter-spacing:  0.04em !important;
  color:           rgba(47,74,63,0.70) !important;
  text-decoration: none !important;
  transition:      color 0.2s !important;
}

.theme-header-topbar li.theme-topbar-info a:hover {
  color: #2F4A3F !important;
}

.theme-header-topbar .theme-topbar-info-icon svg {
  width:   14px !important;
  height:  14px !important;
  opacity: 0.65 !important;
  color:   #2F4A3F !important;
  fill:    #2F4A3F !important;
}

.theme-header {
  background-color: #FFFFFF !important;
}

.theme-header .theme-menu ul li a {
  line-height: 20px !important;
  letter-spacing: 0.4px !important;
  transition: color 0.2s ease !important;
}

.theme-header .theme-menu ul li a:hover {
  color: #2F4A3F !important;
  background: transparent !important;
}

.theme-header .theme-menu ul li.theme-menu-selected a {
  color: #FFFFFF !important;
  background-color: #2F4A3F !important;
  border-radius: 4px !important;
  padding: 6px 14px !important;
}



.watermark-bg {
  background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M54.627 0l.83.828-1.415 1.415-.828-.828-.828.828-1.415-1.415.828-.828-.828-.828 1.415-1.415.828.828.828-.828 1.415 1.415-.828.828z' fill='%233F5F50' fill-opacity='0.1' fill-rule='evenodd'/%3E%3C/svg%3E");
}

.hero-sub {
  max-width: 512px;
}

.hero-img img {
  transition: transform 500ms ease;
}

.hero-img:hover img {
  transform: scale(1.05);
}

.why-row {
  max-width: 768px;
  margin: 0 auto;
}

.why-icon {
  width: 64px;
  height: 64px;
  background: #FFFFFF;
  border: 1px solid rgba(47, 74, 63, 0.10);
  border-radius: 50%;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.why-box:hover .why-icon {
  box-shadow: 0px 6px 20px rgba(0, 0, 0, 0.10);
  transform: translateY(-1px);
}

.collection-box .collection-img img {
  transition: transform 500ms ease;
}

.collection-box:hover .collection-img img {
  transform: scale(1.05);
}

.collection-des {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.ingredients img {
  width: 80px !important;
  height: 80px !important;
  border-radius: 9999px;
  border: 1px solid rgba(47, 74, 63, 0.20);
  padding: 4px;
  object-fit: cover;
}

.test-row {
  display: flex !important;
  align-items: stretch !important;
}

.test-box {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

.test-name {
  margin-top: auto !important;
}

.legal-hero {
  max-width: 720px;
  margin: 0 auto;
}





/* ═══════════════════════════════════════════════════════════════
   DHW — PDP Stylesheet
═══════════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400&family=Montserrat:wght@300;400;500;600&display=swap');

.theme-product-details-style-08 {
  --dhw-primary:  #2F4A3F;
  --dhw-p25:      rgba(47,74,63,0.25);
  --dhw-p12:      rgba(47,74,63,0.12);
  --dhw-p10:      rgba(47,74,63,0.10);
  --dhw-p5:       rgba(47,74,63,0.05);
  --dhw-cream:    #F4F3EF;
  --dhw-white:    #FFFFFF;
  --dhw-charcoal: #2B2B2B;
  --dhw-ch75:     rgba(43,43,43,0.75);
  --dhw-ch65:     rgba(43,43,43,0.65);
  --dhw-ch55:     rgba(43,43,43,0.55);
  --dhw-ch12:     rgba(43,43,43,0.12);
  --dhw-ch08:     rgba(43,43,43,0.08);

  background:             var(--dhw-cream) !important;
  font-family:            'Montserrat', sans-serif !important;
  color:                  var(--dhw-charcoal) !important;
  -webkit-font-smoothing: antialiased !important;
}

/* ═══════════════════════════════════════════════════════════════
   HIDE
═══════════════════════════════════════════════════════════════ */
.theme-product-details-style-08 .theme-tag-social-contianer,
.theme-product-details-style-08 .theme-prod-pricelist-outter,
.theme-product-details-style-08 .theme-product-coupons,
.theme-product-details-style-08 .theme-spacer,
.theme-product-details-style-08 a[data-zs-more-details],
.theme-product-details-style-08 [data-zs-product-details-recommended-section],
.theme-product-details-style-08 .theme-custom-field-accordion,
.theme-product-details-style-08 .theme-product-specification-section,
.theme-product-details-style-08 .theme-prod-specification-field {
  display: none !important;
}

/* ═══════════════════════════════════════════════════════════════
   BREADCRUMB
═══════════════════════════════════════════════════════════════ */
.theme-product-details-style-08 .theme-breadcrumb-container {
  background:    #f0eee9 !important;
  border-bottom: 1px solid var(--dhw-p10) !important;
  padding:       6px 0 !important;
}

.theme-product-details-style-08 .theme-breadcrumb-container[data-zs-product-details-breadcrumb-section] .zpcontainer {
  padding-block: 10px 0 !important;
}

.theme-product-details-style-08 .theme-product-breadcrumb,
.theme-product-details-style-08 .theme-product-breadcrumb * {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      11.5px !important;
  color:          var(--dhw-ch55) !important;
  letter-spacing: 0.02em !important;
}

.theme-product-details-style-08 .theme-product-breadcrumb a:hover {
  color: var(--dhw-primary) !important;
}

/* ═══════════════════════════════════════════════════════════════
   PRIMARY SECTION
═══════════════════════════════════════════════════════════════ */
.theme-product-details-style-08 [data-zs-product-details-primary-section] {
  background: var(--dhw-cream) !important;
  padding:    40px 0 56px !important;
}

.theme-product-details-style-08 [data-zs-product-primary-details] {
  display:               grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap:                   64px !important;
  align-items:           start !important;
  max-width:             1160px !important;
  margin:                0 auto !important;
  padding:               0 40px !important;
  width:                 100% !important;
  box-sizing:            border-box !important;
}

.theme-product-details-style-08 [data-zs-product-primary-details] > .theme-product-detail-column {
  width:     100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}

/* ═══════════════════════════════════════════════════════════════
   IMAGE COLUMN
═══════════════════════════════════════════════════════════════ */
.theme-product-details-style-08 .theme-product-detail-image-container {
  position: sticky !important;
  top:      80px !important;
}

.theme-product-details-style-08 .theme-product-detail-image[data-zs-product-img-container] {
  aspect-ratio:    1 / 1 !important;
  background:      transparent !important;
  border:          1px solid var(--dhw-p10) !important;
  overflow:        hidden !important;
  display:         flex !important;
  align-items:     center !important;
  justify-content: center !important;
  width:           100% !important;
}

.theme-product-details-style-08 .theme-product-detail-image-inner {
  width:           100% !important;
  height:          100% !important;
  display:         flex !important;
  align-items:     center !important;
  justify-content: center !important;
}

.theme-product-details-style-08 [data-zs-product-img-container] img {
  width:      100% !important;
  height:     100% !important;
  object-fit: cover !important;
}

/* ═══════════════════════════════════════════════════════════════
   DETAILS COLUMN
═══════════════════════════════════════════════════════════════ */
.theme-product-details-style-08 .theme-product-detail-column.theme-product-detail-container {
  display:        flex !important;
  flex-direction: column !important;
  gap:            0 !important;
}

.theme-product-details-style-08 .theme-product-name {
  margin-bottom: 4px !important;
}

.theme-product-details-style-08 .theme-product-name h1,
.theme-product-details-style-08 h1[data-zs-product-name] {
  font-family:    'Playfair Display', serif !important;
  font-size:      clamp(30px, 3.5vw, 44px) !important;
  font-weight:    400 !important;
  color:          var(--dhw-primary) !important;
  line-height:    1.2 !important;
  letter-spacing: -0.01em !important;
  margin:         0 0 4px 0 !important;
  text-transform: none !important;
}

.theme-product-details-style-08 [data-zs-pricing-container] {
  border-top:    1px solid var(--dhw-p12) !important;
  border-bottom: 1px solid var(--dhw-p12) !important;
  padding:       16px 0 !important;
  margin:        12px 0 20px 0 !important;
}

.theme-product-details-style-08 span[data-zs-selling-price],
.theme-product-details-style-08 .theme-product-price {
  font-family:    'Playfair Display', serif !important;
  font-size:      36px !important;
  font-weight:    400 !important;
  color:          var(--dhw-primary) !important;
  letter-spacing: 0.01em !important;
  display:        block !important;
  line-height:    1.1 !important;
}

/* ═══════════════════════════════════════════════════════════════
   SHORT DESCRIPTION
═══════════════════════════════════════════════════════════════ */
.theme-product-details-style-08 .theme-product-short-description {
  display:     block !important;
  font-family: 'Montserrat', sans-serif !important;
  font-style:  italic !important;
  font-size:   15px !important;
  font-weight: 300 !important;
  color:       var(--dhw-ch65) !important;
  line-height: 1.6 !important;
  margin:      0 0 16px 0 !important;
}

.theme-product-details-style-08 .theme-product-short-description span {
  background-color: transparent !important;
  font-style:       italic !important;
}

/* ═══════════════════════════════════════════════════════════════
   DOSAGE LINE
═══════════════════════════════════════════════════════════════ */
.theme-product-details-style-08 .dhw-dosage-line {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      12px !important;
  font-weight:    400 !important;
  letter-spacing: 0.08em !important;
  color:          var(--dhw-ch55) !important;
  text-transform: uppercase !important;
  margin:         0 0 12px 0 !important;
  display:        block !important;
}

/* ═══════════════════════════════════════════════════════════════
   KEY BENEFITS
═══════════════════════════════════════════════════════════════ */
.dhw-key-benefits {
  margin: 0 0 20px 0 !important;
}

.dhw-kb-heading {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      13px !important;
  font-weight:    700 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  color:          var(--dhw-charcoal) !important;
  margin:         0 0 12px 0 !important;
}

.dhw-kb-list {
  list-style:     none !important;
  padding:        0 !important;
  margin:         0 !important;
  display:        flex !important;
  flex-direction: column !important;
  gap:            8px !important;
}

.dhw-kb-item {
  display:     flex !important;
  align-items: center !important;
  gap:         10px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size:   14px !important;
  font-weight: 400 !important;
  color:       var(--dhw-ch75) !important;
  line-height: 1.4 !important;
}

.dhw-kb-item .dhw-check-icon {
  flex-shrink: 0 !important;
  width:       18px !important;
  height:      18px !important;
  color:       var(--dhw-primary) !important;
}

/* ═══════════════════════════════════════════════════════════════
   QTY + ATC
═══════════════════════════════════════════════════════════════ */
.theme-product-details-style-08 .theme-product-quantity-cart-area {
  display:          flex !important;
  flex-direction:   row !important;
  align-items:      stretch !important;
  gap:              12px !important;
  width:            100% !important;
  border-block-end: none !important;
  margin:           20px 0 16px 0 !important;
}

.theme-product-details-style-08 .theme-product-quantity-spinner {
  display:       inline-flex !important;
  align-items:   stretch !important;
  height:        52px !important;
  border:        1.5px solid var(--dhw-p25) !important;
  background:    var(--dhw-white) !important;
  overflow:      hidden !important;
  width:         fit-content !important;
  padding:       0 !important;
  margin:        0 !important;
  box-sizing:    border-box !important;
  border-radius: 0 !important;
}

.theme-product-details-style-08 input.theme-quantity-decrease,
.theme-product-details-style-08 input.theme-quantity-increase {
  width:           40px !important;
  height:          52px !important;
  background:      none !important;
  border:          none !important;
  font-size:       18px !important;
  color:           var(--dhw-primary) !important;
  cursor:          pointer !important;
  font-family:     'Montserrat', sans-serif !important;
  flex:            0 0 40px !important;
  min-width:       40px !important;
  display:         flex !important;
  align-items:     center !important;
  justify-content: center !important;
  padding:         0 !important;
  margin:          0 !important;
  line-height:     52px !important;
  box-sizing:      border-box !important;
  transition:      background 0.2s !important;
}

.theme-product-details-style-08 input.theme-quantity-decrease:hover,
.theme-product-details-style-08 input.theme-quantity-increase:hover {
  background: var(--dhw-p5) !important;
}

.theme-product-details-style-08 input[data-zs-quantity] {
  width:        48px !important;
  height:       52px !important;
  text-align:   center !important;
  border:       none !important;
  border-left:  1px solid var(--dhw-p12) !important;
  border-right: 1px solid var(--dhw-p12) !important;
  font-family:  'Montserrat', sans-serif !important;
  font-size:    14px !important;
  font-weight:  500 !important;
  color:        var(--dhw-charcoal) !important;
  background:   var(--dhw-white) !important;
  outline:      none !important;
  padding:      0 !important;
  margin:       0 !important;
  flex:         0 0 48px !important;
  min-width:    48px !important;
  box-sizing:   border-box !important;
  -moz-appearance: textfield !important;
}

.theme-product-details-style-08 input[data-zs-quantity]::-webkit-outer-spin-button,
.theme-product-details-style-08 input[data-zs-quantity]::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
}

.theme-product-details-style-08 .theme-product-cart-buttons {
  display:     flex !important;
  flex:        1 !important;
  align-items: stretch !important;
  gap:         10px !important;
  min-width:   0 !important;
}

.theme-product-details-style-08 button.theme-cart-button[data-zs-add-to-cart] {
  flex:            1 !important;
  height:          52px !important;
  background:      var(--dhw-primary) !important;
  color:           var(--dhw-white) !important;
  border:          1.5px solid var(--dhw-primary) !important;
  border-radius:   0 !important;
  font-family:     'Montserrat', sans-serif !important;
  font-size:       11px !important;
  font-weight:     600 !important;
  letter-spacing:  0.16em !important;
  text-transform:  uppercase !important;
  cursor:          pointer !important;
  display:         flex !important;
  align-items:     center !important;
  justify-content: center !important;
  box-shadow:      none !important;
  transition:      background 0.25s, color 0.25s !important;
  min-width:       0 !important;
}

.theme-product-details-style-08 button.theme-cart-button[data-zs-add-to-cart]:hover {
  background: transparent !important;
  color:      var(--dhw-primary) !important;
}

.theme-product-details-style-08 button.wishlist-selection-container {
  width:           52px !important;
  height:          52px !important;
  background:      none !important;
  border:          1.5px solid var(--dhw-p25) !important;
  border-radius:   0 !important;
  display:         flex !important;
  align-items:     center !important;
  justify-content: center !important;
  cursor:          pointer !important;
  flex-shrink:     0 !important;
  box-shadow:      none !important;
  transition:      border-color 0.2s, background 0.2s !important;
}

.theme-product-details-style-08 button.wishlist-selection-container:hover {
  border-color: var(--dhw-primary) !important;
  background:   var(--dhw-p5) !important;
}

/* ═══════════════════════════════════════════════════════════════
   TRUST STRIP
═══════════════════════════════════════════════════════════════ */
.dhw-trust-strip {
  display:    flex !important;
  gap:        16px !important;
  flex-wrap:  wrap !important;
  padding:    16px 0 0 0 !important;
  border-top: 1px solid var(--dhw-p10) !important;
}

.dhw-ts-item {
  display:     flex !important;
  align-items: center !important;
  gap:         8px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size:   13px !important;
  font-weight: 500 !important;
  color:       var(--dhw-ch65) !important;
}

.dhw-ts-item svg {
  flex-shrink: 0 !important;
  color:       var(--dhw-primary) !important;
  width:       16px !important;
  height:      16px !important;
}

/* ═══════════════════════════════════════════════════════════════
   IMPORTANT NOTICE
═══════════════════════════════════════════════════════════════ */
.dhw-important-notice {
  display:       flex !important;
  gap:           10px !important;
  background:    #FDF8EE !important;
  border:        1px solid rgba(180, 130, 40, 0.25) !important;
  border-left:   3px solid #B48228 !important;
  padding:       14px 16px !important;
  margin-top:    16px !important;
  box-sizing:    border-box !important;
}

.dhw-important-notice svg {
  flex-shrink: 0 !important;
  margin-top:  1px !important;
  color:       #B48228 !important;
  opacity:     0.85 !important;
}

.dhw-notice-body {
  display:        flex !important;
  flex-direction: column !important;
  gap:            3px !important;
}

.dhw-notice-label {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      10px !important;
  font-weight:    700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color:          #B48228 !important;
}

.dhw-notice-text {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   13px !important;
  font-weight: 400 !important;
  color:       rgba(43,43,43,0.80) !important;
  line-height: 1.6 !important;
  margin:      0 !important;
}

/* ═══════════════════════════════════════════════════════════════
   LOWER SECTION
═══════════════════════════════════════════════════════════════ */
.dhw-lower-section {
  background: var(--dhw-white) !important;
  width:      100% !important;
}

.dhw-lower-section-inner {
  max-width:  1160px !important;
  margin:     0 auto !important;
  padding:    0 40px 60px !important;
  box-sizing: border-box !important;
}

.dhw-lower-section .dhw-acc,
.dhw-lower-section details {
  border-top: 1px solid var(--dhw-ch12) !important;
}

.dhw-lower-section .dhw-acc:first-child,
.dhw-lower-section details:first-child {
  border-top: none !important;
}

.dhw-lower-section .dhw-acc > summary,
.dhw-lower-section details > summary {
  display:         flex !important;
  align-items:     center !important;
  justify-content: space-between !important;
  padding:         22px 0 !important;
  cursor:          pointer !important;
  list-style:      none !important;
  font-family:     'Montserrat', sans-serif !important;
  font-size:       11px !important;
  font-weight:     600 !important;
  letter-spacing:  0.14em !important;
  text-transform:  uppercase !important;
  color:           var(--dhw-charcoal) !important;
  user-select:     none !important;
  background:      transparent !important;
}

.dhw-lower-section .dhw-acc > summary::-webkit-details-marker,
.dhw-lower-section details > summary::-webkit-details-marker {
  display: none !important;
}

.dhw-acc-overview > summary {
  pointer-events: none !important;
  cursor:         default !important;
}

.dhw-acc-overview > summary .dhw-chevron {
  display: none !important;
}

.dhw-acc-overview .dhw-acc-body {
  padding: 0 0 28px 0 !important;
}

.dhw-acc-overview .dhw-acc-body p,
.dhw-acc-overview .dhw-acc-body p * {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   14.5px !important;
  color:       var(--dhw-ch75) !important;
  line-height: 1.75 !important;
  margin:      0 !important;
}

.dhw-acc-body {
  padding: 0 0 24px 0 !important;
}

.dhw-check-list {
  list-style:     none !important;
  padding:        0 !important;
  margin:         0 !important;
  display:        flex !important;
  flex-direction: column !important;
  gap:            10px !important;
}

.dhw-check-list li {
  display:     flex !important;
  align-items: center !important;
  gap:         10px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size:   14px !important;
  font-weight: 400 !important;
  color:       var(--dhw-ch75) !important;
  line-height: 1.4 !important;
}

.dhw-check-list li .dhw-check-icon {
  flex-shrink: 0 !important;
  color:       var(--dhw-primary) !important;
}

.dhw-acc-body p {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   14px !important;
  color:       var(--dhw-ch75) !important;
  line-height: 1.75 !important;
  margin:      0 0 6px 0 !important;
}

.dhw-spec-line {
  display:     flex !important;
  align-items: center !important;
  flex-wrap:   wrap !important;
  padding:     0 0 24px 0 !important;
}

.dhw-spec-chip {
  display:     inline-flex !important;
  align-items: center !important;
  gap:         6px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size:   13.5px !important;
  font-weight: 400 !important;
  color:       var(--dhw-ch75) !important;
}

.dhw-spec-icon {
  flex-shrink: 0 !important;
  color:       var(--dhw-primary) !important;
  opacity:     0.7 !important;
}

.dhw-spec-chip + .dhw-spec-chip::before {
  content: ' · ' !important;
  color:   var(--dhw-ch12) !important;
  margin:  0 10px !important;
}

.dhw-chevron {
  width:       16px !important;
  height:      16px !important;
  flex-shrink: 0 !important;
  color:       var(--dhw-ch55) !important;
  transition:  transform 0.22s ease !important;
}

.dhw-acc[open] > summary .dhw-chevron,
details[open] > summary .dhw-chevron {
  transform: rotate(180deg) !important;
}

.dhw-lower-section .theme-prod-content-details {
  padding:     0 0 24px 0 !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size:   14.5px !important;
  color:       var(--dhw-ch75) !important;
  line-height: 1.75 !important;
}

.dhw-lower-section .theme-prod-content-details p,
.dhw-lower-section .theme-prod-content-details p *,
.dhw-lower-section .theme-prod-content-details span {
  font-family:      'Montserrat', sans-serif !important;
  font-size:        14.5px !important;
  font-style:       normal !important;
  color:            var(--dhw-ch75) !important;
  line-height:      1.75 !important;
  background-color: transparent !important;
}

/* ═══════════════════════════════════════════════════════════════
   INFORMATION PAGE — attachment link accordion
═══════════════════════════════════════════════════════════════ */

.dhw-info-link {
  display:         inline-flex !important;
  align-items:     center !important;
  gap:             7px !important;
  font-family:     'Montserrat', sans-serif !important;
  font-size:       12px !important;
  font-weight:     500 !important;
  letter-spacing:  0.06em !important;
  color:           var(--dhw-primary) !important;
  text-decoration: none !important;
  border-bottom:   1px solid var(--dhw-p25) !important;
  padding-bottom:  1px !important;
  transition:      border-color 0.22s, color 0.22s !important;
}

.dhw-info-link:hover {
  border-color: var(--dhw-primary) !important;
  background:   none !important;
}

.dhw-info-link svg {
  flex-shrink: 0 !important;
  color:       var(--dhw-primary) !important;
  opacity:     0.8 !important;
}

.dhw-info-page-link {
  padding-top: 14px !important;
}

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════════════════════ */
@media (max-width: 900px) {
  .theme-product-details-style-08 [data-zs-product-primary-details] {
    grid-template-columns: 1fr !important;
    gap:     32px !important;
    padding: 0 24px !important;
  }
  .theme-product-details-style-08 .theme-product-detail-image-container {
    position: static !important;
  }
  .dhw-lower-section-inner {
    padding: 0 24px 40px !important;
  }
  .theme-product-details-style-08 .theme-product-name h1 {
    font-size: 32px !important;
  }
  .theme-product-details-style-08 span[data-zs-selling-price] {
    font-size: 28px !important;
  }
}

@media (max-width: 600px) {
  .theme-product-details-style-08 .theme-product-quantity-cart-area {
    flex-wrap: wrap !important;
  }
  .theme-product-details-style-08 .theme-product-cart-buttons {
    width: 100% !important;
  }
  .theme-product-details-style-08 .theme-product-quantity-spinner {
    width: 100% !important;
  }
  .theme-product-details-style-08 input.theme-quantity-decrease,
  .theme-product-details-style-08 input.theme-quantity-increase {
    flex: 1 !important;
  }
}


/* ═══════════════════════════════════════════════════════════════
   DHW — Category Page
═══════════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400&family=Montserrat:wght@300;400;500;600&display=swap');

[data-zs-category-id] {
  --dhw-primary:  #2F4A3F;
  --dhw-p70:      rgba(47,74,63,0.70);
  --dhw-p20:      rgba(47,74,63,0.20);
  --dhw-p10:      rgba(47,74,63,0.10);
  --dhw-p5:       rgba(47,74,63,0.05);
  --dhw-cream:    #F4F3EF;
  --dhw-white:    #FFFFFF;
  --dhw-charcoal: #2B2B2B;
  --dhw-ch70:     rgba(43,43,43,0.70);
  --dhw-ch60:     rgba(43,43,43,0.60);
  --dhw-ch20:     rgba(43,43,43,0.20);
  --dhw-ch10:     rgba(43,43,43,0.10);
  font-family:            'Montserrat', sans-serif !important;
  -webkit-font-smoothing: antialiased !important;
  background:             var(--dhw-cream) !important;
}

/* ═══════════════════════════════════════════════════════════════
   HERO BANNER
═══════════════════════════════════════════════════════════════ */
[data-zs-category-id] .theme-section[data-category-style-06] {
  height:     auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow:   hidden !important;
}

[data-zs-category-id] .theme-category-image-desc-container {
  height:     auto !important;
  min-height: 0 !important;
  padding:    0 !important;
  max-width:  100% !important;
}

[data-zs-category-id] .theme-category-image-description-conatainer {
  height:              340px !important;
  min-height:          340px !important;
  max-height:          340px !important;
  padding:             0 !important;
  display:             flex !important;
  align-items:         center !important;
  justify-content:     center !important;
  background-size:     cover !important;
  background-position: center 30% !important;
  background-repeat:   no-repeat !important;
  position:            relative !important;
  overflow:            hidden !important;
}

[data-zs-category-id] .theme-category-image-description-conatainer::before {
  content:    '' !important;
  position:   absolute !important;
  inset:      0 !important;
  background: linear-gradient(
    to bottom,
    rgba(232,229,220,0.45) 0%,
    rgba(220,216,205,0.72) 40%,
    rgba(210,206,194,0.88) 100%
  ) !important;
  z-index:    0 !important;
}

[data-zs-category-id] .theme-category-name-description-no-imgage,
[data-zs-category-id] .theme-category-name-description {
  position:   relative !important;
  z-index:    1 !important;
  display:    block !important;
  width:      100% !important;
  padding:    0 40px !important;
  text-align: center !important;
}

[data-zs-category-id] .theme-breadcrumb-container {
  display: none !important;
}

[data-zs-category-id] .theme-product-breadcrumb,
[data-zs-category-id] .theme-product-breadcrumb * {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      11px !important;
  color:          rgba(255,255,255,0.60) !important;
  letter-spacing: 0.04em !important;
}

[data-zs-category-id] .theme-product-breadcrumb a:hover {
  color: rgba(255,255,255,0.90) !important;
}

[data-zs-category-id] h1.theme-category-name,
[data-zs-category-id] h1.theme-category-name-with-desc {
  font-family:    'Playfair Display', serif !important;
  font-size:      clamp(32px, 4.5vw, 52px) !important;
  font-weight:    400 !important;
  color:          #2F4A3F !important;
  line-height:    1.15 !important;
  letter-spacing: -0.01em !important;
  margin:         0 0 10px !important;
  text-align:     center !important;
  text-transform: none !important;
}

[data-zs-category-id] .theme-category-description {
  display:        block !important;
  font-family:    'Montserrat', sans-serif !important;
  font-size:      14px !important;
  font-weight:    300 !important;
  color:          rgba(47,74,63,0.90) !important;
  letter-spacing: 0.04em !important;
  line-height:    1.6 !important;
  text-align:     center !important;
  margin:         0 !important;
  padding:        0 !important;
}

/* ═══════════════════════════════════════════════════════════════
   MAIN LAYOUT
═══════════════════════════════════════════════════════════════ */
[data-zs-category-id] .theme-collection-section > .zpcontainer {
  align-items:    start !important;
  padding-top:    24px !important;
  padding-bottom: 48px !important;
  gap:            0 !important;
  max-width:      1160px !important;
  margin:         0 auto !important;
}

[data-zs-category-id] .theme-produt-filter-row[data-zs-filter-container] {
  width:         260px !important;
  min-width:     260px !important;
  max-width:     260px !important;
  flex-shrink:   0 !important;
  flex-grow:     0 !important;
  position:      sticky !important;
  top:           88px !important;
  padding-right: 24px !important;
  border-right:  1px solid var(--dhw-ch10) !important;
  align-self:    start !important;
  display:       block !important;
}

[data-zs-category-id] .zprow.theme-produt-category-list-row {
  flex:                1 1 0% !important;
  min-width:           0 !important;
  padding-left:        24px !important;
  display:             block !important;
  border-left:         none !important;
  border-inline-start: none !important;
}

/* ═══════════════════════════════════════════════════════════════
   ZOHO THEME LINE OVERRIDES
═══════════════════════════════════════════════════════════════ */
[data-zs-category-id] .theme-filters-header {
  border-bottom:    none !important;
  border-block-end: none !important;
}

[data-zs-category-id] .theme-filter-sortby-container {
  border-bottom:    none !important;
  border-block-end: none !important;
}

/* ═══════════════════════════════════════════════════════════════
   FILTER SIDEBAR
═══════════════════════════════════════════════════════════════ */
[data-zs-category-id] .theme-filters-header {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      13px !important;
  font-weight:    600 !important;
  letter-spacing: 0.08em !important;
  color:          var(--dhw-charcoal) !important;
  margin-bottom:  14px !important;
  display:        block !important;
}

[data-zs-category-id] .theme-product-filter-mobile-overlay { display: none !important; }
[data-zs-category-id] .theme-product-filter-icon-mobile    { display: none !important; }
[data-zs-category-id] .theme-mobile-filters {
  gap:            0 !important;
  flex-direction: column !important;
}

[data-zs-category-id] fieldset.theme-product-filter-box {
  border:  none !important;
  margin:  0 !important;
  padding: 0 !important;
}

[data-zs-category-id] legend.theme-product-filter-type {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      10px !important;
  font-weight:    600 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color:          var(--dhw-p70) !important;
  border-top:     1px solid var(--dhw-ch10) !important;
  border-bottom:  none !important;
  padding-top:    14px !important;
  padding-bottom: 0 !important;
  margin-bottom:  10px !important;
  display:        block !important;
  float:          none !important;
  width:          100% !important;
}

[data-zs-category-id] fieldset.theme-product-filter-box:first-child legend.theme-product-filter-type {
  border-top:  none !important;
  padding-top: 0 !important;
}

[data-zs-category-id] .theme-filter-expand-icon,
[data-zs-category-id] .theme-filter-close-icon { display: none !important; }

[data-zs-category-id] a.theme-product-clear-filter {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   11px !important;
  color:       var(--dhw-p70) !important;
}

[data-zs-category-id] [data-zs-filter-option-values-wrapper] {
  padding:        0 !important;
  gap:            6px !important;
  display:        flex !important;
  flex-direction: column !important;
}

[data-zs-category-id] button[data-zs-filter-option-category] {
  display:         flex !important;
  align-items:     center !important;
  justify-content: space-between !important;
  width:           100% !important;
  background:      none !important;
  border:          none !important;
  padding:         6px 0 !important;
  font-family:     'Montserrat', sans-serif !important;
  font-size:       13px !important;
  font-weight:     400 !important;
  color:           var(--dhw-ch70) !important;
  cursor:          pointer !important;
  text-align:      left !important;
  letter-spacing:  0.02em !important;
  transition:      color 0.2s !important;
  box-shadow:      none !important;
}

[data-zs-category-id] button[data-zs-filter-option-category]:hover { color: var(--dhw-primary) !important; }

[data-zs-category-id] button[data-zs-filter-option-category] span.theme-parent-category {
  color:       var(--dhw-primary) !important;
  font-weight: 600 !important;
}

[data-zs-category-id] .theme-product-filter-count {
  font-size: 11px !important;
  color:     var(--dhw-ch60) !important;
}

[data-zs-category-id] .theme-product-filter-option-container[data-zs-filter-option-value-container] {
  display:        flex !important;
  flex-direction: row !important;
  align-items:    center !important;
  gap:            10px !important;
  padding:        5px 0 !important;
  cursor:         pointer !important;
}

[data-zs-category-id] .theme-product-filter-select-option {
  display:     flex !important;
  align-items: center !important;
  flex:        0 0 auto !important;
  padding:     0 !important;
  margin:      0 !important;
  width:       auto !important;
}

[data-zs-category-id] input.theme-product-filter-check {
  position:       absolute !important;
  opacity:        0 !important;
  width:          0 !important;
  height:         0 !important;
  pointer-events: none !important;
}

[data-zs-category-id] span.theme-product-filter-custom-check {
  flex:            0 0 15px !important;
  width:           15px !important;
  height:          15px !important;
  min-width:       15px !important;
  border:          1.5px solid var(--dhw-p20) !important;
  border-radius:   0 !important;
  background:      var(--dhw-white) !important;
  display:         inline-flex !important;
  align-items:     center !important;
  justify-content: center !important;
  cursor:          pointer !important;
  position:        relative !important;
  transition:      border-color 0.2s, background 0.2s !important;
}

[data-zs-category-id] span.theme-product-filter-custom-check[aria-checked="true"] {
  background:   var(--dhw-primary) !important;
  border-color: var(--dhw-primary) !important;
}

[data-zs-category-id] span.theme-product-filter-custom-check[aria-checked="true"]::after {
  content:     '' !important;
  position:    absolute !important;
  top:         1px !important;
  left:        4px !important;
  width:       5px !important;
  height:      8px !important;
  border:      1.5px solid var(--dhw-white) !important;
  border-top:  none !important;
  border-left: none !important;
  transform:   rotate(45deg) !important;
}

[data-zs-category-id] label.theme-product-filter-text {
  flex:        1 !important;
  min-width:   0 !important;
  margin:      0 !important;
  padding:     0 !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size:   13px !important;
  line-height: 1.3 !important;
  color:       var(--dhw-ch70) !important;
  cursor:      pointer !important;
  transition:  color 0.2s !important;
}

[data-zs-category-id] .theme-product-filter-option-container[data-zs-filter-option-value-container]:hover label.theme-product-filter-text {
  color: var(--dhw-primary) !important;
}

[data-zs-category-id] .theme-product-filter-selected-container { display: none !important; }

[data-zs-category-id] a.theme-product-filter-show-more,
[data-zs-category-id] a[data-zs-filter-option-showless-btn],
[data-zs-category-id] a[data-zs-filter-option-showmore-btn] {
  font-family:     'Montserrat', sans-serif !important;
  font-size:       11px !important;
  font-weight:     500 !important;
  color:           var(--dhw-p70) !important;
  letter-spacing:  0.06em !important;
  text-decoration: none !important;
  display:         inline-flex !important;
  align-items:     center !important;
  gap:             4px !important;
  margin-top:      6px !important;
  cursor:          pointer !important;
  transition:      color 0.2s !important;
}

[data-zs-category-id] a.theme-product-filter-show-more:hover { color: var(--dhw-primary) !important; }

/* ═══════════════════════════════════════════════════════════════
   SORT BAR
═══════════════════════════════════════════════════════════════ */
[data-zs-category-id] .theme-filter-sortby-container {
  display:         flex !important;
  align-items:     center !important;
  justify-content: flex-end !important;
  padding:         0 0 20px !important;
  margin-bottom:   24px !important;
  border-bottom:   1px solid var(--dhw-ch10) !important;
  background:      none !important;
  width:           100% !important;
}

[data-zs-category-id] .theme-product-filter-icon-mobile-container {
  display: block !important;
  width:   100% !important;
}

[data-zs-category-id] .theme-collection-sortby-section {
  display:         flex !important;
  align-items:     center !important;
  justify-content: flex-end !important;
  width:           100% !important;
}

[data-zs-category-id] .theme-collection-sort-inner:not(.theme-custom-sort) { display: none !important; }

[data-zs-category-id] .theme-collection-sort-inner.theme-custom-sort {
  display:     flex !important;
  align-items: center !important;
  gap:         6px !important;
}

[data-zs-category-id] .theme-collection-sort .theme-custom-sort { border: none !important; }

[data-zs-category-id] .theme-sortby-label {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      12px !important;
  font-weight:    400 !important;
  color:          var(--dhw-ch60) !important;
  letter-spacing: 0.02em !important;
}

[data-zs-category-id] .theme-sort-colon {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   12px !important;
  color:       var(--dhw-ch60) !important;
}

[data-zs-category-id] .theme-sort-select-container { position: relative !important; }

[data-zs-category-id] .theme-custom-select-value {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      12px !important;
  font-weight:    500 !important;
  color:          var(--dhw-charcoal) !important;
  background:     var(--dhw-white) !important;
  border:         1.5px solid var(--dhw-ch20) !important;
  padding:        8px 32px 8px 14px !important;
  cursor:         pointer !important;
  min-width:      160px !important;
  display:        flex !important;
  align-items:    center !important;
  transition:     border-color 0.2s, color 0.2s !important;
}

[data-zs-category-id] .theme-custom-select-value:hover {
  border-color: var(--dhw-primary) !important;
  color:        var(--dhw-primary) !important;
}

[data-zs-category-id] .theme-custom-select-option-container {
  position:   absolute !important;
  top:        calc(100% + 4px) !important;
  left:       0 !important;
  right:      0 !important;
  background: var(--dhw-white) !important;
  border:     1.5px solid var(--dhw-ch20) !important;
  z-index:    999 !important;
  min-width:  160px !important;
  box-shadow: 0 8px 24px rgba(43,43,43,0.08) !important;
}

[data-zs-category-id] .theme-custom-select-option {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      12px !important;
  color:          var(--dhw-ch70) !important;
  padding:        10px 14px !important;
  cursor:         pointer !important;
  letter-spacing: 0.02em !important;
  transition:     background 0.15s, color 0.15s !important;
}

[data-zs-category-id] .theme-custom-select-option:hover {
  background: var(--dhw-p5) !important;
  color:      var(--dhw-primary) !important;
}

[data-zs-category-id] .theme-custom-select-option[aria-selected="true"] {
  color:       var(--dhw-primary) !important;
  font-weight: 600 !important;
}

/* ═══════════════════════════════════════════════════════════════
   PRODUCT GRID
═══════════════════════════════════════════════════════════════ */
[data-zs-category-id] .zprow.theme-product-collection-container[data-sort-by-products-target] {
  display:               grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap:                   16px !important;
  width:                 100% !important;
  flex-wrap:             unset !important;
}

/* ═══════════════════════════════════════════════════════════════
   PRODUCT CARD
═══════════════════════════════════════════════════════════════ */
[data-zs-category-id] .theme-prod-box {
  background:     var(--dhw-white) !important;
  border:         1px solid var(--dhw-p10) !important;
  overflow:       hidden !important;
  display:        flex !important;
  flex-direction: column !important;
  width:          100% !important;
  max-width:      100% !important;
  flex:           unset !important;
  padding:        0 !important;
  margin-bottom:  0 !important;
  transition:     transform 0.3s, box-shadow 0.3s !important;
}

[data-zs-category-id] .theme-prod-box:hover {
  transform:  translateY(-3px) !important;
  box-shadow: 0 16px 48px rgba(47,74,63,0.10) !important;
}

[data-zs-category-id] .theme-product-box-content {
  display:        flex !important;
  flex-direction: column !important;
  flex:           1 !important;
}

[data-zs-category-id] .theme-product-image-area[data-zs-image-container] {
  display:      block !important;
  aspect-ratio: 1 / 1 !important;
  width:        100% !important;
  height:       auto !important;
  min-height:   unset !important;
  max-height:   unset !important;
  position:     relative !important;
  overflow:     hidden !important;
  background:   #EDEBE5 !important;
  padding:      0 !important;
  margin:       0 !important;
  flex-shrink:  0 !important;
}

[data-zs-category-id] .theme-product-ratio .theme-product-image-area {
  aspect-ratio: 1 / 1 !important;
  height:       auto !important;
}

[data-zs-category-id] .theme-product-image-area[data-zs-image-container] a {
  display:     block !important;
  position:    absolute !important;
  inset:       0 !important;
  width:       100% !important;
  height:      100% !important;
  padding:     0 !important;
  margin:      0 !important;
  line-height: 0 !important;
}

[data-zs-category-id] .theme-product-image-area[data-zs-image-container] picture {
  display: block !important;
  width:   100% !important;
  height:  100% !important;
  padding: 0 !important;
  margin:  0 !important;
}

[data-zs-category-id] .theme-product-image-area[data-zs-image-container] img {
  display:         block !important;
  width:           100% !important;
  height:          100% !important;
  object-fit:      cover !important;
  object-position: center center !important;
  padding:         0 !important;
  margin:          0 !important;
  transition:      transform 0.4s ease !important;
}

[data-zs-category-id] .theme-prod-box:hover .theme-product-image-area[data-zs-image-container] img {
  transform: scale(1.05) !important;
}

[data-zs-category-id] .theme-cta-wishlist-wrapper  { display: none !important; }
[data-zs-category-id] .theme-wishlist-icon          { display: none !important; }
[data-zs-category-id] .theme-product-ribbon-area    { display: none !important; }
[data-zs-category-id] .theme-prod-pricelist-outter  { display: none !important; }

[data-zs-category-id] .theme-product-details-area {
  padding:        12px 14px 16px !important;
  background:     var(--dhw-white) !important;
  display:        flex !important;
  flex-direction: column !important;
  flex:           1 !important;
}

[data-zs-category-id] .theme-product-name-rating-price {
  display:        flex !important;
  flex-direction: column !important;
  gap:            0 !important;
}

[data-zs-category-id] div.theme-product-name[data-zs-product-name] {
  font-family:    'Playfair Display', serif !important;
  font-size:      17px !important;
  font-weight:    500 !important;
  color:          var(--dhw-primary) !important;
  line-height:    1.3 !important;
  letter-spacing: 0.01em !important;
  margin-bottom:  6px !important;
  text-transform: none !important;
}

[data-zs-category-id] div.theme-product-short-description[data-zs-product-short-description] {
  display: none !important;
}

[data-zs-category-id] .theme-product-price-variants { display: block !important; }

[data-zs-category-id] span[data-zs-selling-price],
[data-zs-category-id] .theme-product-price {
  font-family:    'Playfair Display', serif !important;
  font-size:      22px !important;
  font-weight:    400 !important;
  color:          var(--dhw-primary) !important;
  letter-spacing: 0.01em !important;
  display:        block !important;
  margin-bottom:  14px !important;
}

/* ═══════════════════════════════════════════════════════════════
   INJECTED ACTION ROW
═══════════════════════════════════════════════════════════════ */
.dhw-card-actions {
  display:     flex !important;
  align-items: stretch !important;
  gap:         8px !important;
  margin-top:  auto !important;
  width:       100% !important;
}

.dhw-cat-atc-btn {
  flex:            1 !important;
  height:          42px !important;
  background:      #2F4A3F !important;
  color:           #FFFFFF !important;
  border:          1.5px solid #2F4A3F !important;
  border-radius:   0 !important;
  font-family:     'Montserrat', sans-serif !important;
  font-size:       11px !important;
  font-weight:     600 !important;
  letter-spacing:  0.13em !important;
  text-transform:  uppercase !important;
  cursor:          pointer !important;
  display:         flex !important;
  align-items:     center !important;
  justify-content: center !important;
  gap:             7px !important;
  padding:         0 14px !important;
  white-space:     nowrap !important;
  transition:      background 0.25s, color 0.25s !important;
}

.dhw-cat-atc-btn:hover:not(:disabled) {
  background: transparent !important;
  color:      #2F4A3F !important;
}

.dhw-cat-atc-btn:disabled {
  opacity: 0.65 !important;
  cursor:  not-allowed !important;
}

.dhw-cat-atc-btn--success {
  background:   #3a7a5a !important;
  border-color: #3a7a5a !important;
  color:        #FFFFFF !important;
}

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════════════════════ */
@media (max-width: 960px) {
  [data-zs-category-id] .zprow.theme-product-collection-container[data-sort-by-products-target] {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  [data-zs-category-id] .theme-category-image-description-conatainer {
    height:     280px !important;
    min-height: 280px !important;
    max-height: 280px !important;
  }
  [data-zs-category-id] .theme-category-name-description-no-imgage,
  [data-zs-category-id] .theme-category-name-description {
    padding: 0 24px !important;
  }
}

@media (max-width: 700px) {
  [data-zs-category-id] .theme-collection-section > .zpcontainer {
    flex-direction: column !important;
  }
  [data-zs-category-id] .theme-produt-filter-row[data-zs-filter-container] {
    width:          100% !important;
    max-width:      100% !important;
    min-width:      0 !important;
    position:       static !important;
    border-right:   none !important;
    border-bottom:  1px solid var(--dhw-ch10) !important;
    padding-right:  0 !important;
    padding-bottom: 24px !important;
    margin-bottom:  24px !important;
  }
  [data-zs-category-id] .zprow.theme-produt-category-list-row {
    padding-left: 0 !important;
  }
  [data-zs-category-id] .zprow.theme-product-collection-container[data-sort-by-products-target] {
    grid-template-columns: repeat(2, 1fr) !important;
    gap:                   16px !important;
  }
  [data-zs-category-id] .theme-category-image-description-conatainer {
    height:     240px !important;
    min-height: 240px !important;
    max-height: 240px !important;
  }
  [data-zs-category-id] .theme-category-name-description-no-imgage,
  [data-zs-category-id] .theme-category-name-description {
    padding: 0 20px !important;
  }
}

@media (max-width: 480px) {
  [data-zs-category-id] .zprow.theme-product-collection-container[data-sort-by-products-target] {
    grid-template-columns: 1fr !important;
  }
}


/* ═══════════════════════════════════════════════════════════════
   DHW — Cart Page
═══════════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400&family=Montserrat:wght@300;400;500;600&display=swap');

.theme-cart-area-container,
.dhw-cart-title-block,
.theme-cart-summary-inner-container {
  --dhw-primary:  #2F4A3F;
  --dhw-cream:    #F4F3EF;
  --dhw-cream-dk: #ECEAE4;
  --dhw-white:    #FFFFFF;
  --dhw-charcoal: #2B2B2B;
  --dhw-muted:    rgba(43,43,43,0.58);
  --dhw-faint:    rgba(43,43,43,0.35);
  --dhw-border:   #DDDBD5;
  --dhw-rust:     #C4622D;
}

.theme-navigation-and-icons .theme-search-and-mini-cart-group .theme-mini-cart .theme-minicart-icon .theme-mini-cart-count {
  background:	#2F4A3F !important;
}

.theme-content-area-inner {
  background:             #F4F3EF !important;
  font-family:            'Montserrat', 'Helvetica Neue', sans-serif !important;
  color:                  #2B2B2B !important;
  -webkit-font-smoothing: antialiased !important;
}

.dhw-cart-title-block {
  margin-top:    40px !important;
  margin-bottom: 20px !important;
}

.dhw-cart-title-block h1 {
  font-family:    'Playfair Display', Georgia, serif !important;
  font-size:      38px !important;
  font-weight:    400 !important;
  color:          var(--dhw-primary) !important;
  margin:         0 0 4px !important;
  letter-spacing: -0.02em !important;
  line-height:    1.2 !important;
}

.dhw-cart-title-block .dhw-item-count {
  font-family:    'Montserrat', 'Helvetica Neue', sans-serif !important;
  font-size:      12px !important;
  font-weight:    400 !important;
  color:          var(--dhw-muted) !important;
  letter-spacing: 0.04em !important;
}

.theme-cart-area-container.theme-cart-body {
  display:               grid !important;
  grid-template-columns: 1fr 340px !important;
  gap:                   36px !important;
  align-items:           start !important;
  background:            transparent !important;
}

.theme-cart-area-container .theme-cart-details-container {
  background: var(--dhw-white) !important;
  border:     1px solid var(--dhw-border) !important;
  box-shadow: none !important;
  padding:    0 !important;
  overflow:   hidden !important;
}

.theme-cart-area-container .theme-cart-head {
  display:               grid !important;
  grid-template-columns: 1fr 160px 110px !important;
  align-items:           center !important;
  padding:               13px 28px !important;
  background:            var(--dhw-cream) !important;
  border-bottom:         1px solid var(--dhw-border) !important;
}

.theme-cart-area-container .theme-cart-head .theme-cart-table-data {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      10px !important;
  font-weight:    600 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color:          var(--dhw-muted) !important;
}

.theme-cart-area-container .theme-cart-head .theme-cart-table-data:nth-child(2) { text-align: center !important; }
.theme-cart-area-container .theme-cart-head .theme-cart-table-data:nth-child(3) { text-align: right !important; }

.theme-cart-area-container .theme-cart-table-row:not(.theme-cart-head):not(.theme-checkout-button-area) {
  display:               grid !important;
  grid-template-columns: 1fr 160px 110px !important;
  align-items:           center !important;
  padding:               22px 28px !important;
  border-bottom:         1px solid var(--dhw-border) !important;
  background:            transparent !important;
}

.theme-cart-area-container .theme-cart-table-row:not(.theme-cart-head):not(.theme-checkout-button-area):last-of-type {
  border-bottom: none !important;
}

.theme-cart-area-container .theme-cart-item {
  display:     flex !important;
  align-items: flex-start !important;
  gap:         18px !important;
}

.theme-cart-area-container .theme-cart-item-img img {
  width:      80px !important;
  height:     100% !important;
  min-width:  80px !important;
  object-fit: cover !important;
  border:     1px solid var(--dhw-border) !important;
  background: var(--dhw-cream-dk) !important;
  display:    block !important;
}

.theme-cart-area-container .theme-cart-item-info {
  padding-left:   0 !important;
  display:        flex !important;
  flex-direction: column !important;
}

.theme-cart-area-container .theme-cart-item-info div a {
  font-family:     'Montserrat', sans-serif !important;
  font-size:       11.5px !important;
  font-weight:     600 !important;
  letter-spacing:  0.10em !important;
  text-transform:  uppercase !important;
  color:           var(--dhw-charcoal) !important;
  text-decoration: none !important;
  display:         block !important;
  margin-bottom:   4px !important;
  line-height:     1.4 !important;
}

.theme-cart-area-container .theme-cart-item-info div a:hover { color: var(--dhw-primary) !important; }

.theme-cart-area-container .theme-cart-item-info ul {
  list-style: none !important;
  padding:    0 !important;
  margin:     0 0 10px !important;
}

.theme-cart-area-container .theme-cart-item-info ul li {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   12px !important;
  font-weight: 300 !important;
  color:       var(--dhw-muted) !important;
  line-height: 1.6 !important;
}

.theme-cart-area-container .theme-cart-item-remove {
  display:     flex !important;
  align-items: center !important;
}

.theme-cart-area-container .theme-cart-remove-icon-button { display: none !important; }
.theme-cart-area-container [data-zs-save-for-later]       { display: none !important; }

.theme-cart-area-container [data-zs-delete] button.theme-cart-remove-button {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      10px !important;
  font-weight:    500 !important;
  letter-spacing: 0.09em !important;
  text-transform: uppercase !important;
  color:          var(--dhw-faint) !important;
  background:     none !important;
  border:         none !important;
  padding:        0 !important;
  cursor:         pointer !important;
  text-align:     left !important;
  transition:     color .2s !important;
}

.theme-cart-area-container [data-zs-delete] button.theme-cart-remove-button:hover {
  color: var(--dhw-rust) !important;
}

.theme-cart-area-container .theme-product-list-quantity {
  display:         flex !important;
  align-items:     center !important;
  justify-content: center !important;
  width:           fit-content !important;
  margin:          0 auto !important;
  border:          1px solid var(--dhw-border) !important;
  overflow:        hidden !important;
  background:      transparent !important;
}

.theme-cart-area-container .theme-product-list-quantity-decrease,
.theme-cart-area-container .theme-product-list-quantity-increase {
  position:        relative !important;
  overflow:        hidden !important;
  width:           32px !important;
  height:          32px !important;
  background:      none !important;
  border:          none !important;
  cursor:          pointer !important;
  color:           var(--dhw-muted) !important;
  font-size:       16px !important;
  font-weight:     300 !important;
  display:         flex !important;
  align-items:     center !important;
  justify-content: center !important;
  line-height:     1 !important;
  transition:      background .18s, color .18s !important;
  flex-shrink:     0 !important;
}

.theme-cart-area-container .theme-product-list-quantity-decrease:hover,
.theme-cart-area-container .theme-product-list-quantity-increase:hover {
  background: rgba(47,74,63,0.06) !important;
  color:      var(--dhw-primary) !important;
}

.theme-cart-area-container .theme-product-list-quantity-decrease svg,
.theme-cart-area-container .theme-product-list-quantity-increase svg {
  position:       relative !important;
  z-index:        2 !important;
  display:        block !important;
  pointer-events: none !important;
}

.theme-cart-area-container input.theme-cart-qty-inc-dec {
  position:           absolute !important;
  inset:              0 !important;
  width:              100% !important;
  height:             100% !important;
  opacity:            0 !important;
  z-index:            1 !important;
  cursor:             pointer !important;
  margin:             0 !important;
  padding:            0 !important;
  border:             none !important;
  background:         transparent !important;
  -webkit-appearance: none !important;
  -moz-appearance:    none !important;
  appearance:         none !important;
}

.theme-cart-area-container input[data-zs-quantity] {
  width:        36px !important;
  height:       32px !important;
  border:       none !important;
  border-left:  1px solid var(--dhw-border) !important;
  border-right: 1px solid var(--dhw-border) !important;
  text-align:   center !important;
  font-family:  'Montserrat', sans-serif !important;
  font-size:    13px !important;
  font-weight:  500 !important;
  color:        var(--dhw-charcoal) !important;
  background:   none !important;
  outline:      none !important;
  -moz-appearance: textfield !important;
}

.theme-cart-area-container input[data-zs-quantity]::-webkit-outer-spin-button,
.theme-cart-area-container input[data-zs-quantity]::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
}

.theme-cart-area-container .theme-cart-table-row .theme-cart-price-label {
  font-family:     'Montserrat', sans-serif !important;
  font-size:       14px !important;
  font-weight:     500 !important;
  color:           var(--dhw-charcoal) !important;
  text-align:      right !important;
  justify-content: flex-end !important;
  display:         flex !important;
  align-items:     center !important;
}

.theme-cart-area-container .theme-checkout-button-area        { display: none !important; }
.theme-cart-area-container [data-zs-coupon-section],
.theme-cart-area-container .theme-cart-details-coupon-wrap    { display: none !important; }

.theme-cart-summary-container { padding-left: 0 !important; }

.theme-cart-summary-inner-container {
  background: var(--dhw-white) !important;
  border:     1px solid var(--dhw-border) !important;
  padding:    0 !important;
  box-shadow: none !important;
  position:   sticky !important;
  top:        80px !important;
}

.dhw-summary-head {
  padding:       22px 24px 18px !important;
  border-bottom: 1px solid #DDDBD5 !important;
}

.dhw-summary-head h2 {
  font-family:    'Playfair Display', Georgia, serif !important;
  font-size:      24px !important;
  font-weight:    400 !important;
  color:          #2F4A3F !important;
  margin:         0 !important;
  letter-spacing: -0.01em !important;
}

.theme-cart-summary-inner-container .theme-cart-summary-details {
  padding: 20px 24px 8px !important;
}

.theme-cart-summary-inner-container .theme-cart-details-summary-list-item {
  display:         flex !important;
  justify-content: space-between !important;
  align-items:     baseline !important;
  padding:         8px 0 !important;
  margin:          0 !important;
  font-family:     'Montserrat', sans-serif !important;
  font-size:       13px !important;
  font-weight:     400 !important;
  color:           #2B2B2B !important;
  border-bottom:   none !important;
}

.theme-cart-summary-inner-container .theme-cart-details-summary-list-item span:last-child {
  font-style: italic !important;
  color:      rgba(43,43,43,0.58) !important;
  font-size:  12px !important;
}

.theme-cart-summary-inner-container .theme-scart-details-summary-main {
  display:         flex !important;
  justify-content: space-between !important;
  align-items:     baseline !important;
  padding:         12px 0 4px !important;
  margin-top:      8px !important;
  border-top:      1px solid #DDDBD5 !important;
  font-family:     'Montserrat', sans-serif !important;
  font-size:       10px !important;
  font-weight:     600 !important;
  letter-spacing:  0.12em !important;
  text-transform:  uppercase !important;
  color:           #2B2B2B !important;
}

.theme-cart-summary-inner-container .theme-scart-details-summary-main span:last-child {
  font-family:    'Playfair Display', Georgia, serif !important;
  font-size:      30px !important;
  font-weight:    400 !important;
  color:          #2F4A3F !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.dhw-shipping-note {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   13px !important;
  font-weight: 400 !important;
  color:       rgba(43,43,43,0.58) !important;
  margin:      5px 0 18px !important;
  line-height: 1.5 !important;
}

.dhw-hide { display: none !important; }

.dhw-checkout-btn-wrap { padding: 0 24px 12px !important; }

.dhw-checkout-btn {
  display:        block !important;
  width:          100% !important;
  background:     #2F4A3F !important;
  color:          #fff !important;
  font-family:    'Montserrat', sans-serif !important;
  font-size:      10.5px !important;
  font-weight:    600 !important;
  letter-spacing: 0.20em !important;
  text-transform: uppercase !important;
  padding:        15px 24px !important;
  border:         1.5px solid #2F4A3F !important;
  cursor:         pointer !important;
  text-align:     center !important;
  transition:     background .22s, color .22s !important;
  box-shadow:     none !important;
}

.dhw-checkout-btn:hover {
  background: transparent !important;
  color:      #2F4A3F !important;
}

.dhw-continue-wrap {
  padding:    4px 24px 16px !important;
  text-align: center !important;
}

.dhw-continue-btn {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      10px !important;
  font-weight:    500 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color:          rgba(43,43,43,0.58) !important;
  background:     none !important;
  border:         none !important;
  cursor:         pointer !important;
  padding:        6px 0 !important;
  transition:     color .18s !important;
}

.dhw-continue-btn:hover { color: #2F4A3F !important; }

.dhw-secure-badge {
  display:         flex !important;
  align-items:     center !important;
  justify-content: center !important;
  gap:             6px !important;
  padding:         12px 24px 20px !important;
  font-family:     'Montserrat', sans-serif !important;
  font-size:       11px !important;
  font-weight:     400 !important;
  color:           rgba(43,43,43,0.58) !important;
  letter-spacing:  0.04em !important;
}

.dhw-secure-badge svg {
  width:      12px !important;
  height:     12px !important;
  stroke:     rgba(43,43,43,0.58) !important;
  fill:       none !important;
  flex-shrink: 0 !important;
}

/* ═══════════════════════════════════════════════════════════════
   DHW — Cart Messages
═══════════════════════════════════════════════════════════════ */

/* ── SHARED CONTAINER ─────────────────────────────────────── */
.theme-cart-success-inner-container {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   13px !important;
  color:       var(--dhw-charcoal) !important;
}

/* ── ADD TO CART — SUCCESS TOAST ──────────────────────────── */
.theme-cart-add-success-message {
  background:    var(--dhw-white) !important;
  border:        1px solid var(--dhw-border) !important;
  border-left:   3px solid var(--dhw-primary) !important;
  border-radius: 0 !important;
  box-shadow:    0 4px 24px rgba(43,43,43,0.10) !important;
}

/* Close button */
.theme-cart-message-close {
  background: transparent !important;
  border:     none !important;
  cursor:     pointer !important;
  padding:    0 !important;
  line-height: 1 !important;
}

.theme-cart-message-close svg rect {
  fill: var(--dhw-charcoal) !important;
}

/* Product name inside success toast */
.theme-cart-message-prod-name {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      11px !important;
  font-weight:    600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color:          var(--dhw-charcoal) !important;
}

/* "Added to cart" text + icon row */
.theme-cart-message-text {
  display:     flex !important;
  align-items: center !important;
  gap:         8px !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size:   12.5px !important;
  font-weight: 400 !important;
  color:       var(--dhw-charcoal) !important;
}

.theme-added-to-cart-msg,
.theme-added-to-quote-msg {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      12px !important;
  font-weight:    500 !important;
  letter-spacing: 0.04em !important;
  color:          var(--dhw-charcoal) !important;
}

/* View Cart button inside toast */
.theme-cart-message-buttons a.zpbutton {
  display:         inline-flex !important;
  align-items:     center !important;
  justify-content: center !important;
  height:          36px !important;
  padding:         0 20px !important;
  background:      var(--dhw-primary) !important;
  color:           var(--dhw-white) !important;
  border:          1.5px solid var(--dhw-primary) !important;
  border-radius:   0 !important;
  font-family:     'Montserrat', sans-serif !important;
  font-size:       10px !important;
  font-weight:     600 !important;
  letter-spacing:  0.14em !important;
  text-transform:  uppercase !important;
  text-decoration: none !important;
  box-shadow:      none !important;
  transition:      background 0.2s, color 0.2s !important;
}

.theme-cart-message-buttons a.zpbutton:hover {
  background: transparent !important;
  color:      var(--dhw-primary) !important;
}

/* ── ADD TO CART — FAILURE ────────────────────────────────── */
.theme-cart-add-failure-message {
  background:  var(--dhw-white) !important;
  border:      1px solid var(--dhw-border) !important;
  border-left: 3px solid #C0392B !important;
  border-radius: 0 !important;
  box-shadow:  0 4px 24px rgba(43,43,43,0.10) !important;
}

.theme-cart-message-failure {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   12.5px !important;
  font-weight: 400 !important;
  color:       var(--dhw-charcoal) !important;
  gap:         10px !important;
}

.theme-failure-reason {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   12.5px !important;
  color:       var(--dhw-charcoal) !important;
  line-height: 1.6 !important;
}

.theme-cart-add-failure-message button {
  background: transparent !important;
  border:     none !important;
  cursor:     pointer !important;
  padding:    0 !important;
  flex-shrink: 0 !important;
}

/* ── QUANTITY UPDATE — SUCCESS ────────────────────────────── */
.theme-cart-update-success-message {
  background:    var(--dhw-white) !important;
  border:        1px solid var(--dhw-border) !important;
  border-left:   3px solid var(--dhw-primary) !important;
  border-radius: 0 !important;
  box-shadow:    0 4px 24px rgba(43,43,43,0.10) !important;
}

.theme-cart-message-success {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   12.5px !important;
  font-weight: 400 !important;
  color:       var(--dhw-charcoal) !important;
  gap:         10px !important;
}

/* ── QUANTITY UPDATE — FAILURE ────────────────────────────── */
.theme-cart-update-failure-message {
  background:    var(--dhw-white) !important;
  border:        1px solid var(--dhw-border) !important;
  border-left:   3px solid #C0392B !important;
  border-radius: 0 !important;
  box-shadow:    0 4px 24px rgba(43,43,43,0.10) !important;
}

/* ── DELETE — SUCCESS ─────────────────────────────────────── */
.theme-cart-delete-success-message {
  background:    var(--dhw-white) !important;
  border:        1px solid var(--dhw-border) !important;
  border-left:   3px solid var(--dhw-primary) !important;
  border-radius: 0 !important;
  box-shadow:    0 4px 24px rgba(43,43,43,0.10) !important;
}

/* ── DELETE — FAILURE ─────────────────────────────────────── */
.theme-cart-delete-failure-message {
  background:    var(--dhw-white) !important;
  border:        1px solid var(--dhw-border) !important;
  border-left:   3px solid #C0392B !important;
  border-radius: 0 !important;
  box-shadow:    0 4px 24px rgba(43,43,43,0.10) !important;
}

/* ── WISHLIST ALERT ───────────────────────────────────────── */
.theme-wishlist-alert-update,
.theme-wishlist-success-message {
  background:    var(--dhw-white) !important;
  border:        1px solid var(--dhw-border) !important;
  border-left:   3px solid var(--dhw-primary) !important;
  border-radius: 0 !important;
  box-shadow:    0 4px 24px rgba(43,43,43,0.10) !important;
  font-family:   'Montserrat', sans-serif !important;
  font-size:     12.5px !important;
  color:         var(--dhw-charcoal) !important;
}

/* ── SAVE FOR LATER ALERT ─────────────────────────────────── */
.theme-save-for-later-success-message {
  background:    var(--dhw-white) !important;
  border:        1px solid var(--dhw-border) !important;
  border-left:   3px solid var(--dhw-primary) !important;
  border-radius: 0 !important;
  box-shadow:    0 4px 24px rgba(43,43,43,0.10) !important;
  font-family:   'Montserrat', sans-serif !important;
  font-size:     12.5px !important;
  color:         var(--dhw-charcoal) !important;
}

/* ── BUY AGAIN MESSAGES ───────────────────────────────────── */
.buyagain-cart-message {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      12.5px !important;
  font-weight:    400 !important;
  border-radius:  0 !important;
  box-shadow:     0 4px 24px rgba(43,43,43,0.10) !important;
}

.buyagain-cart-success-message {
  background:  var(--dhw-white) !important;
  border:      1px solid var(--dhw-border) !important;
  border-left: 3px solid var(--dhw-primary) !important;
  color:       var(--dhw-charcoal) !important;
}

.buyagain-cart-failure-message {
  background:  var(--dhw-white) !important;
  border:      1px solid var(--dhw-border) !important;
  border-left: 3px solid #C0392B !important;
  color:       var(--dhw-charcoal) !important;
}

/* ── DYNAMIC ALERT TEXT (wishlist / save-for-later) ───────── */
[data-zs-message-text] {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      12.5px !important;
  font-weight:    400 !important;
  letter-spacing: 0.02em !important;
  color:          var(--dhw-charcoal) !important;
}

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════════════════════ */
@media (max-width: 860px) {
  .theme-cart-area-container.theme-cart-body {
    grid-template-columns: 1fr !important;
    gap:                   24px !important;
  }
  .theme-cart-summary-inner-container { position: static !important; }
  .theme-cart-area-container .theme-cart-head { display: none !important; }
  .theme-cart-area-container .theme-cart-table-row:not(.theme-cart-head):not(.theme-checkout-button-area) {
    grid-template-columns: 1fr !important;
    gap:     14px !important;
    padding: 20px !important;
  }
}


/* ═══════════════════════════════════════════════════════════════
   DHW — Checkout Rebrand (production)
═══════════════════════════════════════════════════════════════ */

:root {
  --dhw-primary:  #2F4A3F;
  --dhw-p25:      rgba(47,74,63,0.25);
  --dhw-p12:      rgba(47,74,63,0.12);
  --dhw-p5:       rgba(47,74,63,0.05);
  --dhw-cream:    #F4F3EF;
  --dhw-white:    #FFFFFF;
  --dhw-charcoal: #2B2B2B;
  --dhw-ch75:     rgba(43,43,43,0.75);
  --dhw-ch55:     rgba(43,43,43,0.55);
  --dhw-ch20:     rgba(43,43,43,0.20);
  --dhw-ch12:     rgba(43,43,43,0.12);
  --dhw-ch08:     rgba(43,43,43,0.08);
}

/* ════════════════════════════════════════════════════════════
   PAGE
════════════════════════════════════════════════════════════ */
main#main-content {
  background:             var(--dhw-cream) !important;
  font-family:            'Montserrat', sans-serif !important;
  -webkit-font-smoothing: antialiased !important;
}

.theme-checkout-steps-content.theme-show {
  background: var(--dhw-cream) !important;
}

/* ════════════════════════════════════════════════════════════
   BREADCRUMB
════════════════════════════════════════════════════════════ */
.theme-checkout-breadcrum ul {
  list-style: none !important;
  padding:    0 !important;
  margin:     0 !important;
}

.theme-checkout-breadcrum ul li a,
.theme-checkout-breadcrum ul li span {
  font-family:     'Montserrat', sans-serif !important;
  font-size:       11.5px !important;
  font-weight:     400 !important;
  letter-spacing:  0.03em !important;
  color:           var(--dhw-ch55) !important;
  text-decoration: none !important;
}

.theme-checkout-breadcrum ul li.active a,
.theme-checkout-breadcrum ul li.active span {
  color:       var(--dhw-charcoal) !important;
  font-weight: 600 !important;
}

.theme-checkout-breadcrum ul li i,
.theme-checkout-breadcrum ul li svg,
.theme-checkout-breadcrum ul li [class*="icon"] {
  color:   var(--dhw-ch20) !important;
  opacity: 0.5 !important;
}

/* ════════════════════════════════════════════════════════════
   STEP NAV
════════════════════════════════════════════════════════════ */
ul.theme-checkout-steps {
  background:    var(--dhw-cream) !important;
  border-bottom: 1px solid var(--dhw-ch12) !important;
}

ul.theme-checkout-steps li a:not(.theme-active-bar) {
  font-family:     'Montserrat', sans-serif !important;
  font-size:       10.5px !important;
  font-weight:     600 !important;
  letter-spacing:  0.12em !important;
  text-transform:  uppercase !important;
  color:           var(--dhw-ch55) !important;
  text-decoration: none !important;
}

ul.theme-checkout-steps li a.active:not(.theme-active-bar) {
  color: var(--dhw-primary) !important;
}

ul.theme-checkout-steps a.theme-active-bar {
  background-color: var(--dhw-primary) !important;
  background:       var(--dhw-primary) !important;
  color:            var(--dhw-primary) !important;
  height:           2px !important;
  border-radius:    0 !important;
  opacity:          1 !important;
}

/* ════════════════════════════════════════════════════════════
   SECTION HEADINGS
════════════════════════════════════════════════════════════ */
h4.theme-checkout-details-title,
.theme-checkout-details-title {
  font-family:    'Playfair Display', serif !important;
  font-size:      19px !important;
  font-weight:    400 !important;
  color:          var(--dhw-primary) !important;
  letter-spacing: -0.01em !important;
  border-bottom:  1px solid var(--dhw-p12) !important;
  padding-bottom: 12px !important;
  margin-bottom:  18px !important;
}

/* ════════════════════════════════════════════════════════════
   LABELS
════════════════════════════════════════════════════════════ */
label.theme-text-color-light {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      10.5px !important;
  font-weight:    600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color:          var(--dhw-ch55) !important;
}

span.mandotry-field {
  color: var(--dhw-primary) !important;
}

/* ════════════════════════════════════════════════════════════
   INPUTS / SELECTS / TEXTAREA
════════════════════════════════════════════════════════════ */
input.theme-checkout-input,
select.theme-checkout-input,
textarea.theme-checkout-input {
  font-family:   'Montserrat', sans-serif !important;
  font-size:     13px !important;
  color:         var(--dhw-charcoal) !important;
  background:    var(--dhw-white) !important;
  border:        1.5px solid var(--dhw-p25) !important;
  border-radius: 0 !important;
  outline:       none !important;
  box-shadow:    none !important;
  transition:    border-color 0.2s !important;
}

input.theme-checkout-input:focus,
select.theme-checkout-input:focus,
textarea.theme-checkout-input:focus {
  border-color: var(--dhw-primary) !important;
  box-shadow:   0 0 0 3px var(--dhw-p5) !important;
}

input#zs-shipping-country-code-display,
input#zs-billing-country-code-display {
  border:        none !important;
  border-right:  1.5px solid var(--dhw-p25) !important;
  border-radius: 0 !important;
  background:    var(--dhw-white) !important;
  color:         var(--dhw-charcoal) !important;
  box-shadow:    none !important;
  outline:       none !important;
}

/* ════════════════════════════════════════════════════════════
   CHECKBOXES & RADIOS
════════════════════════════════════════════════════════════ */
input[type="checkbox"],
input[type="radio"] {
  accent-color: var(--dhw-primary) !important;
}

label.theme-text-color-light:has(input[type="checkbox"]) {
  font-size:      13px !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
  font-weight:    400 !important;
  color:          var(--dhw-ch75) !important;
}

/* ── TERMS & CONDITIONS ───────────────────────────────────── */
.theme-checkout-terms-and-condition {
  display:     flex !important;
  align-items: center !important;
  gap:         8px !important;
}

.theme-checkout-terms-and-condition label,
label[for="zs-terms-and-condition-check"] {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      12.5px !important;
  font-weight:    400 !important;
  color:          var(--dhw-ch75) !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
}

.theme-checkout-terms-and-condition label a,
label[for="zs-terms-and-condition-check"] a {
  color:           var(--dhw-primary) !important;
  text-decoration: underline !important;
  font-weight:     500 !important;
}

/* ════════════════════════════════════════════════════════════
   BUTTONS — specific IDs only
════════════════════════════════════════════════════════════ */
button[data-zs-checkout-continue-address],
button#zs-submit-shipping-method,
button#zs-submit-pickup-options,
button#zs-guest-login,
button#zs-make-payment-button,
button#zs-mobile-make-payment-button {
  display:         inline-flex !important;
  align-items:     center !important;
  justify-content: center !important;
  gap:             8px !important;
  height:          44px !important;
  padding:         0 28px !important;
  background:      var(--dhw-primary) !important;
  color:           var(--dhw-white) !important;
  border:          1.5px solid var(--dhw-primary) !important;
  border-radius:   0 !important;
  font-family:     'Montserrat', sans-serif !important;
  font-size:       10.5px !important;
  font-weight:     600 !important;
  letter-spacing:  0.16em !important;
  text-transform:  uppercase !important;
  box-shadow:      none !important;
  transition:      background 0.25s, color 0.25s !important;
  cursor:          pointer !important;
}

button[data-zs-checkout-continue-address]:hover,
button#zs-submit-shipping-method:hover,
button#zs-submit-pickup-options:hover,
button#zs-guest-login:hover,
button#zs-make-payment-button:hover,
button#zs-mobile-make-payment-button:hover {
  background: transparent !important;
  color:      var(--dhw-primary) !important;
}

button[data-zs-theme-change-address],
button[data-zs-billing-change-address],
a#change_shipping_btn,
a[data-zs-change-shipping-method] {
  display:         inline-flex !important;
  align-items:     center !important;
  justify-content: center !important;
  height:          32px !important;
  padding:         0 16px !important;
  background:      transparent !important;
  color:           var(--dhw-primary) !important;
  border:          1.5px solid var(--dhw-p25) !important;
  border-radius:   0 !important;
  font-family:     'Montserrat', sans-serif !important;
  font-size:       10px !important;
  font-weight:     600 !important;
  letter-spacing:  0.12em !important;
  text-transform:  uppercase !important;
  text-decoration: none !important;
  box-shadow:      none !important;
  cursor:          pointer !important;
  transition:      border-color 0.2s, background 0.2s !important;
}

button[data-zs-theme-change-address]:hover,
button[data-zs-billing-change-address]:hover,
a#change_shipping_btn:hover,
a[data-zs-change-shipping-method]:hover {
  border-color: var(--dhw-primary) !important;
  background:   var(--dhw-p5) !important;
}

/* ════════════════════════════════════════════════════════════
   DISPATCH — shipping method list
════════════════════════════════════════════════════════════ */
.theme-checkout-list {
  border:        1.5px solid var(--dhw-p12) !important;
  border-radius: 0 !important;
  padding:       14px 16px !important;
  margin-bottom: 10px !important;
}

.theme-checkout-list.theme-checkout-list-selected {
  border-color: var(--dhw-primary) !important;
  background:   var(--dhw-p5) !important;
}

.theme-checkout-list-content label {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      13px !important;
  font-weight:    500 !important;
  color:          var(--dhw-charcoal) !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
}

.theme-checkout-list-content p,
.theme-checkout-list-content span {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   12.5px !important;
  color:       var(--dhw-ch55) !important;
}

/* ════════════════════════════════════════════════════════════
   ADDRESS SUMMARY
════════════════════════════════════════════════════════════ */
.theme-checkout-existing-address p,
.theme-checkout-existing-address span,
p.theme-checkout-text-semibold {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   13px !important;
  color:       var(--dhw-ch75) !important;
  line-height: 1.7 !important;
}

p.theme-checkout-text-semibold {
  font-weight: 600 !important;
  color:       var(--dhw-charcoal) !important;
}

p.theme-text-color-light,
span.theme-text-color-light {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   12.5px !important;
  color:       var(--dhw-ch55) !important;
}

/* ════════════════════════════════════════════════════════════
   REVIEW ORDER — items table
════════════════════════════════════════════════════════════ */
.theme-cart-view-wrap {
  font-family: 'Montserrat', sans-serif !important;
}

.theme-cart-view-head {
  border-bottom:  1px solid var(--dhw-ch12) !important;
  padding-bottom: 10px !important;
  margin-bottom:  6px !important;
}

.theme-cart-view-head-items h4,
.theme-cart-view-head-quantity h4,
.theme-cart-view-head-subtotal h4 {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      10.5px !important;
  font-weight:    600 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  color:          var(--dhw-ch55) !important;
  margin:         0 !important;
}

.theme-cart-view-list {
  border-bottom: 1px solid var(--dhw-ch08) !important;
  padding:       14px 0 !important;
}

a.theme-cart-view-product-name {
  font-family:     'Montserrat', sans-serif !important;
  font-size:       13px !important;
  font-weight:     500 !important;
  color:           var(--dhw-charcoal) !important;
  text-decoration: none !important;
  letter-spacing:  0.02em !important;
  display:         block !important;
  margin-bottom:   4px !important;
}

p.theme-cart-view-product-price {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   13px !important;
  font-weight: 600 !important;
  color:       var(--dhw-primary) !important;
  margin:      0 !important;
}

p.theme-cart-view-product-subtotal {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   13px !important;
  font-weight: 500 !important;
  color:       var(--dhw-charcoal) !important;
  margin:      0 !important;
}

span.theme-label {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      10.5px !important;
  font-weight:    600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color:          var(--dhw-ch55) !important;
}

.theme-cart-view-product-detail,
.theme-cart-view-product-detail div,
.theme-cart-view-product-detail span {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   12.5px !important;
  color:       var(--dhw-ch75) !important;
}

.order-review-address-head {
  font-family:    'Playfair Display', serif !important;
  font-size:      16px !important;
  font-weight:    400 !important;
  color:          var(--dhw-primary) !important;
  border-bottom:  1px solid var(--dhw-p12) !important;
  padding-bottom: 8px !important;
  margin-bottom:  10px !important;
}

/* ════════════════════════════════════════════════════════════
   ORDER SUMMARY PANEL
════════════════════════════════════════════════════════════ */
.theme-checkout-body .theme-cart-details-inner .theme-cart-details-summary-wrap,
div.theme-cart-details-summary-wrap {
  background:         var(--dhw-cream) !important;
  border:             none !important;
  border-block-start: none !important;
  border-block-end:   none !important;
  border-radius:      0 !important;
  padding:            20px 0 !important;
  margin:             0 !important;
}

h4.theme-cart-details-summary-title {
  font-family:    'Playfair Display', serif !important;
  font-size:      17px !important;
  font-weight:    400 !important;
  color:          var(--dhw-primary) !important;
  letter-spacing: -0.01em !important;
  border:         none !important;
  border-bottom:  1px solid var(--dhw-p12) !important;
  padding-bottom: 12px !important;
  margin-bottom:  14px !important;
}

a.theme-show-order-details {
  font-family:     'Montserrat', sans-serif !important;
  font-size:       11px !important;
  color:           var(--dhw-primary) !important;
  text-decoration: none !important;
  opacity:         0.7 !important;
}

div.theme-cart-details-summary-list {
  border:  none !important;
  padding: 6px 0 !important;
}

p.theme-cart-details-summary-list-item {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   13px !important;
  font-weight: 400 !important;
  color:       var(--dhw-ch75) !important;
  margin:      0 !important;
}

.theme-cart-details-summary-total-wrap {
  border:      none !important;
  border-top:  1px solid var(--dhw-p25) !important;
  margin-top:  10px !important;
  padding-top: 14px !important;
}

p.theme-cart-details-summary-total {
  display:         flex !important;
  justify-content: space-between !important;
  align-items:     baseline !important;
  font-family:     'Montserrat', sans-serif !important;
  margin:          0 !important;
}

p.theme-cart-details-summary-total > span:first-child {
  font-size:      10.5px !important;
  font-weight:    600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color:          var(--dhw-ch55) !important;
}

span#zs-payment-total-summary {
  font-family:    'Playfair Display', serif !important;
  font-size:      22px !important;
  font-weight:    400 !important;
  color:          var(--dhw-primary) !important;
  letter-spacing: 0.01em !important;
}

/* ════════════════════════════════════════════════════════════
   COUPON FORM
════════════════════════════════════════════════════════════ */

/* Label — font, size and brand colour (only changes from patch) */
label[for="zs-coupon-code"],
.zs-coupon-label,
[class*="coupon"] label,
[class*="coupon-code"] label {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   13px !important;
  color:       var(--dhw-primary) !important;
}

input#zs-coupon-code {
  border:        1.5px solid var(--dhw-p25) !important;
  border-radius: 0 !important;
  font-family:   'Montserrat', sans-serif !important;
  font-size:     13px !important;
  background:    var(--dhw-white) !important;
  color:         var(--dhw-charcoal) !important;
}

input#zs-coupon-code::placeholder {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   12px !important;
  color:       var(--dhw-ch20) !important;
}

/* Apply button — height auto + align-self to match input height */
button#zs-apply-coupon-code {
  display:         inline-flex !important;
  align-items:     center !important;
  height:          auto !important;
  padding:         0 16px !important;
  align-self:      stretch !important;
  background:      var(--dhw-primary) !important;
  color:           var(--dhw-white) !important;
  border:          1.5px solid var(--dhw-primary) !important;
  border-radius:   0 !important;
  font-family:     'Montserrat', sans-serif !important;
  font-size:       11px !important;
  font-weight:     600 !important;
  letter-spacing:  0.10em !important;
  text-transform:  uppercase !important;
  box-shadow:      none !important;
  transition:      background 0.2s, color 0.2s !important;
  cursor:          pointer !important;
}

button#zs-apply-coupon-code:hover {
  background: transparent !important;
  color:      var(--dhw-primary) !important;
}

p#zs-theme-coupon-error {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   11.5px !important;
  color:       #b94444 !important;
}


/* ═══════════════════════════════════════════════════════════════
   DHW — Search Results Page
═══════════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400&family=Montserrat:wght@300;400;500;600&display=swap');

/* ── TOKENS ─────────────────────────────────────────────────── */
.theme-search-page-contianer {
  --dhw-primary:  #2F4A3F;
  --dhw-p70:      rgba(47,74,63,0.70);
  --dhw-p20:      rgba(47,74,63,0.20);
  --dhw-p10:      rgba(47,74,63,0.10);
  --dhw-p5:       rgba(47,74,63,0.05);
  --dhw-cream:    #F4F3EF;
  --dhw-cream-dk: #EDEBE5;
  --dhw-white:    #FFFFFF;
  --dhw-charcoal: #2B2B2B;
  --dhw-ch70:     rgba(43,43,43,0.70);
  --dhw-ch60:     rgba(43,43,43,0.60);
  --dhw-ch20:     rgba(43,43,43,0.20);
  --dhw-ch10:     rgba(43,43,43,0.10);
  font-family:            'Montserrat', sans-serif !important;
  -webkit-font-smoothing: antialiased !important;
  background:             var(--dhw-cream) !important;
}

/* ═══════════════════════════════════════════════════════════════
   PAGE BACKGROUND
═══════════════════════════════════════════════════════════════ */
main#main-content.theme-content-area-inner {
  background: var(--dhw-cream) !important;
}

/* ═══════════════════════════════════════════════════════════════
   SEARCH RESULTS HEADING AREA
═══════════════════════════════════════════════════════════════ */
.theme-search-page-contianer .theme-collection-heading-view-all-search {
  display:        flex !important;
  align-items:    baseline !important;
  gap:            12px !important;
  padding:        28px 0 20px !important;
  border-bottom:  1px solid var(--dhw-ch10) !important;
  margin-bottom:  0 !important;
}

.theme-search-page-contianer h2.theme-section-heading {
  font-family:    'Playfair Display', serif !important;
  font-size:      clamp(26px, 3vw, 36px) !important;
  font-weight:    400 !important;
  color:          var(--dhw-primary) !important;
  letter-spacing: -0.01em !important;
  line-height:    1.2 !important;
  margin:         0 !important;
  text-transform: none !important;
}

/* ═══════════════════════════════════════════════════════════════
   MAIN LAYOUT (filter sidebar + product list)
═══════════════════════════════════════════════════════════════ */
.theme-search-page-contianer .theme-collection-section > .zpcontainer {
  align-items:    start !important;
  padding-top:    24px !important;
  padding-bottom: 48px !important;
  gap:            0 !important;
  max-width:      1160px !important;
  margin:         0 auto !important;
}

.theme-search-page-contianer .theme-produt-filter-row[data-zs-filter-container] {
  width:         260px !important;
  min-width:     260px !important;
  max-width:     260px !important;
  flex-shrink:   0 !important;
  flex-grow:     0 !important;
  position:      sticky !important;
  top:           88px !important;
  padding-right: 24px !important;
  border-right:  1px solid var(--dhw-ch10) !important;
  align-self:    start !important;
  display:       block !important;
}

.theme-search-page-contianer .zprow.theme-produt-category-list-row {
  flex:                1 1 0% !important;
  min-width:           0 !important;
  padding-left:        24px !important;
  display:             block !important;
  border-left:         none !important;
  border-inline-start: none !important;
}

/* ═══════════════════════════════════════════════════════════════
   ZOHO THEME LINE OVERRIDES
═══════════════════════════════════════════════════════════════ */
.theme-search-page-contianer .theme-filters-header {
  border-bottom:    none !important;
  border-block-end: none !important;
}

.theme-search-page-contianer .theme-filter-sortby-container {
  border-bottom:    none !important;
  border-block-end: none !important;
}

/* ═══════════════════════════════════════════════════════════════
   FILTER SIDEBAR
═══════════════════════════════════════════════════════════════ */
.theme-search-page-contianer .theme-filters-header {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      13px !important;
  font-weight:    600 !important;
  letter-spacing: 0.08em !important;
  color:          var(--dhw-charcoal) !important;
  margin-bottom:  14px !important;
  display:        block !important;
}

.theme-search-page-contianer .theme-product-filter-mobile-overlay { display: none !important; }
.theme-search-page-contianer .theme-product-filter-icon-mobile    { display: none !important; }
.theme-search-page-contianer .theme-mobile-filters {
  gap:            0 !important;
  flex-direction: column !important;
}

.theme-search-page-contianer fieldset.theme-product-filter-box {
  border:  none !important;
  margin:  0 !important;
  padding: 0 !important;
}

.theme-search-page-contianer legend.theme-product-filter-type {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      10px !important;
  font-weight:    600 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color:          var(--dhw-p70) !important;
  border-top:     1px solid var(--dhw-ch10) !important;
  border-bottom:  none !important;
  padding-top:    14px !important;
  padding-bottom: 0 !important;
  margin-bottom:  10px !important;
  display:        block !important;
  float:          none !important;
  width:          100% !important;
}

.theme-search-page-contianer fieldset.theme-product-filter-box:first-child legend.theme-product-filter-type {
  border-top:  none !important;
  padding-top: 0 !important;
}

.theme-search-page-contianer .theme-filter-expand-icon,
.theme-search-page-contianer .theme-filter-close-icon { display: none !important; }

.theme-search-page-contianer a.theme-product-clear-filter {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   11px !important;
  color:       var(--dhw-p70) !important;
}

.theme-search-page-contianer [data-zs-filter-option-values-wrapper] {
  padding:        0 !important;
  gap:            6px !important;
  display:        flex !important;
  flex-direction: column !important;
}

.theme-search-page-contianer button[data-zs-filter-option-category] {
  display:         flex !important;
  align-items:     center !important;
  justify-content: space-between !important;
  width:           100% !important;
  background:      none !important;
  border:          none !important;
  padding:         6px 0 !important;
  font-family:     'Montserrat', sans-serif !important;
  font-size:       13px !important;
  font-weight:     400 !important;
  color:           var(--dhw-ch70) !important;
  cursor:          pointer !important;
  text-align:      left !important;
  letter-spacing:  0.02em !important;
  transition:      color 0.2s !important;
  box-shadow:      none !important;
}

.theme-search-page-contianer button[data-zs-filter-option-category]:hover {
  color: var(--dhw-primary) !important;
}

.theme-search-page-contianer .theme-product-filter-count {
  font-size: 11px !important;
  color:     var(--dhw-ch60) !important;
}

.theme-search-page-contianer .theme-product-filter-option-container[data-zs-filter-option-value-container] {
  display:        flex !important;
  flex-direction: row !important;
  align-items:    center !important;
  gap:            10px !important;
  padding:        5px 0 !important;
  cursor:         pointer !important;
}

.theme-search-page-contianer .theme-product-filter-select-option {
  display:     flex !important;
  align-items: center !important;
  flex:        0 0 auto !important;
  padding:     0 !important;
  margin:      0 !important;
  width:       auto !important;
}

.theme-search-page-contianer input.theme-product-filter-check {
  position:       absolute !important;
  opacity:        0 !important;
  width:          0 !important;
  height:         0 !important;
  pointer-events: none !important;
}

.theme-search-page-contianer span.theme-product-filter-custom-check {
  flex:            0 0 15px !important;
  width:           15px !important;
  height:          15px !important;
  min-width:       15px !important;
  border:          1.5px solid var(--dhw-p20) !important;
  border-radius:   0 !important;
  background:      var(--dhw-white) !important;
  display:         inline-flex !important;
  align-items:     center !important;
  justify-content: center !important;
  cursor:          pointer !important;
  position:        relative !important;
  transition:      border-color 0.2s, background 0.2s !important;
}

.theme-search-page-contianer span.theme-product-filter-custom-check[aria-checked="true"] {
  background:   var(--dhw-primary) !important;
  border-color: var(--dhw-primary) !important;
}

.theme-search-page-contianer span.theme-product-filter-custom-check[aria-checked="true"]::after {
  content:     '' !important;
  position:    absolute !important;
  top:         1px !important;
  left:        4px !important;
  width:       5px !important;
  height:      8px !important;
  border:      1.5px solid var(--dhw-white) !important;
  border-top:  none !important;
  border-left: none !important;
  transform:   rotate(45deg) !important;
}

.theme-search-page-contianer label.theme-product-filter-text {
  flex:        1 !important;
  min-width:   0 !important;
  margin:      0 !important;
  padding:     0 !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size:   13px !important;
  line-height: 1.3 !important;
  color:       var(--dhw-ch70) !important;
  cursor:      pointer !important;
  transition:  color 0.2s !important;
}

.theme-search-page-contianer .theme-product-filter-option-container[data-zs-filter-option-value-container]:hover label.theme-product-filter-text {
  color: var(--dhw-primary) !important;
}

.theme-search-page-contianer .theme-product-filter-selected-container { display: none !important; }

.theme-search-page-contianer a.theme-product-filter-show-more,
.theme-search-page-contianer a[data-zs-filter-option-showless-btn],
.theme-search-page-contianer a[data-zs-filter-option-showmore-btn] {
  font-family:     'Montserrat', sans-serif !important;
  font-size:       11px !important;
  font-weight:     500 !important;
  color:           var(--dhw-p70) !important;
  letter-spacing:  0.06em !important;
  text-decoration: none !important;
  display:         inline-flex !important;
  align-items:     center !important;
  gap:             4px !important;
  margin-top:      6px !important;
  cursor:          pointer !important;
  transition:      color 0.2s !important;
}

.theme-search-page-contianer a.theme-product-filter-show-more:hover { color: var(--dhw-primary) !important; }

/* ═══════════════════════════════════════════════════════════════
   SORT BAR
═══════════════════════════════════════════════════════════════ */
.theme-search-page-contianer .theme-filter-sortby-container {
  display:         flex !important;
  align-items:     center !important;
  justify-content: flex-end !important;
  padding:         0 0 20px !important;
  margin-bottom:   24px !important;
  border-bottom:   1px solid var(--dhw-ch10) !important;
  background:      none !important;
  width:           100% !important;
}

.theme-search-page-contianer .theme-product-filter-icon-mobile-container {
  display: block !important;
  width:   100% !important;
}

.theme-search-page-contianer .theme-collection-sortby-section {
  display:         flex !important;
  align-items:     center !important;
  justify-content: flex-end !important;
  width:           100% !important;
}

.theme-search-page-contianer .theme-collection-sort-inner:not(.theme-custom-sort) { display: none !important; }
.theme-search-page-contianer .theme-collection-sort-inner.theme-custom-sort {
  display:     flex !important;
  align-items: center !important;
  gap:         6px !important;
}

.theme-search-page-contianer .theme-collection-sort .theme-custom-sort { border: none !important; }

.theme-search-page-contianer .theme-sortby-label {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      12px !important;
  font-weight:    400 !important;
  color:          var(--dhw-ch60) !important;
  letter-spacing: 0.02em !important;
}

.theme-search-page-contianer .theme-sort-colon {
  font-family: 'Montserrat', sans-serif !important;
  font-size:   12px !important;
  color:       var(--dhw-ch60) !important;
}

.theme-search-page-contianer .theme-sort-select-container { position: relative !important; }

.theme-search-page-contianer .theme-custom-select-value {
  font-family:  'Montserrat', sans-serif !important;
  font-size:    12px !important;
  font-weight:  500 !important;
  color:        var(--dhw-charcoal) !important;
  background:   var(--dhw-white) !important;
  border:       1.5px solid var(--dhw-ch20) !important;
  padding:      8px 32px 8px 14px !important;
  cursor:       pointer !important;
  min-width:    160px !important;
  display:      flex !important;
  align-items:  center !important;
  transition:   border-color 0.2s, color 0.2s !important;
}

.theme-search-page-contianer .theme-custom-select-value:hover {
  border-color: var(--dhw-primary) !important;
  color:        var(--dhw-primary) !important;
}

.theme-search-page-contianer .theme-custom-select-option-container {
  position:   absolute !important;
  top:        calc(100% + 4px) !important;
  left:       0 !important;
  right:      0 !important;
  background: var(--dhw-white) !important;
  border:     1.5px solid var(--dhw-ch20) !important;
  z-index:    999 !important;
  min-width:  160px !important;
  box-shadow: 0 8px 24px rgba(43,43,43,0.08) !important;
}

.theme-search-page-contianer .theme-custom-select-option {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      12px !important;
  color:          var(--dhw-ch70) !important;
  padding:        10px 14px !important;
  cursor:         pointer !important;
  letter-spacing: 0.02em !important;
  transition:     background 0.15s, color 0.15s !important;
}

.theme-search-page-contianer .theme-custom-select-option:hover {
  background: var(--dhw-p5) !important;
  color:      var(--dhw-primary) !important;
}

.theme-search-page-contianer .theme-custom-select-option[aria-selected="true"] {
  color:       var(--dhw-primary) !important;
  font-weight: 600 !important;
}

/* ═══════════════════════════════════════════════════════════════
   PRODUCT GRID
═══════════════════════════════════════════════════════════════ */
.theme-search-page-contianer .zprow.theme-product-ratio[data-sort-by-products-target] {
  display:               grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap:                   16px !important;
  width:                 100% !important;
  flex-wrap:             unset !important;
}

/* ═══════════════════════════════════════════════════════════════
   PRODUCT CARD
═══════════════════════════════════════════════════════════════ */
.theme-search-page-contianer .theme-prod-box {
  background:     var(--dhw-white) !important;
  border:         1px solid var(--dhw-p10) !important;
  overflow:       hidden !important;
  display:        flex !important;
  flex-direction: column !important;
  width:          100% !important;
  max-width:      100% !important;
  flex:           unset !important;
  padding:        0 !important;
  margin-bottom:  0 !important;
  transition:     transform 0.3s, box-shadow 0.3s !important;
}

.theme-search-page-contianer .theme-prod-box:hover {
  transform:  translateY(-3px) !important;
  box-shadow: 0 16px 48px rgba(47,74,63,0.10) !important;
}

.theme-search-page-contianer .theme-product-box-content {
  display:        flex !important;
  flex-direction: column !important;
  flex:           1 !important;
}

/* ── IMAGE ────────────────────────────────────────────────── */
.theme-search-page-contianer .theme-product-image-area[data-zs-image-container] {
  display:      block !important;
  aspect-ratio: 1 / 1 !important;
  width:        100% !important;
  height:       auto !important;
  min-height:   unset !important;
  max-height:   unset !important;
  position:     relative !important;
  overflow:     hidden !important;
  background:   var(--dhw-cream-dk) !important;
  padding:      0 !important;
  margin:       0 !important;
  flex-shrink:  0 !important;
}

.theme-search-page-contianer .theme-product-ratio .theme-product-image-area {
  aspect-ratio: 1 / 1 !important;
  height:       auto !important;
}

.theme-search-page-contianer .theme-product-image-area[data-zs-image-container] a {
  display:     block !important;
  position:    absolute !important;
  inset:       0 !important;
  width:       100% !important;
  height:      100% !important;
  padding:     0 !important;
  margin:      0 !important;
  line-height: 0 !important;
}

.theme-search-page-contianer .theme-product-image-area[data-zs-image-container] picture {
  display: block !important;
  width:   100% !important;
  height:  100% !important;
  padding: 0 !important;
  margin:  0 !important;
}

.theme-search-page-contianer .theme-product-image-area[data-zs-image-container] img {
  display:         block !important;
  width:           100% !important;
  height:          100% !important;
  object-fit:      cover !important;
  object-position: center center !important;
  padding:         0 !important;
  margin:          0 !important;
  transition:      transform 0.4s ease !important;
}

.theme-search-page-contianer .theme-prod-box:hover .theme-product-image-area[data-zs-image-container] img {
  transform: scale(1.05) !important;
}

/* ── HIDE CLUTTER ─────────────────────────────────────────── */
.theme-search-page-contianer .theme-cta-wishlist-wrapper  { display: none !important; }
.theme-search-page-contianer .theme-wishlist-icon         { display: none !important; }
.theme-search-page-contianer .theme-product-ribbon-area   { display: none !important; }
.theme-search-page-contianer .theme-prod-pricelist-outter { display: none !important; }

/* ── PRODUCT INFO ─────────────────────────────────────────── */
.theme-search-page-contianer .theme-product-details-area {
  padding:        12px 14px 16px !important;
  background:     var(--dhw-white) !important;
  display:        flex !important;
  flex-direction: column !important;
  flex:           1 !important;
}

.theme-search-page-contianer .theme-product-name-rating-price {
  display:        flex !important;
  flex-direction: column !important;
  gap:            0 !important;
}

.theme-search-page-contianer div.theme-product-name[data-zs-product-name] {
  font-family:    'Playfair Display', serif !important;
  font-size:      17px !important;
  font-weight:    500 !important;
  color:          var(--dhw-primary) !important;
  line-height:    1.3 !important;
  letter-spacing: 0.01em !important;
  margin-bottom:  6px !important;
  text-transform: none !important;
}

.theme-search-page-contianer div.theme-product-short-description[data-zs-product-short-description] {
  display: none !important;
}

.theme-search-page-contianer .theme-product-price-variants { display: block !important; }

.theme-search-page-contianer span[data-zs-selling-price],
.theme-search-page-contianer .theme-product-price {
  font-family:    'Playfair Display', serif !important;
  font-size:      22px !important;
  font-weight:    400 !important;
  color:          var(--dhw-primary) !important;
  letter-spacing: 0.01em !important;
  display:        block !important;
  margin-bottom:  14px !important;
}

/* ── INJECTED ACTION ROW ──────────────────────────────────── */
.dhw-card-actions {
  display:     flex !important;
  align-items: stretch !important;
  gap:         8px !important;
  margin-top:  auto !important;
  width:       100% !important;
}

.dhw-cat-atc-btn {
  flex:            1 !important;
  height:          42px !important;
  background:      #2F4A3F !important;
  color:           #FFFFFF !important;
  border:          1.5px solid #2F4A3F !important;
  border-radius:   0 !important;
  font-family:     'Montserrat', sans-serif !important;
  font-size:       11px !important;
  font-weight:     600 !important;
  letter-spacing:  0.13em !important;
  text-transform:  uppercase !important;
  cursor:          pointer !important;
  display:         flex !important;
  align-items:     center !important;
  justify-content: center !important;
  gap:             7px !important;
  padding:         0 14px !important;
  white-space:     nowrap !important;
  transition:      background 0.25s, color 0.25s !important;
}

.dhw-cat-atc-btn:hover:not(:disabled) {
  background: transparent !important;
  color:      #2F4A3F !important;
}

.dhw-cat-atc-btn:disabled {
  opacity: 0.65 !important;
  cursor:  not-allowed !important;
}

.dhw-cat-atc-btn--success {
  background:   #3a7a5a !important;
  border-color: #3a7a5a !important;
  color:        #FFFFFF !important;
}

/* ── QUICK VIEW ───────────────────────────────────────────── */
button[data-zs-quick-view] {
  font-family:    'Montserrat', sans-serif !important;
  font-size:      10px !important;
  font-weight:    600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color:          #FFFFFF !important;
  background:     rgba(47,74,63,0.82) !important;
  border:         none !important;
  border-radius:  0 !important;
}

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════════════════════ */
@media (max-width: 960px) {
  .theme-search-page-contianer .zprow.theme-product-ratio[data-sort-by-products-target] {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 700px) {
  .theme-search-page-contianer .theme-collection-section > .zpcontainer {
    flex-direction: column !important;
  }
  .theme-search-page-contianer .theme-produt-filter-row[data-zs-filter-container] {
    width:         100% !important;
    max-width:     100% !important;
    min-width:     0 !important;
    position:      static !important;
    border-right:  none !important;
    border-bottom: 1px solid var(--dhw-ch10) !important;
    padding-right: 0 !important;
    padding-bottom: 24px !important;
    margin-bottom: 24px !important;
  }
  .theme-search-page-contianer .zprow.theme-produt-category-list-row {
    padding-left: 0 !important;
  }
  .theme-search-page-contianer .zprow.theme-product-ratio[data-sort-by-products-target] {
    grid-template-columns: repeat(2, 1fr) !important;
    gap:                   16px !important;
  }
}

@media (max-width: 480px) {
  .theme-search-page-contianer .zprow.theme-product-ratio[data-sort-by-products-target] {
    grid-template-columns: 1fr !important;
  }
}