/* ===== Container centré avec padding latéral (évite bord à bord) ===== */
.rh-section{
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 16px;
}
@media (min-width: 992px){
  .rh-section{ padding: 0 24px; }
}

/* ===== Empilement propre : filtres -> cards -> pagination ===== */
.rh-shop{
  display: flex;
  flex-direction: column;
  gap: 10px;               /* petit espace homogène entre blocs */
  width: 100%;
  overflow: auto;          /* crée un contexte de formatage -> évite chevauchements */
  padding-bottom: 56px;    /* espace de sécurité avant le footer */
  position: relative;
  z-index: 1;
}

.site-footer{ position: relative; z-index: 0; }

/* ===== Barre de filtres compacte ===== */
.rh-filterbar{
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 8px;
  margin: 0;
  padding: 0;
  justify-content: flex-end; /* mets flex-start si tu veux à gauche */
}
.rh-filterbar .rh-select,
.rh-filterbar .rh-filters,
.rh-filterbar select,
.rh-filterbar button{ margin: 0 !important; }

.rh-select{ display:flex; align-items:center; gap:8px; }
.rh-select__label{ font-weight:600; font-size:14px; display:none; }

.rh-filterbar select,
.rh-filterbar button{
  appearance:none; -webkit-appearance:none; -moz-appearance:none;
  background:#fff;
  border:1px solid var(--border,#e6ece7);
  border-radius:10px;
  padding:8px 12px;
  font-size:14px; font-weight:700; color:var(--ink,#1c231e);
  cursor:pointer; line-height:1.2;
}
.rh-filterbar select:hover,
.rh-filterbar button:hover{
  background:#f7f9f7; border-color:var(--ink,#3b7d3a);
}

/* Filtres avancés */
.rh-filterbar .rh-filters{ position:relative; }
.rh-filterbar .rh-filters>summary{
  list-style:none; display:inline-flex; align-items:center; gap:6px;
  border:1px solid var(--border,#e6ece7); border-radius:10px;
  padding:8px 12px; font-size:14px; font-weight:700; cursor:pointer; user-select:none; background:#fff;
}
.rh-filterbar .rh-filters>summary::-webkit-details-marker{ display:none; }
.rh-filterbar .rh-filters[open]>.rh-filters__row{
  position:absolute; right:0; top:42px; z-index:10; min-width:260px;
  background:#fff; border:1px solid var(--border,#e6ece7); border-radius:12px;
  box-shadow:0 10px 26px rgba(0,0,0,.08); padding:12px; display:grid; gap:10px;
}
.rh-filterbar .rh-filters__row label{
  display:flex; gap:6px; align-items:center; justify-content:space-between;
  font-size:13px; color:var(--muted,#6b6f72);
}
.rh-filterbar .rh-filters__row input[type="number"]{
  width:110px; border:1px solid var(--border,#e6ece7); border-radius:8px; padding:6px 8px;
}
.rh-filterbar .rh-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:6px;
  border-radius:10px; padding:8px 12px; cursor:pointer; text-decoration:none;
  border:1px solid var(--border,#e6ece7); background:#fff; color:var(--ink,#1c231e); font-weight:700;
}
.rh-filterbar .rh-btn--apply{ background:var(--brand,#3b7d3a); color:#fff; border-color:var(--brand,#3b7d3a); }
.rh-filterbar .rh-btn--ghost:hover{ background:#f5f7f5; }

/* Mobile */
@media (max-width:600px){
  .rh-filterbar{ justify-content:flex-start; gap:6px; }
}

/* ===== Resets WooCommerce (marges immenses) ===== */
.woocommerce ul.products{
  margin: 0 !important;
  padding: 0 !important;
}
.woocommerce ul.products li.product{ margin: 0 !important; }

/* Pagination compacte */
.woocommerce nav.woocommerce-pagination,
.rh-pagination{
  margin: 8px 0 0 !important;
  padding: 0 !important;
}

/* Clearfix de sûreté (si un bloc flotte encore) */
.rh-shop::after,
.rh-products-wrap::after,
.woocommerce ul.products::after{
  content:"";
  display:block;
  clear:both;
}