/* anuncios-gay-colombia.lat — registre « balcons de Carthagène » (Colombie, site gay).
   Palette : accent naranja de balcón #e07b39 (favicon, boutons à encre sombre 5,5:1) · tons foncés #9c4712 / #6f310b
   pour le texte d'accent · neutre cal (chaux) #fbf4ea / crème #fffaf3 / sable #f3e3cf · encre madera #2a1c14.
   Composition : en-tête léger translucide sur le neutre + filet d'accent et frise de balustres dessous ; titres de bloc
   en cartouche ; lignes d'annonce en cartes larges, vignette en ARCHE coloniale à gauche ; cœur SVG discret ;
   fiche à photo en arche ; CTA en cartes centrées ; pied de page compact sur une ligne. */

html:not(#_) body.aa {
  color-scheme: light;
  --aa-accent: #e07b39; --aa-teinte: #e07b39;
  --aa-primaire: #e07b39; --aa-primaire-fonce: #9c4712; --aa-primaire-txt: #2a1c14;
  --aa-page: #fbf4ea; --aa-fond: #fbf4ea; --aa-surface: #fffaf3; --aa-surface-2: #f6ead9;
  --aa-texte: #2a1c14; --aa-muet: #6e5647; --aa-bord: #ead7bf; --aa-lien: #9c4712;
  --aa-tete: rgba(251, 244, 234, .92); --aa-tete-txt: #2a1c14; --aa-barre: transparent;
  --aa-secondaire: #2a1c14; --aa-secondaire-txt: #fffaf3;
  --aa-pied: #2a1c14; --aa-pied-txt: #ecdcc8; --aa-erreur: #b3261e;
  --aa-rayon: 16px; --aa-rayon-s: 10px;
  --aa-ombre: 0 2px 4px rgba(156, 71, 18, .06), 0 20px 38px -24px rgba(156, 71, 18, .5);
  --aa-police: "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;
  --aa-police-titre: Georgia, "Book Antiqua", "Palatino Linotype", serif;
  --bc-coeur: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 22'%3E%3Cpath d='M12 21S1 14 1 7a5.5 5.5 0 0 1 11-1 5.5 5.5 0 0 1 11 1c0 7-11 14-11 14z' fill='%23e07b39'/%3E%3C/svg%3E");
  --bc-balustres: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='12' viewBox='0 0 22 12'%3E%3Crect x='0' y='0' width='22' height='2' fill='%239c4712'/%3E%3Crect x='9' y='2' width='4' height='10' rx='2' fill='%23e07b39'/%3E%3C/svg%3E");
  background: radial-gradient(1100px 360px at 85% -140px, #f7dcc2, transparent 70%), var(--aa-page);
  color: var(--aa-texte);
}

/* --- en-tête translucide + filet et balustres ------------------------------- */
html:not(#_) .aa-header.aa-header { background: var(--aa-tete); color: var(--aa-texte); border-top: 0; box-shadow: none;
  backdrop-filter: blur(8px); padding-bottom: 12px; }
html:not(#_) .aa-header.aa-header::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 12px;
  background: var(--bc-balustres) left bottom / 22px 12px repeat-x; opacity: .85; pointer-events: none; }
html:not(#_) .aa-header .aa-logo { color: var(--aa-texte); letter-spacing: .04em; }
html:not(#_) .aa-header .aa-logo__txt { font-family: var(--aa-police-titre); font-weight: 700; text-transform: none; letter-spacing: 0; font-size: 1.15rem; color: var(--aa-texte); }
html:not(#_) .aa .aa-logo__mark { width: 18px; height: 16px; border-radius: 0; background: var(--bc-coeur) center / contain no-repeat; box-shadow: none; }
html:not(#_) .aa-header .aa-nav { background: transparent; }
html:not(#_) .aa-header .aa-nav a { color: var(--aa-texte); text-transform: none; letter-spacing: 0; font-size: .9rem; border-radius: 999px; padding: .45rem .85rem; }
html:not(#_) .aa-header .aa-nav a:hover { background: #f6e0c8; }
html:not(#_) .aa-header .aa-nav a.is-actif { background: var(--aa-primaire); color: var(--aa-primaire-txt); }
html:not(#_) .aa-header .aa-nav__cta, html:not(#_) .aa-header .aa-header__cta { border-radius: 999px; background: var(--aa-primaire); color: var(--aa-primaire-txt); box-shadow: 0 8px 18px -10px rgba(156, 71, 18, .8); }
html:not(#_) .aa-header .aa-burger { color: var(--aa-texte); border-color: var(--aa-bord); border-radius: 12px; }
@media (max-width: 859px) {
  html:not(#_) .aa-header .aa-nav { background: var(--aa-surface); border: 1px solid var(--aa-bord); border-radius: var(--aa-rayon); box-shadow: var(--aa-ombre); }
  html:not(#_) .aa-header .aa-nav a { margin: .1rem 0; }
}

/* --- titres, hero -------------------------------------------------------------- */
html:not(#_) .aa .aa-h1 { font-family: var(--aa-police-titre); font-weight: 700; letter-spacing: -.01em; color: var(--aa-texte); }
html:not(#_) .aa .aa-hero.aa-hero { background: linear-gradient(120deg, #f7e2cb, var(--aa-surface) 60%); color: var(--aa-texte); border: 1px solid var(--aa-bord);
  border-radius: 26px; margin-top: 1rem; position: relative; overflow: hidden; box-shadow: var(--aa-ombre); }
html:not(#_) .aa .aa-hero.aa-hero::before { content: ""; position: absolute; left: -30px; bottom: -30px; width: 150px; height: 140px;
  background: var(--bc-coeur) center / contain no-repeat; opacity: .08; transform: rotate(-14deg); pointer-events: none; }
html:not(#_) .aa .aa-hero__txt, html:not(#_) .aa .aa-hero__txt p { color: var(--aa-muet); }
html:not(#_) .aa .aa-hero__chiffres, html:not(#_) .aa .aa-hero__chiffres strong { color: var(--aa-texte); }
html:not(#_) .aa .aa-hero__form.aa-hero__form { background: var(--aa-surface); color: var(--aa-texte); border: 1px solid var(--aa-bord); border-left: 0;
  border-radius: 110px 110px var(--aa-rayon) var(--aa-rayon); padding-top: 2rem; box-shadow: 0 22px 40px -26px rgba(156, 71, 18, .6); }
html:not(#_) .aa .aa-hero__form-h { font-family: var(--aa-police-titre); text-align: center; }
html:not(#_) .aa .aa-hero__form-p { color: var(--aa-muet); text-align: center; }

/* --- cartouches (titres de bloc) ---------------------------------------------- */
html:not(#_) .aa .aa-h2, html:not(#_) .aa .aa-depot__bloc legend, html:not(#_) .aa .aa-side__h {
  font-family: var(--aa-police-titre); text-transform: none; letter-spacing: 0; color: var(--aa-texte); }
html:not(#_) .aa .aa-bloc__tete .aa-h2, html:not(#_) .aa .aa-h2 { display: inline-block; background: #f6e0c8; border: 1px solid #e8c6a2;
  padding: .3rem 1.1rem .35rem 1.9rem; border-radius: 18px; position: relative; font-size: 1.15rem; }
html:not(#_) .aa .aa-h2::before { content: ""; position: absolute; left: .7rem; top: 50%; width: 12px; height: 11px; transform: translateY(-50%);
  background: var(--bc-coeur) center / contain no-repeat; }
html:not(#_) .aa .aa-bloc__tete .aa-lien, html:not(#_) .aa .aa-lien { color: var(--aa-primaire-fonce); font-weight: 700; }

/* --- lignes d'annonce : cartes larges, vignette en arche -------------------- */
html:not(#_) .aa .aa-liste { gap: .9rem; border-top: 0; }
html:not(#_) .aa .aa-ligne.aa-ligne { background: var(--aa-surface); border: 1px solid var(--aa-bord); border-left: 0; border-radius: 20px;
  padding: .9rem; box-shadow: 0 1px 2px rgba(156, 71, 18, .05), 0 14px 26px -22px rgba(156, 71, 18, .55); transition: transform .2s ease, box-shadow .2s ease; }
html:not(#_) .aa .aa-ligne.aa-ligne:hover { background: var(--aa-surface); transform: translateY(-2px); box-shadow: 0 20px 34px -22px rgba(156, 71, 18, .7); }
html:not(#_) .aa .aa-ligne__img { border-radius: 60px 60px 12px 12px; background: #f3e3cf; border: 3px solid #fff; box-shadow: 0 0 0 1px #e8c6a2; }
html:not(#_) .aa .aa-ligne__img img { border-radius: 57px 57px 9px 9px; transition: filter .35s ease; }
html:not(#_) .aa .aa-ligne:hover .aa-ligne__img img { filter: saturate(1.15) brightness(1.05); }
html:not(#_) .aa .aa-ligne--sans-photo .aa-ligne__img { background: #f3e3cf; }
html:not(#_) .aa .aa-ligne__nb { background: rgba(42, 28, 20, .85); color: #fffaf3; border-radius: 999px; left: 50%; right: auto; transform: translateX(-50%); white-space: nowrap; font-size: .62rem; padding: .05rem .45rem; }
html:not(#_) .aa .aa-ligne__cat { color: var(--aa-primaire-fonce); font-weight: 700; }
html:not(#_) .aa .aa-ligne__new, html:not(#_) .aa .aa-fiche__new { background: var(--aa-primaire); color: var(--aa-primaire-txt); border-radius: 999px; }
html:not(#_) .aa .aa-ligne__titre a { color: var(--aa-texte); font-family: var(--aa-police-titre); }
html:not(#_) .aa .aa-ligne__meta, html:not(#_) .aa .aa-ligne__date, html:not(#_) .aa .aa-ligne__extrait { color: var(--aa-muet); }
html:not(#_) .aa .aa-ligne__lire { border-radius: 999px; }
@media (min-width: 720px) {
  html:not(#_) .aa .aa-ligne.aa-ligne { padding: 1rem 1.2rem 1rem 1rem; column-gap: 1.3rem; }
}

/* --- boutons, champs, colonne latérale, filtres -------------------------------- */
html:not(#_) .aa .aa-btn--primaire { background: var(--aa-primaire); color: var(--aa-primaire-txt); border-color: #c9651f; border-radius: 999px;
  font-weight: 700; box-shadow: 0 12px 22px -14px rgba(156, 71, 18, .9); }
html:not(#_) .aa .aa-btn--primaire:hover { background: #d56c28; }
html:not(#_) .aa .aa-btn--secondaire { background: transparent; color: var(--aa-texte); border-color: var(--aa-texte); border-radius: 999px; }
html:not(#_) .aa .aa-btn--secondaire:hover { background: #f6e0c8; }
html:not(#_) .aa input:not([type=checkbox]):not([type=radio]), html:not(#_) .aa select, html:not(#_) .aa textarea {
  background: #fff; color: var(--aa-texte); border-color: #dfc6a8; border-radius: 12px; }
html:not(#_) .aa ::placeholder { color: #8a7262; }
html:not(#_) .aa .aa-side { background: var(--aa-surface); border: 1px solid var(--aa-bord); border-left: 0; border-radius: 22px 22px 22px 4px; box-shadow: var(--aa-ombre); }
html:not(#_) .aa .aa-side__h { background: transparent; padding-bottom: .4rem; border-bottom: 2px dotted #e8c6a2; }
html:not(#_) .aa .aa-side__liste li a { color: var(--aa-texte); }
html:not(#_) .aa .aa-side__liste li a[aria-current], html:not(#_) .aa .aa-side__liste li.is-actif a { color: var(--aa-primaire-fonce); font-weight: 700; }
html:not(#_) .aa .aa-side__nb, html:not(#_) .aa .aa-liens__nb { background: #f6e0c8; color: #6f310b; border-radius: 999px; padding: 0 .45rem; font-weight: 700; }
html:not(#_) .aa .aa-filtres { background: var(--aa-surface); border: 1px solid var(--aa-bord); border-radius: 20px; box-shadow: var(--aa-ombre); }
html:not(#_) .aa .aa-filtres__champ, html:not(#_) .aa .aa-form__lbl, html:not(#_) .aa label { color: var(--aa-texte); }

/* --- villes / catégories en pilules ------------------------------------------- */
html:not(#_) .aa .aa-liens { gap: .45rem; }
html:not(#_) .aa .aa-liens li { background: var(--aa-surface); border: 1px solid var(--aa-bord); border-radius: 14px; padding: .3rem .5rem .3rem .7rem; }
html:not(#_) .aa .aa-liens li:hover { background: #f6e0c8; border-color: #e8c6a2; }
html:not(#_) .aa .aa-liens a { color: var(--aa-texte); font-weight: 600; font-size: .86rem; overflow-wrap: normal; word-break: normal; hyphens: auto; }
html:not(#_) .aa .aa-chip, html:not(#_) .aa .aa-chips li, html:not(#_) .aa .aa-vide { background: var(--aa-surface); color: var(--aa-texte); border-color: var(--aa-bord); border-radius: 999px; }
html:not(#_) .aa .aa-chip:has(input:checked) { background: #f6e0c8; border-color: var(--aa-primaire); }
html:not(#_) .aa .aa-pagination a, html:not(#_) .aa .aa-pagination span { border-radius: 999px; color: var(--aa-texte); }
html:not(#_) .aa .aa-crumbs, html:not(#_) .aa .aa-crumbs a { color: var(--aa-muet); }

/* --- CTA déposer, dépôt ------------------------------------------------------- */
html:not(#_) .aa .aa-deposer-cta { max-width: 560px; margin: 2rem auto; text-align: center; background: var(--aa-surface); color: var(--aa-texte);
  border: 1px solid #e8c6a2; border-radius: 120px 120px 24px 24px; padding: 2.2rem 1.6rem 1.6rem; box-shadow: var(--aa-ombre);
  background-image: var(--bc-coeur); background-repeat: no-repeat; background-position: right 18px bottom 14px; background-size: 26px; }
html:not(#_) .aa .aa-depot__bloc { background: var(--aa-surface); border: 1px solid var(--aa-bord); border-radius: 20px; }
html:not(#_) .aa .aa-form__aide, html:not(#_) .aa .aa-form__compteur { color: var(--aa-muet); }

/* --- fiche d'annonce ----------------------------------------------------------- */
html:not(#_) .aa .aa-fiche__titre { font-family: var(--aa-police-titre); color: var(--aa-texte); }
html:not(#_) .aa .aa-fiche__meta, html:not(#_) .aa .aa-fiche__sous { color: var(--aa-muet); }
html:not(#_) .aa .aa-fiche__cat, html:not(#_) .aa .aa-fiche__cat a, html:not(#_) .aa .aa-fiche__meta a { color: var(--aa-primaire-fonce); }
html:not(#_) .aa .aa-fiche__photo { border-radius: 160px 160px 18px 18px; background: #f3e3cf; border: 4px solid #fff; box-shadow: 0 0 0 1px #e8c6a2, 0 22px 40px -24px rgba(156, 71, 18, .7); overflow: hidden; }
html:not(#_) .aa .aa-fiche__photo img { transition: transform .45s ease; }
html:not(#_) .aa .aa-fiche__photo:hover img { transform: scale(1.03); }
html:not(#_) .aa .aa-fiche__miniatures img { border-radius: 30px 30px 8px 8px; }
html:not(#_) .aa .aa-fiche__cta--haut { background: #f6e8d6; border: 1px solid #e8c6a2; border-left: 0; border-radius: 22px; }
html:not(#_) .aa .aa-fiche__infos { background: var(--aa-surface); border-color: var(--aa-bord); border-radius: 16px; color: var(--aa-texte); }
html:not(#_) .aa .aa-fiche__infos > div, html:not(#_) .aa .aa-fiche__phy { background: var(--aa-surface); border-color: var(--aa-bord); color: var(--aa-texte); border-radius: 12px; }
html:not(#_) .aa .aa-fiche__plage { background: #f6e0c8; color: #6f310b; border-radius: 999px; }
html:not(#_) .aa .aa-repondre { background: var(--aa-surface); border: 1px solid var(--aa-bord); border-radius: 22px; box-shadow: var(--aa-ombre); color: var(--aa-texte); }
html:not(#_) .aa .aa-repondre__intro { color: var(--aa-muet); }
html:not(#_) .aa .aa-fiche__barre.aa-fiche__barre { background: rgba(255, 250, 243, .95); border-top-color: #e8c6a2; }
html:not(#_) .aa .aa-fiche__signaler, html:not(#_) .aa .aa-retour { color: var(--aa-primaire-fonce); }

/* --- pied de page compact sur une ligne ---------------------------------------- */
html:not(#_) .aa .aa-footer { background: var(--aa-pied); color: var(--aa-pied-txt); border-top: 0; margin-top: 2.5rem; position: relative; }
html:not(#_) .aa .aa-footer::before { content: ""; position: absolute; left: 0; right: 0; top: -12px; height: 12px;
  background: var(--bc-balustres) left top / 22px 12px repeat-x; transform: scaleY(-1); opacity: .9; }
html:not(#_) .aa .aa-footer__grid { display: flex; flex-wrap: wrap; gap: 1rem 2rem; padding-block: 1.6rem 1rem; align-items: flex-start; }
html:not(#_) .aa .aa-footer__col { flex: 1 1 200px; min-width: 0; }
html:not(#_) .aa .aa-footer ul { display: flex; flex-wrap: wrap; gap: .2rem .8rem; }
html:not(#_) .aa .aa-footer__h { color: #f3b98c; font-family: var(--aa-police-titre); text-transform: none; letter-spacing: 0; font-size: .95rem; border-bottom: 0; }
html:not(#_) .aa .aa-footer__brand { color: #fffaf3; font-family: var(--aa-police-titre); text-transform: none; letter-spacing: 0; }
html:not(#_) .aa .aa-footer a { color: var(--aa-pied-txt); }
html:not(#_) .aa .aa-footer a:hover { color: #f3b98c; }
html:not(#_) .aa .aa-footer p, html:not(#_) .aa .aa-footer__fictif, html:not(#_) .aa .aa-footer__bas { color: #cbb7a4; }
html:not(#_) .aa .aa-footer__bas { border-top-color: rgba(236, 220, 200, .15); }

/* --- pop-up d'inscription et porte d'âge -------------------------------------- */
html:not(#_) .aa .aa-gate, html:not(#_) .aa .aa-popup { background: rgba(42, 28, 20, .72); backdrop-filter: blur(4px); }
html:not(#_) .aa .aa-gate__box, html:not(#_) .aa .aa-popup__box { background: var(--aa-surface); color: var(--aa-texte); border: 1px solid #e8c6a2;
  border-top: 0; border-radius: 120px 120px 22px 22px; padding-top: 2.2rem; box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .6); }
html:not(#_) .aa .aa-popup__titre { font-family: var(--aa-police-titre); color: var(--aa-texte); }
html:not(#_) .aa .aa-popup__texte, html:not(#_) .aa .aa-popup__pour { color: var(--aa-muet); }
html:not(#_) .aa .aa-gate__mark { background: var(--bc-coeur) center / contain no-repeat; }

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