/**
 * RW - Brands : grille "Nos marques en boutique".
 * Consomme les tokens du thème (cream, ink, gold, typo titres).
 */
.rwbrands {
  --rwb-cream: var(--bs-cream, #faf6ee);
  --rwb-ink: var(--bs-dark, #14110d);
  --rwb-muted: var(--bs-secondary-color, #8a8175);
  --rwb-accent: var(--bs-primary, #c08428);
  width: 100%;
}

/* ── Header ── */
.rwbrands__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  padding-bottom: 1.1rem;
  margin-bottom: 1.6rem;
  border-bottom: 1px solid var(--bs-border-color, #e8e1d3);
}
.rwbrands__eyebrow {
  margin: 0 0 0.35rem;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--rwb-muted);
}
.rwbrands__title {
  margin: 0;
  color: var(--rwb-ink);
  line-height: 1.05;
}
.rwbrands__seeall {
  flex: 0 0 auto;
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--rwb-ink);
  text-decoration: none;
  white-space: nowrap;
  transition: color 0.15s ease;
}
.rwbrands__seeall:hover { color: var(--rwb-accent); }

/* ── Grid ── */
.rwbrands__grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 18px;
}

.rwbrands__tile {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 16 / 10;
  padding: 1rem 1.25rem;
  border-radius: 16px;
  background: var(--rwb-cream);
  text-decoration: none;
  text-align: center;
  transition: transform 0.2s var(--bs-ease, ease), box-shadow 0.2s ease;
}
.rwbrands__tile:hover {
  transform: translateY(-3px);
  box-shadow: var(--bs-box-shadow-sm, 0 6px 18px rgba(20, 17, 13, 0.08));
}

/* Logo tile: keep the manufacturer logo contained */
.rwbrands__logo {
  max-width: 100%;
  max-height: 64px;
  width: auto;
  height: auto;
  object-fit: contain;
    mix-blend-mode: multiply;
}

/* Text tile: brand name in the heading typography (simple "logo" look) */
.rwbrands__name {
  font-family: var(--bs-headings-font-family, inherit);
  font-weight: 700;
  font-size: clamp(0.95rem, 1.4vw, 1.25rem);
  line-height: 1.1;
  color: var(--rwb-ink);
  letter-spacing: 0.01em;
}

/* ── Responsive ── */
@media (max-width: 1199px) { .rwbrands__grid { grid-template-columns: repeat(4, 1fr); } }
@media (max-width: 767px) {
  .rwbrands__grid { grid-template-columns: repeat(3, 1fr); gap: 12px; }
  .rwbrands__head { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 480px) { .rwbrands__grid { grid-template-columns: repeat(2, 1fr); } }
