/* ====== Variables (theming) ====== */
:root{
  --hi-radius: 16px;
  --hi-radius-sm: 12px;
  --hi-border: #e7e7e9;
  --hi-bg: #fff;
  --hi-muted: #6b7280;
  --hi-text: #111;
  --hi-primary: #111;
  --hi-shadow: 0 6px 24px rgba(0,0,0,.08);
  --hi-shadow-sm: 0 2px 10px rgba(0,0,0,.06);
  --hi-badge-bg: rgba(17,17,17,.85);
  --hi-badge-text: #fff;
}

@media (prefers-color-scheme: dark){
  :root{
	--hi-border: #2a2a2f;
	--hi-bg: #161618;
	--hi-muted: #9aa0a6;
	--hi-text: #f5f5f6;
	--hi-primary: #f5f5f6;
	--hi-shadow: 0 6px 24px rgba(0,0,0,.35);
	--hi-shadow-sm: 0 2px 10px rgba(0,0,0,.3);
	--hi-badge-bg: rgba(250,250,252,.14);
	--hi-badge-text: #fff;
  }
}

/* ====== Layout (wrap/map/grid) ====== */
.hi-sc-wrap{display:grid;grid-template-columns:1fr;gap:18px}
@media(min-width:1024px){
  .hi-sc-wrap--map-right{grid-template-columns:1fr 420px}
}
.hi-sc-map{
  height:420px;border:1px solid var(--hi-border);border-radius:var(--hi-radius);
  overflow:hidden;position:relative;top:0px;background:var(--hi-bg);box-shadow:var(--hi-shadow-sm)
}
.hi-sc-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.5rem}

/* Grille responsive */
.hi-sc-grid{display:grid;grid-template-columns:1fr;gap:18px}
@media(min-width:700px){.hi-sc-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.hi-sc-grid{grid-template-columns:repeat(3,1fr)}}

/* ====== Card ====== */
.hi-card{
  display:grid;grid-template-columns:1fr;gap:0;
  border:1px solid var(--hi-border);
  border-radius:var(--hi-radius);
  overflow:hidden;background:var(--hi-bg);
  box-shadow: var(--hi-shadow-sm);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.hi-card:hover{ transform: translateY(-3px); box-shadow: var(--hi-shadow); border-color: transparent; }
.hi-card:focus-within{ outline:2px solid transparent; box-shadow: 0 0 0 3px rgba(17,17,17,.12), var(--hi-shadow); }

/* Media */
.hi-card__media{
  position:relative; display:block; aspect-ratio: 16/10; background:#f3f4f6; overflow:hidden;
}
.hi-card__media img{
  width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.01);transition:transform .35s ease;
}
.hi-card:hover .hi-card__media img{ transform:scale(1.06); }

/* Gradient overlay (subtile) */
.hi-card__gradient{
  position:absolute;inset:0;pointer-events:none;
  background: linear-gradient(180deg, rgba(0,0,0,0) 55%, rgba(0,0,0,.12) 100%);
}

/* Price badge */
.hi-badge{
  position:relative;left:0;top:0;z-index:2;
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 12px;border-radius:999px;
  background:var(--hi-badge-bg);color:var(--hi-badge-text);
  font-weight:700;font-size:.95rem;backdrop-filter:saturate(120%) blur(6px);
  box-shadow: 0 4px 14px rgba(0,0,0,.18);
}
.hi-badge--price{}

/* Body */
.hi-card__body{ padding:14px 14px 16px 14px; }
.hi-card__title{ margin:0 0 8px; font-size:1.06rem; line-height:1.25; }
.hi-card__title a{ color:var(--hi-text); text-decoration:none; }
.hi-card__title a:hover{ text-decoration:underline; }

/* Specs */
.hi-specs{ display:flex; flex-wrap:wrap; gap:10px 14px; margin:0 0 12px; padding:0; list-style:none; }
.hi-specs__item{
  display:inline-flex; align-items:center; gap:8px;
  color:var(--hi-muted); font-size:.95rem; line-height:1;
  background:transparent; padding:0;
}
.hi-ic{ width:18px; height:18px; flex:0 0 18px; color:var(--hi-muted); }

/* Actions */
.hi-card__actions{ display:flex; align-items:center; justify-content:flex-start; }
.hi-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:.55rem .9rem; border-radius:12px; text-decoration:none; font-weight:700;
  border:1px solid var(--hi-primary); color:var(--hi-bg); background:var(--hi-primary);
  transition: transform .15s ease, box-shadow .15s ease, background-color .15s ease, color .15s ease;
}
.hi-btn:hover{ transform: translateY(-1px); box-shadow: var(--hi-shadow-sm); }
.hi-btn:active{ transform: translateY(0); box-shadow:none; }
.hi-btn--primary{}

/* Pagination inchangée, légère harmonisation */
.hi-sc-pagination{margin:18px 0;display:flex;gap:8px;flex-wrap:wrap}
.hi-sc-pagination a,.hi-sc-pagination span{
  padding:8px 12px;border:1px solid var(--hi-border);border-radius:12px;text-decoration:none;color:var(--hi-text);background:var(--hi-bg)
}
.hi-sc-pagination .current{background:var(--hi-primary);color:#fff;border-color:var(--hi-primary)}

// --- Styles additionnels (breadcrumb + compteur) ---
.hi-breadcrumb{display:flex;align-items:center;gap:.5rem;margin:0 0 .75rem;color:#6b7280;font-size:13px}
.hi-breadcrumb a{color:#374151;text-decoration:none}
.hi-breadcrumb a:hover{text-decoration:underline}
.hi-breadcrumb .sep {
	opacity: .6;
	margin-left: 5px;
	margin-right: 5px;
}
.hi-breadcrumb .crumb-active{color:#111;font-weight:600}
.hi-bc-chip{display:inline-flex;align-items:center;gap:.375rem;border:1px solid #e5e7eb;border-radius:999px;padding:.15rem .6rem;background:#fff;white-space:nowrap}
.hi-bc-chip .x{font-weight:700;opacity:.55}
.hi-sc-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem}
.hi-sc-count{display:inline-flex;align-items:center;gap:.5rem}
.hi-sc-count .hi-badge{
  display:inline-block;font-weight:700;font-size:.85rem;line-height:1;
  padding:.45rem .7rem;border-radius:999px;
  background:linear-gradient(180deg,#111,#1f2937);color:#fff;border:1px solid #111; box-shadow:0 1px 0 rgba(0,0,0,.06);
}
