/* Dikar image-first listings. Opt-in enhancement only; no product-page or header rules. */
.dvi-grid.dvi-grid {
  float: none !important;
  clear: both;
  width: 100% !important;
  max-width: 100%;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-rows: auto;
  align-items: stretch;
  gap: 18px;
  margin: 0 !important;
}
.dvi-grid.dvi-grid::before,
.dvi-grid.dvi-grid::after { display: none !important; content: none !important; }
.dvi-grid.dvi-grid > .dvi-card { width: auto !important; max-width: none !important; }
.dvi-grid.dvi-grid > .dvi-grid-item { float:none !important; width:auto !important; max-width:none !important; padding:0 !important; margin:0 !important; min-width:0; }
.dvi-grid.dvi-grid .dvi-grid-item > .product-layout { width:100% !important; padding:0 !important; margin:0 !important; height:100%; }
.dvi-grid.dvi-grid .dvi-card { width:100% !important; }
.dvi-carousel.owl-stage { display:flex !important; align-items:stretch; }
.dvi-carousel.owl-stage > .owl-item { float:none; display:flex; flex:0 0 auto; }
.dvi-carousel.owl-stage .row_items { width:100%; display:flex; flex-direction:column; }
.dvi-carousel.owl-stage .product-layout { width:100%; flex:1; display:flex !important; align-items:stretch; min-width:0; }
.dvi-carousel.owl-stage .product-layout > .dvi-card.dbl-card { flex:1 1 auto; height:auto !important; min-width:0; }
.dvi-card.dbl-card.dvi-legacy .price-tax { display:none !important; }
.dvi-card.dbl-card .dvi-image-actions .dbl-secondary span { display:none !important; }
.dvi-card.dbl-card .price-old { text-decoration:line-through; }
.dvi-card.dbl-card .dbl-image img.dvi-primary-image { opacity:1 !important; visibility:visible !important; }
.dvi-card.dbl-card .dbl-image img.dvi-secondary-image { display:none !important; }
.dvi-card.dbl-card .dvi-description,.dvi-card.dbl-card .dvi-differences { font-size:11px; line-height:1.5; margin:0 0 8px; color:#627085; }
.dvi-card.dbl-card .dvi-description > summary,.dvi-card.dbl-card .dvi-differences > summary { cursor:pointer; padding:3px 0; }
.dvi-card.dbl-card .dvi-description .product-des { display:block; margin:8px 0; }
.dvi-card.dbl-card .dvi-description:not([open]) > :not(summary),.dvi-card.dbl-card .dvi-differences:not([open]) > :not(summary) { display:none !important; }

.dvi-card.dbl-card {
  --dvi-ink: #202b3b;
  --dvi-muted: #657184;
  --dvi-orange: #b95519;
  --dvi-line: #dfe4ea;
  display: flex !important;
  flex-direction: column;
  position: relative;
  float: none !important;
  min-width: 0;
  min-height: 0;
  height: 100%;
  padding: 0 !important;
  margin: 0 !important;
  color: var(--dvi-ink);
  background: #fff;
  border: 1px solid var(--dvi-line);
  border-radius: 12px;
  overflow: hidden;
  isolation: isolate;
  text-align: left;
  box-shadow: none;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.dvi-card.dbl-card,
.dvi-card.dbl-card * { box-sizing: border-box; }
.dvi-card.dbl-card:hover {
  border-color: #bdc8d4;
  box-shadow: 0 5px 16px #2430420c;
}
.dvi-card.dbl-card .dbl-card-top {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  grid-template-columns: none;
  align-items: stretch;
  gap: 0;
  padding: 0;
  min-width: 0;
}

/* The badge row grows naturally; image controls share the image row, not the badges. */
.dvi-card.dbl-card .dvi-media {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto minmax(0, 1fr);
  position: relative;
  flex: 0 0 auto;
  width: 100%;
  height: 220px;
  min-width: 0;
  padding: 0;
  background: #fff;
}
.dvi-card.dbl-card .dvi-badges {
  grid-area: 1 / 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: start;
  gap: 5px;
  min-width: 0;
  min-height: 34px;
  padding: 7px 10px 0;
  position: relative;
  z-index: 2;
}
.dvi-card.dbl-card .dvi-badges .dbl-discount,
.dvi-card.dbl-card .dvi-delivery-badge {
  position: static !important;
  inset: auto !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 1 auto;
  gap: 4px;
  max-width: 100%;
  min-height: 27px;
  margin: 0 !important;
  padding: 5px 7px;
  border: 0;
  border-radius: 5px;
  font-family: inherit;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0;
  text-transform: none;
  white-space: normal;
  overflow-wrap: normal;
  transform: none !important;
}
.dvi-card.dbl-card .dvi-badges .dbl-discount {
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  background: #b34b22;
  color: #fff;
  white-space: nowrap;
}
.dvi-card.dbl-card .dvi-delivery-badge { background: #e6f4e9; color: #216438; }
.dvi-card.dbl-card .dvi-delivery-badge svg,
.dvi-card.dbl-card .dvi-delivery-badge i { flex: 0 0 auto; width: 13px; font-size: 13px; }
.dvi-card.dbl-card .dbl-image {
  grid-area: 2 / 1;
  display: flex;
  position: relative;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-width: 0;
  height: 100%;
  min-height: 0;
  margin: 0;
  padding: 0 50px 4px 14px;
  background: #fff;
  overflow: hidden;
}
.dvi-card.dbl-card .dbl-image img {
  display: block;
  position: static;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  margin: 0;
  padding: 0;
  object-fit: contain;
  object-position: center;
  mix-blend-mode: normal;
  transform: none;
}
.dvi-card.dbl-card .dvi-image-actions {
  grid-area: 2 / 1;
  display: flex;
  flex-direction: column;
  align-self: start;
  justify-self: end;
  align-items: center;
  gap: 3px;
  position: relative;
  z-index: 3;
  margin: 5px 8px 0 0;
  padding: 0;
}
.dvi-card.dbl-card .dvi-image-actions .dbl-secondary {
  display: inline-flex !important;
  position: static !important;
  inset: auto !important;
  grid-column: auto;
  align-items: center;
  justify-content: center;
  flex: 0 0 34px;
  width: 34px !important;
  height: 34px;
  min-height: 34px;
  margin: 0 !important;
  padding: 7px !important;
  border: 1px solid #e5e9ee !important;
  border-radius: 50% !important;
  background: #ffffffed !important;
  color: #697482 !important;
  font-size: 15px;
  line-height: 1;
  float: none !important;
  transform: none !important;
  opacity: 1;
  visibility: visible;
  cursor: pointer;
}
.dvi-card.dbl-card .dvi-image-actions .dbl-secondary:hover {
  border-color: #c99b77 !important;
  color: var(--dvi-orange) !important;
  background: #fff7f1 !important;
}

.dvi-card.dbl-card .dbl-heading { min-width: 0; padding: 0 15px; }
.dvi-card.dbl-card .dbl-card-body {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-width: 0;
  min-height: 0;
  padding: 0 15px 15px;
}
.dvi-card.dbl-card .dbl-brand {
  display: block;
  min-height: 15px;
  margin: 0 0 4px;
  color: var(--dvi-muted);
  font-size: 10px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .8px;
  text-transform: uppercase;
}
.dvi-card.dbl-card .dbl-name {
  display: block;
  float: none !important;
  width: auto !important;
  min-width: 0;
  max-width: none !important;
  min-height: 42px;
  max-height: none !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  font-family: inherit;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  letter-spacing: 0;
  text-transform: none !important;
  white-space: normal !important;
  word-break: normal;
  overflow-wrap: break-word;
}
.dvi-card.dbl-card .dbl-name a {
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  width: 100% !important;
  max-width: none !important;
  max-height: 4.2em;
  padding: 0;
  color: var(--dvi-ink) !important;
  font: inherit !important;
  white-space: normal !important;
  text-transform: none !important;
  text-decoration: none;
}
.dvi-card.dbl-card .dbl-name a:hover { color: var(--dvi-orange) !important; }
.dvi-card.dbl-card .dbl-rating { font-size: 11px; line-height: 1.4; margin: 0 0 6px; color: #82511d; }
.dvi-card.dbl-card .dvi-essentials {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 3px 7px;
  min-width: 0;
  min-height: 18px;
  margin: 0 0 5px;
  color: #526075;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  text-transform: none;
  overflow-wrap: break-word;
}
.dvi-card.dbl-card .dvi-essentials:empty { display: none; }
.dvi-card.dbl-card .dvi-spec-details {
  display: block;
  margin: 0 0 10px;
  padding: 0 0 8px;
  border: 0;
  border-bottom: 1px solid #e8ebef;
  color: #627085;
  font-size: 11px;
  line-height: 1.6;
}
.dvi-card.dbl-card .dvi-spec-details > summary {
  display: list-item;
  min-height: 22px;
  padding: 2px 0;
  color: #627085;
  font-size: 11px;
  line-height: 1.6;
  font-weight: 500;
  cursor: pointer;
  touch-action: manipulation;
}
.dvi-card.dbl-card .dvi-spec-details > summary::marker { color: #85909e; }
.dvi-card.dbl-card .dvi-spec-details > summary:hover { color: var(--dvi-orange); }
.dvi-card.dbl-card .dvi-spec-details .dbl-specs {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 5px;
  min-height: 0;
  margin: 8px 0 0;
  padding: 0;
  border: 0;
}
.dvi-card.dbl-card .dvi-spec-details:not([open]) > .dbl-specs { display: none !important; }
.dvi-card.dbl-card .dvi-spec-details .dbl-specs > div {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  align-items: baseline;
  gap: 8px;
  min-width: 0;
}
.dvi-card.dbl-card .dvi-spec-details .dbl-specs dt {
  min-width: 0;
  margin: 0;
  color: #697486;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.5;
  text-transform: none;
}
.dvi-card.dbl-card .dvi-spec-details .dbl-specs dd {
  display: block;
  -webkit-line-clamp: unset;
  min-width: 0;
  max-height: none;
  margin: 0;
  color: #253345;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.5;
  text-align: right;
  overflow: visible;
  overflow-wrap: break-word;
  word-break: normal;
}
.dvi-card.dbl-card .dbl-purchase { margin-top: auto; padding-top: 1px; }
.dvi-card.dbl-card .dbl-stock { margin: 0 0 4px; font-size: 11px; font-weight: 600; line-height: 1.5; color: #80591e; }
.dvi-card.dbl-card .dbl-stock--available { color: #297044; }
.dvi-card.dbl-card .dbl-stock span { margin-right: 3px; font-size: 7px; }
.dvi-card.dbl-card .dbl-price-line { display: flex; align-items: center; min-height: 32px; margin: 0; }
.dvi-card.dbl-card .dbl-price {
  display: flex !important;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 8px;
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--dvi-ink) !important;
  background: none !important;
  float: none !important;
  transform: none !important;
  text-align: left !important;
}
.dvi-card.dbl-card .dbl-price strong {
  margin: 0;
  padding: 0 !important;
  color: var(--dvi-ink) !important;
  background: none !important;
  font-size: 24px !important;
  font-weight: 600 !important;
  line-height: 1.3;
  letter-spacing: -.5px;
  white-space: nowrap;
  transform: none !important;
}
.dvi-card.dbl-card .dbl-price .price-old {
  margin: 0;
  padding: 0 !important;
  color: #788393 !important;
  background: none !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 1.4;
  white-space: nowrap;
  transform: none !important;
}
.dvi-card.dbl-card .dbl-price::before,
.dvi-card.dbl-card .dbl-price::after,
.dvi-card.dbl-card .price-new::before,
.dvi-card.dbl-card .price-new::after { display: none !important; content: none !important; }
.dvi-card.dbl-card .dbl-delivery { display: none !important; }
.dvi-card.dbl-card .dbl-actions { display: flex; flex-wrap: wrap; gap: 7px; margin: 8px 0 0; padding: 0; }
.dvi-card.dbl-card .dbl-add {
  display: flex !important;
  align-items: center;
  justify-content: center;
  flex: 1 1 100%;
  grid-column: 1 / -1;
  gap: 8px;
  width: 100% !important;
  min-height: 42px;
  margin: 0 !important;
  padding: 10px 8px !important;
  border: 1px solid var(--dvi-orange) !important;
  border-radius: 7px !important;
  color: #fff !important;
  background: var(--dvi-orange) !important;
  font-family: inherit;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  text-transform: none !important;
  text-decoration: none;
  float: none !important;
  cursor: pointer;
  touch-action: manipulation;
}
.dvi-card.dbl-card .dbl-add i { color: inherit !important; }
.dvi-card.dbl-card .dbl-add:hover { background: #994613 !important; border-color: #994613 !important; }
.dvi-card.dbl-card .dbl-add:disabled { cursor: default; opacity: .7; }
.dvi-card.dbl-card .dbl-details { color: #76551f !important; background: #faf8f3 !important; border-color: #e1dacb !important; }
.dvi-card.dbl-card .dbl-details:hover { color: #624314 !important; background: #f4efe3 !important; border-color: #cbb992 !important; }
.dvi-card.dbl-card a:focus-visible,
.dvi-card.dbl-card button:focus-visible,
.dvi-card.dbl-card summary:focus-visible { outline: 3px solid #d47736; outline-offset: 2px; }
.dvi-card.dbl-card [hidden] { display: none !important; }

@media (min-width: 768px) and (max-width: 1199px) {
  .dvi-grid.dvi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
}
@media (max-width: 767px) {
  .dvi-grid.dvi-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .dvi-card.dbl-card .dvi-media { height: 235px; }
  .dvi-card.dbl-card .dbl-image { height: 100%; padding: 0 62px 4px 17px; }
  .dvi-card.dbl-card .dvi-badges { padding: 8px 13px 0; min-height: 36px; gap: 6px; }
  .dvi-card.dbl-card .dvi-delivery-badge { font-size: 12px; }
  .dvi-card.dbl-card .dvi-image-actions { margin: 5px 10px 0 0; gap: 5px; }
  .dvi-card.dbl-card .dvi-image-actions .dbl-secondary { flex-basis: 44px; width: 44px !important; height: 44px; min-height: 44px; font-size: 17px; }
  .dvi-card.dbl-card .dbl-heading { padding: 0 17px; }
  .dvi-card.dbl-card .dbl-card-body { padding: 0 17px 17px; }
  .dvi-card.dbl-card .dbl-name { min-height: 0; font-size: 15px !important; }
  .dvi-card.dbl-card .dvi-spec-details > summary { min-height: 36px; padding: 8px 0; font-size: 12px; }
  .dvi-card.dbl-card .dvi-spec-details { margin-bottom: 9px; padding-bottom: 4px; }
  .dvi-card.dbl-card .dbl-stock { font-size: 12px; }
  .dvi-card.dbl-card .dbl-add { min-height: 46px; font-size: 14px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .dvi-card.dbl-card { transition: none; }
}

/* Dikar 20260913: theme offer sections must not darken image-first cards. */
.dvi-card.dbl-card,
.dvi-card.dbl-card:hover,
.dvi-card.dbl-card:focus-within {
  background: #fff !important;
}
