/* =====================================================================
   private-sextreffen-anzeigen.de — habillage « crème & rose poudré, arches »
   Gabarit annoncesastro (skin-1 éditorial, compo-2, fiche-1). Palette depuis le favicon #d81b60 :
     accent   #d81b60 (framboise du favicon)         → liens, CTA, marques
     rose     color-mix(accent 11 %, crème)           → lavis, pilules, cartes douces (rose poudré)
     crème    #fff8f1 (neutre chaud)                  → fond de page ; surfaces #fffdfa
     encre    #3a1f2b (prune profonde)                → texte courant, titres serif
   Formes signature : (1) photos et vignettes en ARCHE (demi-cercle en haut), (2) cartes à toit en
   arche (formulaire du hero, CTA de dépôt, pop-up, porte d'âge), (3) frise de FESTONS (rangée de
   demi-cercles) sous l'en-tête et au-dessus du pied de page, (4) cœur SVG en filigrane sur la carte
   CTA de la fiche. Ombres douces teintées framboise, zoom doux des photos au survol.
   Toutes les règles sont préfixées `html:not(#_) .aa` (1,1,0+) pour passer devant `.skin-1 .aa-*`
   sans !important ; aucune `position` posée sur la barre mobile ni sur la porte de consentement.
   ===================================================================== */

