/* echangiste-luxembourg.be — registre « forêt d'Ardenne & ambre »
   Palette : mousse #4b6043 (favicon, accent) · sous-bois #1d2819 (encre des bandeaux)
   · lin chaud #f6efe2 (neutre) · ambre #c98a2b (lumière, décor) / #8a5a12 (texte ambre)
   Formes : feuille (coins alternés), arche (photos, fiche, pop-up), pilules (nav, badges,
   boutons), vague de lisière (hero/pied), feuille de chêne en filigrane. */

html:not(#_) body.aa {
  color-scheme: light;
  --aa-ambre: #c98a2b; --aa-ambre-txt: #8a5a12; --aa-sousbois: #1d2819;
  --aa-fond: #f6efe2; --aa-surface: #fffaf1; --aa-texte: #23271f; --aa-muet: #5c584c;
  --aa-bord: #e3d6bd; --aa-secondaire: #34462e; --aa-secondaire-txt: #fff;
  --aa-primaire: #4b6043; --aa-primaire-txt: #fff;
  --aa-rayon: 18px; --aa-rayon-s: 999px;
  --aa-ombre: 0 2px 4px rgba(60, 50, 20, .05), 0 14px 30px -18px rgba(75, 96, 67, .45);
  --aa-police: "Segoe UI", "Helvetica Neue", Roboto, Arial, sans-serif;
  --aa-police-titre: Georgia, "Palatino Linotype", "Book Antiqua", serif;
  --aa-tete: var(--aa-sousbois); --aa-tete-txt: #f3ead8;
  --aa-pied: #172014; --aa-pied-txt: #e6dcc6; --aa-erreur: #a2231b;
  background: var(--aa-fond) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220'%3E%3Cpath d='M110 40c10 10 4 20 16 24s18-8 22 4-10 14-2 22 22 0 18 14-18 8-14 20 18 10 6 20-20-6-26 6 2 22-12 20-10-18-22-12-8 22-20 14 4-20-8-26-22 6-22-8 18-12 10-22-24 0-16-14 22-2 22-16-16-16-4-22 20 10 24-2-4-20 10-20z' fill='none' stroke='%234b6043' stroke-opacity='.045' stroke-width='2'/%3E%3C/svg%3E") 0 0 / 220px repeat;
  color: var(--aa-texte);
}

