/* =====================================================================================================
   sexanzeigen-nrw.de — habillage « rouille & crème » (gabarit sexeannoncesastro, skin-2 « colonne », compo 1)
   Registre : atelier de couture au soleil couchant — papier crème, rouille du favicon (#b7410e), pêche & encre brune.
   Palette : accent #b7410e (favicon) · rouille lisible pour le texte #9a3608 · rouille profonde #8f3108 (bandeau)
             crème #f7ecdd (fond) · ivoire #fffaf2 (surface) · pêche #f2dcc6 (fond 2) · encre #2a1811 · muet #6d4c3c
   Formes signature : (1) photos en PÉTALE (goutte, pointe en bas à gauche) sur cartes, hero, fiche et similaires ;
             (2) COUTURE pointillée rouille à l'intérieur des cartes importantes (thèmes, CTA, fiche, pop-ups) ;
             (3) VAGUE rouille sous chaque titre de section et en lisière du pied de page ;
             (4) cœur SVG en filigrane dans la carte CTA et le bandeau d'inscription.
   Composition : bande crantée rouille en haut, logo italique sur vague, nav en ruban rouille arrondi, hero texte +
             photo pétale (desktop), cartes d'annonce en zigzag (photo à gauche / à droite, ivoire / pêche), bloc
             thèmes en carte pêche cousue, régions en étiquettes à onglet, magazine en cartes à tampon de date,
             inscription en bandeau rouille profond arrondi, pied pêche sous une vague.
   Spécificité : tout est préfixé html:not(#_) (1,0,1) pour passer devant les [data-astro-cid] et les .skin-2.
   ===================================================================================================== */

html:not(#_) body.skin-2 {
  --sa-fond: #f7ecdd;
  --sa-surface: #fffaf2;
  --sa-fond2: #f2dcc6;
  --sa-texte: #2a1811;
  --sa-muet: #6d4c3c;
  --sa-bord: #e3c9b1;
  --sa-secondaire: #8f3108;
  --sa-secondaire-txt: #fff8ee;
  --sa-accent-txt: #fff8ee;
  --sa-tete: #f7ecdd;
  --sa-tete-txt: #2a1811;
  --sa-pied: #f2dcc6;
  --sa-pied-txt: #4a2e21;
  --sa-like: #b7410e;
  --sa-rayon: 18px;
  --sa-rayon-s: 12px;
  --sa-ombre: 0 1px 0 rgba(183, 65, 14, .05), 0 18px 34px -24px rgba(183, 65, 14, .45);
  --sa-max: 800px;
  --rc-rouille: #b7410e;
  --rc-rouille-txt: #9a3608;
  --rc-vague: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 10'%3E%3Cpath d='M0 6c8-8 16-8 24 0s16 8 24 0 16-8 24 0 16 8 24 0' fill='none' stroke='%23b7410e' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E");
  --rc-coeur: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s-8-5.3-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.7-8 11-8 11z' fill='%23b7410e' fill-opacity='.11'/%3E%3C/svg%3E");
  --rc-coeur-clair: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s-8-5.3-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.7-8 11-8 11z' fill='%23fff8ee' fill-opacity='.13'/%3E%3C/svg%3E");
  --rc-petale: 50% 50% 50% 14%;
  background: radial-gradient(70% 38% at 50% -6%, rgba(183, 65, 14, .13), transparent 70%), var(--sa-fond);
}

