/* =====================================================================
   drague-gay.be — habillage unique (gabarit annoncesastro-v2, skin-1 / compo-6).
   Belgique francophone, hommes qui cherchent des hommes : ton viril, direct.

   REGISTRE : « MAGENTA & CHARBON, RAYURES »
   Vocabulaire de forme : des RAYURES diagonales (en-tête, cadres de photo,
   têtes de colonne, pied), des FANIONS (bandeaux à encoche en V à droite),
   des MÉDAILLONS rayés (logo, vignettes, numéros du dépôt) et des TAQUETS
   (boutons à coin coupé bas-droite). Aucune arche, aucun cartouche.

   PALETTE (accent du favicon #c2185b)
     magenta   #c2185b  accent, boutons              (blanc dessus ~6:1)
     magenta f #8e1244 / #b0154f  liens, survols, rayures sombres
     rose rayé #e85a92  rayure claire (décor seul, jamais sous du texte)
     charbon   #211b1e  encre, en-tête, fanions, pied (blanc 16:1)
     sable     #f5ece1  neutre CHAUD : surfaces 2, cases (#b0154f dessus ~6:1)
     page      #e9ddd1  sable grisé chaud
   ===================================================================== */

body.aa {
  --aa-primaire: #c2185b; --aa-primaire-fonce: #8e1244; --aa-primaire-txt: #fff; --aa-teinte: #c2185b;
  --aa-page: #e9ddd1; --aa-fond: #fffcf8; --aa-surface: #fffcf8; --aa-surface-2: #f5ece1;
  --aa-texte: #211b1e; --aa-muet: #5f5358; --aa-bord: #e3d5c8; --aa-lien: #b0154f;
  --aa-tete: #211b1e; --aa-tete-txt: #fbf5ef; --aa-barre: #2d2528;
  --aa-bande: #211b1e; --aa-bande-txt: #fbf5ef; --aa-bande-bord: #c2185b;
  --aa-secondaire: #211b1e; --aa-secondaire-txt: #fff; --aa-pied: #211b1e; --aa-pied-txt: #ddd0d3;
  --aa-ok: #2e6b3f; --aa-rayon: 5px; --aa-rayon-s: 4px;
  --aa-ombre: 0 1px 0 rgba(33, 27, 30, .05), 0 18px 34px -24px rgba(142, 18, 68, .55);
  --aa-police: "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif;
  --aa-police-titre: "Arial Black", "Segoe UI", system-ui, sans-serif;
  --dg-raye: repeating-linear-gradient(135deg, #c2185b 0 5px, #e85a92 5px 10px);
  --dg-raye-s: repeating-linear-gradient(135deg, #8e1244 0 6px, #c2185b 6px 12px);
  --dg-fanion: polygon(0 0, 100% 0, calc(100% - 11px) 50%, 100% 100%, 0 100%);
  --dg-taquet: polygon(0 0, 100% 0, 100% calc(100% - 9px), calc(100% - 9px) 100%, 0 100%);
  background-color: #e9ddd1;
  background-image: radial-gradient(900px 340px at 85% -120px, rgba(194, 24, 91, .14), transparent 70%);
}

/* --- en-tête : charbon à fines rayures magenta, logo en médaillon rayé ---- */
body.aa .aa-header {
  background: repeating-linear-gradient(135deg, rgba(194, 24, 91, .16) 0 2px, transparent 2px 14px), #211b1e;
  box-shadow: none; border-bottom: 6px solid transparent;
  border-image: repeating-linear-gradient(135deg, #c2185b 0 8px, #211b1e 8px 16px) 6;
}
body.aa .aa-logo__mark { width: 34px; height: 34px; border-radius: 50%; background: var(--dg-raye); box-shadow: 0 0 0 3px #211b1e, 0 0 0 5px #c2185b; }
body.aa .aa-logo__txt { font-family: var(--aa-police-titre); font-weight: 900; letter-spacing: .01em; text-transform: uppercase; font-size: 1.25rem; }
body.aa .aa-logo__sous { color: #f0b7cd; opacity: 1; letter-spacing: .06em; text-transform: uppercase; font-size: .66rem; }
body.aa .aa-header__cta { clip-path: var(--dg-taquet); border-radius: 0; padding-inline: 1.1em 1.4em; }
body.aa .aa-nav { background: transparent; }
body.aa .aa-nav a { color: #fbf5ef; letter-spacing: .03em; text-transform: uppercase; font-size: .8rem; position: relative; border-bottom: 0; }
body.aa .aa-nav a::after { content: ""; position: absolute; left: .9rem; right: .9rem; bottom: 0; height: 4px; background: var(--dg-raye); transform: scaleX(0); transform-origin: left; transition: transform .2s ease; }
body.aa .aa-nav a:hover::after { transform: scaleX(1); }
body.aa .aa-nav a.is-actif { background: #fffcf8; color: #211b1e; clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 100%, 0 100%); }
body.aa .aa-nav a.is-actif::after { transform: scaleX(1); left: 0; right: 10px; }
body.aa .aa-burger { border-color: #c2185b; color: #fbf5ef; }
@media (max-width: 959px) {
  body.aa .aa-nav { background: #2d2528; }
  body.aa .aa-nav a.is-actif { clip-path: none; border-left: 5px solid #c2185b; }
}

@media (max-width: 680px) {
  body.aa .aa-bloc__tete { flex-wrap: wrap; gap: .4rem; }
  body.aa .aa-bloc__tete .aa-h2 { flex: 1 1 100%; }
  body.aa .aa-bloc__tete .aa-lien { margin-left: auto; }
}

/* --- conteneur ------------------------------------------------------------ */
body.aa .aa-main > .aa-wrap { border-color: #e3d5c8; border-radius: 6px; box-shadow: var(--aa-ombre); }

/* --- fanions : titres de section charbon, taquet rayé à gauche, encoche à droite */
body.aa .aa-h2, body.aa .aa-bande, body.aa .aa-depot__bloc legend {
  background: var(--dg-raye) 0 0 / 12px 100% no-repeat, #211b1e; color: #fbf5ef;
  border-left: 0; border-radius: 0; padding: .5rem 1.7rem .5rem calc(12px + .75rem);
  clip-path: var(--dg-fanion); letter-spacing: .07em; font-size: .86rem;
}
body.aa .aa-bande__droite { color: #f0b7cd; opacity: 1; }
body.aa .aa-bloc__tete .aa-lien { color: #b0154f; font-weight: 700; }
/* têtes de colonne : plaque entièrement rayée */
body.aa .aa-side { background: #f5ece1; border-color: #e3d5c8; border-radius: 6px; box-shadow: 0 12px 24px -22px rgba(142, 18, 68, .6); }
body.aa .aa-side__h { background: var(--dg-raye-s); color: #fff; border-bottom: 0; border-radius: 6px 6px 0 0; text-shadow: 0 1px 0 rgba(0, 0, 0, .45); letter-spacing: .08em; font-size: .8rem; }
body.aa .aa-side__liste li::before { border-radius: 0; width: 8px; height: 3px; top: .95em; transform: skewX(-30deg); }
body.aa .aa-side__liste li a:hover, body.aa .aa-side__liste li.is-actif a { color: #b0154f; }
body.aa .aa-side__nb { background: #fffcf8; border-color: #e3d5c8; color: #5f5358; border-radius: 3px; }
body.aa .aa-side__liste--inline li { border: 1px solid #e3d5c8; background: #fffcf8; }

/* --- accueil : bandeau d'intro sable, coin rayé -------------------------- */
body.aa .aa-hero {
  position: relative; overflow: hidden; background: #f5ece1; border: 0; border-radius: 6px;
  border-left: 6px solid #211b1e; padding: 1.2rem 1.4rem 1.2rem 1.3rem;
  box-shadow: inset 0 0 0 1px #e3d5c8;
}
body.aa .aa-hero::after { content: ""; position: absolute; top: 0; right: 0; width: 110px; height: 110px; background: var(--dg-raye); clip-path: polygon(45% 0, 100% 0, 100% 55%); pointer-events: none; }
body.aa .aa-hero .aa-h1 { font-family: var(--aa-police-titre); text-transform: uppercase; letter-spacing: -.005em; padding-right: 44px; }
body.aa .aa-hero .aa-intro { color: #4a3f43; }
body.aa .aa-hero__chiffres span { background: #211b1e; color: #fbf5ef; border: 0; border-radius: 0; clip-path: var(--dg-taquet); padding: .3rem 1rem .3rem .75rem; }
body.aa .aa-hero__chiffres span::before { background: #e85a92; border-radius: 0; transform: rotate(45deg); }

/* --- lignes d'annonce : médaillon rayé autour de la vignette -------------- */
body.aa .aa-liste { border-top: 0; }
body.aa .aa-ligne { border-bottom: 1px dashed #d9c7b8; }
body.aa .aa-ligne:hover { background: linear-gradient(90deg, rgba(194, 24, 91, .07), rgba(245, 236, 225, .6) 60%, transparent); }
body.aa .aa-ligne__img { border: 0; padding: 4px; background: var(--dg-raye); background-size: 28px 28px; border-radius: 50%; transition: background-position .5s ease; box-shadow: 0 8px 16px -10px rgba(142, 18, 68, .7); }
body.aa .aa-ligne__img img { border-radius: 50%; }
body.aa .aa-ligne:hover .aa-ligne__img { background-position: 14px 0; }
body.aa .aa-ligne__nb { left: 50%; bottom: 0; transform: translateX(-50%); background: #211b1e; border-radius: 3px; }
body.aa .aa-ligne__cat { color: #b0154f; }
body.aa .aa-ligne__new { background: #211b1e; border-radius: 0; clip-path: var(--dg-taquet); padding-right: .7rem; }
body.aa .aa-ligne__titre a { color: #211b1e; font-weight: 800; background: linear-gradient(#e85a92, #e85a92) 0 100% / 0 2px no-repeat; transition: background-size .25s ease; }
body.aa .aa-ligne:hover .aa-ligne__titre a { color: #b0154f; background-size: 100% 2px; text-decoration: none; }
body.aa .aa-ligne__lire { border-radius: 0; border-color: #211b1e; color: #211b1e; background: #fffcf8; box-shadow: 3px 3px 0 #e85a92; }
body.aa .aa-ligne:hover .aa-ligne__lire { background: #c2185b; border-color: #c2185b; color: #fff; }

/* --- boutons : taquets à coin coupé --------------------------------------- */
body.aa .aa-btn--primaire { border-radius: 0; clip-path: var(--dg-taquet); background: #c2185b; border-color: #c2185b; color: #fff; box-shadow: inset 0 -3px 0 #8e1244; }
body.aa .aa-btn--primaire:hover { background: #a8134c; }
body.aa .aa-btn--secondaire { border-radius: 0; background: #fffcf8; border-color: #211b1e; color: #211b1e; box-shadow: 4px 4px 0 #e85a92; }
body.aa .aa-btn--secondaire:hover { box-shadow: 4px 4px 0 #c2185b; }
body.aa .aa-btn--secondaire:hover { background: #211b1e; color: #fff; }
body.aa .aa-pagination a, body.aa .aa-pagination span { border-radius: 0; background: #f5ece1; }
body.aa .aa-pagination .is-actif { background: var(--dg-raye-s); color: #fff; border-color: #8e1244; }

/* --- fiche : photo dans un cadre rayé, tableau sable, CTA en carte -------- */
body.aa .aa-fiche__titre { font-family: var(--aa-police-titre); text-transform: uppercase; letter-spacing: -.005em; }
body.aa .aa-fiche__cat a { color: #b0154f; }
body.aa .aa-fiche__new { background: #211b1e; color: #fff; border-radius: 0; clip-path: var(--dg-taquet); }
body.aa .aa-fiche__photo { border: 0; padding: 7px; background: var(--dg-raye-s); border-radius: 6px; box-shadow: 0 22px 36px -24px rgba(142, 18, 68, .8); }
body.aa .aa-fiche__miniatures img { border-radius: 50%; border: 3px solid #f5ece1; box-shadow: 0 0 0 2px #c2185b; }
body.aa .aa-fiche__infos { border: 0; border-radius: 6px; box-shadow: inset 0 0 0 1px #e3d5c8; }
body.aa .aa-fiche__infos > div:nth-child(odd) { background: #f5ece1; }
body.aa .aa-fiche__infos dt { color: #5f5358; text-transform: uppercase; font-size: .76rem; letter-spacing: .05em; }
body.aa .aa-fiche__cta--haut { background: #fffcf8; border: 0; border-top: 6px solid transparent; border-image: repeating-linear-gradient(135deg, #c2185b 0 7px, #211b1e 7px 14px) 6; border-radius: 0; box-shadow: 0 16px 30px -22px rgba(142, 18, 68, .7), inset 0 0 0 1px #e3d5c8; }
body.aa .aa-fiche__cta--bas { max-width: 520px; margin-inline: auto; padding: 1.4rem 1.2rem; background: #f5ece1; border: 0; border-radius: 6px; box-shadow: 0 18px 32px -24px rgba(142, 18, 68, .7), inset 0 0 0 1px #e3d5c8; }
body.aa .aa-fiche__cta-sous { color: #5f5358; }
body.aa .aa-fiche__phy, body.aa .aa-chips--lecture li { background: #f5ece1; border-color: #e3d5c8; border-radius: 0; }
body.aa .aa-chips li, body.aa .aa-chip { border-radius: 0; }
body.aa .aa-chip:has(input:checked) { box-shadow: 3px 3px 0 #e85a92; }
body.aa .aa-chip:has(input:checked) { background: #211b1e; color: #fff; border-color: #211b1e; }
body.aa .aa-repondre { background: #f5ece1; border-radius: 6px; }

/* --- dépôt : fanions numérotés d'un médaillon rayé ------------------------ */
body.aa .aa-depot__bloc { border-color: #e3d5c8; background: #fffcf8; border-radius: 6px; box-shadow: 0 12px 24px -22px rgba(142, 18, 68, .6); }
body.aa .aa-depot__bloc legend::before { background: var(--dg-raye-s); color: #fff; font-weight: 900; text-shadow: 0 1px 1px rgba(0, 0, 0, .5); box-shadow: 0 0 0 2px #fbf5ef; }
body.aa .aa-regles { background: #f5ece1; border-radius: 6px; }
body.aa .aa-deposer-cta { max-width: 560px; margin-inline: auto; border: 0; background: #f5ece1; box-shadow: 0 18px 30px -24px rgba(142, 18, 68, .7), inset 0 0 0 1px #e3d5c8; padding: 1.3rem; }
body.aa select:focus, body.aa input:focus, body.aa textarea:focus { border-color: #c2185b; box-shadow: 0 0 0 3px rgba(194, 24, 91, .2); outline: 0; }

/* --- pied : charbon, liseré rayé épais ------------------------------------ */
body.aa .aa-footer { border-top: 0; }
body.aa .aa-footer::before { content: ""; display: block; height: 10px; background: repeating-linear-gradient(135deg, #c2185b 0 10px, #211b1e 10px 20px); }
body.aa .aa-footer__h { color: #fbf5ef; border-bottom: 2px solid #c2185b; }
body.aa .aa-footer a:hover { color: #f0b7cd; }
body.aa .aa-footer__fictif { color: #cdbfc3; opacity: 1; }
body.aa .aa-footer__bas { background: #171214; }

/* --- barres mobiles & pop-ups --------------------------------------------- */
body.aa .aa-mobar, body.aa .aa-fiche__barre { background: rgba(33, 27, 30, .95); border-top: 3px solid #c2185b; }
body.aa .aa-mobar .aa-btn--secondaire, body.aa .aa-fiche__barre .aa-btn--secondaire { background: #fffcf8; }
body.aa .aa-gate__box, body.aa .aa-popup__box { border-radius: 6px; border-top: 7px solid transparent; border-image: repeating-linear-gradient(135deg, #c2185b 0 8px, #211b1e 8px 16px) 7; background: #fffcf8; }
body.aa .aa-gate__mark { background: var(--dg-raye-s); text-shadow: 0 1px 1px rgba(0, 0, 0, .4); }
body.aa :focus-visible { outline: 3px solid #c2185b; outline-offset: 2px; }

@media (prefers-reduced-motion: reduce) {
  body.aa .aa-nav a::after, body.aa .aa-ligne__img, body.aa .aa-ligne__titre a { transition: none; }
}
