/* ===========================================================================
   gay-brabant-wallon.be — Gay, Brabant wallon (Belgique francophone)
   gabarit annoncesastro · body.aa.skin-2 aa-compo-2 aa-fiche-2 · --aa-accent #2e7d32

   REGISTRE « vert bouteille & sable » : un fond de SABLE chaud, des surfaces d'IVOIRE
   comme des étiquettes de bouteille, un bandeau et un pied VERT BOUTEILLE profond,
   le vert du favicon réservé à ce qui appelle au clic. Ton viril, net, chaleureux.
   Formes signature : l'ÉTIQUETTE ENCOCHÉE (coins découpés en quart de cercle + couture
   pointillée : hero, CTA de la fiche) ; la CAPSULE (médaillon cranté : logo, vignettes,
   porte d'âge, compteurs) ; le GALON (liseré à chevrons sous le bandeau, dents de scie
   au pied).

   PALETTE
     accent #2e7d32 (blanc 5,1:1) · vert texte #1d5c24 · bouteille #173a22 / #0f2917
     sable #efe5d1 (page) · sable foncé #e2d3b4 · ivoire #fdf8ec (surfaces)
     encre #1c261e · douce #3d4639 · muette #5b5a48 (>= 5,5:1 sur ivoire)
     pied : texte #efe5d1 · muet #c9c0a8
   Préfixe html:not(#_) : passe devant .skin-2 (0,2,0). Aucun CTA déplacé ni caché.
   =========================================================================== */

