/* mulheres-para-sexo-brasil.lat — registre « Pelourinho pastel » (façades coloniales de Salvador :
   stuc rose poudré, encadrements blancs, fenêtres en arche). Palette : accent = rose du favicon
   #e0567a (foncé en #b3345a pour porter du blanc), neutre chaud = chaux crème #fff8f1 / plâtre
   #f5e4da, encre = prune #37182a. Formes : cartouches (logo, titres), arches (hero, photos,
   CTA), pilules (nav, chips), cœur SVG en filigrane. */

html:not(#_) body {
  --aa-primaire: #b3345a; --aa-primaire-fonce: #8c2446; --aa-primaire-txt: #fff;
  --aa-rose: #e0567a; --aa-poudre: #f9dde3; --aa-chaux: #fff8f1;
  --aa-page: #f3e2d8; --aa-fond: #fff8f1; --aa-surface: #fffdf9; --aa-surface-2: #fbeee8;
  --aa-bord: #ecd3cb; --aa-texte: #37182a; --aa-muet: #6e4c58; --aa-lien: #a42f53;
  --aa-tete: #f9dde3; --aa-tete-txt: #37182a; --aa-barre: transparent;
  --aa-bande: #b3345a; --aa-bande-txt: #fff; --aa-bande-bord: #8c2446;
  --aa-secondaire: #37182a; --aa-secondaire-txt: #fff;
  --aa-pied: #37182a; --aa-pied-txt: #f1dfe4;
  --aa-rayon: 16px; --aa-rayon-s: 10px;
  --aa-ombre: 0 2px 4px rgba(179, 52, 90, .06), 0 14px 32px -18px rgba(179, 52, 90, .45);
  background-color: var(--aa-page);
  background-image:
    repeating-linear-gradient(90deg, rgba(224, 86, 122, .05) 0 64px, transparent 64px 128px);
}

