/* escort-girl-luxembourg.com — registre « Salon du boulevard » (annoncesastro-v2, skin 2 / compo 4)
   Velours prune #8e244d (favicon) · velours profond #3a0f22 · laiton fin #b8924f (filets seulement) ·
   crème #f6eee3 / #fffaf4 · encre #2a1520.
   Formes : en-tête centré en cartouche à double filet laiton, bandeaux-cartouches petites capitales,
   annonces en cartes de salon (photo en arche, filet pointillé de carnet de bal), médaillons de pagination,
   cœur en filigrane, boutons en pilule veloutée, fiche en arche cerclée de laiton. */

html:not(#_), html:not(#_) body.aa {
  --aa-accent: #8e244d; --aa-primaire: #8e244d; --aa-primaire-fonce: #6a1838; --aa-primaire-txt: #fff;
  --aa-lien: #8e244d;
  --aa-page: #efe4d6; --aa-fond: #fffaf4; --aa-surface: #fffaf4; --aa-surface-2: #f6eee3;
  --aa-bord: #e4d3c0; --aa-texte: #2a1520; --aa-muet: #65525a;
  --aa-tete: #3a0f22; --aa-tete-txt: #fbf3e8; --aa-barre: #2c0a19;
  --aa-bande: #3a0f22; --aa-bande-txt: #fbf3e8; --aa-bande-bord: #b8924f;
  --aa-secondaire: #6a1838; --aa-pied: #2a0a18; --aa-pied-txt: #eadccb;
  --aa-ok: #7d5f26;
  --aa-rayon: 16px; --aa-rayon-s: 999px;
  --aa-ombre: 0 14px 34px -20px rgba(142, 36, 77, .55);
  --aa-police: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --aa-police-titre: "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;
  --sal-laiton: #b8924f; --sal-laiton-clair: #d9bd84;
}
html:not(#_) body.aa {
  background:
    radial-gradient(1200px 420px at 50% -120px, rgba(142, 36, 77, .16), transparent 70%),
    var(--aa-page);
}

