/* Didipart ↔ Core storefront bridge */
body[data-sf-theme="didipart"] {
  --didipart-brand: var(--theam-color, var(--sf-color-brand, #073e9f));
  --didipart-brand-text: var(--theam-text-color, #fff);
  --didipart-accent: var(--theam-secend-color, var(--sf-color-accent, #ff6900));
  --didipart-accent-text: var(--theam-secend-text-color, #fff);
  --industry-accent-deep: var(--didipart-brand);
}

/* 1.0.16 final precedence pass */
body[data-sf-theme="didipart"] .didipart-header .header-main { grid-template-columns:minmax(154px,220px) minmax(0,1fr) auto !important; }
body[data-sf-theme="didipart"] .didipart-header .header-quick-nav { justify-content:flex-start !important; justify-self:stretch !important; }
body[data-sf-theme="didipart"] .didipart-header .brand { min-width:0 !important; max-width:220px !important; }
body[data-sf-theme="didipart"] .didipart-header .brand img { max-width:220px !important; max-height:68px !important; object-fit:contain !important; }
body[data-sf-theme="didipart"] .product-buy-panel :is(.variant-group,.attribute-group,.product-attribute-group) { border:0 !important; background:transparent !important; box-shadow:none !important; padding:8px 0 !important; margin:0 !important; }
body[data-sf-theme="didipart"] .product-buy-panel :is(.variant-options,.attribute-options,.product-attribute-options) { display:flex !important; flex-wrap:wrap !important; gap:8px !important; min-height:48px !important; padding:8px !important; border:1px solid var(--dp-line) !important; border-radius:12px !important; background:var(--dp-soft) !important; }
body[data-sf-theme="didipart"] .product-buy-panel :is(.variant-option,.attribute-option,.product-attribute-option) { min-height:38px !important; padding:7px 13px !important; border-radius:9px !important; }
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper { width:100% !important; overflow:hidden !important; }
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper .swiper-wrapper { display:flex !important; flex-wrap:nowrap !important; gap:16px !important; }
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper:not(.swiper-initialized) .swiper-slide { flex:0 0 calc((100% - 48px)/4) !important; width:calc((100% - 48px)/4) !important; }
body[data-sf-theme="didipart"] :is(.slider-nav--prev,.home-product-nav--prev,.home-slider-nav--prev) .icon { transform:none !important; }
body[data-sf-theme="didipart"] :is(.slider-nav--next,.home-product-nav--next,.home-slider-nav--next) .icon { transform:rotate(180deg) !important; }
body[data-sf-theme="didipart"] .product-filter :is(.filter-heading,.filter-title,.accordion-button) { padding-left:42px !important; padding-right:0 !important; position:relative !important; }
body[data-sf-theme="didipart"] .product-filter :is(.filter-toggle,.filter-heading button,.accordion-button)::after { left:14px !important; right:auto !important; position:absolute !important; }
body[data-sf-theme="didipart"] .sf-page-contact .contact-layout { display:grid !important; grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr) !important; gap:24px !important; align-items:stretch !important; }
body[data-sf-theme="didipart"] .sf-page-contact .contact-layout > * { width:100% !important; min-width:0 !important; }
body[data-sf-theme="didipart"] .sf-page-contact :is(.form-render,.contact-form,.card-surface) { max-width:none !important; }
body[data-sf-theme="didipart"] .didipart-featured-cover { height:auto !important; aspect-ratio:auto !important; overflow:visible !important; }
body[data-sf-theme="didipart"] .didipart-featured-cover img { display:block !important; width:auto !important; max-width:100% !important; height:auto !important; max-height:480px !important; margin-inline:auto !important; object-fit:contain !important; }
body[data-sf-theme="didipart"] .product-page__buy-panel #variation-attributes .attribute-item { border:0 !important; background:transparent !important; box-shadow:none !important; padding:8px 0 !important; margin:0 !important; }
body[data-sf-theme="didipart"] .product-page__buy-panel #variation-attributes .attribute-item__controls { min-height:48px !important; padding:8px !important; border:1px solid var(--dp-line) !important; border-radius:12px !important; background:var(--dp-soft) !important; }
body[data-sf-theme="didipart"] .product-page__buy-panel #variation-attributes :is(.color-options,.button-swatch-options,.radio-swatch-options,.term-visual-options,.swatch-select-wrap) { gap:8px !important; min-height:32px !important; }
body[data-sf-theme="didipart"] .product-page__buy-panel #variation-attributes .swatch-option-wrap { border:0 !important; background:transparent !important; box-shadow:none !important; padding:0 !important; }
body[data-sf-theme="didipart"] .product-page__buy-panel #variation-attributes :is(.button-swatch-option,.radio-swatch-option,.term-visual-option,.attribute-select) { min-height:38px !important; border-radius:9px !important; }
@media (max-width:767.98px) {
  body[data-sf-theme="didipart"] .didipart-header .header-main { grid-template-columns:minmax(0,1fr) auto !important; }
  body[data-sf-theme="didipart"] .didipart-header .brand img { max-width:150px !important; max-height:48px !important; }
  body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper:not(.swiper-initialized) .swiper-slide { flex-basis:calc((100% - 16px)/2) !important; width:calc((100% - 16px)/2) !important; }
  body[data-sf-theme="didipart"] .sf-page-contact .contact-layout { grid-template-columns:1fr !important; }
}

/* 1.0.19 final precedence pass — keep this block last. */
body[data-sf-theme="didipart"] .didipart-product-page .product-page__buy-panel { padding:8px 4px 8px 20px !important; background:transparent !important; border:0 !important; border-radius:0 !important; box-shadow:none !important; }
body[data-sf-theme="didipart"] .didipart-product-page .buy-box { padding:18px 0 0 !important; background:transparent !important; border:0 !important; border-top:1px solid var(--dp-line) !important; border-radius:0 !important; box-shadow:none !important; }
body[data-sf-theme="didipart"] .didipart-product-page :is(.attribute-item,.attribute-item__controls,.price-box,.price-section,.quantity-wrapper,.volume-pricing-table,.stock-status) { background:transparent !important; border:0 !important; border-radius:0 !important; box-shadow:none !important; }
body[data-sf-theme="didipart"] .didipart-product-page .attribute-item { padding:12px 0 !important; margin:0 !important; border-bottom:1px solid var(--dp-line) !important; }
body[data-sf-theme="didipart"] .didipart-product-page .attribute-item__controls { min-height:0 !important; padding:7px 0 !important; }
body[data-sf-theme="didipart"] .didipart-product-page .stock-status { width:auto !important; padding:2px 0 !important; }
body[data-sf-theme="didipart"] .didipart-product-page .price-section { padding:14px 0 10px !important; border-block:1px solid var(--dp-line) !important; }
body[data-sf-theme="didipart"] .didipart-product-page #product-qty-label { display:inline-flex !important; width:max-content !important; max-width:100% !important; min-height:0 !important; margin:0 0 6px !important; padding:0 !important; background:transparent !important; border:0 !important; border-radius:0 !important; }
body[data-sf-theme="didipart"] .didipart-product-page .product-qty-presets { width:auto !important; justify-content:flex-start !important; }
body[data-sf-theme="didipart"] .didipart-product-page .product-qty-preset-btn { width:auto !important; min-width:42px; }
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper.swiper-initialized .swiper-wrapper { display:flex !important; flex-wrap:nowrap !important; gap:0 !important; }
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper.swiper-initialized .swiper-slide { flex-shrink:0 !important; width:auto; }
@media (max-width:767.98px) {
  body[data-sf-theme="didipart"] .didipart-product-page .product-page__buy-panel { padding:8px 0 !important; }
}

/* 1.0.19 — calmer product purchase panel and guaranteed related carousel. */
body[data-sf-theme="didipart"] .didipart-product-page .product-page__buy-panel {
  padding: 8px 4px 8px 20px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body[data-sf-theme="didipart"] .didipart-product-page .buy-box {
  padding: 18px 0 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--dp-line) !important;
  border-radius: 0 !important;
}
body[data-sf-theme="didipart"] .didipart-product-page :is(.attribute-item,.price-box,.price-section,.quantity-wrapper,.volume-pricing-table,.stock-status) {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body[data-sf-theme="didipart"] .didipart-product-page .attribute-item {
  padding: 12px 0 !important;
  border-bottom: 1px solid var(--dp-line) !important;
}
body[data-sf-theme="didipart"] .didipart-product-page .stock-status {
  padding: 2px 0 !important;
}
body[data-sf-theme="didipart"] .didipart-product-page .price-section {
  padding: 14px 0 10px !important;
  border-block: 1px solid var(--dp-line) !important;
}
body[data-sf-theme="didipart"] .didipart-product-page #product-qty-label {
  display: inline-flex !important;
  width: max-content !important;
  max-width: 100% !important;
  min-height: 0 !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
  color: var(--dp-ink) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
}
body[data-sf-theme="didipart"] .didipart-product-page .product-qty-presets {
  width: auto !important;
  justify-content: flex-start !important;
}
body[data-sf-theme="didipart"] .didipart-product-page .product-qty-preset-btn {
  width: auto !important;
  min-width: 42px;
}
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper.swiper-initialized .swiper-wrapper {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 0 !important;
}
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper.swiper-initialized .swiper-slide {
  flex-shrink: 0 !important;
  width: auto;
}
@media (max-width: 767.98px) {
  body[data-sf-theme="didipart"] .didipart-product-page .product-page__buy-panel {
    padding: 8px 0 !important;
  }
}

/* Variation controls use the actual storefront markup. */
body[data-sf-theme="didipart"] .product-page__buy-panel #variation-attributes .attribute-item { border:0 !important; background:transparent !important; box-shadow:none !important; padding:8px 0 !important; margin:0 !important; }
body[data-sf-theme="didipart"] .product-page__buy-panel #variation-attributes .attribute-item__controls { min-height:48px !important; padding:8px !important; border:1px solid var(--dp-line) !important; border-radius:12px !important; background:var(--dp-soft) !important; }
body[data-sf-theme="didipart"] .product-page__buy-panel #variation-attributes .swatch-option-wrap { border:0 !important; background:transparent !important; box-shadow:none !important; padding:0 !important; }
body[data-sf-theme="didipart"] .product-page__buy-panel #variation-attributes :is(.button-swatch-option,.radio-swatch-option,.term-visual-option,.attribute-select) { min-height:38px !important; border-radius:9px !important; }

body[data-sf-theme="didipart"].site-body {
  font-family: var(--sf-font-body, IRANSansX, system-ui, sans-serif);
}

/* Suppress legacy pro-chrome when Didipart chrome is active */
body[data-sf-theme="didipart"] .site-head-pro,
body[data-sf-theme="didipart"] .head-pro-mobile-nav,
body[data-sf-theme="didipart"] .pro-footer {
  display: none !important;
}

/* Master layout: Didipart pages own their containers */
body[data-sf-theme="didipart"] .breadcrumb-nav {
  display: none;
}

body[data-sf-theme="didipart"] .sf-page-home,
body[data-sf-theme="didipart"] .didipart-home {
  margin: 0;
  padding: 0;
}

/* Keep Bootstrap modal/offcanvas usable for login + cart drawer */
body[data-sf-theme="didipart"] .offcanvas,
body[data-sf-theme="didipart"] .modal {
  font-family: var(--sf-font-body, IRANSansX, system-ui, sans-serif);
}

body[data-sf-theme="didipart"] .didipart-commerce-shell {
  padding-block: 1.5rem 3rem;
}

body[data-sf-theme="didipart"] .didipart-archive,
body[data-sf-theme="didipart"] .didipart-product-page {
  padding-block: 1rem 2.5rem;
}

body[data-sf-theme="didipart"] .page-product .product-main,
body[data-sf-theme="didipart"] .sf-page-product {
  max-width: 1240px;
  margin-inline: auto;
  padding-inline: 1rem;
}

body[data-sf-theme="didipart"] .sf-page-product-archive > .container,
body[data-sf-theme="didipart"] .didipart-archive.container {
  max-width: 1240px;
}

/* ── Archive: CSS grid layout (match HTML template; kill Bootstrap cols) ── */
body[data-sf-theme="didipart"] .catalog-layout.products-layout-with-filters,
body[data-sf-theme="didipart"] .catalog-layout {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 20px;
  align-items: start;
}

body[data-sf-theme="didipart"] .catalog-layout--solo,
body[data-sf-theme="didipart"] .catalog-layout:not(:has(.products-filters-sidebar)) {
  grid-template-columns: 1fr;
}

body[data-sf-theme="didipart"] .catalog-layout > .products-filters-sidebar,
body[data-sf-theme="didipart"] .catalog-layout > .catalog-main,
body[data-sf-theme="didipart"] .catalog-layout > .products-main-column,
body[data-sf-theme="didipart"] .catalog-layout > [class*="col-"] {
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin: 0;
}

body[data-sf-theme="didipart"] .products-filters-sidebar {
  position: sticky;
  top: 96px;
  padding: 16px;
  background: #fff;
  border: 1px solid var(--border, #e1e7ef);
  border-radius: 14px;
  box-shadow: var(--shadow-soft, 0 5px 18px rgba(17, 42, 84, 0.07));
}

body[data-sf-theme="didipart"] .products-filters-sidebar .products-filters-sidebar__close {
  display: none;
}

body[data-sf-theme="didipart"] .catalog-toolbar.products-filter {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
  padding: 12px 14px;
  background: #fff;
  border: 1px solid var(--border, #e1e7ef);
  border-radius: 12px;
}

body[data-sf-theme="didipart"] .catalog-toolbar__right,
body[data-sf-theme="didipart"] .catalog-toolbar__left {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

body[data-sf-theme="didipart"] .catalog-toolbar select,
body[data-sf-theme="didipart"] .catalog-toolbar .form-select {
  min-width: 160px;
  min-height: 40px;
  border-radius: 10px;
  border-color: var(--border, #e1e7ef);
  font-size: 13px;
}

body[data-sf-theme="didipart"] .catalog-grid,
body[data-sf-theme="didipart"] .products-grid.catalog-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

body[data-sf-theme="didipart"] .catalog-grid > .row,
body[data-sf-theme="didipart"] .products-grid > .row {
  display: contents;
}

body[data-sf-theme="didipart"] .catalog-grid > [class*="col-"],
body[data-sf-theme="didipart"] .catalog-grid .row > [class*="col-"] {
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  padding: 0 !important;
}

body[data-sf-theme="didipart"] .catalog-grid .product-card {
  height: 342px;
  width: 100%;
  min-width: 0;
}

body[data-sf-theme="didipart"] .wishlist-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 1rem;
}

body[data-sf-theme="didipart"] .didipart-archive__counter {
  text-align: center;
  background: #fff;
  border: 1px solid #e1e7ef;
  border-radius: 14px;
  padding: 0.75rem 1rem;
  min-width: 120px;
}

body[data-sf-theme="didipart"] .didipart-archive__counter strong {
  display: block;
  font-size: 1.4rem;
  color: var(--didipart-brand);
}

body[data-sf-theme="didipart"] .category-mini-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  text-decoration: none;
  color: inherit;
  padding: 0.75rem;
  background: #fff;
  border: 1px solid #e1e7ef;
  border-radius: 14px;
}

body[data-sf-theme="didipart"] .mobile-filter-open.products-filters-mobile-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  width: auto;
}

body[data-sf-theme="didipart"] .products-grid-skeleton.row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 0 !important;
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
}

body[data-sf-theme="didipart"] .products-grid-skeleton > [class*="col-"] {
  width: auto !important;
  max-width: none !important;
  padding: 0 !important;
}

body[data-sf-theme="didipart"] .product-card-skeleton {
  height: 320px;
  border-radius: 12px;
  background: linear-gradient(90deg, #f1f4f9 25%, #e8edf5 37%, #f1f4f9 63%);
  background-size: 400% 100%;
  animation: didipart-skel 1.2s ease infinite;
}

@keyframes didipart-skel {
  0% { background-position: 100% 0; }
  100% { background-position: 0 0; }
}

/* ── Product card: core price / actions leftovers ── */
body[data-sf-theme="didipart"] .product-card__prices .product-price-v2,
body[data-sf-theme="didipart"] .product-card__prices .price,
body[data-sf-theme="didipart"] .product-card__prices .product-price {
  display: contents;
}

body[data-sf-theme="didipart"] .product-card__prices .product-availability-v2 {
  display: none !important;
}

body[data-sf-theme="didipart"] .product-card .product-actions-v2,
body[data-sf-theme="didipart"] .product-card .product-wc-toolbar {
  display: flex;
  gap: 6px;
  position: static;
  opacity: 1;
  transform: none;
  background: transparent;
  border: 0;
  padding: 0;
  box-shadow: none;
}

body[data-sf-theme="didipart"] .product-card .product-actions-v2 button,
body[data-sf-theme="didipart"] .product-card .product-wc-toolbar button {
  display: grid;
  place-items: center;
  width: 33px;
  height: 33px;
  color: #5d6879;
  background: #fff;
  border: 1px solid var(--border, #e1e7ef);
  border-radius: 7px;
  padding: 0;
  font-size: 16px;
}

body[data-sf-theme="didipart"] .product-card .product-actions-v2 button.is-active,
body[data-sf-theme="didipart"] .product-card .product-actions-v2 button:hover,
body[data-sf-theme="didipart"] .product-card .icon-button.is-active {
  color: var(--didipart-accent);
  background: var(--accent-soft, #fff1e8);
  border-color: #ffd3ba;
}

body[data-sf-theme="didipart"] .product-card .add-to-cart.purchase-cta-btn {
  width: auto;
  min-width: 37px;
  padding-inline: 10px;
  font-size: 11px;
  white-space: nowrap;
}

body[data-sf-theme="didipart"] .product-card .add-to-cart {
  text-decoration: none;
}

/* ── Product detail ── */
body[data-sf-theme="didipart"] .product-detail-grid.product-main,
body[data-sf-theme="didipart"] .didipart-product-page .product-main {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  gap: 1.25rem;
  align-items: start;
}

body[data-sf-theme="didipart"] .didipart-product-page .product-page__gallery,
body[data-sf-theme="didipart"] .didipart-product-page .gallery-stage,
body[data-sf-theme="didipart"] .didipart-product-page .product-buy-panel,
body[data-sf-theme="didipart"] .didipart-product-page .product-summary {
  background: #fff;
  border: 1px solid var(--border, #e1e7ef);
  border-radius: 14px;
  padding: 1rem;
}

body[data-sf-theme="didipart"] .didipart-product-page .nav-tabs {
  gap: 6px;
  border-bottom: 1px solid var(--border, #e1e7ef);
  margin-bottom: 1rem;
}

body[data-sf-theme="didipart"] .didipart-product-page .nav-tabs .nav-link {
  border: 0;
  border-radius: 10px;
  color: #5d6879;
  font-size: 13px;
  padding: 0.55rem 0.9rem;
}

body[data-sf-theme="didipart"] .didipart-product-page .nav-tabs .nav-link.active {
  color: #fff;
  background: var(--didipart-brand);
}

body[data-sf-theme="didipart"] .related-products-grid,
body[data-sf-theme="didipart"] .didipart-related-products .product-listing-grid,
body[data-sf-theme="didipart"] .didipart-related-products .catalog-grid,
body[data-sf-theme="didipart"] .didipart-related-products .row {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
  gap: 14px;
}

body[data-sf-theme="didipart"] .didipart-related-products .row > [class*="col-"] {
  width: auto !important;
  max-width: none !important;
  padding: 0 !important;
}

body[data-sf-theme="didipart"] .didipart-related-products .swiper-slide {
  width: 228px;
  height: auto;
}

/* ── Home product carousels (core partials → Didipart sizing) ── */
body[data-sf-theme="didipart"] .home-product-section,
body[data-sf-theme="didipart"] .product-listing-block,
body[data-sf-theme="didipart"] .deals-arena,
body[data-sf-theme="didipart"] .didipart-home-section {
  margin-top: 28px;
}

body[data-sf-theme="didipart"] .home-section-header__title,
body[data-sf-theme="didipart"] .deals-arena__title {
  color: var(--didipart-brand);
  font-size: clamp(1.15rem, 2vw, 1.45rem);
  font-weight: 700;
}

body[data-sf-theme="didipart"] .home-product-swiper .swiper-slide,
body[data-sf-theme="didipart"] .product-listing-swiper .swiper-slide,
body[data-sf-theme="didipart"] .deals-arena-swiper .swiper-slide {
  width: 228px;
  height: auto;
  box-sizing: border-box;
}

body[data-sf-theme="didipart"] .deals-arena-swiper .swiper-slide,
body[data-sf-theme="didipart"] .amazing-swiper .swiper-slide {
  width: 284px;
}

body[data-sf-theme="didipart"] .home-product-swiper .product-card,
body[data-sf-theme="didipart"] .product-listing-swiper .product-card,
body[data-sf-theme="didipart"] .deals-arena-swiper .product-card {
  width: 100%;
}

body[data-sf-theme="didipart"] .home-product-nav,
body[data-sf-theme="didipart"] .swiper-button-prev,
body[data-sf-theme="didipart"] .swiper-button-next {
  color: var(--didipart-brand);
}

body[data-sf-theme="didipart"] .deals-arena {
  position: relative;
  overflow: hidden;
  padding-block: 28px;
  background: linear-gradient(135deg, color-mix(in srgb, var(--didipart-brand) 76%, #000) 0%, var(--didipart-brand) 55%, color-mix(in srgb, var(--didipart-brand) 84%, #fff) 100%);
  border-radius: 0;
}

body[data-sf-theme="didipart"] .deals-arena__backdrop {
  display: none;
}

body[data-sf-theme="didipart"] .deals-arena__title,
body[data-sf-theme="didipart"] .deals-arena__lead,
body[data-sf-theme="didipart"] .deals-arena__live,
body[data-sf-theme="didipart"] .deals-arena__view-all {
  color: #fff;
}

body[data-sf-theme="didipart"] .deals-arena .product-card-deal,
body[data-sf-theme="didipart"] .deals-arena .product-card-v2 {
  background: #fff;
  border: 1px solid var(--border, #e1e7ef);
  border-radius: 11px;
  padding: 14px;
  height: 368px;
  display: flex;
  flex-direction: column;
}

body[data-sf-theme="didipart"] .contact-layout {
  display: grid;
  grid-template-columns: minmax(260px, 340px) 1fr;
  gap: 1.25rem;
  align-items: start;
}

body[data-sf-theme="didipart"] .shop-wc-page__body .shop-wc-loading {
  padding: 2rem;
  text-align: center;
  color: #7a8494;
}

body[data-sf-theme="didipart"] .soft-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0.65rem 1rem;
  border-radius: 12px;
  background: #eef3fb;
  color: var(--didipart-brand);
  text-decoration: none;
  font-size: 13px;
  border: 0;
}

/* Core cart-page-v3 must win over Didipart mockup cart rules in internal.css */
body[data-sf-theme="didipart"] .cart-page-v3 .cart-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.4fr) minmax(260px, 340px) !important;
  gap: 1.25rem !important;
  align-items: start;
}

body[data-sf-theme="didipart"] .cart-page-v3 .cart-item {
  display: grid !important;
  grid-template-columns: 92px minmax(0, 1fr) auto !important;
  gap: 14px !important;
  align-items: center;
  padding: 14px 0 !important;
  border-bottom: 1px solid #edf1f5;
}

body[data-sf-theme="didipart"] .cart-page-v3 .cart-card,
body[data-sf-theme="didipart"] .cart-page-v3 .cart-summary {
  background: #fff;
  border: 1px solid var(--border, #e1e7ef);
  border-radius: 14px;
  padding: 1rem 1.15rem;
}

body[data-sf-theme="didipart"] .wishlist-grid .shop-wc-grid,
body[data-sf-theme="didipart"] .shop-wc-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 14px;
}

body[data-sf-theme="didipart"] .shop-wc-card {
  background: #fff;
  border: 1px solid var(--border, #e1e7ef);
  border-radius: 14px;
  overflow: hidden;
}

@media (max-width: 900px) {
  body[data-sf-theme="didipart"] .cart-page-v3 .cart-layout {
    grid-template-columns: 1fr !important;
  }
}

body[data-sf-theme="didipart"] .accent-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 22px;
  border-radius: 10px;
  background: var(--didipart-accent);
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  border: 0;
}

body[data-sf-theme="didipart"] .outline-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 18px;
  border-radius: 10px;
  border: 1px solid var(--border, #e1e7ef);
  background: #fff;
  color: var(--didipart-brand);
  text-decoration: none;
}

body[data-sf-theme="didipart"] .card-surface {
  background: #fff;
  border: 1px solid var(--border, #e1e7ef);
  border-radius: 14px;
}

body[data-sf-theme="didipart"] .pagination-wrapper .pagination {
  justify-content: center;
  gap: 6px;
  flex-wrap: wrap;
}

body[data-sf-theme="didipart"] .pagination-wrapper .page-link {
  border-radius: 10px;
  color: var(--didipart-brand);
  border-color: var(--border, #e1e7ef);
}

body[data-sf-theme="didipart"] .pagination-wrapper .page-item.active .page-link {
  background: var(--didipart-brand);
  border-color: var(--didipart-brand);
  color: #fff;
}

/* Bootstrap utility leftovers that break Didipart spacing */
body[data-sf-theme="didipart"] .didipart-archive .row.g-4 {
  --bs-gutter-x: 1rem;
  --bs-gutter-y: 1rem;
}

@media (max-width: 1100px) {
  body[data-sf-theme="didipart"] .catalog-layout.products-layout-with-filters,
  body[data-sf-theme="didipart"] .catalog-layout {
    grid-template-columns: 235px minmax(0, 1fr);
  }

  body[data-sf-theme="didipart"] .catalog-grid,
  body[data-sf-theme="didipart"] .products-grid.catalog-grid,
  body[data-sf-theme="didipart"] .products-grid-skeleton.row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 992px) {
  body[data-sf-theme="didipart"] .product-detail-grid.product-main,
  body[data-sf-theme="didipart"] .didipart-product-page .product-main {
    grid-template-columns: 1fr;
  }

  body[data-sf-theme="didipart"] .catalog-layout.products-layout-with-filters,
  body[data-sf-theme="didipart"] .catalog-layout {
    grid-template-columns: 1fr;
  }

  body[data-sf-theme="didipart"] .products-filters-sidebar {
    position: fixed;
    inset: 0 0 0 auto;
    top: 0;
    z-index: 1050;
    width: min(320px, 92vw) !important;
    max-height: 100dvh;
    overflow: auto;
    border-radius: 0;
    transform: translateX(110%);
    transition: transform .25s ease;
  }

  body[data-sf-theme="didipart"].products-filters-open .products-filters-sidebar,
  body[data-sf-theme="didipart"] .products-filters-sidebar.is-open {
    transform: none;
  }

  body[data-sf-theme="didipart"] .products-filters-overlay {
    position: fixed;
    inset: 0;
    z-index: 1040;
    background: rgba(15, 23, 42, 0.45);
  }

  body[data-sf-theme="didipart"] .products-filters-sidebar .products-filters-sidebar__close {
    display: inline-flex;
  }
}

@media (max-width: 900px) {
  body[data-sf-theme="didipart"] .contact-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  body[data-sf-theme="didipart"] .catalog-grid,
  body[data-sf-theme="didipart"] .products-grid.catalog-grid,
  body[data-sf-theme="didipart"] .products-grid-skeleton.row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  body[data-sf-theme="didipart"] .catalog-grid .product-card {
    height: 302px;
    padding: 9px;
  }

  body[data-sf-theme="didipart"] .home-product-swiper .swiper-slide,
  body[data-sf-theme="didipart"] .product-listing-swiper .swiper-slide {
    width: 168px;
  }

  body[data-sf-theme="didipart"] .deals-arena-swiper .swiper-slide {
    width: 210px;
  }
}

/* ── Product filters (modern-ui skipped for didipart) ── */
body[data-sf-theme="didipart"] .product-filter-block {
  margin-bottom: 12px;
  background: #fff;
  border: 1px solid var(--border, #e1e7ef);
  border-radius: 12px;
  overflow: hidden;
}

body[data-sf-theme="didipart"] .product-filter-block .card-header,
body[data-sf-theme="didipart"] .product-filter-block__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 10px 12px;
  background: #f7f9fc !important;
  border-bottom: 1px solid var(--border, #e1e7ef);
}

body[data-sf-theme="didipart"] .product-filter-block__head .product-filter-collapse-btn {
  flex-shrink: 0;
  width: 1.75rem;
  height: 1.75rem;
  padding: 0;
  border: 0;
  background: #eef3fb;
  color: #5d6879;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

body[data-sf-theme="didipart"] .product-filter-block.is-collapsed .product-filter-block__body {
  display: none;
}

body[data-sf-theme="didipart"] .product-filter-block__body {
  padding: 10px 12px 12px;
}

body[data-sf-theme="didipart"] .product-filter-terms-scroll {
  max-height: 11.5rem;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: thin;
}

body[data-sf-theme="didipart"] .product-filter-term-item {
  margin-bottom: 0.35rem;
}

body[data-sf-theme="didipart"] .product-filter-term-item .form-check-label {
  font-size: 13px;
  cursor: pointer;
}

body[data-sf-theme="didipart"] .products-filters-sidebar__close {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  z-index: 2;
  width: 2.25rem;
  height: 2.25rem;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #eef3fb;
  color: #324258;
  display: none;
  align-items: center;
  justify-content: center;
  font-size: 1.35rem;
  cursor: pointer;
}

body[data-sf-theme="didipart"] .products-filters-sidebar__head.card {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent;
  margin-bottom: 0.75rem !important;
}

body[data-sf-theme="didipart"].products-filters-open {
  overflow: hidden;
}

@media (max-width: 991.98px) {
  body[data-sf-theme="didipart"] .products-filters-sidebar .products-filters-sidebar__close {
    display: inline-flex;
  }

  body[data-sf-theme="didipart"] .products-filters-sidebar .products-filters-sidebar__head {
    padding-top: 2.25rem;
  }
}

/* ── Home: Didipart-native sections ── */
body[data-sf-theme="didipart"] .didipart-home-section {
  display: contents;
}

body[data-sf-theme="didipart"] .categories-section .category-card h3,
body[data-sf-theme="didipart"] .categories-section .category-card .category-icon,
body[data-sf-theme="didipart"] .categories-section .category-card .arrow {
  display: none !important;
}

body[data-sf-theme="didipart"] .category-showcase__products--swiper {
  display: block !important;
  min-width: 0;
  position: relative;
}

body[data-sf-theme="didipart"] .category-showcase__products--swiper .home-product-swiper-wrap {
  position: relative;
  padding-inline: 36px;
}

body[data-sf-theme="didipart"] .category-showcase__products--swiper .home-product-swiper .swiper-slide {
  height: auto;
  width: 210px;
}

body[data-sf-theme="didipart"] .category-showcase__products--swiper .product-card {
  width: 100%;
  height: 300px;
}

body[data-sf-theme="didipart"] .category-showcase__products--swiper .product-card--amazing {
  height: 300px;
  padding: 11px;
}

body[data-sf-theme="didipart"] .category-showcase__products--swiper .product-card--amazing .product-card__top {
  min-height: 28px;
}

body[data-sf-theme="didipart"] .category-showcase__products--swiper .product-card--amazing .countdown {
  display: none;
}

body[data-sf-theme="didipart"] .category-showcase__tabs .home-cattabs__tab.is-active,
body[data-sf-theme="didipart"] .category-showcase__tabs button.is-active {
  color: #fff;
  background: var(--didipart-brand, #073e9f);
  border-color: var(--didipart-brand, #073e9f);
  box-shadow: 0 8px 18px rgba(7, 62, 159, .18);
}

body[data-sf-theme="didipart"] .category-showcase__tabs .home-cattabs__tab.is-active small,
body[data-sf-theme="didipart"] .category-showcase__tabs button.is-active small {
  color: rgba(255,255,255,.72);
}

body[data-sf-theme="didipart"] .category-showcase__tabs .home-cattabs__tab.is-active::after,
body[data-sf-theme="didipart"] .category-showcase__tabs button.is-active::after {
  opacity: 1;
}

body[data-sf-theme="didipart"] .home-cattabs__loading {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  background: rgba(255,255,255,.72);
  z-index: 5;
  font-size: 13px;
  color: #5d6879;
}

body[data-sf-theme="didipart"] .home-cattabs__loading.d-none {
  display: none !important;
}

body[data-sf-theme="didipart"] .amazing-section .product-card--amazing {
  width: 100%;
}

body[data-sf-theme="didipart"] .new-products-section .product-card--simple {
  width: 100%;
}

/* Core home leftovers that can still appear (attribute showcase etc.) */
body[data-sf-theme="didipart"] .home-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}

body[data-sf-theme="didipart"] .home-section-header__title {
  margin: 0;
  color: var(--didipart-brand, #073e9f);
  font-size: 1.25rem;
  font-weight: 700;
}

body[data-sf-theme="didipart"] .home-banner-strip,
body[data-sf-theme="didipart"] .home-slider {
  margin: 0;
}

body[data-sf-theme="didipart"] .home-slider .swiper-slide img,
body[data-sf-theme="didipart"] .home-slider .slider-image {
  width: 100%;
  display: block;
  object-fit: cover;
  max-height: 420px;
}

body[data-sf-theme="didipart"] .home-categories-section,
body[data-sf-theme="didipart"] .deals-arena,
body[data-sf-theme="didipart"] .home-latest-section:not(.category-showcase) {
  /* hide stale core shells if somehow still rendered */
}

body[data-sf-theme="didipart"] .category-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: 10px;
}

/* ── Footer social networks: icon-only, accessible and platform-correct ── */
body[data-sf-theme="didipart"] .didipart-footer .footer-socials {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  margin-top: 4px;
}

body[data-sf-theme="didipart"] .didipart-footer .footer-social-link {
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  color: var(--primary-800, #073e9f);
  background: #f4f7fb;
  border: 1px solid var(--border, #e1e7ef);
  border-radius: 10px;
  text-decoration: none;
  transition: color .18s ease, background-color .18s ease, border-color .18s ease, transform .18s ease;
}

body[data-sf-theme="didipart"] .didipart-footer .footer-social-link i {
  font-size: 21px;
  line-height: 1;
}

body[data-sf-theme="didipart"] .didipart-footer .footer-social-link:hover,
body[data-sf-theme="didipart"] .didipart-footer .footer-social-link:focus-visible {
  color: #fff;
  background: var(--primary-700, #084bbd);
  border-color: var(--primary-700, #084bbd);
  transform: translateY(-2px);
}



/* Didipart v1.0.4 stability and UI pass */

/* Account dropdown — same information architecture as legacy-default, Didipart visuals. */
body[data-sf-theme="didipart"] .menuuser--didipart,
body[data-sf-theme="didipart"] .menuuser--didipart > .dropdown {
  display: inline-flex;
  position: relative;
}
body[data-sf-theme="didipart"] .didipart-account-toggle {
  min-height: 42px;
  gap: 8px;
  cursor: pointer;
  border: 1px solid var(--didipart-brand, #073e9f);
  border-radius: 9px;
  box-shadow: 0 6px 14px rgba(7, 62, 159, .14);
  background: var(--didipart-brand, #073e9f);
  color: #fff;
  white-space: nowrap;
}
body[data-sf-theme="didipart"] .didipart-account-toggle::after { display: none !important; }
body[data-sf-theme="didipart"] .didipart-account-toggle:hover,
body[data-sf-theme="didipart"] .didipart-account-toggle:focus-visible {
  color: #fff;
  background: var(--primary-900, #052f78);
  border-color: var(--primary-900, #052f78);
  outline: none;
}
body[data-sf-theme="didipart"] .didipart-account-icon { width: 20px; height: 20px; }
body[data-sf-theme="didipart"] .didipart-account-chevron {
  width: 15px;
  height: 15px;
  transform: rotate(90deg);
  transition: transform .2s ease;
}
body[data-sf-theme="didipart"] .menuuser--didipart .dropdown.show .didipart-account-chevron {
  transform: rotate(-90deg);
}
body[data-sf-theme="didipart"] .didipart-account-menu {
  inset-inline-start: auto !important;
  inset-inline-end: 0 !important;
  min-width: 250px;
  margin-top: 10px !important;
  padding: 8px;
  direction: rtl;
  text-align: right;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, .09);
  border-radius: 14px;
  box-shadow: 0 18px 45px rgba(15, 23, 42, .15);
  z-index: 1090;
}
body[data-sf-theme="didipart"] .didipart-account-menu .dropdown-header {
  padding: 8px 10px;
  color: #172033;
  font-weight: 700;
}
body[data-sf-theme="didipart"] .didipart-account-menu .dropdown-divider {
  margin: 5px 0;
  border-color: rgba(15, 23, 42, .08);
}
body[data-sf-theme="didipart"] .didipart-account-menu .dropdown-item {
  min-height: 42px;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 8px 10px;
  color: #334155;
  border-radius: 9px;
  font-size: 13px;
  line-height: 1.4;
}
body[data-sf-theme="didipart"] .didipart-account-menu .dropdown-item i {
  margin: 0 !important;
  font-size: 18px;
  color: #64748b !important;
}
body[data-sf-theme="didipart"] .didipart-account-menu .dropdown-item:hover,
body[data-sf-theme="didipart"] .didipart-account-menu .dropdown-item:focus {
  color: var(--didipart-brand, #073e9f);
  background: rgba(7, 62, 159, .07);
}
body[data-sf-theme="didipart"] .didipart-account-menu .dropdown-item:hover i,
body[data-sf-theme="didipart"] .didipart-account-menu .dropdown-item:focus i {
  color: var(--didipart-brand, #073e9f) !important;
}
body[data-sf-theme="didipart"] .mobile-menu__account-link {
  display: flex !important;
  align-items: center;
  gap: 9px;
}
body[data-sf-theme="didipart"] .mobile-menu__account-link i { font-size: 18px; }

/* Product detail tabs: never inherit the old homepage demo flex rule. */
body[data-sf-theme="didipart"] .didipart-product-page .product-tabs-card {
  padding: 0;
  overflow: hidden;
}
body[data-sf-theme="didipart"] .didipart-product-page .product-page__tabs.product-tabs {
  display: block !important;
  width: 100%;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible;
}
body[data-sf-theme="didipart"] .didipart-product-page .product-tabs__head {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
  border-bottom: 1px solid #e5eaf1;
  background: #fff;
}
body[data-sf-theme="didipart"] .didipart-product-page .product-page__tab-nav {
  display: flex;
  flex-wrap: nowrap;
  width: max-content;
  min-width: 100%;
  margin: 0 !important;
  padding: 0 12px;
  border-bottom: 0;
  gap: 4px;
}
body[data-sf-theme="didipart"] .didipart-product-page .product-page__tab-nav .nav-item {
  flex: 0 0 auto;
}
body[data-sf-theme="didipart"] .didipart-product-page .product-page__tab-nav .nav-link {
  min-height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0 17px;
  border: 0;
  border-bottom: 3px solid transparent;
  border-radius: 0;
  background: transparent;
  color: #64748b;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}
body[data-sf-theme="didipart"] .didipart-product-page .product-page__tab-nav .nav-link:hover {
  color: var(--didipart-brand, #073e9f);
}
body[data-sf-theme="didipart"] .didipart-product-page .product-page__tab-nav .nav-link.active {
  color: var(--didipart-brand, #073e9f);
  background: transparent;
  border-bottom-color: var(--didipart-brand, #073e9f);
}
body[data-sf-theme="didipart"] .didipart-product-page .product-tabs__content {
  display: block !important;
  width: 100%;
  min-width: 0;
  padding: 20px 22px 22px;
  color: #334155;
  line-height: 1.9;
}
body[data-sf-theme="didipart"] .didipart-product-page .product-tabs__content .tab-pane {
  width: 100%;
  min-width: 0;
}
body[data-sf-theme="didipart"] .didipart-product-page .description-content :first-child { margin-top: 0; }
body[data-sf-theme="didipart"] .didipart-product-page .description-content :last-child { margin-bottom: 0; }
body[data-sf-theme="didipart"] .didipart-product-page .specs-table .table-responsive {
  border: 1px solid #e6ebf2;
  border-radius: 12px;
  overflow: auto;
}

/* Archive list mode keeps its horizontal Bootstrap-free layout. */
body[data-sf-theme="didipart"] .catalog-grid.is-list .product-card {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr) 170px;
  grid-template-rows: auto 1fr;
  gap: 0 18px;
  height: auto !important;
  min-height: 210px !important;
  padding: 18px;
}
body[data-sf-theme="didipart"] .catalog-grid.is-list .product-card__image {
  grid-column: 1;
  grid-row: 1 / 3;
  height: 175px !important;
  margin: 0;
}

/* Pagination: correct arrow hierarchy and consistent touch targets. */
body[data-sf-theme="didipart"] .pager { margin-top: 24px; }
body[data-sf-theme="didipart"] .pager .pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 7px;
  padding: 0;
  margin: 0;
}
body[data-sf-theme="didipart"] .pager .page-item { margin: 0; }
body[data-sf-theme="didipart"] .pager .page-link {
  min-width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 10px;
  border: 1px solid #dfe6ef;
  border-radius: 10px !important;
  background: #fff;
  color: #475569;
  font-size: 13px;
  line-height: 1;
  box-shadow: none;
}
body[data-sf-theme="didipart"] .pager .page-link:hover,
body[data-sf-theme="didipart"] .pager .page-link:focus {
  color: var(--didipart-brand, #073e9f);
  border-color: rgba(7,62,159,.3);
  background: rgba(7,62,159,.06);
}
body[data-sf-theme="didipart"] .pager .page-item.active .page-link {
  color: #fff;
  border-color: var(--didipart-brand, #073e9f);
  background: var(--didipart-brand, #073e9f);
  box-shadow: 0 6px 15px rgba(7,62,159,.2);
}
body[data-sf-theme="didipart"] .pager .first .page-link,
body[data-sf-theme="didipart"] .pager .prev .page-link,
body[data-sf-theme="didipart"] .pager .next .page-link,
body[data-sf-theme="didipart"] .pager .last .page-link {
  font-size: 20px;
  font-family: Arial, sans-serif;
}

@media (max-width: 900px) {
  body[data-sf-theme="didipart"] .didipart-account-label { display: none; }
  body[data-sf-theme="didipart"] .didipart-account-toggle { min-width: 42px; padding-inline: 9px; justify-content: center; }
  body[data-sf-theme="didipart"] .didipart-account-chevron { display: none; }
  body[data-sf-theme="didipart"] .didipart-account-menu { min-width: 235px; }
  body[data-sf-theme="didipart"] .product-card__image,
  body[data-sf-theme="didipart"] .product-card--simple .product-card__image { height: 156px; }
  body[data-sf-theme="didipart"] .catalog-grid .product-card { height: 350px; min-height: 350px; }
  body[data-sf-theme="didipart"] .catalog-grid .product-card__image { height: 158px; }
}

@media (max-width: 640px) {
  body[data-sf-theme="didipart"] .menuuser--didipart { display: none !important; }
  body[data-sf-theme="didipart"] .catalog-grid.is-list .product-card {
    grid-template-columns: 112px minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    gap: 8px 12px;
    min-height: 150px !important;
    padding: 12px;
  }
  body[data-sf-theme="didipart"] .catalog-grid.is-list .product-card__image {
    grid-column: 1;
    grid-row: 1 / 4;
    height: 126px !important;
  }
  body[data-sf-theme="didipart"] .catalog-grid.is-list .product-card h3,
  body[data-sf-theme="didipart"] .catalog-grid.is-list .product-card__prices,
  body[data-sf-theme="didipart"] .catalog-grid.is-list .product-card__actions {
    grid-column: 2;
    width: 100%;
  }
  body[data-sf-theme="didipart"] .didipart-product-page .product-tabs__content { padding: 16px 14px 18px; }
  body[data-sf-theme="didipart"] .didipart-product-page .product-page__tab-nav { padding-inline: 6px; }
  body[data-sf-theme="didipart"] .didipart-product-page .product-page__tab-nav .nav-link { min-height: 46px; padding-inline: 13px; font-size: 12px; }
  body[data-sf-theme="didipart"] .product-card--simple { height: 316px; }
  body[data-sf-theme="didipart"] .product-card__image,
  body[data-sf-theme="didipart"] .product-card--simple .product-card__image { height: 140px; }
  body[data-sf-theme="didipart"] .catalog-grid .product-card { height: 326px; min-height: 326px; }
  body[data-sf-theme="didipart"] .catalog-grid .product-card__image { height: 142px; }
  body[data-sf-theme="didipart"] .related-products-grid .product-card { height: 318px; min-height: 318px; }
  body[data-sf-theme="didipart"] .related-products-grid .product-card__image { height: 138px; }
  body[data-sf-theme="didipart"] .slider-nav { width: 36px; height: 36px; border-radius: 10px; }
  body[data-sf-theme="didipart"] .product-slider-shell .slider-nav--next,
  body[data-sf-theme="didipart"] .blog-small-wrap .slider-nav--next { left: 2px; }
  body[data-sf-theme="didipart"] .product-slider-shell .slider-nav--prev,
  body[data-sf-theme="didipart"] .blog-small-wrap .slider-nav--prev { right: 2px; }
}

@media (max-width: 420px) {
  body[data-sf-theme="didipart"] .catalog-grid .product-card { height: 315px; min-height: 315px; }
  body[data-sf-theme="didipart"] .catalog-grid .product-card__image { height: 132px; }
  body[data-sf-theme="didipart"] .pager .page-link { min-width: 35px; height: 35px; padding-inline: 8px; }
}


/* Generic content pages should not reserve a column for removed demo artwork. */
body[data-sf-theme="didipart"] .about-story--no-image { grid-template-columns: minmax(0, 1fr); }
body[data-sf-theme="didipart"] .about-story--no-image .about-story__content { max-width: 900px; }

/* =========================================================
   Didipart v1.0.5 — integration, responsive and content pass
   ========================================================= */

/* Search dialog: markup has two fields (query + submit), not three columns. */
body[data-sf-theme="didipart"] .search-modal__dialog {
  width: min(900px, calc(100% - 28px));
  max-width: 900px;
}
body[data-sf-theme="didipart"] .search-modal__bar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 132px;
  gap: 10px;
  align-items: center;
}
body[data-sf-theme="didipart"] .search-modal__bar .search-input-wrap {
  min-width: 0;
  width: 100%;
}
body[data-sf-theme="didipart"] .search-modal__bar .search-submit {
  width: 132px;
  min-width: 0;
  padding-inline: 12px;
}
body[data-sf-theme="didipart"] .search-modal__content {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
}
body[data-sf-theme="didipart"] .keyword-list a,
body[data-sf-theme="didipart"] .keyword-list button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0 13px;
  color: #43536a;
  background: #fff;
  border: 1px solid #e1e8f2;
  border-radius: 18px;
  font-size: 11px;
  line-height: 1.4;
  text-decoration: none;
}
body[data-sf-theme="didipart"] .keyword-list a:hover,
body[data-sf-theme="didipart"] .keyword-list a:focus-visible,
body[data-sf-theme="didipart"] .keyword-list button:hover,
body[data-sf-theme="didipart"] .keyword-list button:focus-visible {
  color: var(--didipart-brand, #073e9f);
  border-color: rgba(7, 62, 159, .25);
  background: rgba(7, 62, 159, .06);
}
body[data-sf-theme="didipart"] .quick-suggestions a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: #3f4d63;
  border: 1px solid #e1e8f2;
  text-decoration: none;
}

/* Category strip: image and name each own real space; names never sit behind images. */
body[data-sf-theme="didipart"] .categories-wrap {
  padding-top: 12px;
}
body[data-sf-theme="didipart"] .categories-swiper {
  padding: 8px 2px 12px !important;
  overflow: hidden;
}
body[data-sf-theme="didipart"] .category-card {
  display: flex !important;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  gap: 7px;
  height: 150px !important;
  padding: 10px 9px 9px !important;
  overflow: hidden !important;
  background: #fff;
  border: 1px solid #dce5ef;
  border-radius: 13px;
}
body[data-sf-theme="didipart"] .category-card img {
  position: static !important;
  inset: auto !important;
  flex: 0 0 auto;
  width: 100% !important;
  height: 100px !important;
  margin: 0 auto !important;
  transform: none !important;
  object-fit: contain;
  object-position: center;
  background: #fff;
  border-radius: 9px;
}
body[data-sf-theme="didipart"] .category-card:hover img {
  transform: scale(1.035) !important;
}
body[data-sf-theme="didipart"] .category-card span,
body[data-sf-theme="didipart"] .category-card__name {
  display: -webkit-box !important;
  flex: 0 0 auto;
  min-height: 32px !important;
  margin: 0 !important;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: var(--didipart-brand, #073e9f) !important;
  font-size: 11.5px !important;
  font-weight: 800;
  line-height: 1.45 !important;
  text-align: center;
  overflow-wrap: anywhere;
}

/* Product detail: keep information on the right and gallery on the left in RTL. */
@media (min-width: 993px) {
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-detail-grid.product-main {
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr) !important;
    gap: 28px !important;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-summary {
    grid-column: 1;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-gallery {
    grid-column: 2;
  }
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .gallery-stage {
  background: #fff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 18px !important;
  padding: 18px !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .gallery-stage .product-page__gallery-main-img {
  width: 100%;
  height: 100%;
  object-fit: contain !important;
  object-position: center;
  border-radius: 10px;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .gallery-thumb img {
  object-fit: contain !important;
  background: #fff;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-summary {
  padding: 22px !important;
  border-color: #e2e8f0;
  box-shadow: 0 8px 26px rgba(15, 23, 42, .045);
}

/* Product/article rich text: preserve semantic HTML pasted from the editor. */
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content,
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__short,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2 .text {
  max-width: 100%;
  overflow-x: auto;
  color: #334155;
  font-size: 14px;
  line-height: 2;
  overflow-wrap: anywhere;
  word-break: normal;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content p,
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__short p,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text p,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2 .text p {
  margin: 0 0 1rem !important;
  line-height: 2 !important;
  text-align: start !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content h1,
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content h2,
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content h3,
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content h4,
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content h5,
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content h6,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text h1,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text h2,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text h3,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text h4,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text h5,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text h6 {
  margin: 1.7em 0 .65em !important;
  color: #172033 !important;
  font-weight: 900 !important;
  line-height: 1.55 !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content h1,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text h1 { font-size: 1.65rem !important; }
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content h2,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text h2 { font-size: 1.4rem !important; }
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content h3,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text h3 { font-size: 1.2rem !important; }
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content h4,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text h4 { font-size: 1.05rem !important; }
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content h5,
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content h6,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text h5,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text h6 { font-size: .95rem !important; }

body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content ul,
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__short ul,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text ul {
  display: block;
  margin: 0 0 1rem !important;
  padding-inline-start: 1.6rem !important;
  list-style: disc outside !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content ol,
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__short ol,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text ol {
  display: block;
  margin: 0 0 1rem !important;
  padding-inline-start: 1.8rem !important;
  list-style: decimal outside !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content li,
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__short li,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text li {
  display: list-item !important;
  margin: .3rem 0 !important;
  line-height: 1.9 !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content ul ul,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text ul ul { list-style-type: circle !important; }
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content ol ol,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text ol ol { list-style-type: lower-alpha !important; }

body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content a,
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__short a,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text a {
  color: var(--didipart-brand, #073e9f) !important;
  font-weight: 700;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content strong,
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content b,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text strong,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text b {
  color: #1e293b;
  font-weight: 900;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content em,
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content i,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text em,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text i {
  font-style: italic;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content hr,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text hr {
  margin: 1.6rem 0;
  border: 0;
  border-top: 1px solid #e2e8f0;
  opacity: 1;
}

body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content dl,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text dl {
  margin: 0 0 1rem !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content dt,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text dt {
  margin-top: .75rem;
  color: #1e293b;
  font-weight: 800;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content dd,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text dd {
  margin: .2rem 1rem .7rem 0;
  color: #475569;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content mark,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text mark {
  padding: .08em .28em;
  border-radius: 4px;
  background: #fff1b8;
  color: inherit;
}

body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content blockquote,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text blockquote {
  margin: 1.25rem 0 !important;
  padding: 1rem 1.15rem !important;
  border: 0 !important;
  border-inline-start: 4px solid var(--didipart-brand, #073e9f) !important;
  border-radius: 11px;
  background: rgba(7, 62, 159, .055) !important;
  color: #334155 !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content table,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text table {
  width: 100% !important;
  min-width: 560px;
  margin: 1.2rem 0 !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  background: #fff;
  border: 1px solid #dfe6ef !important;
  border-radius: 0 !important;
  font-size: 13px !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content th,
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content td,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text th,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text td {
  padding: 11px 13px !important;
  border: 1px solid #dfe6ef !important;
  text-align: start !important;
  vertical-align: top !important;
  line-height: 1.75 !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content caption,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text caption {
  padding: .65rem .8rem;
  color: #475569;
  font-weight: 700;
  text-align: start;
  caption-side: top;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content th,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text th {
  background: #f5f8fc !important;
  color: #1e293b !important;
  font-weight: 800 !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content img,
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content figure img,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text img {
  display: block;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 480px !important;
  margin: 1.25rem auto !important;
  object-fit: contain !important;
  border-radius: 12px;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content img,
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content figure img {
  max-height: none !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content figure,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text figure {
  max-width: 100%;
  margin: 1.25rem 0 !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content figcaption,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text figcaption {
  margin-top: -.65rem;
  color: #64748b;
  font-size: 12px;
  text-align: center;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content pre,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text pre {
  max-width: 100%;
  overflow: auto;
  padding: 1rem;
  direction: ltr;
  text-align: left;
  border-radius: 10px;
  background: #0f172a;
  color: #e2e8f0;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content code,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text code {
  padding: .12em .35em;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: .92em;
  direction: ltr;
  unicode-bidi: isolate;
  border-radius: 5px;
  background: #f1f5f9;
  color: #0f172a;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content pre code,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text pre code {
  padding: 0;
  background: transparent;
  color: inherit;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content kbd,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text kbd {
  display: inline-block;
  padding: .08em .42em;
  border: 1px solid #cbd5e1;
  border-bottom-width: 2px;
  border-radius: 5px;
  background: #fff;
  color: #1e293b;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: .88em;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content del,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text del {
  color: #64748b;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content ins,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text ins {
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content > :last-child,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text > :last-child {
  margin-bottom: 0 !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content iframe,
body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content video,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text iframe,
body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text video {
  display: block;
  width: 100%;
  max-width: 100%;
  min-height: 280px;
  margin: 1.25rem 0;
  border: 0;
  border-radius: 12px;
}

/* Product lists line up cleanly instead of creating uneven auto-fill columns. */
body[data-sf-theme="didipart"] .related-products-grid.catalog-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch;
}
body[data-sf-theme="didipart"] .catalog-grid .product-card,
body[data-sf-theme="didipart"] .related-products-grid .product-card {
  width: 100%;
  max-width: none;
}

/* Panel is Bootstrap UI. Restore Bootstrap semantics inside panel content while
   Didipart keeps full control over its header/footer chrome. */
body.panel-page[data-sf-theme="didipart"] .panel-main .row {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
}
body.panel-page[data-sf-theme="didipart"] .panel-main .dropdown-menu {
  position: absolute;
}
body.panel-page[data-sf-theme="didipart"] .panel-main .table {
  width: 100%;
  margin-bottom: 1rem;
}
body.panel-page[data-sf-theme="didipart"] .panel-main .btn {
  font-family: inherit;
}
body.panel-page[data-sf-theme="didipart"] .panel-main .form-control,
body.panel-page[data-sf-theme="didipart"] .panel-main .form-select {
  max-width: 100%;
}

@media (max-width: 1199.98px) {
  body[data-sf-theme="didipart"] .related-products-grid.catalog-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 991.98px) {
  body[data-sf-theme="didipart"] .category-showcase__layout {
    grid-template-columns: 180px minmax(0, 1fr);
  }
  body[data-sf-theme="didipart"] .category-showcase__products .home-product-swiper-wrap {
    padding-inline: 24px !important;
  }
  body[data-sf-theme="didipart"] .related-products-grid.catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 767.98px) {
  body[data-sf-theme="didipart"] .search-modal__bar {
    grid-template-columns: minmax(0, 1fr) 110px;
  }
  body[data-sf-theme="didipart"] .search-modal__bar .search-submit {
    width: 110px;
  }
  body[data-sf-theme="didipart"] .category-card {
    height: 138px !important;
  }
  body[data-sf-theme="didipart"] .category-card img {
    height: 90px !important;
  }
  body[data-sf-theme="didipart"] .category-showcase__layout {
    grid-template-columns: 1fr;
  }
  body[data-sf-theme="didipart"] .category-showcase__products .home-product-swiper-wrap {
    padding-inline: 22px !important;
  }
  body[data-sf-theme="didipart"] .category-showcase__products .product-card {
    height: 320px !important;
    min-height: 320px !important;
  }
  body[data-sf-theme="didipart"] .category-showcase__products .product-card__image {
    height: 154px !important;
    min-height: 154px;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-summary {
    padding: 16px !important;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content table,
  body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text table {
    min-width: 520px;
  }
}

/* 1.0.16 — final corrections from live QA */
body[data-sf-theme="didipart"] .didipart-header .header-main {
  grid-template-columns: minmax(154px, 220px) minmax(0, 1fr) auto !important;
  align-items: center !important;
}
body[data-sf-theme="didipart"] .didipart-header .header-quick-nav {
  justify-content: flex-start !important;
  justify-self: stretch !important;
  text-align: right !important;
}
body[data-sf-theme="didipart"] .didip-header .brand,
body[data-sf-theme="didipart"] .didipart-header .brand {
  min-width: 0 !important;
  max-width: 220px !important;
}
body[data-sf-theme="didipart"] .didipart-header .brand img {
  max-width: 220px !important;
  max-height: 68px !important;
  object-fit: contain !important;
}

/* Variant selection: one quiet surface, with the actual choices compact. */
body[data-sf-theme="didipart"] .product-buy-panel :is(.variant-group,.attribute-group,.product-attribute-group) {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 8px 0 !important;
  margin: 0 !important;
}
body[data-sf-theme="didipart"] .product-buy-panel :is(.variant-options,.attribute-options,.product-attribute-options) {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  min-height: 48px !important;
  padding: 8px !important;
  border: 1px solid var(--dp-line) !important;
  border-radius: 12px !important;
  background: var(--dp-soft) !important;
}
body[data-sf-theme="didipart"] .product-buy-panel :is(.variant-option,.attribute-option,.product-attribute-option) {
  min-height: 38px !important;
  padding: 7px 13px !important;
  border-radius: 9px !important;
}

/* Related products remain a single horizontal rail even before JS initializes. */
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper {
  width: 100% !important;
  overflow: hidden !important;
}
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper .swiper-wrapper {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 16px !important;
}
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper:not(.swiper-initialized) .swiper-slide {
  flex: 0 0 calc((100% - 48px) / 4) !important;
  width: calc((100% - 48px) / 4) !important;
}
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper.swiper-initialized .swiper-slide {
  height: auto !important;
}

/* RTL meaning: previous is on the right and points right; next is on the left and points left. */
body[data-sf-theme="didipart"] :is(.slider-nav--prev,.home-product-nav--prev,.home-slider-nav--prev) .icon {
  transform: none !important;
}
body[data-sf-theme="didipart"] :is(.slider-nav--next,.home-product-nav--next,.home-slider-nav--next) .icon {
  transform: rotate(180deg) !important;
}

/* Keep filter expand/collapse controls on the left in RTL layouts. */
body[data-sf-theme="didipart"] .product-filter :is(.filter-heading,.filter-title,.accordion-button) {
  position: relative !important;
  padding-left: 42px !important;
  padding-right: 0 !important;
}
body[data-sf-theme="didipart"] .product-filter :is(.filter-toggle,.filter-heading button,.accordion-button)::after {
  position: absolute !important;
  left: 14px !important;
  right: auto !important;
}

/* Contact page: both columns occupy the available width instead of collapsing to a right rail. */
body[data-sf-theme="didipart"] .sf-page-contact .contact-layout {
  display: grid !important;
  grid-template-columns: minmax(260px, .8fr) minmax(0, 1.2fr) !important;
  align-items: stretch !important;
  gap: 24px !important;
}
body[data-sf-theme="didipart"] .sf-page-contact .contact-layout > * {
  width: 100% !important;
  min-width: 0 !important;
}
body[data-sf-theme="didipart"] .sf-page-contact :is(.form-render,.contact-form,.card-surface) {
  max-width: none !important;
}

/* Article cover must preserve the complete source image, not crop it. */
body[data-sf-theme="didipart"] .didipart-featured-cover {
  height: auto !important;
  aspect-ratio: auto !important;
  overflow: visible !important;
}
body[data-sf-theme="didipart"] .didipart-featured-cover img {
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 480px !important;
  margin-inline: auto !important;
  object-fit: contain !important;
}

@media (max-width: 767.98px) {
  body[data-sf-theme="didipart"] .didipart-header .header-main {
    grid-template-columns: minmax(0, 1fr) auto !important;
  }
  body[data-sf-theme="didipart"] .didipart-header .brand img {
    max-width: 150px !important;
    max-height: 48px !important;
  }
  body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper:not(.swiper-initialized) .swiper-slide {
    flex-basis: calc((100% - 16px) / 2) !important;
    width: calc((100% - 16px) / 2) !important;
  }
  body[data-sf-theme="didipart"] .sf-page-contact .contact-layout {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 575.98px) {
  body[data-sf-theme="didipart"] .search-modal__dialog {
    width: calc(100% - 16px);
    border-radius: 14px;
  }
  body[data-sf-theme="didipart"] .search-modal__head {
    padding: 15px 14px 12px;
  }
  body[data-sf-theme="didipart"] .search-modal__bar {
    grid-template-columns: 1fr;
    padding: 12px 14px;
  }
  body[data-sf-theme="didipart"] .search-modal__bar .search-submit {
    width: 100%;
    height: 46px;
  }
  body[data-sf-theme="didipart"] .search-modal__content {
    padding: 12px 14px 15px;
  }
  body[data-sf-theme="didipart"] .category-card {
    height: 126px !important;
  }
  body[data-sf-theme="didipart"] .category-card img {
    height: 80px !important;
  }
  body[data-sf-theme="didipart"] .category-showcase__products .home-product-swiper-wrap {
    padding-inline: 18px !important;
  }
  body[data-sf-theme="didipart"] .category-showcase .home-product-nav {
    width: 36px;
    height: 36px;
  }
  body[data-sf-theme="didipart"] .related-products-grid.catalog-grid {
    grid-template-columns: 1fr !important;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .description-content,
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__short,
  body[data-sf-theme="didipart"] .didipart-page .article-content-v2.text {
    font-size: 13.5px;
  }
}



/* Didipart 1.0.6 stability */
.didipart-flash-wrap {
    padding-top: 1rem;
}

/* ==========================================================================
   Didipart 1.0.7 — final UX/UI system
   This block is intentionally the last theme layer. Core/page bundles load
   before Didipart, so these rules are the stable visual contract.
   ========================================================================== */

/* 1) One color + typography source of truth. */
body[data-sf-theme="didipart"] {
  --didipart-brand: var(--theam-color, var(--sf-color-brand, #073e9f));
  --didipart-brand-text: var(--theam-text-color, #fff);
  --didipart-accent: var(--theam-secend-color, var(--sf-color-accent, #ff6900));
  --didipart-accent-text: var(--theam-secend-text-color, #fff);
  --primary-950: color-mix(in srgb, var(--didipart-brand) 62%, #000);
  --primary-900: color-mix(in srgb, var(--didipart-brand) 76%, #000);
  --primary-800: var(--didipart-brand);
  --primary-700: var(--didipart-brand);
  --primary-600: color-mix(in srgb, var(--didipart-brand) 84%, #fff);
  --accent: var(--didipart-accent);
  --accent-hover: color-mix(in srgb, var(--didipart-accent) 82%, #000);
  --accent-soft: color-mix(in srgb, var(--didipart-accent) 11%, #fff);
  --surface-blue: color-mix(in srgb, var(--didipart-brand) 5%, #fff);
  --didipart-brand-soft: color-mix(in srgb, var(--didipart-brand) 8%, #fff);
  --didipart-brand-border: color-mix(in srgb, var(--didipart-brand) 20%, #fff);
  --didipart-accent-soft: color-mix(in srgb, var(--didipart-accent) 11%, #fff);
  color: var(--sf-color-text, var(--theam-txt-color, #111827));
  background: var(--sf-color-bg, var(--theam-bg-color, #fff));
  font-family: var(--sf-font-body, IRANSansX, system-ui, sans-serif) !important;
}
body[data-sf-theme="didipart"] :is(button, input, select, textarea, .btn, .form-control, .form-select, .dropdown-menu) {
  font-family: inherit !important;
}
body[data-sf-theme="didipart"] :focus-visible {
  outline-color: color-mix(in srgb, var(--didipart-accent) 45%, transparent) !important;
}
body[data-sf-theme="didipart"] .text-primary { color: var(--didipart-brand) !important; }
body[data-sf-theme="didipart"] .bg-primary { background-color: var(--didipart-brand) !important; }
body[data-sf-theme="didipart"] .border-primary { border-color: var(--didipart-brand) !important; }
body[data-sf-theme="didipart"] .btn-primary {
  --bs-btn-color: var(--didipart-brand-text);
  --bs-btn-bg: var(--didipart-brand);
  --bs-btn-border-color: var(--didipart-brand);
  --bs-btn-hover-color: var(--didipart-brand-text);
  --bs-btn-hover-bg: color-mix(in srgb, var(--didipart-brand) 84%, #000);
  --bs-btn-hover-border-color: color-mix(in srgb, var(--didipart-brand) 84%, #000);
  --bs-btn-active-color: var(--didipart-brand-text);
  --bs-btn-active-bg: color-mix(in srgb, var(--didipart-brand) 76%, #000);
  --bs-btn-active-border-color: color-mix(in srgb, var(--didipart-brand) 76%, #000);
  --bs-btn-disabled-color: color-mix(in srgb, var(--didipart-brand-text) 80%, #fff);
  --bs-btn-disabled-bg: color-mix(in srgb, var(--didipart-brand) 58%, #fff);
  --bs-btn-disabled-border-color: color-mix(in srgb, var(--didipart-brand) 58%, #fff);
}
body[data-sf-theme="didipart"] .btn-outline-primary {
  --bs-btn-color: var(--didipart-brand);
  --bs-btn-border-color: var(--didipart-brand);
  --bs-btn-hover-color: var(--didipart-brand-text);
  --bs-btn-hover-bg: var(--didipart-brand);
  --bs-btn-hover-border-color: var(--didipart-brand);
  --bs-btn-active-color: var(--didipart-brand-text);
  --bs-btn-active-bg: var(--didipart-brand);
  --bs-btn-active-border-color: var(--didipart-brand);
}
body[data-sf-theme="didipart"] .form-check-input:checked,
body[data-sf-theme="didipart"] .form-switch .form-check-input:checked {
  background-color: var(--didipart-brand) !important;
  border-color: var(--didipart-brand) !important;
}
body[data-sf-theme="didipart"] .button-accent,
body[data-sf-theme="didipart"] .accent-button,
body[data-sf-theme="didipart"] .add-to-cart,
body[data-sf-theme="didipart"] .discount-badge,
body[data-sf-theme="didipart"] .contact-icon {
  color: var(--didipart-accent-text) !important;
  background-color: var(--didipart-accent) !important;
  border-color: var(--didipart-accent) !important;
}
body[data-sf-theme="didipart"] .discount-badge--placeholder {
  visibility: hidden !important;
}

/* Brand-driven areas that had old template blues baked into their gradients. */
body[data-sf-theme="didipart"] .hero-slide,
body[data-sf-theme="didipart"] .hero-slide--2,
body[data-sf-theme="didipart"] .hero-slide--3 {
  background: linear-gradient(108deg,
    color-mix(in srgb, var(--didipart-brand) 62%, #000) 0%,
    var(--didipart-brand) 54%,
    color-mix(in srgb, var(--didipart-brand) 78%, #000) 100%) !important;
}
body[data-sf-theme="didipart"] .footer-contact-card {
  color: var(--didipart-brand-text) !important;
  background: linear-gradient(155deg,
    color-mix(in srgb, var(--didipart-brand) 88%, #fff) 0%,
    color-mix(in srgb, var(--didipart-brand) 68%, #000) 100%) !important;
  box-shadow: 0 15px 34px color-mix(in srgb, var(--didipart-brand) 22%, transparent) !important;
}
body[data-sf-theme="didipart"] .footer-links h3::before,
body[data-sf-theme="didipart"] .section-title-row h2::before,
body[data-sf-theme="didipart"] .header-quick-nav a.active::after {
  background: var(--didipart-brand) !important;
}

/* 2) Internal pages stay clean: no decorative wash behind the content. */
body[data-sf-theme="didipart"].internal-page,
body[data-sf-theme="didipart"].internal-page main,
body[data-sf-theme="didipart"].internal-page .didipart-page,
body[data-sf-theme="didipart"].internal-page .didipart-archive,
body[data-sf-theme="didipart"].internal-page .didipart-commerce-shell,
body[data-sf-theme="didipart"].page-product main {
  background: var(--sf-color-bg, var(--theam-bg-color, #fff)) !important;
}
body[data-sf-theme="didipart"].internal-page .page-shell {
  padding-top: 18px !important;
}
body[data-sf-theme="didipart"].internal-page .page-hero,
body[data-sf-theme="didipart"] .didipart-commerce-shell .page-hero {
  overflow: visible !important;
  margin: 0 0 22px !important;
  padding: 12px 0 18px !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #e7ebf1 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body[data-sf-theme="didipart"].internal-page .page-hero::after,
body[data-sf-theme="didipart"] .didipart-commerce-shell .page-hero::after {
  display: none !important;
}
body[data-sf-theme="didipart"].internal-page .page-hero__inner,
body[data-sf-theme="didipart"] .didipart-commerce-shell .page-hero__inner {
  align-items: flex-end !important;
}
body[data-sf-theme="didipart"].internal-page .page-hero h1,
body[data-sf-theme="didipart"] .didipart-commerce-shell .page-hero h1 {
  margin: 2px 0 3px !important;
  color: var(--primary-900) !important;
  font-size: clamp(1.45rem, 2.6vw, 2rem) !important;
}
body[data-sf-theme="didipart"].internal-page .page-hero__badge,
body[data-sf-theme="didipart"] .didipart-commerce-shell .page-hero__badge {
  min-height: 28px !important;
  margin: 0 0 4px !important;
  padding-inline: 0 !important;
  color: var(--didipart-brand) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: 11px !important;
}
body[data-sf-theme="didipart"].internal-page .page-hero__art { display: none !important; }

/* Old static-template breakpoint hid the fourth card; never do that in Swiper. */
body[data-sf-theme="didipart"] .category-showcase__products .product-card:nth-child(4) {
  display: flex !important;
}

/* 5) Category/archive page: clear hierarchy, stable Bootstrap/filter integration. */
body[data-sf-theme="didipart"] .category-mini-card {
  min-height: 138px !important;
  padding: 10px !important;
  gap: 8px;
  background: #fff !important;
  border: 1px solid #dce4ee !important;
  border-radius: 14px !important;
}
body[data-sf-theme="didipart"] .category-mini-card img {
  width: 100% !important;
  height: 86px !important;
  object-fit: contain !important;
}
body[data-sf-theme="didipart"] .category-mini-card span,
body[data-sf-theme="didipart"] .category-mini-card strong {
  display: -webkit-box !important;
  min-height: 36px;
  margin: 0 !important;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  color: #253247 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1.55 !important;
  text-align: center;
}
body[data-sf-theme="didipart"] .category-mini-card:hover {
  border-color: var(--didipart-brand-border) !important;
  box-shadow: 0 8px 22px rgba(15, 23, 42, .07) !important;
}
body[data-sf-theme="didipart"] .catalog-layout {
  display: grid !important;
  grid-template-columns: 270px minmax(0, 1fr) !important;
  gap: 22px !important;
  align-items: start !important;
}
body[data-sf-theme="didipart"] .catalog-layout--solo {
  grid-template-columns: minmax(0, 1fr) !important;
}
body[data-sf-theme="didipart"] .products-filters-sidebar.col-lg-3 {
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
body[data-sf-theme="didipart"] .product-filters-form :is(.card, .accordion-item) {
  border: 1px solid #e1e7ef !important;
  border-radius: 13px !important;
  box-shadow: none !important;
}
body[data-sf-theme="didipart"] .catalog-toolbar {
  min-height: 60px !important;
  margin-bottom: 16px !important;
  padding: 10px 12px !important;
  border-radius: 13px !important;
  box-shadow: none !important;
}
body[data-sf-theme="didipart"] .catalog-toolbar .form-select {
  min-width: 170px;
  border-color: #dce4ee !important;
  border-radius: 10px !important;
}
body[data-sf-theme="didipart"] .catalog-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch;
}
body[data-sf-theme="didipart"] .catalog-layout--solo .catalog-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
body[data-sf-theme="didipart"] .catalog-grid .product-card {
  width: 100% !important;
  height: 374px !important;
  min-height: 374px !important;
}
body[data-sf-theme="didipart"] .catalog-grid .product-card__image {
  height: 192px !important;
  min-height: 192px !important;
}
body[data-sf-theme="didipart"] .didipart-empty-state { padding: 2.5rem 1rem; }
body[data-sf-theme="didipart"] .didipart-empty-state__icon {
  width: 64px;
  height: 64px;
  color: var(--didipart-brand);
}

/* 6) Product page: explicit RTL columns + calm, readable buy/gallery/tabs. */
body[data-sf-theme="didipart"].page-product .didipart-product-page {
  padding-bottom: 8px;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-detail-grid.product-main {
  display: grid !important;
  grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr) !important;
  gap: 24px !important;
  align-items: start !important;
  margin-top: 14px !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-summary {
  grid-column: 1 !important;
  min-width: 0;
  width: 100% !important;
  margin: 0 !important;
  padding: 22px !important;
  background: #fff !important;
  border: 1px solid #dfe6ef !important;
  border-radius: 18px !important;
  box-shadow: 0 7px 26px rgba(15, 23, 42, .045) !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__buy-panel {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__title {
  margin: 0 0 12px !important;
  color: #172033 !important;
  font-size: clamp(1.25rem, 2vw, 1.65rem) !important;
  font-weight: 900 !important;
  line-height: 1.7 !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__short {
  margin-bottom: 15px !important;
  padding: 12px 14px;
  color: #4a576a !important;
  background: #f8fafc;
  border: 1px solid #e9edf3;
  border-radius: 12px;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .buy-box {
  margin-top: 10px !important;
  padding: 16px !important;
  background: #fff !important;
  border: 1px solid #e3e8ef !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .buy-box__title {
  color: var(--primary-900) !important;
  font-size: 15px !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .stock-status {
  border-radius: 10px !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .quantity-control,
body[data-sf-theme="didipart"].page-product .didipart-product-page .qty {
  overflow: hidden;
  border: 1px solid #dce4ee !important;
  border-radius: 10px !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery {
  grid-column: 2 !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  gap: 12px !important;
  min-width: 0;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery-thumbs {
  display: flex !important;
  flex: 0 0 78px;
  flex-direction: column !important;
  gap: 8px !important;
  width: 78px !important;
  max-height: 500px;
  overflow: auto;
  order: 2;
  scrollbar-width: thin;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery-thumb {
  flex: 0 0 72px !important;
  width: 72px !important;
  height: 72px !important;
  padding: 4px !important;
  background: #fff !important;
  border: 1px solid #dce4ee !important;
  border-radius: 10px !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery-thumb.is-active {
  border-color: var(--didipart-brand) !important;
  box-shadow: 0 0 0 2px var(--didipart-brand-soft) !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery-main {
  position: relative;
  flex: 1 1 auto;
  order: 1;
  min-width: 0;
  min-height: 470px !important;
  height: 500px !important;
  padding: 14px !important;
  display: grid !important;
  place-items: center;
  background: #fff !important;
  border: 1px solid #dfe6ef !important;
  border-radius: 18px !important;
  box-shadow: 0 7px 26px rgba(15, 23, 42, .04) !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery-main-img {
  width: 100% !important;
  height: 100% !important;
  max-height: 466px !important;
  object-fit: contain !important;
  object-position: center !important;
}
body[data-sf-theme="didipart"].page-product .product-tabs-card {
  margin-top: 26px !important;
  padding: 0 !important;
  overflow: hidden;
  background: #fff !important;
  border: 1px solid #dfe6ef !important;
  border-radius: 16px !important;
  box-shadow: none !important;
}
body[data-sf-theme="didipart"].page-product .product-tabs {
  display: block !important;
  width: 100% !important;
}
body[data-sf-theme="didipart"].page-product .product-tabs__head {
  overflow-x: auto;
  border-bottom: 1px solid #e6ebf2;
  scrollbar-width: thin;
}
body[data-sf-theme="didipart"].page-product .product-page__tab-nav {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 4px !important;
  width: max-content !important;
  min-width: 100% !important;
  margin: 0 !important;
  padding: 0 14px !important;
  border: 0 !important;
}
body[data-sf-theme="didipart"].page-product .product-page__tab-nav .nav-link {
  position: relative;
  min-height: 58px;
  padding: 0 16px !important;
  display: inline-flex;
  align-items: center;
  color: #647084 !important;
  background: transparent !important;
  border: 0 !important;
  white-space: nowrap;
  font-size: 13px;
  font-weight: 800;
}
body[data-sf-theme="didipart"].page-product .product-page__tab-nav .nav-link::after {
  content: "";
  position: absolute;
  right: 16px;
  bottom: 0;
  left: 16px;
  height: 3px;
  background: transparent;
  border-radius: 3px 3px 0 0;
}
body[data-sf-theme="didipart"].page-product .product-page__tab-nav .nav-link.active {
  color: var(--didipart-brand) !important;
}
body[data-sf-theme="didipart"].page-product .product-page__tab-nav .nav-link.active::after {
  background: var(--didipart-brand);
}
body[data-sf-theme="didipart"].page-product .product-tabs__content {
  padding: 22px 24px 26px !important;
}
body[data-sf-theme="didipart"].page-product .specs-table .table {
  margin: 0 !important;
  border-color: #e3e8ef !important;
}

/* Rich product/article content — semantic HTML remains visible and readable. */
body[data-sf-theme="didipart"].page-product .description-content {
  max-width: none !important;
  color: #344154 !important;
  font-size: 14px !important;
  line-height: 2.05 !important;
}
body[data-sf-theme="didipart"].page-product .description-content :is(ul, ol) {
  padding-inline-start: 1.7rem !important;
}
body[data-sf-theme="didipart"].page-product .description-content blockquote {
  border-inline-start: 4px solid var(--didipart-brand) !important;
  background: var(--didipart-brand-soft) !important;
}
body[data-sf-theme="didipart"].page-product .description-content table {
  min-width: 620px;
}
body[data-sf-theme="didipart"].page-product .description-content th {
  background: var(--didipart-brand-soft) !important;
}

/* 7) Search modal: balanced input/action sizes and theme colors. */
body[data-sf-theme="didipart"] .search-modal__dialog {
  width: min(900px, calc(100% - 28px)) !important;
  max-height: calc(100vh - 32px);
  overflow: auto;
  padding: 0 !important;
  background: #fff !important;
  border: 1px solid #dfe6ef;
  border-radius: 20px !important;
  box-shadow: 0 24px 64px rgba(2, 16, 38, .24) !important;
}
body[data-sf-theme="didipart"] .search-modal__head {
  margin: 0 !important;
  padding: 22px 24px 16px !important;
  border-bottom: 1px solid #e7ecf2;
}
body[data-sf-theme="didipart"] .search-modal__eyebrow { color: var(--didipart-accent) !important; }
body[data-sf-theme="didipart"] .search-modal__head h2 { color: var(--primary-900) !important; }
body[data-sf-theme="didipart"] .search-modal__bar {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 150px !important;
  gap: 10px !important;
  padding: 18px 24px !important;
  background: #f8fafc;
  border-bottom: 1px solid #e7ecf2;
}
body[data-sf-theme="didipart"] .search-modal__bar .search-input-wrap input {
  height: 52px !important;
  padding: 0 15px !important;
  background: #fff !important;
  border: 1px solid #d8e2ef !important;
  border-radius: 12px !important;
  font-size: 14px !important;
}
body[data-sf-theme="didipart"] .search-modal__bar .search-input-wrap input:focus {
  border-color: var(--didipart-brand) !important;
  box-shadow: 0 0 0 3px var(--didipart-brand-soft) !important;
}
body[data-sf-theme="didipart"] .search-modal__bar .search-submit {
  width: 150px !important;
  height: 52px !important;
  color: var(--didipart-brand-text) !important;
  background: var(--didipart-brand) !important;
  border: 1px solid var(--didipart-brand) !important;
  border-radius: 12px !important;
}
body[data-sf-theme="didipart"] .search-modal__content { padding: 18px 24px 24px !important; }

/* 8) Cart/checkout: no duplicate visual hero and less wasted vertical space. */
body[data-sf-theme="didipart"] .didipart-commerce-shell {
  padding-top: 18px !important;
  padding-bottom: 28px !important;
}
body[data-sf-theme="didipart"] .didipart-commerce-shell > .sf-page-cart,
body[data-sf-theme="didipart"] .didipart-commerce-shell > .sf-page-checkout {
  margin: 0 !important;
  padding: 0 !important;
}
body[data-sf-theme="didipart"] .sf-page-cart .cart-layout {
  gap: 20px !important;
  align-items: start !important;
}
body[data-sf-theme="didipart"] .sf-page-cart .cart-card,
body[data-sf-theme="didipart"] .sf-page-cart .order-summary {
  border: 1px solid #dde5ef !important;
  border-radius: 16px !important;
  box-shadow: 0 5px 18px rgba(15, 23, 42, .04) !important;
}
body[data-sf-theme="didipart"] .sf-page-cart .cart-item__media {
  padding: 4px !important;
  background: #fff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
}
body[data-sf-theme="didipart"] .sf-page-cart .cart-item__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}
body[data-sf-theme="didipart"] .sf-page-cart .cart-checkout-btn {
  min-height: 50px;
  border-radius: 11px !important;
}

/* 9) Footer about area uses the entire available grid area. */
body[data-sf-theme="didipart"] .footer-grid {
  grid-template-columns: minmax(270px, 310px) minmax(220px, .8fr) minmax(300px, 1.2fr) !important;
  column-gap: 32px !important;
}
body[data-sf-theme="didipart"] .footer-brand-copy {
  width: 100% !important;
  max-width: none !important;
  align-self: stretch;
  padding-top: 22px !important;
}
body[data-sf-theme="didipart"] .footer-brand-copy h2 {
  font-size: 18px !important;
  line-height: 1.8 !important;
}
body[data-sf-theme="didipart"] .footer-brand-copy p {
  width: 100% !important;
  max-width: none !important;
  margin-bottom: 15px !important;
  color: #5d6879 !important;
  font-size: 13.5px !important;
  line-height: 2.05 !important;
  text-align: justify;
}
body[data-sf-theme="didipart"] .footer-social-link:hover {
  color: var(--didipart-accent-text) !important;
  background: var(--didipart-accent) !important;
  border-color: var(--didipart-accent) !important;
}

/* 10) Bottom mobile navigation, matching the useful legacy-default pattern. */
body[data-sf-theme="didipart"] .didipart-mobile-dock { display: none; }
@media (max-width: 991.98px) {
  body[data-sf-theme="didipart"] {
    padding-bottom: calc(76px + env(safe-area-inset-bottom, 0px));
  }
  body[data-sf-theme="didipart"] .didipart-mobile-dock {
    position: fixed;
    z-index: 1035;
    right: 0;
    bottom: 0;
    left: 0;
    display: block !important;
    pointer-events: none;
  }
  body[data-sf-theme="didipart"] .didipart-mobile-dock__shell {
    position: relative;
    width: min(620px, 100%);
    margin-inline: auto;
    padding: 0 10px env(safe-area-inset-bottom, 0px);
    pointer-events: auto;
  }
  body[data-sf-theme="didipart"] .didipart-mobile-dock__bar {
    display: grid;
    grid-template-columns: 1fr 1fr 72px 1fr 1fr;
    align-items: center;
    min-height: 66px;
    padding: 6px 7px;
    background: rgba(255,255,255,.97);
    border: 1px solid #dce4ee;
    border-bottom: 0;
    border-radius: 18px 18px 0 0;
    box-shadow: 0 -8px 30px rgba(15,23,42,.11);
    backdrop-filter: blur(12px);
  }
  body[data-sf-theme="didipart"] .didipart-mobile-dock__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    min-width: 0;
    min-height: 52px;
    padding: 3px 2px;
    color: #6c7788;
    background: transparent;
    border: 0;
    border-radius: 10px;
    font-size: 10px;
    font-weight: 700;
    text-decoration: none;
  }
  body[data-sf-theme="didipart"] .didipart-mobile-dock__item i {
    font-size: 22px;
    line-height: 1;
  }
  body[data-sf-theme="didipart"] .didipart-mobile-dock__item:is(:hover, :focus-visible, .is-active) {
    color: var(--didipart-brand);
    background: var(--didipart-brand-soft);
  }
  body[data-sf-theme="didipart"] .didipart-mobile-dock__cart-slot { grid-column: 3; }
  body[data-sf-theme="didipart"] .didipart-mobile-dock__cart {
    position: absolute;
    z-index: 2;
    top: -19px;
    left: 50%;
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    padding: 0;
    transform: translateX(-50%);
    color: var(--didipart-brand-text);
    background: var(--didipart-brand);
    border: 5px solid #fff;
    border-radius: 50%;
    box-shadow: 0 8px 22px color-mix(in srgb, var(--didipart-brand) 28%, transparent);
  }
  body[data-sf-theme="didipart"] .didipart-mobile-dock__cart i { font-size: 25px; }
  body[data-sf-theme="didipart"] .didipart-mobile-dock__cart-badge {
    position: absolute;
    top: -3px;
    right: -2px;
    display: grid;
    place-items: center;
    min-width: 19px;
    height: 19px;
    padding: 0 4px;
    color: var(--didipart-accent-text);
    background: var(--didipart-accent);
    border: 2px solid #fff;
    border-radius: 12px;
    font-size: 9px;
    line-height: 1;
  }
  body[data-sf-theme="didipart"] .didipart-mobile-dock__cart-badge[hidden] { display: none !important; }
}

/* 11) 404: useful recovery page instead of a dead-end number. */
body.didipart-error-body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  background: #fff !important;
}
body.didipart-error-body .error-sitebar {
  background: #fff;
  border-bottom: 1px solid #e5eaf1;
}
body.didipart-error-body .error-sitebar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 76px;
}
body.didipart-error-body .error-sitebar__brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
body.didipart-error-body .error-sitebar__mark {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  color: #fff;
  background: var(--didipart-brand);
  border-radius: 12px;
}
body.didipart-error-body .error-sitebar__mark .icon { width: 22px; height: 22px; }
body.didipart-error-body .error-sitebar__brand strong,
body.didipart-error-body .error-sitebar__brand small { display: block; }
body.didipart-error-body .error-sitebar__brand strong { color: #192334; font-size: 14px; }
body.didipart-error-body .error-sitebar__brand small { color: #7a8494; font-size: 10px; }
body.didipart-error-body .error-sitebar__nav { display: flex; align-items: center; gap: 20px; }
body.didipart-error-body .error-sitebar__nav a { color: #4d596b; font-size: 12px; font-weight: 700; }
body.didipart-error-body .error-sitebar__nav a:hover { color: var(--didipart-brand); }
body.didipart-error-body .error-main { flex: 1; display: grid; align-items: center; }
body.didipart-error-body .error-page--didipart { padding-block: 48px; }
body.didipart-error-body .error-card {
  display: grid;
  grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr);
  align-items: center;
  gap: 34px;
  padding: clamp(28px, 5vw, 58px);
  background: #fff;
  border: 1px solid #dfe6ef;
  border-radius: 24px;
  box-shadow: 0 18px 55px rgba(15,23,42,.065);
}
body.didipart-error-body .error-card__visual {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 240px;
}
body.didipart-error-body .error-card__visual .error-code {
  position: relative;
  z-index: 2;
  margin: 0;
  color: var(--didipart-brand);
  font-size: clamp(5rem, 10vw, 8.5rem);
  font-weight: 900;
  letter-spacing: -.08em;
  line-height: 1;
}
body.didipart-error-body .error-card__visual .error-code span { color: var(--didipart-accent); }
body.didipart-error-body .error-card__orbit {
  position: absolute;
  width: 210px;
  height: 210px;
  border: 24px solid var(--didipart-brand-soft);
  border-radius: 50%;
}
body.didipart-error-body .error-eyebrow {
  display: inline-flex;
  margin-bottom: 7px;
  color: var(--didipart-accent);
  font-size: 11px;
  font-weight: 900;
}
body.didipart-error-body .error-card__content h1 {
  margin: 0 0 8px;
  color: #172033;
  font-size: clamp(1.55rem, 3vw, 2.2rem);
}
body.didipart-error-body .error-card__content > p {
  max-width: 620px;
  margin: 0 0 20px;
  color: #667386;
  font-size: 13px;
  line-height: 2;
}
body.didipart-error-body .error-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 120px;
  gap: 9px;
  max-width: 620px;
}
body.didipart-error-body .error-search input {
  width: 100%;
  height: 48px;
  padding-inline: 14px;
  background: #f8fafc;
  border: 1px solid #dce4ee;
  border-radius: 11px;
}
body.didipart-error-body .error-search input:focus {
  outline: 0;
  border-color: var(--didipart-brand);
  box-shadow: 0 0 0 3px var(--didipart-brand-soft);
}
body.didipart-error-body .error-search button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: var(--didipart-brand-text);
  background: var(--didipart-brand);
  border: 0;
  border-radius: 11px;
  font-weight: 800;
}
body.didipart-error-body .error-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 13px; }
body.didipart-error-body .error-quick-links {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-top: 16px;
}
body.didipart-error-body .error-quick-links > a {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 78px;
  padding: 13px 14px;
  background: #fff;
  border: 1px solid #e0e6ee;
  border-radius: 14px;
}
body.didipart-error-body .error-quick-links > a:hover {
  border-color: var(--didipart-brand-border);
  background: var(--didipart-brand-soft);
}
body.didipart-error-body .error-quick-links .icon { flex: 0 0 auto; color: var(--didipart-brand); }
body.didipart-error-body .error-quick-links strong,
body.didipart-error-body .error-quick-links small { display: block; }
body.didipart-error-body .error-quick-links strong { color: #253247; font-size: 12px; }
body.didipart-error-body .error-quick-links small { margin-top: 2px; color: #8791a0; font-size: 10px; }
body.didipart-error-body .error-footer {
  padding: 18px 0;
  color: #7b8594;
  background: #f8fafc;
  border-top: 1px solid #e6ebf1;
  text-align: center;
  font-size: 11px;
}

/* Responsive consolidation. */
@media (max-width: 1199.98px) {
  body[data-sf-theme="didipart"] .catalog-layout--solo .catalog-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  body[data-sf-theme="didipart"] .footer-grid {
    grid-template-columns: minmax(260px, 290px) minmax(0, 1fr) minmax(270px, 330px) !important;
    column-gap: 24px !important;
  }
}
@media (max-width: 991.98px) {
  body[data-sf-theme="didipart"] .category-showcase__layout {
    grid-template-columns: 190px minmax(0, 1fr) !important;
  }
  body[data-sf-theme="didipart"] .category-showcase__products .home-product-swiper-wrap {
    padding-inline: 48px !important;
  }
  body[data-sf-theme="didipart"] .category-showcase__products .product-card,
  body[data-sf-theme="didipart"] .category-showcase__products .product-card--amazing {
    height: 358px !important;
    min-height: 358px !important;
  }
  body[data-sf-theme="didipart"] .category-showcase__products .product-card__image {
    height: 184px !important;
    min-height: 184px !important;
  }
  body[data-sf-theme="didipart"] .catalog-layout,
  body[data-sf-theme="didipart"] .catalog-layout--solo {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  body[data-sf-theme="didipart"] .catalog-grid,
  body[data-sf-theme="didipart"] .catalog-layout--solo .catalog-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-detail-grid.product-main {
    grid-template-columns: 1fr !important;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-summary,
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery {
    grid-column: 1 !important;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery { order: 1; }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-summary { order: 2; }
  body[data-sf-theme="didipart"] .footer-grid {
    grid-template-columns: minmax(250px, 285px) minmax(0, 1fr) !important;
    grid-template-areas: "contact links" "contact trust" "brand brand" !important;
  }
  body.didipart-error-body .error-card { grid-template-columns: 1fr; gap: 16px; text-align: center; }
  body.didipart-error-body .error-card__visual { min-height: 150px; }
  body.didipart-error-body .error-card__orbit { width: 150px; height: 150px; border-width: 18px; }
  body.didipart-error-body .error-card__content > p,
  body.didipart-error-body .error-search { margin-inline: auto; }
  body.didipart-error-body .error-actions { justify-content: center; }
}
@media (max-width: 767.98px) {
  body[data-sf-theme="didipart"] .category-showcase__layout {
    grid-template-columns: 1fr !important;
  }
  body[data-sf-theme="didipart"] .category-showcase__tabs {
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto;
    padding-bottom: 5px;
    scroll-snap-type: x proximity;
  }
  body[data-sf-theme="didipart"] .category-showcase__tabs .home-cattabs__tab {
    flex: 0 0 160px;
    min-height: 68px;
    scroll-snap-align: start;
  }
  body[data-sf-theme="didipart"] .category-showcase__products .home-product-swiper-wrap,
  body[data-sf-theme="didipart"] :is(.product-slider-shell, .related-products-slider-shell) {
    padding-inline: 42px !important;
  }
  body[data-sf-theme="didipart"] .slider-nav,
  body[data-sf-theme="didipart"] .home-product-nav {
    width: 38px !important;
    height: 38px !important;
  }
  body[data-sf-theme="didipart"] .catalog-grid,
  body[data-sf-theme="didipart"] .catalog-layout--solo .catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
  body[data-sf-theme="didipart"] .catalog-grid .product-card {
    height: 350px !important;
    min-height: 350px !important;
  }
  body[data-sf-theme="didipart"] .catalog-grid .product-card__image {
    height: 170px !important;
    min-height: 170px !important;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery {
    flex-direction: column !important;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery-thumbs {
    order: 2;
    flex: 0 0 auto;
    flex-direction: row !important;
    width: 100% !important;
    max-height: none;
    overflow-x: auto;
    overflow-y: hidden;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery-main {
    order: 1;
    min-height: 360px !important;
    height: 390px !important;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-summary {
    padding: 16px !important;
  }
  body[data-sf-theme="didipart"].page-product .product-tabs__content {
    padding: 17px 15px 20px !important;
  }
  body[data-sf-theme="didipart"] .search-modal__bar {
    grid-template-columns: 1fr !important;
  }
  body[data-sf-theme="didipart"] .search-modal__bar .search-submit {
    width: 100% !important;
  }
  body[data-sf-theme="didipart"] .footer-grid {
    grid-template-columns: 1fr !important;
    grid-template-areas: "contact" "links" "trust" "brand" !important;
  }
  body[data-sf-theme="didipart"] .footer-contact-card { min-height: auto !important; }
  body.didipart-error-body .error-sitebar__nav { display: none; }
  body.didipart-error-body .error-quick-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575.98px) {
  body[data-sf-theme="didipart"] .product-card {
    padding: 10px !important;
  }
  body[data-sf-theme="didipart"] .product-card__image {
    height: 154px !important;
    min-height: 154px !important;
  }
  body[data-sf-theme="didipart"] .category-showcase__products .product-card,
  body[data-sf-theme="didipart"] .category-showcase__products .product-card--amazing {
    height: 334px !important;
    min-height: 334px !important;
  }
  body[data-sf-theme="didipart"] .category-showcase__products .product-card__image {
    height: 164px !important;
    min-height: 164px !important;
  }
  body[data-sf-theme="didipart"] .catalog-grid .product-card {
    height: 326px !important;
    min-height: 326px !important;
  }
  body[data-sf-theme="didipart"] .catalog-grid .product-card__image {
    height: 148px !important;
    min-height: 148px !important;
  }
  body[data-sf-theme="didipart"] .category-strip .swiper { padding-inline: 38px !important; }
  body[data-sf-theme="didipart"] .category-strip :is(.swiper-button-next, .swiper-button-prev) {
    width: 34px !important;
    height: 34px !important;
    margin-top: -17px !important;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery-main {
    min-height: 310px !important;
    height: 330px !important;
  }
  body[data-sf-theme="didipart"] .search-modal__dialog {
    width: calc(100% - 14px) !important;
    max-height: calc(100vh - 14px);
    border-radius: 15px !important;
  }
  body[data-sf-theme="didipart"] .search-modal__head,
  body[data-sf-theme="didipart"] .search-modal__bar,
  body[data-sf-theme="didipart"] .search-modal__content {
    padding-inline: 14px !important;
  }
  body.didipart-error-body .error-page--didipart { padding-block: 24px; }
  body.didipart-error-body .error-card { padding: 24px 16px; border-radius: 17px; }
  body.didipart-error-body .error-search { grid-template-columns: 1fr; }
  body.didipart-error-body .error-search button { min-height: 46px; }
  body.didipart-error-body .error-quick-links { grid-template-columns: 1fr; }
}

/* Admin may configure a site-wide background image. Didipart intentionally keeps
   internal commerce/content pages plain for readability while homepage may use it. */
body[data-sf-theme="didipart"].internal-page {
  background-image: none !important;
}
body.didipart-error-body .error-page--didipart {
  display: block !important;
  min-height: 0 !important;
  text-align: start !important;
}

/* Core shared hero (sf-page-hero) is also used by cart/checkout/blog/static pages.
   Keep it inside Didipart's container instead of breaking out to a full-viewport
   decorative band. */
body[data-sf-theme="didipart"].internal-page .sf-page-hero,
body[data-sf-theme="didipart"] .didipart-commerce-shell .sf-page-hero {
  position: relative !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 22px !important;
  padding: 10px 0 17px !important;
  color: var(--sf-color-text, #111827) !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid #e7ebf1 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}
body[data-sf-theme="didipart"].internal-page .container .sf-page-hero,
body[data-sf-theme="didipart"].internal-page .col-12 > .sf-page-hero,
body[data-sf-theme="didipart"].internal-page .cart-page-v3 > .sf-page-hero,
body[data-sf-theme="didipart"].internal-page .checkout-page-v3 > .sf-page-hero,
body[data-sf-theme="didipart"].internal-page .blog-page-v3 > .sf-page-hero,
body[data-sf-theme="didipart"].internal-page .sf-content-head > .sf-page-hero,
body[data-sf-theme="didipart"] .didipart-commerce-shell .sf-page-hero {
  margin-right: 0 !important;
  margin-left: 0 !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
}
body[data-sf-theme="didipart"].internal-page .sf-page-hero::after,
body[data-sf-theme="didipart"] .didipart-commerce-shell .sf-page-hero::after {
  display: none !important;
}
body[data-sf-theme="didipart"].internal-page .sf-page-hero__eyebrow,
body[data-sf-theme="didipart"] .didipart-commerce-shell .sf-page-hero__eyebrow {
  margin-bottom: 5px !important;
  color: var(--didipart-brand) !important;
  font-size: 11px !important;
}
body[data-sf-theme="didipart"].internal-page .sf-page-hero__eyebrow::before,
body[data-sf-theme="didipart"] .didipart-commerce-shell .sf-page-hero__eyebrow::before {
  width: 22px !important;
  background: var(--didipart-accent) !important;
}
body[data-sf-theme="didipart"].internal-page .sf-page-hero__title,
body[data-sf-theme="didipart"] .didipart-commerce-shell .sf-page-hero__title {
  margin-bottom: 4px !important;
  color: #172033 !important;
  font-size: clamp(1.45rem, 2.7vw, 2rem) !important;
  line-height: 1.55 !important;
}
body[data-sf-theme="didipart"].internal-page .sf-page-hero__lead,
body[data-sf-theme="didipart"] .didipart-commerce-shell .sf-page-hero__lead {
  color: #6b7687 !important;
  font-size: 12px !important;
}

/* CSP-clean utilities used by Didipart views (no style attributes required). */
body[data-sf-theme="didipart"] .didipart-card-pad-md { padding: 1rem !important; }
body[data-sf-theme="didipart"] .didipart-card-pad-lg { padding: 1.25rem !important; }
body[data-sf-theme="didipart"] .didipart-search-page-bar { margin: 0 !important; }
body[data-sf-theme="didipart"] .didipart-search-page-input { min-width: 0; }
body[data-sf-theme="didipart"] .didipart-auth-choice {
  display: flex;
  width: 100%;
  margin-bottom: .75rem;
  text-align: center;
}
body[data-sf-theme="didipart"] .didipart-auth-link {
  display: block;
  color: var(--didipart-brand);
  font-size: 12px;
  text-align: center;
}
body[data-sf-theme="didipart"] .didipart-auth-link-row {
  margin: 1rem 0 0;
  font-size: 12px;
  text-align: center;
}
body[data-sf-theme="didipart"] .didipart-auth-link-row--tight { margin-top: .75rem; }
body[data-sf-theme="didipart"] .didipart-featured-cover { overflow: hidden; }
body[data-sf-theme="didipart"] .didipart-featured-cover__img {
  display: block;
  width: 100%;
  height: auto;
}
body[data-sf-theme="didipart"] .didipart-article-card { padding: 1.5rem !important; }
body[data-sf-theme="didipart"] .didipart-article-date { color: #7a8494; font-size: 12px; }
body[data-sf-theme="didipart"] .didipart-article-content { margin-top: 1rem; }
body[data-sf-theme="didipart"] .didipart-about-cta { margin-top: 1.5rem; }
body[data-sf-theme="didipart"] .didipart-preview-notice {
  margin-bottom: 1rem;
  padding: .75rem;
  color: #7b5a00;
  background: #fff8e6;
  border-color: #f3dda2;
}
body[data-sf-theme="didipart"] .didipart-contact-card { height: fit-content; }

/* ==========================================================================
   Didipart 1.0.9 — public media hotfix
   Fixes: real Swiper arrows, deterministic card counts, archive skeleton,
   product grid row placement, mobile chrome and cart drawer.
   ========================================================================== */

/* Never let the archive skeleton override the native hidden attribute. */
body[data-sf-theme="didipart"] .products-grid-skeleton[hidden] {
  display: none !important;
}
body[data-sf-theme="didipart"] .products-grid-skeleton.row:not([hidden]) {
  display: grid !important;
}

/* --- Product archive/category: one Swiper owner, stable subcategories and grid. --- */
body[data-sf-theme="didipart"] .category-strip {
  position: relative;
  min-width: 0;
  overflow: hidden;
}
body[data-sf-theme="didipart"] .category-strip .uni-swiper {
  width: 100%;
  min-width: 0;
  overflow: hidden !important;
  padding: 7px 48px 12px !important;
}
body[data-sf-theme="didipart"] .category-strip .swiper-wrapper {
  align-items: stretch !important;
}
body[data-sf-theme="didipart"] .category-strip .swiper-slide {
  display: flex !important;
  min-width: 0 !important;
  height: auto !important;
}
body[data-sf-theme="didipart"] .category-mini-card {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 142px !important;
  height: 100% !important;
  padding: 9px !important;
  overflow: hidden;
}
body[data-sf-theme="didipart"] .category-mini-card img {
  width: 100% !important;
  height: 88px !important;
  flex: 0 0 88px;
  object-fit: contain !important;
}
body[data-sf-theme="didipart"] .category-mini-card span {
  display: block !important;
  width: 100%;
  min-height: 38px !important;
  color: #253247 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1.6 !important;
  white-space: normal !important;
  overflow-wrap: anywhere;
  text-align: center;
}
body[data-sf-theme="didipart"] .catalog-main,
body[data-sf-theme="didipart"] .products-main-column,
body[data-sf-theme="didipart"] .products-grid-container {
  min-width: 0 !important;
  width: 100% !important;
}
body[data-sf-theme="didipart"] .catalog-toolbar {
  flex-wrap: wrap !important;
  gap: 10px !important;
}
body[data-sf-theme="didipart"] .catalog-grid.products-grid,
body[data-sf-theme="didipart"] .products-grid.catalog-grid {
  min-width: 0 !important;
  width: 100% !important;
  align-items: stretch !important;
}

/* --- Product page: both columns occupy row one; sparse Grid auto-placement was
       dropping the summary into row two and creating the large blank area. --- */
@media (min-width: 992px) {
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-detail-grid.product-main {
    grid-template-columns: minmax(0, .96fr) minmax(0, 1.04fr) !important;
    gap: 26px !important;
    align-items: start !important;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-summary {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: start !important;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery,
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-gallery {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: start !important;
  }
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery-main {
  min-height: 410px !important;
  height: 440px !important;
  padding: 8px !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery-main-img {
  max-height: 424px !important;
}
body[data-sf-theme="didipart"].page-product .didipart-product-page .product-summary {
  min-height: 0 !important;
  height: auto !important;
}

/* --- Didipart's cart offcanvas uses core head-pro markup but deliberately does
       not load header-pro.css; provide the complete drawer component here. --- */
body[data-sf-theme="didipart"] .head-pro-cart-drawer.offcanvas {
  --bs-offcanvas-width: min(420px, 100vw) !important;
  width: min(420px, 100vw) !important;
  max-width: 100vw !important;
  color: #172033;
  background: #f7f9fc !important;
  border-inline-end: 1px solid #e2e8f0 !important;
}
body[data-sf-theme="didipart"] .head-pro-cart-drawer .offcanvas-header {
  flex: 0 0 auto;
  min-height: 66px;
  padding: 14px 16px !important;
  background: #fff;
  border-bottom: 1px solid #e5eaf1;
}
body[data-sf-theme="didipart"] .head-pro-cart-drawer .offcanvas-body {
  min-height: 0;
  padding: 14px !important;
  overflow: hidden;
}
body[data-sf-theme="didipart"] .head-pro-cart-lines {
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding-inline-end: 2px;
}
body[data-sf-theme="didipart"] .head-pro-cart-line {
  position: relative;
  display: grid !important;
  grid-template-columns: 76px minmax(0, 1fr) 34px !important;
  gap: 10px !important;
  align-items: center !important;
  width: 100%;
  margin: 0 0 10px !important;
  padding: 10px !important;
  background: #fff !important;
  border: 1px solid #e1e7ef !important;
  border-radius: 14px !important;
  box-shadow: 0 4px 14px rgba(15,23,42,.035);
}
body[data-sf-theme="didipart"] .head-pro-cart-line__img {
  grid-column: 1;
  width: 76px !important;
  height: 76px !important;
  max-width: 76px !important;
  padding: 2px;
  object-fit: contain !important;
  background: #fff;
  border: 1px solid #eef1f5;
  border-radius: 10px !important;
}
body[data-sf-theme="didipart"] .head-pro-cart-line__body {
  grid-column: 2;
  min-width: 0;
}
body[data-sf-theme="didipart"] .head-pro-cart-line h4 {
  max-width: 100%;
  margin: 0 0 4px !important;
  font-size: 12.5px !important;
  font-weight: 850 !important;
  line-height: 1.7 !important;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
body[data-sf-theme="didipart"] .head-pro-cart-line h4 a { color: #1d2939 !important; text-decoration: none; }
body[data-sf-theme="didipart"] .head-pro-cart-line p {
  margin: 0 !important;
  color: var(--didipart-brand) !important;
  font-size: 11.5px !important;
  font-weight: 800 !important;
}
body[data-sf-theme="didipart"] .head-pro-cart-qty {
  display: inline-flex !important;
  align-items: center;
  gap: 4px !important;
  width: max-content;
  max-width: 100%;
  margin-top: 7px !important;
  padding: 3px !important;
  background: #f2f5f9 !important;
  border-radius: 9px !important;
}
body[data-sf-theme="didipart"] .head-pro-cart-qty button {
  display: grid;
  place-items: center;
  width: 27px !important;
  height: 27px !important;
  padding: 0 !important;
  color: #344154;
  background: #fff !important;
  border: 1px solid #e1e7ef !important;
  border-radius: 7px !important;
}
body[data-sf-theme="didipart"] .head-pro-cart-remove {
  grid-column: 3;
  justify-self: end;
  width: 32px !important;
  height: 32px !important;
  padding: 0 !important;
  display: grid !important;
  place-items: center;
  color: #c33b45 !important;
  background: #fff5f5 !important;
  border: 1px solid #ffe0e0 !important;
  border-radius: 8px !important;
}
body[data-sf-theme="didipart"] .head-pro-cart-footer {
  flex: 0 0 auto;
  margin-top: 8px;
  padding: 14px 0 0 !important;
  background: #f7f9fc;
  border-top: 1px solid #e2e8f0 !important;
}
body[data-sf-theme="didipart"] .head-pro-cart-footer .btn {
  min-height: 44px;
  border-radius: 10px !important;
  font-weight: 800;
}
body[data-sf-theme="didipart"] .head-pro-cart-empty {
  min-height: 220px;
  display: grid;
  place-items: center;
  padding: 24px;
  color: #6b7687;
  text-align: center;
  background: #fff;
  border: 1px dashed #d8e0e9;
  border-radius: 14px;
}

/* --- Mobile header: bottom dock owns search/categories/cart/chat/account, so do
       not duplicate those controls in the top chrome. The logo remains Home. --- */
@media (max-width: 991.98px) {
  body[data-sf-theme="didipart"] .didipart-header .header-main {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 62px !important;
    padding-block: 6px !important;
  }
  body[data-sf-theme="didipart"] .didipart-header .brand {
    margin-inline: auto !important;
  }
  body[data-sf-theme="didipart"] .didipart-header .brand img {
    width: auto !important;
    max-width: 158px !important;
    max-height: 50px !important;
  }
  body[data-sf-theme="didipart"] .didipart-header :is(.header-quick-nav, .main-navigation) {
    display: none !important;
  }
  body[data-sf-theme="didipart"] .didipart-header .header-actions {
    display: flex !important;
  }
  body[data-sf-theme="didipart"] .rozet-chat-panel {
    bottom: calc(78px + env(safe-area-inset-bottom, 0px)) !important;
    max-height: calc(100dvh - 100px) !important;
  }
  body[data-sf-theme="didipart"] .head-pro-cart-line {
    grid-template-columns: 68px minmax(0, 1fr) 30px !important;
    gap: 8px !important;
    padding: 8px !important;
  }
  body[data-sf-theme="didipart"] .head-pro-cart-line__img {
    width: 68px !important;
    height: 68px !important;
    max-width: 68px !important;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-summary,
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
}
@media (max-width: 575.98px) {



  body[data-sf-theme="didipart"] .category-showcase__products .home-product-swiper-wrap {
    padding-inline: 38px !important;
  }
  body[data-sf-theme="didipart"] .category-strip .uni-swiper {
    padding-inline: 40px !important;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery-main {
    min-height: 290px !important;
    height: 315px !important;
  }
  body[data-sf-theme="didipart"].page-product .didipart-product-page .product-page__gallery-main-img {
    max-height: 300px !important;
  }
  body[data-sf-theme="didipart"] .head-pro-cart-drawer .offcanvas-body {
    padding: 10px !important;
  }
}

/* Related-products no-JS fallback: remain useful even if Swiper is delayed. */
@media (min-width: 992px) {
  body[data-sf-theme="didipart"] .related-products-swiper:not(.swiper-initialized) .swiper-wrapper {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 16px !important;
    transform: none !important;
  }
  body[data-sf-theme="didipart"] .related-products-swiper:not(.swiper-initialized) .swiper-slide:nth-child(n/**/+5) {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  body[data-sf-theme="didipart"] .related-products-swiper:not(.swiper-initialized) .swiper-wrapper {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
    transform: none !important;
  }
  body[data-sf-theme="didipart"] .related-products-swiper:not(.swiper-initialized) .swiper-slide:nth-child(n/**/+4) {
    display: none !important;
  }
}
@media (max-width: 767.98px) {
  body[data-sf-theme="didipart"] .related-products-swiper:not(.swiper-initialized) .swiper-wrapper {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    transform: none !important;
  }
  body[data-sf-theme="didipart"] .related-products-swiper:not(.swiper-initialized) .swiper-slide:nth-child(n/**/+3) {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  body[data-sf-theme="didipart"] .category-showcase__products .home-cattabs-swiper:not(.swiper-initialized) .swiper-wrapper {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
    transform: none !important;
  }
  body[data-sf-theme="didipart"] .category-showcase__products .home-cattabs-swiper:not(.swiper-initialized) .swiper-slide:nth-child(n/**/+4) { display: none !important; }
}
@media (max-width: 767.98px) {
  body[data-sf-theme="didipart"] .category-showcase__products .home-cattabs-swiper:not(.swiper-initialized) .swiper-wrapper {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    transform: none !important;
  }
  body[data-sf-theme="didipart"] .category-showcase__products .home-cattabs-swiper:not(.swiper-initialized) .swiper-slide:nth-child(n/**/+3) { display: none !important; }
}
body[data-sf-theme="didipart"] .related-products-swiper:not(.swiper-initialized) .swiper-slide,
body[data-sf-theme="didipart"] .category-showcase__products .home-cattabs-swiper:not(.swiper-initialized) .swiper-slide {
  width: 100% !important;
  min-width: 0 !important;
}

/* ==========================================================================
   Didipart 1.0.13 — canonical Modern Minimal / Art-Directed system
   This is the single high-specificity owner for storefront theme components.
   ========================================================================== */
body[data-sf-theme="didipart"] {
  --dp-brand: var(--theam-color, var(--sf-color-brand, #0b86c7));
  --dp-brand-text: var(--theam-text-color, #fff);
  --dp-secondary: var(--theam-secend-color, var(--theam-second-color, var(--sf-color-accent, #ff5b24)));
  --dp-secondary-text: var(--theam-secend-text-color, var(--theam-second-text-color, #fff));
  --dp-bg: var(--sf-color-bg, #fff);
  --dp-ink: var(--sf-color-text, #111827);
  --dp-muted: color-mix(in srgb, var(--dp-ink) 58%, #fff);
  --dp-line: color-mix(in srgb, var(--dp-ink) 10%, #fff);
  --dp-line-strong: color-mix(in srgb, var(--dp-brand) 22%, #e8eef5);
  --dp-soft: color-mix(in srgb, var(--dp-brand) 4%, #f8fafc);
  --dp-soft-2: color-mix(in srgb, var(--dp-brand) 7%, #f5f8fb);
  --dp-accent-soft: color-mix(in srgb, var(--dp-secondary) 9%, #fff);
  --dp-shadow-xs: 0 4px 14px rgba(15,23,42,.035);
  --dp-shadow-sm: 0 8px 26px rgba(15,23,42,.045);
  --dp-shadow: 0 18px 50px rgba(15,23,42,.06);
  --dp-radius: 24px;
  --dp-radius-md: 17px;
  --dp-radius-sm: 12px;
  --dp-section-gap: clamp(44px, 5vw, 72px);
  --dp-feature-panel-width: 286px;
  color: var(--dp-ink);
  background: var(--dp-bg);
  font-family: IRANSansX, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  text-rendering: optimizeLegibility;
}
body[data-sf-theme="didipart"] .container { width: min(100% - 32px, 1360px); max-width: 1360px; }
body[data-sf-theme="didipart"] .didipart-home-section + .didipart-home-section,
body[data-sf-theme="didipart"] .didipart-home > .benefits-section { margin-top: var(--dp-section-gap); }
body[data-sf-theme="didipart"] :where(.section-space,.section-block) { scroll-margin-top: 116px; }
body[data-sf-theme="didipart"] :where(.btn-primary,.accent-button,.add-to-cart,.quick-add-cart,.shop-wc-btn--brand) { color: var(--dp-brand-text) !important; background: var(--dp-brand) !important; border-color: var(--dp-brand) !important; }
body[data-sf-theme="didipart"] :where(a,.section-heading>a,.home-cattabs__view-all):hover { color: var(--dp-brand); }

/* Header / logo / mobile action ownership */
body[data-sf-theme="didipart"] .didipart-header .header-main { min-height: 82px; gap: 24px; }
body[data-sf-theme="didipart"] .didipart-header .brand { flex: 0 0 auto; margin-inline-end: 6px; }
body[data-sf-theme="didipart"] .didipart-header .brand img { display:block; width:auto; max-width: 230px !important; max-height: 68px !important; object-fit: contain; }
body[data-sf-theme="didipart"] .didipart-header .header-actions { gap: 8px; }
body[data-sf-theme="didipart"] .didipart-header .action-circle { border-radius: 12px; box-shadow: none; }
body[data-sf-theme="didipart"] .didipart-header :is(.wishlist-action,.compare-action) { position: relative; }
body[data-sf-theme="didipart"] .didipart-header .header-badge { min-width:18px; height:18px; padding-inline:4px; border-radius:999px; }

/* One shared branded feature panel: amazing intro / about / footer contact */
body[data-sf-theme="didipart"] .dp-feature-panel {
  width: min(100%, var(--dp-feature-panel-width));
  min-width: min(100%, var(--dp-feature-panel-width));
  min-height: 326px;
  padding: 28px 24px;
  color: var(--dp-brand-text);
  background:
    radial-gradient(circle at 108% 102%, rgba(255,255,255,.12) 0 30%, transparent 31%),
    radial-gradient(circle at -10% -12%, rgba(255,255,255,.08) 0 24%, transparent 25%),
    linear-gradient(150deg, color-mix(in srgb,var(--dp-brand) 88%,#071628), var(--dp-brand));
  border: 1px solid color-mix(in srgb,var(--dp-brand) 52%,#fff);
  border-radius: 26px;
  box-shadow: 0 18px 44px color-mix(in srgb,var(--dp-brand) 13%,transparent);
  overflow: hidden;
}
body[data-sf-theme="didipart"] .dp-feature-panel :where(h1,h2,h3,p,small,b,a,span) { color: inherit; }

/* Hero banner: picture art direction + controls inside image */
body[data-sf-theme="didipart"] .home-slider { margin-top: 18px; }
body[data-sf-theme="didipart"] .home-slider-wrap { position:relative; padding:7px; background:#fff; border:1px solid var(--dp-line); border-radius:26px; box-shadow:var(--dp-shadow); overflow:hidden; }
body[data-sf-theme="didipart"] .home-slider-wrap .slider-swiper { position:relative; overflow:hidden; border-radius:20px; }
body[data-sf-theme="didipart"] .home-slider-slide,
body[data-sf-theme="didipart"] .home-slider-slide__media,
body[data-sf-theme="didipart"] .home-slider-slide__media picture { display:block; width:100%; height:100%; }
body[data-sf-theme="didipart"] .home-slider-slide { aspect-ratio: 3.2 / 1; min-height:300px; background:var(--dp-soft); }
body[data-sf-theme="didipart"] .home-slider-slide__img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
body[data-sf-theme="didipart"] .home-slider-pagination { position:absolute !important; left:50% !important; bottom:12px !important; z-index:12; width:auto !important; padding:6px 9px; transform:translateX(-50%); background:rgba(255,255,255,.76); border:1px solid rgba(255,255,255,.8); border-radius:999px; backdrop-filter:blur(10px); }
body[data-sf-theme="didipart"] .home-slider-pagination .swiper-pagination-bullet { width:7px; height:7px; margin:0 3px !important; background:color-mix(in srgb,var(--dp-ink) 30%,#fff); opacity:.55; transition:.2s; }
body[data-sf-theme="didipart"] .home-slider-pagination .swiper-pagination-bullet-active { width:24px; border-radius:999px; background:var(--dp-brand); opacity:1; }

/* Secondary banners */
body[data-sf-theme="didipart"] .home-banner-strip { margin-top: var(--dp-section-gap); }
body[data-sf-theme="didipart"] .banner-zone { overflow:hidden; background:#fff; border:1px solid var(--dp-line); border-radius:20px; box-shadow:var(--dp-shadow-xs); }
body[data-sf-theme="didipart"] .banner-zone picture { display:block; width:100%; }
body[data-sf-theme="didipart"] .banner-zone__img { display:block; width:100% !important; height:auto; max-height:360px; object-fit:cover; }

/* Product card: single canonical media rule; no image drop-shadow */
body[data-sf-theme="didipart"] .product-card { position:relative; display:flex; flex-direction:column; min-width:0; height:100% !important; min-height:348px !important; padding:10px !important; background:#fff !important; border:1px solid var(--dp-line) !important; border-radius:18px !important; box-shadow:none !important; overflow:hidden; transition:border-color .18s ease, transform .18s ease, box-shadow .18s ease !important; }
body[data-sf-theme="didipart"] .product-card:hover { transform:translateY(-2px); border-color:var(--dp-line-strong) !important; box-shadow:var(--dp-shadow-sm) !important; }
body[data-sf-theme="didipart"] .product-card__image { position:relative; display:flex !important; align-items:center; justify-content:center; width:calc(100% + 20px) !important; height:190px !important; min-height:190px !important; margin:-10px -10px 4px !important; padding:4px !important; overflow:hidden; background:#fff; border:0 !important; border-bottom:1px solid color-mix(in srgb,var(--dp-line) 75%,#fff) !important; border-radius:18px 18px 0 0 !important; }
body[data-sf-theme="didipart"] .product-card__image img { display:block; width:100% !important; height:100% !important; max-width:none !important; padding:0 !important; object-fit:contain !important; object-position:center !important; filter:none !important; transform:none !important; }
body[data-sf-theme="didipart"] .product-card h3 { display:-webkit-box; min-height:46px !important; margin:8px 2px 3px !important; overflow:hidden; color:var(--dp-ink); font-size:12.5px !important; font-weight:800 !important; line-height:1.78 !important; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
body[data-sf-theme="didipart"] .product-card__prices { min-height:45px !important; margin-top:auto !important; justify-content:flex-end; }
body[data-sf-theme="didipart"] .product-card__prices strong { color:var(--dp-secondary) !important; font-size:14px !important; line-height:1.55; overflow-wrap:anywhere; }
body[data-sf-theme="didipart"] .product-card__prices del { color:var(--dp-muted); font-size:10px; }
body[data-sf-theme="didipart"] .product-card__actions { min-height:40px; margin-top:6px !important; }
body[data-sf-theme="didipart"] .product-card__actions :is(.icon-button,.add-to-cart) { flex:0 0 auto; }
body[data-sf-theme="didipart"] .product-stock-label,
body[data-sf-theme="didipart"] .status-pill { position:absolute !important; z-index:4; top:10px !important; right:10px !important; left:auto !important; display:inline-flex !important; align-items:center; width:max-content !important; max-width:calc(100% - 20px); min-width:0 !important; height:26px !important; padding:0 9px !important; white-space:nowrap !important; border-radius:999px !important; font-size:9px !important; font-weight:800; line-height:1 !important; }
body[data-sf-theme="didipart"] .discount-badge { display:inline-flex; align-items:center; justify-content:center; width:max-content; min-width:42px; height:25px; padding:0 8px; color:var(--dp-secondary-text) !important; background:var(--dp-secondary) !important; border-radius:999px; font-size:10px; font-weight:800; }
body[data-sf-theme="didipart"] .product-card__brand { max-width:55%; }

/* Product carousel controls overlay cards; no side columns */
body[data-sf-theme="didipart"] :is(.product-slider-shell,.related-products-slider-shell,.home-product-swiper-wrap,.blog-small-wrap) { position:relative; overflow:visible !important; padding-inline:0 !important; }
body[data-sf-theme="didipart"] :is(.product-slider-shell,.related-products-slider-shell)::before,
body[data-sf-theme="didipart"] :is(.product-slider-shell,.related-products-slider-shell)::after { display:none !important; content:none !important; }
body[data-sf-theme="didipart"] :is(.product-slider-shell,.related-products-slider-shell,.home-product-swiper-wrap) .slider-nav,
body[data-sf-theme="didipart"] .blog-small-wrap .slider-nav { position:absolute !important; top:48% !important; z-index:20; transform:translateY(-50%); }
body[data-sf-theme="didipart"] :is(.product-slider-shell,.related-products-slider-shell,.home-product-swiper-wrap) :is(.slider-nav--prev,.home-product-nav--prev),
body[data-sf-theme="didipart"] .blog-small-wrap .slider-nav--prev { right:8px !important; left:auto !important; }
body[data-sf-theme="didipart"] :is(.product-slider-shell,.related-products-slider-shell,.home-product-swiper-wrap) :is(.slider-nav--next,.home-product-nav--next),
body[data-sf-theme="didipart"] .blog-small-wrap .slider-nav--next { left:8px !important; right:auto !important; }
body[data-sf-theme="didipart"] :is(.amazing-swiper,.new-products-swiper,.related-products-swiper,.home-product-swiper) { overflow:hidden !important; padding:4px 2px 14px !important; }

/* Amazing: balanced feature panel + compact countdown */
body[data-sf-theme="didipart"] .amazing-section { padding-block:0 !important; background:var(--dp-soft); }
body[data-sf-theme="didipart"] .amazing-section__inner { padding-block:28px; }
body[data-sf-theme="didipart"] .amazing-layout { display:grid !important; grid-template-columns:var(--dp-feature-panel-width) minmax(0,1fr) !important; gap:24px !important; align-items:stretch; }
body[data-sf-theme="didipart"] .amazing-intro { display:flex; flex-direction:column; min-height:326px; }
body[data-sf-theme="didipart"] .amazing-intro__eyebrow { display:inline-flex; width:max-content; padding:6px 9px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.16); border-radius:999px; font-size:9px; }
body[data-sf-theme="didipart"] .amazing-intro h2 { margin:22px 0 8px !important; font-size:27px !important; line-height:1.6; }
body[data-sf-theme="didipart"] .amazing-intro h2 strong { display:block; color:color-mix(in srgb,var(--dp-secondary) 82%,#fff) !important; font-size:32px; }
body[data-sf-theme="didipart"] .amazing-intro p { margin:0; font-size:11px; line-height:1.9; opacity:.82; }
body[data-sf-theme="didipart"] .amazing-intro__link { margin-top:auto; display:flex; align-items:center; justify-content:space-between; min-height:46px; padding:0 14px; background:rgba(255,255,255,.11); border:1px solid rgba(255,255,255,.18); border-radius:13px; text-decoration:none; }
body[data-sf-theme="didipart"] .product-card--amazing .product-card__top { min-height:0 !important; position:absolute; z-index:5; top:10px; left:10px; }
body[data-sf-theme="didipart"] .product-card--amazing .product-card__countdown { direction:ltr !important; display:flex !important; gap:4px !important; margin:3px 0 5px !important; padding:0 !important; }
body[data-sf-theme="didipart"] .product-card--amazing .product-card__countdown span { display:flex !important; flex-direction:column; align-items:center; justify-content:center; min-width:40px; height:42px; padding:4px 3px; background:var(--dp-soft); border:1px solid var(--dp-line); border-radius:9px; }
body[data-sf-theme="didipart"] .product-card--amazing .product-card__countdown b { width:auto !important; height:auto !important; padding:0 !important; color:var(--dp-ink) !important; background:transparent !important; border:0 !important; font-size:11px !important; font-weight:900; line-height:1.1; }
body[data-sf-theme="didipart"] .product-card--amazing .product-card__countdown small { margin-top:3px; color:var(--dp-muted); font-size:7px; line-height:1; }
body[data-sf-theme="didipart"] .countdown-ended { width:auto !important; min-width:120px !important; height:34px !important; padding:0 10px; color:var(--dp-muted) !important; background:var(--dp-soft) !important; border:1px solid var(--dp-line); border-radius:9px; font-size:9px !important; }

/* Category tabs: exactly 3 desktop, 2 mobile */
body[data-sf-theme="didipart"] .category-showcase { margin-top:var(--dp-section-gap); }
body[data-sf-theme="didipart"] .category-showcase__layout { display:grid !important; grid-template-columns:220px minmax(0,1fr) !important; gap:18px !important; padding:18px !important; background:var(--dp-soft) !important; border:1px solid var(--dp-line) !important; border-radius:24px !important; overflow:hidden; }
body[data-sf-theme="didipart"] .category-showcase__tabs { display:grid !important; align-content:start; gap:8px !important; }
body[data-sf-theme="didipart"] .category-showcase__tabs button { min-height:66px !important; padding:11px 14px !important; text-align:right !important; background:#fff !important; border:1px solid var(--dp-line) !important; border-radius:14px !important; box-shadow:none !important; }
body[data-sf-theme="didipart"] .category-showcase__tabs button.is-active { color:var(--dp-brand-text) !important; background:var(--dp-brand) !important; border-color:var(--dp-brand) !important; }
body[data-sf-theme="didipart"] .category-showcase__products { min-width:0; }
body[data-sf-theme="didipart"] .category-showcase__products .home-product-swiper-wrap { overflow:hidden !important; }
body[data-sf-theme="didipart"] .home-cattabs-swiper .swiper-slide { height:auto; }

/* About: deliberate separation and editorial reading width */
body[data-sf-theme="didipart"] .home-about { margin-top:var(--dp-section-gap) !important; padding-top:4px; }
body[data-sf-theme="didipart"] .home-about__grid { display:grid; grid-template-columns:var(--dp-feature-panel-width) minmax(0,1fr); gap:26px; align-items:stretch; }
body[data-sf-theme="didipart"] .home-about__feature { position:relative; display:flex; flex-direction:column; min-height:326px; }
body[data-sf-theme="didipart"] .dp-feature-panel__index { position:absolute; left:18px; bottom:-18px; color:rgba(255,255,255,.08) !important; font-size:112px; font-weight:900; line-height:1; }
body[data-sf-theme="didipart"] .dp-feature-panel__eyebrow { font-size:9px; opacity:.82; }
body[data-sf-theme="didipart"] .home-about__feature h2 { margin:18px 0 8px; font-size:28px; font-weight:900; }
body[data-sf-theme="didipart"] .home-about__feature p { margin:0; font-size:11px; line-height:2; opacity:.82; }
body[data-sf-theme="didipart"] .dp-feature-panel__action { position:relative; z-index:2; display:grid; gap:2px; margin-top:auto; padding:11px 13px; background:rgba(255,255,255,.11); border:1px solid rgba(255,255,255,.18); border-radius:13px; text-decoration:none; }
body[data-sf-theme="didipart"] .home-about__content { min-width:0; padding:28px 30px; background:#fff; border:1px solid var(--dp-line); border-radius:24px; box-shadow:var(--dp-shadow-xs); }
body[data-sf-theme="didipart"] .home-about__nav { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:20px; padding-bottom:16px; border-bottom:1px solid var(--dp-line); }
body[data-sf-theme="didipart"] .home-about__nav a { padding:7px 11px; color:var(--dp-muted); background:var(--dp-soft); border:1px solid var(--dp-line); border-radius:999px; font-size:9px; text-decoration:none; }
body[data-sf-theme="didipart"] .home-about .about-text { max-width:78ch; color:#465466; font-size:13.5px; line-height:2.15; }
/* Homepage copy should use the full content column instead of stopping early. */
body[data-sf-theme="didipart"] .home-about .about-text { width:100%; max-width:none; }
body[data-sf-theme="didipart"] .home-about .about-text p { margin:0 0 16px; }
body[data-sf-theme="didipart"] .home-about .about-text :is(h1,h2,h3,h4,h5,h6) { margin:22px 0 10px; color:var(--dp-ink); line-height:1.65; }
body[data-sf-theme="didipart"] .home-about .about-text :is(ul,ol) { display:grid; gap:8px; margin:14px 0 18px; padding:0; list-style:none; }
body[data-sf-theme="didipart"] .home-about .about-text li { position:relative; padding:9px 34px 9px 11px; background:var(--dp-soft); border:1px solid var(--dp-line); border-radius:12px; }
body[data-sf-theme="didipart"] .home-about .about-text li::before { content:""; position:absolute; right:13px; top:17px; width:7px; height:7px; border-radius:50%; background:var(--dp-brand); }
body[data-sf-theme="didipart"] .home-about .about-text blockquote { margin:18px 0; padding:15px 17px; background:var(--dp-soft); border-inline-start:3px solid var(--dp-brand); border-radius:12px; }
body[data-sf-theme="didipart"] .home-about .about-text table { width:100%; margin:18px 0; border-collapse:separate; border-spacing:0; border:1px solid var(--dp-line); border-radius:13px; overflow:hidden; }
body[data-sf-theme="didipart"] .home-about .about-text :is(th,td) { padding:10px 12px; border-bottom:1px solid var(--dp-line); }
body[data-sf-theme="didipart"] .home-about .about-text th { background:var(--dp-soft); color:var(--dp-ink); }

/* Benefits */
body[data-sf-theme="didipart"] .benefits-grid { padding:14px 18px; background:#fff; border:1px solid var(--dp-line); border-radius:20px; box-shadow:var(--dp-shadow-xs); }
body[data-sf-theme="didipart"] .benefit { min-height:86px; padding:10px 18px; }
body[data-sf-theme="didipart"] .benefit + .benefit { border-inline-start:1px solid var(--dp-line); }

/* Product archive / category rail */
body[data-sf-theme="didipart"] .didipart-archive > .page-hero { padding:16px 0 18px !important; background:transparent !important; border:0 !important; border-bottom:1px solid var(--dp-line) !important; border-radius:0 !important; box-shadow:none !important; }
body[data-sf-theme="didipart"] .didipart-archive > .page-hero::after { display:none !important; }
body[data-sf-theme="didipart"] .didipart-archive .page-hero__inner { align-items:flex-end !important; }
body[data-sf-theme="didipart"] .didipart-archive__counter { min-width:104px; padding:9px 13px; background:var(--dp-soft); border:1px solid var(--dp-line); border-radius:13px; }
body[data-sf-theme="didipart"] .category-strip { position:relative; display:block !important; width:100%; min-width:0; margin:18px 0 12px; overflow:hidden; }
body[data-sf-theme="didipart"] .category-strip .uni-swiper { width:100% !important; min-width:0; padding:4px 2px 12px !important; overflow:hidden; }
body[data-sf-theme="didipart"] .category-strip .swiper-slide { height:auto; }
body[data-sf-theme="didipart"] .category-mini-card { min-height:120px; padding:9px; justify-content:space-between; background:#fff; border:1px solid var(--dp-line); border-radius:15px; box-shadow:none; }
body[data-sf-theme="didipart"] .category-mini-card img { width:70px; height:70px; object-fit:contain; filter:none; }
body[data-sf-theme="didipart"] .category-mini-card span { display:-webkit-box; min-height:34px; overflow:hidden; color:var(--dp-ink); font-size:10.5px; font-weight:800; line-height:1.65; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
body[data-sf-theme="didipart"] .category-strip :is(.swiper-button-prev,.swiper-button-next) { position:absolute !important; top:50% !important; z-index:20; transform:translateY(-50%); }
body[data-sf-theme="didipart"] .category-strip .swiper-button-prev { right:7px !important; left:auto !important; }
body[data-sf-theme="didipart"] .category-strip .swiper-button-next { left:7px !important; right:auto !important; }
body[data-sf-theme="didipart"] .catalog-toolbar { padding:11px 13px !important; background:#fff !important; border:1px solid var(--dp-line) !important; border-radius:15px !important; box-shadow:none !important; }
body[data-sf-theme="didipart"] .products-grid-skeleton[hidden],
body[data-sf-theme="didipart"] [hidden] { display:none !important; }
body[data-sf-theme="didipart"] .products-grid.catalog-grid { grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:14px !important; }
body[data-sf-theme="didipart"] .pagination :is(.page-link,a,button) { min-width:40px; height:40px; border-radius:10px !important; }

/* Product detail: gallery right, summary left, compact purchase UX */
body[data-sf-theme="didipart"].page-product .didipart-product-page { padding-top:20px; }
body[data-sf-theme="didipart"] .didipart-product-page .product-main { direction:ltr; display:grid !important; grid-template-columns:minmax(380px,.92fr) minmax(0,1.08fr) !important; gap:28px !important; align-items:start !important; }
body[data-sf-theme="didipart"] .didipart-product-page .product-page__gallery { direction:rtl; grid-column:2 !important; grid-row:1 !important; display:grid !important; grid-template-columns:76px minmax(0,1fr) !important; gap:12px !important; padding:0 !important; background:transparent !important; border:0 !important; }
body[data-sf-theme="didipart"] .didipart-product-page .product-summary { direction:rtl; grid-column:1 !important; grid-row:1 !important; position:sticky; top:104px; padding:0 !important; background:transparent !important; border:0 !important; }
body[data-sf-theme="didipart"] .didipart-product-page .product-page__gallery-thumbs { grid-column:1; display:flex; flex-direction:column; gap:9px; max-height:620px; overflow:auto; padding:1px; }
body[data-sf-theme="didipart"] .didipart-product-page .product-page__gallery-thumb { flex:0 0 70px; width:70px; height:70px; padding:5px; background:#fff; border:1px solid var(--dp-line); border-radius:12px; }
body[data-sf-theme="didipart"] .didipart-product-page .product-page__gallery-main { grid-column:2; height:min(600px,58vw); min-height:470px; padding:16px; background:#fff; border:1px solid var(--dp-line); border-radius:24px; box-shadow:var(--dp-shadow-xs); }
body[data-sf-theme="didipart"] .didipart-product-page .product-page__gallery-main img { width:100%; height:100%; object-fit:contain; }
body[data-sf-theme="didipart"] .didipart-product-page .product-page__buy-panel { padding:24px !important; background:#fff !important; border:1px solid var(--dp-line) !important; border-radius:24px !important; box-shadow:var(--dp-shadow-xs) !important; }
body[data-sf-theme="didipart"] .didipart-product-page .product-page__title { margin:0 0 16px !important; color:var(--dp-ink); font-size:clamp(24px,2.2vw,36px) !important; line-height:1.55 !important; }
body[data-sf-theme="didipart"] .didipart-product-page .buy-box { padding:18px !important; background:var(--dp-soft) !important; border:1px solid var(--dp-line) !important; border-radius:18px !important; }
body[data-sf-theme="didipart"] .didipart-product-page .buy-box__title { margin:0 0 5px; color:var(--dp-brand); font-size:16px; }
body[data-sf-theme="didipart"] .didipart-product-page .buy-box__lead { margin:0 0 16px; color:var(--dp-muted); font-size:10.5px; }
body[data-sf-theme="didipart"] .didipart-product-page .stock-status { display:inline-flex !important; align-items:center; gap:6px; width:max-content !important; max-width:100%; min-height:32px; padding:6px 10px !important; background:#fff; border:1px solid var(--dp-line); border-radius:999px; white-space:normal; }
body[data-sf-theme="didipart"] .didipart-product-page .attribute-item { padding:13px 14px; background:#fff; border:1px solid var(--dp-line); border-radius:14px; }
body[data-sf-theme="didipart"] .didipart-product-page .attribute-item .form-label { margin-bottom:7px !important; color:var(--dp-ink); font-size:11px; }
body[data-sf-theme="didipart"] .didipart-product-page :is(.attribute-item select,.form-select,.product-qty-select) { width:100%; min-height:48px; padding:0 14px !important; color:var(--dp-ink); background-color:#fff !important; border:1px solid var(--dp-line-strong) !important; border-radius:13px !important; box-shadow:none !important; font-family:inherit; font-size:12px; }
body[data-sf-theme="didipart"] .didipart-product-page :is(.attribute-item select,.form-select,.product-qty-select):focus { border-color:var(--dp-brand) !important; box-shadow:0 0 0 3px color-mix(in srgb,var(--dp-brand) 12%,transparent) !important; }
body[data-sf-theme="didipart"] .didipart-product-page .price-section { margin-bottom:16px !important; }
body[data-sf-theme="didipart"] .didipart-product-page .current-price { color:color-mix(in srgb,var(--dp-brand) 70%,#14362d) !important; font-size:clamp(26px,2.2vw,34px) !important; font-weight:900; }
body[data-sf-theme="didipart"] .didipart-product-page .add-to-cart-section { margin-top:16px !important; }
body[data-sf-theme="didipart"] .didipart-product-page .add-to-cart-section .btn { min-height:54px; border-radius:14px; font-weight:800; }
body[data-sf-theme="didipart"] .didipart-product-page .quantity-wrapper { display:grid; gap:7px; }
body[data-sf-theme="didipart"] .didipart-product-page .quantity-selector { border:1px solid var(--dp-line); border-radius:13px; overflow:hidden; }

/* Reuse core/default timed-sale component on product page, styled for Didipart */
body[data-sf-theme="didipart"] .didipart-product-page .timed-sale-countdown--panel { margin:14px 0 4px !important; padding:13px !important; background:#fff !important; border:1px solid var(--dp-line) !important; border-radius:15px !important; box-shadow:none !important; }
body[data-sf-theme="didipart"] .didipart-product-page .timed-sale-countdown__panel-head { display:flex; align-items:center; gap:9px; margin-bottom:10px; }
body[data-sf-theme="didipart"] .didipart-product-page .timed-sale-countdown__panel-icon { display:grid; place-items:center; width:34px; height:34px; color:var(--dp-secondary); background:var(--dp-accent-soft); border-radius:10px; }
body[data-sf-theme="didipart"] .didipart-product-page .timed-sale-countdown__panel-title { color:var(--dp-ink); font-size:10.5px; font-weight:900; }
body[data-sf-theme="didipart"] .didipart-product-page .timed-sale-countdown__panel-sub { color:var(--dp-muted); font-size:8px; }
body[data-sf-theme="didipart"] .didipart-product-page .timed-sale-countdown__panel-grid { direction:ltr; display:grid; grid-template-columns:repeat(4,1fr); gap:6px; }
body[data-sf-theme="didipart"] .didipart-product-page .timed-sale-countdown__unit { display:grid; place-items:center; min-height:50px; padding:5px; background:var(--dp-soft); border:1px solid var(--dp-line); border-radius:10px; }
body[data-sf-theme="didipart"] .didipart-product-page .timed-sale-countdown__value { color:var(--dp-brand); font-size:15px; font-weight:900; }
body[data-sf-theme="didipart"] .didipart-product-page .timed-sale-countdown__label { color:var(--dp-muted); font-size:7px; }

/* Product tabs / content */
body[data-sf-theme="didipart"] .didipart-product-page .product-tabs-card { margin-top:34px; background:#fff; border:1px solid var(--dp-line); border-radius:22px; overflow:hidden; box-shadow:none; }
body[data-sf-theme="didipart"] .didipart-product-page .nav-tabs { gap:8px; padding:0 18px; border-bottom:1px solid var(--dp-line); }
body[data-sf-theme="didipart"] .didipart-product-page .nav-tabs .nav-link { min-height:52px; padding:0 12px; color:var(--dp-muted); background:transparent; border:0; border-bottom:3px solid transparent; border-radius:0; font-weight:800; }
body[data-sf-theme="didipart"] .didipart-product-page .nav-tabs .nav-link.active { color:var(--dp-brand); border-bottom-color:var(--dp-brand); }
body[data-sf-theme="didipart"] .didipart-product-page .tab-content { padding:26px 28px; color:#465466; font-size:13.5px; line-height:2.1; }
body[data-sf-theme="didipart"] .didipart-product-page .tab-content :is(p,ul,ol,blockquote,table,figure,pre) { margin-block:0 16px; }
body[data-sf-theme="didipart"] .didipart-product-page .tab-content :is(ul,ol) { padding-inline-start:24px; }
body[data-sf-theme="didipart"] .didipart-product-page .tab-content table { width:100%; border-collapse:separate; border-spacing:0; overflow:hidden; border:1px solid var(--dp-line); border-radius:12px; }
body[data-sf-theme="didipart"] .didipart-product-page .tab-content :is(th,td) { padding:10px 12px; border-bottom:1px solid var(--dp-line); }

/* Related products */
body[data-sf-theme="didipart"] .didipart-related-products { margin-top:var(--dp-section-gap); }
body[data-sf-theme="didipart"] .related-products-swiper .swiper-slide { height:auto; }

/* Wishlist / compare resilient layout */
body[data-sf-theme="didipart"] :is(.sf-page-wishlist,.sf-page-compare) { padding-top:20px; }
body[data-sf-theme="didipart"] :is(.sf-page-wishlist,.sf-page-compare) > .page-hero { padding:20px 22px; background:var(--dp-soft); border:1px solid var(--dp-line); border-radius:20px; }
body[data-sf-theme="didipart"] #wishlistPageRoot { display:block !important; }
body[data-sf-theme="didipart"] #wishlistPageRoot .shop-wc-grid { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:14px !important; }
body[data-sf-theme="didipart"] .shop-wc-card { display:flex; flex-direction:column; min-width:0; overflow:hidden; background:#fff; border:1px solid var(--dp-line); border-radius:17px; box-shadow:none; }
body[data-sf-theme="didipart"] .shop-wc-card__media { display:block; aspect-ratio:1/1; padding:5px; background:#fff; border-bottom:1px solid var(--dp-line); }
body[data-sf-theme="didipart"] .shop-wc-card__media img { width:100%; height:100%; object-fit:contain; filter:none; }
body[data-sf-theme="didipart"] .shop-wc-card__body { display:flex; flex:1; flex-direction:column; padding:12px; }
body[data-sf-theme="didipart"] .shop-wc-card__title { min-height:44px; margin:0 0 8px; font-size:12px; line-height:1.75; }
body[data-sf-theme="didipart"] .shop-wc-card__price { margin-top:auto; color:var(--dp-secondary); font-size:13px; font-weight:900; }
body[data-sf-theme="didipart"] .shop-wc-card__actions { display:grid; grid-template-columns:1fr 1fr; gap:6px; margin-top:10px; }
body[data-sf-theme="didipart"] .shop-wc-card__actions .shop-wc-btn:first-child { grid-column:1/-1; }
body[data-sf-theme="didipart"] .shop-wc-btn { min-height:40px; border:1px solid var(--dp-line); border-radius:10px; }
body[data-sf-theme="didipart"] .shop-wc-error { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:12px; padding:16px; color:var(--dp-ink); background:var(--dp-soft); border:1px solid var(--dp-line); border-radius:14px; }
body[data-sf-theme="didipart"] .shop-wc-error>i { color:var(--dp-secondary); font-size:24px; }
body[data-sf-theme="didipart"] .shop-wc-error p { margin:3px 0 0; color:var(--dp-muted); font-size:10px; }
body[data-sf-theme="didipart"] .shop-compare-shell { border:1px solid var(--dp-line); border-radius:16px; overflow:hidden; }
body[data-sf-theme="didipart"] .shop-compare-scroll { overflow:auto; }
body[data-sf-theme="didipart"] .shop-compare-table { min-width:760px; width:100%; border-collapse:separate; border-spacing:0; }
body[data-sf-theme="didipart"] .shop-compare-table :is(th,td) { padding:12px; border-bottom:1px solid var(--dp-line); border-inline-start:1px solid var(--dp-line); background:#fff; }
body[data-sf-theme="didipart"] .shop-compare-table__feature { position:sticky; right:0; z-index:4; min-width:150px; background:var(--dp-soft) !important; }
body[data-sf-theme="didipart"] .shop-compare-product__img { width:90px; height:90px; object-fit:contain; filter:none; }

/* Search sheet */
body[data-sf-theme="didipart"] .search-modal__dialog { width:min(860px,calc(100% - 28px)); padding:24px; border:1px solid var(--dp-line); border-radius:24px; box-shadow:0 28px 80px rgba(15,23,42,.18); }
body[data-sf-theme="didipart"] .search-modal__bar { display:grid !important; grid-template-columns:minmax(0,1fr) 148px !important; gap:10px; }
body[data-sf-theme="didipart"] .search-input-wrap input { min-height:52px; border-radius:14px; }
body[data-sf-theme="didipart"] .search-submit { min-height:52px; border-radius:14px; }

/* Cart drawer */
body[data-sf-theme="didipart"] .head-pro-cart-drawer { width:min(430px,94vw) !important; }
body[data-sf-theme="didipart"] .head-pro-cart-lines { display:grid; align-content:start; gap:10px; }
body[data-sf-theme="didipart"] .head-pro-cart-item { display:grid !important; grid-template-columns:78px minmax(0,1fr); gap:10px; padding:10px !important; border:1px solid var(--dp-line) !important; border-radius:14px !important; }
body[data-sf-theme="didipart"] .head-pro-cart-item img { width:78px !important; height:78px !important; object-fit:contain !important; }
body[data-sf-theme="didipart"] .head-pro-cart-footer .btn { min-height:48px; border-radius:12px; }

body[data-sf-theme="didipart"] .footer-about-link { display:inline-flex; align-items:center; gap:5px; width:max-content; margin-top:10px; color:var(--dp-brand) !important; font-size:11px; font-weight:800; text-decoration:none; }
body[data-sf-theme="didipart"] .footer-about-link i { font-size:16px; }
body[data-sf-theme="didipart"] #rozet-chat-status.reconnecting { color:color-mix(in srgb,var(--dp-secondary) 72%,#7c2d12) !important; }
body[data-sf-theme="didipart"] .pagination-wrapper .pagination { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:6px; }
body[data-sf-theme="didipart"] .pagination-wrapper .page-link { display:grid; place-items:center; min-width:40px; height:40px; padding:0 10px; color:var(--dp-muted); background:#fff; border:1px solid var(--dp-line) !important; border-radius:10px !important; box-shadow:none !important; }
body[data-sf-theme="didipart"] .pagination-wrapper .page-item.active .page-link { color:var(--dp-brand-text); background:var(--dp-brand); border-color:var(--dp-brand) !important; }

/* Footer */
body[data-sf-theme="didipart"] .didipart-footer { margin-top:var(--dp-section-gap); border-top:1px solid var(--dp-line); }
body[data-sf-theme="didipart"] .didipart-footer .footer-grid { display:grid; grid-template-columns:var(--dp-feature-panel-width) minmax(0,1fr) 250px; grid-template-areas:"contact links trust" "contact brand brand"; gap:24px 30px; padding-top:32px; padding-bottom:34px; }
body[data-sf-theme="didipart"] .didipart-footer .footer-contact-card { grid-area:contact; min-height:326px; }
body[data-sf-theme="didipart"] .didipart-footer .footer-contact-card h2 { margin:0 0 12px; padding-bottom:12px; border-bottom:1px solid rgba(255,255,255,.18); font-size:21px; }
body[data-sf-theme="didipart"] .didipart-footer .footer-contact-card > a,
body[data-sf-theme="didipart"] .didipart-footer .contact-row { min-height:62px; gap:10px; border-bottom:1px solid rgba(255,255,255,.13); }
body[data-sf-theme="didipart"] .didipart-footer .footer-links { grid-area:links; }
body[data-sf-theme="didipart"] .didipart-footer .trust-area { grid-area:trust; }
body[data-sf-theme="didipart"] .didipart-footer .footer-brand-copy { grid-area:brand; max-width:900px; }
body[data-sf-theme="didipart"] .didipart-footer .footer-brand-copy p { max-width:76ch; line-height:2; }
body[data-sf-theme="didipart"] .didipart-footer .footer-social-link { display:grid; place-items:center; width:34px; height:34px; border:1px solid var(--dp-line); border-radius:10px; }

/* Mobile dock */
body[data-sf-theme="didipart"] .didipart-mobile-dock { z-index:1050; }
body[data-sf-theme="didipart"] .didipart-mobile-dock__shell { padding-bottom:max(6px,env(safe-area-inset-bottom)); }
body[data-sf-theme="didipart"] .didipart-mobile-dock__item { min-width:44px; min-height:48px; }

@media (max-width:1199.98px) {
  body[data-sf-theme="didipart"] .products-grid.catalog-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
  body[data-sf-theme="didipart"] #wishlistPageRoot .shop-wc-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
  body[data-sf-theme="didipart"] .didipart-product-page .product-main { grid-template-columns:minmax(330px,.95fr) minmax(0,1.05fr) !important; gap:22px !important; }
}

@media (max-width:991.98px) {
  body[data-sf-theme="didipart"] { padding-bottom:calc(78px + env(safe-area-inset-bottom)); }
  body[data-sf-theme="didipart"] .didipart-mobile-dock { display:block !important; }
  body[data-sf-theme="didipart"] .didipart-header .header-main { min-height:66px; display:flex; flex-direction:row; align-items:center; }
  body[data-sf-theme="didipart"] .didipart-header .brand { order:1; margin-inline-start:auto; margin-inline-end:0; }
  body[data-sf-theme="didipart"] .didipart-header .brand img { max-width:170px !important; max-height:52px !important; }
  body[data-sf-theme="didipart"] .didipart-header .header-quick-nav,
  body[data-sf-theme="didipart"] .didipart-header .main-navigation,
  body[data-sf-theme="didipart"] .didipart-header :is(.search-open-button,.account-link,.account-menu,.menuuser--didipart,.cart-action,.mobile-menu-button) { display:none !important; }
  body[data-sf-theme="didipart"] .didipart-header .header-actions { order:2; width:auto; margin-inline-start:0; gap:7px; }
  body[data-sf-theme="didipart"] .didipart-header :is(.wishlist-action,.compare-action) { display:grid !important; width:40px !important; height:40px !important; min-width:40px; }
  body[data-sf-theme="didipart"] .amazing-layout,
  body[data-sf-theme="didipart"] .home-about__grid { grid-template-columns:1fr !important; }
  body[data-sf-theme="didipart"] .dp-feature-panel { width:100%; min-width:0; min-height:220px; }
  body[data-sf-theme="didipart"] .didipart-footer .footer-grid { grid-template-columns:1fr 1fr; grid-template-areas:"contact contact" "links trust" "brand brand"; }
  body[data-sf-theme="didipart"] .didipart-footer .footer-contact-card { width:100%; min-height:220px; }
  body[data-sf-theme="didipart"] .didipart-product-page .product-main { grid-template-columns:1fr !important; direction:rtl; }
  body[data-sf-theme="didipart"] .didipart-product-page .product-page__gallery,
  body[data-sf-theme="didipart"] .didipart-product-page .product-summary { grid-column:1 !important; grid-row:auto !important; position:static !important; }
  body[data-sf-theme="didipart"] .didipart-product-page .product-page__gallery { order:1; }
  body[data-sf-theme="didipart"] .didipart-product-page .product-summary { order:2; }
  body[data-sf-theme="didipart"] .products-grid.catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  body[data-sf-theme="didipart"] #wishlistPageRoot .shop-wc-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}

@media (max-width:767.98px) {
  body[data-sf-theme="didipart"] .didipart-header .header-main { direction:rtl; justify-content:space-between; }
  body[data-sf-theme="didipart"] .didipart-header .brand { order:1; margin-inline:0 auto; }
  body[data-sf-theme="didipart"] .didipart-header .header-actions { order:2; margin-inline:auto 0; }

  body[data-sf-theme="didipart"] .container { width:min(100% - 24px,1360px); }
  body[data-sf-theme="didipart"] { --dp-section-gap:36px; }
  body[data-sf-theme="didipart"] .home-slider { margin-top:8px; }
  body[data-sf-theme="didipart"] .home-slider-wrap { padding:4px; border-radius:18px; box-shadow:var(--dp-shadow-sm); }
  body[data-sf-theme="didipart"] .home-slider-wrap .slider-swiper { border-radius:14px; }
  body[data-sf-theme="didipart"] .home-slider-slide { aspect-ratio:1 / 1; min-height:0; }
  body[data-sf-theme="didipart"] .home-slider-pagination { bottom:7px !important; padding:5px 7px; }


  body[data-sf-theme="didipart"] .product-card { min-height:318px !important; padding:8px !important; border-radius:15px !important; }
  body[data-sf-theme="didipart"] .product-card__image { width:calc(100% + 16px) !important; height:154px !important; min-height:154px !important; margin:-8px -8px 3px !important; padding:2px !important; border-radius:15px 15px 0 0 !important; }
  body[data-sf-theme="didipart"] .product-card h3 { min-height:42px !important; margin:7px 1px 3px !important; font-size:11px !important; }
  body[data-sf-theme="didipart"] .product-card__prices { min-height:39px !important; }
  body[data-sf-theme="didipart"] .product-card__prices strong { font-size:12px !important; }
  body[data-sf-theme="didipart"] .product-stock-label,
  body[data-sf-theme="didipart"] .status-pill { top:7px !important; right:7px !important; height:23px !important; padding-inline:7px !important; font-size:8px !important; }

  body[data-sf-theme="didipart"] .amazing-section__inner { padding-block:20px; }
  body[data-sf-theme="didipart"] .amazing-layout { gap:12px !important; }
  body[data-sf-theme="didipart"] .amazing-intro { min-height:190px !important; padding:18px !important; border-radius:19px !important; }
  body[data-sf-theme="didipart"] .amazing-intro h2 { margin:18px 0 5px !important; font-size:21px !important; }
  body[data-sf-theme="didipart"] .amazing-intro h2 strong { font-size:25px !important; }
  body[data-sf-theme="didipart"] .product-card--amazing .product-card__countdown span { min-width:34px; height:38px; }

  body[data-sf-theme="didipart"] .category-showcase__layout { grid-template-columns:1fr !important; gap:10px !important; padding:10px !important; border-radius:18px !important; }
  body[data-sf-theme="didipart"] .category-showcase__tabs { display:flex !important; overflow-x:auto !important; scrollbar-width:none; }
  body[data-sf-theme="didipart"] .category-showcase__tabs::-webkit-scrollbar { display:none; }
  body[data-sf-theme="didipart"] .category-showcase__tabs button { flex:0 0 140px; min-height:54px !important; padding:8px 10px !important; }

  body[data-sf-theme="didipart"] .home-about { margin-top:40px !important; }
  body[data-sf-theme="didipart"] .home-about__grid { gap:12px; }
  body[data-sf-theme="didipart"] .home-about__feature { min-height:190px; border-radius:19px; }
  body[data-sf-theme="didipart"] .home-about__content { padding:18px 15px; border-radius:19px; }
  body[data-sf-theme="didipart"] .home-about .about-text { max-width:none; font-size:12px; line-height:2.05; }
  body[data-sf-theme="didipart"] .home-about__nav { overflow-x:auto; flex-wrap:nowrap; }

  body[data-sf-theme="didipart"] .benefits-grid { display:grid !important; grid-template-columns:repeat(2,1fr); padding:7px; }
  body[data-sf-theme="didipart"] .benefit + .benefit { border-inline-start:0; }
  body[data-sf-theme="didipart"] .benefit:nth-child(odd) { border-inline-end:1px solid var(--dp-line); }
  body[data-sf-theme="didipart"] .benefit:nth-child(n+3) { border-top:1px solid var(--dp-line); }

  body[data-sf-theme="didipart"] .category-strip .uni-swiper { padding:3px 1px 10px !important; }
  body[data-sf-theme="didipart"] .category-mini-card { min-height:106px; }
  body[data-sf-theme="didipart"] .category-mini-card img { width:58px; height:58px; }

  body[data-sf-theme="didipart"] .didipart-product-page .product-page__gallery { grid-template-columns:1fr !important; gap:8px !important; }
  body[data-sf-theme="didipart"] .didipart-product-page .product-page__gallery-main { grid-column:1; grid-row:1; height:350px; min-height:320px; padding:9px; border-radius:18px; }
  body[data-sf-theme="didipart"] .didipart-product-page .product-page__gallery-thumbs { grid-column:1; grid-row:2; flex-direction:row; max-height:none; overflow-x:auto; }
  body[data-sf-theme="didipart"] .didipart-product-page .product-page__buy-panel { padding:16px !important; border-radius:18px !important; }
  body[data-sf-theme="didipart"] .didipart-product-page .buy-box { padding:13px !important; border-radius:15px !important; }
  body[data-sf-theme="didipart"] .didipart-product-page .product-page__title { font-size:21px !important; }
  body[data-sf-theme="didipart"] .didipart-product-page .tab-content { padding:17px 15px; }
  body[data-sf-theme="didipart"] .didipart-product-page .timed-sale-countdown__panel-grid { gap:4px; }
  body[data-sf-theme="didipart"] .didipart-product-page .timed-sale-countdown__unit { min-height:44px; }

  body[data-sf-theme="didipart"] #wishlistPageRoot .shop-wc-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:8px !important; }
  body[data-sf-theme="didipart"] .shop-wc-card__body { padding:9px; }
  body[data-sf-theme="didipart"] .shop-wc-card__actions { grid-template-columns:1fr; }
  body[data-sf-theme="didipart"] .shop-wc-card__actions .shop-wc-btn:first-child { grid-column:auto; }
  body[data-sf-theme="didipart"] .shop-wc-error { grid-template-columns:auto 1fr; }
  body[data-sf-theme="didipart"] .shop-wc-error .shop-wc-btn { grid-column:1/-1; }

  body[data-sf-theme="didipart"] .search-modal__dialog { padding:17px 13px; border-radius:19px; }
  body[data-sf-theme="didipart"] .search-modal__bar { grid-template-columns:1fr !important; }

  body[data-sf-theme="didipart"] .banner-zone { border-radius:15px; }
  body[data-sf-theme="didipart"] .banner-zone__img { max-height:none; aspect-ratio:1.8/1; object-fit:cover; }

  body[data-sf-theme="didipart"] .didipart-footer .footer-grid { grid-template-columns:1fr; grid-template-areas:"contact" "links" "trust" "brand"; gap:18px; padding-top:24px; }
  body[data-sf-theme="didipart"] .didipart-footer .footer-contact-card { min-height:190px; border-radius:19px; }
  body[data-sf-theme="didipart"] .didipart-footer .footer-brand-copy p { display:-webkit-box; max-width:none; overflow:hidden; -webkit-line-clamp:5; -webkit-box-orient:vertical; }
}

@media (max-width:420px) {
  body[data-sf-theme="didipart"] .products-grid.catalog-grid { gap:8px !important; }
  body[data-sf-theme="didipart"] .product-card__image { height:142px !important; min-height:142px !important; }
  body[data-sf-theme="didipart"] .didipart-header .brand img { max-width:154px !important; max-height:48px !important; }
}

@media (prefers-reduced-motion:reduce) {
  body[data-sf-theme="didipart"] *,
  body[data-sf-theme="didipart"] *::before,
  body[data-sf-theme="didipart"] *::after { scroll-behavior:auto !important; animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; }
}

/* ==========================================================================
   Didipart 1.0.15 — final content, commerce and chrome pass
   ========================================================================== */

/* Header: reserve a real logo column so a large uploaded logo cannot cover nav. */
body[data-sf-theme="didipart"] .site-header { overflow: visible; }
body[data-sf-theme="didipart"] .didipart-header .header-main {
  grid-template-columns: minmax(180px, 210px) minmax(0, 1fr) auto !important;
  min-width: 0;
  overflow: visible;
}
body[data-sf-theme="didipart"] .didipart-header .brand,
body[data-sf-theme="didipart"] .didipart-header .header-quick-nav,
body[data-sf-theme="didipart"] .didipart-header .header-actions { min-width: 0; }
body[data-sf-theme="didipart"] .didipart-header .brand img {
  width: auto !important;
  max-width: 196px !important;
  max-height: 62px !important;
  object-fit: contain;
}
body[data-sf-theme="didipart"] .didipart-header .header-quick-nav {
  justify-content: center;
  overflow: hidden;
}
body[data-sf-theme="didipart"] .didipart-header .header-quick-nav a { white-space: nowrap; }

/* Product detail: one quiet outer surface; variation choices stay readable without
   a stack of nested cards and borders. */
body[data-sf-theme="didipart"] .didipart-product-page .product-page__buy-panel {
  border-color: var(--dp-line) !important;
  box-shadow: var(--dp-shadow-xs) !important;
}
body[data-sf-theme="didipart"] .didipart-product-page .buy-box {
  padding: 16px !important;
  background: var(--dp-soft) !important;
  border: 0 !important;
  border-inline-start: 3px solid var(--dp-brand) !important;
  border-radius: 16px !important;
}
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes {
  display: grid;
  gap: 9px;
  margin-bottom: 16px !important;
}
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .attribute-item {
  margin: 0 !important;
  padding: 11px 12px;
  background: #fff;
  border: 0 !important;
  border-radius: 12px;
  box-shadow: inset 0 0 0 1px var(--dp-line);
}
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .attribute-item__controls {
  margin-top: 7px;
}
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .attribute-item__controls > * {
  border: 0 !important;
  box-shadow: none !important;
}
body[data-sf-theme="didipart"] .didipart-product-page .stock-status,
body[data-sf-theme="didipart"] .didipart-product-page .price-section,
body[data-sf-theme="didipart"] .didipart-product-page .quantity-selector {
  box-shadow: none !important;
}

/* Related products are a real rail, including while Swiper is loading. */
body[data-sf-theme="didipart"] .didipart-related-products .related-products-slider-shell {
  min-width: 0;
  overflow: visible !important;
}
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper {
  width: 100%;
  min-width: 0;
  overflow: hidden !important;
}
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper .swiper-wrapper {
  display: flex;
  align-items: stretch;
}
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper .swiper-slide {
  display: flex;
  height: auto;
  min-width: 0;
}
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper .product-card { width: 100%; }

/* All custom controls share one RTL visual contract. */
body[data-sf-theme="didipart"] :is(.slider-nav--prev,.home-product-nav--prev,.home-slider-nav--prev) .icon {
  transform: none !important;
}
body[data-sf-theme="didipart"] :is(.slider-nav--next,.home-product-nav--next,.home-slider-nav--next) .icon {
  transform: rotate(180deg) !important;
}

/* Filters: remove the large white shell and keep the accordion itself light. */
body[data-sf-theme="didipart"] .products-filters-sidebar {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
body[data-sf-theme="didipart"] .products-filters-sidebar .products-filters-sidebar__head,
body[data-sf-theme="didipart"] .products-filters-sidebar .product-filter-block {
  background: var(--dp-soft) !important;
  border: 1px solid var(--dp-line) !important;
  box-shadow: none !important;
}
body[data-sf-theme="didipart"] .product-filter-block .card-header,
body[data-sf-theme="didipart"] .product-filter-block__head {
  background: transparent !important;
  color: var(--dp-ink) !important;
  border-bottom-color: var(--dp-line) !important;
  box-shadow: none !important;
}
body[data-sf-theme="didipart"] .filter-count {
  margin-inline-start: auto !important;
  margin-inline-end: 0 !important;
}

/* Company/brand showcase and brand archive use the same quiet tile language. */
body[data-sf-theme="didipart"] .attribute-showcase-section { margin-top: var(--dp-section-gap); }
body[data-sf-theme="didipart"] .attribute-showcase-section .home-showcase-swiper-wrap {
  position: relative;
  min-width: 0;
  padding: 12px 46px;
  background: var(--dp-soft);
  border: 1px solid var(--dp-line);
  border-radius: 22px;
  overflow: hidden;
}
body[data-sf-theme="didipart"] .attribute-showcase-section .home-showcase-swiper { overflow: hidden; }
body[data-sf-theme="didipart"] .attribute-showcase-section .swiper-wrapper {
  display: flex;
  align-items: stretch;
}
body[data-sf-theme="didipart"] .attribute-showcase-section .swiper-slide { width: 210px; height: auto; }
body[data-sf-theme="didipart"] .home-showcase-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 9px;
  min-height: 132px;
  padding: 12px;
  color: var(--dp-ink);
  background: #fff;
  border: 1px solid var(--dp-line);
  border-radius: 16px;
  text-align: center;
}
body[data-sf-theme="didipart"] .home-showcase-card__media {
  display: grid;
  place-items: center;
  width: 100%;
  height: 66px;
}
body[data-sf-theme="didipart"] .home-showcase-card__media img {
  max-width: 100%;
  max-height: 60px;
  object-fit: contain;
}
body[data-sf-theme="didipart"] .home-showcase-card__title { font-size: 12px; font-weight: 800; }
body[data-sf-theme="didipart"] .home-showcase-card__count { color: var(--dp-muted); font-size: 10px; }
body[data-sf-theme="didipart"] .home-showcase-nav { color: var(--dp-brand); }
body[data-sf-theme="didipart"] .archive-terms-page { color: var(--dp-ink); }
body[data-sf-theme="didipart"] .archive-terms-header { margin-bottom: 18px; }
body[data-sf-theme="didipart"] .archive-terms-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
body[data-sf-theme="didipart"] .archive-term-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 12px;
  color: var(--dp-ink);
  background: #fff;
  border: 1px solid var(--dp-line);
  border-radius: 16px;
}
body[data-sf-theme="didipart"] .archive-term-card__media { display: grid; place-items: center; min-height: 76px; }
body[data-sf-theme="didipart"] .archive-term-card__media img { max-width: 100%; max-height: 68px; object-fit: contain; }
body[data-sf-theme="didipart"] .archive-term-card__placeholder { color: var(--dp-brand); font-size: 28px; font-weight: 900; }
body[data-sf-theme="didipart"] .archive-term-card__title { margin: 8px 0 4px; font-size: 12px; line-height: 1.7; }
body[data-sf-theme="didipart"] .archive-term-card__desc { color: var(--dp-muted); font-size: 10px; }
body[data-sf-theme="didipart"] .archive-term-card__badge { color: var(--dp-muted); font-size: 10px; }

/* Attribute directory: keep filter term archives aligned with Didipart page shells. */
body[data-sf-theme="didipart"] .sf-page-filter-terms .filter-terms-content {
  padding: 0 0 44px;
}
body[data-sf-theme="didipart"] .sf-page-filter-terms .filter-terms-content__head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 18px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--dp-line);
}
body[data-sf-theme="didipart"] .sf-page-filter-terms .filter-terms-content__eyebrow {
  display: block;
  margin-bottom: 4px;
  color: var(--dp-brand);
  font-size: 10px;
  font-weight: 800;
}
body[data-sf-theme="didipart"] .sf-page-filter-terms .filter-terms-content__head h2 {
  margin: 0;
  color: var(--dp-ink);
  font-size: 18px;
  line-height: 1.7;
}
body[data-sf-theme="didipart"] .sf-page-filter-terms .filter-terms-content__count {
  flex: 0 0 auto;
  padding: 7px 11px;
  color: var(--dp-muted);
  background: var(--dp-soft);
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
}
body[data-sf-theme="didipart"] .sf-page-filter-terms .archive-terms-page {
  padding: 0;
}
body[data-sf-theme="didipart"] .sf-page-filter-terms .archive-terms-search-wrap {
  max-width: none;
  margin: 0 0 18px;
}
body[data-sf-theme="didipart"] .sf-page-filter-terms .archive-terms-search {
  width: 100%;
  min-height: 48px;
  padding-inline: 18px;
  color: var(--dp-ink);
  background: var(--dp-soft);
  border: 1px solid transparent;
  border-radius: 13px;
  text-align: right;
  box-shadow: none;
}
body[data-sf-theme="didipart"] .sf-page-filter-terms .archive-terms-search:focus {
  background: #fff;
  border-color: var(--dp-brand);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--dp-brand) 10%, transparent);
}
body[data-sf-theme="didipart"] .sf-page-filter-terms .archive-terms-grid {
  gap: 14px;
}
body[data-sf-theme="didipart"] .sf-page-filter-terms .archive-term-card {
  min-height: 208px;
  padding: 18px;
  border-color: var(--dp-line);
  border-radius: 18px;
  transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
body[data-sf-theme="didipart"] .sf-page-filter-terms .archive-term-card:not(.archive-term-card--empty):hover {
  border-color: color-mix(in srgb, var(--dp-brand) 35%, var(--dp-line));
  box-shadow: 0 12px 28px rgba(20, 51, 30, .08);
  transform: translateY(-3px);
}
body[data-sf-theme="didipart"] .sf-page-filter-terms .archive-term-card__media {
  min-height: 108px;
  overflow: hidden;
  border-radius: 10px;
}
body[data-sf-theme="didipart"] .sf-page-filter-terms .archive-term-card__media img {
  width: min(100%, 190px);
  height: 96px;
  max-width: 190px;
  max-height: 96px;
  object-fit: cover;
  object-position: center;
}
body[data-sf-theme="didipart"] .sf-page-filter-terms .archive-term-card__title {
  margin-top: 12px;
  font-size: 13px;
  font-weight: 800;
}
body[data-sf-theme="didipart"] .sf-page-filter-terms .archive-term-card__badge {
  display: inline-flex;
  margin-top: 3px;
  font-size: 10.5px;
}
body[data-sf-theme="didipart"] .sf-page-filter-terms .archive-term-card--empty {
  opacity: .55;
}

@media (max-width: 640px) {
  body[data-sf-theme="didipart"] .sf-page-filter-terms .filter-terms-content__head {
    align-items: center;
    gap: 12px;
  }
  body[data-sf-theme="didipart"] .sf-page-filter-terms .archive-term-card {
    min-height: 174px;
    padding: 14px;
  }
  body[data-sf-theme="didipart"] .sf-page-filter-terms .archive-term-card__media {
    min-height: 82px;
  }
  body[data-sf-theme="didipart"] .sf-page-filter-terms .archive-term-card__media img {
    width: min(100%, 145px);
    height: 76px;
    max-width: 145px;
    max-height: 76px;
    object-fit: cover;
  }
}

/* Article: smaller lead image plus a useful contents rail. */
body[data-sf-theme="didipart"] .didipart-article-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 250px;
  gap: 18px;
  align-items: start;
}
body[data-sf-theme="didipart"] .didipart-article-card { min-width: 0; padding: 20px !important; }
body[data-sf-theme="didipart"] .didipart-featured-cover {
  width: min(100%, 760px);
  height: 285px;
  margin: 0 auto 18px;
  border-radius: 16px;
}
body[data-sf-theme="didipart"] .didipart-featured-cover__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
body[data-sf-theme="didipart"] .didipart-article-date { display: block; margin-bottom: 10px; }
body[data-sf-theme="didipart"] .didipart-article-sidebar {
  position: sticky;
  top: 108px;
  display: grid;
  gap: 12px;
}
body[data-sf-theme="didipart"] .didipart-article-toc,
body[data-sf-theme="didipart"] .didipart-article-aside-note { padding: 16px; }
body[data-sf-theme="didipart"] .didipart-article-toc h2 { margin: 0 0 10px; font-size: 15px; }
body[data-sf-theme="didipart"] .didipart-article-toc ol { display: grid; gap: 7px; margin: 0; padding: 0 18px 0 0; }
body[data-sf-theme="didipart"] .didipart-article-toc li { font-size: 11px; line-height: 1.8; }
body[data-sf-theme="didipart"] .didipart-article-toc li.is-level-3 { padding-right: 10px; color: var(--dp-muted); }
body[data-sf-theme="didipart"] .didipart-article-toc a { color: inherit; }
body[data-sf-theme="didipart"] .didipart-article-aside-note strong { display: block; margin-bottom: 7px; color: var(--dp-brand); }
body[data-sf-theme="didipart"] .didipart-article-aside-note p { margin: 0 0 10px; color: var(--dp-muted); font-size: 11px; line-height: 1.9; }
body[data-sf-theme="didipart"] .didipart-article-aside-note a { color: var(--dp-brand); font-size: 11px; font-weight: 800; }

/* Contact/about/sidebar polish. */
body[data-sf-theme="didipart"] .contact-layout { grid-template-columns: minmax(230px, 320px) minmax(0, 1fr); }
body[data-sf-theme="didipart"] .home-about__content { min-height: 100%; }
@media (max-width: 900px) {
  body[data-sf-theme="didipart"] .didipart-article-layout { grid-template-columns: 1fr; }
  body[data-sf-theme="didipart"] .didipart-article-sidebar { position: static; }
  body[data-sf-theme="didipart"] .didipart-featured-cover { height: 220px; }
  body[data-sf-theme="didipart"] .archive-terms-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  body[data-sf-theme="didipart"] .didipart-header .header-main { grid-template-columns: 1fr auto !important; }
  body[data-sf-theme="didipart"] .didipart-header .brand img { max-width: 166px !important; max-height: 52px !important; }
  body[data-sf-theme="didipart"] .attribute-showcase-section .home-showcase-swiper-wrap { padding-inline: 36px; }
  body[data-sf-theme="didipart"] .attribute-showcase-section .swiper-slide { width: 174px; }
  body[data-sf-theme="didipart"] .archive-terms-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body[data-sf-theme="didipart"] .didipart-article-card { padding: 14px !important; }
  body[data-sf-theme="didipart"] .didipart-featured-cover { height: 190px; }
}



/* ==========================================================================
   Didipart 1.0.14 — final carousel/header/card consolidation
   One owner for mobile header actions and slider controls.
   ========================================================================== */
body[data-sf-theme="didipart"] {
  --dp-carousel-control-w: 38px;
  --dp-carousel-control-h: 48px;
  --dp-card-media-h: 188px;
}

/* Custom controls use our SVG only; Swiper's native pseudo icon must never double-render. */
body[data-sf-theme="didipart"] :is(.home-slider-nav,.slider-nav,.home-product-nav)::after {
  content: none !important;
  display: none !important;
}
body[data-sf-theme="didipart"] :is(.home-slider-nav,.slider-nav,.home-product-nav) {
  -webkit-appearance: none;
  appearance: none;
  position: absolute !important;
  top: 43% !important;
  z-index: 30 !important;
  display: grid !important;
  place-items: center !important;
  width: var(--dp-carousel-control-w) !important;
  height: var(--dp-carousel-control-h) !important;
  min-width: var(--dp-carousel-control-w) !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translateY(-50%) !important;
  color: var(--dp-brand) !important;
  background: rgba(255,255,255,.94) !important;
  border: 1px solid color-mix(in srgb,var(--dp-brand) 18%,#fff) !important;
  border-radius: 11px !important;
  box-shadow: 0 9px 24px rgba(15,23,42,.13) !important;
  backdrop-filter: blur(10px);
  overflow: hidden;
}
body[data-sf-theme="didipart"] :is(.home-slider-nav,.slider-nav,.home-product-nav) .icon {
  width: 18px !important;
  height: 18px !important;
  pointer-events: none;
}
body[data-sf-theme="didipart"] :is(.slider-nav--next,.home-product-nav--next,.home-slider-nav--next) .icon {
  transform: rotate(180deg) !important;
}
body[data-sf-theme="didipart"] :is(.slider-nav--prev,.home-product-nav--prev,.home-slider-nav--prev) .icon {
  transform: none !important;
}
body[data-sf-theme="didipart"] :is(.home-slider-nav,.slider-nav,.home-product-nav):hover:not(.swiper-button-disabled):not(.swiper-button-lock) {
  color: var(--dp-brand-text) !important;
  background: var(--dp-brand) !important;
  border-color: var(--dp-brand) !important;
  transform: translateY(-50%) !important;
  box-shadow: 0 10px 28px color-mix(in srgb,var(--dp-brand) 22%,transparent) !important;
}
body[data-sf-theme="didipart"] :is(.home-slider-nav,.slider-nav,.home-product-nav).swiper-button-disabled,
body[data-sf-theme="didipart"] :is(.home-slider-nav,.slider-nav,.home-product-nav).swiper-button-lock,
body[data-sf-theme="didipart"] :is(.home-slider-nav,.slider-nav,.home-product-nav)[disabled] {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Product rails use the full width; navigation overlays the first/last card media. */
body[data-sf-theme="didipart"] :is(.product-slider-shell,.related-products-slider-shell,.home-product-swiper-wrap,.blog-small-wrap) {
  position: relative !important;
  padding-inline: 0 !important;
  overflow: visible !important;
}
body[data-sf-theme="didipart"] :is(.amazing-swiper,.new-products-swiper,.related-products-swiper,.home-product-swiper,.blog-small-swiper) {
  overflow: hidden !important;
  padding: 4px 2px 12px !important;
}
body[data-sf-theme="didipart"] :is(.product-slider-shell,.related-products-slider-shell,.home-product-swiper-wrap,.blog-small-wrap) :is(.slider-nav--prev,.home-product-nav--prev) {
  right: 6px !important;
  left: auto !important;
}
body[data-sf-theme="didipart"] :is(.product-slider-shell,.related-products-slider-shell,.home-product-swiper-wrap,.blog-small-wrap) :is(.slider-nav--next,.home-product-nav--next) {
  left: 6px !important;
  right: auto !important;
}

/* Native category-rail controls: same geometry, native pseudo chevron only. */
body[data-sf-theme="didipart"] .category-strip .swiper { padding-inline: 2px !important; }
body[data-sf-theme="didipart"] .category-strip :is(.swiper-button-prev,.swiper-button-next) {
  position: absolute !important;
  top: 44% !important;
  z-index: 30 !important;
  display: grid !important;
  place-items: center !important;
  width: 36px !important;
  height: 46px !important;
  margin: 0 !important;
  transform: translateY(-50%) !important;
  color: var(--dp-brand) !important;
  background: rgba(255,255,255,.94) !important;
  border: 1px solid color-mix(in srgb,var(--dp-brand) 18%,#fff) !important;
  border-radius: 10px !important;
  box-shadow: 0 8px 22px rgba(15,23,42,.12) !important;
}
body[data-sf-theme="didipart"] .category-strip .swiper-button-prev { right: 5px !important; left: auto !important; }
body[data-sf-theme="didipart"] .category-strip .swiper-button-next { left: 5px !important; right: auto !important; }
body[data-sf-theme="didipart"] .category-strip .swiper-button-prev::after { content: "›" !important; font: 800 25px/1 Arial,sans-serif !important; }
body[data-sf-theme="didipart"] .category-strip .swiper-button-next::after { content: "‹" !important; font: 800 25px/1 Arial,sans-serif !important; }
body[data-sf-theme="didipart"] .category-strip :is(.swiper-button-disabled,.swiper-button-lock) { opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; }

/* Product-card sizing: calm 2-line title, stable price/actions, no stretched status pill. */
body[data-sf-theme="didipart"] .product-card {
  min-height: 354px !important;
  padding: 10px !important;
  border-radius: 17px !important;
}
body[data-sf-theme="didipart"] .product-card__image {
  height: var(--dp-card-media-h) !important;
  min-height: var(--dp-card-media-h) !important;
  margin: -10px -10px 5px !important;
  width: calc(100% + 20px) !important;
  padding: 3px !important;
}
body[data-sf-theme="didipart"] .product-card h3 {
  min-height: 48px !important;
  margin: 8px 2px 4px !important;
  font-size: 13px !important;
  line-height: 1.72 !important;
}
body[data-sf-theme="didipart"] .product-card__prices {
  min-height: 44px !important;
  margin-top: 0 !important;
  display: flex !important;
  flex-direction: column;
  justify-content: center !important;
  align-items: flex-start;
}
body[data-sf-theme="didipart"] .product-card__prices strong { font-size: 14px !important; }
body[data-sf-theme="didipart"] .product-card__actions { min-height: 42px; margin-top: auto !important; padding-top: 5px; }
body[data-sf-theme="didipart"] .product-stock-label,
body[data-sf-theme="didipart"] .status-pill {
  width: auto !important;
  max-width: calc(100% - 20px) !important;
  min-width: 0 !important;
  height: 25px !important;
  padding: 0 8px !important;
  white-space: nowrap !important;
  border-radius: 999px !important;
  line-height: 25px !important;
}

/* Category products are exactly 3 full cards desktop, 2 full cards mobile. */
@media (min-width: 768px) {
  body[data-sf-theme="didipart"] .home-cattabs-swiper.swiper-initialized .swiper-slide,
  body[data-sf-theme="didipart"] .home-cattabs-swiper.swiper-fallback .swiper-slide {
    width: calc((100% - 32px) / 3) !important;
    flex: 0 0 calc((100% - 32px) / 3) !important;
  }
}
@media (max-width: 767.98px) {
  body[data-sf-theme="didipart"] .home-cattabs-swiper.swiper-initialized .swiper-slide,
  body[data-sf-theme="didipart"] .home-cattabs-swiper.swiper-fallback .swiper-slide {
    width: calc((100% - 10px) / 2) !important;
    flex: 0 0 calc((100% - 10px) / 2) !important;
  }
}

/* Single amazing product should read as a product, not a tiny 1/3 slider tile. */
body[data-sf-theme="didipart"] .amazing-layout--single {
  grid-template-columns: var(--dp-feature-panel-width) minmax(300px, 390px) !important;
  justify-content: center;
}
body[data-sf-theme="didipart"] .amazing-slider-shell.is-single-product { width: 100%; max-width: 390px; }
body[data-sf-theme="didipart"] .amazing-slider-shell.is-single-product .product-card { min-height: 326px !important; }

/* Contact page must remain correct even when its optional page bundle is stale/cached. */
body[data-sf-theme="didipart"] .sf-page-contact .didipart-contact-grid {
  direction: ltr;
  display: grid !important;
  grid-template-columns: minmax(250px, 320px) minmax(0, 1fr) !important;
  grid-template-areas: "info form";
  align-items: start !important;
  gap: clamp(20px, 2.4vw, 36px) !important;
  width: 100% !important;
}
body[data-sf-theme="didipart"] .sf-page-contact .didipart-contact-grid > * {
  direction: rtl;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}
body[data-sf-theme="didipart"] .sf-page-contact .didipart-contact-info {
  grid-area: info;
  position: sticky;
  top: 110px;
  align-self: start !important;
  height: auto !important;
  min-height: 0 !important;
}
body[data-sf-theme="didipart"] .sf-page-contact .didipart-contact-form {
  grid-area: form;
  min-width: 0;
}
body[data-sf-theme="didipart"] .sf-page-contact .contact-maps-wrap :is(.contact-map-iframe,.contact-map-leaflet) {
  height: 260px !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  overflow: hidden;
}
body[data-sf-theme="didipart"] .sf-page-contact .contact-maps-wrap .contact-map-image img {
  display: block;
  width: 100%;
  max-height: 260px;
  object-fit: cover;
}
@media (max-width: 900px) {
  body[data-sf-theme="didipart"] .sf-page-contact .didipart-contact-grid {
    direction: rtl;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas: "form" "info";
  }
  body[data-sf-theme="didipart"] .sf-page-contact .didipart-contact-info {
    position: static;
  }
}
@media (max-width: 575.98px) {
  body[data-sf-theme="didipart"] .sf-page-contact .contact-maps-wrap :is(.contact-map-iframe,.contact-map-leaflet) {
    height: 210px !important;
  }
}
body[data-sf-theme="didipart"] .amazing-slider-shell.is-single-product .product-card__image { height: 166px !important; min-height: 166px !important; }
body[data-sf-theme="didipart"] .product-card--amazing .product-card__countdown {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr));
  width: 100%;
  gap: 4px !important;
  margin: 4px 0 7px !important;
  direction: ltr !important;
}
body[data-sf-theme="didipart"] .product-card--amazing .product-card__countdown span {
  min-width: 0 !important;
  width: 100% !important;
  height: 36px !important;
  padding: 3px 2px !important;
  background: var(--dp-soft) !important;
  border: 1px solid var(--dp-line) !important;
  border-radius: 8px !important;
}
body[data-sf-theme="didipart"] .product-card--amazing .product-card__countdown b { font-size: 10px !important; }
body[data-sf-theme="didipart"] .product-card--amazing .product-card__countdown small { margin-top: 2px; font-size: 6.5px !important; }

/* Compact quick categories when only a handful exist; avoids a large empty right/left field. */
body[data-sf-theme="didipart"] .categories-swiper[data-slide-count="1"] { max-width: 190px; margin-inline: auto; }
body[data-sf-theme="didipart"] .categories-swiper[data-slide-count="2"] { max-width: 390px; margin-inline: auto; }
body[data-sf-theme="didipart"] .categories-swiper[data-slide-count="3"] { max-width: 580px; margin-inline: auto; }

/* Mobile header: logo right; wishlist/compare remain on top while the other actions live in bottom dock. */
@media (max-width: 991.98px) {
  body[data-sf-theme="didipart"] .didipart-header .header-main {
    direction: rtl !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 64px !important;
    gap: 10px !important;
    padding-block: 5px !important;
  }
  body[data-sf-theme="didipart"] .didipart-header .brand {
    order: 1 !important;
    margin: 0 !important;
    margin-inline-end: 0 !important;
  }
  body[data-sf-theme="didipart"] .didipart-header .brand img {
    width: auto !important;
    max-width: 150px !important;
    max-height: 48px !important;
  }
  body[data-sf-theme="didipart"] .didipart-header .header-actions {
    order: 2 !important;
    display: flex !important;
    flex: 0 0 auto !important;
    width: auto !important;
    margin: 0 !important;
    gap: 6px !important;
  }
  body[data-sf-theme="didipart"] .didipart-header :is(.header-quick-nav,.main-navigation,.search-open-button,.account-link,.account-menu,.menuuser--didipart,.cart-action,.mobile-menu-button) {
    display: none !important;
  }
  body[data-sf-theme="didipart"] .didipart-header :is(.wishlist-action,.compare-action) {
    display: grid !important;
    place-items: center !important;
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
    color: var(--dp-brand) !important;
    background: var(--dp-soft) !important;
    border: 1px solid var(--dp-line) !important;
    border-radius: 11px !important;
  }
}

@media (max-width: 767.98px) {
  body[data-sf-theme="didipart"] {
    --dp-carousel-control-w: 32px;
    --dp-carousel-control-h: 40px;
    --dp-card-media-h: 146px;
  }
  body[data-sf-theme="didipart"] :is(.home-slider-nav,.slider-nav,.home-product-nav) { top: 40% !important; border-radius: 9px !important; }
  body[data-sf-theme="didipart"] :is(.product-slider-shell,.related-products-slider-shell,.home-product-swiper-wrap,.blog-small-wrap) :is(.slider-nav--prev,.home-product-nav--prev) { right: 3px !important; }
  body[data-sf-theme="didipart"] :is(.product-slider-shell,.related-products-slider-shell,.home-product-swiper-wrap,.blog-small-wrap) :is(.slider-nav--next,.home-product-nav--next) { left: 3px !important; }
  body[data-sf-theme="didipart"] .product-card { min-height: 304px !important; padding: 8px !important; border-radius: 14px !important; }
  body[data-sf-theme="didipart"] .product-card__image { width: calc(100% + 16px) !important; margin: -8px -8px 4px !important; padding: 2px !important; border-radius: 14px 14px 0 0 !important; }
  body[data-sf-theme="didipart"] .product-card h3 { min-height: 40px !important; margin: 6px 1px 3px !important; font-size: 10.5px !important; line-height: 1.72 !important; }
  body[data-sf-theme="didipart"] .product-card__prices { min-height: 40px !important; }
  body[data-sf-theme="didipart"] .product-card__prices strong { font-size: 11px !important; }
  body[data-sf-theme="didipart"] .product-card__actions { min-height: 38px; margin-top: auto !important; padding-top: 3px; }
  body[data-sf-theme="didipart"] .product-stock-label,
  body[data-sf-theme="didipart"] .status-pill { top: 6px !important; right: 6px !important; height: 22px !important; padding-inline: 7px !important; font-size: 7.5px !important; line-height: 22px !important; }
  body[data-sf-theme="didipart"] .amazing-layout--single { grid-template-columns: 1fr !important; }
  body[data-sf-theme="didipart"] .amazing-slider-shell.is-single-product { max-width: none; }
  body[data-sf-theme="didipart"] .amazing-slider-shell.is-single-product .product-card__image { height: 158px !important; min-height: 158px !important; }
}


/* 1.0.14 final visual QA refinements */
body[data-sf-theme="didipart"] .home-slider-nav {
  top: 50% !important;
  width: 42px !important;
  height: 54px !important;
}
body[data-sf-theme="didipart"] .home-product-nav > i,
body[data-sf-theme="didipart"] .home-slider-nav > i {
  display: block !important;
  font-size: 23px !important;
  line-height: 1 !important;
  pointer-events: none !important;
}
body[data-sf-theme="didipart"] .home-product-nav {
  top: 42% !important;
}
body[data-sf-theme="didipart"] .section-heading,
body[data-sf-theme="didipart"] .home-section-header {
  margin-bottom: 14px !important;
}
body[data-sf-theme="didipart"] .new-products-section + .new-products-section {
  margin-top: clamp(40px,5vw,68px) !important;
}
body[data-sf-theme="didipart"] .product-card__prices strong,
body[data-sf-theme="didipart"] .product-card__prices span {
  max-width: 100%;
  overflow-wrap: anywhere;
}
body[data-sf-theme="didipart"] .product-card__actions :is(.icon-button,.add-to-cart) {
  flex: 0 0 auto;
}
body[data-sf-theme="didipart"] .product-card .discount-badge:empty { display:none !important; }
body[data-sf-theme="didipart"] .swiper-button-lock { display:none !important; }

@media (max-width: 767.98px) {
  body[data-sf-theme="didipart"] .home-slider-nav {
    top: 50% !important;
    width: 36px !important;
    height: 46px !important;
    border-radius: 10px !important;
  }
  body[data-sf-theme="didipart"] .home-product-nav { top: 40% !important; }
  body[data-sf-theme="didipart"] .product-card {
    min-height: 326px !important;
  }
  body[data-sf-theme="didipart"] .product-card__image {
    height: 160px !important;
    min-height: 160px !important;
  }
  body[data-sf-theme="didipart"] .product-card h3 {
    min-height: 44px !important;
    font-size: 11.75px !important;
    line-height: 1.65 !important;
  }
  body[data-sf-theme="didipart"] .product-card__prices strong { font-size: 12.5px !important; }
  body[data-sf-theme="didipart"] .product-card__actions :is(.icon-button,.add-to-cart) {
    min-width: 32px !important;
    width: 32px !important;
    height: 32px !important;
  }
}

/* 1.0.16 — live-QA overrides (must remain last) */
body[data-sf-theme="didipart"] .didipart-header .header-main { grid-template-columns:minmax(154px,220px) minmax(0,1fr) auto !important; }
body[data-sf-theme="didipart"] .didipart-header .header-quick-nav { justify-content:flex-start !important; justify-self:stretch !important; }
body[data-sf-theme="didipart"] .didipart-header .brand { min-width:0 !important; max-width:220px !important; }
body[data-sf-theme="didipart"] .didipart-header .brand img { max-width:220px !important; max-height:68px !important; object-fit:contain !important; }
body[data-sf-theme="didipart"] .product-buy-panel :is(.variant-group,.attribute-group,.product-attribute-group) { border:0 !important; background:transparent !important; box-shadow:none !important; padding:8px 0 !important; margin:0 !important; }
body[data-sf-theme="didipart"] .product-buy-panel :is(.variant-options,.attribute-options,.product-attribute-options) { display:flex !important; flex-wrap:wrap !important; gap:8px !important; min-height:48px !important; padding:8px !important; border:1px solid var(--dp-line) !important; border-radius:12px !important; background:var(--dp-soft) !important; }
body[data-sf-theme="didipart"] .product-buy-panel :is(.variant-option,.attribute-option,.product-attribute-option) { min-height:38px !important; padding:7px 13px !important; border-radius:9px !important; }
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper { width:100% !important; overflow:hidden !important; }
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper .swiper-wrapper { display:flex !important; flex-wrap:nowrap !important; gap:16px !important; }
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper:not(.swiper-initialized) .swiper-slide { flex:0 0 calc((100% - 48px)/4) !important; width:calc((100% - 48px)/4) !important; }
body[data-sf-theme="didipart"] :is(.slider-nav--prev,.home-product-nav--prev,.home-slider-nav--prev) .icon { transform:none !important; }
body[data-sf-theme="didipart"] :is(.slider-nav--next,.home-product-nav--next,.home-slider-nav--next) .icon { transform:rotate(180deg) !important; }
body[data-sf-theme="didipart"] .product-filter :is(.filter-heading,.filter-title,.accordion-button) { padding-left:42px !important; padding-right:0 !important; position:relative !important; }
body[data-sf-theme="didipart"] .product-filter :is(.filter-toggle,.filter-heading button,.accordion-button)::after { left:14px !important; right:auto !important; position:absolute !important; }
body[data-sf-theme="didipart"] .sf-page-contact .contact-layout { display:grid !important; grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr) !important; gap:24px !important; align-items:stretch !important; }
body[data-sf-theme="didipart"] .sf-page-contact .contact-layout > * { width:100% !important; min-width:0 !important; }
body[data-sf-theme="didipart"] .sf-page-contact :is(.form-render,.contact-form,.card-surface) { max-width:none !important; }
body[data-sf-theme="didipart"] .didipart-featured-cover { height:auto !important; aspect-ratio:auto !important; overflow:visible !important; }
body[data-sf-theme="didipart"] .didipart-featured-cover img { display:block !important; width:auto !important; max-width:100% !important; height:auto !important; max-height:480px !important; margin-inline:auto !important; object-fit:contain !important; }
body[data-sf-theme="didipart"] .didipart-page :is(.article-content-v2.text, .article-content-v2 .text) img { display:block !important; width:auto !important; max-width:100% !important; height:auto !important; max-height:480px !important; object-fit:contain !important; }
@media (max-width:767.98px) {
  body[data-sf-theme="didipart"] .didipart-header .header-main { grid-template-columns:minmax(0,1fr) auto !important; }
  body[data-sf-theme="didipart"] .didipart-header .brand img { max-width:150px !important; max-height:48px !important; }
  body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper:not(.swiper-initialized) .swiper-slide { flex-basis:calc((100% - 16px)/2) !important; width:calc((100% - 16px)/2) !important; }
  body[data-sf-theme="didipart"] .sf-page-contact .contact-layout { grid-template-columns:1fr !important; }
}

/* 1.0.19 product final override — intentionally after live-QA. */
body[data-sf-theme="didipart"] .didipart-product-page .product-page__buy-panel { padding:8px 4px 8px 20px !important; background:transparent !important; border:0 !important; border-radius:0 !important; box-shadow:none !important; }
body[data-sf-theme="didipart"] .didipart-product-page .buy-box { padding:18px 0 0 !important; background:transparent !important; border:0 !important; border-top:1px solid var(--dp-line) !important; border-radius:0 !important; box-shadow:none !important; }
body[data-sf-theme="didipart"] .didipart-product-page :is(.attribute-item,.attribute-item__controls,.price-box,.price-section,.quantity-wrapper,.volume-pricing-table,.stock-status) { background:transparent !important; border:0 !important; border-radius:0 !important; box-shadow:none !important; }
body[data-sf-theme="didipart"] .didipart-product-page .attribute-item { padding:12px 0 !important; margin:0 !important; border-bottom:1px solid var(--dp-line) !important; }
body[data-sf-theme="didipart"] .didipart-product-page .attribute-item__controls { min-height:0 !important; padding:7px 0 !important; }
body[data-sf-theme="didipart"] .didipart-product-page .stock-status { width:auto !important; padding:2px 0 !important; }
body[data-sf-theme="didipart"] .didipart-product-page .price-section { padding:14px 0 10px !important; border-block:1px solid var(--dp-line) !important; }
body[data-sf-theme="didipart"] .didipart-product-page #product-qty-label { display:inline-flex !important; width:max-content !important; max-width:100% !important; min-height:0 !important; margin:0 0 6px !important; padding:0 !important; background:transparent !important; border:0 !important; border-radius:0 !important; }
body[data-sf-theme="didipart"] .didipart-product-page .product-qty-presets { width:auto !important; justify-content:flex-start !important; }
body[data-sf-theme="didipart"] .didipart-product-page .product-qty-preset-btn { width:auto !important; min-width:42px; }
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper.swiper-initialized .swiper-wrapper { display:flex !important; flex-wrap:nowrap !important; gap:0 !important; }
body[data-sf-theme="didipart"] .didipart-related-products .related-products-swiper.swiper-initialized .swiper-slide { flex-shrink:0 !important; width:auto; }
@media (max-width:767.98px) { body[data-sf-theme="didipart"] .didipart-product-page .product-page__buy-panel { padding:8px 0 !important; } }

/* 1.1.2 product purchase flow — compact controls, no nested card troughs. */
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes {
  display:grid !important;
  gap:0 !important;
  margin:8px 0 10px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .attribute-item {
  display:grid !important;
  grid-template-columns:minmax(76px, 104px) minmax(0, 1fr);
  align-items:center;
  column-gap:16px;
  row-gap:3px;
  margin:0 !important;
  padding:13px 0 !important;
  background:transparent !important;
  border:0 !important;
  border-bottom:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .attribute-item > .form-label {
  grid-column:1;
  grid-row:1 / span 2;
  margin:0 !important;
  color:var(--dp-ink) !important;
  font-size:12px !important;
}
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .attribute-cascade-hint {
  grid-column:2;
  margin:0 !important;
}
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .attribute-item__controls {
  grid-column:2;
  width:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .attribute-item__controls > *,
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes :is(.button-swatch-options,.radio-swatch-options,.color-options,.term-visual-options,.swatch-select-wrap) {
  width:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .swatch-option-wrap {
  display:inline-flex !important;
  flex:0 0 auto !important;
  width:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes :is(.button-swatch-option,.radio-swatch-option,.term-visual-option) {
  width:auto !important;
  min-width:64px !important;
  min-height:36px !important;
  padding:7px 12px !important;
  border:1px solid var(--dp-line-strong) !important;
  border-radius:10px !important;
  background:#fff !important;
  box-shadow:none !important;
}
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .button-swatch-option.selected,
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .radio-swatch-option:has(.radio-swatch-input:checked),
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .term-visual-option.selected {
  color:#fff !important;
  background:var(--dp-brand) !important;
  border-color:var(--dp-brand) !important;
}
body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .swatch-clear-btn {
  top:-6px !important;
  inset-inline-end:-6px !important;
  width:18px !important;
  height:18px !important;
  min-height:18px !important;
  padding:0 !important;
  border:2px solid #fff !important;
  box-shadow:0 1px 4px rgba(15,23,42,.16) !important;
}
body[data-sf-theme="didipart"] .didipart-product-page .quantity-wrapper {
  margin:0 0 14px !important;
  padding:0 !important;
}
body[data-sf-theme="didipart"] .didipart-product-page .quantity-wrapper #product-qty-label {
  display:block !important;
  width:auto !important;
  max-width:none !important;
  min-height:0 !important;
  margin:0 0 9px !important;
  padding:0 !important;
  line-height:1.6 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
body[data-sf-theme="didipart"] .didipart-product-page .product-qty-presets {
  gap:7px !important;
  margin:0 0 9px !important;
}
body[data-sf-theme="didipart"] .didipart-product-page .product-qty-preset-btn {
  display:inline-grid !important;
  place-items:center;
  flex:0 0 auto !important;
  width:auto !important;
  min-width:48px !important;
  min-height:38px !important;
  padding:6px 10px !important;
  border-radius:10px !important;
}
body[data-sf-theme="didipart"] .didipart-product-page .product-qty-line-total-wrap {
  display:inline-flex !important;
  align-items:center;
  width:auto !important;
  min-height:0 !important;
  margin:0 0 9px !important;
  padding:6px 10px !important;
  background:var(--dp-soft) !important;
  border:0 !important;
  border-radius:9px !important;
  box-shadow:none !important;
}
@media (max-width:767.98px) {
  body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .attribute-item {
    grid-template-columns:1fr;
    row-gap:8px;
  }
  body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .attribute-item > .form-label,
  body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .attribute-cascade-hint,
  body[data-sf-theme="didipart"] .didipart-product-page #variation-attributes .attribute-item__controls {
    grid-column:1;
    grid-row:auto;
  }
}

body[data-sf-theme="didipart"] .didipart-toast {
  display:block !important;
  pointer-events:none;
}

/* 1.1.3 — settings-driven benefits, reliable feedback and physical RTL controls. */
body[data-sf-theme="didipart"] .benefits-grid {
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr)) !important;
}
body[data-sf-theme="didipart"] .benefit::after { display:none !important; }
body[data-sf-theme="didipart"] .benefit + .benefit { border-inline-start:1px solid var(--dp-line); }
body[data-sf-theme="didipart"] .benefit__icon {
  margin-bottom:5px;
  color:var(--dp-brand);
  font-size:30px;
  line-height:1;
}
body[data-sf-theme="didipart"] .benefit__image {
  width:32px;
  height:32px;
  margin-bottom:5px;
  object-fit:contain;
}
body[data-sf-theme="didipart"] .home-slider-nav--prev {
  right:14px !important;
  left:auto !important;
}
body[data-sf-theme="didipart"] .home-slider-nav--next {
  right:auto !important;
  left:14px !important;
}
body[data-sf-theme="didipart"] .home-slider-nav > i { transform:none !important; }
body[data-sf-theme="didipart"] .didipart-toast.is-visible,
body[data-sf-theme="didipart"] .didipart-toast.show {
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  transform:none !important;
}
@media (max-width:1199.98px) and (min-width:768px) {
  body[data-sf-theme="didipart"] .benefits-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
  body[data-sf-theme="didipart"] .benefit + .benefit { border-inline-start:0; }
  body[data-sf-theme="didipart"] .benefit:not(:nth-child(3n+1)) { border-inline-start:1px solid var(--dp-line); }
  body[data-sf-theme="didipart"] .benefit:nth-child(n+4) { border-top:1px solid var(--dp-line); }
}
@media (max-width:767.98px) {
  body[data-sf-theme="didipart"] .benefits-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  body[data-sf-theme="didipart"] .benefit + .benefit { border-inline-start:0; }
  body[data-sf-theme="didipart"] .benefit:nth-child(even) { border-inline-start:1px solid var(--dp-line); }
  body[data-sf-theme="didipart"] .benefit:nth-child(n+3) { border-top:1px solid var(--dp-line); }
  body[data-sf-theme="didipart"] .didipart-toast { right:12px; bottom:88px; max-width:calc(100vw - 24px); }
}

/* 1.1.4 — nested primary navigation and unmistakable commerce feedback. */
body[data-sf-theme="didipart"] .didipart-header .header-quick-nav {
  gap:clamp(12px,1.8vw,28px);
  overflow:visible !important;
}
body[data-sf-theme="didipart"] .header-quick-item {
  position:relative;
  display:flex;
  align-items:center;
  min-width:0;
}
body[data-sf-theme="didipart"] :is(.header-quick-submenu-toggle,.header-quick-child-toggle) {
  display:grid;
  place-items:center;
  width:24px;
  height:30px;
  padding:0;
  color:var(--dp-muted);
  background:transparent;
  border:0;
  border-radius:7px;
}
body[data-sf-theme="didipart"] :is(.header-quick-submenu-toggle,.header-quick-child-toggle) .mini-icon {
  width:13px;
  height:13px;
  transform:rotate(90deg);
  transition:transform .2s ease;
}
body[data-sf-theme="didipart"] :is(.header-quick-item,.header-quick-submenu li).is-open > :is(.header-quick-submenu-toggle,.header-quick-child-toggle) .mini-icon {
  transform:rotate(-90deg);
}
body[data-sf-theme="didipart"] .header-quick-submenu {
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  z-index:1200;
  display:grid;
  min-width:220px;
  margin:0;
  padding:8px;
  visibility:hidden;
  opacity:0;
  transform:translateY(8px);
  list-style:none;
  background:#fff;
  border:1px solid var(--dp-line);
  border-radius:13px;
  box-shadow:0 18px 44px rgba(15,23,42,.14);
  transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
}
body[data-sf-theme="didipart"] .header-quick-submenu li {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
}
body[data-sf-theme="didipart"] .header-quick-submenu a {
  display:flex;
  align-items:center;
  min-height:40px;
  padding:7px 10px;
  border-radius:8px;
}
body[data-sf-theme="didipart"] .header-quick-submenu a:hover { background:var(--dp-soft); }
body[data-sf-theme="didipart"] .header-quick-submenu .header-quick-submenu {
  top:-8px;
  right:calc(100% + 8px);
}
body[data-sf-theme="didipart"] .header-quick-item:is(:hover,:focus-within,.is-open) > .header-quick-submenu,
body[data-sf-theme="didipart"] .header-quick-submenu li:is(:hover,:focus-within,.is-open) > .header-quick-submenu {
  visibility:visible;
  opacity:1;
  transform:none;
}
body[data-sf-theme="didipart"] .didipart-toast {
  top:22px !important;
  right:50% !important;
  bottom:auto !important;
  left:auto !important;
  /* Chat widget owns 99990–99992; commerce feedback sits one layer above it. */
  z-index:100100 !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  width:max-content;
  max-width:min(92vw,460px) !important;
  min-height:48px;
  padding:12px 20px !important;
  color:#fff !important;
  font-size:13px;
  font-weight:700;
  text-align:center;
  background:#174f32 !important;
  border:1px solid rgba(255,255,255,.22) !important;
  border-radius:12px !important;
  box-shadow:0 18px 48px rgba(15,23,42,.24) !important;
  visibility:hidden !important;
  opacity:0 !important;
  transform:translate(50%,-12px) !important;
  transition:opacity .2s ease,transform .2s ease,visibility .2s ease !important;
}
body[data-sf-theme="didipart"] .didipart-toast:is(.is-visible,.show) {
  visibility:visible !important;
  opacity:1 !important;
  transform:translate(50%,0) !important;
}
@media (max-width:767.98px) {
  body[data-sf-theme="didipart"] .didipart-toast {
    top:12px !important;
    right:12px !important;
    width:calc(100vw - 24px);
    transform:translateY(-10px) !important;
  }
  body[data-sf-theme="didipart"] .didipart-toast:is(.is-visible,.show) { transform:none !important; }
}
