/* echangiste-hainaut.be — registre « bleu terril & ocre, vagues »
   Palette : accent bleu terril #1f4e79 (favicon) · nuit #13304b · ocre #c98a2b (touches) · sable chaud #f5ecdd / lin #fbf6ee · encre #1b2733
   Formes signature : vagues (bas d'en-tête, haut du pied, soulignés de titres), arches (vignettes, photo de fiche, têtes de colonne),
   médaillons (logo, étapes, numéros du dépôt), pilules (menu, boutons, liens). Silhouette de terril dans le bandeau d'accueil. */

html:not(#_) body.aa {
  --aa-accent: #1f4e79; --aa-teinte: #1f4e79;
  --aa-primaire: #1f4e79; --aa-primaire-fonce: #13304b; --aa-primaire-txt: #fff;
  --eh-ocre: #c98a2b; --eh-ocre-clair: #f1d9ac; --eh-nuit: #13304b; --eh-sable: #f5ecdd; --eh-lin: #fbf6ee;
  --aa-page: #efe5d3; --aa-fond: #fffdf8; --aa-surface: #fffdf8; --aa-surface-2: #f7efe2;
  --aa-texte: #1b2733; --aa-muet: #5b5347; --aa-bord: #e3d5bd; --aa-lien: #1f4e79;
  --aa-tete: #13304b; --aa-tete-txt: #fff; --aa-barre: #1b4166;
  --aa-bande: #1f4e79; --aa-bande-txt: #fff; --aa-bande-bord: #c98a2b;
  --aa-secondaire: #1f4e79; --aa-secondaire-txt: #fff;
  --aa-pied: #13304b; --aa-pied-txt: #e6dccb; --aa-ok: #2f6b3a;
  --aa-rayon: 16px; --aa-rayon-s: 10px;
  --aa-ombre: 0 2px 4px rgba(31, 78, 121, .06), 0 18px 40px -24px rgba(31, 78, 121, .45);
  --aa-police: "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;
  --aa-police-titre: Georgia, "Iowan Old Style", "Times New Roman", serif;
  background: radial-gradient(1200px 500px at 90% -10%, rgba(201, 138, 43, .14), transparent 60%) no-repeat, #efe5d3;
}

