/* ════════════════════════════════════════════════════════════════════════
   DESIGN « E » : bandeau bleu nuit, titre « SG Titre » (passe 9, 19/10/2026)
   Validé par l'auteur le 19/10/2026 ; maquette de référence :
   C:\wamp64\www\maquettes-sageocracy\E_tout_bleu_tenor\
   Chargé après main.css (functions.php, sc_enqueue). Le balisage du bandeau
   est complété par inc/sg-design-e.php (filet, cote, fil d'Ariane).
   ════════════════════════════════════════════════════════════════════════ */

/* Tenor Sans sans hinting, renommée « SG Titre » (licence SIL OFL 1.1, voir le dossier). */
@font-face {
  font-family: 'SG Titre';
  src: url(../fonts/sg-titre/SGTitre-Regular.woff2) format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  /* ─── HAUTEURS DES BANDEAUX : à régler ici (bureau / téléphone) ─── */
  --e-h-accueil:   400px;  --e-h-accueil-m: 360px;
  --e-h-fond:      330px;  --e-h-fond-m:    290px;
  --e-h-service:   220px;  --e-h-service-m: 200px;

  /* palette */
  --e-marine: #0E2040;
  --e-ivoire: #F5F1EB;
  --e-or: #C9A968;          /* or sur bleu nuit (surtitre, filets) : 7,2:1 */
  --e-or-filet: #8C6C34;    /* or patiné sur blanc (filets seulement) */
  --e-texte: #262420;
  --e-texte-2: #5E5A54;
  --e-filet: #D9D2C5;
  --e-ardoise: #3E4C66;

  /* polices (redéfinies par langue plus bas) */
  --e-titre: 'SG Titre', 'Noto Sans', 'Segoe UI', sans-serif;
  --e-serif: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --e-sans:  'Noto Sans', 'Segoe UI', Arial, sans-serif;
  --e-nom:   'Cinzel', 'Cormorant Garamond', Georgia, serif;

  /* colonne de lecture */
  --e-texte-max: 720px;
  --e-large-max: 860px;

  /* le thème d'origine suit ces valeurs */
  --sc-font-sans: var(--e-sans);
  --sc-font-serif: var(--e-serif);
  --sc-blue-deep: #0E2040;
  --sc-text: var(--e-texte);
  --sc-text-muted: var(--e-texte-2);
  --sc-text-light: #6B665F;
}

/* ─── Polices par écriture : chargées seulement dans leur langue ─── */
html:lang(ru) { --e-nom: 'SG Titre', 'Noto Sans', sans-serif; }
html:lang(ar) {
  --e-titre: 'Noto Naskh Arabic', 'Noto Sans', serif;
  --e-serif: 'Noto Naskh Arabic', serif;
  --e-sans:  'Noto Naskh Arabic', 'Noto Sans', serif;
  --e-nom:   'Noto Naskh Arabic', serif;
}
html:lang(ja) { --e-titre: 'Noto Sans JP', sans-serif; --e-serif: 'Noto Sans JP', sans-serif; --e-sans: 'Noto Sans JP', 'Noto Sans', sans-serif; --e-nom: 'Noto Sans JP', sans-serif; }
html:lang(zh) { --e-titre: 'Noto Sans SC', sans-serif; --e-serif: 'Noto Sans SC', sans-serif; --e-sans: 'Noto Sans SC', 'Noto Sans', sans-serif; --e-nom: 'Noto Sans SC', sans-serif; }
html:lang(ko) { --e-titre: 'Noto Sans KR', sans-serif; --e-serif: 'Noto Sans KR', sans-serif; --e-sans: 'Noto Sans KR', 'Noto Sans', sans-serif; --e-nom: 'Noto Sans KR', sans-serif; }
html:lang(hi) { --e-titre: 'Noto Serif Devanagari', serif; --e-serif: 'Noto Serif Devanagari', serif; --e-sans: 'Noto Sans Devanagari', 'Noto Sans', sans-serif; --e-nom: 'Noto Serif Devanagari', serif; }
html:lang(bn) { --e-titre: 'Noto Serif Bengali', serif; --e-serif: 'Noto Serif Bengali', serif; --e-sans: 'Noto Sans Bengali', 'Noto Sans', sans-serif; --e-nom: 'Noto Serif Bengali', serif; }

/* Écritures sans capitales ni italique : jamais d'espacement des lettres, jamais de faux italique */
html:lang(ar) body *, html:lang(ja) body *, html:lang(zh) body *, html:lang(ko) body *, html:lang(hi) body *, html:lang(bn) body * {
  letter-spacing: 0 !important;
  font-style: normal !important;
}
/* … sauf les noms des langues du sélecteur, écrits dans leur propre écriture */
.sc-lang-list [lang] { letter-spacing: normal; }

