/* =========================
   RHG - Variante A (Club privé feutré)
   Objectif: supprimer l'effet trop blanc
   ========================= */

html, body {
  background: radial-gradient(
    circle at top,
    #1a1a1a 0%,
    #121212 35%,
    #0b0b0b 70%
  ) !important;
}


/* Les wrappers Joomla/Helix/EasySocial restent transparents pour laisser voir le fond */
#sp-body,
#sp-main-body,
.com-easysocial,
.es-container,
.es-wrapper,
.es-apps,
.es-dashboard {
  background: transparent !important;
}

/* Texte par défaut un peu plus clair sur fond sombre */
body {
  color: rgba(255, 255, 255, 0.86);
}

/* Liens: garder l’or / premium (sans flash bleu) */
a {
  color: inherit;
}
a:hover {
  opacity: 0.9;
}

/* Optionnel: adoucir légèrement les séparations / zones claires résiduelles */
hr, .hr, .divider {
  opacity: 0.35;
}





@media (max-width: 575px) {
  #sp-header .logo {
    height: 40px;
  }
}
.logo-image-phone {
  height: 40px !Important;
}
/*********************************************
 *   STYLES GLOBAUX – LEGAL / CONDITIONS
 *********************************************/
.rhg-legal {
    max-width: 1100px;
    margin: 40px auto;
    padding: 20px 30px;
    font-family: Inter;
    color: #f5f5f5;
    line-height: 1.7;
}

/* Couleur or premium */
:root {
    --gold: #d4af37;
    --gold-light: #e5c259;
    --bg-dark: #0f0f0f;
    --bg-panel: #161616;
    --border-soft: rgba(255, 255, 255, 0.08);
}

/*********************************************
 *   TITRE PRINCIPAL
 *********************************************/
.rhg-legal-header {
    text-align: center;
    margin-bottom: 50px;
}

.rhg-legal-header h1 {
    font-size: 26px;
    font-weight: 600;
    color: #000;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 10px;
	font-family: "Playfair Display", "Times New Roman", serif;
}

.rhg-legal-subtitle {
    font-size: 16px;
    color: #626262;
}

/*********************************************
 *   NAVIGATION CGU / CGV
 *********************************************/
.rhg-legal-nav {
    margin-top: 35px;
    display: flex;
    justify-content: center;
    gap: 15px;
    flex-wrap: wrap;
}

.rhg-pill-link {
    padding: 10px 22px;
    border: 1px solid var(--gold);
    color: #626262;
    border-radius: 30px;
    font-size: 15px;
    transition: all 0.25s ease;
    text-decoration: none;
}

.rhg-pill-link:hover {
    background: var(--gold);
    color: #ffffff;
}

/*********************************************
 *   BLOCS SECTIONS (CGU & CGV)
 *********************************************/
.rhg-block {
    background: var(--bg-panel);
    padding: 40px;
    margin-bottom: 60px;
    border: 1px solid var(--border-soft);
    border-radius: 14px;
	color: #d7d7d7 !Important;
}

.rhg-block h2 {
    font-size: 22px;
    font-weight: 500;
    color: #d7d7d7 !Important;
    margin-bottom: 25px;
    text-transform: capitalize;
    letter-spacing: 1px;
	font-family: "Playfair Display", "Times New Roman", serif;
	
}

/*********************************************
 *   SOUS-SECTIONS
 *********************************************/
.rhg-section {
    margin-bottom: 40px;
    padding-bottom: 35px;
    border-bottom: 1px solid var(--border-soft);
}

.rhg-section:last-of-type {
    border-bottom: none;
}

.rhg-section h3 {
    font-size: 18px;
    font-weight: 500;
    color: var(--gold);
    margin-bottom: 15px;
	font-family: "Playfair Display", "Times New Roman", serif;
	
}

.rhg-section p {
    margin-bottom: 15px;
    font-size: 16px;
    color: #dddddd;
}

.rhg-section ul, .rhg-section ol {
    margin-left: 25px;
    margin-top: 10px;
}

.rhg-section li {
    margin-bottom: 8px;
    color: #e0e0e0;
}

/*********************************************
 *   ICÔNES – STYLE LUXE
 *********************************************/
.rhg-icon i {
    color: var(--gold-light);
    margin-right: 8px;
    font-size: 22px;
}

/*********************************************
 *   LIENS
 *********************************************/
.rhg-legal a {
    color: var(--gold-light);
    text-decoration: none;
}

.rhg-legal a:hover {
    text-decoration: underline;
}

/*********************************************
 *   RESPONSIVE DESIGN
 *********************************************/
@media (max-width: 768px) {

    .rhg-legal {
        padding: 15px 20px;
    }

    .rhg-block {
        padding: 25px;
    }

    .rhg-legal-header h1 {
        font-size: 28px;
    }

    .rhg-section h3 {
        font-size: 20px;
    }
}
/* ====== GRID ====== */
/* Forcer le dashboard EasySocial à s’empiler en colonne */
.es-dashboard .es-container {
    display: block !important;          /* au lieu de flex */
}
.rhg-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    margin-top: 60px;
}

/* Responsive */
@media (max-width: 992px) {
    .rhg-grid {
        grid-template-columns: 1fr;
    }
}

/* ====== CARDS ====== */
.rhg-card {
    background: #0f0f0f;
    border-radius: 20px;
    padding: 35px;
    min-height: 330px;
    box-shadow: 0 18px 38px rgba(0,0,0,0.35);
    color: white !Important;
}

/* TITRE */
.rhg-card-title {
    font-family: "Playfair Display", serif;
    font-size: 22px;
    font-weight: 600;
    color: #F4E3C4 !Important ; /* Or luxe */
    margin-bottom: 10px;
}

/* INTRO */
.rhg-card-intro {
    font-size: 15px;
    opacity: 0.8;
    margin-bottom: 20px;
}

/* LISTE */
.rhg-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.rhg-list-item {
    margin-bottom: 18px;
}

.rhg-list-item a {
    display: flex;
    align-items: center;
    gap: 12px;
    color: white;
    text-decoration: none;
}

.rhg-avatar {
    width: 60px;
    height: 60px;
    border-radius: 50%;
}

/* NOM + META */
.rhg-name {
    font-weight: 600;
    font-size: 17px;
}

.rhg-meta {
    font-size: 13px;
    color: #c1a676;
}

/* EMPTY */
.rhg-empty {
    font-size: 14px;
    opacity: 0.7;
    margin-top: 10px;
}

/* LIENS ACCÈS RAPIDE */
.rhg-links li {
    margin-bottom: 10px;
}

.rhg-links a {
    color: #c1a676;
    text-decoration: none;
    font-weight: 500;
}

.rhg-links a:hover {
    color: #F4E3C4;
}
/* Comptage dans les titres */
.rhg-count {
    font-size: 16px;
    font-weight: 400;
    color: #c1a676;
    margin-left: 6px;
}

/* Header / footer des cartes */
.rhg-card-header {
    margin-bottom: 20px;
}

.rhg-card-footer {
    margin-top: 25px;
    border-top: 1px solid rgba(255,255,255,0.06);
    padding-top: 15px;
    display: flex;
    justify-content: flex-end;
}

/* Boutons CTA */
.rhg-cta {
    font-size: 14px;
    font-weight: 500;
    color: #111111;
    background: #c1a676;
    border-radius: 999px;
    padding: 8px 18px;
    text-decoration: none;
    transition: background 0.25s ease, color 0.25s ease, transform 0.2s ease;
}

.rhg-cta:hover {
    background: #f4e3c4;
    color: #000;
    transform: translateY(-1px);
}

.rhg-cta--ghost {
    background: transparent;
    color: #c1a676;
    border: 1px solid #c1a676;
}

.rhg-cta--ghost:hover {
    background: #c1a676;
    color: #111;
}

/* Structure interne liste */
.rhg-list-main {
    display: flex;
    flex-direction: column;
}

/* (au cas où ce n'est pas déjà présent) */
.rhg-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    margin-top: 0px;
}

@media (max-width: 992px) {
    .rhg-grid {
        grid-template-columns: 1fr;
    }
}
/* Boutons CTA – lisibilité du texte */
.rhg-card-footer .rhg-cta,
.rhg-card-footer .rhg-cta:link,
.rhg-card-footer .rhg-cta:visited {
    background: #c1a676 !important;   /* or RHG */
    color: #111111 !important;        /* texte bien contrasté */
}

/* Hover */
.rhg-card-footer .rhg-cta:hover {
    background: #f4e3c4 !important;
    color: #000000 !important;
}

/* Version ghost : bouton "Compléter mon profil" */
.rhg-card-footer .rhg-cta.rhg-cta--ghost,
.rhg-card-footer .rhg-cta.rhg-cta--ghost:link,
.rhg-card-footer .rhg-cta.rhg-cta--ghost:visited {
    background: transparent !important;
    border: 1px solid #c1a676 !important;
    color: #c1a676 !important;
}

.rhg-card-footer .rhg-cta.rhg-cta--ghost:hover {
    background: #c1a676 !important;
    color: #111111 !important;
}
/* =========================
   RHG Profile – Premium UI
   ========================= */
#rhg-profile.rhg-profile{
  background: radial-gradient(
    circle at 50% 8%,
    #1b1b1b 0%,
    #121212 55%,
    #0d0d0d 100%
  );
}
/* Cartes RHG : lisibilité + contraste */
#rhg-profile .rhg-card{
  background: #F7F6F3;
  color: #1b1b1b;
}


