/* Manufacturer artwork stays intact in every use of the shared renderer. */
.product-img .brico-product-brand-logo.is-card { display: inline-flex !important; }
.brico-product-brand-logo img {
  object-fit: contain !important;
  object-position: center;
  filter: none !important;
  mix-blend-mode: normal !important;
  transform: none !important;
  aspect-ratio: auto;
}
.brico-product-brand-logo.has-dark-artwork-background { background: #14213d !important; }
.brico-brand-carousel { min-width: 0; max-width: 100%; width: 100%; }
.brico-brand-carousel__controls { display: flex; justify-content: flex-end; margin-bottom: 8px; }
.brico-brand-carousel__controls button {
  appearance: none; border: 0; background: transparent; color: var(--color-navy, #14213d);
  display: inline-flex; align-items: center; justify-content: center; cursor: pointer;
  width: 44px; height: 44px; padding: 12px; border-radius: 6px;
}
.brico-brand-carousel__controls button[hidden] { display: none; }
.brico-brand-carousel__play-icon,
.brico-brand-carousel__controls button[aria-pressed="true"] .brico-brand-carousel__pause-icon { display: none; }
.brico-brand-carousel__controls button[aria-pressed="true"] .brico-brand-carousel__play-icon { display: block; }
.brico-brand-carousel__viewport {
  width: 100%; min-width: 0; max-width: 100%; overflow-x: auto; overflow-y: hidden;
  overscroll-behavior-x: contain; scroll-behavior: auto; scrollbar-width: thin;
  scrollbar-color: var(--color-border, #e2e7ee) transparent; padding: 4px 0 12px;
  direction: ltr;
}
.brico-brand-carousel__track { display: flex; width: max-content; }
.brico-brand-carousel .brico-brand-carousel__group {
  display: flex; flex-flow: row nowrap; flex: 0 0 auto; align-items: stretch;
  list-style: none; margin: 0; padding: 0 14px 0 0; gap: 14px;
}
.brico-brand-carousel .brico-brand-carousel__item { flex: 0 0 160px; width: 160px; list-style: none; margin: 0; padding: 0; }
.brico-brand-carousel .brico-brand-carousel__item.is-featured { flex-basis: 192px; width: 192px; }
.brico-brand-carousel .brico-brand-carousel__link {
  display: flex; align-items: center; justify-content: center; width: 100%; height: 104px;
  padding: 14px; border: 1px solid var(--color-border, #e2e7ee); border-radius: var(--radius-md, 10px);
  background: #fff; box-sizing: border-box;
}
.brico-brand-carousel .brico-brand-carousel__link:hover { border-color: var(--color-gold, #fca311); }
.brico-brand-carousel :focus-visible { outline: 2px solid var(--color-gold, #fca311); outline-offset: -2px; }
.brico-brand-carousel .brico-product-brand-logo.is-carousel {
  display: flex; align-items: center; justify-content: center; width: 100%; height: 100%;
  min-width: 0; border: 0; padding: 5px; box-shadow: none; background: #fff; border-radius: 4px;
}
.brico-brand-carousel .brico-product-brand-logo.is-carousel.brand-facom { background: #121820; }
.brico-brand-carousel .brico-product-brand-logo.is-carousel img {
  display: block; width: 100%; height: 100%; max-width: 100%; max-height: 100%; padding: 0;
}
.internal-main, .brand-directory, .home-brands { min-width: 0; }
@media (max-width: 600px) {
  .brico-brand-carousel .brico-brand-carousel__group { gap: 10px; padding-right: 10px; }
  .brico-brand-carousel .brico-brand-carousel__item { flex-basis: 132px; width: 132px; }
  .brico-brand-carousel .brico-brand-carousel__item.is-featured { flex-basis: 156px; width: 156px; }
  .brico-brand-carousel .brico-brand-carousel__link { height: 88px; padding: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .brico-brand-carousel [data-brand-clone], .brico-brand-carousel__controls { display: none; }
}

/* Existing payment marks also retain their complete source artwork. */
.brico-card-brand img,
.footer-payments .pay-logo img,
.brico-payment-hero-logo img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  object-fit: contain !important;
  transform: none !important;
  filter: none !important;
}
