/**
 * RW - Support & FAQ : front styles. Préfixe `rws-`.
 * Consomme les variables Bootstrap/Hummingbird.
 */
.rws {
  --rws-accent: var(--bs-primary, #c08428);
  --rws-ink: var(--bs-dark, #14110d);
  --rws-muted: var(--bs-secondary-color, #8a8175);
  --rws-radius: var(--bs-border-radius-lg, .75rem);
}

/* ---- Page FAQ ---- */
.rws-faq__search { max-width: 640px; margin: 0 auto 2rem; }
.rws-cat { margin-bottom: 2.5rem; }
.rws-cat__title { display: flex; align-items: center; gap: .5rem; }
.rws-q {
  border: 1px solid var(--bs-border-color, #e6e1d8);
  border-radius: var(--rws-radius);
  margin-bottom: .75rem;
  overflow: hidden;
}
.rws-q__head {
  width: 100%;
  text-align: left;
  background: none;
  border: 0;
  padding: 1rem 1.25rem;
  font-weight: 600;
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  cursor: pointer;
}
.rws-q__head[aria-expanded="true"] { color: var(--rws-accent); }
.rws-q__body { padding: 0 1.25rem 1.25rem; display: none; }
.rws-q__body.is-open { display: block; }
.rws-q__foot {
  margin-top: 1rem;
  padding-top: .75rem;
  border-top: 1px dashed var(--bs-border-color, #e6e1d8);
  font-size: .875rem;
  color: var(--rws-muted);
  display: flex;
  align-items: center;
  gap: .75rem;
}
.rws-vote-btn { border: 1px solid var(--bs-border-color, #ccc); background: #fff; border-radius: 999px; padding: .15rem .7rem; cursor: pointer; }
.rws-vote-btn:hover { border-color: var(--rws-accent); color: var(--rws-accent); }

/* ---- FAQ produit ---- */
.rws-product-faq { margin-top: 2rem; }

/* ---- Déflection ---- */
.rws-deflect { border-left: 3px solid var(--rws-accent); background: var(--bs-light, #f8f5f0); padding: 1rem 1.25rem; border-radius: var(--rws-radius); }
.rws-hours { white-space: pre-line; }
.rws-contact-channels { display: flex; flex-wrap: wrap; gap: .75rem; }