/* HERO */
#rhg-profile .rhg-hero{
  position:relative;
  min-height:420px;
  background-size:cover;
  background-position:center;
}
#rhg-profile .rhg-hero__overlay{
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(11,11,11,.25), rgba(11,11,11,.65));
}
#rhg-profile .rhg-hero__inner{
  position:relative;
  max-width:1200px;
  margin:0 auto;
  padding: 20px 20px;
  display:flex;
  align-items:flex-end;
  gap:20px;
}
#rhg-profile .rhg-hero__avatar img{
  width:96px; height:96px;
  border-radius:999px;
  border:3px solid rgba(247,246,243,.75);
  object-fit:cover;
  background:#fff;
}
#rhg-profile .rhg-hero__name{
  font-family: "Playfair Display", serif;
  letter-spacing:.04em;
  color:var(--rhg-gold);
  font-size:44px;
  line-height:1.05;
  text-transform:uppercase;
}
#rhg-profile .rhg-hero__sub{
  color:rgba(247,246,243,.92);
  font-size:16px;
  margin-top:6px;
}
#rhg-profile .rhg-hero__signature{
  color:rgba(247,246,243,.92);
  font-style:italic;
  margin-top:10px;
  max-width:680px;
}

/* CONTENT GRID */
#rhg-profile .rhg-content{
  max-width:1200px;
  margin:0 auto;
  padding:0px 20px 60px;
}
#rhg-profile .rhg-grid{
  display:grid;
  grid-template-columns: 1.25fr .9fr;
  gap:20px;
}
#rhg-profile .rhg-card{
  background:#fff;
  border-radius:14px;
  padding:22px 22px;
  box-shadow: 0 12px 32px rgba(0,0,0,.06);
  margin-top: 15px;
}
#rhg-profile .rhg-card--bordered{
  border:1px solid rgba(201,162,77,.35);
}
#rhg-profile .rhg-title{
  font-family:"Playfair Display", serif;
  letter-spacing:.03em;
  color:var(--rhg-black);
  font-size:22px;
  margin:0;
}
#rhg-profile .rhg-divider{
  height:1px;
  width:120px;
  background:rgba(201,162,77,.55);
  margin:12px 0 14px;
}
#rhg-profile .rhg-text{
  color:var(--rhg-text);
  font-size:16px;
  line-height:1.75;
}
#rhg-profile .rhg-muted{ color:var(--rhg-muted); }

/* mini blocks */
#rhg-profile .rhg-two{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
#rhg-profile .rhg-mini{
  background: var(--rhg-cream);
  border-radius:12px;
  padding:14px;
}
#rhg-profile .rhg-mini__label{
  /* color:var(--rhg-muted); */
  font-size:14px;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:8px;
  text-align: center;
}
#rhg-profile .rhg-mini__value{ color:var(--rhg-text); }

/* gallery */
#rhg-profile .rhg-gallery{ margin-top:20px; }
#rhg-profile .rhg-gallery__grid{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap:12px;
}
#rhg-profile .rhg-gallery__item{
  display:block;
  border-radius:12px;
  overflow:hidden;
  border:1px solid rgba(0,0,0,.06);
}
#rhg-profile .rhg-gallery__item img{
  width:100%;
  height:140px;
  object-fit:cover;
  display:block;
}
#rhg-profile .rhg-gallery__cta{
  margin-top:24px;
}

/* actions */
#rhg-profile .rhg-actions{
  margin-top:18px;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  justify-content:center;
}
#rhg-profile .rhg-btn{
  background:var(--rhg-black);
  color:var(--rhg-gold);
  border-radius:999px;
  padding:12px 18px;
  text-decoration:none !important;
  border:1px solid rgba(201,162,77,.35);
  transition: all .18s ease;
}
#rhg-profile .rhg-btn:hover{
  background:var(--rhg-gold);
  color:var(--rhg-black);
}
#rhg-profile .rhg-btn--ghost{
  background:transparent;
  color:var(--rhg-black);
  border:1px solid rgba(0,0,0,.12);
}
#rhg-profile .rhg-btn--ghost:hover{
  background:rgba(201,162,77,.12);
  color:var(--rhg-black);
}

/* responsive */
@media (max-width: 980px){
  #rhg-profile .rhg-grid{ grid-template-columns:1fr; }
  #rhg-profile .rhg-hero__name{ font-size:34px; }
  #rhg-profile .rhg-gallery__grid{ grid-template-columns: repeat(2, 1fr); }
  #rhg-profile .rhg-gallery__item img{ height:160px; }
}
#rhg-profile .rhg-gallery__item{
  position:relative;
  transform: translateZ(0);
}
#rhg-profile .rhg-gallery__item::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(11,11,11,0) 40%, rgba(11,11,11,.35));
  opacity:0;
  transition: opacity .18s ease;
}
#rhg-profile .rhg-gallery__item img{
  transition: transform .22s ease;
}
#rhg-profile .rhg-gallery__item:hover img{
  transform: scale(1.03);
}
#rhg-profile .rhg-gallery__item:hover::after{
  opacity:1;
}

/* =========================
   RHG - Albums (All) Premium
   ========================= */
.rhg-albums-page { max-width: 1400px; margin: 0 auto; padding: 18px 18px 30px; }

.rhg-albums-shell { border-radius: 16px; }
.rhg-albums-content { padding: 12px 12px 20px; }

/* Header premium */
.rhg-albums-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 16px;
  box-shadow: 0 8px 22px rgba(0,0,0,.06);
  padding: 16px 18px;
  margin: 10px 0 16px;
}

.rhg-albums-header__title { margin: 0; font-size: 26px; letter-spacing: .2px; }
.rhg-albums-header__subtitle { margin: 6px 0 0; opacity: .7; font-size: 14px; }

.rhg-albums-sort { display: inline-flex; align-items: center; gap: 10px; }
.rhg-albums-sort__label { font-weight: 700; opacity: .75; }

/* Body card */
.rhg-albums-body {
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 16px;
  box-shadow: 0 8px 22px rgba(0,0,0,.06);
  padding: 14px;
}

/* Ensure native snackbar doesn't fight our header */
.es-snackbar2 { display: none !important; }

/* Mobile */
@media (max-width: 991px) {
  .rhg-albums-header { flex-direction: column; align-items: stretch; }
  .rhg-albums-page { padding: 12px; }
}
/* Badges méta (âge / genre / situation) */
#rhg-profile .rhg-hero__meta{
  margin-top: 8px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

#rhg-profile .rhg-badge{
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(0,0,0,.25);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .02em;
  white-space: nowrap;
}
#rhg-profile .rhg-hero__meta{
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

#rhg-profile .rhg-badge{
  display: inline-flex;
  align-items: center;
  padding: 7px 12px;
  border-radius: 999px;

  /* Lisibilité */
  color: #fff !important;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;

  /* Contour + fond visibles sur noir */
  border: 1px solid rgba(212, 175, 55, .55) !important; /* or/champagne */
  background: rgba(255,255,255,.06) !important;

  /* Micro finition */
  letter-spacing: .02em;
  text-shadow: 0 1px 0 rgba(0,0,0,.35);
}

/*  AVATAR   */
/* Avatar: toujours net, jamais étiré */
.o-avatar-v2__content img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
/* =========================================================
   RHG – Bloc Physique (Header Profil)
   ========================================================= */

/* Conteneur principal */
#rhg-profile .rhg-phys {
	margin-top: 14px;
/*	padding-top: 6px;*/
	max-width: 520px;
}

/* Séparateur fin or / champagne */
#rhg-profile .rhg-phys__divider {
	height: 1px;
	width: 100%;
	margin: 10px 0 14px;
	opacity: 0.6;
	background: linear-gradient(
		90deg,
		rgba(210,175,92,0),
		rgba(210,175,92,0.8),
		rgba(210,175,92,0)
	);
}

/* Liste des critères */
#rhg-profile .rhg-phys__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 28px;
	row-gap: 10px;
}

/* Ligne */
#rhg-profile .rhg-phys__list li {
	display: flex;
	align-items: baseline;
	gap: 10px;
	min-width: 0;
}

/* Libellé (Taille, Silhouette…) */
#rhg-profile .rhg-phys__label {
	font-size: 14px;
	line-height: 1.2;
	opacity: 0.65;
	white-space: nowrap;
}

/* Valeur (178 cm, Athlétique…) */
#rhg-profile .rhg-phys__value {
	font-size: 15px;
	line-height: 1.2;
	font-weight: 500;
	color: inherit;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* ---------------------------------------------------------
   Responsive – Mobile
   --------------------------------------------------------- */
@media (max-width: 767px) {

	#rhg-profile .rhg-phys {
		margin-top: 12px;
		max-width: 100%;
	}

	#rhg-profile .rhg-phys__list {
		grid-template-columns: 1fr;
		column-gap: 0;
		row-gap: 8px;
	}
}
/* ================================
   RHG – Typographie bloc physique
   ================================ */

/* Libellés : gras, clairs, premium */
#rhg-profile .rhg-headcard__right .rhg-phys__label {
	font-size: 15px;
	font-weight: 450;          /* TITRES EN GRAS */
	line-height: 1.3;
	/* color: rgba(255,255,255,0.85);  clair sur fond noir */
	color: rgb(216, 192, 139);
	white-space: nowrap;
}

/* Valeurs : plus fines, même taille */
#rhg-profile .rhg-headcard__right .rhg-phys__value {
	font-size: 15px;           /* MÊME TAILLE */
	font-weight: 400;          /* PLUS FIN */
	line-height: 1.3;
	color: rgba(255,255,255,0.95);
	white-space: nowrap;
}

/* Ajustement de l’écart label / valeur */
#rhg-profile .rhg-headcard__right .rhg-phys__list li {
	gap: 8px;
}
/* RHG – Séparateur "Ce que je ne souhaite plus revivre" */
.rhg-text {
  line-height: 1.7;
}