/* ---------- en-tête : nuit bleue, bas en vague sable ---------- */
html:not(#_) .aa-header { background: linear-gradient(160deg, #1f4e79 0%, #13304b 70%); box-shadow: none; padding-bottom: 22px; }
html:not(#_) .aa-header::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 24px; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 24' preserveAspectRatio='none'%3E%3Cpath d='M0 14 C150 0 300 28 450 14 S750 0 900 14 S1100 26 1200 12 V24 H0Z' fill='%23efe5d3'/%3E%3Cpath d='M0 16 C150 2 300 30 450 16 S750 2 900 16 S1100 28 1200 14' fill='none' stroke='%23c98a2b' stroke-width='2'/%3E%3C/svg%3E") center bottom / 100% 100% no-repeat; }
html:not(#_) .aa-logo__mark { width: 38px; height: 38px; border-radius: 50%; background: radial-gradient(circle at 35% 35%, #3a6f9f, #1f4e79 60%); box-shadow: 0 0 0 3px var(--eh-ocre), 0 0 0 6px rgba(201, 138, 43, .25); }
html:not(#_) .aa-logo__txt { font-family: var(--aa-police-titre); font-style: italic; font-weight: 700; font-size: 1.5rem; letter-spacing: 0; }
html:not(#_) .aa-logo__sous { color: var(--eh-ocre-clair); opacity: 1; }
html:not(#_) .aa-header__cta.aa-btn { background: var(--eh-ocre); color: #1b1408; border-color: transparent; border-radius: 999px; box-shadow: 0 8px 18px -10px rgba(201, 138, 43, .9); }
html:not(#_) .aa-nav { background: transparent; }
html:not(#_) .aa-nav ul { gap: .3rem; padding-block: .5rem .2rem; }
html:not(#_) .aa-nav a { border-radius: 999px; border-bottom: 0; padding: .5rem 1rem; color: #eef3f8; }
html:not(#_) .aa-nav a:hover { background: rgba(255, 255, 255, .12); }
html:not(#_) .aa-nav a.is-actif { background: var(--eh-lin); color: var(--eh-nuit); box-shadow: inset 0 -3px 0 var(--eh-ocre); }
html:not(#_) .aa-burger { border-radius: 50%; border-color: rgba(241, 217, 172, .5); color: #fff; }
@media (max-width: 859px) {
  html:not(#_) .aa-nav { background: #0f2a43; border-radius: 18px; }
  html:not(#_) .aa-nav a.is-actif { border-left: 0; }
  html:not(#_) .aa-nav__cta a { background: var(--eh-ocre); color: #1b1408; }
}

/* ---------- conteneur ---------- */
html:not(#_) .aa-main > .aa-wrap { background: var(--aa-fond); border-color: var(--aa-bord); border-radius: 22px; box-shadow: var(--aa-ombre); }

/* ---------- titres de section : texte bleu serif, soulignement en vague ocre ---------- */
html:not(#_) .aa-h2, html:not(#_) .aa-bande {
  color: var(--eh-nuit); border-left: 0; border-radius: 0; padding: .2rem 0 .75rem; font-family: var(--aa-police-titre);
  text-transform: none; letter-spacing: 0; font-size: 1.18rem; font-weight: 700;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 8'%3E%3Cpath d='M0 4 Q7.5 0 15 4 T30 4 T45 4 T60 4' fill='none' stroke='%23c98a2b' stroke-width='2'/%3E%3C/svg%3E") left bottom / 60px 8px repeat-x; }
html:not(#_) .aa-h2 .aa-ico, html:not(#_) .aa-bande .aa-ico { color: var(--eh-ocre); opacity: 1; }
html:not(#_) .aa-bande__droite { color: var(--aa-muet); opacity: 1; }
html:not(#_) .aa-bloc__tete .aa-lien { color: var(--aa-primaire); }

/* ---------- bandeau d'accueil : sable, terril en silhouette ---------- */
html:not(#_) .aa-hero { position: relative; overflow: hidden; border: 0; border-radius: 24px 24px 24px 90px; padding: 1.5rem 1.5rem 1.7rem;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 120'%3E%3Cpath d='M0 120 L110 40 Q130 26 150 40 L260 120Z' fill='%231f4e79' opacity='.10'/%3E%3Cpath d='M120 120 L210 58 Q226 47 242 58 L320 120Z' fill='%23c98a2b' opacity='.18'/%3E%3C/svg%3E") right bottom / 300px auto no-repeat, linear-gradient(150deg, #fbf6ee, #f5ecdd); box-shadow: inset 0 0 0 1px var(--aa-bord); }
html:not(#_) .aa-hero .aa-h1 { font-family: var(--aa-police-titre); color: var(--eh-nuit); font-weight: 700; }
html:not(#_) .aa-hero .aa-intro { color: #3f3a33; }
html:not(#_) .aa-hero__chiffres span { background: #fff; color: var(--eh-nuit); border-color: var(--eh-ocre-clair); }
html:not(#_) .aa-hero__chiffres span::before { background: var(--eh-ocre); }

/* ---------- colonne latérale : cartes à tête en arche ---------- */
html:not(#_) .aa-side { background: var(--eh-lin); border-color: var(--aa-bord); border-radius: 18px; box-shadow: 0 12px 26px -22px rgba(31, 78, 121, .6); }
html:not(#_) .aa-side__h { background: linear-gradient(160deg, #1f4e79, #13304b); color: #fff; text-transform: none; letter-spacing: 0; font-family: var(--aa-police-titre); font-size: 1rem;
  border-radius: 60px 60px 0 0; justify-content: center; text-align: center; border-bottom: 3px solid var(--eh-ocre); padding: .7rem 1rem; }
html:not(#_) .aa-side--deposer { background: none; box-shadow: none; }
html:not(#_) .aa-side__liste li::before { background: var(--eh-ocre); }
html:not(#_) .aa-side__nb { background: #fff; border-color: var(--eh-ocre-clair); color: #5b4318; }
html:not(#_) .aa-side__liste--inline li { background: #fff; }

/* ---------- boutons ---------- */
html:not(#_) .aa-btn { border-radius: 999px; }
html:not(#_) .aa-btn--primaire { background: linear-gradient(180deg, #25598a, #1f4e79); color: #fff; border-color: #13304b; box-shadow: 0 10px 22px -12px rgba(31, 78, 121, .8), inset 0 -2px 0 rgba(0, 0, 0, .15); }
html:not(#_) .aa-btn--secondaire { background: #fff; color: var(--eh-nuit); border-color: #1f4e79; }

/* ---------- filtres et champs ---------- */
html:not(#_) .aa-filtres { background: var(--eh-lin); border-color: var(--aa-bord); border-radius: 18px; }
html:not(#_) .aa-filtres__champ { color: #5b4318; }
html:not(#_) select, html:not(#_) input[type="text"], html:not(#_) input[type="email"], html:not(#_) input[type="tel"], html:not(#_) input[type="number"], html:not(#_) textarea { border-radius: 12px; border-color: #d9c7a8; background-color: #fff; }

/* ---------- liste d'annonces : cartes, vignettes en arche ---------- */
html:not(#_) .aa-liste { border-top: 0; gap: .7rem; }
html:not(#_) .aa-ligne { background: #fff; border: 1px solid var(--aa-bord); border-radius: 18px; padding: .8rem .9rem; box-shadow: 0 10px 22px -20px rgba(31, 78, 121, .55); transition: transform .2s ease, box-shadow .2s ease; }
html:not(#_) .aa-ligne:hover { background: #fff; transform: translateY(-2px); box-shadow: 0 16px 30px -18px rgba(31, 78, 121, .55); }
html:not(#_) .aa-ligne__img { border-radius: 60px 60px 12px 12px; border: 2px solid var(--eh-ocre-clair); padding: 0; background: var(--eh-sable); }
html:not(#_) .aa-ligne__img img { border-radius: 58px 58px 10px 10px; }
html:not(#_) .aa-ligne:hover .aa-ligne__img img { transform: scale(1.06); }
html:not(#_) .aa-ligne__nb { left: 50%; transform: translateX(-50%); background: rgba(19, 48, 75, .85); }
html:not(#_) .aa-ligne__cat { color: #8a5a12; }
html:not(#_) .aa-ligne__new, html:not(#_) .aa-fiche__new { background: #e6f0e4; color: #24552d; border-radius: 999px; }
html:not(#_) .aa-ligne__titre a { color: var(--aa-primaire); font-family: var(--aa-police-titre); }
html:not(#_) .aa-ligne__lire { background: var(--eh-lin); color: var(--eh-nuit); border-color: var(--eh-ocre-clair); box-shadow: none; }

/* ---------- blocs de liens (catégories, villes) : pilules ---------- */
html:not(#_) .aa-liens li { background: var(--eh-lin); border-color: var(--aa-bord); border-radius: 999px; padding-left: 1.2rem; }
html:not(#_) .aa-liens li::before { width: 7px; height: 7px; top: 50%; left: .5rem; bottom: auto; transform: translateY(-50%); border-radius: 50%; background: var(--eh-ocre); }
html:not(#_) .aa-deposer-cta { background: linear-gradient(150deg, #fbf6ee, #f5ecdd); border: 0; border-radius: 22px; box-shadow: inset 0 0 0 1px var(--aa-bord), 0 16px 30px -24px rgba(31, 78, 121, .6);
  max-width: 640px; margin-inline: auto; padding: 1.3rem 1.4rem; }
html:not(#_) .aa-etapes li { background: var(--eh-lin); border-color: var(--aa-bord); border-radius: 18px; }
html:not(#_) .aa-etapes li::before { background: #1f4e79; box-shadow: 0 0 0 3px var(--eh-ocre-clair); }
html:not(#_) .aa-atouts li { border-left-color: var(--eh-ocre); border-radius: 16px; }
html:not(#_) .aa-pagination a, html:not(#_) .aa-pagination span { border-radius: 999px; background: var(--eh-lin); }
html:not(#_) .aa-pagination .is-actif { background: #1f4e79; color: #fff; }

/* ---------- fiche d'annonce ---------- */
html:not(#_) .aa-fiche__titre { font-family: var(--aa-police-titre); color: var(--eh-nuit); font-weight: 700; border-bottom: 0; padding-bottom: .75rem;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 8'%3E%3Cpath d='M0 4 Q7.5 0 15 4 T30 4 T45 4 T60 4' fill='none' stroke='%23c98a2b' stroke-width='2.4'/%3E%3C/svg%3E") left bottom / 60px 8px repeat-x; }
html:not(#_) .aa-fiche__cat a { color: #8a5a12; }
html:not(#_) .aa-fiche__photo { border-radius: 150px 150px 18px 18px; border: 3px solid var(--eh-ocre-clair); box-shadow: 0 18px 36px -22px rgba(19, 48, 75, .7); background: var(--eh-sable); }
html:not(#_) .aa-fiche__miniatures img { border-radius: 40px 40px 8px 8px; }
html:not(#_) .aa-fiche__infos { border-color: var(--aa-bord); border-radius: 16px; background: #fff; }
html:not(#_) .aa-fiche__infos > div:nth-child(odd) { background: var(--eh-lin); }
html:not(#_) .aa-fiche__infos dt { color: #5b4318; }
html:not(#_) .aa-fiche__cta--haut { background: #fff; border: 1px solid var(--eh-ocre-clair); border-radius: 22px; padding: 1rem; box-shadow: 0 18px 34px -24px rgba(31, 78, 121, .7); }
html:not(#_) .aa-fiche__cta--bas { background: linear-gradient(150deg, #fbf6ee, #f5ecdd); border: 0; border-radius: 24px; max-width: 560px; margin-inline: auto; padding: 1.4rem; box-shadow: inset 0 0 0 1px var(--aa-bord); }
html:not(#_) .aa-fiche__plage { background: var(--eh-sable); color: var(--eh-nuit); border-radius: 999px; }
html:not(#_) .aa-fiche__phy { background: var(--eh-lin); border-radius: 14px; }
html:not(#_) .aa-fiche__physique dt { color: #5b4318; }
html:not(#_) .aa-chips li, html:not(#_) .aa-chip { background: #fff; border-color: var(--eh-ocre-clair); }
html:not(#_) .aa-chips--lecture li { background: var(--eh-sable); color: var(--eh-nuit); }
html:not(#_) .aa-repondre { background: var(--eh-lin); border-color: var(--aa-bord); border-radius: 22px; }
html:not(#_) .aa-fiche__barre, html:not(#_) .aa-mobar { background: rgba(251, 246, 238, .95); border-top: 2px solid var(--eh-ocre-clair); }

/* ---------- dépôt : cartes, légende en cartouche, numéro en médaillon ocre ---------- */
html:not(#_) .aa-depot__bloc { background: #fff; border-color: var(--aa-bord); border-radius: 20px; box-shadow: 0 12px 26px -24px rgba(31, 78, 121, .6); }
html:not(#_) .aa-depot__bloc legend { background: linear-gradient(160deg, #1f4e79, #13304b); color: #fff; border-left: 0; border-radius: 999px; text-transform: none; letter-spacing: 0; font-family: var(--aa-police-titre); font-size: 1rem; padding: .45rem 1rem .45rem .5rem; }
html:not(#_) .aa-depot__bloc legend::before { background: var(--eh-ocre); color: #1b1408; font-weight: 800; }
html:not(#_) .aa-form__lbl { color: var(--eh-nuit); }

/* ---------- pied : nuit bleue, haut en vague ---------- */
html:not(#_) .aa-footer { position: relative; margin-top: 2.2rem; border-top: 0; background: linear-gradient(170deg, #1b4166, #13304b 60%); color: var(--aa-pied-txt); }
html:not(#_) .aa-footer::before { content: ""; position: absolute; left: 0; right: 0; top: -23px; height: 24px; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 24' preserveAspectRatio='none'%3E%3Cpath d='M0 12 C200 26 350 0 600 12 S1000 26 1200 10 V24 H0Z' fill='%231b4166'/%3E%3C/svg%3E") center / 100% 100% no-repeat; }
html:not(#_) .aa-footer__h { color: var(--eh-ocre-clair); border-bottom: 0; padding-bottom: .6rem;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 8'%3E%3Cpath d='M0 4 Q7.5 0 15 4 T30 4' fill='none' stroke='%23c98a2b' stroke-width='2'/%3E%3C/svg%3E") left bottom / 60px 8px no-repeat; }
html:not(#_) .aa-footer__brand { font-style: italic; }
html:not(#_) .aa-footer a:hover { color: var(--eh-ocre-clair); }
html:not(#_) .aa-footer__bas { background: rgba(0, 0, 0, .22); }

/* ---------- porte et pop-up ---------- */
html:not(#_) .aa-gate__box, html:not(#_) .aa-popup__box { border-radius: 24px; border-top: 0; box-shadow: 0 0 0 4px var(--eh-ocre-clair), 0 30px 60px -20px rgba(0, 0, 0, .6); background: var(--eh-lin); }
html:not(#_) .aa-gate__mark { background: #1f4e79; box-shadow: 0 0 0 4px var(--eh-ocre); }

@media (prefers-reduced-motion: reduce) {
  html:not(#_) .aa-ligne, html:not(#_) .aa-ligne__img img { transition: none; }
  html:not(#_) .aa-ligne:hover { transform: none; }
}
