/* Scoped overrides for the existing catalogue and its cart plugin. */
.dou-catalogue-results .m-products { display: flex; flex-wrap: wrap; }
.dou-catalogue-results .m-products .productoverflow {
  display: flex; float: none; padding: 0 10px; margin-bottom: 20px; min-width: 0;
}
.dou-catalogue-results .m-products .shadow {
  display: flex; flex-direction: column; width: 100%; border: 1px solid #dce4e8;
  border-radius: 10px; overflow: hidden; background: #fff;
}
.dou-catalogue-results .m-products .art_left { padding: 12px; min-height: 290px; }
.dou-catalogue-results .m-products .art_left > a {
  display: flex; align-items: center; justify-content: center; height: 200px; min-height: 0;
}
.dou-catalogue-results .m-products .art_left img {
  width: auto; height: auto; max-width: 100%; max-height: 200px; object-fit: contain;
}
.dou-catalogue-results .m-products .art_left hr { display: none; }
.dou-catalogue-results .m-products .price { margin: 10px 0 0; font-size: 20px !important; line-height: 1.3; }
.dou-catalogue-results .m-products .b_round {
  margin: auto 0 0; padding: 0 12px 12px; background: none;
}
.dou-catalogue-results .m-products .b_round div { background-image: none; }
.dou-catalogue-results .m-products .b_round_1 > a {
  display: block; min-height: 64px !important; padding: 0; font-size: 16px !important;
  line-height: 1.35 !important; overflow-wrap: anywhere; text-decoration: none;
}
.dou-catalogue-results .m-products .b_round_2 { display: flex; flex-direction: column; gap: 10px; }
.dou-catalogue-results .m-products .b_round_2 span.art {
  order: -1; margin: 0; padding: 0; color: #667781; font-size: 14px;
}
.dou-catalogue-results .m-products .add_to_cart { margin: 0; padding: 0; }
.dou-catalogue-results .m-products .dou-card-details,
.dou-catalogue-results .m-products .add_to_cart a {
  display: flex; align-items: center; justify-content: center; box-sizing: border-box;
  width: 100%; min-height: 44px; margin: 0; padding: 10px 8px; border-radius: 6px;
  font-size: 15px !important; line-height: 1.3 !important; text-align: center; text-decoration: none;
}
.dou-catalogue-results .m-products .dou-card-details {
  border: 1px solid #2161b9; color: #2161b9; background: #fff;
}
.dou-catalogue-results .m-products .dou-card-details:hover { background: #edf4ff; }
.dou-catalogue-results a:focus-visible, .dou-product-navigation a:focus-visible {
  outline: 3px solid #f39c12; outline-offset: 3px;
}
.dou-product-navigation { clear: both; margin: 16px 0 20px; }
.dou-return-results {
  display: inline-flex; align-items: center; min-height: 44px; padding: 10px 14px;
  border: 1px solid #2161b9; border-radius: 6px; color: #2161b9; font-size: 16px;
}
.dou-related-sections { margin-top: 14px; }
.dou-related-sections ul { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 8px 0 0; padding: 0; }
.dou-related-sections a {
  display: flex; align-items: center; min-height: 44px; padding: 9px 12px;
  border-radius: 6px; background: #f1f5f8; color: #2161b9; overflow-wrap: anywhere;
}
@media (max-width: 767px) {
  .dou-catalogue-results .m-products { margin-left: -5px; margin-right: -5px; }
  .dou-catalogue-results .m-products .productoverflow { width: 50%; padding: 0 5px; margin-bottom: 12px; }
  .dou-catalogue-results .m-products .art_left { padding: 8px; min-height: 234px; }
  .dou-catalogue-results .m-products .art_left > a { height: 150px; }
  .dou-catalogue-results .m-products .art_left img { max-height: 150px; }
  .dou-catalogue-results .m-products .price { font-size: 18px !important; }
  .dou-catalogue-results .m-products .b_round { padding: 0 8px 10px; }
  .dou-catalogue-results .m-products .b_round_1 > a { min-height: 80px !important; font-size: 15px !important; }
}
@media (max-width: 420px) {
  .dou-catalogue-results .m-products .productoverflow { width: 100%; }
  .dou-catalogue-results .m-products .art_left { min-height: 284px; }
  .dou-catalogue-results .m-products .art_left > a { height: 200px; }
  .dou-catalogue-results .m-products .art_left img { max-height: 200px; }
  .dou-catalogue-results .m-products .b_round_1 > a { min-height: 44px !important; }
}