.rhg-text .rhg-sep {
  display: inline-block;
  margin: 0 8px;
  font-weight: 400;
  opacity: 0.7;
  color: #C9A24D;
}
/* RHG – Listes verticales sans séparateurs */
.rhg-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.rhg-list li {
	font-size: 0.95rem;
	font-weight: 400;
	color: #1e1e1e;
	line-height: 1.4;
}
.rhg-list li::before {
	/*content: "—";*/
	margin-right: 8px;
	color: #c9a24d; /* or RHG */
	font-weight: 300;
}
/* RHG – 2 colonnes desktop, empilé mobile */
/* RHG – Force empilement Personnalité / Valeurs sur mobile */
@media (max-width: 991.98px){
  #rhg-profile .rhg-two{
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
  }

  #rhg-profile .rhg-two > .rhg-mini{
    width: 100% !important;
    min-width: 0 !important;
  }
}
#es .rhg-profile-gallery-cta{
	border: 1px solid rgba(211,176,108,.35);
	background: #fff;
	border-radius: 16px;
	padding: 18px;
	margin: 0 0 18px;
	box-shadow: 0 10px 25px rgba(0,0,0,.05);
}
#es .rhg-profile-gallery-cta__title{margin:0 0 6px;font-weight:700;}
#es .rhg-profile-gallery-cta__desc{margin:0 0 14px;color:rgba(0,0,0,.65);}
#es .rhg-profile-gallery-cta__actions{display:flex;flex-wrap:wrap;gap:10px;}
#es .rhg-btn-gold{
	border:0;border-radius:999px;padding:10px 18px;font-weight:600;
	background:linear-gradient(135deg,#d3b06c,#ae8a45);
	color:#fff !important;text-decoration:none !important;
}
#es .rhg-btn-soft{border-radius:999px;padding:10px 18px;font-weight:600;}
#es .rhg-profile-gallery-cta__note{margin-top:10px;font-size:12px;color:rgba(0,0,0,.55);}

/* =========================================
   RHG – Galerie photos (vignettes carrées)
   ========================================= */

#es .rhg-gallery__grid{
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
  align-items: stretch !important;
}

@media (max-width: 991px){
  #es .rhg-gallery__grid{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 640px){
  #es .rhg-gallery__grid{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* L'item devient un carré via aspect-ratio (moderne) */
#es .rhg-gallery__item{
  position: relative !important;
  display: block !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(0,0,0,.10) !important; /* adapte si ton fond est sombre */
  box-shadow: 0 10px 24px rgba(0,0,0,.08) !important;
  transform: translateZ(0);
}

/* Image crop */
#es .rhg-gallery__item img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}

/* Hover luxe */
#es .rhg-gallery__item::after{
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: radial-gradient(circle at 30% 20%, rgba(211,176,108,.18), transparent 55%) !important;
  opacity: 0 !important;
  transition: opacity .18s ease, transform .18s ease !important;
  transform: scale(1.02);
  pointer-events: none !important;
}

#es .rhg-gallery__item:hover{
  border-color: rgba(211,176,108,.45) !important; /* champagne gold */
}

#es .rhg-gallery__item:hover::after{
  opacity: 1 !important;
  transform: scale(1);
}
/* ===== RHG – Profession à côté du prénom ===== */
.rhg-hero__job {
/*	font-style: italic;*/
font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 100;
	color: var(--rhg-gold, #d3b06c);
	margin-left: 6px;
	font-size: 18px;
	opacity: 0.9;
	white-space: nowrap;
	text-transform: capitalize;
}

/* ===== TIMELINE RHG ===== */

.rhg-timeline-section {
  max-width: 900px;
  margin: 20px auto;
  padding: 0 20px;
}

.rhg-title {
  text-align: center;
  font-family: "Playfair Display", serif;
  font-size: 36px;
  margin-bottom: 10px;
}

.rhg-subtitle {
  text-align: center;
  color: #666;
  margin-bottom: 60px;
}

.rhg-timeline {
  position: relative;
  padding-left: 40px;
}

.rhg-timeline::before {
  content: "";
  position: absolute;
  left: 14px;
  top: 0;
  bottom: 0;
  width: 1px;
  background: #d3b06c;
}

.rhg-step {
  position: relative;
  margin-bottom: 50px;
}

/* .rhg-dot { */
  /* position: absolute; */
  /* left: -2px; */
  /* width: 30px; */
  /* height: 30px; */
  /* background: #fff; */
  /* border: 2px solid #d3b06c; */
  /* border-radius: 50%; */
  /* text-align: center; */
  /* line-height: 26px; */
  /* font-weight: 600; */
  /* color: #d3b06c; */
/* } */

.rhg-content {
  padding-left: 40px;
}

.rhg-content h3 {
  margin: 0 0 8px;
  font-size: 20px;
}

.rhg-content p {
  margin: 0;
  color: #555;
  line-height: 1.6;
}

/* =========================================
   RHG – Boutons actions (Passer / J'aime)
   Niveau: Haut standing
   ========================================= */

.rhg-list-actions{
	display:flex;
	align-items:center;
	gap:12px;
	margin-top:18px;
}

/* BASE COMMUNE */
.rhg-btn{
	appearance:none;
	-webkit-appearance:none;
	border:1px solid rgba(211,176,108,.35);
	background:transparent;

	display:inline-flex;
	align-items:center;
	justify-content:center;

	min-height:38px;
	padding:9px 16px;
	border-radius:999px;

	font-family:inherit;
	font-size:14px;
	font-weight:600;
	letter-spacing:.25px;
	line-height:1;

	color:#d3b06c;
	text-decoration:none;
	cursor:pointer;

	transition:
		background .18s ease,
		color .18s ease,
		border-color .18s ease,
		box-shadow .18s ease,
		transform .18s ease;
}

/* HOVER / FOCUS */
.rhg-btn:hover{
	transform:translateY(-1px);
	box-shadow:0 10px 22px rgba(0,0,0,.25);
	border-color:rgba(211,176,108,.55);
}

.rhg-btn:active{
	transform:none;
	box-shadow:none;
}

.rhg-btn:focus-visible{
	outline:2px solid rgba(211,176,108,.65);
	outline-offset:2px;
}

/* PASSER – Ghost premium */
.rhg-btn--ghost{
	background:rgba(0,0,0,.25);
	color:#d3b06c;
	border-color:rgba(211,176,108,.45);
	font-weight:500;
}

.rhg-btn--ghost:hover{
	background:rgba(211,176,108,.12);
}

/* J'AIME – Gold luxe */
.rhg-btn--gold{
	color:#0b0b0b;
	font-weight: 700;
	border-color:rgba(211,176,108,.7);
	background:linear-gradient(
		180deg,
		#e9d7a6 0%,
		#d3b06c 50%,
		#ae8a45 100%
	);
	box-shadow:0 8px 20px rgba(0,0,0,.22);
}

.rhg-btn--gold:hover{
	filter:brightness(1.03) saturate(1.05);
}

/* Responsive propre */
@media (max-width:420px){
	.rhg-list-actions{
		display:grid;
		grid-template-columns:1fr 1fr;
	}
	.rhg-btn{
		width:100%;
	}
}

.rhg-profile.is-rhg .rhg-context{
	margin: 16px;
	background: radial-gradient(900px 280px at 25% 0%, rgba(211,176,108,.10), transparent 60%),
	            rgba(255,255,255,.03);
	border: 1px solid rgba(255,255,255,.06);
	border-radius: 18px;
	padding: 16px 18px;
	/*box-shadow: 0 14px 34px rgba(0,0,0,.35);*/
	color: rgba(0,0,0,.85);
}
.rhg-profile.is-rhg .rhg-context__inner{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap: 14px;
}
.rhg-profile.is-rhg .rhg-context__kicker{
	font-size: 12px;
	letter-spacing: .22em;
	text-transform: uppercase;
	color: rgba(138, 93, 6, 0.9);
	margin-bottom: 6px;
}
.rhg-profile.is-rhg .rhg-context__title{
	font-size: 16px;
	font-weight: 700;
	color: #111;
	margin-bottom: 4px;
}
.rhg-profile.is-rhg .rhg-context__desc{
	font-size: 13px;
	color: rgba(0,0,0,.65);
	max-width: 70ch;
}
.rhg-profile.is-rhg .rhg-context .rhg-btn{
	font-weight:600;
}

@media (max-width: 680px){
	.rhg-profile.is-rhg .rhg-context__inner{
		flex-direction: column;
		align-items: stretch;
	}
}

/* ================================
   RHG – Rapport de compatibilité
   ================================ */

.rhg-report{
	max-width: 1160px;
	margin: 22px auto 60px;
	padding: 0 14px;
	color: rgba(255,255,255,.88);
}

.rhg-report__top{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	margin-bottom: 12px;
}

.rhg-link{
	color: rgba(211,176,108,.92);
	text-decoration:none;
	font-weight:600;
}
.rhg-link:hover{ text-decoration: underline; }

.rhg-report__meta{
	color: rgba(255,255,255,.55);
	font-size: 13px;
}

.rhg-report__hero{
	background: radial-gradient(1000px 380px at 25% 0%, rgba(211,176,108,.10), transparent 60%),
	            #0b0b0b;
	border: 1px solid rgba(255,255,255,.06);
	border-radius: 22px;
	box-shadow: 0 18px 45px rgba(0,0,0,.45);
	padding: 22px;
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:18px;
}

.rhg-kicker{
	font-size: 12px;
	letter-spacing: .22em;
	text-transform: uppercase;
	color: rgba(211,176,108,.9);
	margin-bottom: 8px;
}

.rhg-report__title{
	margin: 0 0 6px;
	font-size: 34px;
	letter-spacing:.2px;
	color: rgba(211,176,108,.92);
}

.rhg-report__sub{
	color: rgba(255,255,255,.68);
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:8px;
}

.rhg-sep{ opacity:.55; margin: 0 4px; }

.rhg-report__hero-actions{
	display:flex;
	flex-wrap:wrap;
	gap:12px;
	margin-top: 14px;
}

/* Score */
.rhg-score{
	min-width: 150px;
	border-radius: 18px;
	border: 1px solid rgba(211,176,108,.25);
	background: rgba(0,0,0,.25);
	padding: 14px 16px 12px;
	text-align:center;
}
.rhg-score__value{
	font-size: 34px;
	font-weight: 800;
	color: rgba(211,176,108,.95);
}
.rhg-score__label{
	font-size: 12px;
	letter-spacing: .22em;
	text-transform: uppercase;
	color: rgba(255,255,255,.70);
}

/* Cards grid */
/*.rhg-grid{
	margin-top: 14px;
	display:grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.rhg-card{
	background: rgba(255,255,255,.04);
	border: 1px solid rgba(255,255,255,.06);
	border-radius: 22px;
	padding: 18px;
	box-shadow: 0 10px 26px rgba(0,0,0,.25);
}

.rhg-card--wide{
	margin-top: 14px;
}

.rhg-card__title{
	margin: 0 0 12px;
	font-size: 18px;
	color: rgba(211,176,108,.92);
}*/

.rhg-list{
	margin: 0;
	padding-left: 18px;
	color: rgba(255,255,255,.72);
}
.rhg-list li{ margin: 8px 0; }

.rhg-muted{ color: rgba(255,255,255,.65); margin: 10px 0 0; }

.rhg-pills{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
}
.rhg-pill{
	border: 1px solid rgba(211,176,108,.25);
	background: rgba(0,0,0,.22);
	color: rgba(255,255,255,.82);
	padding: 8px 12px;
	border-radius: 999px;
	font-size: 13px;
}

/* KV */
.rhg-kv{ display:grid; gap: 10px; }
.rhg-kv__row{ display:flex; justify-content:space-between; gap:12px; }
.rhg-kv__k{ color: rgba(255,255,255,.60); }
.rhg-kv__v{ color: rgba(255,255,255,.86); font-weight: 600; }

/* Compat */
.rhg-compat{
	color: rgba(255,255,255,.76);
	display:grid;
	gap: 10px;
}
.rhg-compat strong{ color: rgba(211,176,108,.92); }

/* Decision */
.rhg-decision{
	margin-top: 14px;
	background: radial-gradient(900px 300px at 25% 0%, rgba(211,176,108,.10), transparent 60%),
	            rgba(255,255,255,.03);
	border: 1px solid rgba(255,255,255,.06);
	border-radius: 22px;
	padding: 20px;
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap: 16px;
}

.rhg-decision__title{
	margin: 0 0 6px;
	color: rgba(211,176,108,.92);
}

.rhg-decision__right{
	display:flex;
	flex-direction:column;
	gap: 12px;
	min-width: 360px;
}

/* Buttons (s’appuie sur vos styles existants si déjà présents) */
.rhg-btn{ text-decoration:none; }

/* Responsive */
@media (max-width: 980px){
	.rhg-grid{ grid-template-columns: 1fr; }
	.rhg-report__hero{ flex-direction:column; }
	.rhg-decision{ flex-direction:column; }
	.rhg-decision__right{ min-width:auto; width:100%; }
}
/* RHG – Rapport : 2 cartes (Synthèse / Points) */
.rhg-report-grid{
  margin-top:14px;
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px;
}

.rhg-report-card{
  background: radial-gradient(900px 320px at 25% 0%, rgba(211,176,108,.10), transparent 60%),
              #0b0b0b !important;
  border: 1px solid rgba(255,255,255,.06) !important;
  border-radius: 22px;
  box-shadow: 0 10px 26px rgba(0,0,0,.25);
  color: rgba(255,255,255,.88);
}

.rhg-report-card .rhg-h2{
  margin:0 0 12px;
  font-size:18px;
  color: rgba(211,176,108,.92);
}

.rhg-report-card .rhg-p{
  color: rgba(255,255,255,.72);
  line-height:1.7;
}

@media (max-width: 980px){
  .rhg-report-grid{ grid-template-columns:1fr; }
}
/* ================================
   RHG – Rapport de compatibilité
   Correction couleur du texte
   ================================ */

/* Liste dans le rapport */
.rhg-report .rhg-list,
.rhg-report .rhg-list li {
	color: rgba(255,255,255,.88) !important;
}

/* Tirets / séparateurs */
.rhg-report .rhg-list li::before {
	color: rgba(211,176,108,.9) !important; /* or RHG */
}

/* Texte secondaire */
.rhg-report .rhg-p,
.rhg-report .rhg-mini,
.rhg-report .rhg-muted {
	color: rgba(255,255,255,.75) !important;
}
/* =========================================================
   RHG – Rapport de compatibilité (DARK premium)
   Mettre en FIN de custom.css
   ========================================================= */
:root{
  --rhg-gold:#d3b06c;
  --rhg-gold2:#ae8a45;

  --rhg-ink:#ffffff;
  --rhg-muted:rgba(255,255,255,.72);

  --rhg-line:rgba(255,255,255,.10);
  --rhg-card:rgba(255,255,255,.04);
  --rhg-bg:#0b0b0b;
}

/* Wrapper */
.rhg-wrap{
  max-width:1140px;
  margin:22px auto;
  padding:0 14px;
  color: var(--rhg-ink);
}

/* Topbar */
.rhg-topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.rhg-back{
  display:inline-flex;
  gap:10px;
  align-items:center;
  text-decoration:none;
  font-weight:600;
  color: rgba(0,0,0,.85);
}
.rhg-back:hover{ opacity:.85; }
.rhg-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:1px solid rgba(0,0,0,.10);
  background:#fff;
  border-radius:999px;
  padding:8px 12px;
  font-size:13px;
  color: rgba(0,0,0,.62);
}

