/* anuncios-gay-mexico.lat — registre « adobe & ocre » (inspiration Mexique)
   Palette : accent ocre brûlé du favicon #b35a1f (boutons #8f4416, lisibles en blanc),
   neutre chaud = adobe / terre crue (#fbf3e8, #f3e4cf, #e9d3b6), encre #2a1a10.
   Composition : logo centré sur une frise d'adobe à gradins, catégories sur une 2e rangée en
   cartouches ; lignes d'annonce à bord haut épais ocre, vignettes en arche, cœur discret en
   filigrane ; fiche à photo en arche et CTA en carte centrée ; pied de page sur une ligne. */

html:not(#_), html:not(#_) body, html:not(#_) .skin-1 {
  --aa-accent: #b35a1f; --aa-teinte: #8f4416;
  --aa-primaire: #8f4416; --aa-primaire-fonce: #6b3110; --aa-primaire-txt: #fff;
  --aa-page: #efdcc2; --aa-fond: #fbf3e8; --aa-surface: #fffaf3; --aa-surface-2: #f5e8d6;
  --aa-bord: #e3cdae; --aa-texte: #2a1a10; --aa-muet: #6a4f3a; --aa-lien: #8f4416;
  --aa-tete: #fbf3e8; --aa-tete-txt: #2a1a10;
  --aa-secondaire: #3a2315; --aa-secondaire-txt: #fff;
  --aa-pied: #33200f; --aa-pied-txt: #f1e2cc;
  --aa-rayon: 14px; --aa-rayon-s: 10px;
  --aa-ombre: 0 2px 4px rgba(107, 49, 16, .06), 0 16px 32px -20px rgba(143, 68, 22, .5);
  --aa-police: "Segoe UI", system-ui, -apple-system, Roboto, sans-serif;
  --aa-police-titre: "Rockwell", "Roboto Slab", "Georgia", serif;
}

/* Fond : terre crue à grain léger */
html:not(#_) body {
  background-color: var(--aa-page);
  background-image:
    radial-gradient(circle at 30% 40%, rgba(143, 68, 22, .07) 1px, transparent 1.6px),
    radial-gradient(circle at 75% 70%, rgba(255, 250, 243, .5) 1.2px, transparent 1.8px);
  background-size: 28px 28px, 44px 44px;
  color: var(--aa-texte);
}