/* ---------- en-tête centré, logo en cartouche ---------- */
html:not(#_) .aa-header.aa-header {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .04), transparent 40%),
    repeating-linear-gradient(90deg, rgba(0, 0, 0, .07) 0 2px, transparent 2px 7px),
    #3a0f22;
  box-shadow: 0 1px 0 var(--sal-laiton), 0 4px 0 #2a0a18, 0 16px 30px -20px rgba(58, 15, 34, .9);
}
html:not(#_) .aa-header .aa-logo {
  padding: .35rem 1.1rem .35rem .45rem; border: 1px solid var(--sal-laiton);
  border-radius: 14px; box-shadow: inset 0 0 0 3px #3a0f22, inset 0 0 0 4px rgba(217, 189, 132, .55);
  background: rgba(142, 36, 77, .28);
}
html:not(#_) .aa-header .aa-logo__mark {
  width: 34px; height: 34px; border-radius: 50%;
  background: #8e244d url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fbf3e8' d='M12 20.5s-7.5-4.6-7.5-10A4.3 4.3 0 0 1 12 7.8a4.3 4.3 0 0 1 7.5 2.7c0 5.4-7.5 10-7.5 10z'/%3E%3C/svg%3E") center/58% no-repeat;
  box-shadow: 0 0 0 2px #3a0f22, 0 0 0 3px var(--sal-laiton);
}
html:not(#_) .aa-header .aa-logo__txt { font-family: var(--aa-police-titre); font-weight: 700; font-style: italic; letter-spacing: .01em; }
html:not(#_) .aa-header .aa-logo__sous { color: var(--sal-laiton-clair); opacity: 1; font-variant: small-caps; letter-spacing: .08em; }
html:not(#_) .aa-header .aa-header__cta.aa-btn { border-radius: 999px; background: #fbf3e8; color: #6a1838; border-color: var(--sal-laiton); box-shadow: none; }
html:not(#_) .aa-header .aa-nav { background: transparent; border-top: 1px solid rgba(217, 189, 132, .35); }
html:not(#_) .aa-header .aa-nav a { color: #fbf3e8; font-variant: small-caps; letter-spacing: .06em; font-size: .95rem; }
html:not(#_) .aa-header .aa-nav a.is-actif { background: transparent; color: var(--sal-laiton-clair); border-bottom-color: var(--sal-laiton); }
@media (min-width: 860px) {
  html:not(#_) .aa-header .aa-header__in { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); grid-template-areas: ". logo cta" "nav nav nav"; padding-top: .9rem; row-gap: .8rem; }
  html:not(#_) .aa-header .aa-header__cta { justify-self: end; }
  html:not(#_) .aa-header .aa-nav ul { justify-content: center; }
}
@media (max-width: 859px) {
  html:not(#_) .aa-header .aa-logo { padding: .25rem .8rem .25rem .3rem; }
  html:not(#_) .aa-header .aa-burger { border-color: var(--sal-laiton); border-radius: 50%; color: #fbf3e8; }
  html:not(#_) .aa-header .aa-nav { background: #2c0a19; border: 1px solid rgba(217, 189, 132, .4); border-radius: 14px; }
  html:not(#_) .aa-header .aa-nav a.is-actif { border-left-color: var(--sal-laiton); }
  html:not(#_) .aa-header .aa-nav__cta a { background: #8e244d; color: #fff; border-radius: 999px; }
}

/* ---------- conteneur ---------- */
html:not(#_) .aa-main > .aa-wrap { border: 1px solid var(--aa-bord); border-radius: 20px; box-shadow: 0 0 0 6px rgba(255, 250, 244, .55), var(--aa-ombre); }

/* ---------- bandeaux en cartouche ---------- */
html:not(#_) .aa-wrap .aa-h2, html:not(#_) .aa-wrap .aa-bande, html:not(#_) .aa-wrap .aa-depot__bloc legend, html:not(#_) .aa-side .aa-side__h {
  background: linear-gradient(180deg, #47132b, #3a0f22); color: #fbf3e8; border-left: 0;
  border-radius: 12px; box-shadow: inset 0 0 0 3px #3a0f22, inset 0 0 0 4px rgba(217, 189, 132, .6);
  font-family: var(--aa-police-titre); text-transform: none; font-variant: small-caps; letter-spacing: .09em; font-size: 1rem; padding: .55rem 1rem;
}
html:not(#_) .aa-side .aa-side__h { border-radius: 14px 14px 4px 4px; border-bottom: 0; }
html:not(#_) .aa-wrap .aa-h2 .aa-ico, html:not(#_) .aa-wrap .aa-bande .aa-ico, html:not(#_) .aa-side .aa-side__h .aa-ico { color: var(--sal-laiton-clair); opacity: 1; }
html:not(#_) .aa-wrap .aa-bande__droite { color: #f1e3cf; opacity: 1; }

/* ---------- intro : carnet sur crème, cœur en filigrane ---------- */
html:not(#_) .aa-wrap .aa-hero {
  text-align: center; border: 1px solid var(--sal-laiton); border-radius: 22px; padding: 1.6rem 1.4rem 1.3rem;
  box-shadow: inset 0 0 0 5px #fffaf4, inset 0 0 0 6px rgba(184, 146, 79, .45), 0 18px 34px -24px rgba(142, 36, 77, .6);
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%238e244d' fill-opacity='.07' d='M12 21s-8-4.9-8-10.7A4.6 4.6 0 0 1 12 7.4a4.6 4.6 0 0 1 8 2.9C20 16.1 12 21 12 21z'/%3E%3C/svg%3E") right -30px bottom -40px/190px no-repeat,
    radial-gradient(circle at 50% 0, rgba(142, 36, 77, .1), transparent 60%), #fffaf4;
}
html:not(#_) .aa-wrap .aa-hero .aa-h1 { font-family: var(--aa-police-titre); font-style: italic; text-transform: none; color: #3a0f22; letter-spacing: 0; }
html:not(#_) .aa-wrap .aa-hero .aa-h1::after { content: ""; display: block; width: 90px; height: 7px; margin: .55rem auto 0; background: radial-gradient(circle, var(--sal-laiton) 2.5px, transparent 3px) center/12px 7px repeat-x; }
html:not(#_) .aa-wrap .aa-hero .aa-intro { margin-inline: auto; color: var(--aa-muet); }
html:not(#_) .aa-wrap .aa-hero__chiffres { justify-content: center; }
html:not(#_) .aa-wrap .aa-hero__chiffres span { border-radius: 999px; background: #f6eee3; border-color: var(--sal-laiton); color: #6a1838; }
html:not(#_) .aa-wrap .aa-hero__chiffres span::before { background: #8e244d; }

/* ---------- annonces : cartes de salon ---------- */
html:not(#_) .aa-wrap .aa-liste { border-top: 0; gap: .9rem; }
html:not(#_) .aa-wrap .aa-liste .aa-ligne {
  background: #fffaf4; border: 1px solid var(--aa-bord); border-radius: 18px; padding: .9rem;
  box-shadow: 0 10px 22px -18px rgba(142, 36, 77, .55); transition: box-shadow .2s ease, transform .2s ease;
}
html:not(#_) .aa-wrap .aa-liste .aa-ligne:hover { background: #fffaf4; transform: translateY(-2px); box-shadow: 0 16px 28px -18px rgba(142, 36, 77, .7); border-color: rgba(184, 146, 79, .7); }
html:not(#_) .aa-wrap .aa-ligne .aa-ligne__img { border-radius: 60px 60px 12px 12px; border: 0; box-shadow: 0 0 0 3px #fffaf4, 0 0 0 4px var(--sal-laiton); }
html:not(#_) .aa-wrap .aa-ligne .aa-ligne__img img { border-radius: inherit; }
html:not(#_) .aa-wrap .aa-ligne .aa-ligne__cat { color: #8e244d; font-variant: small-caps; text-transform: none; letter-spacing: .08em; font-size: .82rem; }
html:not(#_) .aa-wrap .aa-ligne .aa-ligne__new { background: transparent; color: #7d5f26; border: 1px solid var(--sal-laiton); border-radius: 999px; }
html:not(#_) .aa-wrap .aa-ligne .aa-ligne__titre a { font-family: var(--aa-police-titre); color: #6a1838; text-decoration: none; font-size: 1.1rem; }
html:not(#_) .aa-wrap .aa-ligne .aa-ligne__titre a:hover { text-decoration: underline; text-decoration-color: var(--sal-laiton); }
html:not(#_) .aa-wrap .aa-ligne .aa-ligne__extrait { border-top: 1px dotted var(--sal-laiton); padding-top: .4rem; opacity: 1; }
html:not(#_) .aa-wrap .aa-ligne .aa-ligne__lire { border-radius: 999px; border-color: #8e244d; color: #8e244d; background: #fffaf4; }

/* ---------- boutons ---------- */
html:not(#_) .aa-btn.aa-btn--primaire { background: linear-gradient(180deg, #a02c58, #7e1f44); border-color: #6a1838; border-radius: 999px; box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18), 0 8px 18px -12px rgba(142, 36, 77, .9); }
html:not(#_) .aa-btn.aa-btn--secondaire { border-radius: 999px; border-color: #8e244d; color: #8e244d; background: #fffaf4; }

/* ---------- colonne latérale ---------- */
html:not(#_) .aa-layout__side .aa-side { background: #f6eee3; border-color: var(--aa-bord); border-radius: 16px; box-shadow: 0 10px 22px -20px rgba(142, 36, 77, .6); }
html:not(#_) .aa-side .aa-side__liste li::before { width: 6px; height: 6px; border-radius: 1px; transform: rotate(45deg); background: var(--sal-laiton); }
html:not(#_) .aa-side .aa-side__liste li { border-top-color: rgba(184, 146, 79, .45); }
html:not(#_) .aa-side .aa-side__nb { border-color: rgba(184, 146, 79, .6); background: #fffaf4; color: #65525a; }
html:not(#_) .aa-side--deposer.aa-side { background: none; box-shadow: none; }

/* ---------- moteur, chips, pagination en médaillons ---------- */
html:not(#_) .aa-wrap .aa-filtres { background: #f6eee3; border-radius: 16px; border-color: var(--aa-bord); }
html:not(#_) .aa-wrap select, html:not(#_) .aa-wrap input[type="text"], html:not(#_) .aa-wrap input[type="email"], html:not(#_) .aa-wrap textarea { border-radius: 12px; border-color: #d9c4ad; background-color: #fffdf9; }
html:not(#_) .aa-wrap .aa-chips li, html:not(#_) .aa-wrap .aa-chip { border-color: rgba(184, 146, 79, .7); background: #fffaf4; }
html:not(#_) .aa-pagination a, html:not(#_) .aa-pagination span { border-radius: 50%; min-width: 42px; min-height: 42px; border-color: rgba(184, 146, 79, .7); background: #fffaf4; color: #6a1838; }
html:not(#_) .aa-pagination .aa-pagination__mot { border-radius: 999px; }
html:not(#_) .aa-pagination .is-actif { background: #8e244d; color: #fff; border-color: #6a1838; box-shadow: 0 0 0 3px #fffaf4, 0 0 0 4px var(--sal-laiton); }
html:not(#_) .aa-wrap .aa-liens li, html:not(#_) .aa-wrap .aa-etapes li, html:not(#_) .aa-wrap .aa-atouts li { border-radius: 14px; background: #f6eee3; }
html:not(#_) .aa-wrap .aa-liens li::before { background: var(--sal-laiton); }
html:not(#_) .aa-wrap .aa-etapes li::before { background: #8e244d; box-shadow: 0 0 0 2px #f6eee3, 0 0 0 3px var(--sal-laiton); }
html:not(#_) .aa-wrap .aa-atouts li { border-left-color: var(--sal-laiton); }

/* CTA de dépôt : carte centrée avec de l'air */
html:not(#_) .aa-wrap .aa-deposer-cta { max-width: 560px; margin-inline: auto; justify-content: center; text-align: center; padding: 1.4rem 1.6rem; border: 1px solid var(--sal-laiton); border-radius: 20px; background: #fffaf4; box-shadow: inset 0 0 0 4px #fffaf4, inset 0 0 0 5px rgba(184, 146, 79, .35), var(--aa-ombre); }

/* ---------- fiche d'annonce ---------- */
html:not(#_) .aa-wrap .aa-fiche__titre { font-family: var(--aa-police-titre); font-style: italic; color: #3a0f22; border-bottom: 1px solid var(--sal-laiton); box-shadow: 0 3px 0 -1px #fffaf4, 0 4px 0 -1px rgba(184, 146, 79, .6); }
html:not(#_) .aa-wrap .aa-fiche__photo { border: 0; border-radius: 150px 150px 18px 18px; box-shadow: 0 0 0 4px #fffaf4, 0 0 0 5px var(--sal-laiton), 0 18px 30px -20px rgba(142, 36, 77, .7); }
html:not(#_) .aa-wrap .aa-fiche__miniatures img { border-radius: 30px 30px 8px 8px; border-color: rgba(184, 146, 79, .6); }
html:not(#_) .aa-wrap .aa-fiche__infos { border-color: rgba(184, 146, 79, .6); border-radius: 16px; background: #fffaf4; }
html:not(#_) .aa-wrap .aa-fiche__infos > div:nth-child(odd) { background: #f8f1e7; }
html:not(#_) .aa-wrap .aa-fiche__infos > div + div { border-top: 1px dotted rgba(184, 146, 79, .7); }
html:not(#_) .aa-wrap .aa-fiche__infos dd { border-left: 0; }
html:not(#_) .aa-wrap .aa-fiche__infos dt { font-variant: small-caps; letter-spacing: .05em; }
html:not(#_) .aa-wrap .aa-fiche__cta--haut { background: #fffaf4; border: 1px solid var(--sal-laiton); border-radius: 18px; box-shadow: var(--aa-ombre); }
html:not(#_) .aa-wrap .aa-fiche__cta--bas { background: #f6eee3; border: 1px solid rgba(184, 146, 79, .6); border-radius: 20px; max-width: 520px; margin-inline: auto; }
html:not(#_) .aa-wrap .aa-fiche__plage { background: #f6eee3; border: 1px solid rgba(184, 146, 79, .6); border-radius: 999px; color: #6a1838; }
html:not(#_) .aa-wrap .aa-fiche__phy { background: #fffaf4; border-color: rgba(184, 146, 79, .55); border-radius: 14px; }
html:not(#_) .aa-wrap .aa-repondre { background: #f6eee3; border-radius: 18px; border-color: var(--aa-bord); }
html:not(#_) .aa-wrap .aa-fiche__new { background: transparent; color: #7d5f26; border: 1px solid var(--sal-laiton); border-radius: 999px; }

/* ---------- dépôt ---------- */
html:not(#_) .aa-wrap .aa-depot__bloc { border-radius: 18px; background: #fffaf4; border-color: var(--aa-bord); }
html:not(#_) .aa-wrap .aa-depot__bloc legend::before { background: var(--sal-laiton-clair); color: #3a0f22; }

/* ---------- barres mobiles (couleurs seulement) ---------- */
html:not(#_) .aa-mobar, html:not(#_) .aa-fiche__barre { background: rgba(255, 250, 244, .96); border-top: 1px solid var(--sal-laiton); }

/* ---------- pied ---------- */
html:not(#_) .aa-footer.aa-footer {
  border-top: 1px solid var(--sal-laiton); box-shadow: 0 -4px 0 #3a0f22;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23d9bd84' fill-opacity='.06' d='M12 21s-8-4.9-8-10.7A4.6 4.6 0 0 1 12 7.4a4.6 4.6 0 0 1 8 2.9C20 16.1 12 21 12 21z'/%3E%3C/svg%3E") right 4% top 18px/150px no-repeat,
    #2a0a18;
}
html:not(#_) .aa-footer .aa-footer__h { font-family: var(--aa-police-titre); text-transform: none; font-variant: small-caps; letter-spacing: .1em; font-size: .95rem; color: var(--sal-laiton-clair); border-bottom: 1px dotted rgba(217, 189, 132, .45); }
html:not(#_) .aa-footer .aa-footer__brand { font-family: var(--aa-police-titre); font-style: italic; }
html:not(#_) .aa-footer .aa-footer__fictif { opacity: 1; color: #cdbba6; }

/* ---------- porte et pop-up ---------- */
html:not(#_) .aa-gate__box, html:not(#_) .aa-popup__box { border-radius: 20px; border-top: 3px solid var(--sal-laiton); }

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

/* ---------- ajustements (tour 2) ---------- */
html:not(#_) .aa-side .aa-side__h { font-size: .9rem; letter-spacing: .05em; }
html:not(#_) .aa-wrap .aa-fiche__texte { border-top-color: var(--sal-laiton); border-top-width: 1px; }
@media (max-width: 719px) {
  html:not(#_) .aa-wrap .aa-bloc__tete { flex-wrap: wrap; gap: .4rem; }
  html:not(#_) .aa-wrap .aa-bloc__tete .aa-h2 { flex: 1 1 100%; font-size: .92rem; letter-spacing: .06em; }
  html:not(#_) .aa-wrap .aa-bloc__tete .aa-lien { margin-left: auto; }
  html:not(#_) .aa-wrap .aa-hero { padding: 1.2rem 1rem 1rem; }
}
@media (max-width: 759px) {
  html:not(#_) .aa-wrap .aa-fiche__photo { max-height: 340px; border-radius: 120px 120px 16px 16px; }
}