/* Hero */
.rhg-hero{
  border-radius:22px;
  padding:18px;
  background:
    radial-gradient(1200px 400px at 15% 0%, rgba(211,176,108,.16), transparent 55%),
    linear-gradient(180deg, rgba(0,0,0,.92), rgba(0,0,0,.86));
  color:#fff;
  border:1px solid var(--rhg-line);
  box-shadow:0 18px 40px rgba(0,0,0,.35);
}
.rhg-hero__grid{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:16px;
  align-items:stretch;
}
@media(max-width:900px){ .rhg-hero__grid{ grid-template-columns:1fr; } }

.rhg-kicker{
  letter-spacing:.14em;
  text-transform:uppercase;
  font-size:12px;
  color: rgba(255,255,255,.72);
}
.rhg-title{
  margin:6px 0 0;
  font-size:34px;
  line-height:1.15;
  color: rgba(255,255,255,.96);
}
.rhg-sub{
  margin:8px 0 0;
  color: rgba(255,255,255,.78);
  max-width:60ch;
}

/* Scorecard */
.rhg-scorecard{
  border-radius:18px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  padding:14px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.rhg-scoreline{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:10px;
  margin-bottom:10px;
}
.rhg-scoreline strong{
  font-size:14px;
  color: rgba(255,255,255,.82);
  font-weight:600;
}
.rhg-scoreval{
  font-size:38px;
  font-weight:800;
  letter-spacing:-.02em;
  background:linear-gradient(90deg,var(--rhg-gold),#f2dfb0,var(--rhg-gold2));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.rhg-meter{
  height:10px;
  border-radius:999px;
  background: rgba(255,255,255,.10);
  overflow:hidden;
}
.rhg-meter > span{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--rhg-gold),#f2dfb0,var(--rhg-gold2));
}
.rhg-scoremeta{
  margin-top:10px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.rhg-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.18);
  font-size:13px;
  color: rgba(255,255,255,.88);
}
.rhg-dot{
  width:6px;
  height:6px;
  border-radius:999px;
  background: var(--rhg-gold);
  display:inline-block;
}

/* Section + Cards */
.rhg-section{ margin-top:16px; }

.rhg-grid2{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:14px;
}
@media(max-width:900px){ .rhg-grid2{ grid-template-columns:1fr; } }

.rhg-card{
  border-radius:18px;
 /* background: var(--rhg-card);*/
  border:1px solid var(--rhg-line);
  box-shadow:0 14px 36px rgba(0,0,0,.25);
  color: rgba(255,255,255,.90);
}
.rhg-card__in{ padding:16px; }

.rhg-h2{
  margin:0 0 10px;
  font-size:18px;
  letter-spacing:.02em;
  color: rgba(211,176,108,.92);
}

.rhg-p{
  margin:0;
  color: rgba(255,255,255,.74);
  line-height:1.7;
}

/* Liste – lisible sur fond noir */
.rhg-card .rhg-list{
  margin:10px 0 0;
  padding-left:0;
  list-style:none;
}
.rhg-card .rhg-list li{
  margin:9px 0;
  line-height:1.6;
  color: rgba(255,255,255,.86);
}
.rhg-card .rhg-list li::before{
  /*content:"—";*/
  margin-right:10px;
  color: rgba(211,176,108,.92);
  font-weight:300;
}

/* CTA Row */
.rhg-ctaRow{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}
.rhg-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:11px 16px;
  text-decoration:none;
  font-weight:700;
  border:1px solid rgba(211,176,108,.35);
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.92);
}
.rhg-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(0,0,0,.25);
  border-color: rgba(211,176,108,.55);
}
.rhg-btn--gold{
  border-color: rgba(211,176,108,.65);
  background: linear-gradient(180deg, #e9d7a6 0%, #d3b06c 55%, #ae8a45 100%);
  color:#0b0b0b;
}
.rhg-mini{
  font-size:13px;
  /* color: rgba(255,255,255,.68); */
}
/* ================================
   RHG – Points de compatibilité
   ================================ */

/* Ligne principale */
.rhg-compat-main{
	display: flex;
	align-items: baseline;
	gap: 6px;
	color: rgba(255,255,255,.92);
	font-size: 15px;
	line-height: 1.5;
}

/* Tiret */
.rhg-compat-dash{
	color: #c9a24d;              /* or RHG */
	font-weight: 400;
	margin-right: 2px;
}

/* Valeur */
.rhg-compat-value{
	font-weight: 500;
}

/* Annotation */
.rhg-compat-note{
	margin-left: 18px;           /* aligné sous le texte */
	margin-top: 4px;

	font-size: 13px;             /* plus petit */
	font-style: italic;
	line-height: 1.5;

	color: rgba(255,255,255,.65); /* lisible mais discret */
}
/* Dashboard RHG — bouton "Voir le rapport" (scope limité) */
.es-dashboard .rhg-list-actions .rhg-btn--report{
  opacity: 1 !important;
  color: #fff !important;
  font-weight: 700;
  letter-spacing: .2px;
  text-shadow: none !important;

  /* améliore la lisibilité sur fond noir */
  border: 1px solid rgba(211,176,108,.65);
  box-shadow: 0 10px 26px rgba(0,0,0,.45);
}

/* Hover/Focus */
.es-dashboard .rhg-list-actions .rhg-btn--report:hover,
.es-dashboard .rhg-list-actions .rhg-btn--report:focus{
  opacity: 1 !important;
  filter: brightness(1.07);
  transform: translateY(-1px);
}

/* Si un style global désactive les liens dans actions */
.es-dashboard .rhg-list-actions .rhg-btn--report[aria-disabled="true"],
.es-dashboard .rhg-list-actions .rhg-btn--report.is-disabled{
  opacity: .55 !important;
  cursor: not-allowed;
}

/* RHG Dashboard grid */
.rhg-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
  align-items: stretch;
}