/* ---------- En-tête : logo centré, frise d'adobe à gradins, catégories en cartouches ---------- */
html:not(#_) .aa-header.aa-header {
  background: var(--aa-tete); color: var(--aa-tete-txt); border-bottom: 0; position: relative;
  box-shadow: 0 12px 26px -22px rgba(107, 49, 16, .8);
}
html:not(#_) .aa-header.aa-header::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -10px; height: 10px; pointer-events: none;
  background:
    linear-gradient(135deg, #b35a1f 25%, transparent 25%) 0 0 / 20px 10px repeat-x,
    linear-gradient(225deg, #b35a1f 25%, transparent 25%) 0 0 / 20px 10px repeat-x;
  opacity: .85;
}
html:not(#_) .aa-header .aa-logo { color: #2a1a10; font-family: var(--aa-police-titre); letter-spacing: .03em; }
html:not(#_) .aa-header .aa-logo__txt { color: #2a1a10; }
html:not(#_) .aa-logo .aa-logo__mark {
  width: 16px; height: 16px; border-radius: 2px; transform: rotate(45deg);
  background: linear-gradient(135deg, #e3a063 0 40%, #b35a1f 40% 70%, #6b3110 70%);
  box-shadow: 0 0 0 2px #fbf3e8, 0 0 0 3px #b35a1f;
}
html:not(#_) .aa-header .aa-burger { border: 1px solid #d9bd97; border-radius: 12px; color: #2a1a10; }
@media (min-width: 760px) {
  html:not(#_) .aa-header .aa-nav { border-top: 1px dashed #d9bd97; padding-block: .35rem .5rem; }
  html:not(#_) .aa-header .aa-nav a {
    border: 1px solid transparent; border-radius: 10px 10px 3px 3px; padding: .45rem .85rem;
    color: #4a2e1c; letter-spacing: .08em;
  }
  html:not(#_) .aa-header .aa-nav a:hover { background: #f3e2cb; border-bottom-color: transparent; }
  html:not(#_) .aa-header .aa-nav a.is-actif { background: #f3e2cb; border-color: #e0c49e; color: #2a1a10; border-bottom: 2px solid #b35a1f; }
  html:not(#_) .aa-header .aa-nav .aa-nav__cta a { background: #8f4416; color: #fff; border-radius: 999px; padding-inline: 1.1rem; box-shadow: 0 6px 14px -8px rgba(143, 68, 22, .9); }
}
@media (max-width: 759px) {
  html:not(#_) .aa-header .aa-nav { background: #fffaf3; border-radius: 16px; }
  html:not(#_) .aa-header .aa-nav a { color: #2a1a10; }
  html:not(#_) .aa-header .aa-nav a.is-actif { color: #8f4416; }
}

/* ---------- Conteneur ---------- */
html:not(#_) .aa-main > .aa-wrap { background: var(--aa-fond); }
html:not(#_) .aa-main { padding-top: .6rem; }

/* ---------- Accueil : carte d'accueil en arche ---------- */
html:not(#_) .aa-main .aa-hero {
  background: #fffaf3; border: 0; border-radius: 160px 160px 18px 18px / 70px 70px 18px 18px;
  margin: 1.2rem auto 1rem; max-width: 820px; padding: 2rem 1.2rem 1.6rem;
  box-shadow: var(--aa-ombre), inset 0 0 0 1px #ecd8bc;
  position: relative;
}
html:not(#_) .aa-main .aa-hero::before {
  content: ""; position: absolute; top: 1.1rem; right: 1.4rem; width: 26px; height: 26px; opacity: .22;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23b35a1f' d='M12 21s-7.5-4.6-9.6-9.3C.9 8.3 3.1 4.5 6.7 4.5c2.1 0 3.6 1.2 5.3 3 1.7-1.8 3.2-3 5.3-3 3.6 0 5.8 3.8 4.3 7.2C19.5 16.4 12 21 12 21z'/%3E%3C/svg%3E") center / contain no-repeat;
}
html:not(#_) .aa-hero .aa-h1 { font-family: var(--aa-police-titre); color: #2a1a10; }
html:not(#_) .aa-hero .aa-intro, html:not(#_) .aa-hero .aa-hero__chiffres { color: #5b4130; }
html:not(#_) .aa-hero .aa-hero__form {
  border: 0; border-top: 5px solid #b35a1f; border-radius: 6px 6px 18px 18px;
  background: #f7ebda; padding: 1.2rem 1.1rem; box-shadow: 0 14px 26px -20px rgba(107, 49, 16, .8);
}
html:not(#_) .aa-hero__form input[type="text"], html:not(#_) .aa-hero__form input[type="email"] {
  border-radius: 10px; border-color: #dcc19c; background: #fffaf3;
}
html:not(#_) .aa-chips .aa-chip { border-radius: 999px; background: #fffaf3; border-color: #dcc19c; color: #2a1a10; }

/* Boutons */
html:not(#_) .aa-btn.aa-btn { border-radius: 999px; font-family: var(--aa-police); letter-spacing: .05em; }
html:not(#_) .aa-btn:not(.aa-btn--secondaire):not(.aa-ligne__lire) {
  background: linear-gradient(180deg, #a04d1a, #8f4416); color: #fff; border-color: #8f4416;
  box-shadow: 0 8px 18px -10px rgba(143, 68, 22, .9);
}
html:not(#_) .aa-btn:not(.aa-btn--secondaire):not(.aa-ligne__lire):hover { background: #6b3110; }
html:not(#_) .aa-btn.aa-btn--secondaire:not(.aa-ligne__lire) { background: #fffaf3; color: #6b3110; border: 2px solid #b35a1f; }

/* ---------- Titres de section en cartouche ---------- */
html:not(#_) .aa-main .aa-h2, html:not(#_) .aa-side .aa-side__h, html:not(#_) .aa-depot__bloc legend {
  display: inline-block; font-family: var(--aa-police-titre); font-style: normal; text-transform: none;
  letter-spacing: .02em; color: #fff; background: #8f4416; padding: .4rem 1.1rem .4rem 1.4rem;
  border-radius: 4px 18px 4px 18px; position: relative; box-shadow: 0 8px 16px -12px rgba(107, 49, 16, .9);
}
html:not(#_) .aa-main .aa-h2::before, html:not(#_) .aa-side .aa-side__h::before {
  content: ""; position: absolute; left: .55rem; top: 50%; width: 6px; height: 6px; margin-top: -3px;
  background: #f0c08a; transform: rotate(45deg);
}
html:not(#_) .aa-main .aa-h2 a, html:not(#_) .aa-main .aa-h2 * { color: #fff; }
html:not(#_) .aa-layout .aa-side { border-top: 0; }
html:not(#_) .aa-side .aa-side__liste li::before { background: #b35a1f; transform: rotate(45deg); border-radius: 1px; }
html:not(#_) .aa-filtres.aa-filtres { background: #f7ebda; border: 0; border-radius: 16px; padding: 1rem; }
html:not(#_) .aa-filtres select, html:not(#_) .aa-filtres input { border-radius: 10px; border-color: #dcc19c; background: #fffaf3; color: #2a1a10; }
html:not(#_) .aa-liens.aa-liens li { border-bottom: 1px dashed #dcc19c; }
html:not(#_) .aa-liens a { color: #8f4416; }

/* ---------- Lignes d'annonce : bord haut épais, vignette en arche ---------- */
html:not(#_) .aa-liste.aa-liste { border-top: 0; gap: .9rem; }
html:not(#_) .aa-liste .aa-ligne {
  background: #fffaf3; border: 0; border-top: 5px solid #b35a1f; border-radius: 4px 4px 16px 16px;
  padding: .9rem .9rem; box-shadow: 0 10px 22px -18px rgba(107, 49, 16, .8);
  transition: transform .2s ease, box-shadow .2s ease;
}
html:not(#_) .aa-liste .aa-ligne:hover { background: #fffaf3; transform: translateY(-2px); box-shadow: 0 16px 28px -18px rgba(143, 68, 22, .9); }
html:not(#_) .aa-ligne .aa-ligne__img { border-radius: 60px 60px 8px 8px; overflow: hidden; box-shadow: 0 0 0 3px #f3e2cb; }
html:not(#_) .aa-ligne .aa-ligne__img img { transition: transform .35s ease; }
html:not(#_) .aa-ligne:hover .aa-ligne__img img { transform: scale(1.05); }
html:not(#_) .aa-ligne .aa-ligne__titre { font-family: var(--aa-police-titre); color: #2a1a10; }
html:not(#_) .aa-ligne .aa-ligne__titre a { color: #2a1a10; }
html:not(#_) .aa-ligne .aa-ligne__cat { color: #8f4416; letter-spacing: .08em; }
html:not(#_) .aa-ligne .aa-ligne__new { background: #2a1a10; color: #f7d9b4; border-radius: 999px; }
html:not(#_) .aa-ligne .aa-ligne__meta, html:not(#_) .aa-ligne .aa-ligne__date { color: #6a4f3a; }
html:not(#_) .aa-ligne .aa-ligne__extrait { color: #3d2a1d; font-family: var(--aa-police); }
html:not(#_) .aa-ligne .aa-ligne__lire {
  font-style: normal; font-family: var(--aa-police); font-size: .88rem; color: #8f4416;
  border: 1px solid #dcc19c; border-radius: 999px; padding: .35em .95em; background: #fbf0e1;
}
html:not(#_) .aa-ligne .aa-ligne__lire:hover { background: #8f4416; color: #fff; border-color: #8f4416; }
html:not(#_) .aa-pagination a, html:not(#_) .aa-pagination span { border-radius: 999px; }

/* ---------- Fiche d'annonce ---------- */
html:not(#_) .aa-fiche__titre { font-family: var(--aa-police-titre); color: #2a1a10; }
html:not(#_) .aa-page-annonce .aa-fiche__photo { border-radius: 160px 160px 14px 14px / 90px 90px 14px 14px; overflow: hidden; box-shadow: 0 0 0 5px #fffaf3, 0 0 0 6px #e3cdae, var(--aa-ombre); }
html:not(#_) .aa-page-annonce .aa-fiche__miniatures img { border-radius: 30px 30px 6px 6px; }
html:not(#_) .aa-page-annonce .aa-fiche__cta--haut {
  background: #fffaf3; border: 0; border-top: 5px solid #b35a1f; border-radius: 6px 6px 20px 20px;
  padding: 1rem; box-shadow: var(--aa-ombre); text-align: center;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23b35a1f' fill-opacity='.07' d='M12 21s-7.5-4.6-9.6-9.3C.9 8.3 3.1 4.5 6.7 4.5c2.1 0 3.6 1.2 5.3 3 1.7-1.8 3.2-3 5.3-3 3.6 0 5.8 3.8 4.3 7.2C19.5 16.4 12 21 12 21z'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 10px bottom 6px; background-size: 64px;
}
html:not(#_) .aa-page-annonce .aa-fiche__infos { background: #f7ebda; border: 0; border-radius: 14px; }
html:not(#_) .aa-page-annonce .aa-fiche__infos dt { color: #6a4f3a; }
html:not(#_) .aa-page-annonce .aa-fiche__plage { background: #f3dcc0; color: #2a1a10; border-radius: 999px; }
html:not(#_) .aa-page-annonce .aa-fiche__physique dd { background: #fffaf3; border-radius: 10px; }
html:not(#_) .aa-page-annonce .aa-repondre { background: #fffaf3; border: 1px solid #e3cdae; border-radius: 18px; box-shadow: var(--aa-ombre); }
html:not(#_) .aa-page-annonce .aa-repondre input, html:not(#_) .aa-page-annonce .aa-repondre textarea { border-radius: 10px; border-color: #dcc19c; }
html:not(#_) .aa-fiche__barre.aa-fiche__barre { background: rgba(251, 243, 232, .95); border-top: 3px solid #b35a1f; }

/* ---------- Dépôt ---------- */
html:not(#_) .aa-depot__bloc.aa-depot__bloc { background: #fffaf3; border: 1px solid #e3cdae; border-radius: 18px; box-shadow: 0 10px 22px -20px rgba(107, 49, 16, .8); }
html:not(#_) .aa-depot__bloc legend { font-size: .95rem; }
html:not(#_) .aa-depot__bloc input, html:not(#_) .aa-depot__bloc select, html:not(#_) .aa-depot__bloc textarea { border-radius: 10px; border-color: #dcc19c; background: #fffdf8; }

/* ---------- Pop-up et porte d'âge ---------- */
html:not(#_) .aa-popup .aa-popup__box, html:not(#_) .aa-gate .aa-gate__box {
  background: #fffaf3; color: #2a1a10; border: 0; border-top: 6px solid #b35a1f; border-radius: 8px 8px 22px 22px;
  box-shadow: 0 30px 60px -30px rgba(42, 26, 16, .8);
}
html:not(#_) .aa-popup .aa-popup__texte, html:not(#_) .aa-gate p { color: #4a3322; }

/* ---------- Pied de page sur une ligne ---------- */
html:not(#_) .aa-footer.aa-footer {
  background: #33200f; color: #f1e2cc; border-top: 0; text-align: left; padding-block: 1.8rem 1rem; position: relative;
}
html:not(#_) .aa-footer.aa-footer::before {
  content: ""; position: absolute; left: 0; right: 0; top: -10px; height: 10px;
  background:
    linear-gradient(45deg, #33200f 25%, transparent 25%) 0 0 / 20px 10px repeat-x,
    linear-gradient(-45deg, #33200f 25%, transparent 25%) 0 0 / 20px 10px repeat-x;
}
html:not(#_) .aa-footer a { color: #f1e2cc; }
html:not(#_) .aa-footer a:hover { color: #f0b37a; }
html:not(#_) .aa-footer .aa-footer__brand { color: #f7d9b4; font-family: var(--aa-police-titre); font-style: normal; }
html:not(#_) .aa-footer .aa-footer__h { color: #f0b37a; opacity: 1; }
html:not(#_) .aa-footer p, html:not(#_) .aa-footer small { color: #e3cfb4; }
@media (min-width: 900px) {
  html:not(#_) .aa-footer .aa-footer__grid {
    display: flex; flex-wrap: wrap; align-items: baseline; justify-content: center; gap: .6rem 2rem;
  }
  html:not(#_) .aa-footer .aa-footer__col { display: flex; flex-wrap: wrap; align-items: baseline; gap: .3rem .9rem; }
  html:not(#_) .aa-footer .aa-footer__h { margin: 0; }
}
html:not(#_) .aa-footer .aa-footer__bas { border-top-color: rgba(241, 226, 204, .2); color: #e3cfb4; }

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

/* Barre fixe mobile de la fiche : libellés entiers sur deux lignes */
html:not(#_) .aa-fiche__barre .aa-btn.aa-btn {
  border-radius: 14px; text-transform: none; letter-spacing: 0; font-size: .8rem; font-weight: 700;
  padding: .25em .5em; line-height: 1.12; -webkit-line-clamp: 3; min-height: 50px;
}
/* Badge « nouveau » rentré sous l'arche de la photo */
html:not(#_) .aa-fiche__photo .aa-fiche__new { top: auto; bottom: .8rem; right: .8rem; background: #2a1a10; color: #f7d9b4; }