/* ─── Texte courant ─── */
body {
  font-family: var(--e-sans);
  font-size: 1.0625rem;
  color: var(--e-texte);
}
html:lang(ar) body { font-size: 1.125rem; line-height: 1.9; }
html:lang(hi) body, html:lang(bn) body { line-height: 1.85; }
html:lang(ar) p, html:lang(ar) li { line-height: 1.9; }
html:lang(hi) p, html:lang(hi) li, html:lang(bn) p, html:lang(bn) li { line-height: 1.85; }
a { color: #2E5F8A; }
:focus-visible { outline: 2px solid var(--e-or-filet); outline-offset: 3px; }

/* ═══ EN-TÊTE : sceau à plat + nom en toutes lettres ═══ */
.sc-header { box-shadow: none; border-bottom: 1px solid var(--e-filet); }
.sc-header__inner { height: 80px; }
.sc-marque { display: flex; align-items: center; gap: 12px; color: var(--e-marine); text-decoration: none; }
.sc-marque:hover { color: var(--e-marine); }
.sc-header__brand img.sc-header__logo { height: 56px !important; width: auto; }
.sc-marque__texte { display: block; }
.sc-marque__nom { display: block; font-family: var(--e-nom); font-weight: 600; font-size: 18px; letter-spacing: .12em; line-height: 1.05; white-space: nowrap; }
.sc-marque__sous { display: block; font-family: var(--e-nom); font-weight: 500; font-size: 9.5px; letter-spacing: .34em; line-height: 1.6; color: var(--e-ardoise); white-space: nowrap; }
html:lang(ru) .sc-marque__nom { font-weight: 400; letter-spacing: .08em; font-size: 17px; }
html:lang(ru) .sc-marque__sous { font-weight: 400; letter-spacing: .12em; font-size: 9px; }
html:lang(ar) .sc-marque__nom { font-size: 21px; font-weight: 700; line-height: 1.3; }
html:lang(ar) .sc-marque__sous { font-size: 12px; font-weight: 600; line-height: 1.3; }
html:lang(ja) .sc-marque__nom, html:lang(zh) .sc-marque__nom, html:lang(ko) .sc-marque__nom,
html:lang(hi) .sc-marque__nom, html:lang(bn) .sc-marque__nom { font-size: 17px; font-weight: 600; line-height: 1.25; }
html:lang(ja) .sc-marque__sous, html:lang(zh) .sc-marque__sous, html:lang(ko) .sc-marque__sous,
html:lang(hi) .sc-marque__sous, html:lang(bn) .sc-marque__sous { font-size: 11px; font-weight: 500; line-height: 1.4; }

.sc-nav__list a, .sc-nav .menu a { font-size: .875rem; color: #1E2A3E; padding: .4rem .55rem; }
.sc-nav .sub-menu a { font-size: .875rem; }
.sc-btn--primary { background: var(--e-marine); border-color: var(--e-marine); }
.sc-btn--primary:hover { background: #2E5F8A; border-color: #2E5F8A; }
.sc-btn--outline { color: var(--e-marine); border-color: var(--e-marine); }

/* propriétés logiques : l'en-tête et les menus s'inversent en arabe */
.sc-header__actions { margin-left: 0; margin-inline-start: auto; }
.sc-nav-toggle { margin-left: 0; margin-inline-start: auto; }
.sc-nav .menu-item-has-children > a::after { margin-left: 0; margin-inline-start: 5px; }
[dir="rtl"] .sc-nav .sub-menu { left: auto; right: 0; }
[dir="rtl"] .sc-lang-list { right: auto; left: 0; }
[dir="rtl"] .sc-nav .sub-menu { border-left: 1px solid var(--sc-border); }
@media (max-width: 899px) {
  [dir="rtl"] .sc-nav .sub-menu { border-left: none; border-right: 3px solid var(--sc-border); padding: .25rem .75rem .25rem 0; }
}

/* en-tête un peu plus large que le texte (1240 px utiles) : sceau, nom, menu, compte, bouton et langue sur une ligne */
.sc-header__inner.sc-container { max-width: 1320px; }
@media (min-width: 1100px) { .sc-nav__list, .sc-nav .menu { flex-wrap: nowrap; } }
.sc-nav__list a, .sc-nav .menu a { padding: .4rem .45rem; }
/* écrans moyens : le nom laisse la place au menu */
@media (min-width: 900px) and (max-width: 1359px) {
  .sc-marque__texte { display: none; }
  .sc-nav__list a, .sc-nav .menu a { font-size: .8125rem; padding: .4rem .45rem; }
}
@media (max-width: 899px) {
  .sc-header__inner { height: 68px; }
}
@media (max-width: 560px) {
  .sc-header__inner { height: 64px; }
  .sc-marque { gap: 7px; }
  .sc-header__brand img.sc-header__logo { height: 38px !important; }
  .sc-marque__nom { font-size: 12px; letter-spacing: .06em; }
  .sc-marque__sous { font-size: 6.5px; letter-spacing: .3em; }
  html:lang(ru) .sc-marque__nom { font-size: 10.5px; letter-spacing: .03em; }
  html:lang(ru) .sc-marque__sous { font-size: 6.5px; letter-spacing: .1em; }
  html:lang(ar) .sc-marque__nom { font-size: 15px; }
  html:lang(ar) .sc-marque__sous { font-size: 10px; }
  html:lang(ja) .sc-marque__nom, html:lang(zh) .sc-marque__nom, html:lang(ko) .sc-marque__nom,
  html:lang(hi) .sc-marque__nom, html:lang(bn) .sc-marque__nom { font-size: 12px; }
  html:lang(ja) .sc-marque__sous, html:lang(zh) .sc-marque__sous, html:lang(ko) .sc-marque__sous,
  html:lang(hi) .sc-marque__sous, html:lang(bn) .sc-marque__sous { font-size: 9px; }
}
/* téléphone : sceau + nom, bouton, langue, menu ; le lien du compte passe dans le menu déroulant */
.sc-nav__compte-mobile { display: none; }
@media (max-width: 560px) {
  .sc-header__inner.sc-container { gap: 8px; }
  .sc-header__brand { order: 0; min-width: 0; }
  .sc-header__actions { order: 1; gap: 6px; }
  .sc-nav-toggle { order: 2; margin-inline-start: 0; padding: .5rem .25rem; }
  .sc-header__actions > a.sc-header__login { display: none; }
  .sc-nav__compte-mobile { display: list-item; }
  .sc-header__cta { font-size: .625rem; letter-spacing: .04em; padding: .45rem .55rem; white-space: normal; max-width: 134px; line-height: 1.2; text-align: center; }
  .sc-header__brand, .sc-marque, .sc-marque__texte { min-width: 0; }
  .sc-header__brand { flex: 0 1 auto; overflow: hidden; }
  .sc-lang-current { padding: .3rem .4rem; }
}
@media (max-width: 374px) {
  .sc-marque__texte { display: none; }
}

/* ═══ BANDEAU ═══ */
.sc-hero.sc-hero--e {
  background: var(--e-marine);
  background-image: none;
  color: var(--e-ivoire);
  text-align: center;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: var(--e-h-fond);
  padding: 30px 0 32px;
  border-bottom: 1px solid var(--e-or);
}
.sc-hero--e.sc-hero--accueil { min-height: var(--e-h-accueil); }
.sc-hero--e.sc-hero--service { min-height: var(--e-h-service); padding: 24px 0 26px; }
/* mappemonde en filigrane : WebP ivoire sur transparent (24 ko, corrigé en passe 14 : plus de trait au nord-est), opacité 3,5 % */
.sc-hero.sc-hero--e::before {
  content: "";
  position: absolute;
  inset: 0;
  display: block;
  background: url(../img/mappemonde-filigrane.webp?v=p14) center 46% / 1180px auto no-repeat;
  opacity: .035;
  pointer-events: none;
}
/* décalage vers l'Asie et le Pacifique pour les langues d'Asie (réglage de position seulement) */
html:lang(ja) .sc-hero--e::before, html:lang(zh) .sc-hero--e::before, html:lang(ko) .sc-hero--e::before,
html:lang(id) .sc-hero--e::before, html:lang(hi) .sc-hero--e::before, html:lang(bn) .sc-hero--e::before { background-position: 72% 46%; }
.sc-hero--e .sc-hero__inner { position: relative; z-index: 1; width: 100%; }

.sc-hero__sceau { display: block; width: 50px; height: auto; margin: 0 auto 8px; }

.sc-hero--e .sc-hero__eyebrow {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--e-or);
  font-family: var(--e-sans);
  font-size: 13px;
  font-weight: 400;
  letter-spacing: .18em;
  text-transform: uppercase;
  line-height: 1.4;
  text-shadow: none;
}
html:lang(ar) .sc-hero--e .sc-hero__eyebrow, html:lang(ja) .sc-hero--e .sc-hero__eyebrow, html:lang(zh) .sc-hero--e .sc-hero__eyebrow,
html:lang(ko) .sc-hero--e .sc-hero__eyebrow, html:lang(hi) .sc-hero--e .sc-hero__eyebrow, html:lang(bn) .sc-hero--e .sc-hero__eyebrow { font-size: 15px; }

.sc-hero__filet { display: flex; align-items: center; justify-content: center; gap: 8px; margin: 10px auto 12px; color: var(--e-or); }
.sc-hero__filet::before, .sc-hero__filet::after { content: ""; width: 28px; height: 1px; background: currentColor; }
.sc-hero__filet svg { width: 10px; height: 10px; display: block; }

.sc-hero--e .sc-hero__title {
  font-family: var(--e-titre);
  font-weight: 400;
  font-size: clamp(1.75rem, 1rem + 3.2vw, 3.5rem);
  line-height: 1.12;
  letter-spacing: .14em;
  padding-inline-start: .14em;          /* compense l'espace laissé après la dernière lettre */
  text-transform: uppercase;
  color: var(--e-ivoire);
  -webkit-text-fill-color: var(--e-ivoire);
  background: none;
  -webkit-background-clip: border-box;
  background-clip: border-box;
  text-shadow: none;
  margin: 0;
  text-wrap: balance;
}
.sc-hero--service .sc-hero__title { font-size: clamp(1.6rem, .95rem + 2.6vw, 2.75rem); }
@media (max-width: 480px) {
  .sc-hero--e .sc-hero__title { letter-spacing: .08em; padding-inline-start: .08em; }
}
/* articles : titre en casse normale, plus petit */
body.single .sc-hero--e .sc-hero__title {
  text-transform: none;
  letter-spacing: .02em;
  padding-inline-start: 0;
  font-size: clamp(1.5rem, 1rem + 1.8vw, 2.375rem);
  line-height: 1.25;
}
/* écritures non latines : police de l'écriture, sans espacement */
html:lang(ar) .sc-hero--e .sc-hero__title { font-weight: 700; font-size: clamp(2.1rem, 1.2rem + 3vw, 3.375rem); line-height: 1.35; padding-inline-start: 0; }
html:lang(ja) .sc-hero--e .sc-hero__title, html:lang(zh) .sc-hero--e .sc-hero__title, html:lang(ko) .sc-hero--e .sc-hero__title {
  font-weight: 500; font-size: clamp(1.75rem, 1rem + 2.6vw, 3rem); line-height: 1.3; padding-inline-start: 0;
}
html:lang(hi) .sc-hero--e .sc-hero__title, html:lang(bn) .sc-hero--e .sc-hero__title {
  font-weight: 600; font-size: clamp(1.75rem, 1rem + 2.6vw, 3rem); line-height: 1.45; padding-inline-start: 0;
}
html:lang(ar) .sc-hero--service .sc-hero__title, html:lang(ja) .sc-hero--service .sc-hero__title, html:lang(zh) .sc-hero--service .sc-hero__title,
html:lang(ko) .sc-hero--service .sc-hero__title, html:lang(hi) .sc-hero--service .sc-hero__title, html:lang(bn) .sc-hero--service .sc-hero__title { font-size: clamp(1.6rem, 1rem + 2vw, 2.5rem); }

.sc-hero--e .sc-hero__subtitle,
.sc-hero--e.sc-hero--sm .sc-hero__subtitle {
  font-family: var(--e-serif);
  font-style: italic !important;
  font-weight: 500;
  font-size: clamp(1.1875rem, 1.05rem + .55vw, 1.4375rem);
  line-height: 1.35;
  color: rgba(245, 241, 235, .84);
  max-width: 760px;
  margin: 12px auto 0;
  text-shadow: none;
  text-wrap: balance;
}
html:lang(ar) .sc-hero--e .sc-hero__subtitle, html:lang(ja) .sc-hero--e .sc-hero__subtitle, html:lang(zh) .sc-hero--e .sc-hero__subtitle,
html:lang(ko) .sc-hero--e .sc-hero__subtitle, html:lang(hi) .sc-hero--e .sc-hero__subtitle, html:lang(bn) .sc-hero--e .sc-hero__subtitle {
  font-style: normal !important; font-weight: 400; font-size: clamp(1.0625rem, 1rem + .4vw, 1.3125rem); line-height: 1.6;
}
/* date d'un article : mention discrète, contraste suffisant sur bleu nuit */
body.single .sc-hero--e .sc-hero__subtitle { font-family: var(--e-sans); font-style: normal !important; font-size: .9375rem; color: rgba(245, 241, 235, .78); letter-spacing: .03em; }

.sc-hero--e .sc-hero__lead { color: rgba(245, 241, 235, .84) !important; text-shadow: none; font-family: var(--e-serif); }
.sc-hero--e .sc-hero__citation {
  font-family: var(--e-serif);
  font-weight: 500;
  font-style: normal;
  font-size: 1.25rem;
  color: var(--e-ivoire);
  margin: 14px 0 0;
  letter-spacing: 0;
  text-shadow: none;
}
.sc-hero--e .sc-hero__citation::before, .sc-hero--e .sc-hero__citation::after { content: none; }
.sc-hero__citation-texte::before { content: '« '; }
.sc-hero__citation-texte::after  { content: ' »'; }
html:lang(en) .sc-hero__citation-texte::before, html:lang(de) .sc-hero__citation-texte::before, html:lang(nl) .sc-hero__citation-texte::before,
html:lang(id) .sc-hero__citation-texte::before, html:lang(sw) .sc-hero__citation-texte::before, html:lang(tr) .sc-hero__citation-texte::before,
html:lang(hi) .sc-hero__citation-texte::before, html:lang(bn) .sc-hero__citation-texte::before, html:lang(ko) .sc-hero__citation-texte::before { content: '“'; }
html:lang(en) .sc-hero__citation-texte::after, html:lang(de) .sc-hero__citation-texte::after, html:lang(nl) .sc-hero__citation-texte::after,
html:lang(id) .sc-hero__citation-texte::after, html:lang(sw) .sc-hero__citation-texte::after, html:lang(tr) .sc-hero__citation-texte::after,
html:lang(hi) .sc-hero__citation-texte::after, html:lang(bn) .sc-hero__citation-texte::after, html:lang(ko) .sc-hero__citation-texte::after { content: '”'; }
html:lang(ja) .sc-hero__citation-texte::before, html:lang(zh) .sc-hero__citation-texte::before { content: '「'; }
html:lang(ja) .sc-hero__citation-texte::after, html:lang(zh) .sc-hero__citation-texte::after { content: '」'; }
.sc-hero__source { display: block; font-family: var(--e-sans); font-size: 12.5px; letter-spacing: .02em; margin-top: 2px; color: rgba(245, 241, 235, .7); }
.sc-hero__source cite { font-style: italic; }
.sc-hero__cote { font-family: var(--e-sans); font-size: 13px; line-height: 1.5; margin: 12px 0 0; color: rgba(245, 241, 235, .72); text-wrap: balance; }
.sc-hero--e .sc-hero__actions { margin-top: 1.25rem; }

@media (max-width: 767px) {
  .sc-hero.sc-hero--e { min-height: var(--e-h-fond-m); padding: 22px 0 24px; }
  .sc-hero--e.sc-hero--accueil { min-height: var(--e-h-accueil-m); }
  .sc-hero--e.sc-hero--service { min-height: var(--e-h-service-m); padding: 20px 0 22px; }
  .sc-hero.sc-hero--e::before { background-size: 640px auto; }
  .sc-hero__sceau { width: 40px; }
  .sc-hero__filet { margin: 8px auto 10px; }
  .sc-hero--e .sc-hero__subtitle, .sc-hero--e.sc-hero--sm .sc-hero__subtitle { font-size: 1.125rem; margin-top: 8px; }
  .sc-hero--e .sc-hero__citation { font-size: 1.0625rem; margin-top: 8px; }
  .sc-hero__cote { font-size: 13px; margin-top: 10px; }
}

/* ═══ SOUS LE BANDEAU : fil d'Ariane, mention de traduction ═══ */
.sc-ariane { font-family: var(--e-sans); font-size: 13px; color: var(--e-texte-2); border-bottom: 1px solid #ECE6DA; padding: 12px 0; background: #fff; }
.sc-ariane ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.sc-ariane li + li::before { content: "›"; margin-inline-end: 6px; color: #8A8276; }
[dir="rtl"] .sc-ariane li + li::before { content: "‹"; }
.sc-ariane a { color: var(--e-texte-2); text-decoration: none; }
.sc-ariane a:hover { color: var(--e-marine); text-decoration: underline; }
.sc-ariane [aria-current] { color: var(--e-texte); }
.sc-mention-ia { font-family: var(--e-sans); font-size: 13px; color: var(--e-texte-2); background: #FAF8F4; border-bottom: 1px solid #ECE6DA; padding: 9px 0; text-align: center; }
.sc-mention-ia a { color: #2E5F8A; }
@media (max-width: 767px) {
  .sc-ariane { padding: 2px 0; }
  .sc-ariane ol { display: block; line-height: 1.5; }
  .sc-ariane li { display: inline; }
  .sc-ariane li + li::before { margin-inline: 4px; }
  .sc-ariane a { display: inline-block; padding: 12px 0; }   /* cible tactile de 44 px */
}

/* ═══ CORPS : titres de section en Cormorant, casse normale ═══ */
.sc-section__eyebrow { display: block; font-family: var(--e-sans); font-size: .75rem; font-weight: 600; letter-spacing: .16em; color: var(--e-ardoise); margin-bottom: .375rem; }
.sc-section--dark .sc-section__eyebrow { color: rgba(245, 241, 235, .7); }
html:lang(ar) .sc-section__eyebrow, html:lang(ja) .sc-section__eyebrow, html:lang(zh) .sc-section__eyebrow,
html:lang(ko) .sc-section__eyebrow, html:lang(hi) .sc-section__eyebrow, html:lang(bn) .sc-section__eyebrow { font-size: .875rem; }
.sc-section__title {
  font-family: var(--e-serif);
  font-weight: 600;
  font-size: clamp(1.6875rem, 1.25rem + 1.3vw, 2.125rem);
  line-height: 1.18;
  letter-spacing: 0;
  text-transform: none;
  color: var(--e-marine);
  margin-bottom: 0;
}
html:lang(ar) .sc-section__title, html:lang(hi) .sc-section__title, html:lang(bn) .sc-section__title { line-height: 1.5; font-size: clamp(1.5rem, 1.15rem + 1.1vw, 2rem); }
html:lang(ja) .sc-section__title, html:lang(zh) .sc-section__title, html:lang(ko) .sc-section__title { font-weight: 700; line-height: 1.4; font-size: clamp(1.375rem, 1.1rem + .9vw, 1.75rem); }
.sc-section--dark .sc-section__title { color: var(--e-ivoire); }
.sc-divider { width: 40px; height: 1px; background: var(--e-or-filet); margin: 18px 0 22px; }
.sc-section--dark .sc-divider { background: var(--e-or); }
.sc-section__lead { font-size: 1.1875rem; line-height: 1.7; color: var(--e-texte); }
html:lang(ar) .sc-section__lead, html:lang(hi) .sc-section__lead, html:lang(bn) .sc-section__lead { line-height: 1.9; }
.sc-section--dark .sc-section__lead { color: rgba(245, 241, 235, .82); }
.sc-quote, .entry-content blockquote {
  font-family: var(--e-serif);
  font-style: italic;
  font-weight: 500;
  font-size: clamp(1.3125rem, 1.15rem + .55vw, 1.5625rem);
  line-height: 1.45;
  color: var(--e-marine);
  border: 0;
  border-inline-start: 2px solid var(--e-or-filet);
  padding: .25rem 0;
  padding-inline-start: 24px;
  margin: 1.75rem 0;
}
/* exergue centré (Constitution) : sans filet latéral, comme la maquette */
[style*="text-align:center"] > .sc-quote { border: 0; padding-inline-start: 0; text-align: center; font-size: clamp(1.375rem, 1.2rem + .6vw, 1.5625rem) !important; }
html:lang(ar) .sc-quote, html:lang(ja) .sc-quote, html:lang(zh) .sc-quote, html:lang(ko) .sc-quote, html:lang(hi) .sc-quote, html:lang(bn) .sc-quote { font-size: 1.25rem; font-weight: 500; line-height: 1.8; }
.sc-section--dark .sc-quote { color: var(--e-ivoire); border-inline-start-color: var(--e-or); }
.sc-exergue { border-top-color: var(--e-filet); border-bottom-color: var(--e-filet); }
.sc-exergue p { font-family: var(--e-serif); font-weight: 500; font-size: clamp(1.5rem, 1.2rem + 1vw, 2.125rem); color: var(--e-marine); }

/* titres et cartes qui utilisent la police à empattement : tailles adaptées à Cormorant */
.sc-card { border-color: var(--e-filet); box-shadow: none; border-radius: 2px; }
.sc-card:hover { transform: none; box-shadow: none; }
.sc-card h3, .sc-card h3[style] { font-family: var(--e-serif) !important; font-weight: 600; font-size: 1.375rem !important; line-height: 1.25; color: var(--e-marine); }
.sc-card__number { color: var(--e-or-texte, #7A5C2A); font-family: var(--e-serif); font-size: .9375rem; font-weight: 600; letter-spacing: .06em; }
.sc-faq__question { font-family: var(--e-serif); font-size: 1.3125rem; font-weight: 600; color: var(--e-marine); }
.sc-faq__category { font-family: var(--e-sans); color: var(--e-ardoise); border-bottom-color: var(--e-filet); }
.sc-constitution-article__num { font-family: var(--e-serif); font-size: .9375rem; color: #7A5C2A; letter-spacing: .06em; }
.sc-constitution-article h3 { font-family: var(--e-serif); font-size: 1.375rem; font-weight: 600; line-height: 1.25; }
.sc-constitution-article p { font-size: 1rem; line-height: 1.75; color: var(--e-texte); }
.sc-livre-theme h3, .sc-what-card h3 { font-family: var(--e-serif); font-size: 1.3125rem; font-weight: 600; }
.sc-livre-theme__icon { background: var(--e-marine); font-family: var(--e-serif); font-size: 1rem; }
.sc-cta__title, .sc-post-card__title, .sc-woo-card__title, .sc-form__success h3, .entry-content h2 { font-family: var(--e-serif); font-weight: 600; }
.sc-cta__title { font-size: clamp(1.75rem, 1.3rem + 1.4vw, 2.5rem); }
.entry-content h2 { font-size: 1.875rem; color: var(--e-marine); }
.entry-content h1 { font-family: var(--e-serif); font-weight: 600; text-transform: none; letter-spacing: 0; }
.sc-legal-content h2 { font-family: var(--e-serif); font-size: 1.625rem; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--e-marine); border-bottom-color: var(--e-filet); }
.sc-legal-content p, .sc-legal-content li { font-size: 1rem; }
.sc-blog-card { border-color: var(--e-filet); border-radius: 2px; }
.sc-blog-card__title { font-family: var(--e-serif); font-size: 1.25rem; font-weight: 600; line-height: 1.25; }
.sc-blog-card__meta { color: var(--e-texte-2); }
.sc-section--alt { background: #FAF8F4; }
.sc-section--bordered { border-top-color: #ECE6DA; }
.sc-cta { background: var(--e-marine); }

/* lien « Voir comment c'est possible » de l'accueil : cible tactile de 44 px */
.sc-section--seuil a[href^="#bloc-mecanisme"] { display: inline-block; padding: 12px 0; min-height: 44px; }

/* ═══ COLONNE DE LECTURE (pages de texte) : 720 px, encadrés jusqu'à 860 px ═══ */
body.sc-e-colonne .sc-main > .sc-section > .sc-container,
body.sc-e-colonne .sc-main > section > .sc-container:not(.sc-hero__inner) { max-width: calc(var(--e-texte-max) + 2.5rem); }
@media (min-width: 768px) {
  body.sc-e-colonne .sc-main > .sc-section > .sc-container,
  body.sc-e-colonne .sc-main > section > .sc-container:not(.sc-hero__inner) { max-width: calc(var(--e-texte-max) + 4rem); }
}
@media (min-width: 1200px) {
  body.sc-e-colonne .sc-main > .sc-section > .sc-container,
  body.sc-e-colonne .sc-main > section > .sc-container:not(.sc-hero__inner) { max-width: calc(var(--e-texte-max) + 5rem); }
}
html:lang(ja) body.sc-e-colonne .sc-main > .sc-section > .sc-container,
html:lang(zh) body.sc-e-colonne .sc-main > .sc-section > .sc-container,
html:lang(ko) body.sc-e-colonne .sc-main > .sc-section > .sc-container { max-width: calc(40em + 5rem); }
body.sc-e-colonne .sc-section__lead, body.sc-e-colonne .sc-section__body { max-width: none; }
/* texte courant écrit à 15 px dans les corps de page : ramené à 16 px, plus proche de la maquette */
body.sc-e-colonne .sc-section p[style*="font-size:0.9375rem"] { font-size: 1rem !important; }
body.sc-e-colonne .sc-two-col { display: block; }
body.sc-e-colonne .sc-two-col > * + * { margin-top: 2rem; }
/* encadrés, grilles et tableaux : jusqu'à 860 px, débordant de la colonne de part et d'autre */
@media (min-width: 1000px) {
  body.sc-e-colonne .sc-section > .sc-container > :is(.sc-cards, .sc-what-cards, .sc-founder-layout, .sc-contrib-grid, .sc-blog-grid, .sc-livre--page, .sc-privacy-table, table, .sc-table-wrap, .sc-faq__cta),
  body.sc-e-colonne .sc-section > .sc-container > div > :is(.sc-cards, table, .sc-privacy-table) {
    margin-inline: calc((var(--e-texte-max) - var(--e-large-max)) / 2);
  }
}
body.sc-e-colonne .sc-livre--page { grid-template-columns: 220px 1fr; gap: 2.5rem; }
@media (max-width: 900px) { body.sc-e-colonne .sc-livre--page { grid-template-columns: 1fr; } }
body.sc-e-colonne .sc-founder-layout { grid-template-columns: 1fr 300px; }
@media (max-width: 1000px) { body.sc-e-colonne .sc-founder-layout { grid-template-columns: 1fr; } }
.sc-founder-layout > div:last-child { grid-column: auto; }
@media (max-width: 1000px) { .sc-founder-layout > div:last-child { grid-column: 1 / -1; } }
/* Passe 11 : portrait remis (page Association). Portrait 220 px à côté du texte, encadré « Le livre » dessous,
   sur toute la largeur de 860 px ; sur téléphone, portrait au-dessus du texte (360 px au plus). */
body.sc-e-colonne .sc-founder-layout:has(> .sc-founder-portrait) { grid-template-columns: 220px minmax(0, 1fr); gap: 2.25rem; }
body.sc-e-colonne .sc-founder-layout:has(> .sc-founder-portrait) > div:last-child { grid-column: 1 / -1; }
@media (max-width: 640px) {
  body.sc-e-colonne .sc-founder-layout:has(> .sc-founder-portrait) { grid-template-columns: minmax(0, 1fr); gap: 1.75rem; }
  .sc-founder-portrait { max-width: 360px; }
}
.sc-founder-img { height: auto; border-radius: 2px; box-shadow: none; }

/* ═══ ILLUSTRATIONS DU CORPS DES PAGES (passe 11, remises) ═══
   Figure placée entre deux sections : même axe que la colonne de lecture, jusqu'à 860 px
   comme les encadrés ; légende en Noto Sans, gris doux, centrée. */
.sc-figure-page {
  width: 100%;
  max-width: calc(var(--e-large-max) + 2.5rem);
  margin: 0 auto 3.5rem;
  padding-inline: 1.25rem;
}
@media (min-width: 768px)  { .sc-figure-page { max-width: calc(var(--e-large-max) + 4rem); padding-inline: 2rem; } }
@media (min-width: 1200px) { .sc-figure-page { max-width: calc(var(--e-large-max) + 5rem); padding-inline: 2.5rem; } }
.sc-figure-page picture { display: block; }
.sc-figure-page img { width: 100%; height: auto; display: block; border-radius: 2px; }
.sc-figure-page figcaption {
  max-width: var(--e-texte-max);
  margin: .875rem auto 0;
  font-family: var(--e-sans);
  font-size: .875rem;
  line-height: 1.55;
  color: var(--e-texte-2);
  text-align: center;
  text-wrap: balance;
}
/* vignettes et image de tête des articles (remises) : angles sobres du design E */
.sc-article-cover { border-radius: 2px; }
.sc-blog-card__img img { border-radius: 0; }

/* ═══ Devenir Sageocrate : cartes d'exemple et mention près du bouton d'envoi ═══ */
.sc-contrib-card { border-width: 4px; border-color: var(--e-marine); height: auto; }
.sc-contrib-commune { text-align: center; margin: 1.75rem auto 0; max-width: 640px; font-family: var(--e-serif); font-style: italic; font-size: 1.1875rem; color: var(--e-texte-2); }
.sc-form__valeur { margin: .6rem 0 0; font-family: var(--e-serif); font-style: italic; font-size: 1.0625rem; line-height: 1.4; color: #6B665F; }
html:lang(ar) .sc-contrib-commune, html:lang(ja) .sc-contrib-commune, html:lang(zh) .sc-contrib-commune, html:lang(ko) .sc-contrib-commune,
html:lang(hi) .sc-contrib-commune, html:lang(bn) .sc-contrib-commune,
html:lang(ar) .sc-form__valeur, html:lang(ja) .sc-form__valeur, html:lang(zh) .sc-form__valeur, html:lang(ko) .sc-form__valeur,
html:lang(hi) .sc-form__valeur, html:lang(bn) .sc-form__valeur { font-size: .9375rem; }

/* ═══ Débordements sur téléphone (Soutenir, Association) : grilles à deux colonnes écrites dans le contenu ═══ */
.sc-card, .sc-card * { min-width: 0; overflow-wrap: break-word; }
@media (max-width: 640px) {
  .sc-main [style*="grid-template-columns:1fr 1fr"],
  .sc-main [style*="grid-template-columns: 1fr 1fr"],
  .sc-main [style*="grid-template-columns:repeat(2"],
  .sc-main [style*="grid-template-columns:repeat(3"] { grid-template-columns: minmax(0, 1fr) !important; }
}

/* ═══ PIED DE PAGE : bleu nuit, filet or ═══ */
.sc-footer { background: var(--e-marine); color: rgba(245, 241, 235, .82); border-top: 1px solid var(--e-or-filet); }
.sc-footer__heading { font-family: var(--e-sans); color: rgba(245, 241, 235, .7); }
.sc-footer__links a { color: rgba(245, 241, 235, .82); }
.sc-footer__links a:hover { color: #fff; }
.sc-footer__site-name { font-family: var(--e-nom); font-weight: 600; letter-spacing: .1em; }
.sc-footer__tagline { color: rgba(245, 241, 235, .72); font-family: var(--e-serif); font-size: 1.0625rem; }
html:lang(ar) .sc-footer__tagline, html:lang(ja) .sc-footer__tagline, html:lang(zh) .sc-footer__tagline,
html:lang(ko) .sc-footer__tagline, html:lang(hi) .sc-footer__tagline, html:lang(bn) .sc-footer__tagline { font-size: .9375rem; }
.sc-footer__cta { color: rgba(245, 241, 235, .9); border-color: rgba(245, 241, 235, .4); }
.sc-footer__bottom { border-top-color: rgba(245, 241, 235, .18); }
.sc-footer__bottom p { color: rgba(245, 241, 235, .7); font-size: .8125rem; line-height: 1.7; }
.sc-footer__bottom a { color: rgba(245, 241, 235, .82); }
.sc-footer__bottom a:hover { color: #fff; }
.sc-footer__etat { margin-bottom: .25rem; color: rgba(245, 241, 235, .82) !important; }
.sc-footer__sep { margin: 0 .35em; }
.sc-footer__ai-note { color: rgba(245, 241, 235, .6) !important; }
.sc-footer__ai-note a { color: var(--e-or) !important; }

/* ═══ Arabe (dir="rtl" sur <html>) : un élément placé à left:-9999px élargirait la page de 10 000 px ═══ */
[dir="rtl"] .sc-skip { left: auto; right: -9999px; }
[dir="rtl"] .sc-skip:focus { right: 0; }
[dir="rtl"] .sc-contact-hp, [dir="rtl"] input[name="sg_ec_site"] { left: auto !important; right: -9999px !important; }

/* ═══ Impression : pas d'aplat bleu ═══ */
@media print {
  .sc-hero.sc-hero--e, .sc-footer { background: #fff !important; color: #000 !important; border-color: #000; }
  .sc-hero--e .sc-hero__title, .sc-hero--e .sc-hero__subtitle, .sc-hero__cote { color: #000 !important; -webkit-text-fill-color: #000; }
  .sc-hero.sc-hero--e::before, .sc-ariane, .sc-mention-ia, .sc-header__actions, .sc-nav { display: none !important; }
}

/* ═══ Page Presse (passe 13) : encadrés, portrait et couverture à côté du texte, fichiers à télécharger ═══ */
.sc-presse { max-width: var(--e-texte-max); margin-inline: auto; }
.sc-presse__bloc { margin-bottom: 2rem; }
.sc-presse__bloc p { color: var(--e-texte-2); font-size: 1rem; line-height: 1.75; margin: 0 0 .875rem; }
.sc-presse__bloc p:last-child { margin-bottom: 0; }
.sc-presse__titre { font-family: var(--e-serif); font-weight: 600; font-size: 1.375rem; line-height: 1.25; color: var(--e-marine, #0E2040); margin: 0 0 1rem; }
.sc-presse__note { font-family: var(--e-serif); font-style: italic; font-size: 1.0625rem !important; color: var(--e-ardoise) !important; }
.sc-presse__nom { font-family: var(--e-serif); font-weight: 600; font-size: 1.1875rem !important; color: var(--e-marine, #0E2040) !important; margin-bottom: .375rem !important; }
.sc-presse__soustitre { font-family: var(--e-serif); font-style: italic; font-size: 1.0625rem !important; }
.sc-presse__duo { display: grid; grid-template-columns: 160px minmax(0, 1fr); gap: 1.75rem; align-items: start; }
.sc-presse__duo picture, .sc-presse__duo img { display: block; width: 100%; height: auto; border-radius: 2px; }
.sc-presse__couverture img { box-shadow: 0 1px 6px rgba(14, 32, 64, .18); }
.sc-presse__fichiers, .sc-presse__liens { list-style: none; margin: 1.25rem 0 0; padding: 0; }
.sc-presse__fichier { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 1.25rem; align-items: center; padding: 1rem 0; border-top: 1px solid var(--e-filet); }
.sc-presse__fichier:last-child { padding-bottom: 0; }
.sc-presse__apercu { display: flex; align-items: center; justify-content: center; width: 96px; height: 96px; background: #F5F1EB; border: 1px solid var(--e-filet); border-radius: 2px; overflow: hidden; }
.sc-presse__apercu--sombre { background: #0E2040; border-color: #0E2040; }
.sc-presse__apercu img { max-width: 84px; max-height: 84px; width: auto; height: auto; }
.sc-presse__infos { display: flex; flex-direction: column; align-items: flex-start; gap: .375rem; }
.sc-presse__infos strong { color: var(--e-marine, #0E2040); font-weight: 600; }
.sc-presse__format { font-size: .875rem; color: var(--e-texte-2); }
.sc-presse__infos .sc-btn { margin-top: .25rem; min-height: 44px; display: inline-flex; align-items: center; }
.sc-presse__action .sc-btn { min-height: 44px; display: inline-flex; align-items: center; }
.sc-presse__liens li { padding: .625rem 0; border-top: 1px solid var(--e-filet); color: var(--e-texte-2); line-height: 1.65; }
.sc-presse__liens a { font-weight: 600; }
.sc-contact-info__presse { margin-top: .5rem; }
html:is(:lang(ar), :lang(ja), :lang(zh), :lang(ko), :lang(hi), :lang(bn)) .sc-presse__note,
html:is(:lang(ar), :lang(ja), :lang(zh), :lang(ko), :lang(hi), :lang(bn)) .sc-presse__soustitre { font-style: normal; }
@media (max-width: 640px) {
  .sc-presse__duo { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
  .sc-presse__duo picture { max-width: 200px; }
  .sc-presse__fichier { grid-template-columns: 72px minmax(0, 1fr); gap: 1rem; }
  .sc-presse__apercu { width: 72px; height: 72px; }
  .sc-presse__apercu img { max-width: 62px; max-height: 62px; }
}