/* --- en-tête : façade rose poudré, liseré de stuc festonné ------------------------------- */
html:not(#_) .aa-header {
  background: linear-gradient(180deg, #fbe6ea, var(--aa-poudre));
  color: var(--aa-tete-txt); box-shadow: none; padding-bottom: 20px;
  background-image:
    radial-gradient(circle at 12px -2px, var(--aa-page) 11px, transparent 12px),
    linear-gradient(180deg, #fbe6ea, var(--aa-poudre));
  background-size: 24px 12px, 100% 100%;
  background-repeat: repeat-x, no-repeat;
  background-position: 0 100%, 0 0;
}
html:not(#_) .aa-logo {
  background: var(--aa-chaux); border: 2px solid var(--aa-rose);
  box-shadow: inset 0 0 0 3px #fff, inset 0 0 0 4px #f3c9d2, 0 8px 20px -12px rgba(179, 52, 90, .6);
  align-self: center; overflow: visible; margin-block: 2px 4px;
  border-radius: 999px 999px 14px 14px; padding: .45rem 1.1rem .45rem .6rem;
}
html:not(#_) .aa-logo__txt { padding-right: .2em; }
html:not(#_) .aa-logo__mark {
  width: 32px; height: 32px; border-radius: 50%;
  background: var(--aa-primaire) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M12 20s-7-4.4-7-10a4 4 0 0 1 7-2.6A4 4 0 0 1 19 10c0 5.6-7 10-7 10z'/%3E%3C/svg%3E") center / 18px no-repeat;
  box-shadow: 0 0 0 3px var(--aa-poudre);
}
html:not(#_) .aa-logo__txt { color: var(--aa-texte); }
html:not(#_) .aa-logo__sous { color: var(--aa-muet); opacity: 1; }
html:not(#_) .aa-burger { border-color: rgba(55, 24, 42, .3); color: var(--aa-texte); background: var(--aa-chaux); border-radius: 50%; }

@media (min-width: 860px) {
  html:not(#_) .aa-header__in { grid-template-columns: auto minmax(0, 1fr); grid-template-areas: "logo cta" "logo nav"; padding-block: .9rem .2rem; gap: .5rem 1.4rem; }
  html:not(#_) .aa-header__cta { justify-self: end; }
  html:not(#_) .aa-nav { margin: 0; padding: 0; background: none; }
  html:not(#_) .aa-nav ul { justify-content: flex-end; gap: .35rem; }
  html:not(#_) .aa-nav a { border: 1px solid #edbfca; border-radius: 999px; padding: .4rem .72rem; background: rgba(255, 255, 255, .7); color: var(--aa-texte); font-size: .84rem; gap: 0; }
  html:not(#_) .aa-nav a .aa-ico { display: none; }
  html:not(#_) .aa-nav a:hover { background: #fff; border-color: var(--aa-rose); }
  html:not(#_) .aa-nav a.is-actif { background: var(--aa-primaire); color: #fff; border-color: var(--aa-primaire); }
}
@media (max-width: 859px) {
  html:not(#_) .aa-nav { background: var(--aa-chaux); border: 1px solid var(--aa-bord); box-shadow: var(--aa-ombre); margin-inline: 0; }
  html:not(#_) .aa-nav a { color: var(--aa-texte); }
  html:not(#_) .aa-nav a.is-actif { background: var(--aa-poudre); color: var(--aa-texte); }
  html:not(#_) .aa-logo { padding: .35rem .8rem .35rem .45rem; min-width: 0; }
}
html:not(#_) .aa-header__cta, html:not(#_) .aa-btn--primaire { border-radius: 999px; box-shadow: 0 8px 18px -10px rgba(179, 52, 90, .8); }

/* --- conteneur : mur de chaux ------------------------------------------------------------- */
html:not(#_) .aa-main > .aa-wrap { border-radius: 22px; border-color: var(--aa-bord); box-shadow: var(--aa-ombre); }

/* --- hero : fenêtre en arche + cœur en filigrane ------------------------------------------ */
html:not(#_) .aa-hero {
  border: 2px solid #f0c3cd; border-left-width: 2px; border-radius: 120px 120px 18px 18px / 70px 70px 18px 18px;
  padding: 1.6rem 1.4rem 1.2rem; text-align: center;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23e0567a' fill-opacity='.09' d='M12 20s-7-4.4-7-10a4 4 0 0 1 7-2.6A4 4 0 0 1 19 10c0 5.6-7 10-7 10z'/%3E%3C/svg%3E") right -20px bottom -30px / 170px no-repeat,
    linear-gradient(180deg, #fde9ed, var(--aa-surface) 75%);
  box-shadow: inset 0 0 0 6px #fff, 0 12px 28px -20px rgba(179, 52, 90, .7);
}
html:not(#_) .aa-hero__chiffres { justify-content: center; }
html:not(#_) .aa-hero__chiffres span { background: #fff; color: var(--aa-primaire-fonce); border-color: #f0c3cd; }

/* --- titres de section : cartouches -------------------------------------------------------- */
html:not(#_) .aa-h2, html:not(#_) .aa-side__h, html:not(#_) .aa-bande, html:not(#_) .aa-depot__bloc legend {
  background: var(--aa-primaire); color: #fff; border: 0; border-radius: 18px;
  box-shadow: 0 0 0 3px var(--aa-chaux), 0 0 0 4px #efb6c3;
  padding-inline: 1rem;
}
html:not(#_) .aa-bande a, html:not(#_) .aa-bande__droite { color: #fff; }
@media (max-width: 759px) {
  html:not(#_) .aa-bloc__tete { flex-wrap: wrap; row-gap: .5rem; }
  html:not(#_) .aa-bloc__tete > .aa-h2 { flex: 1 1 100%; }
}

/* --- lignes d'annonce : cartes larges, photo en arche à gauche ----------------------------- */
html:not(#_) .aa-liste { border-top: 0; gap: .8rem; }
html:not(#_) .aa-ligne {
  background: var(--aa-surface); border: 1px solid var(--aa-bord); border-radius: 18px;
  padding: .8rem; box-shadow: 0 10px 24px -20px rgba(179, 52, 90, .7);
  transition: transform .2s ease, box-shadow .2s ease;
}
html:not(#_) .aa-ligne:hover { background: #fff; transform: translateY(-2px); box-shadow: 0 16px 30px -18px rgba(179, 52, 90, .6); }
html:not(#_) .aa-ligne__img { border-radius: 60px 60px 10px 10px; border: 2px solid #f3c9d2; padding: 3px; background: #fff; }
html:not(#_) .aa-ligne__img img { border-radius: 56px 56px 7px 7px; }
html:not(#_) .aa-ligne__titre a, html:not(#_) .aa-ligne__titre { color: var(--aa-lien); }
html:not(#_) .aa-ligne__cat { color: var(--aa-primaire-fonce); }
html:not(#_) .aa-ligne__new, html:not(#_) .aa-fiche__new { border-radius: 999px; }
html:not(#_) .aa-ligne__lire, html:not(#_) .aa-ligne__action .aa-btn { border-radius: 999px; }
@media (min-width: 760px) {
  html:not(#_) .aa-ligne { padding: 1rem 1.1rem; }
  html:not(#_) .aa-ligne__img { width: 132px; }
  html:not(#_) .aa-ligne { grid-template-columns: 132px minmax(0, 1fr) auto; }
}

/* --- colonne latérale : panneaux de stuc ---------------------------------------------------- */
html:not(#_) .aa-side > * { border-radius: 18px; }
html:not(#_) .aa-side__liste li::before { background: var(--aa-rose); border-radius: 50%; transform: none; }
html:not(#_) .aa-chip, html:not(#_) .aa-liens a { border-radius: 999px; }
html:not(#_) .aa-filtres select, html:not(#_) .aa-form input, html:not(#_) .aa-form select, html:not(#_) .aa-form textarea { border-radius: 12px; border-color: #e5c7c6; }

/* --- fiche : photo en arche, CTA stylés sans bouger ----------------------------------------- */
html:not(#_) .aa-fiche__photo { border-radius: 160px 160px 18px 18px / 110px 110px 18px 18px; border: 2px solid #f0c3cd; box-shadow: inset 0 0 0 5px #fff, 0 16px 30px -20px rgba(179, 52, 90, .7); padding: 6px; }
html:not(#_) .aa-fiche__img { border-radius: 150px 150px 12px 12px / 100px 100px 12px 12px; }
html:not(#_) .aa-fiche__miniatures img, html:not(#_) .aa-fiche__miniatures a { border-radius: 30px 30px 8px 8px; }
html:not(#_) .aa-fiche__identite { border-radius: 16px; overflow: hidden; }
html:not(#_) .aa-fiche__titre { color: var(--aa-texte); }
html:not(#_) .aa-fiche__cta .aa-btn, html:not(#_) .aa-fiche__barre .aa-btn, html:not(#_) .aa-mobar .aa-btn { border-radius: 999px; }
html:not(#_) .aa-btn--secondaire { border-radius: 999px; }
html:not(#_) .aa-repondre, html:not(#_) .aa-deposer-cta, html:not(#_) .aa-tchat {
  border-radius: 90px 90px 18px 18px / 50px 50px 18px 18px; border-color: #f0c3cd;
  background: linear-gradient(180deg, #fdebef, var(--aa-surface) 60%);
}
html:not(#_) .aa-fiche__phy, html:not(#_) .aa-fiche__plage { border-radius: 14px; }

/* --- dépôt ---------------------------------------------------------------------------------- */
html:not(#_) .aa-depot__bloc { border-radius: 18px; border-color: var(--aa-bord); }

/* --- pied : deux blocs, cartouche de marque puis colonnes de liens --------------------------- */
html:not(#_) .aa-footer { border-top: 0; margin-top: 2rem; position: relative; }
html:not(#_) .aa-footer::before {
  content: ""; display: block; height: 12px;
  background: radial-gradient(circle at 12px 14px, var(--aa-pied) 11px, transparent 12px) 0 0 / 24px 12px repeat-x;
  margin-top: -12px;
}
html:not(#_) .aa-footer a:hover { color: #fff; }
html:not(#_) .aa-footer__col--marque {
  grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: .3rem 1.2rem;
  background: rgba(249, 221, 227, .1); border: 1px solid rgba(249, 221, 227, .28);
  border-radius: 999px 999px 18px 18px / 80px 80px 18px 18px; padding: 1rem 1.6rem;
}
html:not(#_) .aa-footer__col--marque p { margin: 0; }
html:not(#_) .aa-footer__brand .aa-logo__mark { background-size: 13px; box-shadow: none; }
html:not(#_) .aa-footer__fictif { opacity: .85; flex-basis: 100%; }
html:not(#_) .aa-footer__h { color: #fff; border-bottom-color: rgba(224, 86, 122, .5); }
@media (min-width: 760px) {
  html:not(#_) .aa-footer__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

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