html:not(#_) body.aa {
  color-scheme: light;
  --aa-fond: #efe5d1;
  --aa-surface: #fdf8ec;
  --aa-texte: #1c261e;
  --aa-muet: #5b5a48;
  --aa-bord: #d9c9a6;
  --aa-secondaire: #1d5c24;
  --aa-secondaire-txt: #fdf8ec;
  --aa-primaire: #2e7d32;
  --aa-primaire-txt: #fff;
  --aa-rayon: 16px; --aa-rayon-s: 999px;
  --aa-ombre: 0 2px 4px rgba(23, 58, 34, .06), 0 16px 32px -18px rgba(23, 58, 34, .45);
  --aa-police: "Segoe UI", "Helvetica Neue", Roboto, Arial, sans-serif;
  --aa-police-titre: Rockwell, "Roboto Slab", "Zilla Slab", Georgia, serif;
  --aa-tete: #173a22; --aa-tete-txt: #f4ecd9;
  --aa-pied: #0f2917; --aa-pied-txt: #efe5d1;
  --aa-erreur: #a3261c;
  --vb-bouteille: #173a22;
  --vb-vert-txt: #1d5c24;
  --vb-ivoire: #fdf8ec;
  background:
    radial-gradient(1200px 500px at 110% -10%, rgba(46, 125, 50, .10), transparent 60%),
    #efe5d1;
}
html:not(#_) body.aa a { color: var(--vb-vert-txt); }
html:not(#_) body.aa .aa-h1, html:not(#_) body.aa .aa-h2,
html:not(#_) body.aa .aa-fiche__titre, html:not(#_) body.aa .aa-ligne__titre { font-family: var(--aa-police-titre); letter-spacing: -.005em; }
html:not(#_) body.aa .aa-h2 { position: relative; padding-left: 1.5rem; color: var(--vb-bouteille); }
html:not(#_) body.aa .aa-h2::before { content: ""; position: absolute; left: .15rem; top: .3em; width: .85rem; height: .85rem; border-radius: 50%; background: var(--aa-primaire); box-shadow: 0 0 0 3px var(--aa-fond), 0 0 0 5px color-mix(in srgb, var(--aa-primaire) 45%, transparent); }

/* --- boutons : pilules, vert plein ou contour ----------------------------- */
html:not(#_) body.aa .aa-btn { border-radius: 999px; letter-spacing: .01em; }
html:not(#_) body.aa .aa-btn--primaire { background: var(--aa-primaire); color: #fff; box-shadow: 0 10px 20px -12px rgba(46, 125, 50, .9); }
html:not(#_) body.aa .aa-btn--primaire:hover { background: #276b2b; }
html:not(#_) body.aa .aa-btn--secondaire { background: transparent; color: var(--vb-vert-txt); border-color: var(--vb-vert-txt); }
html:not(#_) body.aa .aa-btn--secondaire:hover { background: color-mix(in srgb, var(--aa-primaire) 10%, transparent); }

/* --- bandeau : bouteille + galon à chevrons ----------------------------- */
html:not(#_) body.aa .aa-header { background: var(--vb-bouteille); color: var(--aa-tete-txt); border: 0; box-shadow: 0 8px 22px -14px rgba(15, 41, 23, .9); }
html:not(#_) body.aa .aa-header::after { content: ""; position: absolute; left: 0; right: 0; bottom: -6px; height: 6px; pointer-events: none;
  background: linear-gradient(135deg, var(--vb-bouteille) 25%, transparent 25%) 0 0 / 12px 12px repeat-x,
              linear-gradient(225deg, var(--vb-bouteille) 25%, transparent 25%) 0 0 / 12px 12px repeat-x; }
html:not(#_) body.aa .aa-logo { color: #f4ecd9; font-family: var(--aa-police-titre); font-size: 1.2rem; font-weight: 800; letter-spacing: .04em; text-transform: none; }
html:not(#_) body.aa .aa-logo__mark { width: 22px; height: 22px; border-radius: 50%; background: radial-gradient(circle, #e2d3b4 0 36%, var(--aa-primaire) 40% 100%); box-shadow: 0 0 0 2px #173a22, 0 0 0 4px #d9c9a6; }
html:not(#_) body.aa .aa-nav a { color: #f4ecd9; text-transform: none; font-size: .9rem; letter-spacing: .01em; border-radius: 999px; }
html:not(#_) body.aa .aa-nav a:hover, html:not(#_) body.aa .aa-nav a.is-actif { background: rgba(239, 229, 209, .14); }
html:not(#_) body.aa .aa-nav__cta a { background: #efe5d1; color: #173a22 !important; font-weight: 800; }
html:not(#_) body.aa .aa-nav__cta a:hover { background: #fdf8ec; }
html:not(#_) body.aa .aa-burger { color: #f4ecd9; }
@media (max-width: 800px) {
  html:not(#_) body.aa .aa-nav { background: var(--vb-bouteille); border-bottom: 3px solid var(--aa-primaire); }
}

/* --- hero : sable, étiquette encochée ----------------------------------- */
html:not(#_) body.aa .aa-hero { background:
    radial-gradient(60% 90% at 0% 0%, rgba(46, 125, 50, .16), transparent 65%),
    linear-gradient(180deg, #e8dcc1, #efe5d1); border-bottom: 0; padding-block: 2.2rem 2.4rem; }
html:not(#_) body.aa .aa-h1 { color: var(--vb-bouteille); }
html:not(#_) body.aa .aa-hero__txt p { color: #3d4639; }
html:not(#_) body.aa .aa-hero .aa-hero__chiffres { display: inline-block; background: var(--vb-bouteille); color: #efe5d1; padding: .35rem 1rem; border-radius: 999px; font-size: .9rem; }
html:not(#_) body.aa .aa-hero__form {
  border: 0; border-radius: 0; box-shadow: none; padding: 1.6rem 1.5rem;
  background:
    radial-gradient(circle at 0 0, transparent 18px, var(--vb-ivoire) 18.5px) top left / 51% 51% no-repeat,
    radial-gradient(circle at 100% 0, transparent 18px, var(--vb-ivoire) 18.5px) top right / 51% 51% no-repeat,
    radial-gradient(circle at 0 100%, transparent 18px, var(--vb-ivoire) 18.5px) bottom left / 51% 51% no-repeat,
    radial-gradient(circle at 100% 100%, transparent 18px, var(--vb-ivoire) 18.5px) bottom right / 51% 51% no-repeat;
  filter: drop-shadow(0 14px 18px rgba(23, 58, 34, .22));
  outline: 1.5px dashed #b99e6b; outline-offset: -14px;
}
html:not(#_) body.aa .aa-hero__form-h { color: var(--vb-bouteille); font-size: 1.3rem; }
html:not(#_) body.aa .aa-hero__form-p { color: #5b5a48; }

/* --- champs ------------------------------------------------------------- */
html:not(#_) body.aa select, html:not(#_) body.aa input[type="text"], html:not(#_) body.aa input[type="email"],
html:not(#_) body.aa input[type="tel"], html:not(#_) body.aa input[type="number"], html:not(#_) body.aa textarea {
  background: #fffdf6; color: #1c261e; border: 1.5px solid #d4c29c; border-radius: 12px; }
html:not(#_) body.aa input::placeholder, html:not(#_) body.aa textarea::placeholder { color: #767260; }
html:not(#_) body.aa .aa-chips li, html:not(#_) body.aa .aa-chip { background: #fffdf6; border-color: #d4c29c; color: #1c261e; }
html:not(#_) body.aa .aa-chip:has(input:checked) { background: #dcebd7; border-color: var(--aa-primaire); color: #173a22; }

/* --- listes d'annonces : étiquettes ivoire, vignette en capsule --------- */
html:not(#_) body.aa .aa-liste { gap: .8rem; }
html:not(#_) body.aa .aa-ligne { background: var(--vb-ivoire); border: 1px solid #e3d6b8; border-radius: 18px; box-shadow: 0 10px 22px -18px rgba(23, 58, 34, .7); transition: transform .2s ease, box-shadow .2s ease; }
html:not(#_) body.aa .aa-ligne:hover { background: #fffcf3; border-color: #cdb888; transform: translateY(-2px); box-shadow: 0 16px 28px -18px rgba(23, 58, 34, .8); }
html:not(#_) body.aa .aa-ligne__img { border-radius: 50%; background: #e2d3b4; box-shadow: 0 0 0 3px #fdf8ec, 0 0 0 5px color-mix(in srgb, var(--aa-primaire) 55%, #e2d3b4); }
html:not(#_) body.aa .aa-ligne--sans-photo .aa-ligne__img { background: #dfe9d9; }
html:not(#_) body.aa .aa-ligne__nb { left: 50%; transform: translateX(-50%); background: rgba(23, 58, 34, .85); }
html:not(#_) body.aa .aa-ligne__titre { color: #1c261e; font-size: 1.08rem; }
html:not(#_) body.aa .aa-ligne__titre a:hover { color: var(--vb-vert-txt); }
html:not(#_) body.aa .aa-ligne__cat { color: var(--vb-vert-txt); }
html:not(#_) body.aa .aa-ligne__new { background: #e2d3b4; color: #173a22; }
html:not(#_) body.aa .aa-ligne__meta, html:not(#_) body.aa .aa-ligne__date { color: #5b5a48; }
html:not(#_) body.aa .aa-ligne__extrait { color: #3d4639; opacity: 1; }
html:not(#_) body.aa .aa-ligne__lire { border-radius: 999px; background: var(--vb-bouteille); color: #f4ecd9; border-color: var(--vb-bouteille); }
html:not(#_) body.aa .aa-ligne__lire:hover { background: var(--aa-primaire); border-color: var(--aa-primaire); color: #fff; }

/* --- blocs, liens, sidebar ---------------------------------------------- */
html:not(#_) body.aa .aa-liens li { background: var(--vb-ivoire); border-color: #e3d6b8; border-radius: 12px; }
html:not(#_) body.aa .aa-liens li a { color: #1c261e; font-weight: 600; }
html:not(#_) body.aa .aa-liens__nb, html:not(#_) body.aa .aa-side__nb { color: #fdf8ec; background: var(--aa-primaire); border-radius: 999px; min-width: 1.6rem; text-align: center; padding: 0 .45rem; font-size: .75rem; font-weight: 700; line-height: 1.6; align-self: center; }
html:not(#_) body.aa.aa-compo-2 .aa-liens--cats li { background: #fdf8ec; border: 1.5px solid #cdb888; border-radius: 999px; }
html:not(#_) body.aa .aa-side { background: var(--vb-ivoire); border: 1px solid #e3d6b8; border-radius: 18px; padding: 0 0 .8rem; overflow: hidden; box-shadow: 0 10px 22px -18px rgba(23, 58, 34, .6); }
html:not(#_) body.aa .aa-side__h { background: var(--vb-bouteille); color: #efe5d1; margin: 0 0 .5rem; padding: .7rem 1.1rem; font-family: var(--aa-police-titre); letter-spacing: .08em; font-size: .78rem; }
html:not(#_) body.aa .aa-side__liste, html:not(#_) body.aa .aa-side__aide, html:not(#_) body.aa .aa-side > p { padding-inline: 1.1rem; }
html:not(#_) body.aa .aa-side__liste li { border-top-color: #eadfc6; }
html:not(#_) body.aa .aa-side__liste a { color: #1c261e; }
html:not(#_) body.aa .aa-side__liste li.is-actif a { color: var(--vb-vert-txt); }
html:not(#_) body.aa .aa-filtres { background: var(--vb-ivoire); border: 1px solid #e3d6b8; border-radius: 18px; }
html:not(#_) body.aa .aa-filtres__champ { color: #3d4639; }
html:not(#_) body.aa .aa-pagination a, html:not(#_) body.aa .aa-pagination span { border-radius: 999px; background: #fdf8ec; border-color: #d4c29c; color: #1c261e; }
html:not(#_) body.aa .aa-pagination .is-actif { background: var(--aa-primaire); color: #fff; border-color: var(--aa-primaire); }
html:not(#_) body.aa .aa-crumbs ol { color: #5b5a48; }
html:not(#_) body.aa .aa-vide { background: #fdf8ec; border-color: #cdb888; }

/* --- fiche d'annonce ----------------------------------------------------- */
html:not(#_) body.aa .aa-fiche__cat a { color: var(--vb-vert-txt); }
html:not(#_) body.aa .aa-fiche__titre { color: var(--vb-bouteille); }
html:not(#_) body.aa .aa-fiche__sous, html:not(#_) body.aa .aa-fiche__meta { color: #5b5a48; }
html:not(#_) body.aa .aa-fiche__photo { border-radius: 26px; border: 8px solid #fdf8ec; box-shadow: 0 0 0 2px #cdb888, 0 20px 36px -20px rgba(23, 58, 34, .7); background: #e2d3b4; }
html:not(#_) body.aa .aa-fiche__img { transition: transform .5s ease; }
html:not(#_) body.aa .aa-fiche__photo:hover .aa-fiche__img { transform: scale(1.02); }
html:not(#_) body.aa .aa-fiche__new { background: #e2d3b4; color: #173a22; }
html:not(#_) body.aa .aa-fiche__cta--haut {
  border: 0; border-radius: 0; box-shadow: none; padding: 1.1rem;
  background:
    radial-gradient(circle at 0 0, transparent 13px, var(--vb-ivoire) 13.5px) top left / 51% 51% no-repeat,
    radial-gradient(circle at 100% 0, transparent 13px, var(--vb-ivoire) 13.5px) top right / 51% 51% no-repeat,
    radial-gradient(circle at 0 100%, transparent 13px, var(--vb-ivoire) 13.5px) bottom left / 51% 51% no-repeat,
    radial-gradient(circle at 100% 100%, transparent 13px, var(--vb-ivoire) 13.5px) bottom right / 51% 51% no-repeat;
  filter: drop-shadow(0 12px 16px rgba(23, 58, 34, .2));
  outline: 1.5px dashed #b99e6b; outline-offset: -10px;
}
html:not(#_) body.aa .aa-fiche__infos { background: var(--vb-ivoire); border-color: #e3d6b8; border-radius: 16px; }
html:not(#_) body.aa .aa-fiche__infos dt, html:not(#_) body.aa .aa-fiche__physique dt { color: #5b5a48; }
html:not(#_) body.aa .aa-fiche__infos dd, html:not(#_) body.aa .aa-fiche__physique dd { color: #1c261e; }
html:not(#_) body.aa .aa-fiche__infos dd a { color: var(--vb-vert-txt); }
html:not(#_) body.aa .aa-fiche__plage { background: #dcebd7; color: #173a22; border-radius: 999px; padding: .45rem 1rem; }
html:not(#_) body.aa .aa-fiche__phy { background: #fdf8ec; border: 1px solid #e3d6b8; border-top: 3px solid var(--aa-primaire); border-radius: 14px; }
html:not(#_) body.aa .aa-fiche__texte p { color: #1c261e; }
html:not(#_) body.aa .aa-fiche__miniatures img { border-radius: 50%; width: 72px; height: 72px; }
html:not(#_) body.aa .aa-repondre { background: var(--vb-ivoire); border: 1px solid #e3d6b8; border-top: 5px solid var(--vb-bouteille); border-radius: 22px; box-shadow: 0 16px 30px -22px rgba(23, 58, 34, .7); }
html:not(#_) body.aa .aa-repondre__intro, html:not(#_) body.aa .aa-fiche__signaler, html:not(#_) body.aa .aa-retour { color: #5b5a48; }
html:not(#_) body.aa .aa-fiche__barre { background: rgba(253, 248, 236, .97); border-top: 4px solid var(--vb-bouteille); box-shadow: 0 -10px 24px -14px rgba(15, 41, 23, .6); }

/* --- dépôt : étiquettes cousues, légende en capsule ---------------------- */
html:not(#_) body.aa .aa-depot__bloc { background: var(--vb-ivoire); border: 1.5px dashed #c9b384; border-radius: 20px; padding: 1.3rem 1.2rem; box-shadow: 0 12px 26px -22px rgba(23, 58, 34, .7); }
html:not(#_) body.aa .aa-depot__bloc legend { background: var(--vb-bouteille); color: #efe5d1; border-radius: 999px; padding: .3rem 1rem; font-size: .9rem; letter-spacing: .03em; }
html:not(#_) body.aa .aa-form__lbl, html:not(#_) body.aa .aa-form__check { color: #1c261e; }
html:not(#_) body.aa .aa-form__aide, html:not(#_) body.aa .aa-regles { color: #5b5a48; }

/* --- pied : bouteille, bord en dents de scie ----------------------------- */
html:not(#_) body.aa .aa-footer { position: relative; margin-top: 3rem; background: #0f2917; color: #efe5d1; border-top: 0; padding-top: 2.6rem; }
html:not(#_) body.aa .aa-footer::before { content: ""; position: absolute; left: 0; right: 0; top: -12px; height: 12px;
  background: linear-gradient(135deg, transparent 50%, #0f2917 50%) 0 0 / 24px 12px repeat-x,
              linear-gradient(225deg, transparent 50%, #0f2917 50%) 12px 0 / 24px 12px repeat-x; }
html:not(#_) body.aa .aa-footer a { color: #efe5d1; }
html:not(#_) body.aa .aa-footer a:hover { color: #fff; }
html:not(#_) body.aa .aa-footer__h { color: #e2d3b4; font-family: var(--aa-police-titre); text-transform: uppercase; letter-spacing: .12em; font-size: .78rem; }
html:not(#_) body.aa .aa-footer__brand { color: #fff; font-family: var(--aa-police-titre); letter-spacing: .04em; text-transform: none; font-size: 1.3rem; }
html:not(#_) body.aa .aa-footer__fictif { color: #c9c0a8; opacity: 1; }
html:not(#_) body.aa .aa-footer__bas { border-top: 1px dashed rgba(226, 211, 180, .35); color: #c9c0a8; opacity: 1; }

/* --- porte d'âge & pop-up ------------------------------------------------- */
html:not(#_) body.aa .aa-gate, html:not(#_) body.aa .aa-popup { background: rgba(15, 41, 23, .86); }
html:not(#_) body.aa .aa-gate__box, html:not(#_) body.aa .aa-popup__box { background: var(--vb-ivoire); color: #1c261e; border: 0; border-top: 6px solid var(--aa-primaire); border-radius: 22px; }
html:not(#_) body.aa .aa-gate__mark { background: radial-gradient(circle, var(--aa-primaire) 0 58%, #fdf8ec 60% 66%, var(--aa-primaire) 68%); color: #fff; box-shadow: 0 0 0 4px #e2d3b4; }
html:not(#_) body.aa .aa-popup__pour { color: var(--vb-vert-txt); }
html:not(#_) body.aa .aa-popup__texte { color: #5b5a48; }

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