/* annonce-sex-hainaut.be — registre « Néon rouge » : enseigne néon orange-feu sur nuit charbon,
   salle chaude couleur sable. Palette : accent #e0781f (favicon), boutons #a8500d (blanc lisible),
   neutre chaud sable #f6ead9 / ivoire #fffaf2, encre #1c1412. Formes : arche des photos, pilules,
   médaillon cœur néon, vague sous l'en-tête. */
html:not(#_) body.sa {
  --sa-accent: #a8500d; --sa-accent-txt: #fff;
  --sa-fond: #f6ead9; --sa-fond2: #efdcc3; --sa-surface: #fffaf2;
  --sa-texte: #1c1412; --sa-muet: #5e4a3d; --sa-bord: #e6cfb2;
  --sa-rayon: 18px; --sa-rayon-s: 999px;
  --sa-police: "Trebuchet MS", "Segoe UI", system-ui, sans-serif;
  --sa-police-titre: Georgia, "Times New Roman", serif;
  --sa-ombre: 0 2px 4px rgba(120,50,10,.08), 0 16px 34px -18px rgba(224,120,31,.55);
  --sa-neon: #ff9a3c;
  background: radial-gradient(1200px 500px at 50% -200px, #f2d3ae 0, transparent 70%), #f6ead9;
  background-image: none;
}
/* en-tête : enseigne de nuit */
html:not(#_) .sa-header.sa-header { background: #1c1412; position: relative; box-shadow: 0 8px 30px -10px rgba(224,120,31,.6); }
html:not(#_) .sa-header.sa-header::after { content: ""; position: absolute; left: 0; right: 0; bottom: -14px; height: 14px; pointer-events: none;
  background: radial-gradient(14px 14px at 14px 0, #1c1412 13px, transparent 14px) 0 0/28px 14px repeat-x; }
html:not(#_) .sa-header .sa-header__in { padding: .7rem var(--sa-gout) .8rem; align-items: center; }
html:not(#_) .sa-header .sa-logo { background: transparent; box-shadow: none; transform: none; color: #ffd9b0;
  font-family: var(--sa-police-titre); font-style: italic; letter-spacing: .02em; padding: .25rem .9rem;
  border: 2px solid var(--sa-neon); border-radius: 999px;
  text-shadow: 0 0 6px #ff9a3c, 0 0 16px rgba(255,120,30,.8);
  box-shadow: 0 0 10px rgba(255,140,50,.7), inset 0 0 10px rgba(255,140,50,.45); }
html:not(#_) .sa-header .sa-nav a, html:not(#_) .sa-header .sa-nav li a { color: #f6e3cf; font-family: var(--sa-police); }
html:not(#_) .sa-header .sa-nav li a:hover, html:not(#_) .sa-header .sa-nav li a.is-actif { color: #ffb36b; text-decoration: none; text-shadow: 0 0 8px rgba(255,140,50,.8); }
html:not(#_) .sa-header .sa-burger { color: #ffd9b0; }
html:not(#_) .sa-header .sa-btn--ghost { color: #ffd9b0; border-color: #ff9a3c; background: transparent; }
@media (max-width: 899px) { html:not(#_) .sa-header .sa-nav { background: #1c1412; } }
/* boutons : pilules à lueur */
html:not(#_) body.sa .sa-btn { font-family: var(--sa-police); font-weight: 700; border-radius: 999px; transform: none; }
html:not(#_) body.sa .sa-btn--accent { background: linear-gradient(180deg, #b8590f, #a14b0a); color: #fff; border-color: transparent;
  box-shadow: 0 6px 18px -6px rgba(224,120,31,.8); }
html:not(#_) body.sa .sa-btn--accent:hover { box-shadow: 0 0 0 3px #ffd9b0, 0 8px 24px -6px rgba(224,120,31,.95); }
/* titres */
html:not(#_) body.sa .sa-h1, html:not(#_) body.sa .sa-hero__h1 { font-family: var(--sa-police-titre); font-style: italic; color: #1c1412; }
html:not(#_) body.sa .sa-h1::after { content: ""; display: block; width: 70px; height: 4px; margin-top: .45rem; border-radius: 4px;
  background: #e0781f; box-shadow: 0 0 10px #ff9a3c; }
/* cartes : arche, droites, cœur néon */
html:not(#_) .sa-grille .sa-carte { transform: none; border-radius: 160px 160px 18px 18px; padding: 10px 10px 0; background: #fffaf2;
  box-shadow: var(--sa-ombre); transition: transform .25s, box-shadow .25s; }
html:not(#_) .sa-grille > .sa-carte:nth-child(n) { transform: none; }
html:not(#_) .sa-grille > .sa-carte:hover { transform: translateY(-4px); box-shadow: 0 0 0 2px #ffb36b, 0 18px 36px -16px rgba(224,120,31,.8); }
html:not(#_) .sa-carte .sa-carte__img { border-radius: 150px 150px 10px 10px; overflow: hidden; }
html:not(#_) .sa-carte .sa-carte__img img { transition: transform .4s; }
html:not(#_) .sa-carte:hover .sa-carte__img img { transform: scale(1.05); }
html:not(#_) .sa-carte .sa-carte__new { background: #1c1412; color: #ffd9b0; border-radius: 999px; box-shadow: 0 0 8px rgba(255,140,50,.7); }
html:not(#_) .sa-carte .sa-carte__titre { font-family: var(--sa-police); font-size: .98rem; color: #1c1412; }
html:not(#_) .sa-carte .sa-carte__ville, html:not(#_) .sa-carte .sa-carte__age { color: #5e4a3d; }
/* tags, colonne, pastilles */
html:not(#_) body.sa .sa-tags, html:not(#_) body.sa .sa-side, html:not(#_) body.sa .sa-similaires, html:not(#_) body.sa .sa-fiche,
html:not(#_) body.sa .sa-blog__item { background: #fffaf2; border-radius: 22px; transform: none; box-shadow: var(--sa-ombre); }
html:not(#_) body.sa .sa-tags__liste a { border-radius: 999px; transform: none; background: #f6e0c6; color: #4a2a12; font-family: var(--sa-police); }
html:not(#_) body.sa .sa-tags__liste li:nth-child(n) a { transform: none; }
html:not(#_) body.sa .sa-pastille { border-radius: 999px; font-family: var(--sa-police); background: #fffaf2; }
html:not(#_) body.sa .sa-tags--grille { transform: none; }
/* fiche : photo en arche */
html:not(#_) .sa-fiche .sa-fiche__photo, html:not(#_) .sa-fiche .sa-fiche__media img { border-radius: 140px 140px 16px 16px; }
html:not(#_) .sa-fiche .sa-fiche__titre { font-family: var(--sa-police-titre); font-style: italic; color: #1c1412; }
/* CTA + inscription : médaillon centré */
html:not(#_) body.sa .sa-cta { background: #1c1412; color: #f6e3cf; border-radius: 26px; text-align: center; padding: 1.4rem;
  box-shadow: 0 0 0 2px #e0781f, 0 0 26px rgba(255,140,50,.45); }
html:not(#_) body.sa .sa-cta .sa-cta__q, html:not(#_) body.sa .sa-cta .sa-cta__aide { color: #ffe3c6; }
html:not(#_) body.sa .sa-inscrire .sa-inscrire__in { background: #fffaf2; border-radius: 28px; box-shadow: var(--sa-ombre);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23e0781f' fill-opacity='.18' d='M12 21s-7-4.5-9.5-9A5.5 5.5 0 0 1 12 6a5.5 5.5 0 0 1 9.5 6c-2.5 4.5-9.5 9-9.5 9z'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 18px top 14px; background-size: 64px; }
html:not(#_) body.sa .sa-hero .sa-hero__txt { background: #fffaf2; border-radius: 26px; transform: none; }
/* pied : nuit */
html:not(#_) body.sa .sa-footer { background: #1c1412; color: #e9d6c2; --sa-pied-txt: #e9d6c2; border-radius: 40px 40px 0 0; }
html:not(#_) body.sa .sa-footer a { color: #ffc58f; }
html:not(#_) body.sa .sa-footer .sa-footer__disclaimer, html:not(#_) body.sa .sa-footer .sa-footer__copy { color: #cdb7a2; }
@media (max-width: 640px) { html:not(#_) .sa-grille .sa-carte { border-radius: 90px 90px 14px 14px; } html:not(#_) .sa-carte .sa-carte__img { border-radius: 82px 82px 8px 8px; } }
@media (prefers-reduced-motion: reduce) { html:not(#_) body.sa * { transition: none !important; } }
/* plan du site : carte ivoire en arche sur la nuit */
html:not(#_) body.sa .sa-liens .sa-liens__grid { background: #fffaf2; border-radius: 30px; transform: none; box-shadow: 0 0 0 2px #e0781f, 0 0 30px rgba(255,140,50,.35); }
html:not(#_) body.sa .sa-liens a { color: #7a3a08; }
html:not(#_) body.sa .sa-liens .sa-liens__marque, html:not(#_) body.sa .sa-liens .sa-liens__h { color: #1c1412; }
html:not(#_) body.sa .sa-liens p { color: #5e4a3d; }
html:not(#_) body.sa .sa-liens .sa-btn--ghost { color: #1c1412; border-color: #e6cfb2; }
html:not(#_) body.sa .sa-footer .sa-footer__tail { color: #cdb7a2; }
html:not(#_) body.sa .sa-footer .sa-footer__legal a, html:not(#_) body.sa .sa-footer .sa-footer__haut a { color: #ffc58f; }
html:not(#_) body.sa .sa-fiche .sa-fiche__photo { transform: none; background: #fffaf2; }
html:not(#_) body.sa .sa-cta { transform: none; }
html:not(#_) body.sa .sa-inscrire .sa-inscrire__in { transform: none; }
html:not(#_) .sa-carte .sa-carte__new { top: auto; bottom: .5rem; left: 50%; transform: translateX(-50%); }