@media (max-width: 1200px){
  .rhg-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 768px){
  .rhg-grid{ grid-template-columns: 1fr; }
}

/* Cards vertical layout (footer en bas) */
.rhg-card{
  display:flex;
  flex-direction:column;
  min-height: 520px; /* ajuste au besoin */
}

.rhg-card-footer{
  margin-top:auto;
}
/* =========================
   RHG - Kill overlays / halos (EasySocial + Helix)
   Si le halo vient d'un ::before/::after, ceci le supprime.
   ========================= */

#sp-main-body::before,
#sp-main-body::after,
#sp-body::before,
#sp-body::after,
.es-wrapper::before,
.es-wrapper::after,
.es-container::before,
.es-container::after,
.es-dashboard::before,
.es-dashboard::after,
.com-easysocial::before,
.com-easysocial::after {
  content: none !important;
  display: none !important;
}

/* Neutralise tout fond/effet résiduel sur les wrappers */
#sp-main-body,
#sp-body,
.com-easysocial,
.es-container,
.es-wrapper,
.es-dashboard {
  background-image: none !important;
  box-shadow: none !important;
  filter: none !important;
}
/* =========================
   RHG - Nettoyage halo bandeau EasySocial
   ========================= */

/* Bandeau navigation secondaire EasySocial */
.es-toolbar,
.es-toolbar__wrapper,
.es-toolbar__container {
  background: rgba(10, 10, 10, 0.95) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
}

/* Supprime tout gradient résiduel */
.es-toolbar::before,
.es-toolbar::after {
  content: none !important;
}
/* =========================================================
   RHG – CSS CONSOLIDÉ (Helix + EasySocial) – Nettoyé
   Objectif : zéro conflit global, scoping strict par zone
   ========================================================= */

/* ---------------------------------------------------------
   0) TOKENS GLOBAUX RHG (utilisés par dashboard/profil/rapport)
   --------------------------------------------------------- */
:root{
  --rhg-gold:#d3b06c;
  --rhg-gold2:#ae8a45;

  --rhg-bg:#0b0b0b;
  --rhg-line:rgba(255,255,255,.10);
  --rhg-muted:rgba(255,255,255,.72);

  --rhg-panel:#161616;
  --rhg-border-soft: rgba(255,255,255,0.08);
}

/* ---------------------------------------------------------
   1) HELIX – Fond global sombre + wrappers transparents
   --------------------------------------------------------- */
html, body{
  background: radial-gradient(circle at top, #1a1a1a 0%, #121212 35%, #0b0b0b 70%) !important;
}
body{ color: rgba(255,255,255,.86); }

#sp-body,
#sp-main-body,
.com_easysocial,
.com-easysocial,
.es-container,
.es-wrapper,
.es-apps,
.es-dashboard{
  background: transparent !important;
}

a{ color: inherit; }
a:hover{ opacity: .9; }

hr, .hr, .divider{ opacity:.35; }

/* Logo mobile (une seule fois) */
@media (max-width:575px){
  #sp-header .logo{ height:40px; }
}
.logo-image-phone{ height:40px !important; }

/* Kill halos/overlays (conservé, utile) */
#sp-main-body::before,
#sp-main-body::after,
#sp-body::before,
#sp-body::after,
.es-wrapper::before,
.es-wrapper::after,
.es-container::before,
.es-container::after,
.es-dashboard::before,
.es-dashboard::after,
.com-easysocial::before,
.com-easysocial::after{
  content:none !important;
  display:none !important;
}
#sp-main-body,
#sp-body,
.com-easysocial,
.es-container,
.es-wrapper,
.es-dashboard{
  background-image:none !important;
  box-shadow:none !important;
  filter:none !important;
}

/* Toolbar EasySocial sombre (conservé) */
.es-toolbar,
.es-toolbar__wrapper,
.es-toolbar__container{
  background: rgba(10,10,10,.95) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  box-shadow:none !important;
}
.es-toolbar::before,
.es-toolbar::after{
  content:none !important;
}

/* Fix structurel avatar (safe global) */
.o-avatar-v2__content img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* ---------------------------------------------------------
   2) LEGAL / CGU / CGV (scope strict)
   --------------------------------------------------------- */
.rhg-legal{
  max-width:1100px;
  margin:40px auto;
  padding:20px 30px;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:#f5f5f5;
  line-height:1.7;
}
.rhg-legal-header{ text-align:center; margin-bottom:50px; }
.rhg-legal-header h1{
  font-size:26px;
  font-weight:600;
  color: rgba(255,255,255,.92);
  text-transform:uppercase;
  letter-spacing:1px;
  margin-bottom:10px;
  font-family:"Playfair Display","Times New Roman",serif;
}
.rhg-legal-subtitle{ font-size:16px; color: rgba(255,255,255,.70); }

.rhg-legal-nav{
  margin-top:35px;
  display:flex;
  justify-content:center;
  gap:15px;
  flex-wrap:wrap;
}
.rhg-pill-link{
  padding:10px 22px;
  border:1px solid var(--rhg-gold);
  color: rgba(255,255,255,.72);
  border-radius:30px;
  font-size:15px;
  transition: all .25s ease;
  text-decoration:none;
}
.rhg-pill-link:hover{
  background: var(--rhg-gold);
  color:#111;
}

.rhg-legal .rhg-block{
  background: var(--rhg-panel);
  padding:40px;
  margin-bottom:60px;
  border:1px solid var(--rhg-border-soft);
  border-radius:14px;
  color:#d7d7d7 !important;
}
.rhg-legal .rhg-block h2{
  font-size:22px;
  font-weight:500;
  color:#d7d7d7 !important;
  margin-bottom:25px;
  text-transform:capitalize;
  letter-spacing:1px;
  font-family:"Playfair Display","Times New Roman",serif;
}

.rhg-legal .rhg-section{
  margin-bottom:40px;
  padding-bottom:35px;
  border-bottom:1px solid var(--rhg-border-soft);
}
.rhg-legal .rhg-section:last-of-type{ border-bottom:none; }
.rhg-legal .rhg-section h3{
  font-size:18px;
  font-weight:500;
  color: var(--rhg-gold);
  margin-bottom:15px;
  font-family:"Playfair Display","Times New Roman",serif;
}
.rhg-legal .rhg-section p{
  margin-bottom:15px;
  font-size:16px;
  color:#dddddd;
}
.rhg-legal .rhg-section ul,
.rhg-legal .rhg-section ol{ margin-left:25px; margin-top:10px; }
.rhg-legal .rhg-section li{ margin-bottom:8px; color:#e0e0e0; }

.rhg-legal .rhg-icon i{
  color:#e5c259;
  margin-right:8px;
  font-size:22px;
}
.rhg-legal a{ color:#e5c259; text-decoration:none; }
.rhg-legal a:hover{ text-decoration:underline; }

@media (max-width:768px){
  .rhg-legal{ padding:15px 20px; }
  .rhg-legal .rhg-block{ padding:25px; }
  .rhg-legal-header h1{ font-size:28px; }
  .rhg-legal .rhg-section h3{ font-size:20px; }
}

/* ---------------------------------------------------------
   3) EASYSOCIAL – THEME LUXE (scopé #es / #fd uniquement)
   --------------------------------------------------------- */

/* Variables EasySocial (tes tokens UI light) */
#es{
  --es-gold:#d6b980;
  --es-gold-dark:#b79c6b;
  --es-bg-soft:#faf8f3;
  --es-border:#e7dfcf;
  --es-text:#2e2e2e;
  --es-muted:#7a7368;

  font-family:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:14px;
}

#es.es-component.es-main{
  display:block !important;
  width:100% !important;
  max-width:1360px;
  margin:0 auto 30px;
  padding:0 20px;
  box-sizing:border-box;
}

#es a{ color: var(--es-gold-dark); text-decoration:none; }
#es a:hover{ color: var(--es-gold); }

#es h1,#es h2,#es h3,#es h4{
  font-family:"Playfair Display","Times New Roman",serif;
  color: #c3c2c2;
  letter-spacing:.02em;
}
#es h1{ font-size:24px; }

/* Cartes standard EasySocial */
#es .es-card,
#es .es-content,
#es .es-panel,
#es .es-box,
#es .es-stream,
#es .es-profile-content,
#es .es-profile-sidebar,
#es .es-widget{
  background:#fff;
  border:1px solid var(--es-border);
  border-radius:10px;
  box-shadow:0 8px 26px rgba(0,0,0,.04);
}

