/* echangiste-monaco.com — registre « CUIR & CHAMPAGNE » (annoncesastro-v2, skin-3 / compo-3 / fiche-2)
   Palette : cuir #5d4037 (couleur du site = favicon) + #6d4b3c/#4d362a/#3b281f/#2b1d17 ; cognac #7d4526
   (liens) ; champagne #f3e6c8, crème #fffaf0, sable #e3d3b0 (neutres chauds) ; laiton #b08d4f (filets) ;
   encre #2a1d16. Le vert « nouveau » du gabarit passe en laiton, les framboises en cuir.
   Composition : en-tête a deux rangees separees d'un filet laiton + logo MEDAILLON a coeur grave · nav en
   PILULES · bandeaux en CARTOUCHE serif capitale (au lieu de l'italique du skin) · annonces en FICHES-
   CARTES a ombre douce, dos de cuir, vignette en ARCHE cerclee laiton · fiche en CARTE A BORD EPAIS
   (cadre cuir 5 px, tableau et appels cercles 3 px, couture dashed) · medaillons + coeur en filigrane.
   Les CTA gardent place, taille et geste. html:not(#_) : seulement la ou .skin-3 redefinit le selecteur. */

html:not(#_), html:not(#_) body.aa {
  --cu: #5d4037; --cu2: #6d4b3c; --cu3: #4d362a; --cu4: #3b281f; --cu5: #2b1d17;
  --cog: #7d4526; --lai: #b08d4f; --lai2: #8a6620;
  --cha: #f3e6c8; --chp: #faf3e4; --cre: #fffaf0; --sab: #e3d3b0; --sa2: #d6c39c;
  --om: 0 2px 4px -2px rgba(74,50,39,.2), 0 16px 32px -22px rgba(74,50,39,.55);
  --oms: 0 1px 2px rgba(74,50,39,.1), 0 9px 20px -15px rgba(74,50,39,.48);
  --gcuir: linear-gradient(180deg,var(--cu2),var(--cu) 48%,#473026);
  --gmedc: linear-gradient(160deg,var(--cu2),var(--cu) 60%,var(--cu4));
  --gmed: linear-gradient(160deg,#f9f0da,var(--cha));
  --gcar: linear-gradient(180deg,var(--cre),var(--chp));
  --gcar2: linear-gradient(180deg,var(--cre),#fdf7ea);
  --gchp: linear-gradient(180deg,var(--chp),#f7efdc);
  --coeur: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 20.5C4 14.4 4 8.4 8 6.3c2.2-1.1 4 .2 4 2.2 0-2 1.8-3.3 4-2.2 4 2.1 4 8.1-4 14.2z' fill='%235d4037'/%3E%3C/svg%3E");
  --coeurp: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 20.5C4 14.4 4 8.4 8 6.3c2.2-1.1 4 .2 4 2.2 0-2 1.8-3.3 4-2.2 4 2.1 4 8.1-4 14.2z' fill='%237a4b2e' opacity='.13'/%3E%3C/svg%3E");
  --aa-primaire: var(--cu); --aa-primaire-fonce: var(--cu5); --aa-primaire-txt: #fffaf0;
  --aa-page: #d8c3a2; --aa-fond: var(--cre); --aa-surface: var(--cre); --aa-surface-2: var(--chp);
  --aa-texte: #2a1d16; --aa-muet: #5c4736; --aa-bord: var(--sab); --aa-lien: var(--cog);
  --aa-tete: var(--cu4); --aa-tete-txt: var(--cha); --aa-barre: var(--cu3);
  --aa-bande: var(--cu); --aa-bande-txt: var(--cha); --aa-bande-bord: var(--lai);
  --aa-secondaire: #3f2a22; --aa-secondaire-txt: var(--cre);
  --aa-pied: var(--cu5); --aa-pied-txt: #e3d3b4; --aa-ok: #5f5a18;
  --aa-rayon: 14px; --aa-rayon-s: 10px; --aa-ombre: var(--om);
  --aa-police-titre: Georgia, "Palatino Linotype", serif;
}
/* fond : cuir souple, le conteneur crème posé dessus comme un sous-main */
html:not(#_) body.aa { background: linear-gradient(180deg,#ddc9a8,#ceb390 62%,#c2a47c); }

/* en-tête : deux rangées, filet laiton, logo médaillon, nav en pilules */
.aa-header { background: linear-gradient(180deg,#503629,var(--cu4) 55%,#33221a); box-shadow: 0 2px 0 var(--lai), 0 5px 0 var(--cu5), 0 16px 26px -20px rgba(43,29,23,.85); }
html:not(#_) .aa-logo__mark { width: 36px; height: 36px; border-radius: 50%; background: var(--coeur) center / 54% no-repeat, linear-gradient(160deg,#f9f0da,var(--cha) 58%,#e2cea4); box-shadow: inset 0 0 0 2px var(--lai), 0 3px 9px -4px rgba(0,0,0,.7); }
html:not(#_) .aa-logo__txt { font-style: italic; text-shadow: 0 1px 0 rgba(0,0,0,.4); }
.aa-logo__sous { color: #ddc79d; opacity: 1; margin-top: .22rem; font-size: .68rem; letter-spacing: .12em; text-transform: uppercase; }
.aa-header__cta { border-radius: 999px; box-shadow: inset 0 0 0 1px rgba(243,230,200,.5), 0 7px 16px -9px rgba(0,0,0,.75); }
.aa-burger { border-radius: 999px; border-color: rgba(176,141,79,.75); background: rgba(243,230,200,.09); }
.aa-nav { background: linear-gradient(180deg,var(--cu3),#422d23); border-top: 1px solid rgba(176,141,79,.5); padding-block: .35rem; }
.aa-nav ul { gap: .35rem; align-items: center; }
.aa-nav a { min-height: 42px; padding: .5rem 1.05rem; border-bottom: 0; border-radius: 999px; color: var(--cha); letter-spacing: .015em; }
.aa-nav a:hover { background: rgba(243,230,200,.14); box-shadow: inset 0 0 0 1px rgba(176,141,79,.65); }
.aa-nav a.is-actif { background: linear-gradient(180deg,#fbf4e3,var(--cha)); color: #3b281f; box-shadow: inset 0 0 0 1px var(--lai), 0 3px 8px -4px rgba(0,0,0,.6); }
@media (max-width: 859px) { .aa-nav { padding: .45rem; } .aa-nav a { min-height: 46px; padding: .7rem 1rem; } .aa-nav__cta a { border-radius: 999px; } }

/* conteneur + bandeaux en cartouche */
html:not(#_) .aa-main > .aa-wrap { background: radial-gradient(540px 280px at 100% 0,rgba(243,230,200,.5),rgba(243,230,200,0) 72%), var(--cre); border: 1px solid #cdb890; border-radius: 22px; box-shadow: 0 0 0 6px rgba(255,250,240,.38), var(--om); }
html:not(#_) .aa-h2, html:not(#_) .aa-side__h, html:not(#_) .aa-bande, html:not(#_) .aa-depot__bloc legend {
  background: var(--gcuir); color: var(--cha); font-family: var(--aa-police-titre); font-style: normal;
  font-size: .82rem; text-transform: uppercase; letter-spacing: .1em; border-left: 4px solid var(--lai);
  border-radius: 6px 999px 999px 6px; padding: .58rem 1.4rem .58rem .95rem;
  box-shadow: inset 0 -1px 0 rgba(176,141,79,.6), var(--oms); overflow-wrap: normal;
}
/* capitales espacées : sous 640 px le bandeau prend sa propre ligne, jamais un mot coupé */
@media (max-width: 639px) {
  html:not(#_) .aa-h2, html:not(#_) .aa-bande { font-size: .74rem; letter-spacing: .05em; padding-right: 1.1rem; }
  .aa-bloc__tete { flex-wrap: wrap; gap: .5rem; }
}
html:not(#_) .aa-side__h { border-left: 0; border-bottom: 2px solid var(--lai); border-radius: var(--aa-rayon) var(--aa-rayon) 0 0; margin: -.8rem -.9rem .85rem; padding: .6rem .9rem; font-size: .76rem; }
.aa-bande__droite { opacity: 1; color: #f0e2c0; }
html:not(#_) .aa-h1, .aa-deposer-cta__h { font-family: var(--aa-police-titre); font-weight: 700; letter-spacing: 0; }

/* bandeau d'accueil, cœur en filigrane */
html:not(#_) .aa-hero { background: var(--coeurp) right -16px top -18px / 150px no-repeat, radial-gradient(420px 200px at 6% 0,rgba(255,252,245,.95),rgba(255,252,245,0) 70%), linear-gradient(135deg,#f7ecd4,var(--chp) 58%,var(--cre)); border: 1px solid var(--sab); border-left: 6px solid var(--cu); border-radius: 8px 28px 28px 8px; padding: 1.35rem 1.4rem; box-shadow: inset 0 0 0 1px rgba(255,250,240,.8), var(--oms); }
.aa-hero__chiffres span { background: linear-gradient(180deg,var(--cre),var(--cha)); border-color: var(--lai); color: #3f2a22; font-family: var(--aa-police-titre); padding: .25rem .8rem; }
.aa-hero__chiffres span::before { background: var(--lai2); }

/* boutons */
.aa-btn { border-radius: 999px; letter-spacing: .012em; }
.aa-btn--primaire { background: var(--gcuir); color: var(--cre); border-color: var(--cu5); box-shadow: inset 0 0 0 1px rgba(226,203,155,.45), 0 9px 18px -11px rgba(74,50,39,.8); }
.aa-btn--primaire:hover { box-shadow: inset 0 0 0 1px rgba(226,203,155,.75), 0 12px 24px -11px rgba(74,50,39,.9); }
.aa-btn--secondaire { background: var(--cre); color: #3f2a22; border-color: var(--cu); box-shadow: inset 0 0 0 1px rgba(176,141,79,.35); }
.aa-btn--large { min-height: 52px; }

/* liste : fiches-cartes, dos de cuir, vignette en arche */
html:not(#_) .aa-liste { border-top: 0; gap: .8rem; }
html:not(#_) .aa-ligne { background: var(--gcar2); border: 1px solid var(--sab); border-radius: 18px; padding: .9rem 1rem .9rem 1.15rem; box-shadow: var(--oms); overflow: hidden; }
html:not(#_) .aa-ligne::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 5px; background: linear-gradient(180deg,var(--lai),var(--cu) 45%,var(--cu4)); }
html:not(#_) .aa-ligne:hover { background: var(--gcar); border-color: #cdb890; box-shadow: var(--om); }
.aa-ligne__img { border: 1px solid var(--lai); background: var(--cha); border-radius: 58px 58px 12px 12px; padding: 3px; box-shadow: 0 7px 15px -10px rgba(74,50,39,.8); }
.aa-ligne__img img { border-radius: 55px 55px 9px 9px; }
.aa-ligne__nb { background: rgba(43,29,23,.82); color: var(--cha); box-shadow: inset 0 0 0 1px rgba(176,141,79,.65); }
.aa-ligne__new, .aa-fiche__new { background: linear-gradient(180deg,var(--lai2),#6f5117); color: var(--cre); border-radius: 999px; padding: .14rem .58rem; letter-spacing: .08em; box-shadow: inset 0 0 0 1px rgba(255,250,240,.35); }

/* moteur et pagination */
.aa-filtres { background: linear-gradient(180deg,var(--chp),#f6edd9); border: 1px solid var(--sab); border-radius: 18px; padding: 1rem; box-shadow: inset 0 0 0 1px rgba(255,250,240,.75), var(--oms); }
.aa-pagination a, .aa-pagination span { background: var(--cre); border-radius: 999px; font-family: var(--aa-police-titre); }
.aa-pagination .is-actif { background: var(--gcuir); color: var(--cha); border-color: var(--cu5); box-shadow: inset 0 0 0 1px rgba(226,203,155,.5); }

/* colonne latérale */
.aa-side { background: var(--gchp); border: 1px solid var(--sab); border-radius: var(--aa-rayon); padding: .8rem .9rem 1rem; box-shadow: var(--oms); }
.aa-side--deposer { background: none; border: 0; box-shadow: none; }
html:not(#_) .aa-side__liste li::before { background: var(--lai); }
.aa-side__nb, .aa-liens__nb { background: var(--cha); border: 1px solid var(--sa2); border-radius: 999px; padding: 0 .5rem; color: #5c4736; font-weight: 700; }

/* blocs de l'accueil : cases à dos laiton, étapes et atouts en médaillons */
.aa-liens li { background: var(--gcar); border: 1px solid var(--sab); border-radius: 13px; padding: .55rem .7rem .55rem 1.05rem; box-shadow: var(--oms); }
.aa-liens li::before { width: 4px; border-radius: 13px 0 0 13px; background: linear-gradient(180deg,var(--lai),var(--cu)); }
.aa-liens li a { font-family: var(--aa-police-titre); font-size: .96rem; }
.aa-etapes li { background: var(--gcar); border: 1px solid var(--sab); border-radius: 18px; padding: .95rem 1rem .95rem 3.5rem; box-shadow: var(--oms); }
.aa-etapes li::before { width: 1.95rem; height: 1.95rem; background: var(--gmedc); color: var(--cha); font-family: var(--aa-police-titre); box-shadow: inset 0 0 0 1px rgba(226,203,155,.6), 0 4px 10px -6px rgba(74,50,39,.85); }
.aa-atouts li { background: var(--gcar2); border: 1px solid var(--sab); border-left: 4px solid var(--lai); border-radius: 14px; padding: .85rem .95rem; box-shadow: var(--oms); }
.aa-atouts .aa-atouts__ico, .aa-popup__ico { background: var(--gmed); color: var(--cu); box-shadow: inset 0 0 0 2px var(--lai); }
.aa-deposer-cta { background: var(--coeurp) right -22px bottom -26px / 140px no-repeat, linear-gradient(135deg,var(--cha),#f9f0da 55%,var(--cre)); border: 2px solid var(--lai); border-radius: 22px; outline: 2px dashed rgba(176,141,79,.5); outline-offset: -9px; padding: 1.4rem 1.5rem; gap: 1.1rem; box-shadow: inset 0 0 0 1px rgba(255,250,240,.8), var(--om); }
.aa-deposer-cta__h { font-size: 1.14rem; color: #34251c; }
.aa-vide { background: var(--chp); border-color: var(--lai); border-radius: 16px; }

/* fiche d'annonce : carte à bord épais, photo en arche encadrée */
html:not(#_) .aa-fiche__titre { font-family: var(--aa-police-titre); font-weight: 700; border-bottom: 4px double var(--lai); padding-bottom: .55rem; }
/* arche en % : la scène est bornée à la taille NATIVE de la photo par le gabarit, le dôme suit */
.aa-fiche__photo { border: 4px solid var(--cu); border-radius: 42% 42% 12px 12px / 30% 30% 12px 12px; background: var(--cha); padding: 4px; box-shadow: inset 0 0 0 2px rgba(226,203,155,.85), 0 20px 34px -22px rgba(43,29,23,.8); }
.aa-fiche__miniatures img { border-color: var(--sa2); border-radius: 14px 14px 6px 6px; }
.aa-fiche__infos { border: 3px solid var(--cu); border-radius: 16px; box-shadow: var(--oms); }
.aa-fiche__cta--haut { background: linear-gradient(135deg,var(--cha),#f9f0da 60%,var(--cre)); border: 3px solid var(--cu); border-radius: 20px; padding: 1.05rem; outline: 2px dashed rgba(176,141,79,.45); outline-offset: -8px; box-shadow: inset 0 0 0 1px rgba(255,250,240,.85), var(--oms); }
.aa-fiche__cta--bas { background: var(--chp); border: 2px dashed var(--lai); border-radius: 20px; padding: 1.25rem; }
.aa-fiche__plage { border: 1px solid var(--lai); border-radius: 999px; }
.aa-fiche__phy { background: var(--chp); border: 1px solid var(--sab); border-top: 3px solid var(--lai); border-radius: 12px; }
.aa-chips--lecture li { background: var(--cha); border-color: var(--lai); }
.aa-repondre { background: var(--gchp); border: 2px solid var(--sab); border-radius: 20px; padding: 1.1rem; box-shadow: var(--oms); }
/* barres basses fixes : couleurs seulement, jamais la position */
.aa-fiche__barre, .aa-mobar { background: linear-gradient(180deg,rgba(255,250,240,.97),rgba(243,230,200,.97)); border-top: 2px solid var(--lai); box-shadow: 0 -9px 22px -12px rgba(43,29,23,.6); }

/* dépôt */
.aa-depot__bloc { background: var(--gcar2); border: 2px solid var(--sab); border-radius: 20px; padding: 1rem 1.1rem 1.2rem; box-shadow: var(--oms); }
.aa-depot__bloc legend::before { background: var(--gmed); color: var(--cu4); box-shadow: inset 0 0 0 1px var(--lai); }
.aa-form__lbl { font-family: var(--aa-police-titre); color: #34251c; }

/* pied */
.aa-footer { background: linear-gradient(180deg,var(--cu4),var(--cu5) 58%,#241812); border-top: 3px solid var(--lai); }
.aa-footer__brand { font-family: var(--aa-police-titre); font-style: italic; color: #fff8ea; }
html:not(#_) .aa-footer__brand .aa-logo__mark { width: 26px; height: 26px; }
.aa-footer__h { color: var(--cha); font-family: var(--aa-police-titre); letter-spacing: .12em; border-bottom: 1px solid rgba(176,141,79,.45); }
.aa-footer__fictif { opacity: 1; color: #cfbc96; }
.aa-footer__bas { background: rgba(0,0,0,.3); border-top: 1px solid rgba(176,141,79,.28); }
.aa-footer__bas-in { opacity: 1; color: #cdb992; }

/* porte d'âge et pop-up : couleurs, rayons, filets seulement */
.aa-gate, .aa-popup { background: rgba(35,23,18,.84); }
.aa-gate__box, .aa-popup__box { background: var(--cre); border-top: 6px solid var(--cu); border-radius: 22px; box-shadow: inset 0 0 0 1px rgba(226,203,155,.85), 0 34px 60px -24px rgba(20,12,9,.8); }
.aa-gate__mark { background: var(--gmedc); color: var(--cha); font-family: var(--aa-police-titre); box-shadow: inset 0 0 0 2px var(--lai), 0 8px 18px -10px rgba(74,50,39,.7); }
