/* CoconSEM Graphic Engine — front skin / STEP 3.1
   Scope strict aux composants du moteur graphique. Legacy inchangé. */

.csmk-ge-site-header,
.csmk-ge-site-header *,
.csmk-ge-article-intro,
.csmk-ge-article-intro *,
.csmk-ge-cover,
.csmk-ge-cover *{box-sizing:border-box}

/* =========================================================
 * SITE HEADER
 * =======================================================*/
.csmk-ge-site-header{
  --ge-blue:#124f78;
  --ge-ink:#153a5a;
  --ge-muted:#617184;
  --ge-border:#e4ebf1;
  position:relative;
  z-index:900;
  background:#fff;
  border-bottom:1px solid var(--ge-border);
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
.csmk-ge-header-inner{
  width:min(1180px,calc(100% - 48px));
  min-height:76px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
.csmk-ge-brand{display:flex;align-items:center;gap:12px;min-width:0;color:var(--ge-ink);text-decoration:none!important;border:0!important}
.csmk-ge-logo{width:42px!important;height:42px!important;max-width:42px!important;object-fit:contain!important;border-radius:0!important;margin:0!important;box-shadow:none!important}
.csmk-ge-logo-fallback{width:42px;height:42px;display:grid;place-items:center;font:600 32px/1 Georgia,serif;color:var(--ge-blue)}
.csmk-ge-brand-copy{display:flex;flex-direction:column;min-width:0;line-height:1.13}
.csmk-ge-brand-name{font-family:Georgia,"Times New Roman",serif;font-size:20px;font-weight:600;letter-spacing:-.01em;white-space:nowrap;color:var(--ge-ink)}
.csmk-ge-brand-subtitle{margin-top:3px;font-size:10px;font-weight:600;color:var(--ge-muted);white-space:nowrap}
.csmk-ge-brand-meta{margin-top:2px;font-size:9px;color:#8593a2;white-space:nowrap}
.csmk-ge-header-actions{display:flex;align-items:center;gap:18px;margin-left:auto}
.csmk-ge-main-link{display:inline-flex;align-items:center;gap:5px;color:#4c6a86!important;text-decoration:none!important;border:0!important;font-size:12px;font-weight:600;white-space:nowrap}
.csmk-ge-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 17px;border-radius:999px;background:var(--ge-blue);color:#fff!important;text-decoration:none!important;border:1px solid var(--ge-blue)!important;font-size:12px;font-weight:700;white-space:nowrap;box-shadow:0 6px 18px rgba(18,79,120,.14)}
.csmk-ge-cta:hover{filter:brightness(.96);color:#fff!important}

.csmk-ge-site-header--boubli_compact.csmk-ge-site-header--variant-cta_only .csmk-ge-header-inner{min-height:70px}

.csmk-ge-site-header--maud_centered .csmk-ge-header-inner{min-height:118px;justify-content:center;flex-direction:column;gap:8px;padding:14px 0}
.csmk-ge-site-header--maud_centered .csmk-ge-brand{flex-direction:column;text-align:center;gap:6px}
.csmk-ge-site-header--maud_centered .csmk-ge-logo{width:62px!important;height:62px!important;max-width:62px!important}
.csmk-ge-site-header--maud_centered .csmk-ge-brand-name{font-size:23px}
.csmk-ge-site-header--maud_centered .csmk-ge-header-actions{margin:0}
.csmk-ge-site-header--maud_centered.csmk-ge-site-header--variant-compact .csmk-ge-header-inner{min-height:88px;flex-direction:row;justify-content:center}
.csmk-ge-site-header--maud_centered.csmk-ge-site-header--variant-compact .csmk-ge-brand{flex-direction:row;text-align:left}
.csmk-ge-site-header--maud_centered.csmk-ge-site-header--variant-compact .csmk-ge-logo{width:44px!important;height:44px!important;max-width:44px!important}

.csmk-ge-site-header--cabinet_identity .csmk-ge-header-inner{min-height:106px}
.csmk-ge-site-header--cabinet_identity .csmk-ge-logo{width:58px!important;height:58px!important;max-width:58px!important}
.csmk-ge-site-header--cabinet_identity .csmk-ge-brand-name{font-size:29px;font-weight:500;color:#1f2023}
.csmk-ge-site-header--cabinet_identity .csmk-ge-brand-subtitle{font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.csmk-ge-site-header--cabinet_identity.csmk-ge-site-header--variant-compact .csmk-ge-header-inner{min-height:76px}
.csmk-ge-site-header--cabinet_identity.csmk-ge-site-header--variant-compact .csmk-ge-logo{width:42px!important;height:42px!important;max-width:42px!important}
.csmk-ge-site-header--cabinet_identity.csmk-ge-site-header--variant-compact .csmk-ge-brand-name{font-size:21px}

.csmk-ge-site-header--minimal_brand .csmk-ge-header-inner{min-height:66px}
.csmk-ge-site-header--minimal_brand .csmk-ge-brand-name{font-family:inherit;font-size:16px;font-weight:700}
.csmk-ge-site-header--minimal_brand .csmk-ge-brand-subtitle,.csmk-ge-site-header--minimal_brand .csmk-ge-brand-meta{display:none}
.csmk-ge-site-header--minimal_brand .csmk-ge-logo{width:34px!important;height:34px!important;max-width:34px!important}

/* Transition : ancien thème enfant Boubli. Le patch de thème peut céder le slot ; ceci reste un filet. */
body.csmk-ge-site-header-active > header.ed-header,
body.csmk-ge-site-header-active .site-header.ed-header{display:none!important}

/* =========================================================
 * ARTICLE INTRO / HERO
 * =======================================================*/
.csmk-ge-article-intro{
  --ge-intro-blue:#164f7a;
  --ge-intro-ink:#16324a;
  --ge-intro-muted:#5e7182;
  --ge-intro-soft:#f5faff;
  --ge-intro-border:#e3edf4;
  width:100%;
  margin:0;
  padding:0;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
.csmk-ge-intro-inner{
  width:min(900px,calc(100% - 48px));
  margin:0 auto;
}
.csmk-ge-intro-copy{max-width:760px;margin:0}
.csmk-ge-intro-kicker{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 11px;
  margin:0 0 16px;
  border-radius:999px;
  background:#eaf4fb;
  color:#2d6790;
  font-size:12px;
  font-weight:700;
  line-height:1;
}
.csmk-ge-article-title{
  margin:0!important;
  padding:0!important;
  color:var(--ge-intro-blue)!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
  text-transform:none!important;
  text-align:left!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(34px,4.2vw,58px)!important;
  font-weight:500!important;
  line-height:1.06!important;
  letter-spacing:-.025em!important;
  text-shadow:none!important;
}
.csmk-ge-article-lead{
  max-width:720px;
  margin:18px 0 0!important;
  color:var(--ge-intro-muted)!important;
  font-size:clamp(16px,1.45vw,19px)!important;
  line-height:1.6!important;
}
.csmk-ge-intro-cover{
  display:block;
  width:100%;
  margin:30px 0 0!important;
  padding:0!important;
  overflow:hidden;
  border-radius:16px;
  background:#edf3f7;
  box-shadow:none!important;
}
.csmk-ge-intro-cover img{
  display:block;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  margin:0!important;
  border-radius:0!important;
  object-fit:cover;
  object-position:center;
}
.csmk-ge-intro-cover.is-placeholder{height:300px;background:linear-gradient(135deg,#f3e5cf 0%,#f6eddc 36%,#d9edf3 100%);position:relative}
.csmk-ge-intro-cover.is-placeholder::before,
.csmk-ge-intro-cover.is-placeholder::after,
.csmk-ge-intro-cover.is-placeholder span::before{
  content:"";
  position:absolute;
  border-radius:50%;
  opacity:.8;
}
.csmk-ge-intro-cover.is-placeholder::before{width:110px;height:110px;background:#14344b;left:22%;top:25%}
.csmk-ge-intro-cover.is-placeholder::after{width:160px;height:42px;border-radius:90px;background:#2383a3;left:42%;top:28%;transform:rotate(-28deg)}
.csmk-ge-intro-cover.is-placeholder span::before{width:72px;height:72px;background:#d58158;right:20%;bottom:20%}

/* Boubli : monocolonne centrale, aucune side-column. */
.csmk-ge-article-intro--boubli_editorial{
  padding:54px 0 40px;
  background:
    radial-gradient(ellipse at -5% 35%,rgba(204,225,241,.34) 0 13%,transparent 14%),
    radial-gradient(ellipse at 104% 48%,rgba(204,225,241,.27) 0 11%,transparent 12%),
    linear-gradient(180deg,#f7fbff 0%,#fff 72%);
  border-bottom:1px solid #eef3f6;
}
.csmk-ge-article-intro--boubli_editorial .csmk-ge-intro-inner{width:min(820px,calc(100% - 48px))}
.csmk-ge-article-intro--boubli_editorial .csmk-ge-intro-cover{aspect-ratio:16/7.1}
.csmk-ge-article-intro--boubli_editorial.csmk-ge-article-intro--variant-compact{padding:38px 0 30px}
.csmk-ge-article-intro--boubli_editorial.csmk-ge-article-intro--variant-compact .csmk-ge-article-title{font-size:clamp(31px,3.7vw,50px)!important}
.csmk-ge-article-intro--boubli_editorial.csmk-ge-article-intro--variant-compact .csmk-ge-intro-cover{margin-top:22px!important}

/* Overlay : dérivé des projets Maud/Cabinet, mais encapsulé comme composant. */
.csmk-ge-article-intro--photo_overlay{padding:34px 0 32px;background:#f7f8f9}
.csmk-ge-article-intro--photo_overlay .csmk-ge-intro-inner{position:relative;width:min(980px,calc(100% - 48px))}
.csmk-ge-article-intro--photo_overlay .csmk-ge-intro-cover{margin:0!important;aspect-ratio:16/7.4;border-radius:18px;position:relative}
.csmk-ge-article-intro--photo_overlay .csmk-ge-intro-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,18,29,.72) 0%,rgba(7,18,29,.42) 48%,rgba(7,18,29,.05) 78%);pointer-events:none}
.csmk-ge-article-intro--photo_overlay .csmk-ge-intro-overlay-copy{position:absolute;z-index:2;left:clamp(28px,5vw,70px);right:32%;bottom:clamp(28px,6vw,74px)}
.csmk-ge-article-intro--photo_overlay .csmk-ge-intro-kicker{background:rgba(255,255,255,.16);color:#fff}
.csmk-ge-article-intro--photo_overlay .csmk-ge-article-title{color:#fff!important;font-size:clamp(34px,5vw,64px)!important;text-shadow:0 2px 16px rgba(0,0,0,.28)!important}
.csmk-ge-article-intro--photo_overlay.csmk-ge-article-intro--variant-center_left .csmk-ge-intro-overlay-copy{top:50%;bottom:auto;transform:translateY(-50%)}

/* Titre + cover universel. */
.csmk-ge-article-intro--title_cover{padding:48px 0 36px;background:#fff}
.csmk-ge-article-intro--title_cover .csmk-ge-intro-inner{width:min(900px,calc(100% - 48px))}
.csmk-ge-article-intro--title_cover .csmk-ge-intro-cover{aspect-ratio:16/8}
.csmk-ge-article-intro--title_cover.csmk-ge-article-intro--variant-wide .csmk-ge-intro-inner{width:min(1080px,calc(100% - 48px))}
.csmk-ge-article-intro--title_cover.csmk-ge-article-intro--variant-wide .csmk-ge-intro-copy{max-width:800px;margin-left:auto;margin-right:auto}

/* Minimal texte. */
.csmk-ge-article-intro--text_only{padding:56px 0 42px;background:#fff}
.csmk-ge-article-intro--text_only .csmk-ge-intro-inner{width:min(760px,calc(100% - 48px))}

@media(max-width:760px){
  .csmk-ge-header-inner{width:min(100% - 28px,1180px);min-height:64px;gap:12px}
  .csmk-ge-logo{width:34px!important;height:34px!important;max-width:34px!important}
  .csmk-ge-brand-name{font-size:17px}
  .csmk-ge-brand-subtitle{font-size:9px;max-width:190px;overflow:hidden;text-overflow:ellipsis}
  .csmk-ge-brand-meta,.csmk-ge-main-link{display:none!important}
  .csmk-ge-header-actions{gap:8px}
  .csmk-ge-cta{min-height:36px;padding:0 12px;font-size:11px}
  .csmk-ge-site-header--maud_centered .csmk-ge-header-inner{min-height:86px;padding:10px 0}
  .csmk-ge-site-header--cabinet_identity .csmk-ge-header-inner{min-height:74px}
  .csmk-ge-site-header--cabinet_identity .csmk-ge-brand-name{font-size:20px}

  .csmk-ge-intro-inner,
  .csmk-ge-article-intro--boubli_editorial .csmk-ge-intro-inner,
  .csmk-ge-article-intro--photo_overlay .csmk-ge-intro-inner,
  .csmk-ge-article-intro--title_cover .csmk-ge-intro-inner,
  .csmk-ge-article-intro--text_only .csmk-ge-intro-inner{width:min(100% - 30px,900px)}
  .csmk-ge-article-intro--boubli_editorial{padding:34px 0 26px}
  .csmk-ge-article-title{font-size:clamp(30px,8.5vw,44px)!important;line-height:1.08!important}
  .csmk-ge-article-lead{font-size:16px!important;line-height:1.55!important}
  .csmk-ge-intro-cover{border-radius:12px}
  .csmk-ge-article-intro--boubli_editorial .csmk-ge-intro-cover{aspect-ratio:4/2.15}
  .csmk-ge-article-intro--photo_overlay .csmk-ge-intro-cover{aspect-ratio:4/3}
  .csmk-ge-article-intro--photo_overlay .csmk-ge-intro-overlay-copy{left:24px;right:20px;bottom:24px}
  .csmk-ge-article-intro--photo_overlay .csmk-ge-article-title{font-size:clamp(30px,9vw,44px)!important}
}

@media(max-width:520px){
  .csmk-ge-cta .csmk-ge-cta-label{max-width:100px;overflow:hidden;text-overflow:ellipsis}
  .csmk-ge-site-header--maud_centered .csmk-ge-header-actions{display:none}
  .csmk-ge-intro-kicker{margin-bottom:12px}
  .csmk-ge-intro-cover{margin-top:22px!important}
}


/* =========================================================
 * COVER INDÉPENDANTE — STEP 3.1
 * =======================================================*/
.csmk-ge-cover{width:100%;margin:0;padding:18px 0 32px;background:#fff;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.csmk-ge-cover-inner{width:min(820px,calc(100% - 48px));margin:0 auto}
.csmk-ge-cover-media{display:block;width:100%;margin:0!important;padding:0!important;overflow:hidden;border-radius:16px;background:#edf3f7;box-shadow:none!important;aspect-ratio:16/7.1}
.csmk-ge-cover-media img{display:block;width:100%!important;max-width:none!important;height:100%!important;margin:0!important;border-radius:0!important;object-fit:cover;object-position:center}
.csmk-ge-cover-media.is-placeholder{position:relative;background:linear-gradient(135deg,#f3e5cf 0%,#f6eddc 36%,#d9edf3 100%)}
.csmk-ge-cover-media.is-placeholder::before,.csmk-ge-cover-media.is-placeholder::after,.csmk-ge-cover-media.is-placeholder span::before{content:"";position:absolute;border-radius:50%;opacity:.8}
.csmk-ge-cover-media.is-placeholder::before{width:110px;height:110px;background:#14344b;left:22%;top:25%}
.csmk-ge-cover-media.is-placeholder::after{width:160px;height:42px;border-radius:90px;background:#2383a3;left:42%;top:28%;transform:rotate(-28deg)}
.csmk-ge-cover-media.is-placeholder span::before{width:72px;height:72px;background:#d58158;right:20%;bottom:20%}
.csmk-ge-cover--variant-wide .csmk-ge-cover-inner{width:min(980px,calc(100% - 48px))}
.csmk-ge-cover--variant-wide .csmk-ge-cover-media{aspect-ratio:16/7.4}
.csmk-ge-cover--variant-square_soft .csmk-ge-cover-inner{width:min(760px,calc(100% - 48px))}
.csmk-ge-cover--variant-square_soft .csmk-ge-cover-media{aspect-ratio:16/9;border-radius:22px;box-shadow:0 10px 30px rgba(24,63,95,.08)!important}
@media(max-width:640px){.csmk-ge-cover{padding:12px 0 24px}.csmk-ge-cover-inner{width:min(100% - 30px,820px)}.csmk-ge-cover-media{aspect-ratio:4/2.15;border-radius:12px}}

/* =========================================================
 * AUTHOR / ARTICLE META — STEP 3
 * =======================================================*/
.csmk-ge-author,.csmk-ge-author *,.csmk-ge-toc,.csmk-ge-toc *{box-sizing:border-box}
.csmk-ge-author{width:100%;margin:0;background:#fff;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.csmk-ge-author-inner{width:min(820px,calc(100% - 48px));margin:0 auto;display:flex;align-items:center;gap:14px;padding:18px 0;border-bottom:1px solid #e8eef3}
.csmk-ge-author-avatar{width:48px!important;height:48px!important;max-width:48px!important;flex:0 0 48px;border-radius:50%!important;object-fit:cover!important;margin:0!important;box-shadow:none!important}
.csmk-ge-author-avatar--fallback{display:grid;place-items:center;background:#dbe7ef;color:#6f8798;font-size:12px}
.csmk-ge-author-meta{min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 7px;color:#536a7a}
.csmk-ge-author-name{font-family:Georgia,"Times New Roman",serif;font-size:15px;color:#183f5f}
.csmk-ge-author-title{font-size:11px;color:#6b7d8d}
.csmk-ge-author-facts{flex-basis:100%;display:flex;gap:16px;flex-wrap:wrap;margin-top:3px;font-size:10px;color:#7b8995}
.csmk-ge-author-bio{margin:0 0 0 auto!important;max-width:330px;color:#687887!important;font-size:11px!important;line-height:1.45!important;font-style:italic}
.csmk-ge-author--boubli_inline.csmk-ge-author--variant-compact .csmk-ge-author-inner{padding:12px 0}.csmk-ge-author--boubli_inline.csmk-ge-author--variant-compact .csmk-ge-author-avatar{width:40px!important;height:40px!important;max-width:40px!important;flex-basis:40px}
/* Boubli — 3 widgets inline, conforme à la maquette validée */
.csmk-ge-author--boubli_inline:not(.csmk-ge-author--variant-stacked) .csmk-ge-author-inline-widgets{
  display:grid;
  grid-template-columns:minmax(240px,1fr) max-content max-content;
  align-items:center;
  column-gap:30px;
  row-gap:10px;
  padding:16px 0 18px;
  border-bottom:0;
}
.csmk-ge-author--boubli_inline:not(.csmk-ge-author--variant-stacked) .csmk-ge-author-widget{
  min-width:0;
  display:flex;
  align-items:center;
  gap:9px;
  color:#536a7a;
  font-size:11px;
  line-height:1.35;
  white-space:nowrap;
}
.csmk-ge-author--boubli_inline:not(.csmk-ge-author--variant-stacked) .csmk-ge-author-widget--identity{
  white-space:normal;
  gap:10px;
}
.csmk-ge-author--boubli_inline:not(.csmk-ge-author--variant-stacked) .csmk-ge-author-widget-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:1px;
}
.csmk-ge-author--boubli_inline:not(.csmk-ge-author--variant-stacked) .csmk-ge-author-name{
  display:block;
  font-size:13px;
  line-height:1.15;
}
.csmk-ge-author--boubli_inline:not(.csmk-ge-author--variant-stacked) .csmk-ge-author-title{
  display:block;
  flex-basis:auto;
  font-size:10px;
  line-height:1.25;
  color:#708496;
}
.csmk-ge-author--boubli_inline:not(.csmk-ge-author--variant-stacked) .csmk-ge-author-avatar{
  width:38px!important;
  height:38px!important;
  max-width:38px!important;
  flex:0 0 38px;
}
.csmk-ge-author--boubli_inline:not(.csmk-ge-author--variant-stacked) .csmk-ge-author-widget-icon{
  width:19px;
  height:19px;
  flex:0 0 19px;
  display:grid;
  place-items:center;
  color:#4a78a0;
}
.csmk-ge-author--boubli_inline:not(.csmk-ge-author--variant-stacked) .csmk-ge-author-widget-icon svg{
  display:block;
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.csmk-ge-author--boubli_inline:not(.csmk-ge-author--variant-stacked) .csmk-ge-author-widget-value{
  color:#5d7385;
}
.csmk-ge-author--boubli_inline:not(.csmk-ge-author--variant-stacked) .csmk-ge-author-widget-label{
  color:#5d7385;
}
.csmk-ge-author--boubli_inline.csmk-ge-author--variant-compact .csmk-ge-author-inline-widgets{
  grid-template-columns:minmax(210px,1fr) max-content max-content;
  column-gap:22px;
  padding:11px 0 13px;
}
.csmk-ge-author--boubli_inline.csmk-ge-author--variant-compact .csmk-ge-author-avatar{
  width:32px!important;
  height:32px!important;
  max-width:32px!important;
  flex-basis:32px;
}
.csmk-ge-author--boubli_inline.csmk-ge-author--variant-compact .csmk-ge-author-widget{
  font-size:10px;
}
.csmk-ge-author--boubli_inline.csmk-ge-author--variant-stacked .csmk-ge-author-inner{
  display:flex;
}
@media(max-width:760px){
  .csmk-ge-author--boubli_inline:not(.csmk-ge-author--variant-stacked) .csmk-ge-author-inline-widgets{
    grid-template-columns:1fr 1fr;
    column-gap:18px;
    row-gap:10px;
    align-items:center;
  }
  .csmk-ge-author--boubli_inline:not(.csmk-ge-author--variant-stacked) .csmk-ge-author-widget--identity{
    grid-column:1 / -1;
  }
}
@media(max-width:520px){
  .csmk-ge-author--boubli_inline:not(.csmk-ge-author--variant-stacked) .csmk-ge-author-inline-widgets{
    grid-template-columns:1fr;
    gap:9px;
  }
  .csmk-ge-author--boubli_inline:not(.csmk-ge-author--variant-stacked) .csmk-ge-author-widget--identity{
    grid-column:auto;
  }
  .csmk-ge-author--boubli_inline:not(.csmk-ge-author--variant-stacked) .csmk-ge-author-widget{
    white-space:normal;
  }
}
.csmk-ge-author--profile_card{padding:18px 0}.csmk-ge-author--profile_card .csmk-ge-author-inner{padding:16px 18px;border:1px solid #e1e9ef;border-radius:12px;box-shadow:0 4px 16px rgba(24,63,95,.05)}
.csmk-ge-author--profile_card.csmk-ge-author--variant-bordered .csmk-ge-author-inner{box-shadow:none;border-left:4px solid #9dbed5}
.csmk-ge-author--minimal_meta .csmk-ge-author-inner{padding:12px 0}.csmk-ge-author--minimal_meta .csmk-ge-author-title{font-size:10px}

/* Filets de sécurité : les anciens propriétaires disparaissent uniquement si le nouveau slot est actif. */
body.csmk-ge-author-active .sco-author-bar,
body.csmk-ge-author-active > .coconsem-meta-box,
body.csmk-ge-author-active .coconsem-meta-box{display:none!important}

/* =========================================================
 * INDEX / TOC — STEP 3
 * =======================================================*/
.csmk-ge-toc{width:100%;margin:0;padding:0 0 34px;background:#fff;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.csmk-ge-toc-inner{width:min(820px,calc(100% - 48px));margin:0 auto;padding:20px 0 0}
.csmk-ge-toc-title{font-family:Georgia,"Times New Roman",serif;font-size:18px;font-weight:600;color:#164f7a;margin:0 0 12px}
.csmk-ge-toc-list{list-style:none!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;display:grid;gap:0}
.csmk-ge-toc-item{position:relative!important;margin:0!important;padding:9px 0!important;border-bottom:1px solid #edf1f4;display:flex;align-items:flex-start;gap:10px}
.csmk-ge-toc-item::before{display:none!important;content:none!important}
.csmk-ge-toc-item:last-child{border-bottom:0}
.csmk-ge-toc-item a{color:#42657e!important;text-decoration:none!important;border:0!important;font-size:13px;line-height:1.35}
.csmk-ge-toc-item a:hover{color:#164f7a!important}
.csmk-ge-toc-item--h3{padding-left:18px!important}.csmk-ge-toc-item--h3 a{font-size:12px;color:#6f8190!important}
.csmk-ge-toc--simple_index.csmk-ge-toc--variant-compact .csmk-ge-toc-inner{padding-top:12px}.csmk-ge-toc--simple_index.csmk-ge-toc--variant-compact .csmk-ge-toc-item{padding:6px 0!important}
.csmk-ge-toc--numbered_index .csmk-ge-toc-item{padding:10px 0!important}.csmk-ge-toc-num{min-width:28px;font:600 11px/1.4 Georgia,serif;color:#7aa0ba}
.csmk-ge-toc--soft_panel .csmk-ge-toc-inner{margin-top:10px;padding:18px 20px;background:#f5f9fc;border:1px solid #e1ebf2;border-radius:12px}.csmk-ge-toc--soft_panel .csmk-ge-toc-item{border-bottom-color:#e5edf3}
body.csmk-ge-toc-active .lwptoc,body.csmk-ge-toc-active .cocondesigner-toc,body.csmk-ge-toc-active .coconsem-toc{display:none!important}

@media(max-width:760px){
  .csmk-ge-author-inner,.csmk-ge-toc-inner{width:min(100% - 30px,820px)}
  .csmk-ge-author-inner{align-items:flex-start}.csmk-ge-author-bio{display:none}
  .csmk-ge-author-title{flex-basis:100%}.csmk-ge-author-facts{gap:10px}
  .csmk-ge-toc{padding-bottom:24px}.csmk-ge-toc-title{font-size:17px}.csmk-ge-toc-item a{font-size:12px}
}

/* =========================================================
 * PAGE CANVAS OWNERSHIP — STEP 3.4
 * En mode Nouveau site, le Graphic Engine possède le shell de page.
 * Le thème / Customizer ne peut plus imposer un container « blog narrow »
 * qui clippe les Surfaces ou le backdrop. Le contenu reste, lui, lisible
 * dans une largeur éditoriale indépendante.
 * =======================================================*/
body.csmk-graphic-engine-active.csmk-ge-layout-owned{
  --csmk-ge-reading-width:820px;
  --csmk-ge-shell-half:460px;
  --csmk-ge-page-inline:48px;
  overflow-x:hidden;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned #page.site,
body.csmk-graphic-engine-active.csmk-ge-layout-owned #page.grid-container,
body.csmk-graphic-engine-active.csmk-ge-layout-owned .site.grid-container,
body.csmk-graphic-engine-active.csmk-ge-layout-owned #content.site-content,
body.csmk-graphic-engine-active.csmk-ge-layout-owned #primary.content-area,
body.csmk-graphic-engine-active.csmk-ge-layout-owned main#main.site-main,
body.csmk-graphic-engine-active.csmk-ge-layout-owned article.hentry,
body.csmk-graphic-engine-active.csmk-ge-layout-owned article.type-page,
body.csmk-graphic-engine-active.csmk-ge-layout-owned .inside-article{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  float:none!important;
  box-sizing:border-box!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned #page.site{
  position:relative;
  isolation:isolate;
  min-height:100vh;
  margin:0!important;
  padding:0!important;
  background:#fff!important;
  overflow:visible!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned #content.site-content{
  display:block!important;
  padding:0!important;
  background:transparent!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned #primary.content-area,
body.csmk-graphic-engine-active.csmk-ge-layout-owned main#main.site-main,
body.csmk-graphic-engine-active.csmk-ge-layout-owned article.hentry,
body.csmk-graphic-engine-active.csmk-ge-layout-owned article.type-page,
body.csmk-graphic-engine-active.csmk-ge-layout-owned .inside-article{
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned #right-sidebar,
body.csmk-graphic-engine-active.csmk-ge-layout-owned #left-sidebar,
body.csmk-graphic-engine-active.csmk-ge-layout-owned .widget-area.sidebar{
  display:none!important;
}
/* Le texte n'hérite plus de la largeur du Customizer : sa largeur de lecture est pilotée ici. */
body.csmk-graphic-engine-active.csmk-ge-layout-owned .entry-content{
  position:relative;
  z-index:1;
  width:min(var(--csmk-ge-reading-width),calc(100% - var(--csmk-ge-page-inline)))!important;
  max-width:var(--csmk-ge-reading-width)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:0 0 84px!important;
  background:transparent!important;
  box-sizing:border-box!important;
}
/* Backdrop Boubli : rail éditorial blanc au centre + décor latéral qui continue sur toute la hauteur. */
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft #page.site::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-image:
    radial-gradient(ellipse 320px 178px at -82px 178px,rgba(202,225,242,.52) 0 56%,transparent 57%),
    radial-gradient(ellipse 355px 184px at calc(100% + 96px) 365px,rgba(206,228,244,.43) 0 56%,transparent 57%),
    linear-gradient(to right,
      #f4f9fd 0,
      #f7fbfe calc(50% - var(--csmk-ge-shell-half)),
      #fff calc(50% - var(--csmk-ge-shell-half)),
      #fff calc(50% + var(--csmk-ge-shell-half)),
      #f7fbfe calc(50% + var(--csmk-ge-shell-half)),
      #f4f9fd 100%);
  background-size:100% 780px,100% 900px,100% 100%;
  background-position:0 40px,0 250px,0 0;
  background-repeat:repeat-y,repeat-y,no-repeat;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-soft_gray #page.site::before,
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-white #page.site::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-soft_gray #page.site::before{background:#f7f8fa}
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-white #page.site::before{background:#fff}
body.csmk-graphic-engine-active.csmk-ge-layout-owned #page.site>*{position:relative;z-index:1}
/* Une Surface doit toujours pouvoir sortir de la largeur de lecture, même si un thème conserve un wrapper interne. */
body.csmk-graphic-engine-active.csmk-ge-layout-owned .csmk-ge-surface{
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
}
@media(max-width:980px){
  body.csmk-graphic-engine-active.csmk-ge-layout-owned{--csmk-ge-shell-half:50vw}
  body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft #page.site::before{
    background-image:linear-gradient(180deg,#f8fbfe 0%,#fff 100%);
    background-size:100% 100%;
    background-position:0 0;
    background-repeat:no-repeat;
  }
}
@media(max-width:760px){
  body.csmk-graphic-engine-active.csmk-ge-layout-owned{--csmk-ge-page-inline:30px}
  body.csmk-graphic-engine-active.csmk-ge-layout-owned .entry-content{padding-top:32px!important;padding-bottom:58px!important}
}

/* =========================================================
 * SECTIONS / SURFACES — STEP 3.3
 * Un fond appartient à une Section full-width, jamais à un bloc.
 * Les blocs gardent leurs propres largeurs éditoriales internes.
 * =======================================================*/
.csmk-ge-surface{
  position:relative;
  width:100vw;
  max-width:none;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  overflow:hidden;
  isolation:isolate;
}
.csmk-ge-surface>*{position:relative;z-index:1}
.csmk-ge-surface>.csmk-ge-article-intro,
.csmk-ge-surface>.csmk-ge-cover,
.csmk-ge-surface>.csmk-ge-author,
.csmk-ge-surface>.csmk-ge-toc{
  background:transparent!important;
}
.csmk-ge-surface>.csmk-ge-article-intro--boubli_editorial{
  background:transparent!important;
  border-bottom-color:transparent!important;
}
.csmk-ge-surface--boubli_soft{
  background:
    radial-gradient(ellipse 360px 190px at -70px 20%,rgba(202,225,242,.55) 0 56%,transparent 57%),
    radial-gradient(ellipse 420px 210px at calc(100% + 85px) 31%,rgba(206,228,244,.43) 0 56%,transparent 57%),
    linear-gradient(180deg,#f4faff 0%,#fbfdff 78%,#fff 100%);
}
.csmk-ge-surface--boubli_soft::before,
.csmk-ge-surface--boubli_soft::after{
  content:"";
  position:absolute;
  z-index:0;
  pointer-events:none;
  background:rgba(215,233,246,.42);
  border-radius:52% 48% 58% 42% / 44% 54% 46% 56%;
}
.csmk-ge-surface--boubli_soft::before{width:360px;height:150px;left:-145px;top:210px;transform:rotate(-18deg)}
.csmk-ge-surface--boubli_soft::after{width:340px;height:140px;right:-150px;top:115px;transform:rotate(16deg)}
.csmk-ge-surface--white{background:#fff}
.csmk-ge-surface--soft_gray{background:#f7f8fa}

/* Dans une Surface le rythme est commun : éviter les ruptures de fond entre blocs. */
.csmk-ge-surface>.csmk-ge-cover{padding-top:8px}
.csmk-ge-surface>.csmk-ge-author .csmk-ge-author-inner{border-bottom-color:rgba(22,79,122,.10)}

@media(max-width:760px){
  .csmk-ge-surface--boubli_soft::before{left:-230px;top:170px}
  .csmk-ge-surface--boubli_soft::after{right:-235px;top:85px}
}


/* 1.5.56 — STEP 3.7 CONTINUOUS PAGE BACKDROP */

/* STEP 3.7 — CONTINUOUS PAGE BACKDROP
 * Le fond Boubli appartient au canvas global : aucun "rail papier" blanc au centre.
 * Le header Boubli laisse également transparaître ce fond global.
 */
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft{
  background-color:#f7fbfe!important;
  background-image:
    radial-gradient(ellipse 320px 178px at -82px 178px,rgba(202,225,242,.52) 0 56%,transparent 57%),
    radial-gradient(ellipse 355px 184px at calc(100% + 96px) 365px,rgba(206,228,244,.43) 0 56%,transparent 57%),
    linear-gradient(180deg,#f7fbfe 0%,#fbfdff 42%,#ffffff 68%,#f8fbfe 100%)!important;
  background-size:100% 780px,100% 900px,100% 100%!important;
  background-position:0 40px,0 250px,0 0!important;
  background-repeat:repeat-y,repeat-y,no-repeat!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft .csmk-ge-site-header--boubli_compact{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  border-bottom-color:rgba(18,79,120,.10)!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft .csmk-ge-site-header--boubli_compact::before,
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft .csmk-ge-site-header--boubli_compact::after{
  content:none!important;
  display:none!important;
  background:none!important;
}
/* Les wrappers détenus par le moteur ne repeignent jamais un papier blanc au-dessus du canvas. */
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft #csmk-ge-document,
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft .csmk-ge-owned-main,
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft .csmk-ge-owned-article,
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft .csmk-ge-owned-inside,
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft .csmk-ge-owned-entry{
  background-color:transparent!important;
  background-image:none!important;
}



/* 1.5.58 — STEP 3.9 COMPATIBILITY SKIN + VARIABLE BACKDROP */

/* =========================================================
 * STEP 3.9 — THEME COMPATIBILITY SKIN + VARIABLE BACKDROP
 * Le moteur possède la géométrie, mais ne détruit plus les actifs visuels
 * du thème (fonts/footer). Le décor Boubli est global et non périodique à
 * l'échelle d'une page : plusieurs couches ont des phases/périodes distinctes.
 * =======================================================*/
body.csmk-graphic-engine-active.csmk-ge-layout-owned #csmk-ge-root,
body.csmk-graphic-engine-active.csmk-ge-layout-owned .csmk-ge-canvas,
body.csmk-graphic-engine-active.csmk-ge-layout-owned .csmk-ge-document-article,
body.csmk-graphic-engine-active.csmk-ge-layout-owned .csmk-ge-content-inner{
  font-family:"Montserrat",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned .csmk-ge-content-inner{
  font-size:16px;
  line-height:1.68;
  color:#24384a;
}
/* La Surface Boubli ne repeint plus ses propres formes : une seule source de vérité,
   le backdrop global de page. Cela évite les motifs doublés entre Sections. */
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft .csmk-ge-surface--boubli_soft{
  background:transparent!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft .csmk-ge-surface--boubli_soft::before,
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft .csmk-ge-surface--boubli_soft::after{
  content:none!important;
  display:none!important;
}
/* Scatter asymétrique : les répétitions ont des périodes différentes, donc aucun "papier peint"
   régulier visible comme avec les anciens 780/900 px. */
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft{
  background-color:#f8fbfe!important;
  background-image:
    radial-gradient(ellipse 300px 164px at -92px 170px,rgba(202,225,242,.50) 0 56%,transparent 57%),
    radial-gradient(ellipse 392px 208px at calc(100% + 126px) 470px,rgba(206,228,244,.40) 0 56%,transparent 57%),
    radial-gradient(ellipse 348px 176px at -122px 1280px,rgba(211,231,245,.34) 0 56%,transparent 57%),
    radial-gradient(ellipse 272px 148px at calc(100% + 72px) 1760px,rgba(198,223,241,.34) 0 56%,transparent 57%),
    radial-gradient(ellipse 438px 214px at -176px 2660px,rgba(210,230,244,.30) 0 56%,transparent 57%),
    radial-gradient(ellipse 328px 166px at calc(100% + 118px) 3380px,rgba(199,224,242,.32) 0 56%,transparent 57%),
    linear-gradient(180deg,#f7fbfe 0%,#fbfdff 30%,#ffffff 58%,#f9fcfe 100%)!important;
  background-size:
    100% 4210px,
    100% 4870px,
    100% 5470px,
    100% 6130px,
    100% 6830px,
    100% 7510px,
    100% 100%!important;
  background-position:
    0 0,
    0 0,
    0 0,
    0 0,
    0 0,
    0 0,
    0 0!important;
  background-repeat:repeat-y,repeat-y,repeat-y,repeat-y,repeat-y,repeat-y,no-repeat!important;
}
@media(max-width:980px){
  body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft{
    background-image:
      radial-gradient(ellipse 230px 125px at -92px 180px,rgba(202,225,242,.38) 0 56%,transparent 57%),
      radial-gradient(ellipse 250px 132px at calc(100% + 96px) 620px,rgba(206,228,244,.31) 0 56%,transparent 57%),
      linear-gradient(180deg,#f8fbfe 0%,#fff 100%)!important;
    background-size:100% 3100px,100% 3700px,100% 100%!important;
    background-position:0 0,0 0,0 0!important;
    background-repeat:repeat-y,repeat-y,no-repeat!important;
  }
}


/* =========================================================
 * 1.5.59 — STEP 4.1 BOUBLI POLISH + EDITORIAL QUOTE
 * Palette et décor rapprochés de la maquette validée.
 * Les formes sont un scatter stable : aucune répétition périodique.
 * =======================================================*/
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft{
  --csmk-boubli-bg:#f5fafe;
  --csmk-boubli-blob:rgba(207,229,246,.52);
  --csmk-boubli-blob-soft:rgba(219,236,249,.38);
  --csmk-boubli-title:#174f7b;
  --csmk-boubli-text:#445d73;
  --csmk-boubli-muted:#6b8093;
  --csmk-boubli-pill:#e8f3fb;
  --csmk-boubli-quote-bg:rgba(227,241,252,.88);
  --csmk-boubli-quote-ink:#315d82;
  background-color:var(--csmk-boubli-bg)!important;
  background-image:
    radial-gradient(ellipse 430px 245px at -150px 7%, rgba(205,228,246,.58) 0 55%, transparent 56%),
    radial-gradient(ellipse 330px 175px at 7% 16%, rgba(218,235,248,.42) 0 54%, transparent 55%),
    radial-gradient(ellipse 470px 235px at calc(100% + 170px) 13%, rgba(205,228,246,.50) 0 55%, transparent 56%),
    radial-gradient(ellipse 310px 160px at calc(100% + 105px) 31%, rgba(216,234,248,.38) 0 54%, transparent 55%),
    radial-gradient(ellipse 390px 205px at -145px 43%, rgba(203,227,245,.43) 0 55%, transparent 56%),
    radial-gradient(ellipse 520px 250px at calc(100% + 195px) 58%, rgba(215,234,248,.34) 0 54%, transparent 55%),
    radial-gradient(ellipse 300px 175px at -95px 71%, rgba(211,231,247,.41) 0 54%, transparent 55%),
    radial-gradient(ellipse 445px 220px at calc(100% + 165px) 79%, rgba(204,227,245,.39) 0 55%, transparent 56%),
    radial-gradient(ellipse 510px 250px at -190px 93%, rgba(215,234,248,.36) 0 54%, transparent 55%),
    linear-gradient(180deg,#f4f9fd 0%,#f8fbfe 34%,#ffffff 63%,#f7fbfe 100%)!important;
  background-size:auto!important;
  background-position:0 0!important;
  background-repeat:no-repeat!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft .csmk-ge-site-header--boubli_compact{
  color:var(--csmk-boubli-text);
  background:transparent!important;
  border-bottom-color:rgba(23,79,123,.09)!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft .csmk-ge-article-intro-title{
  color:var(--csmk-boubli-title)!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft .csmk-ge-intro-kicker{
  background:var(--csmk-boubli-pill)!important;
  color:#23618c!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft .csmk-ge-article-intro-lead,
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft .csmk-ge-author-title,
body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft .csmk-ge-author-widget-value{
  color:var(--csmk-boubli-muted)!important;
}

/* Citation / Hook — composant positionnable. */
.csmk-ge-quote,
.csmk-ge-quote *{box-sizing:border-box}
.csmk-ge-quote{
  width:100%;
  margin:0;
  padding:14px 0 30px;
  background:transparent;
}
.csmk-ge-quote-inner{
  width:min(820px,calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:22px;
  min-height:92px;
  padding:20px 34px;
  border-radius:15px;
  background:var(--csmk-ge-quote-bg,#eef5fb);
  color:var(--csmk-ge-quote-text,#315d82);
}
.csmk-ge-quote-mark{
  align-self:start;
  margin-top:-3px;
  font:700 58px/.82 Georgia,"Times New Roman",serif;
  color:var(--csmk-ge-runtime-quote-accent,var(--csmk-ge-quote-accent,currentColor));
}
.csmk-ge-quote blockquote{margin:0!important;padding:0!important;border:0!important;background:transparent!important}
.csmk-ge-quote-text{
  margin:0!important;
  color:inherit;
  font:italic 19px/1.48 Georgia,"Times New Roman",serif;
  letter-spacing:-.005em;
  text-align:center;
}
.csmk-ge-quote--boubli_quote .csmk-ge-quote-inner{
  background:var(--csmk-ge-runtime-quote-bg,var(--csmk-ge-quote-bg,transparent));
  color:var(--csmk-ge-runtime-quote-text,var(--csmk-ge-quote-text,inherit));
  box-shadow:inset 0 0 0 1px rgba(22,79,122,.025);
}
.csmk-ge-quote--boubli_quote.csmk-ge-quote--variant-compact .csmk-ge-quote-inner{
  min-height:72px;padding:15px 27px;gap:16px;border-radius:12px;
}
.csmk-ge-quote--boubli_quote.csmk-ge-quote--variant-compact .csmk-ge-quote-mark{font-size:46px}
.csmk-ge-quote--boubli_quote.csmk-ge-quote--variant-compact .csmk-ge-quote-text{font-size:17px}
.csmk-ge-quote--editorial_quote .csmk-ge-quote-inner{
  background:color-mix(in srgb,var(--csmk-ge-runtime-quote-bg,var(--csmk-ge-quote-bg,transparent)) 58%,transparent);border-left:3px solid var(--csmk-ge-runtime-quote-accent,var(--csmk-ge-quote-accent,currentColor));border-radius:3px 14px 14px 3px;
}
.csmk-ge-quote--minimal_quote .csmk-ge-quote-inner{background:transparent;color:var(--csmk-ge-quote-text,#315d82);padding-left:10px;padding-right:10px}
.csmk-ge-surface>.csmk-ge-quote{background:transparent!important}

@media(max-width:980px){
  body.csmk-graphic-engine-active.csmk-ge-layout-owned.csmk-ge-page-surface-boubli_soft{
    background-image:
      radial-gradient(ellipse 300px 170px at -125px 7%,rgba(205,228,246,.45) 0 55%,transparent 56%),
      radial-gradient(ellipse 310px 170px at calc(100% + 130px) 21%,rgba(205,228,246,.39) 0 55%,transparent 56%),
      radial-gradient(ellipse 280px 150px at -115px 52%,rgba(216,234,248,.34) 0 54%,transparent 55%),
      radial-gradient(ellipse 320px 170px at calc(100% + 135px) 79%,rgba(207,229,246,.34) 0 55%,transparent 56%),
      linear-gradient(180deg,#f5fafe 0%,#fff 100%)!important;
    background-repeat:no-repeat!important;
  }
}
@media(max-width:640px){
  .csmk-ge-quote-inner{width:min(100% - 28px,820px);grid-template-columns:38px 1fr;gap:10px;padding:16px 18px;min-height:76px}
  .csmk-ge-quote-mark{font-size:46px}
  .csmk-ge-quote-text{font-size:16px;line-height:1.45;text-align:left}
}


/* =========================================================
 * 1.5.72 — Parité éditoriale BO / front en mode Graphic Engine
 * Le moteur graphique possède désormais aussi la peau du contenu :
 * les anciens accents rouges du frontend legacy ne doivent plus gagner.
 * =======================================================*/
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root){
  font-family:var(--csmk-ge-editorial-body-font,inherit)!important;
  color:var(--csmk-ge-editorial-body-color,inherit)!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) h2{
  position:relative!important;
  display:block!important;
  width:auto!important;
  margin:var(--csmk-ge-editorial-h2-margin-top,34px) 0 var(--csmk-ge-editorial-h2-margin-bottom,14px)!important;
  padding:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--csmk-ge-editorial-h2-color,inherit)!important;
  font-family:var(--csmk-ge-editorial-heading-font,inherit)!important;
  font-size:var(--csmk-ge-editorial-h2-size,27px)!important;
  font-weight:var(--csmk-ge-editorial-h2-weight,700)!important;
  line-height:1.24!important;
  letter-spacing:0!important;
  text-transform:none!important;
  box-shadow:none!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned:not(.csmk-ge-h2-numbered) :is(.inside-article .entry-content,.csmk-ge-editorial-root) h2::before,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) h2::after{
  content:none!important;
  display:none!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) h3{
  margin:var(--csmk-ge-editorial-h3-margin-top,26px) 0 var(--csmk-ge-editorial-h3-margin-bottom,10px)!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--csmk-ge-editorial-h3-color,inherit)!important;
  font-family:var(--csmk-ge-editorial-heading-font,inherit)!important;
  font-size:var(--csmk-ge-editorial-h3-size,21px)!important;
  font-weight:var(--csmk-ge-editorial-h3-weight,650)!important;
  line-height:1.3!important;
  letter-spacing:0!important;
  box-shadow:none!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned:not(.csmk-ge-h3-numbered) :is(.inside-article .entry-content,.csmk-ge-editorial-root) h3::before,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) h3::after{
  content:none!important;
  display:none!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) h4,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) h5{
  color:var(--csmk-ge-editorial-h45-color,inherit)!important;
  font-family:var(--csmk-ge-editorial-heading-font,inherit)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

/* Encadrés de synthèse / « En bref » : même famille bleu doux que la preview. */
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .csmk-summary-box,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .csmk-brief-box,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .en-bref,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .cd-keypoints{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  margin:1.6rem 0 2.2rem!important;
  padding:var(--csmk-ge-editorial-summary-padding,18px)!important;
  overflow:visible!important;
  border:1px solid var(--csmk-ge-editorial-summary-border,currentColor)!important;
  border-left:4px solid var(--csmk-ge-editorial-summary-border,currentColor)!important;
  border-radius:var(--csmk-ge-editorial-summary-radius,10px)!important;
  background:var(--csmk-ge-editorial-summary-bg,transparent)!important;
  color:var(--csmk-ge-editorial-body-color,inherit)!important;
  box-shadow:none!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .csmk-summary-box::before,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .csmk-summary-box::after,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .csmk-brief-box::before,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .csmk-brief-box::after,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .en-bref::before,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .en-bref::after,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .cd-keypoints::before,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .cd-keypoints::after{
  content:none!important;
  display:none!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .csmk-summary-box > strong:first-child,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .csmk-brief-box > strong:first-child,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .en-bref > strong:first-child,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .cd-keypoints > strong:first-child{
  display:block!important;
  width:auto!important;
  margin:0 0 .65rem!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--csmk-ge-editorial-summary-title,inherit)!important;
  font-family:var(--csmk-ge-editorial-heading-font,inherit)!important;
  font-size:15px!important;
  line-height:1.35!important;
  font-weight:700!important;
  box-shadow:none!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .cd-keypoints > strong:first-child::before{
  content:none!important;
  display:none!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .csmk-summary-box li,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .csmk-brief-box li,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .en-bref li,
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .cd-keypoints li{
  color:var(--csmk-ge-editorial-body-color,inherit)!important;
  border-color:var(--csmk-ge-editorial-table-border,currentColor)!important;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .cd-keypoints ul li::before{
  background:var(--csmk-ge-editorial-marker,currentColor)!important;
  box-shadow:none!important;
}
@media(max-width:767px){
  body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) h2{font-size:var(--csmk-ge-editorial-h2-size,27px)!important;margin:var(--csmk-ge-editorial-h2-margin-top,34px) 0 var(--csmk-ge-editorial-h2-margin-bottom,14px)!important;}
  body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) h3{font-size:var(--csmk-ge-editorial-h3-size,21px)!important;margin:var(--csmk-ge-editorial-h3-margin-top,26px) 0 var(--csmk-ge-editorial-h3-margin-bottom,10px)!important;}
}


/* 1.5.75 — Quotes secondaires + Summary component */
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .csmk-ge-secondary-quote{
  position:relative;margin:var(--csmk-ge-sq-margin,28px) auto;padding:var(--csmk-ge-sq-pad,18px);max-width:var(--csmk-ge-sq-max,760px);border:0;border-radius:12px;background:var(--csmk-ge-sq-bg,#eef6fd);color:var(--csmk-ge-sq-color,var(--csmk-ge-editorial-h2-color,#174f7b));font-family:var(--csmk-ge-sq-font,Georgia,"Times New Roman",serif);font-size:var(--csmk-ge-sq-size,18px);line-height:1.45;font-style:var(--csmk-ge-sq-italic,italic);text-align:var(--csmk-ge-sq-align,center);box-shadow:none;
}
body.csmk-graphic-engine-active.csmk-ge-layout-owned :is(.inside-article .entry-content,.csmk-ge-editorial-root) .csmk-ge-secondary-quote::before{content:"“";position:absolute;left:14px;top:2px;color:var(--csmk-ge-sq-accent,var(--csmk-ge-editorial-summary-border,#2271b1));font:700 48px/1 Georgia,serif;}


/* 1.5.78 — Index variants + collapse/expand interstyle */
.csmk-ge-toc-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 12px}
.csmk-ge-toc-head .csmk-ge-toc-title{margin:0}
.csmk-ge-toc-toggle{appearance:none;border:1px solid #cfdce6;background:#fff;color:#174f7b;border-radius:999px;padding:5px 10px;display:inline-flex;align-items:center;gap:6px;font:600 12px/1.2 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;cursor:pointer;white-space:nowrap}
.csmk-ge-toc-toggle:hover{background:#f5faff;border-color:#9fc3da}
.csmk-ge-toc-toggle:focus-visible{outline:2px solid #2271b1;outline-offset:2px}
.csmk-ge-toc-toggle-icon{display:inline-block;transition:transform .18s ease}
.csmk-ge-toc.is-collapsed .csmk-ge-toc-toggle-icon{transform:rotate(-90deg)}
.csmk-ge-toc-body[hidden]{display:none!important}
.csmk-ge-toc--numbered_index.csmk-ge-toc--variant-roman .csmk-ge-toc-num{min-width:34px;font-family:Georgia,"Times New Roman",serif;letter-spacing:.02em}
.csmk-ge-toc--numbered_index.csmk-ge-toc--variant-alpha .csmk-ge-toc-num{min-width:30px;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-weight:700}
@media(max-width:600px){.csmk-ge-toc-head{align-items:flex-start}.csmk-ge-toc-toggle{padding:4px 8px;font-size:11px}}

/* 1.5.83 — Summary icon placement parity (front + BO preview) */
body.csmk-graphic-engine-active.csmk-ge-layout-owned .csmk-ge-summary-title-row,
.csmk-ge-preview-editorial .csmk-ge-summary-title-row{display:flex;align-items:center;gap:10px;margin-bottom:.65rem;}
body.csmk-graphic-engine-active.csmk-ge-layout-owned .csmk-ge-summary-icon,
.csmk-ge-preview-editorial .csmk-ge-summary-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:var(--csmk-ge-editorial-summary-icon-size,28px)!important;height:var(--csmk-ge-editorial-summary-icon-size,28px)!important;min-width:var(--csmk-ge-editorial-summary-icon-size,28px)!important;max-width:var(--csmk-ge-editorial-summary-icon-size,28px)!important;flex:0 0 var(--csmk-ge-editorial-summary-icon-size,28px)!important;border-radius:999px;background:color-mix(in srgb,var(--csmk-ge-editorial-summary-icon-color,#2271b1) 12%,white);color:var(--csmk-ge-editorial-summary-icon-color,#2271b1);overflow:hidden!important;box-sizing:border-box!important;}
body.csmk-graphic-engine-active.csmk-ge-layout-owned .csmk-ge-summary-icon svg,
.csmk-ge-preview-editorial .csmk-ge-summary-icon svg{width:70%!important;height:70%!important;max-width:70%!important;max-height:70%!important;display:block!important;}
body.csmk-graphic-engine-active.csmk-ge-layout-owned .csmk-ge-summary-list-row,
.csmk-ge-preview-editorial .csmk-ge-summary-list-row{display:flex!important;align-items:flex-start!important;gap:14px!important;min-width:0!important;width:100%!important;}
body.csmk-graphic-engine-active.csmk-ge-layout-owned .csmk-ge-summary-list-row>ul,
.csmk-ge-preview-editorial .csmk-ge-summary-list-row>ul{flex:1 1 auto!important;min-width:0!important;margin-top:0!important;margin-bottom:0!important;}
body.csmk-graphic-engine-active.csmk-ge-layout-owned [data-csmk-summary-icon-position="bullets_left"] .csmk-ge-summary-list-row>.csmk-ge-summary-icon,
body.csmk-graphic-engine-active.csmk-ge-layout-owned [data-csmk-summary-icon-position="bullets_right"] .csmk-ge-summary-list-row>.csmk-ge-summary-icon,
.csmk-ge-preview-editorial [data-csmk-summary-icon-position="bullets_left"] .csmk-ge-summary-list-row>.csmk-ge-summary-icon,
.csmk-ge-preview-editorial [data-csmk-summary-icon-position="bullets_right"] .csmk-ge-summary-list-row>.csmk-ge-summary-icon{margin-top:2px!important;}


/* 1.5.85 — Summary icon spacing + side-column alignment. */
body.csmk-graphic-engine-active.csmk-ge-layout-owned .csmk-ge-summary-title-row,
.csmk-ge-preview-editorial .csmk-ge-summary-title-row{gap:var(--csmk-ge-editorial-summary-icon-gutter,14px)!important;}
body.csmk-graphic-engine-active.csmk-ge-layout-owned .csmk-ge-summary-icon,
.csmk-ge-preview-editorial .csmk-ge-summary-icon{padding:var(--csmk-ge-editorial-summary-icon-padding,4px)!important;box-sizing:border-box!important;}
body.csmk-graphic-engine-active.csmk-ge-layout-owned .csmk-ge-summary-icon svg,
.csmk-ge-preview-editorial .csmk-ge-summary-icon svg{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;}
body.csmk-graphic-engine-active.csmk-ge-layout-owned [data-csmk-summary-icon-position="bullets_left"],
.csmk-ge-preview-editorial [data-csmk-summary-icon-position="bullets_left"]{display:grid!important;grid-template-columns:var(--csmk-ge-editorial-summary-icon-size,28px) minmax(0,1fr)!important;column-gap:var(--csmk-ge-editorial-summary-icon-gutter,14px)!important;align-items:start!important;}
body.csmk-graphic-engine-active.csmk-ge-layout-owned [data-csmk-summary-icon-position="bullets_right"],
.csmk-ge-preview-editorial [data-csmk-summary-icon-position="bullets_right"]{display:grid!important;grid-template-columns:minmax(0,1fr) var(--csmk-ge-editorial-summary-icon-size,28px)!important;column-gap:var(--csmk-ge-editorial-summary-icon-gutter,14px)!important;align-items:start!important;}
body.csmk-graphic-engine-active.csmk-ge-layout-owned [data-csmk-summary-icon-position="bullets_left"]>.csmk-ge-summary-title-row,
.csmk-ge-preview-editorial [data-csmk-summary-icon-position="bullets_left"]>.csmk-ge-summary-title-row{grid-column:2!important;grid-row:1!important;}
body.csmk-graphic-engine-active.csmk-ge-layout-owned [data-csmk-summary-icon-position="bullets_right"]>.csmk-ge-summary-title-row,
.csmk-ge-preview-editorial [data-csmk-summary-icon-position="bullets_right"]>.csmk-ge-summary-title-row{grid-column:1!important;grid-row:1!important;}
body.csmk-graphic-engine-active.csmk-ge-layout-owned [data-csmk-summary-icon-position^="bullets_"]>.csmk-ge-summary-list-row,
.csmk-ge-preview-editorial [data-csmk-summary-icon-position^="bullets_"]>.csmk-ge-summary-list-row{display:contents!important;}
body.csmk-graphic-engine-active.csmk-ge-layout-owned [data-csmk-summary-icon-position="bullets_left"]>.csmk-ge-summary-list-row>ul,
.csmk-ge-preview-editorial [data-csmk-summary-icon-position="bullets_left"]>.csmk-ge-summary-list-row>ul{grid-column:2!important;grid-row:2!important;}
body.csmk-graphic-engine-active.csmk-ge-layout-owned [data-csmk-summary-icon-position="bullets_right"]>.csmk-ge-summary-list-row>ul,
.csmk-ge-preview-editorial [data-csmk-summary-icon-position="bullets_right"]>.csmk-ge-summary-list-row>ul{grid-column:1!important;grid-row:2!important;}
body.csmk-graphic-engine-active.csmk-ge-layout-owned [data-csmk-summary-icon-position="bullets_left"]>.csmk-ge-summary-list-row>.csmk-ge-summary-icon,
.csmk-ge-preview-editorial [data-csmk-summary-icon-position="bullets_left"]>.csmk-ge-summary-list-row>.csmk-ge-summary-icon{grid-column:1!important;grid-row:1 / span 2!important;align-self:start!important;margin-top:0!important;}
body.csmk-graphic-engine-active.csmk-ge-layout-owned [data-csmk-summary-icon-position="bullets_right"]>.csmk-ge-summary-list-row>.csmk-ge-summary-icon,
.csmk-ge-preview-editorial [data-csmk-summary-icon-position="bullets_right"]>.csmk-ge-summary-list-row>.csmk-ge-summary-icon{grid-column:2!important;grid-row:1 / span 2!important;align-self:start!important;margin-top:0!important;}


/* 1.5.102 — Composants de bas de page internes à la rédaction. */
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links{
  margin:var(--csmk-ge-further-margin-top,24px) 0 0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font-family:var(--csmk-ge-editorial-body-font)!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links>.csmk-ge-further-links-title{
  display:block!important;
  margin:0 0 max(6px,var(--csmk-ge-further-item-gap,8px))!important;
  color:var(--csmk-ge-further-title)!important;
  font-family:var(--csmk-ge-editorial-heading-font)!important;
  font-size:var(--csmk-ge-further-title-size,18px)!important;
  font-weight:600!important;
  line-height:1.3!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links ul{
  list-style:none!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  gap:var(--csmk-ge-further-item-gap,8px)!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links li{margin:0!important;padding:0!important;}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links a{
  color:var(--csmk-ge-further-link)!important;
  font-family:var(--csmk-ge-editorial-body-font)!important;
}

/* Sources : volontairement minimaliste par défaut. */
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources{
  margin:var(--csmk-ge-sources-margin-top,26px) 0 0!important;
  padding:0!important;
  border:0!important;
  border-left:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  font-family:var(--csmk-ge-editorial-body-font)!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources .csmk-ext-sources-title{
  margin:0 0 max(5px,var(--csmk-ge-sources-item-gap,6px))!important;
  color:var(--csmk-ge-sources-title)!important;
  font-family:var(--csmk-ge-editorial-body-font)!important;
  font-size:var(--csmk-ge-sources-title-size,14px)!important;
  font-weight:500!important;
  line-height:1.35!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources .csmk-ext-sources-list{
  list-style:none!important;
  display:grid!important;
  gap:var(--csmk-ge-sources-item-gap,6px)!important;
  margin:0!important;
  padding:0!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources li{
  margin:0!important;
  padding:0!important;
  font-size:var(--csmk-ge-sources-text-size,14px)!important;
  line-height:1.45!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources a{
  color:var(--csmk-ge-sources-link)!important;
  font-family:var(--csmk-ge-editorial-body-font)!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources .csmk-ext-sources-site-label{
  color:var(--csmk-ge-editorial-muted)!important;
}

/* 1.5.104 — Identité native des composants de bas de page. Toute trace legacy est neutralisée. */
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links,
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources{
  box-sizing:border-box!important;
  width:100%!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links li,
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources li{
  position:relative!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  min-height:0!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links li::before,
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources li::before{
  content:none!important;
  display:none!important;
}

/* Pour aller plus loin — Panneau doux : identité principale du template. */
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links--editorial_soft{
  padding:18px 20px!important;
  border:1px solid color-mix(in srgb,var(--csmk-ge-editorial-accent) 22%,transparent)!important;
  border-left:4px solid var(--csmk-ge-editorial-accent)!important;
  border-radius:12px!important;
  background:color-mix(in srgb,var(--csmk-ge-editorial-soft-bg) 92%,white 8%)!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links--editorial_soft li{
  padding:2px 0 2px 22px!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links--editorial_soft li::after{
  content:'→'!important;
  position:absolute!important;
  left:0!important;
  top:1px!important;
  color:var(--csmk-ge-editorial-accent)!important;
  font-weight:700!important;
}

/* Pour aller plus loin — Liens séparés : version plus éditoriale et légère. */
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links--link_rows{
  padding:16px 0 0!important;
  border-top:1px solid var(--csmk-ge-editorial-table-border)!important;
  background:transparent!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links--link_rows ul{gap:0!important;}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links--link_rows li{
  padding:9px 34px 9px 0!important;
  border-bottom:1px solid color-mix(in srgb,var(--csmk-ge-editorial-table-border) 70%,transparent)!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links--link_rows li::after{
  content:'→'!important;
  position:absolute!important;
  right:4px!important;
  top:8px!important;
  color:var(--csmk-ge-editorial-accent)!important;
  font-weight:700!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links--link_rows a{text-decoration:none!important;}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links--link_rows a:hover{text-decoration:underline!important;}

/* Sources — Filet minimal : aucune carte, aucune couleur parasite. */
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources--minimal_rule{
  padding:14px 0 0!important;
  border-top:1px solid var(--csmk-ge-editorial-table-border)!important;
  background:transparent!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources--minimal_rule li{
  padding:1px 0!important;
}

/* Sources — Notes : repères numérotés discrets sur fond très léger. */
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources--footnotes{
  padding:16px 18px!important;
  border:1px solid color-mix(in srgb,var(--csmk-ge-editorial-table-border) 80%,transparent)!important;
  border-radius:10px!important;
  background:color-mix(in srgb,var(--csmk-ge-editorial-soft-bg) 72%,white 28%)!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources--footnotes .csmk-ext-sources-list{
  counter-reset:csmk-source!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources--footnotes li{
  counter-increment:csmk-source!important;
  padding:4px 0 4px 36px!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources--footnotes li::before{
  content:counter(csmk-source,decimal-leading-zero)!important;
  display:block!important;
  position:absolute!important;
  left:0!important;
  top:4px!important;
  color:var(--csmk-ge-editorial-muted)!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.04em!important;
}


/* 1.5.105 — Nettoyage structurel des conteneurs internes des blocs de bas de page.
 * En Nouveau site, les anciennes feuilles pouvaient encore décorer le <ul> lui-même
 * (fond sable / bord gauche), ce qui créait une carte dans la carte. Le Graphic Engine
 * possède désormais entièrement ces deux composants. */
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links > ul,
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links > ul > li,
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources .csmk-ext-sources-list,
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources .csmk-ext-sources-list > li{
  background:transparent!important;
  background-color:transparent!important;
  border:0!important;
  border-left:0!important;
  border-right:0!important;
  border-top:0!important;
  border-bottom:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  outline:0!important;
}
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links > ul{
  width:100%!important;
}
/* Le panneau doux n'a qu'un seul fond : celui du composant parent. */
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links--editorial_soft > ul,
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-further-links--editorial_soft > ul > li{
  background:transparent!important;
  background-color:transparent!important;
}
/* Sources minimal : aucun fond, y compris sur la liste et ses éléments. */
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources--minimal_rule,
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources--minimal_rule .csmk-ext-sources-list,
body.csmk-graphic-engine-active .csmk-ge-editorial-root .csmk-ge-sources--minimal_rule .csmk-ext-sources-list > li{
  background:transparent!important;
  background-color:transparent!important;
  box-shadow:none!important;
}