/* Boutons ES */
#es .btn-es,
#es .btn-es-primary,
#es .btn-primary{
  background: linear-gradient(135deg, var(--es-gold), var(--es-gold-dark));
  border:none;
  color:#fff !important;
  border-radius:999px;
  padding:8px 20px;
  font-weight:500;
  letter-spacing:.03em;
  text-transform:uppercase;
  font-size:12px;
}
#es .btn-es:hover,
#es .btn-es-primary:hover,
#es .btn-primary:hover{
  background: linear-gradient(135deg, var(--es-gold-dark), var(--es-gold));
  box-shadow:0 6px 18px rgba(214,185,128,.45);
  transform: translateY(-1px);
}
#es .btn,
#es .btn-default,
#es .btn-es-default{
  background:#fff;
  border-radius:999px;
  border:1px solid var(--es-border);
  color: var(--es-muted);
  padding:7px 18px;
  font-size:12px;
}
#es .btn:hover,
#es .btn-default:hover,
#es .btn-es-default:hover{
  border-color: var(--es-gold);
  color: var(--es-gold-dark);
}

/* Toolbar StackIdeas (#fd) : bouton composer */
#fd .fd-toolbar__link.is-composer{
  background: linear-gradient(135deg, #d6b980, #b79c6b) !important;
  color:#fff !important;
  border-radius:50% !important;
  width:42px !important;
  height:42px !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  border:none !important;
  box-shadow:0 6px 18px rgba(214,185,128,.45);
}
#fd .fd-toolbar__link.is-composer i{ font-size:18px; }
#fd .fd-toolbar__link.is-composer:hover{
  background: linear-gradient(135deg, #b79c6b, #d6b980) !important;
  transform: translateY(-1px);
}

/* Onglets profil header nav (suppression bleu) */
#es .es-profile-header-nav__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 20px;
  font-family:"Playfair Display",serif;
  font-size:15px;
  letter-spacing:.05em;
  color:#8a7f70;
  background:transparent;
  border-bottom:3px solid transparent !important;
  position:relative;
}
#es .es-profile-header-nav__link:hover{ color:#b79c6b; }
#es .es-profile-header-nav__link:hover::after{
  content:"";
  position:absolute;
  left:20%;
  right:20%;
  bottom:-2px;
  height:2px;
  background: rgba(214,185,128,.5);
  border-radius:999px;
}
#es .es-profile-header-nav__item.is-active .es-profile-header-nav__link{
  color:#d6b980 !important;
  font-weight:600;
}
#es .es-profile-header-nav__item.is-active .es-profile-header-nav__link::after{
  content:"";
  position:absolute;
  left:15%;
  right:15%;
  bottom:-2px;
  height:3px;
  background: linear-gradient(90deg, #d6b980, #b79c6b);
  border-radius:999px 999px 0 0;
}

/* Avatars online */
#es .o-avatar-v2.is-online{ border:2px solid #DBC394; }
#fd .o-avatar.is-online{
  --tw-ring-color: var(--fd-success-500-hex,rgb(205, 176, 122)) !important;
  --tw-ring-offset-width:2px;
  background-color:#fff;
}

/* -------------------------
   Stepbar : conserver 1 seule vérité
   -> j'ai gardé la version "gap serré" (2px) comme finale.
   ------------------------- */
#es .es-stepbar{ display:flex !important; justify-content:center !important; padding:0 10px !important; }
#es .es-stepbar__lists{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
  gap:2px !important; /* finale */
}
#es .es-stepbar__lists > li{ margin:0 !important; padding:0 !important; position:relative !important; }
#es .es-stepbar .es-stepbar__lists > li > a{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:36px !important;
  height:36px !important;
  border-radius:50% !important;
  background:#f0f0f0 !important;
  border:1px solid #ddd2c2 !important;
  color:#000 !important;
  text-decoration:none !important;
  transition: all .25s ease !important;
}
#es .es-stepbar .es-stepbar__lists .step-number{ font-size:15px !important; font-weight:600 !important; }
#es .es-stepbar .es-stepbar__lists > li.active > a{
  background:#D1B06B !important;
  border-color:#D1B06B !important;
  color:#fff !important;
  box-shadow:0 0 0 3px rgba(209,176,107,.35) !important;
}
#es .es-stepbar .es-stepbar__lists > li > a:hover{
  background:#d9c08a !important;
  border-color:#d9c08a !important;
  color:#fff !important;
}
#es .es-stepbar .es-stepbar__lists > li.past > a{
  background:#f5ecdd !important;
  border-color:#D1B06B !important;
  color:#7c6a4e !important;
}
#es .es-stepbar .es-stepbar__lists > li.divider-vertical{
  flex:0 0 24px !important;
  height:1px !important;
  background:#D1B06B !important;
  margin:0 !important;
  padding:0 !important;
}
#es .es-stepbar .divider-vertical-last{ display:none !important; }
#es .es-stepbar__lists li.stepItem.past:first-child{ display:none !important; }

@media (max-width:575px){
  #es .es-stepbar .es-stepbar__lists > li > a{
    width:30px !important;
    height:30px !important;
    font-size:13px !important;
  }
  #es .es-stepbar .es-stepbar__lists > li.divider-vertical{
    flex:0 0 14px !important;
  }
  /* sur mobile, on ré-ouvre légèrement l’espacement pour respirer */
  #es .es-stepbar__lists{ gap:10px !important; }
}

/* -------------------------
   Registration : carte luxe (scope view-registration)
   ------------------------- */
body.view-registration #es .es-forms__group{
  max-width:980px;
  margin:10px auto 30px;
  background:#fff;
  border-radius:18px;
  box-shadow:0 10px 30px rgba(0,0,0,.04);
  padding:32px 40px;
}
body.view-registration #es .es-field-header{ margin-bottom:18px; }
body.view-registration #es .es-snackbar2__title{
  font-family:"Playfair Display",serif;
  font-size:20px;
  font-weight:700;
  color:#333;
}
body.view-registration #es .es-field-header p{
  margin-top:6px;
  font-size:14px;
  color:#777;
}
body.view-registration #es .o-control-label{
  font-family:"Playfair Display",serif;
  font-size:15px;
  font-weight:600;
  color:#222;
}
body.view-registration #es .o-control-label span{ color:#D1B06B; }
body.view-registration #es .o-help-block{
  margin-top:4px;
  font-size:13px;
  line-height:1.5;
  color:#666;
}
body.view-registration #es .o-form-group{ margin-bottom:18px; }

body.view-registration #es .o-form-control{
  border-radius:999px;
  border:1px solid #ddd2c2;
  padding:9px 16px;
  height:42px;
  font-size:14px;
  line-height:1.3;
  color:#333;
  background:#faf8f5;
  transition: all .2s ease;
}
body.view-registration #es .o-form-control:focus{
  outline:none;
  border-color:#D1B06B;
  box-shadow:0 0 0 2px rgba(209,176,107,.35);
  background:#fff;
}
body.view-registration #es .o-form-control::placeholder{ color:#b5aa9a; }

body.view-registration #es ul.input-vertical > li{ margin-bottom:8px; }

body.view-registration #es .es-forms__actions{
  max-width:980px;
  margin:12px auto 60px;
}
body.view-registration #es .o-form-actions{
  display:flex;
  justify-content:flex-end;
  padding:0;
  background:transparent;
  border:none;
  box-shadow:none;
}

@media (max-width:575px){
  body.view-registration #es .es-forms__group{
    padding:20px 18px !important;
    border-radius:14px !important;
    margin:22px 10px 40px !important;
    box-shadow:0 6px 18px rgba(0,0,0,.05);
  }
  body.view-registration #es .es-snackbar2__title{ font-size:18px !important; }
  body.view-registration #es .o-form-control{
    height:38px !important;
    padding:8px 14px !important;
    font-size:14px !important;
  }
  body.view-registration #es .es-forms__actions{
    margin:0 10px 40px !important;
  }
  body.view-registration #es #btn-register-submit{
    width:100% !important;
    text-align:center !important;
    padding:12px 0 !important;
    border-radius:999px !important;
  }
}

/* ---------------------------------------------------------
   4) RHG – DASHBOARD (scope strict EasySocial dashboard)
   --------------------------------------------------------- */
.es-dashboard .rhg-dashboard-member{
  max-width:1200px;
  margin:40px auto;
  padding:20px 15px;
}

/* Titres dashboard RHG (ne pas utiliser .rhg-title global !) */
.es-dashboard .rhg-dashboard-member .rhg-title{
  font-size:32px;
  font-weight:600;
  color: #c7a567;
  margin-bottom:10px;
}
.es-dashboard .rhg-dashboard-member .rhg-subtitle{
  font-size:18px;
  color: rgba(255,255,255,.65);
  margin-bottom:30px;
}

/* Grid dashboard RHG */
.es-dashboard .rhg-dashboard-member .rhg-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:24px;
  margin-top:30px;
}
@media (max-width:1199px){
  .es-dashboard .rhg-dashboard-member .rhg-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width:991px){
  .es-dashboard .rhg-dashboard-member{
    margin:30px auto;
    padding:15px 10px;
  }
  .es-dashboard .rhg-dashboard-member .rhg-title{ font-size:26px; }
  .es-dashboard .rhg-dashboard-member .rhg-subtitle{ font-size:16px; }
  .es-dashboard .rhg-dashboard-member .rhg-grid{
    grid-template-columns:1fr;
    gap:18px;
  }
}
@media (max-width:575px){
  .es-dashboard .rhg-dashboard-member{
    margin:20px auto;
    padding:10px;
  }
}

/* Card dashboard RHG */
.es-dashboard .rhg-dashboard-member .rhg-block{
  background:#0f0f0f;
  border-radius:14px;
  padding:20px;
  border:1px solid rgba(255,255,255,.06);
  box-shadow:0 18px 40px rgba(0,0,0,.25);
  color:#fff;
}
.es-dashboard .rhg-dashboard-member .rhg-block-title{
  font-size:20px;
  margin-bottom:10px;
  color:#F4E3C4;
  font-family:"Playfair Display",serif;
}

/* Liens dashboard */
.es-dashboard .rhg-dashboard-member .rhg-links{
  list-style:none;
  padding:0;
  margin:0;
}
.es-dashboard .rhg-dashboard-member .rhg-links li{ margin-bottom:8px; }
.es-dashboard .rhg-dashboard-member .rhg-links a{ color: rgba(255,255,255,.90); text-decoration:none; }
.es-dashboard .rhg-dashboard-member .rhg-links a:hover{ color:#F4E3C4; }

/* ---------------------------------------------------------
   5) RHG – PROFIL (version "photo grande" retenue)
   --------------------------------------------------------- */
#rhg-profile.rhg-profile{
  background: #181817; /* crème plus sombre */
}



