/* ServAfrica - en-tete et pied de page (header.php, footer.php). Maquette Stitch v2 validee le 30 septembre 2026.
   Classes propres (sa-tete, sa-rubriques, sa-pied) pour ne pas heriter des styles des anciennes pages. Aucun !important.
   Palette C "Blanc bleute" validee le 1er octobre 2026 : fond des pages blanc, pastilles discretes (fond pastel, bordure fine foncee). */
:root{--sa-gold-premium:#FAF0D4;--sa-gold-premium-bord:#8C6414;--sa-wa-fond:#E8F6EE;--sa-wa-bord:#1E8E4E}
/* Mise en page "feuille" (demande du 1er octobre 2026, capture de reference) : l'en-tete et le pied de page restent
   sur toute la largeur ; seul le contenu de la page est pose sur une feuille blanche centree, separee de l'en-tete
   et du pied de page par le fond bleu ciel, coins arrondis et ombre legere. Sur telephone, la feuille prend toute la largeur. */
:root{--sa-feuille:1200px;--sa-fond-page:#EAF1F8}
html body[class]{background:var(--sa-fond-page)}
#content.site-content{max-width:var(--sa-feuille);margin:28px auto 36px;background:#FFFFFF;border-radius:14px;box-shadow:0 1px 3px rgba(10,34,64,.06),0 8px 28px rgba(10,34,64,.07);overflow:hidden;overflow:clip}
@media (max-width:1260px){#content.site-content{margin:20px 16px 28px}}
@media (max-width:760px){#content.site-content{margin:0;border-radius:0;box-shadow:none}}

/* Titres de grille sur bande bleu nuit sur toute la plateforme (style valide sur l'accueil le 1er octobre 2026).
   Les titres poses sur un fond sombre (variantes .wh, bandeaux) ne sont pas concernes. Prefixe #content : passe devant
   les styles propres a chaque page sans !important. */
#content .sl-h2:not(.wh):not(.gold),
#content .jb-h2:not(.wh):not(.gold),
#content .go-h2:not(.wh):not(.gold),
#content .ex-h2:not(.wh):not(.gold),
#content .dn-h2:not(.wh):not(.gold),
#content .bz-h2:not(.wh):not(.gold),
#content .tc-h2:not(.wh):not(.gold),
#content .sp-h2:not(.wh):not(.gold),
#content .so-h2:not(.wh):not(.gold),
#content .in-h2:not(.wh):not(.gold),
#content .dc-h2:not(.wh):not(.gold),
#content .da-h2:not(.wh):not(.gold),
#content .rt-h2:not(.wh):not(.gold),
#content .cl-h2:not(.wh):not(.gold),
#content .ar-h2:not(.wh):not(.gold),
#content .nr-h2:not(.wh):not(.gold),
#content .nl-h2:not(.wh):not(.gold),
#content .sa-h2:not(.wh),
#content .sa-elev-title,
#content .sa-section-title,
#content .th-sec-title:not(.tx .th-sec-title),
#content .th-block:not(.th-block--dark) .th-block__title,
#content .sr-sect-title,
#content .sa-dest-section-title,
#content .sa-dh-h2:not(.sa-dh-tools .sa-dh-h2),
#content .saa-sec-ttl,
#content .sa-meth__title,
#content .sa-cfaq-title,
#content .sa-cc__h,
#content .sa-leg-ttl,
#content .sa-faq-sec__hd > h2,
#content .sa-guide-hd > h2,
#content .th-seo__in > h2,
#content .ps-content > h2,
#content .sa-form-wrap > h2{
  display:block;box-sizing:border-box;width:100%;max-width:none;align-self:stretch;background:linear-gradient(90deg,#0A2240 0%,#123661 100%);color:#FFFFFF;
  font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;font-weight:800;font-size:17px;line-height:1.3;letter-spacing:.05em;
  text-transform:uppercase;padding:12px 18px;border:0;border-radius:10px;margin-bottom:18px;text-shadow:none}
#content .sl-h2:not(.wh):not(.gold) *,
#content .jb-h2:not(.wh):not(.gold) *,
#content .go-h2:not(.wh):not(.gold) *,
#content .ex-h2:not(.wh):not(.gold) *,
#content .dn-h2:not(.wh):not(.gold) *,
#content .bz-h2:not(.wh):not(.gold) *,
#content .tc-h2:not(.wh):not(.gold) *,
#content .sp-h2:not(.wh):not(.gold) *,
#content .so-h2:not(.wh):not(.gold) *,
#content .in-h2:not(.wh):not(.gold) *,
#content .dc-h2:not(.wh):not(.gold) *,
#content .da-h2:not(.wh):not(.gold) *,
#content .rt-h2:not(.wh):not(.gold) *,
#content .cl-h2:not(.wh):not(.gold) *,
#content .ar-h2:not(.wh):not(.gold) *,
#content .nr-h2:not(.wh):not(.gold) *,
#content .nl-h2:not(.wh):not(.gold) *,
#content .sa-h2:not(.wh) *,
#content .sa-elev-title *,
#content .sa-section-title *,
#content .th-sec-title:not(.tx .th-sec-title) *,
#content .th-block:not(.th-block--dark) .th-block__title *,
#content .sr-sect-title *,
#content .sa-dest-section-title *,
#content .sa-dh-h2:not(.sa-dh-tools .sa-dh-h2) *,
#content .saa-sec-ttl *,
#content .sa-meth__title *,
#content .sa-cfaq-title *,
#content .sa-cc__h *,
#content .sa-leg-ttl *,
#content .sa-faq-sec__hd > h2 *,
#content .sa-guide-hd > h2 *,
#content .th-seo__in > h2 *,
#content .ps-content > h2 *,
#content .sa-form-wrap > h2 *{color:inherit}
/* Encadres d'inscription a la lettre : fond clair et titre sur bande bleu nuit, comme les grilles (demande du 1er octobre 2026 :
   le fond bleu nuit entier etait trop sombre). Meme regle pour toutes les pages ; les textes et le formulaire ne changent pas. */
#content :is(.th-nl-box,.dc-nl,.so-nl,.tc-nl,.in-nl,.ex-nl,.jb-nl,.dn-nl,.ar-nl,.sl-nl,.cl-nl,.da-nl,.rt-nl,.bz-nl,.nr-nl,.go-nl-box,.nl-cta-box,.sa-nlx,.sr-nl,.sa-dest-newsletter,section.sa-newsletter){background:#EEF4FA;background-image:none;border:1px solid #C7D8E8;color:#1A1F2B}
#content :is(.th-nl-box,.dc-nl,.so-nl,.tc-nl,.in-nl,.ex-nl,.jb-nl,.dn-nl,.ar-nl,.sl-nl,.cl-nl,.da-nl,.rt-nl,.bz-nl,.nr-nl,.go-nl-box,.nl-cta-box,.sa-nlx,.sr-nl,.sa-dest-newsletter,section.sa-newsletter)::before,#content :is(.th-nl-box,.dc-nl,.so-nl,.tc-nl,.in-nl,.ex-nl,.jb-nl,.dn-nl,.ar-nl,.sl-nl,.cl-nl,.da-nl,.rt-nl,.bz-nl,.nr-nl,.go-nl-box,.nl-cta-box,.sa-nlx,.sr-nl,.sa-dest-newsletter,section.sa-newsletter)::after{display:none}
#content :is(.th-nl-box,.dc-nl,.so-nl,.tc-nl,.in-nl,.ex-nl,.jb-nl,.dn-nl,.ar-nl,.sl-nl,.cl-nl,.da-nl,.rt-nl,.bz-nl,.nr-nl,.go-nl-box,.nl-cta-box,.sa-nlx,.sr-nl,.sa-dest-newsletter,section.sa-newsletter) :is(h2,h3){display:block;box-sizing:border-box;width:100%;max-width:none;background:linear-gradient(90deg,#0A2240 0%,#123661 100%);color:#FFFFFF;font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;font-weight:800;font-size:17px;line-height:1.3;letter-spacing:.05em;text-transform:uppercase;padding:12px 18px;border:0;border-radius:10px;text-shadow:none}
#content :is(.th-nl-box,.dc-nl,.so-nl,.tc-nl,.in-nl,.ex-nl,.jb-nl,.dn-nl,.ar-nl,.sl-nl,.cl-nl,.da-nl,.rt-nl,.bz-nl,.nr-nl,.go-nl-box,.nl-cta-box,.sa-nlx,.sr-nl,.sa-dest-newsletter,section.sa-newsletter) :is(h2,h3) *{color:inherit}
#content :is(.th-nl-box,.dc-nl,.so-nl,.tc-nl,.in-nl,.ex-nl,.jb-nl,.dn-nl,.ar-nl,.sl-nl,.cl-nl,.da-nl,.rt-nl,.bz-nl,.nr-nl,.go-nl-box,.nl-cta-box,.sa-nlx,.sr-nl,.sa-dest-newsletter,section.sa-newsletter) :is(p,label,small,li,span:not([class*=btn])){color:#3A4658}
#content :is(.th-nl-box,.dc-nl,.so-nl,.tc-nl,.in-nl,.ex-nl,.jb-nl,.dn-nl,.ar-nl,.sl-nl,.cl-nl,.da-nl,.rt-nl,.bz-nl,.nr-nl,.go-nl-box,.nl-cta-box,.sa-nlx,.sr-nl,.sa-dest-newsletter,section.sa-newsletter) [class*="__ey"],#content :is(.th-nl-box,.dc-nl,.so-nl,.tc-nl,.in-nl,.ex-nl,.jb-nl,.dn-nl,.ar-nl,.sl-nl,.cl-nl,.da-nl,.rt-nl,.bz-nl,.nr-nl,.go-nl-box,.nl-cta-box,.sa-nlx,.sr-nl,.sa-dest-newsletter,section.sa-newsletter) [class*="-tag"],#content :is(.th-nl-box,.dc-nl,.so-nl,.tc-nl,.in-nl,.ex-nl,.jb-nl,.dn-nl,.ar-nl,.sl-nl,.cl-nl,.da-nl,.rt-nl,.bz-nl,.nr-nl,.go-nl-box,.nl-cta-box,.sa-nlx,.sr-nl,.sa-dest-newsletter,section.sa-newsletter) [class*="eyebrow"]{color:#8C6414}
#content :is(.th-nl-box,.dc-nl,.so-nl,.tc-nl,.in-nl,.ex-nl,.jb-nl,.dn-nl,.ar-nl,.sl-nl,.cl-nl,.da-nl,.rt-nl,.bz-nl,.nr-nl,.go-nl-box,.nl-cta-box,.sa-nlx,.sr-nl,.sa-dest-newsletter,section.sa-newsletter) a:not([class*=btn]):not([class*=cta]){color:#13795B}
#content :is(.th-nl-box,.dc-nl,.so-nl,.tc-nl,.in-nl,.ex-nl,.jb-nl,.dn-nl,.ar-nl,.sl-nl,.cl-nl,.da-nl,.rt-nl,.bz-nl,.nr-nl,.go-nl-box,.nl-cta-box,.sa-nlx,.sr-nl,.sa-dest-newsletter,section.sa-newsletter) :is(input[type=email],input[type=text]){background:#FFFFFF;color:#1A1F2B;border:1px solid #C7D8E8}
#content :is(.th-nl-box,.dc-nl,.so-nl,.tc-nl,.in-nl,.ex-nl,.jb-nl,.dn-nl,.ar-nl,.sl-nl,.cl-nl,.da-nl,.rt-nl,.bz-nl,.nr-nl,.go-nl-box,.nl-cta-box,.sa-nlx,.sr-nl,.sa-dest-newsletter,section.sa-newsletter) input::placeholder{color:#7A8699}
@media (max-width:640px){#content .sl-h2:not(.wh):not(.gold),#content .jb-h2:not(.wh):not(.gold),#content .go-h2:not(.wh):not(.gold),#content .ex-h2:not(.wh):not(.gold),#content .dn-h2:not(.wh):not(.gold),#content .bz-h2:not(.wh):not(.gold),#content .tc-h2:not(.wh):not(.gold),#content .sp-h2:not(.wh):not(.gold),#content .so-h2:not(.wh):not(.gold),#content .in-h2:not(.wh):not(.gold),#content .dc-h2:not(.wh):not(.gold),#content .da-h2:not(.wh):not(.gold),#content .rt-h2:not(.wh):not(.gold),#content .cl-h2:not(.wh):not(.gold),#content .ar-h2:not(.wh):not(.gold),#content .nr-h2:not(.wh):not(.gold),#content .nl-h2:not(.wh):not(.gold),#content .sa-h2:not(.wh),#content .sa-elev-title,#content .sa-section-title,#content .th-sec-title:not(.tx .th-sec-title),#content .th-block:not(.th-block--dark) .th-block__title,#content .sr-sect-title,#content .sa-dest-section-title,#content .sa-dh-h2:not(.sa-dh-tools .sa-dh-h2),#content .saa-sec-ttl,#content .sa-meth__title,#content .sa-cfaq-title,#content .sa-cc__h,#content .sa-leg-ttl,#content .sa-faq-sec__hd > h2,#content .sa-guide-hd > h2,#content .th-seo__in > h2,#content .ps-content > h2,#content .sa-form-wrap > h2{font-size:15px;padding:11px 14px}}
.sa-tete-bloc,.sa-pied{
  --sa-navy:#0A2240; --sa-navy-2:#123661; --sa-green:#13795B; --sa-gold:#D4A843; --sa-gold-d:#9A6F12; --sa-gold-soft:#FAF0D4;
  --sa-ink:#1A1F2B; --sa-muted:#55627A; --sa-line:#DFE6EE; --sa-soft:#EEF4FA; --sa-surface:#FFFFFF;
  --sa-serif:Georgia,"Times New Roman",serif;
  --sa-sans:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  font-family:var(--sa-sans);
}
.sa-tete-bloc *,.sa-pied *{box-sizing:border-box}
.sa-tete-bloc :where(a),.sa-pied :where(a){color:inherit;text-decoration:none}
.sa-tete-bloc :where(ul),.sa-pied :where(ul){list-style:none;margin:0;padding:0}
.sa-tete-bloc :where(p,h2),.sa-pied :where(p,h2){margin:0}
.sa-tete-bloc a:focus-visible,.sa-tete-bloc button:focus-visible,.sa-tete-bloc input:focus-visible,
.sa-pied a:focus-visible,.sa-pied button:focus-visible,.sa-pied input:focus-visible{outline:3px solid var(--sa-gold);outline-offset:2px}
.screen-reader-text{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.sa-g-ico{flex-shrink:0}
.sa-g-saut{position:absolute;left:8px;top:-60px;z-index:1100;background:#0A2240;color:#fff;padding:10px 16px;border-radius:4px;font:600 15px system-ui,sans-serif}
.sa-g-saut:focus{top:8px}

/* En-tete */
.sa-tete-bloc{position:sticky;top:0;z-index:1000}
.admin-bar .sa-tete-bloc{top:32px}
.sa-tete{background:var(--sa-surface);border-bottom:1px solid var(--sa-line);position:relative}
.sa-tete__barre{max-width:1400px;margin:0 auto;padding:0 24px;height:64px;display:flex;align-items:center;gap:24px}
.sa-tete__logo{display:flex;align-items:center;gap:10px;flex-shrink:0}
.sa-tete__logo img{height:32px;width:auto;display:block}
.sa-tete__logo span{font-family:var(--sa-serif);font-size:22px;color:var(--sa-navy);letter-spacing:-.01em}
.sa-tete__menu{flex:1;min-width:0;display:flex;justify-content:center}
.sa-tete__menu ul{display:flex;gap:4px}
.sa-tete__menu a{display:block;padding:8px 12px;font-size:15px;font-weight:500;color:var(--sa-ink);border-bottom:2px solid transparent;white-space:nowrap}
.sa-tete__menu a:hover,.sa-tete__menu a[aria-current]{color:var(--sa-green);border-bottom-color:var(--sa-gold)}
.sa-tete__actions{display:flex;align-items:center;gap:6px;flex-shrink:0;margin-left:auto}
.sa-tete__ico{position:relative;width:42px;height:42px;display:inline-grid;place-items:center;border:0;background:transparent;color:var(--sa-ink);border-radius:50%;cursor:pointer;padding:0}
.sa-tete__ico:hover,.sa-tete__ico[aria-expanded=true]{background:var(--sa-soft);color:var(--sa-green)}
.sa-tete__pastille{position:absolute;top:4px;right:2px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--sa-gold);color:var(--sa-navy);font:700 11px/18px var(--sa-sans);text-align:center}
.sa-tete__lettre{font-size:14px;font-weight:500;padding:8px 10px;color:var(--sa-ink)}
.sa-tete__compte{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px 0 10px;border:1px solid var(--sa-line);border-radius:20px;font-size:14px;font-weight:600;color:var(--sa-ink);white-space:nowrap}
.sa-tete__compte .sa-g-ico{width:20px;height:20px}
.sa-tete__compte:hover{border-color:var(--sa-green);color:var(--sa-green);text-decoration:none}
.sa-tete__lettre:hover{color:var(--sa-green);text-decoration:underline}
/* Bouton AfriPilot : pastille doree premium (degrade metallique, liseré fonce, reflet discret) */
.sa-tete__pilot{display:inline-block;background:#FAF0D4;color:#0A2240;font-weight:600;font-size:13px;letter-spacing:.02em;padding:6px 14px;border-radius:999px;border:1px solid #8C6414;box-shadow:none;white-space:nowrap;margin-left:4px;transition:filter .15s,box-shadow .15s}
.sa-tete__pilot:hover{filter:brightness(1.07) saturate(1.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 3px 8px rgba(10,34,64,.22)}
.sa-tete__burger{display:none}

/* Volets (recherche, articles gardes, menu du telephone) */
.sa-tete__volet{position:absolute;left:0;right:0;top:100%;background:var(--sa-surface);border-bottom:1px solid var(--sa-line);box-shadow:0 12px 24px rgba(10,34,64,.12);z-index:5}
.sa-tete__volet[hidden]{display:none}
.sa-tete__cherche{max-width:760px;margin:0 auto;padding:18px 24px;display:flex;gap:10px}
.sa-tete__cherche input{flex:1;min-width:0;font:16px var(--sa-sans);padding:12px 14px;border:1px solid var(--sa-line);border-radius:6px;color:var(--sa-ink)}
.sa-tete__cherche input:focus{outline:none;border-color:var(--sa-gold);box-shadow:0 0 0 3px var(--sa-gold-soft)}
.sa-tete__cherche button{font:700 15px var(--sa-sans);background:var(--sa-navy);color:#fff;border:0;border-radius:6px;padding:0 20px;cursor:pointer}
.sa-tete__signets{max-width:760px;margin:0 auto;padding:18px 24px 22px}
.sa-tete__volet-titre{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--sa-green);margin-bottom:10px}
.sa-tete__signets li{display:flex;align-items:center;gap:10px;border-top:1px solid var(--sa-line)}
.sa-tete__signets li a{flex:1;padding:12px 0;font-family:var(--sa-serif);font-size:17px;color:var(--sa-navy)}
.sa-tete__signets li a:hover{text-decoration:underline}
.sa-tete__signets li button{border:1px solid var(--sa-line);background:var(--sa-surface);border-radius:4px;font:600 13px var(--sa-sans);color:var(--sa-muted);padding:6px 10px;cursor:pointer}
.sa-tete__vide{color:var(--sa-muted);font-size:15px}
.sa-tete__vide[hidden]{display:none}
.sa-tete__mobile{max-height:calc(100vh - 110px);overflow-y:auto}
.sa-tete__mobile nav{padding:8px 16px 20px}
.sa-tete__mobile-principal a{display:block;padding:13px 0;font-size:17px;font-weight:600;border-bottom:1px solid var(--sa-line)}
.sa-tete__mobile .sa-tete__volet-titre{margin:18px 0 8px}
.sa-tete__mobile-rubriques{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px}
.sa-tete__mobile-rubriques a{display:block;padding:8px 0;font-size:15px;color:var(--sa-ink)}
.sa-tete__mobile-bas{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:18px;padding-top:14px;border-top:1px solid var(--sa-line);font-size:15px;font-weight:600;color:var(--sa-green)}

/* Barre des rubriques */
.sa-rubriques{background:var(--sa-surface);border-bottom:1px solid var(--sa-line)}
.sa-rubriques ul{max-width:1400px;margin:0 auto;padding:0 24px;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.sa-rubriques ul::-webkit-scrollbar{display:none}
/* Ordinateur : toutes les rubriques restent visibles (retour a la ligne centre au lieu d'une rubrique coupee a droite) */
@media (min-width:641px){.sa-rubriques ul{flex-wrap:wrap;justify-content:center;overflow:visible;row-gap:0;column-gap:2px}}
.sa-rubriques a{display:block;padding:10px 10px;font-size:14px;font-weight:500;color:var(--sa-muted);white-space:nowrap;border-bottom:2px solid transparent}
.sa-rubriques a:hover,.sa-rubriques a[aria-current]{color:var(--sa-green);border-bottom-color:var(--sa-gold)}

/* Pied de page */
.sa-pied{background:var(--sa-navy);color:rgba(255,255,255,.82);font-size:15px;line-height:1.6;margin-top:0}
.sa-pied__wrap{max-width:1240px;margin:0 auto;padding:48px 24px 28px}
.sa-pied__grille{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr)) minmax(0,1.3fr);gap:40px}
.sa-pied__logo{font-family:var(--sa-serif);font-size:28px;color:#fff}
.sa-pied__marque p{margin-top:12px;max-width:42ch}
.sa-pied__soutenir{display:inline-block;margin-top:18px;background:#FAF0D4;color:#0A2240;font-weight:600;padding:6px 16px;border-radius:999px;border:1px solid #8C6414}
.sa-pied__soutenir:hover{filter:brightness(1.06)}
.sa-pied__titre{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--sa-gold);margin-bottom:14px}
.sa-pied__titre--sep{margin-top:24px}
.sa-pied__col li + li{margin-top:8px}
.sa-pied__col a{color:#fff}
.sa-pied__col a:hover{color:var(--sa-gold);text-decoration:underline}
.sa-pied__petit{font-size:13px;color:rgba(255,255,255,.7)}
.sa-pied__lettre{display:flex;gap:8px;margin:10px 0 8px}
.sa-pied__lettre input{flex:1;min-width:0;font:15px var(--sa-sans);padding:10px 12px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);border-radius:6px;color:#fff}
.sa-pied__lettre input::placeholder{color:rgba(255,255,255,.6)}
.sa-pied__lettre input:focus{outline:none;border-color:var(--sa-gold)}
.sa-pied__lettre button{font:700 14px var(--sa-sans);background:#FAF0D4;color:#0A2240;border:1px solid #8C6414;border-radius:999px;padding:0px 14px;cursor:pointer;box-shadow:none}
.sa-pied__mail{display:inline-flex;align-items:center;gap:8px}
.sa-pied__mail .sa-g-ico{width:18px;height:18px}
.sa-pied__reseaux{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.sa-pied__reseaux li + li{margin-top:0}
.sa-pied__reseaux a{display:inline-grid;place-items:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.3);border-radius:50%;font-size:12px;font-weight:600}
.sa-pied__reseaux a:hover{background:var(--sa-gold);color:var(--sa-navy)}
.sa-pied__reseaux a:hover{border-color:var(--sa-gold);text-decoration:none}
.sa-pied__engagements{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:40px;padding-top:28px;border-top:1px solid rgba(255,255,255,.15)}
.sa-pied__engagements li{display:flex;gap:12px;align-items:flex-start;font-size:14px}
.sa-pied__engagements .sa-g-ico{color:var(--sa-gold);width:26px;height:26px}
.sa-pied__engagements strong{display:block;color:#fff;font-size:15px}
.sa-pied__transparence{margin-top:28px;padding-top:20px;border-top:1px solid rgba(255,255,255,.15);font-size:13px;color:rgba(255,255,255,.7);text-align:center}
.sa-pied__transparence strong{color:#fff}
.sa-pied__legal ul{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 20px;margin-top:14px;font-size:13px}
.sa-pied__legal a{color:#fff}
.sa-pied__legal a:hover{color:var(--sa-gold);text-decoration:underline}
.sa-pied__bas{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 20px;margin-top:22px;padding-top:18px;border-top:1px solid rgba(255,255,255,.15);font-size:13px;color:rgba(255,255,255,.65)}
.sa-pied__signature{font-family:var(--sa-serif);font-style:italic}

/* Tablette */
@media (max-width:1500px){
  .sa-tete__lettre{display:none}
}
@media (max-width:1180px){
  .sa-tete__compte{width:40px;padding:0;justify-content:center;border-color:transparent}
  .sa-tete__compte-txt{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .sa-tete__menu a{padding:8px 8px;font-size:14px}
  .sa-tete__lettre{display:none}
}
@media (max-width:1000px){
  .sa-tete__menu{display:none}
  .sa-tete__burger{display:inline-grid}
  .sa-pied__grille{grid-template-columns:1fr 1fr}
}

/* Telephone */
@media (max-width:640px){
  .sa-tete__barre{height:56px;padding:0 8px 0 16px;gap:8px}
  .sa-tete__logo img{height:28px}
  .sa-tete__logo span{font-size:19px}
  .sa-tete__actions{gap:0}
  .sa-tete__ico{width:40px;height:40px}
  .sa-tete__ico--panier{display:none}
  .sa-tete__pilot{padding:5px 10px;font-size:12px;margin:0 2px}
  .sa-tete__pilot-long{display:none}
  .sa-tete__cherche{padding:14px 16px;flex-direction:column}
  .sa-tete__cherche button{padding:12px}
  .sa-tete__signets{padding:14px 16px 18px}
  .sa-rubriques ul{padding:0 12px}
  .sa-rubriques a{font-size:13px;padding:9px 8px}
  .sa-pied__wrap{padding:32px 16px 24px}
  .sa-pied__grille{grid-template-columns:1fr;gap:28px}
  .sa-pied__col > ul:not(.sa-pied__reseaux){display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}
  .sa-pied__col > ul:not(.sa-pied__reseaux) li + li{margin-top:0}
  .sa-pied__engagements{grid-template-columns:1fr;gap:16px;margin-top:28px}
  .sa-pied__legal ul{justify-content:flex-start}
  .sa-pied__transparence{text-align:left}
}
@media (max-width:440px){
  .sa-tete__logo span{display:none}
}
@media print{
  .sa-tete-bloc,.sa-pied__lettre,.sa-pied__engagements{display:none}
  .sa-pied{background:none;color:#000}
}

/* Questions frequentes des pages de rubrique : deux colonnes (demande du 1er octobre 2026), une sur telephone */
.sa-faq-2col,.sa-faq-list.sa-faq-2col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;align-items:start}
.sa-faq-2col > *{min-width:0}
@media (max-width:760px){.sa-faq-2col,.sa-faq-list.sa-faq-2col{grid-template-columns:1fr}}
.sa-faq-2col button{white-space:normal;text-align:left;overflow-wrap:anywhere}

/* Portraits et photos de personnes (plus hautes que larges) dans un cadre large : photo entiere, centree sur un fond discret,
   au lieu d'un recadrage qui coupe la tete ou le visage (signale par la proprietaire le 01/10/2026). Repere par le theme
   (dimensions de l'image) ou, pour les images externes, par le script du gabarit. */
img.sa-img--portrait,.sa-acc-img.sa-img--portrait,.sa-art__cadre img.sa-img--portrait{object-fit:contain;object-position:center;background:linear-gradient(135deg,#EAF1F8 0%,#DCE8F4 100%)}

/* Questions frequentes communes (sa_faq_html) : deux colonnes de 10, reponses repliees */
.sa-faq2{margin:0}
.sa-faq2__titre{font-family:var(--sa-serif,Georgia,serif);font-size:1.4rem;color:var(--sa-navy,#0A2240);margin:0 0 14px}
.sa-faq2__grille{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;align-items:start}
.sa-faq2__col{display:flex;flex-direction:column;gap:10px;min-width:0}
.sa-faq2__i{border:1px solid var(--sa-line,#DFE6EE);border-radius:8px;background:#FFFFFF}
.sa-faq2__i summary{cursor:pointer;list-style:none;position:relative;padding:12px 42px 12px 14px;min-height:44px;font-weight:600;font-size:15px;line-height:1.4;color:var(--sa-navy,#0A2240)}
.sa-faq2__i summary::-webkit-details-marker{display:none}
.sa-faq2__i summary::after{content:"+";position:absolute;right:14px;top:9px;font-size:20px;color:var(--sa-green,#13795B)}
.sa-faq2__i[open] summary::after{content:"\2212"}
.sa-faq2__i summary:focus-visible{outline:2px solid var(--sa-gold,#D4A843);outline-offset:2px;border-radius:8px}
.sa-faq2__i p{margin:0;padding:0 14px 14px;font-size:15px;line-height:1.6;color:var(--sa-muted,#55627A)}
@media (max-width:760px){.sa-faq2__grille{grid-template-columns:1fr;gap:10px}}
/* Fleche "Remonter en haut" sur toutes les pages (footer.php), placee sous la bulle de l'assistant (sa-assistant.css) */
.sa-top{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:44px;height:44px;border-radius:50%;border:0;padding:0;margin:0;line-height:0;background:#0A2240;color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.2);opacity:.9;z-index:50}
.sa-top svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.sa-top[hidden]{display:none}
@media print{.sa-top{display:none}}

/* Portraits dans les cadres larges des cartes (demande de la proprietaire, 7 octobre 2026 : visages coupes).
   Une image plus haute que large s'affiche en entier, centree sur un fond clair ; une image presque carree garde le haut
   (visages). Classes posees par le theme (functions.php) et par sa-gabarit.js pour les images hors mediatheque. */
html body img.sa-img--portrait.sa-img--portrait{object-fit:contain;object-position:center;background:#EEF4FA}
html body img.sa-img--carre.sa-img--carre{object-position:center 22%}
