/* contactos-sexuales.es — registre « hórreo y castaño » : le grenier galicien sur piliers.
   Lames de châtaignier à fentes d'aération (en-tête, pied, liserés), pignon à tuiles au-dessus des
   cartes d'action, piliers de granit coiffés de leurs disques (tornarratos) sous le formulaire,
   photos en fenêtre cintrée, châtaigne en médaillon.
   Palette : accent châtaigne #4e342e (favicon) · bois sombre #3b2620 · encre #2b1c17 ·
   neutre chaud lin/granit #f4ece2 / #fffaf4 · granit #d8cdbf (décor) · crème bois #f7ebdd (texte sur bois). */

html:not(#_) body.aa {
  --aa-primaire: #4e342e; --aa-primaire-txt: #fff;
  --aa-fond: #f4ece2; --aa-surface: #fffaf4;
  --aa-texte: #2b1c17; --aa-muet: #6a5348; --aa-bord: #e6d8c8;
  --aa-secondaire: #4e342e; --aa-secondaire-txt: #fff;
  --aa-tete: #3b2620; --aa-tete-txt: #f7ebdd; --aa-pied: #3b2620; --aa-pied-txt: #f7ebdd;
  --aa-rayon: 16px; --aa-rayon-s: 12px;
  --aa-ombre: 0 2px 5px rgba(78, 52, 46, .07), 0 18px 34px -22px rgba(78, 52, 46, .6);
  --aa-police: "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif;
  --aa-police-titre: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
  --hc-bois: #3b2620; --hc-castano: #4e342e; --hc-claro: #a1887f; --hc-granito: #d8cdbf; --hc-crema: #f7ebdd;
  --hc-lamas: repeating-linear-gradient(90deg, #4e342e 0 13px, #2e1d18 13px 15px, #553a33 15px 28px, #2e1d18 28px 30px);
  --hc-veta: linear-gradient(180deg, rgba(255, 235, 215, .07), rgba(0, 0, 0, .12));
  --hc-tejas: radial-gradient(circle at 50% 0, #2e1d18 0 9px, transparent 9.6px) 0 0 / 20px 10px repeat-x;
  --hc-motas: radial-gradient(circle at 20% 30%, rgba(78, 52, 46, .07) 0 1px, transparent 1.6px) 0 0 / 11px 11px,
    radial-gradient(circle at 70% 60%, rgba(120, 104, 92, .09) 0 1.2px, transparent 1.8px) 0 0 / 17px 17px;
  --hc-castana: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M20 5c3 4 13 8 13 19 0 7-6 11-13 11S7 31 7 24C7 13 17 9 20 5z' fill='%23794f43'/%3E%3Cpath d='M8.5 27c3 3 7 4 11.5 4s8.5-1 11.5-4c-.6 5-5.4 8-11.5 8S9 32 8.5 27z' fill='%23e9d6c2'/%3E%3Cpath d='M15 12c-2 3-3 6-3 10' stroke='%23c49a88' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  --hc-tejado: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 16'%3E%3Cpath d='M1 9 11 2l10 7' fill='none' stroke='%234e342e' stroke-width='2.4' stroke-linejoin='round' stroke-linecap='round'/%3E%3Cpath d='M4 9v6h14V9' fill='none' stroke='%234e342e' stroke-width='2'/%3E%3Cpath d='M8 10v4M11 10v4M14 10v4' stroke='%23a1887f' stroke-width='1.6'/%3E%3C/svg%3E");
  background: var(--hc-motas), linear-gradient(180deg, #efe4d6 0, #f4ece2 420px);
  color: var(--aa-texte);
}

/* ---- en-tête : la façade de lames, rive de tuiles dessous ---- */
html:not(#_) .aa-header { background: var(--hc-veta), var(--hc-lamas); color: var(--hc-crema); padding: 0; border: 0;
  box-shadow: 0 10px 22px -14px rgba(46, 29, 24, .8); }
html:not(#_) .aa-header::after { content: ""; position: absolute; left: 0; right: 0; bottom: -9px; height: 10px; background: var(--hc-tejas); pointer-events: none; }
html:not(#_) .aa-header .aa-header__in { background: none; backdrop-filter: none; border-radius: 0; box-shadow: none; min-height: 64px; padding: .3rem var(--aa-gout); }
html:not(#_) .aa-header .aa-logo { color: var(--hc-crema); font-style: normal; font-weight: 700; font-size: 1.3rem; }
html:not(#_) .aa-logo .aa-logo__mark { width: 36px; height: 36px; border-radius: 50%; background: var(--hc-castana) center / 26px no-repeat, var(--hc-crema);
  box-shadow: 0 0 0 2px var(--hc-bois), 0 0 0 4px var(--hc-claro); }
html:not(#_) .aa-header .aa-nav a { color: var(--hc-crema); border-radius: 999px; }
html:not(#_) .aa-header .aa-nav a:hover, html:not(#_) .aa-header .aa-nav a.is-actif { background: rgba(247, 235, 221, .14); }
html:not(#_) .aa-header .aa-nav__cta a { background: var(--hc-crema); color: var(--hc-bois) !important; box-shadow: 0 6px 14px -8px rgba(0, 0, 0, .6); }
html:not(#_) .aa-header .aa-burger { color: var(--hc-crema); }
@media (max-width: 800px) {
  html:not(#_) .aa-header .aa-nav { background: var(--hc-bois); border: 0; border-radius: 0 0 22px 22px; left: 0; right: 0; top: calc(100% + 9px); box-shadow: 0 18px 30px -16px rgba(46, 29, 24, .9); }
  html:not(#_) .aa-header .aa-nav a { color: var(--hc-crema); }
}

/* ---- accueil : texte + formulaire posé sur ses piliers, sous son pignon ---- */
html:not(#_) .aa-hero { background: none; padding-top: 2.6rem; }
html:not(#_) .aa-hero .aa-h1 { color: var(--hc-bois); font-weight: 700; letter-spacing: -.015em; }
html:not(#_) .aa-hero .aa-intro { color: var(--aa-muet); }
html:not(#_) .aa-hero .aa-hero__chiffres { display: inline-block; color: var(--hc-castano); background: var(--aa-surface); padding: .35rem .9rem; border-radius: 999px; box-shadow: var(--aa-ombre); }
html:not(#_) .aa-hero .aa-hero__form { position: relative; margin: 46px 0 58px; border: 0; border-radius: 6px 6px 18px 18px; padding: 1.5rem 1.4rem 1.4rem;
  background: var(--aa-surface); box-shadow: inset 0 6px 0 var(--hc-castano), var(--aa-ombre); }
html:not(#_) .aa-hero .aa-hero__form::before { content: ""; position: absolute; left: -12px; right: -12px; top: -42px; height: 44px;
  background: var(--hc-tejas), repeating-linear-gradient(90deg, transparent 0 18px, rgba(0, 0, 0, .14) 18px 20px), linear-gradient(var(--hc-castano), var(--hc-bois));
  background-position: 0 100%, 0 0, 0 0; clip-path: polygon(0 100%, 50% 0, 100% 100%); }
html:not(#_) .aa-hero .aa-hero__form::after { content: ""; position: absolute; left: 16%; right: 16%; bottom: -54px; height: 52px; pointer-events: none;
  background:
    radial-gradient(ellipse 34px 8px at 12% 8px, #c4b5a3 98%, transparent) no-repeat,
    radial-gradient(ellipse 34px 8px at 88% 8px, #c4b5a3 98%, transparent) no-repeat,
    linear-gradient(#cfc2b2, #b9ab9a) 9% 14px / 22px 38px no-repeat,
    linear-gradient(#cfc2b2, #b9ab9a) 91% 14px / 22px 38px no-repeat;
  filter: drop-shadow(0 6px 4px rgba(78, 52, 46, .25)); }
html:not(#_) .aa-hero .aa-hero__form-h { color: var(--hc-bois); font-weight: 700; }
html:not(#_) .aa-hero__form .aa-btn--primaire { box-shadow: 0 10px 18px -10px rgba(78, 52, 46, .8); }

/* ---- titres de section : petit pignon devant ---- */
html:not(#_) .aa-main .aa-h2 { font-family: var(--aa-police-titre); color: var(--hc-bois); font-weight: 700; }
html:not(#_) .aa-bloc .aa-bloc__tete .aa-h2::before, html:not(#_) .aa-bloc > .aa-h2::before { content: ""; display: inline-block; width: 26px; height: 19px; margin-right: .45rem; vertical-align: -2px; background: var(--hc-tejado) center / contain no-repeat; }
html:not(#_) .aa-bloc .aa-bloc__tete a { color: var(--hc-castano); font-weight: 700; }

/* ---- lignes d'annonce : planche à lames + fenêtre cintrée ---- */
html:not(#_) .aa-liste { gap: 1rem; }
html:not(#_) .aa-liste .aa-ligne { border: 0; border-radius: 6px 18px 18px 6px; padding: .8rem .9rem .8rem 1.35rem; background: var(--aa-surface);
  box-shadow: var(--aa-ombre); overflow: hidden; }
html:not(#_) .aa-liste .aa-ligne::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 9px; background: var(--hc-veta), var(--hc-lamas); }
html:not(#_) .aa-liste .aa-ligne:hover { transform: translateY(-2px); box-shadow: 0 2px 5px rgba(78, 52, 46, .08), 0 24px 40px -22px rgba(78, 52, 46, .75); }
html:not(#_) .aa-liste .aa-ligne__img { border-radius: 999px 999px 10px 10px; box-shadow: 0 0 0 3px var(--hc-crema), 0 0 0 4px var(--hc-granito); }
html:not(#_) .aa-liste .aa-ligne:hover .aa-ligne__img img { transform: scale(1.05); }
html:not(#_) .aa-liste .aa-ligne__cat { background: var(--hc-crema); color: var(--hc-bois); border: 1px solid #e3cfbb; border-radius: 4px; padding: .15rem .55rem; letter-spacing: .06em; font-size: .64rem; }
html:not(#_) .aa-liste .aa-ligne__new { background: var(--hc-castano); color: #fff; border-radius: 4px; }
html:not(#_) .aa-liste .aa-ligne__titre { font-family: var(--aa-police-titre); font-weight: 700; color: var(--aa-texte); }
html:not(#_) .aa-liste .aa-ligne__titre a { color: var(--aa-texte); }
html:not(#_) .aa-liste .aa-ligne__meta, html:not(#_) .aa-liste .aa-ligne__date { color: var(--aa-muet); }
html:not(#_) .aa-liste .aa-ligne__extrait { color: #4a362e; }
html:not(#_) .aa-liste .aa-ligne__lire { background: var(--aa-surface); color: var(--hc-castano); border: 2px solid var(--hc-castano); border-radius: 999px; box-shadow: none; }
html:not(#_) .aa-liste .aa-ligne__lire:hover { background: var(--hc-castano); color: #fff; }

/* ---- régions et villes : pierres de granit ; catégories : chevilles de bois ---- */
html:not(#_) .aa-liens li { background: var(--hc-motas), #fbf5ed; border: 1px solid #e3d6c6; border-radius: 10px; box-shadow: 0 3px 0 #e2d5c5; }
html:not(#_) .aa-liens li a { color: var(--aa-texte); font-weight: 600; }
html:not(#_) .aa-liens li .aa-liens__nb { color: var(--hc-castano); font-weight: 700; }
html:not(#_) .aa-liens.aa-liens--cats li { background: var(--hc-castano); border-color: var(--hc-castano); box-shadow: 0 6px 14px -8px rgba(78, 52, 46, .8); border-radius: 999px; }
html:not(#_) .aa-liens.aa-liens--cats li a { color: #fff; }
html:not(#_) .aa-liens.aa-liens--cats li .aa-liens__nb { color: var(--hc-castano); background: var(--hc-crema); border-radius: 999px; padding: 0 .45rem; }

/* ---- filtres, encadrés, réponse, dépôt : faîtage de châtaignier ---- */
html:not(#_) body.aa .aa-filtres, html:not(#_) body.aa .aa-side, html:not(#_) body.aa .aa-repondre, html:not(#_) body.aa .aa-depot__bloc, html:not(#_) body.aa .aa-fiche__infos, html:not(#_) body.aa .aa-vide {
  border: 0; border-radius: 6px 6px 16px 16px; background: var(--aa-surface); box-shadow: inset 0 5px 0 var(--hc-castano), var(--aa-ombre); }
html:not(#_) body.aa .aa-filtres { padding-top: 1.2rem; }
html:not(#_) .aa-side .aa-side__h { color: var(--hc-bois); font-family: var(--aa-police-titre); font-style: normal; font-weight: 700; text-transform: none; letter-spacing: 0; font-size: 1.05rem; padding-top: .3rem; }
html:not(#_) .aa-side .aa-side__liste a { color: var(--aa-texte); }
html:not(#_) .aa-side .aa-side__nb { color: var(--hc-castano); font-weight: 700; }
html:not(#_) body.aa .aa-depot__bloc { padding-top: 1.4rem; }
html:not(#_) .aa-depot__bloc legend { color: var(--hc-bois); background: var(--hc-crema); border-radius: 999px; padding: .2rem .8rem; font-size: .95rem; }
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: #fdf8f2; border: 1px solid #e3d4c3; border-radius: 10px; color: var(--aa-texte); }
html:not(#_) body.aa .aa-chip { background: #fdf8f2; border-color: #e3d4c3; color: var(--aa-texte); }
html:not(#_) body.aa .aa-chip:has(input:checked) { background: var(--hc-crema); border-color: var(--hc-castano); color: var(--hc-bois); }
html:not(#_) body.aa .aa-btn.aa-btn--secondaire { background: var(--hc-crema); color: var(--hc-bois); border-color: transparent; }
html:not(#_) .aa-crumbs ol, html:not(#_) .aa-crumbs a { color: var(--aa-muet); }

/* ---- fiche d'annonce : fenêtre cintrée, carte d'action sous faîtage ---- */
html:not(#_) .aa-fiche .aa-fiche__photo { border-radius: 160px 160px 18px 18px; box-shadow: 0 0 0 5px var(--aa-surface), 0 0 0 6px var(--hc-granito), var(--aa-ombre); }
html:not(#_) .aa-fiche .aa-fiche__photo .aa-fiche__new { top: auto; right: auto; bottom: 14px; left: 50%; transform: translateX(-50%); background: var(--hc-castano); color: #fff; }
html:not(#_) .aa-fiche .aa-fiche__photo img { transition: transform .5s ease; }
html:not(#_) .aa-fiche .aa-fiche__photo:hover img { transform: scale(1.03); }
html:not(#_) .aa-fiche .aa-fiche__titre { font-family: var(--aa-police-titre); color: var(--hc-bois); }
html:not(#_) .aa-fiche .aa-fiche__cat { color: var(--hc-castano); letter-spacing: .08em; }
html:not(#_) .aa-fiche .aa-fiche__cta--haut { border: 0; border-radius: 6px 6px 18px 18px; background: var(--aa-surface); padding: 1.1rem 1rem 1rem;
  box-shadow: inset 0 6px 0 var(--hc-castano), var(--aa-ombre); }
html:not(#_) .aa-fiche .aa-fiche__cta--haut .aa-btn--primaire { box-shadow: 0 10px 18px -10px rgba(78, 52, 46, .8); }
html:not(#_) .aa-fiche .aa-fiche__plage { background: var(--hc-crema); color: var(--hc-bois); border-radius: 999px; }
html:not(#_) .aa-fiche .aa-fiche__phy { background: var(--hc-motas), #fbf5ed; border-color: #e3d6c6; color: var(--aa-texte); border-radius: 10px; }
html:not(#_) .aa-fiche .aa-chips li { background: var(--hc-crema); border-color: #e3cfbb; color: var(--hc-bois); }
html:not(#_) body.aa .aa-fiche__barre { background: rgba(255, 250, 244, .95); box-shadow: 0 -8px 22px -12px rgba(78, 52, 46, .6); }

/* ---- appel « poner mi anuncio » : carte centrée sous son pignon ---- */
html:not(#_) .aa-main .aa-bloc--deposer { display: flex; justify-content: center; padding-top: 2.4rem; }
html:not(#_) .aa-bloc--deposer .aa-deposer-cta { position: relative; background: var(--aa-surface); padding: 1.6rem 2.6rem; border-radius: 6px 6px 18px 18px;
  box-shadow: inset 0 6px 0 var(--hc-castano), var(--aa-ombre); text-align: center; }
html:not(#_) .aa-bloc--deposer .aa-deposer-cta::before { content: ""; position: absolute; left: -10px; right: -10px; top: -32px; height: 34px;
  background: var(--hc-tejas), linear-gradient(var(--hc-castano), var(--hc-bois));
  background-position: 0 100%, 0 0; clip-path: polygon(0 100%, 50% 0, 100% 100%); }
html:not(#_) .aa-bloc--deposer .aa-deposer-cta .aa-btn { background: var(--hc-castano); color: #fff; }

/* ---- pied : le grenier vu de face, rive de tuiles au-dessus ---- */
html:not(#_) body.aa .aa-footer { position: relative; background: var(--hc-veta), var(--hc-lamas); color: var(--hc-crema); padding: 2.4rem 0 1rem; margin-top: 3.5rem; }
html:not(#_) body.aa .aa-footer::before { content: ""; position: absolute; left: 0; right: 0; top: -10px; height: 10px; background: radial-gradient(circle at 50% 100%, #2e1d18 0 9px, transparent 9.6px) 0 0 / 20px 10px repeat-x; }
html:not(#_) .aa-footer .aa-footer__grid, html:not(#_) .aa-footer .aa-footer__bas { background: rgba(46, 29, 24, .8); box-shadow: none; border-radius: 18px; padding: 1.6rem; }
html:not(#_) .aa-footer .aa-footer__bas { margin-top: .8rem; padding: .9rem 1.6rem; border-radius: 999px; opacity: 1; border: 0; }
html:not(#_) .aa-footer a, html:not(#_) .aa-footer p, html:not(#_) .aa-footer span { color: var(--hc-crema); }
html:not(#_) .aa-footer .aa-footer__h, html:not(#_) .aa-footer .aa-footer__brand { color: #fff; font-style: normal; }
html:not(#_) .aa-footer .aa-footer__fictif { opacity: 1; color: #e3d2c2; }

/* ---- porte d'âge / pop-up ---- */
html:not(#_) .aa-gate .aa-gate__box, html:not(#_) .aa-popup .aa-popup__box { border-radius: 6px 6px 22px 22px; box-shadow: inset 0 7px 0 var(--hc-castano), 0 30px 60px -20px rgba(0, 0, 0, .6); }
html:not(#_) body.aa .aa-gate { background: rgba(46, 29, 24, .82); }

@media (max-width: 719px) {
  html:not(#_) .aa-liste .aa-ligne { padding-left: 1.15rem; }
  html:not(#_) .aa-hero .aa-hero__form { margin-inline: 6px; }
  html:not(#_) .aa-bloc--deposer .aa-deposer-cta { padding: 1.4rem; }
}
@media (prefers-reduced-motion: reduce) {
  html:not(#_) .aa-liste .aa-ligne, html:not(#_) .aa-ligne__img img, html:not(#_) .aa-fiche__photo img { transition: none; }
}