/* ---------- En-tête : bandeau de sous-bois, liseré d'ambre ---------- */
html:not(#_) .aa .aa-header { background: linear-gradient(180deg, #243220, var(--aa-sousbois)); border-top: 0; box-shadow: 0 3px 0 var(--aa-ambre), 0 12px 24px -16px rgba(0,0,0,.6); }
html:not(#_) .aa .aa-logo { color: #f3ead8; font-family: var(--aa-police-titre); text-transform: none; letter-spacing: .01em; font-size: 1.2rem; font-weight: 700; font-style: italic; }
html:not(#_) .aa .aa-logo__mark { width: 18px; height: 18px; border-radius: 18px 2px 18px 2px; background: var(--aa-ambre); box-shadow: 0 0 0 3px rgba(201,138,43,.25); transform: rotate(-12deg); }
html:not(#_) .aa .aa-nav a { color: #f3ead8; text-transform: none; font-size: .92rem; letter-spacing: .01em; border-radius: 999px; }
html:not(#_) .aa .aa-nav a:hover, html:not(#_) .aa .aa-nav a.is-actif { background: rgba(243,234,216,.12); color: #fff; }
html:not(#_) .aa .aa-nav__cta a { background: var(--aa-ambre); color: #1d1606 !important; font-weight: 700; box-shadow: 0 6px 16px -8px rgba(201,138,43,.8); }
html:not(#_) .aa .aa-nav__cta a:hover { background: #d99a3a; }
html:not(#_) .aa .aa-burger span { background: #f3ead8; }
@media (max-width: 719px) {
  html:not(#_) .aa .aa-nav { background: var(--aa-sousbois); border-bottom: 3px solid var(--aa-ambre); }
}

/* ---------- Hero : clairière, vague de lisière ---------- */
html:not(#_) .aa .aa-hero {
  position: relative; border-bottom: 0; padding-bottom: 3.2rem;
  background:
    radial-gradient(55% 90% at 12% 0%, rgba(201,138,43,.22), transparent 62%),
    radial-gradient(50% 80% at 95% 20%, rgba(75,96,67,.20), transparent 65%),
    linear-gradient(180deg, #efe4cf, var(--aa-fond));
}
html:not(#_) .aa .aa-hero::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 34px; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 34' preserveAspectRatio='none'%3E%3Cpath d='M0 20c120-18 240-18 360 0s240 18 360 0 240-18 360 0 80 8 120 6v8H0z' fill='%23f6efe2'/%3E%3Cpath d='M0 20c120-18 240-18 360 0s240 18 360 0 240-18 360 0 80 8 120 6' fill='none' stroke='%23c98a2b' stroke-width='2' stroke-opacity='.55'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
}
html:not(#_) .aa .aa-h1 { font-family: var(--aa-police-titre); font-weight: 700; letter-spacing: -.015em; color: #1f2a1b; }
html:not(#_) .aa .aa-hero__txt p, html:not(#_) .aa .aa-intro { color: #4d4a40; }
html:not(#_) .aa .aa-hero__chiffres { color: var(--aa-ambre-txt); font-weight: 700; }
html:not(#_) .aa .aa-hero__form {
  background: var(--aa-surface); border: 1px solid var(--aa-bord);
  border-top: 5px solid var(--aa-ambre); border-radius: 120px 120px 18px 18px; padding: 2.2rem 1.5rem 1.4rem;
  box-shadow: 0 24px 50px -28px rgba(75,96,67,.6);
}
html:not(#_) .aa .aa-hero__form-h, html:not(#_) .aa .aa-hero__form-p { text-align: center; }
html:not(#_) .aa .aa-hero__form-h { font-family: var(--aa-police-titre); color: var(--aa-secondaire); }

/* ---------- Boutons : pilules ---------- */
html:not(#_) .aa .aa-btn { border-radius: 999px; }
html:not(#_) .aa .aa-btn--primaire { background: linear-gradient(180deg, #56704d, #445a3c); color: #fff; box-shadow: 0 8px 18px -10px rgba(75,96,67,.9); }
html:not(#_) .aa .aa-btn--secondaire { background: var(--aa-surface); color: var(--aa-secondaire); border-color: var(--aa-secondaire); }
html:not(#_) .aa .aa-btn--secondaire:hover { background: #f1e8d4; }

/* ---------- Chips / filtres / champs ---------- */
html:not(#_) .aa .aa-chip, html:not(#_) .aa .aa-chips li { background: var(--aa-surface); border-color: var(--aa-bord); color: var(--aa-texte); }
html:not(#_) .aa .aa-chip:has(input:checked) { background: #e8eddf; border-color: var(--aa-primaire); }
html:not(#_) .aa .aa-filtres, html:not(#_) .aa .aa-bloc--moteur { background: var(--aa-surface); border: 1px solid var(--aa-bord); border-radius: 26px 6px 26px 6px; box-shadow: var(--aa-ombre); }
html:not(#_) .aa select, html:not(#_) .aa input[type="text"], html:not(#_) .aa input[type="email"], html:not(#_) .aa input[type="tel"], html:not(#_) .aa input[type="number"], html:not(#_) .aa textarea {
  background: #fffdf8; color: var(--aa-texte); border: 1px solid #d8c9ac; border-radius: 12px;
}
html:not(#_) .aa input::placeholder, html:not(#_) .aa textarea::placeholder { color: #767061; }

/* ---------- Titres de bloc : feuille d'ambre ---------- */
html:not(#_) .aa .aa-h2 { position: relative; font-family: var(--aa-police-titre); padding-left: 1.6rem; color: #1f2a1b; }
html:not(#_) .aa .aa-h2::before { content: ""; position: absolute; left: 0; top: .28em; width: 16px; height: 16px; border-radius: 16px 2px 16px 2px; background: var(--aa-ambre); transform: rotate(-12deg); }

/* ---------- Lignes d'annonce : feuilles posées sur le lin ---------- */
html:not(#_) .aa .aa-liste { gap: .8rem; }
html:not(#_) .aa .aa-ligne {
  background: var(--aa-surface); border: 1px solid var(--aa-bord);
  border-radius: 28px 6px 28px 6px; box-shadow: var(--aa-ombre); padding: .85rem;
}
html:not(#_) .aa .aa-ligne:hover { background: #fffcf6; border-color: #c9b58f; box-shadow: 0 18px 34px -18px rgba(75,96,67,.55); }
html:not(#_) .aa .aa-ligne__img { border-radius: 60px 60px 10px 10px; background: #e7dcc5; box-shadow: 0 0 0 3px #fffaf1, 0 0 0 4px #d9c7a3; }
html:not(#_) .aa .aa-ligne__img img { transition: transform .4s ease; }
html:not(#_) .aa .aa-ligne:hover .aa-ligne__img img { transform: scale(1.05); }
html:not(#_) .aa .aa-ligne--sans-photo .aa-ligne__img { background: #e8eddf; }
html:not(#_) .aa .aa-ligne__nb { background: rgba(29,40,25,.85); color: #f3ead8; border-radius: 999px; }
html:not(#_) .aa .aa-ligne__cat, html:not(#_) .aa .aa-fiche__cat a { color: var(--aa-primaire); }
html:not(#_) .aa .aa-ligne__new, html:not(#_) .aa .aa-fiche__new { background: var(--aa-ambre); color: #1d1606; }
html:not(#_) .aa .aa-fiche__new { top: auto; right: auto; bottom: .7rem; left: 50%; transform: translateX(-50%); white-space: nowrap; box-shadow: 0 4px 12px -4px rgba(0,0,0,.4); }
html:not(#_) .aa .aa-ligne__titre, html:not(#_) .aa .aa-ligne__titre a { color: #1f2a1b; font-family: var(--aa-police-titre); }
html:not(#_) .aa .aa-ligne__titre a:hover { color: var(--aa-primaire); }
html:not(#_) .aa .aa-ligne__meta, html:not(#_) .aa .aa-ligne__date { color: var(--aa-muet); }
html:not(#_) .aa .aa-ligne__extrait { color: #3a3a31; opacity: 1; }

/* ---------- Colonnes latérales et listes de liens ---------- */
html:not(#_) .aa .aa-side { background: var(--aa-surface); border: 1px solid var(--aa-bord); border-radius: 22px 6px 22px 6px; box-shadow: var(--aa-ombre); }
html:not(#_) .aa .aa-side__h { color: var(--aa-ambre-txt); letter-spacing: .08em; font-size: .78rem; }
html:not(#_) .aa .aa-side__liste a { color: var(--aa-texte); }
html:not(#_) .aa .aa-side__liste a:hover, html:not(#_) .aa .aa-side__liste .is-actif { color: var(--aa-primaire); }
html:not(#_) .aa .aa-liens li { background: var(--aa-surface); border: 1px solid var(--aa-bord); border-radius: 999px; padding-inline: .9rem; }
html:not(#_) .aa .aa-liens li a { color: var(--aa-texte); }
html:not(#_) .aa .aa-liens li:hover { border-color: var(--aa-primaire); background: #f2f4ea; }
html:not(#_) .aa .aa-pagination a, html:not(#_) .aa .aa-pagination span { border-radius: 999px; background: var(--aa-surface); color: var(--aa-texte); }
html:not(#_) .aa .aa-pagination .is-actif { background: var(--aa-primaire); color: #fff; }
html:not(#_) .aa .aa-crumbs ol { color: var(--aa-muet); }
html:not(#_) .aa .aa-vide { background: var(--aa-surface); color: var(--aa-muet); }

/* ---------- Fiche d'annonce : arche, carte de rencontre ---------- */
html:not(#_) .aa .aa-fiche__titre { font-family: var(--aa-police-titre); color: #1f2a1b; }
html:not(#_) .aa .aa-fiche__sous, html:not(#_) .aa .aa-fiche__meta { color: var(--aa-muet); }
html:not(#_) .aa .aa-fiche__photo { border-radius: 200px 200px 18px 18px; background: #e7dcc5; box-shadow: 0 0 0 5px #fffaf1, 0 0 0 6px #d9c7a3, 0 22px 40px -22px rgba(75,96,67,.7); }
html:not(#_) .aa .aa-fiche__miniatures img { border-radius: 30px 30px 8px 8px; }
html:not(#_) .aa .aa-fiche__miniatures img:hover { border-color: var(--aa-ambre); }
html:not(#_) .aa .aa-fiche__cta--haut {
  background: linear-gradient(180deg, #fffaf1, #f6ecd8); border: 1px solid #dcc79f;
  border-top: 4px solid var(--aa-ambre); border-radius: 22px; box-shadow: 0 18px 36px -22px rgba(75,96,67,.6); padding: 1rem;
}
html:not(#_) .aa .aa-fiche__infos, html:not(#_) .aa .aa-fiche__phy { background: var(--aa-surface); border-color: var(--aa-bord); color: var(--aa-texte); }
html:not(#_) .aa .aa-fiche__infos { border-radius: 22px 6px 22px 6px; }
html:not(#_) .aa .aa-fiche__phy { border-radius: 16px 4px 16px 4px; }
html:not(#_) .aa .aa-fiche__infos dt, html:not(#_) .aa .aa-fiche__physique dt { color: var(--aa-muet); }
html:not(#_) .aa .aa-fiche__plage { background: #f3e3c2; color: #4e3408; border-radius: 999px; }
html:not(#_) .aa .aa-fiche__texte { color: #2c2e26; line-height: 1.7; }
html:not(#_) .aa .aa-fiche__barre { background: rgba(255,250,241,.95); border-top: 2px solid var(--aa-ambre); }
html:not(#_) .aa .aa-repondre { background: var(--aa-surface); border: 1px solid var(--aa-bord); border-radius: 26px 6px 26px 6px; box-shadow: var(--aa-ombre); }
html:not(#_) .aa .aa-repondre__intro, html:not(#_) .aa .aa-fiche__signaler, html:not(#_) .aa .aa-retour { color: var(--aa-muet); }
html:not(#_) .aa .aa-form__lbl { color: var(--aa-texte); }
html:not(#_) .aa .aa-form__aide { color: var(--aa-muet); }

/* ---------- Dépôt : fieldsets en feuilles, légende pilule ambre ---------- */
html:not(#_) .aa .aa-depot__bloc { background: var(--aa-surface); border: 1px solid var(--aa-bord); border-radius: 8px 26px 8px 26px; box-shadow: var(--aa-ombre); }
html:not(#_) .aa .aa-depot__bloc legend { background: #f3e3c2; color: #4e3408; border-radius: 999px; padding: .2rem .9rem; font-size: .95rem; }
html:not(#_) .aa .aa-regles { color: var(--aa-muet); }

/* ---------- Pied : sous-bois, vague de lisière ---------- */
html:not(#_) .aa .aa-footer { position: relative; background: var(--aa-pied); color: var(--aa-pied-txt); border-top: 0; margin-top: 3.5rem; padding-top: 3rem; }
html:not(#_) .aa .aa-footer::before {
  content: ""; position: absolute; left: 0; right: 0; top: -30px; height: 31px; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 31' preserveAspectRatio='none'%3E%3Cpath d='M0 14c100 14 200 14 300 0s200-14 300 0 200 14 300 0 200-14 300 0v17H0z' fill='%23172014'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
}
html:not(#_) .aa .aa-footer__h, html:not(#_) .aa .aa-footer__brand { color: #f0c177; text-transform: none; letter-spacing: .02em; font-family: var(--aa-police-titre); font-size: 1rem; }
html:not(#_) .aa .aa-footer a { color: #e6dcc6; }
html:not(#_) .aa .aa-footer a:hover { color: #f0c177; }
html:not(#_) .aa .aa-footer__bas { border-top-color: rgba(230,220,198,.18); color: #cfc5ad; }
html:not(#_) .aa .aa-footer__fictif, html:not(#_) .aa .aa-footer__membres { color: #cfc5ad; }

/* ---------- Porte d'âge et pop-up : arche claire ---------- */
html:not(#_) .aa .aa-gate, html:not(#_) .aa .aa-popup { background: rgba(23,32,20,.82); }
html:not(#_) .aa .aa-gate__box, html:not(#_) .aa .aa-popup__box { background: var(--aa-surface); color: var(--aa-texte); border: 1px solid var(--aa-bord); border-top: 5px solid var(--aa-ambre); border-radius: 140px 140px 22px 22px; padding-top: 2.4rem; }
html:not(#_) .aa .aa-gate__mark { background: var(--aa-primaire); color: #fff; border-radius: 36px 6px 36px 6px; }
html:not(#_) .aa .aa-popup__pour { color: var(--aa-primaire); }
html:not(#_) .aa .aa-popup__texte { color: var(--aa-muet); }

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