/* HERO */
#rhg-profile .rhg-hero{
  position:relative;
  min-height:400px;
  background-size:cover;
  background-position:center;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:40px 18px;
}
#rhg-profile .rhg-hero__overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.62) 0%, rgba(0,0,0,.55) 55%, rgba(0,0,0,.35) 100%);
}
#rhg-profile .rhg-hero__inner{
  position:relative;
  width:100%;
  max-width:1100px;
  z-index:2;
}

/* HEAD CARD */
#rhg-profile .rhg-headcard{
  width:100%;
  display:grid;
  grid-template-columns:320px 1fr;
  gap:34px;
  align-items:center;
  padding:26px;
  background:#0F0F0F;
  border:1px solid rgba(214,177,94,.25);
  border-radius:18px;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
#rhg-profile .rhg-headcard__left{
  width:200px;
  flex:0 0 200px;
  overflow:hidden;
  border-radius:14px;
}
#rhg-profile .rhg-headcard__photo{
  width:100%;
  height:200px;
  object-fit:cover;
  border-radius:14px;
  border:2px solid rgba(214,177,94,.55);
  box-shadow:0 18px 45px rgba(0,0,0,.35);
  display:block;
}

/* Nom / sous-titre / signature */
#rhg-profile .rhg-hero__name{
  font-family:"Playfair Display",serif;
  font-weight:500;
  letter-spacing:2px;
  text-transform:uppercase;
  font-size:56px;
  color:#d6b15e;
  line-height:1.05;
  margin:0 0 10px;
}
#rhg-profile .rhg-hero__sub{
  font-family:"Playfair Display",serif;
  font-size:22px;
  color:rgba(255,255,255,.92);
  margin:0 0 14px;
}
#rhg-profile .rhg-hero__signature{
  font-family:"Poppins",sans-serif;
  font-size:15px;
  line-height:1.7;
  color:rgba(255,255,255,.86);
  max-width:560px;
}

/* Profession à côté du prénom (conservé) */
#rhg-profile .rhg-hero__job{
  font-family:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-weight:100;
  color: var(--rhg-gold);
  margin-left:6px;
  font-size:18px;
  opacity:.9;
  white-space:nowrap;
  text-transform:capitalize;
}

/* Badges méta (fusion propre, une seule définition) */
#rhg-profile .rhg-hero__meta{
  margin-top:10px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
#rhg-profile .rhg-badge{
  display:inline-flex;
  align-items:center;
  padding:7px 12px;
  border-radius:999px;
  color:#fff !important;
  font-size:13px;
  font-weight:600;
  line-height:1;
  border:1px solid rgba(212,175,55,.55) !important;
  background: rgba(255,255,255,.06) !important;
  letter-spacing:.02em;
  text-shadow:0 1px 0 rgba(0,0,0,.35);
}

/* Bloc Physique (conservé) */
#rhg-profile .rhg-phys{ margin-top:14px; max-width:520px; }
#rhg-profile .rhg-phys__divider{
  height:1px;
  width:100%;
  margin:10px 0 14px;
  opacity:.6;
  background: linear-gradient(90deg, rgba(210,175,92,0), rgba(210,175,92,.8), rgba(210,175,92,0));
}
#rhg-profile .rhg-phys__list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:1fr 1fr;
  column-gap:28px;
  row-gap:10px;
}
#rhg-profile .rhg-phys__list li{
  display:flex;
  align-items:baseline;
  gap:8px;
  min-width:0;
}
#rhg-profile .rhg-phys__label{
  font-size:15px;
  font-weight:450;
  line-height:1.3;
  color: rgb(216, 192, 139);
  white-space:nowrap;
}
#rhg-profile .rhg-phys__value{
  font-size:15px;
  font-weight:400;
  line-height:1.3;
  color: rgba(255,255,255,.95);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* Contenu profil */
#rhg-profile .rhg-content{
  padding:58px 18px 70px;
  max-width:1100px;
  margin:0 auto;
}
#rhg-profile .rhg-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:56px;
}
#rhg-profile .rhg-card{
  background: rgba(255,255,255,.45);
  border: 1px solid rgba(58,47,34,.18);
  border-radius:16px;
  padding:26px;
}
#rhg-profile .rhg-title{
  font-family:"Playfair Display",serif;
  font-weight:500;
  letter-spacing:2px;
  font-size:20px;
  color:#3a2f22;
  margin:0 0 14px;
}
#rhg-profile .rhg-divider{
  height:1px;
  width:100%;
  background: rgba(58,47,34,.22);
  margin:0 0 18px;
}
#rhg-profile .rhg-muted{ opacity:.65; }

/* Listes profil */
#rhg-profile .rhg-checks,
#rhg-profile .rhg-bullets{
  list-style:none;
  padding:0;
  margin:0;
  font-family:"Poppins",sans-serif;
  font-size:16px;
  line-height:1.9;
  color:#2f2a25;
}
#rhg-profile .rhg-checks li,
#rhg-profile .rhg-bullets li{
  position:relative;
  padding-left:26px;
  margin:7px 0;
}
#rhg-profile .rhg-checks li:before,
#rhg-profile .rhg-bullets li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  font-weight:700;
  opacity:.9;
}

/* Galerie profil (scopée) */
#rhg-profile .rhg-gallery__grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:16px;
}
#rhg-profile .rhg-gallery__item{
  display:block;
  overflow:hidden;
  border-radius:12px;
  border:1px solid rgba(58,47,34,.18);
  background:#fff;
}
#rhg-profile .rhg-gallery__item img{
  width:100%;
  height:190px;
  object-fit:cover;
  display:block;
  transition: transform .25s ease;
}
#rhg-profile .rhg-gallery__item:hover img{ transform: scale(1.03); }

/* Responsive profil */
@media (max-width:992px){
  #rhg-profile .rhg-hero{ min-height:520px; }
  #rhg-profile .rhg-headcard{
    grid-template-columns:1fr;
    text-align:center;
    gap:20px;
  }
  #rhg-profile .rhg-headcard__photo{
    height:320px;
    max-width:420px;
    margin:0 auto;
  }
  #rhg-profile .rhg-hero__name{ font-size:44px; }
  #rhg-profile .rhg-hero__sub{ font-size:18px; }
  #rhg-profile .rhg-grid{ grid-template-columns:1fr; }
  #rhg-profile .rhg-gallery__grid{ grid-template-columns:repeat(2, 1fr); }
}
@media (max-width:520px){
  #rhg-profile .rhg-headcard__photo{ height:280px; }
  #rhg-profile .rhg-gallery__grid{ grid-template-columns:1fr; }
  #rhg-profile .rhg-gallery__item img{ height:220px; }
}
@media (max-width:767px){
  #rhg-profile .rhg-phys{ margin-top:12px; max-width:100%; }
  #rhg-profile .rhg-phys__list{ grid-template-columns:1fr; row-gap:8px; }
}

/* ---------------------------------------------------------
   6) RHG – RAPPORT (scopé, pas de .rhg-btn global)
   --------------------------------------------------------- */
.rhg-report{
  max-width:1160px;
  margin:22px auto 60px;
  padding:0 14px;
  color: rgba(255,255,255,.88);
}

/* Harmonisation listes rapport */
.rhg-report .rhg-list,
.rhg-report .rhg-list li{
  color: rgba(255,255,255,.88) !important;
}

/* Boutons rapport (scopés) */
.rhg-report .rhg-btn,
.rhg-wrap .rhg-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:11px 16px;
  text-decoration:none;
  font-weight:700;
  border:1px solid rgba(211,176,108,.35);
  background: rgba(255,255,255,.06);
  color: rgba(255,255,255,.92);
  transition: all .18s ease;
}
.rhg-report .rhg-btn:hover,
.rhg-wrap .rhg-btn:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(0,0,0,.25);
  border-color: rgba(211,176,108,.55);
}
.rhg-report .rhg-btn--gold,
.rhg-wrap .rhg-btn--gold{
  border-color: rgba(211,176,108,.65);
  background: linear-gradient(180deg, #e9d7a6 0%, #d3b06c 55%, #ae8a45 100%);
  color:#0b0b0b;
}

/* ---------------------------------------------------------
   7) Galerie carrée (EasySocial) – scope #es uniquement
   (Tu avais aussi une version non scopée : supprimée)
   --------------------------------------------------------- */
#es .rhg-gallery__grid{
  display:grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  gap:14px !important;
  align-items:stretch !important;
}
@media (max-width:991px){
  #es .rhg-gallery__grid{ grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
}
@media (max-width:640px){
  #es .rhg-gallery__grid{ grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
}
#es .rhg-gallery__item{
  position:relative !important;
  display:block !important;
  width:100% !important;
  aspect-ratio: 1 / 1 !important;
  border-radius:16px !important;
  overflow:hidden !important;
  background: rgba(255,255,255,.06) !important;
  border:1px solid rgba(0,0,0,.10) !important;
  box-shadow:0 10px 24px rgba(0,0,0,.08) !important;
  transform: translateZ(0);
}
#es .rhg-gallery__item img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
}
#es .rhg-gallery__item::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background: radial-gradient(circle at 30% 20%, rgba(211,176,108,.18), transparent 55%) !important;
  opacity:0 !important;
  transition: opacity .18s ease, transform .18s ease !important;
  transform: scale(1.02);
  pointer-events:none !important;
}
#es .rhg-gallery__item:hover{ border-color: rgba(211,176,108,.45) !important; }
#es .rhg-gallery__item:hover::after{ opacity:1 !important; transform: scale(1); }

