/* ============================================================================
   ts-kontaktanzeigen.de — habillage « perle & améthyste » (gabarit annoncesastro-v2, skin-6 / compo-4 / fiche-2)
   Palette : accent améthyste #7e57c2 (favicon) → texte/liens #5b3a9e, hover #4b2f85 ; neutre chaud NACRE
   (ivoire rosé #fffaf6, perle #f6eef0, lavande perlée #efe6f4) ; encre aubergine #2a1f3a.
   Formes signature : (1) RANGS DE PERLES — points nacrés qui prolongent chaque titre de section et séparent les
   lignes d'annonces ; (2) TAILLE COUSSIN — photos, cadres et cartes coupés en octogone (coins biseautés comme une
   gemme) ; (3) FESTONS — bord ondulé perlé sous l'en-tête et au-dessus du pied ; (4) PERLES — pastilles, numéros
   d'étape et logo rendus en sphères nacrées à reflet. Titres Palatino, corps Segoe. Aucun texte, aucune classe seo.
   ============================================================================ */
html:not(#_) body.aa {
  --aa-accent: #7e57c2;
  --aa-primaire: #7e57c2;
  --aa-primaire-fonce: #5b3a9e;
  --aa-primaire-txt: #fff;
  --aa-lien: #5b3a9e;
  --aa-page: #ede4e6;
  --aa-fond: #fffaf6;
  --aa-surface: #fffaf6;
  --aa-surface-2: #f6eef0;
  --aa-texte: #2a1f3a;
  --aa-muet: #6b5f78;
  --aa-bord: #e2d5df;
  --aa-tete: #2a1f3a;
  --aa-tete-txt: #f7f1fa;
  --aa-barre: #4b2f85;
  --aa-bande: #efe6f4;
  --aa-bande-txt: #4b2f85;
  --aa-bande-bord: #7e57c2;
  --aa-secondaire: #5b3a9e;
  --aa-secondaire-txt: #fff;
  --aa-pied: #2a1f3a;
  --aa-pied-txt: #d9cde6;
  --aa-ok: #2f7d5b;
  --aa-rayon: 14px; --aa-rayon-s: 9px;
  --aa-ombre: 0 2px 6px rgba(94, 60, 150, .06), 0 18px 40px -22px rgba(94, 60, 150, .35);
  --aa-police: "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif;
  --aa-police-titre: "Palatino Linotype", Palatino, "Book Antiqua", Georgia, "Times New Roman", serif;
  --pa-perles: radial-gradient(circle at 50% 50%, #7e57c2 1.4px, rgba(126, 87, 194, .35) 1.9px, transparent 2.3px) 0 50% / 9px 6px repeat-x;
  --pa-perles-claires: radial-gradient(circle at 50% 50%, #f7f1fa 1.4px, rgba(247, 241, 250, .4) 1.9px, transparent 2.3px) 0 50% / 9px 6px repeat-x;
  --pa-nacre: linear-gradient(120deg, #f4eaf7 0%, #fff7f2 38%, #efe6f4 64%, #fbf3f5 100%);
  --pa-gemme: polygon(12px 0, calc(100% - 12px) 0, 100% 12px, 100% calc(100% - 12px), calc(100% - 12px) 100%, 12px 100%, 0 calc(100% - 12px), 0 12px);
  --pa-gemme-s: polygon(8px 0, calc(100% - 8px) 0, 100% 8px, 100% calc(100% - 8px), calc(100% - 8px) 100%, 8px 100%, 0 calc(100% - 8px), 0 8px);
  font-family: var(--aa-police);
  background: radial-gradient(ellipse 60% 40% at 8% 0%, rgba(126, 87, 194, .13), transparent 70%), radial-gradient(ellipse 50% 35% at 100% 30%, rgba(255, 221, 214, .55), transparent 70%), #ede4e6;
}

/* --- en-tête : encre aubergine à reflet nacré, festons perlés en bas ------------------------------- */
html:not(#_) .aa-header { background: linear-gradient(105deg, #2a1f3a 0%, #3a2856 48%, #2a1f3a 100%); box-shadow: none; padding-bottom: 10px; position: relative; }
html:not(#_) .aa-header::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 10px; background: radial-gradient(circle at 50% 0, #ede4e6 6px, transparent 6.6px) 0 0 / 20px 10px repeat-x; pointer-events: none; }
html:not(#_) .aa-header__in { gap: .7rem 1rem; padding-top: .85rem; }
html:not(#_) .aa-logo__mark { width: 34px; height: 34px; border-radius: 50%; background: radial-gradient(circle at 32% 28%, #fff 0, #f2e6f7 22%, #b79be0 55%, #7e57c2 78%, #4b2f85 100%); box-shadow: 0 0 0 2px rgba(255, 255, 255, .18), 0 6px 14px -6px rgba(0, 0, 0, .6); }
html:not(#_) .aa-logo__txt { font-family: var(--aa-police-titre); font-weight: 700; font-size: 1.45rem; letter-spacing: .01em; color: #fbf6ff; }
html:not(#_) .aa-logo__sous { color: #cdbde3; opacity: 1; font-size: .74rem; letter-spacing: .04em; }
html:not(#_) .aa-header__cta { border-radius: 999px; background: linear-gradient(180deg, #8158c6, #7e57c2 45%, #6a48b0); border-color: transparent; box-shadow: inset 0 1px 0 rgba(255, 255, 255, .35), 0 8px 18px -8px rgba(126, 87, 194, .9); }
html:not(#_) .aa-burger { border-color: rgba(247, 241, 250, .35); border-radius: 50%; color: #f7f1fa; }
html:not(#_) .aa-nav { background: linear-gradient(180deg, #4b2f85, #43297a); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12); }
html:not(#_) .aa-nav a { color: #f1e9fa; font-weight: 600; letter-spacing: .01em; border-bottom-width: 3px; }
html:not(#_) .aa-nav a:hover { background: rgba(255, 255, 255, .1); }
html:not(#_) .aa-nav a.is-actif { background: #fffaf6; color: #4b2f85; border-bottom-color: #7e57c2; }
@media (max-width: 859px) {
  html:not(#_) .aa-header { padding-bottom: 10px; }
  html:not(#_) .aa-nav { border-radius: 14px; padding: .5rem; }
  html:not(#_) .aa-nav a { border-radius: 9px; }
  html:not(#_) .aa-nav a.is-actif { border-left: 0; box-shadow: inset 4px 0 0 #7e57c2; }
  html:not(#_) .aa-nav__cta a { background: linear-gradient(180deg, #8158c6, #6f4db6); color: #fff; border-radius: 999px; margin-top: .3rem; }
}

/* --- conteneur : ivoire taillé en coussin, ombre violette douce --------------------------------- */
html:not(#_) .aa-main > .aa-wrap { background: var(--aa-fond); border: 0; border-radius: 0; clip-path: var(--pa-gemme); box-shadow: none; position: relative; }
html:not(#_) .aa-main { position: relative; }
html:not(#_) .aa-main::before { content: ""; position: absolute; inset: 1rem calc(50% - min(50%, var(--aa-max) / 2) + var(--aa-gout) + 6px) 2rem; border-radius: 22px; box-shadow: var(--aa-ombre); pointer-events: none; }

/* --- bandeaux : nacre, texte améthyste, gemme à gauche, rang de perles qui prolonge le titre ------- */
html:not(#_) .aa-h2, html:not(#_) .aa-side__h, html:not(#_) .aa-bande, html:not(#_) .aa-depot__bloc legend {
  background: var(--pa-nacre); color: #4b2f85; border-left: 0; border-radius: 10px; padding: .5rem .85rem; font-family: var(--aa-police-titre); font-size: 1.02rem; text-transform: none; letter-spacing: .01em; font-weight: 700; box-shadow: inset 0 0 0 1px rgba(126, 87, 194, .18), inset 0 -2px 0 rgba(126, 87, 194, .18);
}
html:not(#_) .aa-h2 .aa-ico, html:not(#_) .aa-side__h .aa-ico, html:not(#_) .aa-bande .aa-ico { color: #7e57c2; opacity: 1; }
html:not(#_) .aa-h2:not(:has(> .aa-ico))::before, html:not(#_) .aa-side__h:not(:has(> .aa-ico))::before { content: ""; width: 9px; height: 9px; flex: none; background: linear-gradient(135deg, #b79be0, #7e57c2 60%, #4b2f85); transform: rotate(45deg); border-radius: 2px; margin-right: .1rem; box-shadow: 0 0 0 2px #fffaf6, 0 0 0 3px rgba(126, 87, 194, .35); }
html:not(#_) .aa-h2::after, html:not(#_) .aa-side__h::after { content: ""; flex: 1 1 0; min-width: 0; height: 6px; margin-left: .5rem; background: var(--pa-perles); }
html:not(#_) .aa-bande { background: var(--pa-nacre); }
html:not(#_) .aa-bande__droite { color: #6b5f78; opacity: 1; }
html:not(#_) .aa-side__h { margin: -.8rem -.9rem .7rem; border-radius: 12px 12px 0 0; border-bottom: 0; font-size: .98rem; box-shadow: inset 0 -2px 0 rgba(126, 87, 194, .28); }
html:not(#_) .aa-depot__bloc legend::before { background: radial-gradient(circle at 32% 28%, #fff 0, #cdbde3 30%, #7e57c2 70%, #4b2f85 100%); color: #fff; text-shadow: 0 1px 0 rgba(0, 0, 0, .35); box-shadow: 0 2px 6px -2px rgba(75, 47, 133, .6); font-family: var(--aa-police); font-weight: 700; }

/* --- boutons : améthyste à reflet de perle (primaire), contour améthyste (secondaire) ------------- */
html:not(#_) .aa-btn { border-radius: 999px; letter-spacing: .01em; }
html:not(#_) .aa-btn--primaire { background: linear-gradient(180deg, #8158c6, #7e57c2 45%, #6a48b0); border-color: transparent; color: #fff; box-shadow: inset 0 1px 0 rgba(255, 255, 255, .38), 0 10px 22px -10px rgba(126, 87, 194, .95); }
html:not(#_) .aa-btn--primaire:hover { filter: none; background: linear-gradient(180deg, #8a63cc, #8158c6 45%, #6f4db6); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .4), 0 14px 26px -10px rgba(126, 87, 194, 1); }
html:not(#_) .aa-btn--secondaire { background: #fffaf6; color: #5b3a9e; border-color: #b79be0; box-shadow: 0 6px 16px -12px rgba(126, 87, 194, .7); }
html:not(#_) .aa-btn--secondaire:hover { background: #f4eaf7; border-color: #7e57c2; }
html:not(#_) .aa-lien { color: #5b3a9e; }

/* --- accueil : bandeau nacré avec une grande perle en décor ------------------------------------ */
html:not(#_) .aa-hero { background: var(--pa-nacre); border: 0; border-left: 0; border-radius: 0; clip-path: var(--pa-gemme); padding: 1.4rem 1.5rem 1.3rem; position: relative; overflow: hidden; box-shadow: none; }
html:not(#_) .aa-hero::before { content: ""; position: absolute; right: -60px; top: -70px; width: 240px; height: 240px; border-radius: 50%; background: radial-gradient(circle at 35% 30%, rgba(255, 255, 255, .95) 0, rgba(240, 228, 246, .8) 25%, rgba(183, 155, 224, .55) 60%, rgba(126, 87, 194, .25) 100%); pointer-events: none; }
html:not(#_) .aa-hero::after { content: ""; position: absolute; left: 1.5rem; right: 1.5rem; bottom: .55rem; height: 6px; background: var(--pa-perles); opacity: .7; }
html:not(#_) .aa-hero__txt { position: relative; z-index: 1; }
html:not(#_) .aa-hero .aa-h1 { font-family: var(--aa-police-titre); font-weight: 700; color: #2a1f3a; letter-spacing: 0; }
html:not(#_) .aa-hero .aa-intro { color: #4d4158; }
html:not(#_) .aa-hero__chiffres span { background: #fffaf6; border-color: #cdbde3; color: #4b2f85; box-shadow: 0 4px 12px -8px rgba(126, 87, 194, .8); }
html:not(#_) .aa-hero__chiffres span::before { background: radial-gradient(circle at 35% 30%, #fff, #b79be0 50%, #7e57c2); width: 9px; height: 9px; }

/* --- lignes d'annonces : photo taillée en coussin, séparateur en rang de perles ----------------- */
html:not(#_) .aa-liste { border-top: 0; }
html:not(#_) .aa-ligne { border-bottom: 0; padding: 1rem .5rem 1.1rem; background-image: var(--pa-perles); background-position: .5rem 100%; background-size: 9px 6px; background-repeat: repeat-x; border-radius: 12px 12px 0 0; }
html:not(#_) .aa-ligne:hover { background-color: #f6eef7; }
html:not(#_) .aa-ligne__img { border: 0; border-radius: 0; padding: 0; clip-path: var(--pa-gemme-s); background: linear-gradient(135deg, #cdbde3, #7e57c2); }
html:not(#_) .aa-ligne__img img { border-radius: 0; clip-path: polygon(7px 2px, calc(100% - 7px) 2px, calc(100% - 2px) 7px, calc(100% - 2px) calc(100% - 7px), calc(100% - 7px) calc(100% - 2px), 7px calc(100% - 2px), 2px calc(100% - 7px), 2px 7px); }
html:not(#_) .aa-ligne__nb { background: rgba(42, 31, 58, .82); bottom: .45rem; left: .45rem; }
html:not(#_) .aa-ligne__cat { color: #5b3a9e; background: #efe6f4; border-radius: 999px; padding: .1rem .55rem; font-size: .68rem; }
html:not(#_) .aa-ligne__new { background: #2f7d5b; border-radius: 999px; }
html:not(#_) .aa-ligne__date { color: #6b5f78; }
html:not(#_) .aa-ligne__titre { font-family: var(--aa-police-titre); font-size: 1.16rem; }
html:not(#_) .aa-ligne__titre a { color: #4b2f85; }
html:not(#_) .aa-ligne__meta { color: #6b5f78; }
html:not(#_) .aa-ligne__meta strong { color: #2a1f3a; }
html:not(#_) .aa-ligne__extrait { color: #3e3349; opacity: 1; }
html:not(#_) .aa-ligne__lire { border-radius: 999px; }

/* --- colonne latérale : nacre, compteurs en perles ------------------------------------------------ */
html:not(#_) .aa-side { background: #f8f2f4; border: 1px solid #e4d8e6; border-radius: 12px; box-shadow: 0 10px 24px -20px rgba(126, 87, 194, .6); }
html:not(#_) .aa-side__liste li { border-top-color: #e4d8e6; }
html:not(#_) .aa-side__liste li::before { background: radial-gradient(circle at 35% 30%, #fff, #b79be0 45%, #7e57c2); width: 8px; height: 8px; top: .7em; box-shadow: 0 1px 2px rgba(75, 47, 133, .35); }
html:not(#_) .aa-side__liste li a { color: #2a1f3a; }
html:not(#_) .aa-side__liste li a:hover, html:not(#_) .aa-side__liste li.is-actif a { color: #5b3a9e; }
html:not(#_) .aa-side__nb { background: #fffaf6; border-color: #d9cbe4; color: #5b3a9e; font-weight: 700; }
html:not(#_) .aa-side__liste--inline li { background: #fffaf6; border-color: #d9cbe4; }
html:not(#_) .aa-side__p, html:not(#_) .aa-side__aide { color: #5f5369; }
html:not(#_) .aa-side .aa-filtres__champ { color: #5f5369; }

/* --- moteur, champs ------------------------------------------------------------------------------ */
html:not(#_) .aa-filtres { background: #f8f2f4; border-color: #e4d8e6; border-radius: 12px; }
html:not(#_) .aa-compo-6 .aa-bloc--moteur .aa-filtres, html:not(#_) .aa-bloc--moteur .aa-filtres { background: var(--pa-nacre); border-color: #d9cbe4; }
html:not(#_) .aa-filtres__champ { color: #5f5369; }
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 input[type="file"], html:not(#_) body.aa textarea { background-color: #fff; border-color: #d9cbe4; border-radius: 10px; color: #2a1f3a; box-shadow: inset 0 1px 3px rgba(75, 47, 133, .06); }
html:not(#_) body.aa select { background-image: linear-gradient(45deg, transparent 50%, #7e57c2 50%), linear-gradient(135deg, #7e57c2 50%, transparent 50%); }
html:not(#_) body.aa select:focus, html:not(#_) body.aa input:focus, html:not(#_) body.aa textarea:focus { outline-color: #7e57c2; border-color: #7e57c2; }

/* --- liens de l'accueil (catégories, régions, villes), atouts, étapes, dépôt ----------------------- */
html:not(#_) .aa-liens li { background: #fffaf6; border-color: #e4d8e6; border-radius: 10px; padding-left: 1.1rem; }
html:not(#_) .aa-liens li::before { width: 8px; height: 8px; top: 50%; bottom: auto; left: .45rem; transform: translateY(-50%); border-radius: 50%; background: radial-gradient(circle at 35% 30%, #fff, #b79be0 45%, #7e57c2); box-shadow: 0 1px 2px rgba(75, 47, 133, .35); }
html:not(#_) .aa-liens li a { color: #2a1f3a; }
html:not(#_) .aa-liens li a:hover { color: #5b3a9e; }
html:not(#_) .aa-liens__nb { color: #5b3a9e; font-weight: 700; }
html:not(#_) .aa-atouts li { background: #fffaf6; border: 1px solid #e4d8e6; border-left: 1px solid #e4d8e6; border-radius: 0; clip-path: var(--pa-gemme-s); box-shadow: none; padding: .85rem .9rem; }
html:not(#_) .aa-atouts .aa-atouts__ico { background: radial-gradient(circle at 35% 30%, #fff 0, #f2e6f7 25%, #cdbde3 60%, #b79be0 100%); color: #4b2f85; box-shadow: 0 3px 8px -3px rgba(75, 47, 133, .5); }
html:not(#_) .aa-atouts h3 { font-family: var(--aa-police-titre); font-size: 1.02rem; color: #2a1f3a; }
html:not(#_) .aa-atouts p { color: #5f5369; }
html:not(#_) .aa-etapes li { background: #fffaf6; border-color: #e4d8e6; border-radius: 12px; }
html:not(#_) .aa-etapes li::before { background: radial-gradient(circle at 32% 28%, #fff 0, #cdbde3 28%, #7e57c2 68%, #4b2f85 100%); color: #fff; text-shadow: 0 1px 0 rgba(0, 0, 0, .35); box-shadow: 0 3px 8px -3px rgba(75, 47, 133, .6); }
html:not(#_) .aa-etapes h3 { font-family: var(--aa-police-titre); color: #2a1f3a; }
html:not(#_) .aa-etapes p { color: #5f5369; }
html:not(#_) .aa-deposer-cta, html:not(#_) .aa-compo-4 .aa-bloc--deposer .aa-deposer-cta { background: var(--pa-nacre); border: 0; border-radius: 0; clip-path: var(--pa-gemme); padding: 1.3rem 1.5rem; justify-content: center; text-align: center; box-shadow: none; position: relative; }
html:not(#_) .aa-deposer-cta::before { content: ""; position: absolute; left: 1.5rem; right: 1.5rem; top: .5rem; height: 6px; background: var(--pa-perles); opacity: .6; }
html:not(#_) .aa-deposer-cta__h { font-family: var(--aa-police-titre); font-size: 1.15rem; color: #2a1f3a; }
html:not(#_) .aa-deposer-cta__txt { color: #4d4158; }
html:not(#_) .aa-depot__bloc { background: #fffaf6; border-color: #e4d8e6; border-radius: 12px; }
html:not(#_) .aa-regles, html:not(#_) .aa-form__aide { color: #5f5369; }
html:not(#_) .aa-chips li, html:not(#_) .aa-chip { background: #fffaf6; border-color: #d9cbe4; color: #2a1f3a; }
html:not(#_) .aa-chip:has(input:checked) { background: #efe6f4; border-color: #7e57c2; color: #4b2f85; }
html:not(#_) .aa-chips--lecture li { background: #f6eef0; }
html:not(#_) .aa-form__compteur { background: #f6eef0; border-color: #d9cbe4; color: #5f5369; }
html:not(#_) .aa-pagination a, html:not(#_) .aa-pagination span { border-radius: 999px; background: #fffaf6; border-color: #d9cbe4; color: #2a1f3a; }
html:not(#_) .aa-pagination a:hover { color: #5b3a9e; border-color: #7e57c2; }
html:not(#_) .aa-pagination .is-actif { background: #7e57c2; color: #fff; border-color: #5b3a9e; }
html:not(#_) .aa-vide { background: #f6eef0; border-color: #d9cbe4; border-radius: 12px; color: #5f5369; }

/* --- fiche d'annonce : photo en coussin, tableau nacré, CTA en carte centrée ---------------------- */
html:not(#_) .aa-fiche__titre { font-family: var(--aa-police-titre); font-weight: 700; color: #2a1f3a; border-bottom: 0; padding-bottom: .7rem; background: var(--pa-perles); background-position: 0 100%; background-size: 9px 6px; background-repeat: repeat-x; }
html:not(#_) .aa-fiche__sous { color: #5f5369; }
html:not(#_) .aa-fiche__cat a { color: #5b3a9e; background: #efe6f4; border-radius: 999px; padding: .12rem .55rem; }
html:not(#_) .aa-fiche__new { background: #2f7d5b; border-radius: 999px; }
html:not(#_) .aa-fiche__photo { border: 0; border-radius: 0; clip-path: var(--pa-gemme); background: linear-gradient(135deg, #cdbde3, #7e57c2); padding: 4px; }
html:not(#_) .aa-fiche__img { box-shadow: 0 12px 30px -12px rgba(42, 31, 58, .7); }
html:not(#_) .aa-fiche__miniatures img { border-color: #d9cbe4; border-radius: 0; clip-path: polygon(6px 0, calc(100% - 6px) 0, 100% 6px, 100% calc(100% - 6px), calc(100% - 6px) 100%, 6px 100%, 0 calc(100% - 6px), 0 6px); }
html:not(#_) .aa-fiche__miniatures img:hover { border-color: #7e57c2; }
html:not(#_) .aa-fiche__infos { border-color: #e4d8e6; border-radius: 12px; }
html:not(#_) .aa-fiche__infos > div:nth-child(odd) { background: #f6eef0; }
html:not(#_) .aa-fiche__infos > div + div { border-top-color: #e4d8e6; }
html:not(#_) .aa-fiche__infos dt { color: #5f5369; }
html:not(#_) .aa-fiche__infos dd { border-left-color: #e4d8e6; color: #2a1f3a; }
html:not(#_) .aa-fiche__infos dd a { color: #5b3a9e; }
html:not(#_) .aa-fiche__cta--haut { background: var(--pa-nacre); border: 0; border-radius: 0; clip-path: var(--pa-gemme); padding: 1.1rem 1rem 1rem; position: relative; gap: .6rem; }
html:not(#_) .aa-fiche__cta--haut::before { content: ""; position: absolute; left: 1rem; right: 1rem; top: .45rem; height: 6px; background: var(--pa-perles); opacity: .6; }
html:not(#_) .aa-fiche__cta--bas { background: var(--pa-nacre); border: 0; border-radius: 0; clip-path: var(--pa-gemme); max-width: 560px; margin: 2rem auto 0; padding: 1.4rem 1.4rem 1.2rem; position: relative; }
html:not(#_) .aa-fiche__cta--bas::before { content: ""; position: absolute; left: 1.4rem; right: 1.4rem; top: .55rem; height: 6px; background: var(--pa-perles); opacity: .6; }
html:not(#_) .aa-fiche__cta-sous { color: #5f5369; }
html:not(#_) .aa-fiche__plage { background: #efe6f4; color: #4b2f85; border-radius: 999px; }
html:not(#_) .aa-fiche__phy { background: #fffaf6; border-color: #e4d8e6; border-radius: 0; clip-path: var(--pa-gemme-s); box-shadow: inset 0 0 0 1px #e4d8e6; }
html:not(#_) .aa-fiche__physique dt { color: #5f5369; }
html:not(#_) .aa-fiche__physique dd { color: #2a1f3a; }
html:not(#_) .aa-fiche__texte p { color: #2a1f3a; }
html:not(#_) .aa-repondre { background: #f8f2f4; border-color: #e4d8e6; border-radius: 12px; }
html:not(#_) .aa-repondre__intro, html:not(#_) .aa-fiche__signaler, html:not(#_) .aa-retour, html:not(#_) .aa-fiche__meta { color: #5f5369; }
html:not(#_) .aa-crumbs ol { color: #5f5369; }
html:not(#_) .aa-crumbs a:hover { color: #5b3a9e; }

/* --- barres mobiles (position intouchée) ---------------------------------------------------------- */
html:not(#_) .aa-fiche__barre, html:not(#_) .aa-mobar { background: rgba(255, 250, 246, .96); border-top: 2px solid #7e57c2; box-shadow: 0 -10px 26px -14px rgba(75, 47, 133, .5); }

/* --- pied : encre aubergine, festons nacrés en haut, perles claires sous les titres --------------- */
html:not(#_) .aa-footer { background: linear-gradient(180deg, #32254a, #2a1f3a 40%); border-top: 0; padding-top: 10px; position: relative; color: #d9cde6; }
html:not(#_) .aa-footer::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 10px; background: radial-gradient(circle at 50% 100%, #ede4e6 6px, transparent 6.6px) 0 0 / 20px 10px repeat-x; pointer-events: none; }
html:not(#_) .aa-footer__grid { padding-top: 2.2rem; }
html:not(#_) .aa-footer__h { color: #f7f1fa; border-bottom: 0; padding-bottom: .55rem; font-family: var(--aa-police-titre); text-transform: none; letter-spacing: .02em; font-size: .98rem; background: var(--pa-perles-claires); background-position: 0 100%; background-size: 9px 6px; background-repeat: repeat-x; }
html:not(#_) .aa-footer__brand { color: #fbf6ff; font-family: var(--aa-police-titre); font-size: 1.25rem; }
html:not(#_) .aa-footer__brand .aa-logo__mark { width: 24px; height: 24px; }
html:not(#_) .aa-footer a { color: #d9cde6; }
html:not(#_) .aa-footer a:hover { color: #fff; }
html:not(#_) .aa-footer__fictif { opacity: 1; color: #b9abcc; }
html:not(#_) .aa-footer__bas { background: rgba(0, 0, 0, .28); }
html:not(#_) .aa-footer__bas-in { opacity: 1; color: #c9bcd8; }

/* --- porte et pop-up : boîte nacrée, perle en icône ----------------------------------------------- */
html:not(#_) .aa-gate, html:not(#_) .aa-popup { background: rgba(42, 31, 58, .78); }
html:not(#_) .aa-gate__box, html:not(#_) .aa-popup__box { background: #fffaf6; border-top: 0; border-radius: 18px; box-shadow: 0 0 0 1px #d9cbe4, 0 30px 60px -20px rgba(42, 31, 58, .7); color: #2a1f3a; }
html:not(#_) .aa-gate__box::before, html:not(#_) .aa-popup__box::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 8px; background: linear-gradient(90deg, #b79be0, #7e57c2 50%, #b79be0); }
html:not(#_) .aa-gate__mark { background: radial-gradient(circle at 32% 28%, #fff 0, #cdbde3 28%, #7e57c2 68%, #4b2f85 100%); color: #fff; text-shadow: 0 1px 0 rgba(0, 0, 0, .35); }
html:not(#_) .aa-popup__ico { background: radial-gradient(circle at 35% 30%, #fff 0, #f2e6f7 25%, #cdbde3 60%, #b79be0 100%); color: #4b2f85; }
html:not(#_) .aa-popup__titre { font-family: var(--aa-police-titre); color: #2a1f3a; }
html:not(#_) .aa-popup__texte { color: #5f5369; }
html:not(#_) .aa-popup__fermer { background: #fffaf6; color: #6b5f78; }
html:not(#_) .aa-popup__fermer:hover, html:not(#_) .aa-popup__fermer:focus-visible { color: #5b3a9e; background: #f6eef0; }
html:not(#_) .aa-spin { border-color: #e4d8e6; border-top-color: #7e57c2; }
html:not(#_) .aa-form__check input, html:not(#_) .aa-chip input { accent-color: #7e57c2; }
html:not(#_) .aa-merci-inline, html:not(#_) .aa-repondre__merci { color: #2f7d5b; }
html:not(#_) :focus-visible { outline-color: #5b3a9e; }

@media (max-width: 719px) {
  html:not(#_) .aa-bloc__tete .aa-h2::after { display: none; }
  html:not(#_) .aa-bloc__tete { flex-wrap: wrap; }
  html:not(#_) .aa-ligne { padding-inline: .3rem; background-position: .3rem 100%; }
  html:not(#_) .aa-hero { padding: 1.2rem 1.1rem 1.2rem; }
  html:not(#_) .aa-hero::before { width: 160px; height: 160px; right: -50px; top: -60px; }
  html:not(#_) .aa-fiche__cta--bas { padding: 1.2rem 1rem 1rem; }
}
@media (prefers-reduced-motion: reduce) { html:not(#_) .aa-btn--primaire:hover { transform: none; } }