html:not(#_) .aa.skin-1 {
  --ps-creme: #fff8f1;
  --ps-surface: #fffdfa;
  --ps-rose: color-mix(in srgb, var(--aa-accent) 11%, #fff8f1);
  --ps-rose-2: color-mix(in srgb, var(--aa-accent) 22%, #fff3ec);
  --ps-rose-3: color-mix(in srgb, var(--aa-accent) 36%, #fbe9ee);
  --ps-encre: #3a1f2b;
  --ps-accent-txt: color-mix(in srgb, var(--aa-accent) 78%, #3a1f2b); /* framboise assombrie pour le TEXTE : ≥ 4,9:1 sur rose et pied */
  --ps-ombre: 0 14px 34px -18px color-mix(in srgb, var(--aa-accent) 55%, transparent), 0 2px 6px -3px color-mix(in srgb, var(--aa-accent) 25%, transparent);
  --ps-ombre-l: 0 24px 50px -24px color-mix(in srgb, var(--aa-accent) 50%, transparent);
  --aa-fond: var(--ps-creme);
  --aa-surface: var(--ps-surface);
  --aa-texte: var(--ps-encre);
  --aa-muet: #7a5464;
  --aa-bord: var(--ps-rose-2);
  --aa-secondaire: #5a2740;
  --aa-secondaire-txt: #fff;
  --aa-rayon: 18px; --aa-rayon-s: 12px;
  --aa-ombre: var(--ps-ombre);
  --aa-police: "Segoe UI", system-ui, -apple-system, Roboto, sans-serif;
  --aa-police-titre: Georgia, "Times New Roman", Times, serif;
  --aa-tete: #fffdfa; --aa-tete-txt: var(--ps-encre);
  --aa-pied: color-mix(in srgb, var(--aa-accent) 13%, #fff4ee); --aa-pied-txt: var(--ps-encre);
  --aa-max: 1120px;
}
html:not(#_) .aa.skin-1 h1, html:not(#_) .aa.skin-1 h2, html:not(#_) .aa.skin-1 h3 { color: var(--ps-encre); }
/* liens nus (sans classe : infos de fiche, en-tête de fiche…) — jamais les .aa-btn, qui gardent leur couleur */
html:not(#_) .aa .aa-main a:not([class]) { color: var(--ps-accent-txt); }
html:not(#_) .aa .aa-main a:not([class]):hover { color: var(--ps-encre); }

/* --- en-tête : logo centré, marque en arche, festons sous la barre ------------------------- */
html:not(#_) .aa .aa-header { position: sticky; border-bottom: 1px solid var(--ps-rose-2); box-shadow: 0 6px 24px -20px color-mix(in srgb, var(--aa-accent) 50%, transparent); }
html:not(#_) .aa .aa-header::after { content: ""; position: absolute; left: 0; right: 0; bottom: -9px; height: 9px; z-index: -1; pointer-events: none;
  background: radial-gradient(circle at 50% 0, var(--aa-tete) 0 7px, transparent 7.8px) 0 0 / 16px 9px repeat-x; }
html:not(#_) .aa .aa-logo { font-family: var(--aa-police-titre); font-weight: 700; letter-spacing: 0; color: var(--ps-encre); gap: .6rem; }
html:not(#_) .aa .aa-logo__mark { width: 14px; height: 19px; border-radius: 7px 7px 3px 3px; transform: none; background: linear-gradient(180deg, var(--aa-accent), color-mix(in srgb, var(--aa-accent) 70%, #5a2740)); box-shadow: 0 0 0 4px var(--ps-rose); }
html:not(#_) .aa .aa-burger { border-radius: 12px; color: var(--ps-encre); }
html:not(#_) .aa .aa-burger:hover { background: var(--ps-rose); }
@media (min-width: 801px) {
  html:not(#_) .aa .aa-header__in { padding-block: .9rem .1rem; }
  html:not(#_) .aa .aa-logo { font-size: 1.85rem; }
  html:not(#_) .aa .aa-nav { border-top: 0; }
  html:not(#_) .aa .aa-nav ul { gap: .2rem; align-items: end; }
  html:not(#_) .aa .aa-nav a { text-transform: none; letter-spacing: 0; font-size: .92rem; font-weight: 600; font-family: var(--aa-police); color: var(--ps-encre); padding: .55rem .95rem .6rem; border: 0; border-radius: 16px 16px 0 0; background: transparent; transition: background-color .18s ease, color .18s ease; }
  html:not(#_) .aa .aa-nav a:hover, html:not(#_) .aa .aa-nav a.is-actif { background: var(--ps-rose); color: var(--ps-accent-txt); border-bottom-color: transparent; }
  html:not(#_) .aa .aa-nav__cta a { background: var(--aa-accent); color: #fff; border-radius: 14px 14px 4px 4px; padding: .55rem 1.1rem .6rem; margin-left: .6rem; box-shadow: var(--ps-ombre); }
  html:not(#_) .aa .aa-nav__cta a:hover { background: color-mix(in srgb, var(--aa-accent) 85%, #5a2740); color: #fff; }
}
@media (max-width: 800px) {
  html:not(#_) .aa .aa-logo { font-size: 1.3rem; }
  html:not(#_) .aa .aa-nav { background: var(--aa-tete); border-bottom: 1px solid var(--ps-rose-2); border-radius: 0 0 26px 26px; box-shadow: var(--ps-ombre-l); padding-bottom: 1.2rem; }
  html:not(#_) .aa .aa-nav a { border-radius: 12px; color: var(--ps-encre); }
  html:not(#_) .aa .aa-nav a:hover, html:not(#_) .aa .aa-nav a.is-actif { background: var(--ps-rose); color: var(--ps-accent-txt); }
  html:not(#_) .aa .aa-nav__cta a { background: var(--aa-accent); color: #fff; border-radius: 14px; }
}

/* --- boutons : angles doux, ombre framboise ------------------------------------------------ */
html:not(#_) .aa .aa-btn { font-family: var(--aa-police); text-transform: none; letter-spacing: 0; font-size: .97rem; font-weight: 700; border-radius: 14px; min-height: 46px; }
html:not(#_) .aa .aa-btn--primaire { background: linear-gradient(180deg, color-mix(in srgb, var(--aa-accent) 92%, #fff), var(--aa-accent)); color: #fff; box-shadow: var(--ps-ombre); }
html:not(#_) .aa .aa-btn--primaire:hover { filter: none; background: color-mix(in srgb, var(--aa-accent) 86%, #5a2740); box-shadow: 0 16px 30px -14px color-mix(in srgb, var(--aa-accent) 70%, transparent); }
html:not(#_) .aa .aa-btn--secondaire { background: var(--ps-surface); color: var(--aa-secondaire); border: 2px solid var(--ps-rose-3); }
html:not(#_) .aa .aa-btn--secondaire:hover { border-color: var(--aa-accent); color: var(--ps-accent-txt); filter: none; }

/* --- hero : lavis rose, grande arche en fond, formulaire à toit en arche -------------------- */
html:not(#_) .aa .aa-hero { position: relative; overflow: hidden; border-bottom: 0; text-align: center; padding-block: 2.6rem 2.4rem; margin-top: -1.2rem;
  background: linear-gradient(180deg, var(--ps-rose) 0, var(--ps-creme) 100%); }
html:not(#_) .aa .aa-hero::before { content: ""; position: absolute; left: 50%; bottom: -40px; width: min(92vw, 760px); height: min(92vw, 760px); transform: translateX(-50%); border-radius: 50% 50% 0 0;
  background: radial-gradient(60% 60% at 50% 100%, color-mix(in srgb, var(--aa-accent) 8%, transparent), transparent 70%), linear-gradient(180deg, color-mix(in srgb, var(--ps-rose-2) 65%, transparent), color-mix(in srgb, var(--ps-rose-2) 25%, transparent) 75%, transparent); pointer-events: none; z-index: 0; }
html:not(#_) .aa .aa-hero__in { position: relative; z-index: 1; grid-template-columns: 1fr; justify-items: center; gap: 1.6rem; }
html:not(#_) .aa .aa-hero .aa-h1 { font-size: clamp(1.7rem, 1.2rem + 2.4vw, 2.7rem); font-weight: 700; letter-spacing: -.01em; line-height: 1.15; }
html:not(#_) .aa .aa-hero .aa-intro { color: var(--aa-muet); }
html:not(#_) .aa .aa-hero__chiffres { display: inline-block; background: var(--ps-surface); color: var(--ps-accent-txt); border: 1px solid var(--ps-rose-2); border-radius: 999px; padding: .35rem 1rem; font-size: .9rem; font-weight: 700; }
html:not(#_) .aa .aa-hero__form { width: min(100%, 560px); background: var(--ps-surface); border: 1px solid var(--ps-rose-2); border-radius: 150px 150px 26px 26px; padding: 3.2rem 1.6rem 1.5rem; box-shadow: var(--ps-ombre-l); gap: .7rem; }
html:not(#_) .aa .aa-hero__form-h { font-size: 1.25rem; color: var(--ps-encre); }
html:not(#_) .aa .aa-hero__form-p { color: var(--aa-muet); }
html:not(#_) .aa .aa-hero__form .aa-chips { justify-content: center; }
html:not(#_) .aa .aa-hero__form .aa-form__aide { color: var(--aa-muet); }
@media (max-width: 640px) { html:not(#_) .aa .aa-hero__form { border-radius: 90px 90px 22px 22px; padding: 2.6rem 1.1rem 1.3rem; } }

/* --- champs, pilules ----------------------------------------------------------------------- */
html:not(#_) .aa select, html:not(#_) .aa input[type="text"], html:not(#_) .aa input[type="email"], html:not(#_) .aa input[type="tel"], html:not(#_) .aa input[type="number"], html:not(#_) .aa input[type="file"], html:not(#_) .aa textarea { border-radius: 12px; border-color: var(--ps-rose-2); background: #fff; color: var(--ps-encre); }
html:not(#_) .aa select:focus, html:not(#_) .aa input:focus, html:not(#_) .aa textarea:focus { outline-color: var(--aa-accent); }
html:not(#_) .aa .aa-chips li, html:not(#_) .aa .aa-chip { background: var(--ps-rose); border: 1px solid transparent; color: var(--ps-encre); border-radius: 999px; padding: .4rem .85rem; transition: background-color .18s ease, border-color .18s ease; }
html:not(#_) .aa .aa-chip:hover { border-color: var(--ps-rose-3); }
html:not(#_) .aa .aa-chip:has(input:checked) { background: var(--aa-accent); color: #fff; border-color: var(--aa-accent); }
html:not(#_) .aa .aa-chip input { accent-color: #fff; }

/* --- titres de section : petite arche framboise devant ------------------------------------- */
html:not(#_) .aa .aa-main .aa-h2 { font-size: 1.35rem; font-weight: 700; display: flex; align-items: center; gap: .55rem; }
html:not(#_) .aa .aa-main .aa-h2::before { content: ""; flex: none; width: 12px; height: 16px; border-radius: 6px 6px 2px 2px; background: var(--aa-accent); }
html:not(#_) .aa .aa-bloc__tete .aa-lien { color: var(--ps-accent-txt); font-weight: 600; }

/* --- lignes d'annonces : filets rose poudré, vignette en arche, zoom doux ------------------- */
html:not(#_) .aa .aa-liste { border-top: 0; gap: 0; }
html:not(#_) .aa .aa-ligne { background: none; border: 0; border-bottom: 1px solid var(--ps-rose-2); border-radius: 0; padding: 1rem .5rem; transition: background-color .2s ease, border-radius .2s ease; }
html:not(#_) .aa .aa-ligne:hover { background: var(--ps-rose); border-radius: 22px; border-bottom-color: transparent; }
html:not(#_) .aa .aa-ligne__img { aspect-ratio: 4 / 5; border-radius: 999px 999px 12px 12px; background: var(--ps-rose-2); box-shadow: 0 0 0 3px var(--ps-surface), 0 0 0 4px var(--ps-rose-2); }
html:not(#_) .aa .aa-ligne__img img { transition: transform .45s ease; }
html:not(#_) .aa .aa-ligne:hover .aa-ligne__img img { transform: scale(1.06); }
html:not(#_) .aa .aa-ligne__nb { border-radius: 999px; }
html:not(#_) .aa .aa-ligne__cat { font-family: var(--aa-police); font-size: .72rem; color: var(--ps-accent-txt); }
html:not(#_) .aa .aa-ligne__new { background: var(--aa-accent); color: #fff; }
html:not(#_) .aa .aa-ligne__date { font-family: var(--aa-police); color: var(--aa-muet); }
html:not(#_) .aa .aa-ligne__titre { font-family: var(--aa-police-titre); font-size: 1.15rem; font-weight: 700; }
html:not(#_) .aa .aa-ligne__titre a { color: var(--ps-encre); }
html:not(#_) .aa .aa-ligne__titre a:hover { color: var(--ps-accent-txt); }
html:not(#_) .aa .aa-ligne__meta { color: var(--aa-muet); }
html:not(#_) .aa .aa-ligne__mid { color: var(--ps-accent-txt); }
html:not(#_) .aa .aa-ligne__extrait { color: var(--ps-encre); opacity: .82; font-size: .93rem; }
html:not(#_) .aa .aa-ligne__lire { background: none; border: 0; border-bottom: 1px solid var(--aa-accent); border-radius: 0; padding: .15em 0; min-height: 0; color: var(--ps-accent-txt); font-family: var(--aa-police-titre); font-style: italic; font-weight: 400; font-size: .95rem; text-transform: none; letter-spacing: 0; box-shadow: none; }
html:not(#_) .aa .aa-ligne__lire:hover { color: var(--ps-encre); border-bottom-color: var(--ps-encre); transform: none; box-shadow: none; }
@media (min-width: 720px) { html:not(#_) .aa .aa-ligne { padding: 1.1rem .8rem; } }

/* --- filtres, catégories, régions, villes -------------------------------------------------- */
html:not(#_) .aa .aa-filtres { background: var(--ps-surface); border: 1px solid var(--ps-rose-2); border-radius: 22px; padding: 1.1rem 1.2rem 1.2rem; box-shadow: var(--ps-ombre); }
html:not(#_) .aa .aa-filtres__champ { color: var(--aa-muet); }
html:not(#_) .aa .aa-compo-2 .aa-liens--cats li, html:not(#_) .aa .aa-liens--cats li { background: var(--ps-rose); border: 1px solid transparent; border-radius: 999px; padding: .5rem 1.05rem; transition: background-color .18s ease, transform .18s ease; }
html:not(#_) .aa .aa-liens--cats li a { color: var(--ps-encre); font-weight: 600; }
html:not(#_) .aa .aa-liens--cats li .aa-liens__nb { color: var(--ps-accent-txt); font-weight: 700; }
html:not(#_) .aa .aa-liens--cats li:hover { background: var(--aa-accent); transform: translateY(-1px); }
html:not(#_) .aa .aa-liens--cats li:hover a, html:not(#_) .aa .aa-liens--cats li:hover .aa-liens__nb { color: #fff; }
html:not(#_) .aa .aa-bloc--regions .aa-liens li, html:not(#_) .aa .aa-liens--villes li { background: none; border: 0; border-bottom: 1px dotted var(--ps-rose-3); border-radius: 0; padding: .45rem .2rem; }
html:not(#_) .aa .aa-bloc--regions .aa-liens li a, html:not(#_) .aa .aa-liens--villes li a { color: var(--ps-accent-txt); }
html:not(#_) .aa .aa-bloc--regions .aa-liens li a:hover, html:not(#_) .aa .aa-liens--villes li a:hover { color: var(--ps-encre); }
html:not(#_) .aa .aa-liens__nb { color: var(--aa-muet); }
html:not(#_) .aa .aa-side .aa-liens li { border-bottom: 1px dotted var(--ps-rose-3); }

/* --- CTA de dépôt : carte centrée à toit en arche, cœur en filigrane ----------------------- */
html:not(#_) .aa .aa-bloc--deposer .aa-deposer-cta { position: relative; max-width: 520px; margin: 2.2rem auto 0; padding: 2.4rem 1.4rem 1.6rem; text-align: center; background: var(--ps-rose); border: 1px solid var(--ps-rose-2); border-radius: 120px 120px 26px 26px; box-shadow: var(--ps-ombre); overflow: hidden; }
html:not(#_) .aa .aa-bloc--deposer .aa-deposer-cta::before { content: ""; position: absolute; left: 50%; top: -6px; width: 44px; height: 44px; transform: translateX(-50%); opacity: .35;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23d81b60' d='M12 21s-7.5-4.6-9.6-9.1C.8 8.3 3 5 6.4 5c2 0 3.3 1 4.1 2.2C11.3 6 12.6 5 14.6 5 18 5 20.2 8.3 18.6 11.9 16.5 16.4 12 21 12 21z'/%3E%3C/svg%3E") center / contain no-repeat; }
html:not(#_) .aa .aa-bloc--deposer .aa-deposer-cta .aa-btn { position: relative; min-width: min(100%, 260px); background: linear-gradient(180deg, color-mix(in srgb, var(--aa-accent) 92%, #fff), var(--aa-accent)); color: #fff; border-color: transparent; box-shadow: var(--ps-ombre); }
html:not(#_) .aa .aa-bloc--deposer .aa-deposer-cta .aa-btn:hover { background: color-mix(in srgb, var(--aa-accent) 86%, #5a2740); color: #fff; }

/* --- colonne latérale ---------------------------------------------------------------------- */
html:not(#_) .aa .aa-side { background: var(--ps-surface); border: 1px solid var(--ps-rose-2); border-top: 0; border-radius: 18px; padding: 1rem 1.1rem 1.1rem; box-shadow: var(--ps-ombre); }
html:not(#_) .aa .aa-side::before { content: ""; display: block; width: 34px; height: 5px; border-radius: 999px; background: var(--aa-accent); margin-bottom: .7rem; }
html:not(#_) .aa .aa-side__h { color: var(--ps-encre); font-family: var(--aa-police-titre); font-style: italic; font-size: 1.1rem; text-transform: none; letter-spacing: 0; }
html:not(#_) .aa .aa-side__liste li { border-top: 1px dotted var(--ps-rose-3); padding: .38rem 0; }
html:not(#_) .aa .aa-side__liste li:first-child { border-top: 0; }
html:not(#_) .aa .aa-side__liste a { color: var(--ps-encre); }
html:not(#_) .aa .aa-side__liste a:hover, html:not(#_) .aa .aa-side__liste li.is-actif a { color: var(--ps-accent-txt); }
html:not(#_) .aa .aa-side__nb { color: var(--aa-muet); }

/* --- fil d'Ariane, pagination -------------------------------------------------------------- */
html:not(#_) .aa .aa-crumbs ol { color: var(--aa-muet); }
html:not(#_) .aa .aa-crumbs a { color: var(--aa-muet); }
html:not(#_) .aa .aa-crumbs a:hover { color: var(--ps-accent-txt); }
html:not(#_) .aa .aa-pagination a, html:not(#_) .aa .aa-pagination span { border-radius: 999px; background: var(--ps-surface); border-color: var(--ps-rose-2); color: var(--ps-encre); }
html:not(#_) .aa .aa-pagination a:hover { background: var(--ps-rose); border-color: var(--ps-rose-3); }
html:not(#_) .aa .aa-pagination .is-actif { background: var(--aa-accent); color: #fff; border-color: var(--aa-accent); }

/* --- fiche d'annonce : photo en arche, CTA en carte rose, tuiles douces -------------------- */
html:not(#_) .aa .aa-fiche__cat { color: var(--ps-accent-txt); font-family: var(--aa-police); }
html:not(#_) .aa .aa-fiche__titre { font-family: var(--aa-police-titre); font-weight: 700; line-height: 1.15; }
html:not(#_) .aa .aa-fiche__sous { color: var(--aa-muet); }
html:not(#_) .aa .aa-fiche__photo { border-radius: 150px 150px 16px 16px; box-shadow: 0 0 0 5px var(--ps-surface), 0 0 0 6px var(--ps-rose-2), var(--ps-ombre-l); background: var(--ps-rose-2); }
html:not(#_) .aa .aa-fiche__photo--vide { border-radius: 26px; border: 1px dashed var(--ps-rose-3); background: var(--ps-rose); box-shadow: none; }
html:not(#_) .aa .aa-fiche__img { transition: transform .5s ease; }
html:not(#_) .aa .aa-fiche__photo:hover .aa-fiche__img { transform: scale(1.03); }
html:not(#_) .aa .aa-fiche__new { background: var(--aa-accent); color: #fff; }
html:not(#_) .aa .aa-fiche__miniatures img { border-radius: 36px 36px 8px 8px; border-color: var(--ps-rose-2); }
html:not(#_) .aa .aa-fiche__miniatures img:hover { border-color: var(--aa-accent); }
html:not(#_) .aa .aa-fiche__meta { color: var(--aa-muet); }
html:not(#_) .aa .aa-fiche__infos { background: var(--ps-surface); border: 1px solid var(--ps-rose-2); border-radius: 16px; box-shadow: none; }
html:not(#_) .aa .aa-fiche__infos dt { color: var(--aa-muet); }
html:not(#_) .aa .aa-fiche__infos dd { color: var(--ps-encre); }
html:not(#_) .aa .aa-fiche__cta--haut { position: relative; overflow: hidden; background: var(--ps-rose); border: 1px solid var(--ps-rose-2); border-radius: 22px; padding: 1.2rem 1.1rem; box-shadow: var(--ps-ombre); gap: .7rem; }
html:not(#_) .aa .aa-fiche__cta--haut::after { content: ""; position: absolute; right: -14px; top: -16px; width: 96px; height: 96px; opacity: .14; pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23d81b60' d='M12 21s-7.5-4.6-9.6-9.1C.8 8.3 3 5 6.4 5c2 0 3.3 1 4.1 2.2C11.3 6 12.6 5 14.6 5 18 5 20.2 8.3 18.6 11.9 16.5 16.4 12 21 12 21z'/%3E%3C/svg%3E") center / contain no-repeat; }
html:not(#_) .aa .aa-fiche__cta--haut .aa-btn { position: relative; z-index: 1; }
html:not(#_) .aa .aa-fiche__cta--haut .aa-btn--secondaire { background: var(--ps-surface); }
html:not(#_) .aa .aa-fiche__texte p { color: var(--ps-encre); }
html:not(#_) .aa .aa-fiche__plage { background: var(--ps-rose); color: var(--ps-encre); border-radius: 999px; padding: .45rem 1rem; }
html:not(#_) .aa .aa-fiche__phy { background: var(--ps-surface); border: 1px solid var(--ps-rose-2); border-radius: 14px; padding: .55rem .8rem; }
html:not(#_) .aa .aa-fiche__physique dt { color: var(--aa-muet); }
html:not(#_) .aa .aa-fiche__physique dd { color: var(--ps-encre); }
html:not(#_) .aa .aa-chips--lecture li { background: var(--ps-rose); border-color: transparent; color: var(--ps-encre); }
html:not(#_) .aa .aa-repondre { background: var(--ps-surface); border: 1px solid var(--ps-rose-2); border-radius: 22px; padding: 1.4rem 1.3rem; box-shadow: var(--ps-ombre); }
html:not(#_) .aa .aa-repondre__intro { color: var(--aa-muet); }
html:not(#_) .aa .aa-form__lbl, html:not(#_) .aa .aa-form__check { color: var(--ps-encre); }
html:not(#_) .aa .aa-form__aide { color: var(--aa-muet); }
html:not(#_) .aa .aa-fiche__signaler, html:not(#_) .aa .aa-fiche__signaler a { color: var(--aa-muet); }
html:not(#_) .aa .aa-retour, html:not(#_) .aa .aa-retour a { color: var(--aa-muet); }
html:not(#_) .aa .aa-retour a:hover { color: var(--ps-accent-txt); }
/* barre basse mobile : même place (aucune `position` posée), habillée crème */
html:not(#_) .aa .aa-fiche__barre { background: color-mix(in srgb, var(--ps-creme) 94%, transparent); border-top: 1px solid var(--ps-rose-2); box-shadow: 0 -10px 30px -18px color-mix(in srgb, var(--aa-accent) 55%, transparent); }
html:not(#_) .aa .aa-fiche__barre .aa-btn { border-radius: 14px; font-size: .8rem; overflow-wrap: anywhere; }

/* --- page de dépôt : fieldsets en cartes crème, légende en pilule rose --------------------- */
html:not(#_) .aa .aa-depot__bloc { background: var(--ps-surface); border: 1px solid var(--ps-rose-2); border-radius: 20px; padding: 1.1rem 1.2rem 1.3rem; box-shadow: var(--ps-ombre); }
html:not(#_) .aa .aa-depot__bloc legend { background: var(--ps-rose); color: var(--ps-encre); border-radius: 999px; padding: .25rem .9rem; font-family: var(--aa-police-titre); font-style: italic; font-weight: 700; font-size: 1.02rem; }
html:not(#_) .aa .aa-depot__apercu img { border-radius: 40px 40px 8px 8px; border: 2px solid var(--ps-rose-2); }
html:not(#_) .aa .aa-regles { color: var(--aa-muet); }
html:not(#_) .aa .aa-depot .aa-btn--primaire.aa-btn--large { min-height: 52px; font-size: 1.05rem; }
html:not(#_) .aa .aa-statique .aa-intro { color: var(--aa-muet); }

/* --- pied de page : rose poudré, festons crème en haut, marque italique -------------------- */
html:not(#_) .aa .aa-footer { position: relative; background: var(--aa-pied); color: var(--ps-encre); border-top: 0; text-align: center; padding-block: 3rem 1.4rem; margin-top: 3.2rem; }
html:not(#_) .aa .aa-footer::before { content: ""; position: absolute; left: 0; right: 0; top: -1px; height: 12px; pointer-events: none;
  background: radial-gradient(circle at 50% 0, var(--ps-creme) 0 9px, transparent 9.8px) 0 0 / 22px 12px repeat-x; }
html:not(#_) .aa .aa-footer__grid { grid-template-columns: 1fr; justify-items: center; gap: 1.3rem; }
html:not(#_) .aa .aa-footer__brand { font-family: var(--aa-police-titre); font-style: italic; font-size: 1.7rem; color: var(--ps-accent-txt); }
html:not(#_) .aa .aa-footer__membres { color: var(--ps-encre); font-weight: 600; }
html:not(#_) .aa .aa-footer__fictif { opacity: 1; color: var(--aa-muet); max-width: 60ch; }
html:not(#_) .aa .aa-footer__h { color: var(--ps-accent-txt); font-weight: 800; text-transform: uppercase; letter-spacing: .14em; font-size: .72rem; font-family: var(--aa-police); opacity: 1; }
html:not(#_) .aa .aa-footer ul { display: flex; flex-wrap: wrap; justify-content: center; gap: .35rem .6rem; }
html:not(#_) .aa .aa-footer ul a { color: var(--ps-encre); background: color-mix(in srgb, #fff 55%, transparent); border-radius: 999px; padding: .25rem .75rem; display: inline-block; transition: background-color .18s ease, color .18s ease; }
html:not(#_) .aa .aa-footer ul a:hover { background: var(--aa-accent); color: #fff; }
html:not(#_) .aa .aa-footer__bas { justify-content: center; border-top: 1px solid var(--ps-rose-3); opacity: 1; color: var(--aa-muet); }
html:not(#_) .aa .aa-footer__bas a { color: var(--ps-encre); }
html:not(#_) .aa .aa-footer__bas a:hover { color: var(--ps-accent-txt); }

/* --- porte d'âge & pop-up d'inscription : boîte à toit en arche --------------------------- */
html:not(#_) .aa .aa-gate__box, html:not(#_) .aa .aa-popup__box { border-radius: 28px; border: 1px solid var(--ps-rose-2); background: var(--ps-surface); color: var(--ps-encre); box-shadow: 0 0 0 8px color-mix(in srgb, var(--ps-rose) 70%, transparent), var(--ps-ombre-l); }
html:not(#_) .aa .aa-gate__box { border-radius: 110px 110px 28px 28px; padding-top: 2.2rem; }
html:not(#_) .aa .aa-gate__mark { border-radius: 36px 36px 10px 10px; background: var(--aa-accent); color: #fff; box-shadow: 0 0 0 6px var(--ps-rose); }
html:not(#_) .aa .aa-gate__box h2, html:not(#_) .aa .aa-popup__titre { font-family: var(--aa-police-titre); color: var(--ps-encre); }
html:not(#_) .aa .aa-popup__pour { color: var(--ps-accent-txt); }
html:not(#_) .aa .aa-popup__texte { color: var(--aa-muet); }
html:not(#_) .aa .aa-popup__fermer { color: var(--aa-muet); }
html:not(#_) .aa .aa-popup__fermer:hover { background: var(--ps-rose); color: var(--ps-encre); }
html:not(#_) .aa .aa-spin { border-color: var(--ps-rose-2); border-top-color: var(--aa-accent); }
html:not(#_) .aa .aa-vide { border-radius: 22px; border-color: var(--ps-rose-3); color: var(--aa-muet); }

@media (prefers-reduced-motion: reduce) {
  html:not(#_) .aa .aa-ligne__img img, html:not(#_) .aa .aa-fiche__img, html:not(#_) .aa .aa-liens--cats li { transition: none; }
}