#fd .fd-toolbar-divider {
  margin-top: var(--fd-spacing-sm);
  --tw-border-opacity: 1;
  border-color: var(--fd-gray-200-hex,rgba(var(--fd-gray-200),var(--tw-border-opacity))) !important;
  border-top: 1px var(--fd-gray-200-hex,rgb(97, 97, 97)) !important;
  border-style: solid !important;
}
#fd .fd-toolbar__link {
  cursor: pointer !important;
  font-size: var(--fd-font-size-sm)!important;
  line-height: var(--fd-line-height-sm)!important;
  color: #E7CDB3 !important;
}
/* RHG: fond assombri SANS voile sur le contenu */
#es #rhg-profile.rhg-profile{
  position: relative;
  background: transparent !important; /* important pour neutraliser l'ancien background */
}

#es #rhg-profile.rhg-profile::before{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, #1a1a1a 0%, #121212 45%, #0f0f0f 100%);
  /* Variante crème sombre (si tu veux rester sur beige) :
  background: linear-gradient(180deg, #eee9df 0%, #e0dbd0 45%, #d2cbbf 100%);
  */
  z-index: 0;
}

#es #rhg-profile.rhg-profile > *{
  position: relative;
  z-index: 1;
}
/* =========================================================
   RHG PROFIL — FIX "PAS DE VOILE"
   But : fond sombre OK, contenu net (sans aspect gris/brume)
   A COLLER EN FIN DE FICHIER
   ========================================================= */

/* 1) Fond sombre sur le conteneur, sans impacter le contenu */
#es #rhg-profile.rhg-profile{
  position: relative !important;
  background: transparent !important;
  isolation: isolate;                 /* évite les mélanges de calques */
}

#es #rhg-profile.rhg-profile::before{
  content:"";
  position:absolute;
  inset:0;
  background: radial-gradient(
    circle at 50% 8%,
    #1b1b1b 0%,
    #121212 55%,
    #0d0d0d 100%
  );
  z-index: 0;
}

/* 2) Tout le contenu au-dessus (net) */
#es #rhg-profile.rhg-profile > *{
  position: relative;
  z-index: 1;
}

/* 3) Cartes profil : STOP au rgba(255,255,255,.45) (= voile)
      => on force une carte opaque et lisible */
#es #rhg-profile .rhg-card{
  background: #F7F6F3 !important;     /* opaque = pas de voile */
  color: #1b1b1b !important;
  border: 1px solid rgba(201,162,77,.22) !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.18) !important;
}

/* Titre + texte dans cartes */
#es #rhg-profile .rhg-title{ color:#1b1b1b !important; }
#es #rhg-profile .rhg-text{ color:#1b1b1b !important; }
#es #rhg-profile .rhg-muted{ color: rgba(0,0,0,.55) !important; }

/* 4) Headcard : supprime l'effet "brume" (backdrop-filter) */
#es #rhg-profile .rhg-headcard{
  background: #0f0f0f !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* 5) Si un filtre/opacity traîne sur des wrappers, on neutralise */
#es #rhg-profile,
#es #rhg-profile *{
  filter: none !important;
}

/* 6) Galerie : carte opaque (si tu vois encore un gris) */
#es #rhg-profile .rhg-gallery__item{
  background: #ffffff !important;
}
/* ================================
   RHG – FIX LISTES BLANC SUR BLANC
   ================================ */

/* Zone RHG uniquement */
.rhg-card .rhg-list,
.rhg-card .rhg-list li {
    color: #1a1a1a !important;          /* texte noir lisible */
    background: transparent !important;
}

/* Items de liste */
.rhg-card .rhg-list li {
    font-size: 14px;
    line-height: 1.6;
    padding: 6px 10px;
    margin: 6px 0;
    border-left: 3px solid #d3b06c;     /* or RHG */
    background: rgba(0,0,0,0.03);       /* léger contraste */
}

/* Supprimer tout héritage EasySocial */
#es .rhg-card .rhg-list li {
    color: #1a1a1a !important;
}
/* =========================================
   RHG – Chips (générique)
   ========================================= */
#rhg-profile .rhg-text.rhg-chips{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
  line-height: 1; /* on maîtrise la hauteur via padding */
}

/* Le chip */
#rhg-profile .rhg-text.rhg-chips .rhg-chip{
  display: inline-flex;
  align-items: center;
  padding: 6px 12px;
  border-radius: 999px;
  font-size: 13px;
  white-space: nowrap;
}

/* Variante NEGATIVE (ce que je ne souhaite plus revivre) */
#rhg-profile .rhg-text.rhg-chips--negative .rhg-chip{
  background: rgba(180, 60, 60, 0.08);
  color: #6b2c2c !important;
  border: 1px solid rgba(180, 60, 60, 0.25);
}

/* Variante POSITIVE (si tu veux réutiliser pour "facilite la compatibilité") */
#rhg-profile .rhg-text.rhg-chips--positive .rhg-chip{
  background: rgba(211,176,108,0.12);
  color: #3a2e14 !important;
  border: 1px solid rgba(211,176,108,0.35);
}

/* =========================================================
   RHG – TIMELINE (SP Page Builder Addon)
   V4: Ligne OR + badges OR + Etape OR + TITRE OR + DETAILS NOIR
   Scope: uniquement l’addon qui a la classe "rhg-timeline"
   ========================================================= */

:root{
  --rhg-gold:#d3b06c;
  --rhg-gold-soft:rgba(211,176,108,.35);
  --rhg-gold-line:rgba(211,176,108,.6);

  --rhg-ivory:#f9f8f6;
  --rhg-text:#111;     /* noir lisible */
  --rhg-muted:#111;    /* détails = noir aussi */

  --rhg-shadow: 0 18px 40px rgba(0,0,0,.35);
  --rhg-shadow-hover: 0 24px 55px rgba(0,0,0,.45);
}

/* Lissage luxe */
.rhg-timeline{
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* =========================================================
   1) CARTES (PANELS)
   ========================================================= */
.rhg-timeline .timeline-panel{
  background: var(--rhg-ivory) !important;
  color: var(--rhg-text) !important;

  padding: 28px 30px !important;
  border-radius: 14px !important;

  border: 1px solid var(--rhg-gold-soft) !important;
  box-shadow: var(--rhg-shadow) !important;

  position: relative !important;
}

/* Filet vertical OR dans la carte */
.rhg-timeline .timeline-panel::before{
  content:"";
  position:absolute;
  top: 18px;
  left: 0;
  width: 3px;
  height: calc(100% - 36px);
  background: linear-gradient(to bottom, transparent, var(--rhg-gold), transparent);
  border-radius: 2px;
  opacity: .95;
}

/* =========================================================
   2) TITRE (p.title) → OR + Playfair
   ========================================================= */
.rhg-timeline .timeline-panel .title{
  font-family: "Playfair Display", serif !important;
  font-weight: 600 !important;
  letter-spacing: .3px !important;
  color: var(--rhg-gold) !important;

  font-size: 18px !important;
  line-height: 1.25 !important;

  margin: 0 0 10px 0 !important;
}

/* =========================================================
   3) DETAILS (div.details + p) → NOIR
   ========================================================= */
.rhg-timeline .timeline-panel .details,
.rhg-timeline .timeline-panel .details p{
  color: #111 !important;
  font-size: 14.5px !important;
  line-height: 1.65 !important;
  margin: 0 !important;
}

/* Si tu as 2 paragraphes dans .details, on remet un petit espace */
.rhg-timeline .timeline-panel .details p + p{
  margin-top: 10px !important;
}

/* Hover desktop */
@media (hover:hover){
  .rhg-timeline .timeline-panel:hover{
    transform: translateY(-4px) !important;
    box-shadow: var(--rhg-shadow-hover) !important;
  }
}

/* Mobile cartes */
@media (max-width: 768px){
  .rhg-timeline .timeline-panel{
    padding: 22px 20px !important;
    border-radius: 12px !important;
  }
}

/* =========================================================
   4) LIGNE CENTRALE OR (SUPPRESSION BLEU)
   ========================================================= */
.rhg-timeline.sppb-addon-timeline .sppb-addon-timeline-wrapper::before{
  background: linear-gradient(
    to bottom,
    transparent 0%,
    var(--rhg-gold-line) 15%,
    var(--rhg-gold) 50%,
    var(--rhg-gold-line) 85%,
    transparent 100%
  ) !important;
  width: 2px !important;
  left: 50% !important;
  top: 0 !important;
  bottom: 0 !important;
}

/* =========================================================
   5) BADGE (POINT) – OR + suppression trait bleu
   ========================================================= */
.rhg-timeline.sppb-addon-timeline .timeline-badge{
  background: transparent !important;
}

.rhg-timeline.sppb-addon-timeline .timeline-badge::before{
  background: var(--rhg-ivory) !important;
  border: 3px solid var(--rhg-gold) !important;

  width: 18px !important;
  height: 18px !important;

  box-shadow:
    0 0 0 4px rgba(211,176,108,.18),
    0 6px 14px rgba(0,0,0,.25) !important;
}

/* Le petit trait bleu horizontal (SPP) */
.rhg-timeline.sppb-addon-timeline .timeline-badge::after{
  content: none !important;
  background: none !important;
}

/* =========================================================
   6) TEXTE "ETAPE X" → OR + Playfair
   ========================================================= */
.rhg-timeline.sppb-addon-timeline .timeline-date{
  font-family: "Playfair Display", serif !important;
  color: var(--rhg-gold) !important;
  font-weight: 600 !important;
  letter-spacing: .5px !important;
  text-transform: uppercase !important;
  background: transparent !important;
  text-shadow: none !important;
  font-size: 26px !important;
}

/* Nettoyage du bleu inline éventuel */
.rhg-timeline.sppb-addon-timeline .timeline-date *{
  color: inherit !important;
  background: transparent !important;
}

/* =========================================================
   7) MOBILE – ligne décalée
   ========================================================= */
@media (max-width: 767px){
  .rhg-timeline.sppb-addon-timeline .sppb-addon-timeline-wrapper::before{
    left: 24px !important;
  }
}