/* ---------- titres : serif italique + vague rouille ---------- */
html:not(#_) .skin-2 h1, html:not(#_) .skin-2 h2, html:not(#_) .skin-2 h3 { color: var(--sa-texte); }
html:not(#_) .sa-dernieres__h::after, html:not(#_) .sa-regions .sa-h2::after, html:not(#_) .sa-blog .sa-h2::after,
html:not(#_) .sa-membres__h::after, html:not(#_) .sa-main > .sa-wrap > .sa-h1::after, html:not(#_) .sa-layout__main > .sa-h1::after {
  content: ""; display: block; width: 96px; height: 10px; margin-top: .45rem;
  background: var(--rc-vague) left center / 96px 10px no-repeat;
}
html:not(#_) .sa-dernieres__h { font-style: italic; letter-spacing: -.015em; }

/* ---------- en-tête : bande crantée, logo sur vague, ruban de navigation ---------- */
html:not(#_) .sa-header { border-bottom: 0; background: transparent; }
html:not(#_) .sa-header::before { content: ""; display: block; height: 7px; background: repeating-linear-gradient(90deg, var(--rc-rouille) 0 16px, transparent 16px 24px); }
html:not(#_) .sa-header__in { padding-top: 1.1rem; gap: .5rem; }
html:not(#_) .sa-logo { font-style: italic; font-size: 2.15rem; letter-spacing: -.02em; color: var(--sa-texte); padding-bottom: .75rem; background: var(--rc-vague) center bottom / 96px 10px no-repeat; }
html:not(#_) .sa-logo:hover { color: var(--rc-rouille-txt); }
html:not(#_) .sa-burger { color: var(--rc-rouille-txt); border-radius: 50%; background: var(--sa-fond2); top: 1.35rem; }
html:not(#_) .sa-nav li a { color: var(--sa-texte); border-top: 1px dashed var(--sa-bord); font-weight: 600; }
html:not(#_) .sa-nav li a:hover, html:not(#_) .sa-nav li a.is-actif { color: var(--rc-rouille-txt); }
html:not(#_) .sa-header__actions { padding-top: .6rem; }
@media (max-width: 899px) {
  html:not(#_) .sa-nav-toggle:checked ~ .sa-header__in .sa-nav { background: var(--sa-surface); border-radius: var(--sa-rayon); padding: .4rem 1rem .8rem; box-shadow: var(--sa-ombre); outline: 1.5px dashed rgba(183, 65, 14, .5); outline-offset: -7px; }
}
@media (min-width: 900px) {
  html:not(#_) .sa-nav { border: 0; background: var(--rc-rouille); border-radius: 30px; padding: .35rem .8rem .55rem; width: 100%; gap: .2rem; box-shadow: 0 12px 26px -16px rgba(183, 65, 14, .7); }
  html:not(#_) .sa-nav ul { gap: 0; flex-wrap: nowrap; }
  html:not(#_) .sa-nav li a { color: #fff8ee; border: 0; border-radius: 999px; padding: .5rem .6rem; letter-spacing: .08em; font-size: .72rem; font-weight: 700; }
  html:not(#_) .sa-nav li a:hover, html:not(#_) .sa-nav li a.is-actif { background: rgba(255, 248, 238, .2); color: #fff; }
  html:not(#_) .sa-header__actions { padding: .1rem 0 .2rem; gap: .6rem; }
  html:not(#_) .sa-nav .sa-btn--ghost { background: transparent; color: #fff8ee; border-color: rgba(255, 248, 238, .7); }
  html:not(#_) .sa-nav .sa-btn--ghost:hover { background: rgba(255, 248, 238, .15); border-color: #fff8ee; color: #fff; }
  html:not(#_) .sa-nav .sa-btn--accent { background: #fff8ee; color: var(--rc-rouille-txt); border-color: #fff8ee; box-shadow: 0 8px 18px -10px rgba(0, 0, 0, .45); }
  html:not(#_) .sa-nav .sa-btn--accent:hover { background: #fff; color: #8f3108; }
}

/* ---------- boutons : pilules, rouille pleine ou cousue ---------- */
html:not(#_) .sa-btn { border-radius: 999px; letter-spacing: .07em; font-size: .82rem; padding-inline: 1.35em; }
html:not(#_) .sa-btn--accent { background: var(--rc-rouille); color: #fff8ee; border-color: var(--rc-rouille); box-shadow: 0 10px 22px -12px rgba(183, 65, 14, .8); }
html:not(#_) .sa-btn--accent:hover { background: #a0380b; box-shadow: 0 0 0 3px rgba(183, 65, 14, .22), 0 12px 24px -12px rgba(183, 65, 14, .8); }
html:not(#_) .sa-btn--ghost { color: var(--rc-rouille-txt); border: 1.5px dashed rgba(183, 65, 14, .6); background: var(--sa-surface); }
html:not(#_) .sa-btn--ghost:hover { border-style: solid; border-color: var(--rc-rouille); }
html:not(#_) .sa-btn--carte { background: var(--rc-rouille); color: #fff8ee; border-color: var(--rc-rouille); padding: .4em 1.15em; }
html:not(#_) .sa-btn--like { border: 1.5px dashed rgba(183, 65, 14, .6); color: var(--rc-rouille-txt); background: var(--sa-surface); }
html:not(#_) .sa-badge { background: var(--rc-rouille); color: #fff8ee; }
html:not(#_) .sa-badge--ok { background: #dcefe2; color: #1f5f39; }

/* ---------- hero : texte à gauche, photo en pétale à droite (desktop) ---------- */
html:not(#_) .sa-hero { text-align: left; padding: 1.8rem 0 1.4rem; }
html:not(#_) .sa-hero__in { justify-items: stretch; }
html:not(#_) .sa-hero__h1 { font-style: italic; font-size: clamp(1.9rem, 1.1rem + 3.4vw, 3.1rem); line-height: 1.08; padding-bottom: .6rem; background: var(--rc-vague) left bottom / 128px 10px no-repeat; }
html:not(#_) .sa-hero__sous { color: var(--sa-muet); font-style: italic; font-family: var(--sa-police-titre); font-size: 1.15rem; }
html:not(#_) .sa-hero__etapes { max-width: none; gap: .55rem; grid-template-columns: 1fr; }
html:not(#_) .sa-hero__etapes li { flex-direction: row; text-align: left; background: var(--sa-surface); border-radius: 999px; padding: .5rem 1rem .5rem .55rem; box-shadow: var(--sa-ombre); font-size: .95rem; gap: .7rem; outline: 1.5px dashed rgba(183, 65, 14, .45); outline-offset: -5px; }
html:not(#_) .sa-hero__etapes li::before { width: 2em; height: 2em; border: 0; border-radius: 50%; background: var(--rc-rouille); color: #fff8ee; font-size: 1.05rem; font-style: italic; display: inline-flex; align-items: center; justify-content: center; }
html:not(#_) .sa-hero__cta { margin-top: .4rem; }
@media (min-width: 900px) {
  html:not(#_) .sa-hero--photo .sa-hero__in { grid-template-columns: 1.2fr .8fr !important; gap: 2.2rem; align-items: center; }
  html:not(#_) .sa-hero__visuel { display: block !important; aspect-ratio: 4 / 5; border-radius: var(--rc-petale); box-shadow: 0 0 0 7px var(--sa-surface), 0 0 0 8px var(--sa-bord), 0 28px 50px -26px rgba(183, 65, 14, .65); outline: 1.5px dashed rgba(255, 248, 238, .85); outline-offset: -14px; }
}

/* ---------- cartes d'annonce : zigzag ivoire / pêche, photo en pétale ---------- */
html:not(#_) .sa-grille { border-top: 0; gap: .9rem; margin-top: 1.2rem; }
html:not(#_) .sa-carte { background: var(--sa-surface); border: 0; border-radius: 24px; padding: 1rem 1.15rem 1rem 1rem; gap: 1.1rem; box-shadow: var(--sa-ombre); transition: transform .25s ease, box-shadow .25s ease; }
html:not(#_) .sa-carte:hover { transform: translateY(-2px); box-shadow: 0 1px 0 rgba(183, 65, 14, .05), 0 24px 40px -24px rgba(183, 65, 14, .55); }
html:not(#_) .sa-grille > .sa-carte:nth-of-type(even) { background: var(--sa-fond2); }
html:not(#_) .sa-carte__img { border-radius: var(--rc-petale); flex-basis: 92px; width: 92px; box-shadow: 0 0 0 4px var(--sa-surface), 0 0 0 5px var(--sa-bord); overflow: hidden; }
html:not(#_) .sa-carte__img img { transition: transform .4s ease; }
html:not(#_) .sa-carte:hover .sa-carte__img img { transform: scale(1.07); }
html:not(#_) .sa-carte__new { top: auto; bottom: 0; left: 0; right: 0; transform: none; border-radius: 0; text-align: center; white-space: normal; line-height: 1.15; background: rgba(183, 65, 14, .92); color: #fff8ee; font-size: .52rem; letter-spacing: .03em; padding: .28rem .5rem .5rem; }
html:not(#_) .sa-carte__pseudo { font-family: var(--sa-police-titre); font-style: italic; font-size: 1.05rem; color: var(--rc-rouille-txt); }
html:not(#_) .sa-carte__age { color: var(--sa-muet); }
html:not(#_) .sa-carte__titre { font-size: 1.28rem; font-weight: 700; }
html:not(#_) .sa-carte__titre a:hover { color: var(--rc-rouille-txt); }
html:not(#_) .sa-carte__extrait strong { color: var(--sa-muet); }
html:not(#_) .sa-carte__pied { border-top: 1px dashed var(--sa-bord); }
html:not(#_) .sa-carte__metas .sa-ico { color: var(--rc-rouille-txt); }
@media (min-width: 640px) {
  html:not(#_) .sa-carte__img { flex-basis: 118px; width: 118px; }
  html:not(#_) .sa-grille > .sa-carte:nth-of-type(even) { flex-direction: row-reverse; padding: 1rem 1rem 1rem 1.15rem; }
  html:not(#_) .sa-grille > .sa-carte:nth-of-type(even) .sa-carte__img { border-radius: 50% 50% 14% 50%; }
}
html:not(#_) .sa-dernieres__plus > span { font-family: var(--sa-police-titre); font-style: italic; }

/* ---------- thèmes : carte pêche cousue ---------- */
html:not(#_) .sa-tags, html:not(#_) .sa-side, html:not(#_) .sa-similaires { background: var(--sa-fond2); border: 0; border-radius: 22px; padding: 1.2rem 1.3rem 1.3rem; box-shadow: var(--sa-ombre); outline: 1.5px dashed rgba(183, 65, 14, .5); outline-offset: -8px; }
html:not(#_) .sa-tags__h, html:not(#_) .sa-side__h, html:not(#_) .sa-similaires__h { font-style: italic; font-size: 1.25rem; }
html:not(#_) .sa-tags__h .sa-ico, html:not(#_) .sa-side__h .sa-ico { color: var(--rc-rouille-txt); }
html:not(#_) .sa-tags__liste a { border-bottom: 1px dashed rgba(183, 65, 14, .35); padding: .45rem 0; }
html:not(#_) .sa-tags__liste a:hover, html:not(#_) .sa-tags__liste li.is-actif a, html:not(#_) .sa-side__liste li.is-actif a { color: var(--rc-rouille-txt); }
html:not(#_) .sa-side__liste li { border-top: 1px dashed rgba(183, 65, 14, .35); }
html:not(#_) .sa-tags a, html:not(#_) .sa-side a, html:not(#_) .sa-similaires a, html:not(#_) .sa-fond2 a { color: var(--sa-texte); }
html:not(#_) .sa-tags__tous .sa-btn--ghost, html:not(#_) .sa-side__plus .sa-btn--ghost { background: var(--sa-surface); }
html:not(#_) .sa-tags--nuage .sa-tags__liste li[data-poids="5"] a { color: var(--rc-rouille-txt); }

/* ---------- régions : étiquettes à onglet ---------- */
html:not(#_) .sa-regions { border-top: 0; padding-top: 2rem; }
html:not(#_) .sa-pastille { background: var(--sa-surface); border: 1px solid var(--sa-bord); border-left: 5px solid var(--rc-rouille); border-radius: 6px 16px 16px 6px; padding: .45rem .9rem; box-shadow: var(--sa-ombre); }
html:not(#_) .sa-pastille:hover { border-color: var(--rc-rouille); background: var(--sa-fond2); }
html:not(#_) .sa-pastille .sa-badge { background: var(--sa-fond2); color: var(--rc-rouille-txt); }

/* ---------- magazine : cartes à tampon de date ---------- */
html:not(#_) .sa-blog { padding-top: 2rem; }
html:not(#_) .sa-blog__item { background: var(--sa-surface); border: 0; border-radius: 20px; padding: 1.2rem 1.4rem 1.3rem; box-shadow: var(--sa-ombre); border-left: 5px solid var(--sa-fond2); }
html:not(#_) .sa-blog__titre { font-style: italic; font-size: 1.25rem; }
html:not(#_) .sa-blog__date { display: inline-block; color: var(--rc-rouille-txt); font-weight: 700; text-transform: uppercase; letter-spacing: .12em; font-size: .72rem; border: 1.5px dashed rgba(183, 65, 14, .55); border-radius: 999px; padding: .15rem .7rem; }
html:not(#_) .sa-blog__chapeau a, html:not(#_) .sa-blog__item > a { color: var(--rc-rouille-txt); font-weight: 700; }


/* ---------- nouvelles arrivées : anneaux cousus ---------- */
html:not(#_) .sa-membres { border-top: 0; padding-top: 1.8rem; }
html:not(#_) .sa-membres__h { font-style: italic; font-size: 1.3rem; }
html:not(#_) .sa-membres__avatar { border: 3px solid var(--sa-surface); box-shadow: 0 0 0 2px rgba(183, 65, 14, .55), 0 10px 20px -10px rgba(183, 65, 14, .6); border-radius: var(--rc-petale); transition: transform .3s ease; }
html:not(#_) .sa-membres__avatar:hover { transform: rotate(-4deg) scale(1.05); }
html:not(#_) .sa-membres__nom a:hover { color: var(--rc-rouille-txt); }

/* ---------- inscription : bandeau rouille profond, cœur en filigrane ---------- */
html:not(#_) .sa-inscrire { background: var(--rc-coeur-clair) right -40px top -30px / 240px 240px no-repeat, linear-gradient(135deg, #8f3108, #b7410e); color: #fff8ee; border-radius: 28px; margin: 1.2rem var(--sa-gout) 0; padding: 2.2rem 1.4rem; box-shadow: 0 30px 50px -30px rgba(143, 49, 8, .8); }
@media (min-width: 860px) { html:not(#_) .sa-inscrire { max-width: calc(var(--sa-max) - 2 * var(--sa-gout)); margin-inline: auto; } }
html:not(#_) .sa-inscrire__h { color: #fff8ee; font-style: italic; font-size: 1.6rem; }
html:not(#_) .sa-inscrire p { color: #fff8ee; }
html:not(#_) .sa-inscrire .sa-form__lbl, html:not(#_) .sa-inscrire .sa-form__check, html:not(#_) .sa-inscrire .sa-form__check a, html:not(#_) .sa-inscrire .sa-form__aide { color: #fff8ee; }
html:not(#_) .sa-inscrire .sa-form input[type="email"], html:not(#_) .sa-inscrire .sa-form input[type="text"] { background: #fffaf2; border-color: #fffaf2; color: var(--sa-texte); }
html:not(#_) .sa-inscrire .sa-btn--accent { background: #fff8ee; color: var(--rc-rouille-txt); border-color: #fff8ee; box-shadow: 0 10px 22px -12px rgba(0, 0, 0, .4); }
html:not(#_) .sa-inscrire .sa-btn--accent:hover { background: #fff; color: #8f3108; }

/* ---------- pied de page : pêche sous une vague ---------- */
html:not(#_) .sa-liens { border-top: 0; background: var(--rc-vague) center top / 96px 10px repeat-x, var(--sa-fond2); color: var(--sa-pied-txt); margin-top: 2rem; padding-top: 2.4rem; }
html:not(#_) .sa-liens__marque { color: var(--rc-rouille-txt); font-size: 1.7rem; }
html:not(#_) .sa-liens__h { color: var(--sa-muet); }
html:not(#_) .sa-liens a { color: var(--sa-texte); }
html:not(#_) .sa-liens a:hover { color: var(--rc-rouille-txt); }
html:not(#_) .sa-liens .sa-btn--ghost { background: var(--sa-surface); color: var(--rc-rouille-txt); border: 1.5px dashed rgba(183, 65, 14, .6); }
html:not(#_) .sa-footer__tail { background: var(--sa-fond2); color: var(--sa-muet); border-top: 1px dashed rgba(183, 65, 14, .35); }
html:not(#_) .sa-footer__legal a, html:not(#_) .sa-footer__haut a { color: var(--sa-texte); }

/* ---------- barre basse mobile (aucune position touchée) ---------- */
html:not(#_) .sa-barre-mobile { background: var(--rc-rouille); color: #fff8ee; border-radius: 20px 20px 0 0; letter-spacing: .06em; text-transform: uppercase; font-size: .9rem; box-shadow: 0 -10px 26px -12px rgba(183, 65, 14, .7); }

/* ---------- pages de liste / fil d'Ariane / pagination ---------- */
html:not(#_) .sa-crumbs a { color: var(--sa-muet); }
html:not(#_) .sa-crumbs li + li::before { content: "·"; color: var(--rc-rouille); font-weight: 900; }
html:not(#_) .sa-pagination li a, html:not(#_) .sa-pagination li span { border: 0; border-radius: 999px; background: var(--sa-surface); box-shadow: var(--sa-ombre); }
html:not(#_) .sa-pagination li.is-actif span { background: var(--rc-rouille); color: #fff8ee; }
html:not(#_) .sa-pagination li.is-off span { background: none; box-shadow: none; }
html:not(#_) .sa-pagination a:hover { background: var(--sa-fond2); }
html:not(#_) .sa-recherche, html:not(#_) .sa-vide { background: var(--sa-surface); border: 0; border-radius: 20px; box-shadow: var(--sa-ombre); outline: 1.5px dashed rgba(183, 65, 14, .45); outline-offset: -8px; }

/* ---------- fiche d'annonce : carte ivoire cousue, photo en pétale, CTA en carte centrée ---------- */
html:not(#_) .sa-fiche { background: var(--sa-surface); border: 0; border-radius: 28px; padding: 1.4rem 1.3rem 1.6rem; box-shadow: var(--sa-ombre); outline: 1.5px dashed rgba(183, 65, 14, .45); outline-offset: -10px; }
html:not(#_) .sa-fiche__sur { color: var(--rc-rouille-txt); text-transform: uppercase; letter-spacing: .12em; font-size: .72rem; font-weight: 700; }
html:not(#_) .sa-fiche__titre { font-style: italic; padding-bottom: .55rem; background: var(--rc-vague) center bottom / 96px 10px no-repeat; }
html:not(#_) .sa-fiche__photo { border-radius: var(--rc-petale); max-width: 280px; box-shadow: 0 0 0 6px var(--sa-fond2), 0 0 0 7px var(--sa-bord), 0 24px 44px -24px rgba(183, 65, 14, .6); }
html:not(#_) .sa-fiche__photo img { transition: transform .4s ease; }
html:not(#_) .sa-fiche__photo:hover img { transform: scale(1.04); }
html:not(#_) .sa-fiche__id > div { border-top: 1px dashed var(--sa-bord); padding: .6rem 0; }
html:not(#_) .sa-fiche__id dt { color: var(--rc-rouille-txt); text-transform: uppercase; letter-spacing: .1em; font-size: .72rem; }
html:not(#_) .sa-fiche__id dd { font-family: var(--sa-police-titre); font-size: 1.05rem; }
html:not(#_) .sa-fiche__id dd .sa-ico { color: var(--rc-rouille-txt); }
html:not(#_) .sa-fiche__id dd a { color: var(--rc-rouille-txt); }
html:not(#_) .sa-fiche__texte h2, html:not(#_) .sa-fiche__tags h3, html:not(#_) .sa-commentaires h2, html:not(#_) .sa-commentaires h3 { font-style: italic; font-size: 1.25rem; }
html:not(#_) .sa-fiche__texte h2 .sa-ico, html:not(#_) .sa-fiche__tags h3 .sa-ico, html:not(#_) .sa-commentaires .sa-ico, html:not(#_) .sa-dispo__h .sa-ico { color: var(--rc-rouille-txt); }
html:not(#_) .sa-fiche__texte p { font-size: 1.05rem; line-height: 1.65; }
html:not(#_) .sa-chip { background: var(--sa-fond2); border-radius: 999px; }
html:not(#_) a.sa-chip:hover { border-color: var(--rc-rouille); background: var(--sa-surface); }
html:not(#_) label.sa-chip:has(input:checked) { background: var(--rc-rouille); color: #fff8ee !important; }
html:not(#_) .sa-dispo { background: var(--sa-fond2); border-radius: 20px; padding: 1rem 1.1rem 1.1rem; }
html:not(#_) .sa-dispo__h { font-style: italic; font-size: 1.1rem; }
html:not(#_) .sa-dispo__jour.is-aujourdhui .sa-dispo__nom { color: var(--rc-rouille-txt); }
html:not(#_) .sa-dispo--chips .sa-dispo__jour { background: var(--sa-surface); border: 0; box-shadow: 0 6px 14px -10px rgba(183, 65, 14, .5); }
html:not(#_) .sa-dispo--chips .sa-dispo__creneaux li { border-color: rgba(183, 65, 14, .45); }
html:not(#_) .sa-dispo--chips .sa-dispo__creneaux li.is-on { background: var(--rc-rouille); border-color: var(--rc-rouille); }
html:not(#_) .sa-dispo--frise .sa-dispo__creneaux li.is-on { background: var(--rc-rouille); }
html:not(#_) .sa-cta { background: var(--rc-coeur) right -22px bottom -26px / 170px 170px no-repeat, var(--sa-surface); border: 0; border-radius: 24px; padding: 1.7rem 1.5rem 1.6rem; width: 100%; max-width: 560px; margin-inline: auto; box-shadow: 0 1px 0 rgba(183, 65, 14, .05), 0 26px 44px -26px rgba(183, 65, 14, .6); outline: 1.5px dashed rgba(183, 65, 14, .55); outline-offset: -9px; position: relative; }
html:not(#_) .sa-cta__q { font-family: var(--sa-police-titre); font-style: italic; font-size: 1.35rem; }
html:not(#_) .sa-cta__fleche { color: var(--sa-muet); }
html:not(#_) .sa-cta__btn .sa-btn { min-height: 50px; font-size: .9rem; }
html:not(#_) .sa-cta__aide { color: var(--sa-muet); }
html:not(#_) .sa-commentaires { border-top: 1px dashed var(--sa-bord); }
html:not(#_) .sa-commentaire { border-bottom: 1px dashed var(--sa-bord); }
html:not(#_) .sa-commentaires__note { background: var(--sa-fond2); border: 0; border-radius: 14px; }
html:not(#_) .sa-similaires__img { border-radius: var(--rc-petale); box-shadow: 0 0 0 2px var(--sa-surface), 0 0 0 3px var(--sa-bord); }
html:not(#_) .sa-similaires__liste li { border-bottom: 1px dashed rgba(183, 65, 14, .35); }
html:not(#_) .sa-similaires__titre a:hover { color: var(--rc-rouille-txt); }
@media (max-width: 767px) {
  html:not(#_) .sa-fiche__barre { background: var(--sa-surface); border-top: 1.5px dashed rgba(183, 65, 14, .55); box-shadow: 0 -10px 26px -12px rgba(183, 65, 14, .55); padding: .55rem var(--sa-gout) .6rem; }
  html:not(#_) .sa-fiche { padding: 1.2rem 1rem 1.4rem; border-radius: 22px; }
}

/* ---------- formulaires : champs ivoire arrondis, focus rouille ---------- */
html:not(#_) .sa-form input[type="text"], html:not(#_) .sa-form input[type="email"], html:not(#_) .sa-form input[type="tel"], html:not(#_) .sa-form input[type="number"], html:not(#_) .sa-form input[type="search"], html:not(#_) .sa-form select, html:not(#_) .sa-form textarea { border-radius: 14px; border: 1.5px solid var(--sa-bord); background: #fffdf9; padding: .7rem .95rem; }
html:not(#_) .sa-form input:focus, html:not(#_) .sa-form select:focus, html:not(#_) .sa-form textarea:focus { outline: 2px solid var(--rc-rouille); outline-offset: 2px; border-color: var(--rc-rouille); }
html:not(#_) .sa-form__lbl { color: var(--sa-texte); }
html:not(#_) .sa-depot__bloc { background: var(--sa-surface); border: 0; border-radius: 22px; padding: 1.2rem 1.3rem 1.4rem; box-shadow: var(--sa-ombre); outline: 1.5px dashed rgba(183, 65, 14, .45); outline-offset: -8px; }
html:not(#_) .sa-depot__bloc legend { font-family: var(--sa-police-titre); font-style: italic; font-size: 1.2rem; color: var(--rc-rouille-txt); background: var(--sa-surface); border-radius: 999px; padding: .1rem .8rem; }
html:not(#_) .sa-depot__dispo th, html:not(#_) .sa-depot__dispo td { border-color: var(--sa-bord); }
html:not(#_) .sa-depot__dispo thead th { background: var(--sa-fond2); }
html:not(#_) .sa-form__err { border-radius: 14px; }
html:not(#_) .sa-commentaires__ok { border-radius: 14px; }

/* ---------- pop-ups : boîtes ivoire cousues ---------- */
html:not(#_) .sa-consent, html:not(#_) .sa-popup { background: rgba(42, 24, 17, .72); }
html:not(#_) .sa-consent__box, html:not(#_) .sa-popup__box { background: var(--sa-surface); border-radius: 26px; box-shadow: 0 0 0 5px rgba(255, 250, 242, .35), 0 30px 70px rgba(42, 24, 17, .6); outline: 1.5px dashed rgba(183, 65, 14, .55); outline-offset: -10px; }
html:not(#_) .sa-consent__titre, html:not(#_) .sa-popup__titre { font-style: italic; }
html:not(#_) .sa-popup__croix { background: var(--sa-fond2); color: var(--sa-texte); }
html:not(#_) .sa-popup__croix:hover, html:not(#_) .sa-popup__croix:focus-visible { background: var(--rc-rouille); color: #fff8ee; }
html:not(#_) .sa-popup__badge .sa-badge { background: var(--sa-fond2); color: var(--rc-rouille-txt); }
html:not(#_) .sa-consent__quitter, html:not(#_) .sa-popup__refus a { color: var(--sa-muet); }
html:not(#_) .sa-spin { border-color: var(--sa-fond2); border-top-color: var(--rc-rouille); }

/* ---------- mouvement réduit ---------- */
@media (prefers-reduced-motion: reduce) {
  html:not(#_) .sa-carte, html:not(#_) .sa-carte__img img, html:not(#_) .sa-fiche__photo img, html:not(#_) .sa-membres__avatar { transition: none; }
  html:not(#_) .sa-carte:hover { transform: none; }
  html:not(#_) .sa-membres__avatar:hover { transform: none; }
}
