:root{--pub-ink:#14171c;--pub-ivory:#f7f6f2;--pub-signal:#951402;--pub-line:rgba(20,23,28,.16);--pub-line-dark:rgba(247,246,242,.14);--pub-muted:rgba(20,23,28,.62);--pub-muted-dark:rgba(247,246,242,.58);--pub-display:"Archivo","Helvetica Neue",Arial,sans-serif;--pub-sans:"Instrument Sans","Helvetica Neue",Arial,sans-serif;--pub-serif:"Instrument Serif",Georgia,serif}
*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;scroll-behavior:smooth;overflow-x:hidden}body{margin:0;background:var(--pub-ink);color:var(--pub-ivory);font-family:var(--pub-sans);font-feature-settings:"ss01","cv01";overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:var(--pub-ivory);color:var(--pub-ink)}
.pub-shell{width:100%;max-width:88rem;margin:auto;padding-inline:1.25rem}@media(min-width:768px){.pub-shell{padding-inline:2.5rem}}@media(min-width:1280px){.pub-shell{padding-inline:4rem}}
.pub-border-t{border-top:1px solid var(--pub-line-dark)}.pub-border-b{border-bottom:1px solid var(--pub-line-dark)}.pub-skip{position:absolute;left:1rem;top:.75rem;z-index:5;padding:.75rem 1rem;background:var(--pub-ivory);color:var(--pub-ink);transform:translateY(-180%);transition:transform 200ms ease}.pub-skip:focus{transform:none}.pub-header .pub-bar{height:4rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}@media(min-width:768px){.pub-header .pub-bar{height:5rem}}.pub-brand{display:flex;align-items:center;gap:.75rem;min-width:0}.pub-mark{display:inline-block;width:1rem;height:1rem;flex:none;border:1.5px solid currentColor;background:linear-gradient(to top right,transparent 49.5%,currentColor 50%)}.pub-brand-name{font:700 .875rem var(--pub-display);letter-spacing:.24em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(min-width:768px){.pub-brand-name{font-size:1rem}}.pub-header nav{display:flex;align-items:center;gap:1.5rem;font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.pub-header nav a{opacity:.9}.pub-hide-sm{display:none}@media(min-width:640px){.pub-hide-sm{display:inline-block}}
.pub-link{position:relative;display:inline-block}.pub-link:after{content:"";position:absolute;left:0;bottom:-2px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform 400ms cubic-bezier(.22,1,.36,1)}.pub-link:hover:after,.pub-link:focus-visible:after{transform:scaleX(1);transform-origin:left}.pub-focus:focus-visible,.pub-category-link:focus-visible,.pub-filter:focus-visible,.pub-read:focus-visible{outline:2px solid var(--pub-signal);outline-offset:5px}
.pub-kicker{font-size:.6875rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--pub-muted-dark)}.pub-kicker--signal{color:var(--pub-signal)}.pub-display-xl{font:700 clamp(3rem,8.2vw,8.5rem)/.92 var(--pub-display);letter-spacing:-.04em}.pub-display-lg{font:700 clamp(2rem,4.6vw,4rem)/.98 var(--pub-display);letter-spacing:-.03em}.pub-display-lg span{display:block}.pub-display-md{font:600 clamp(1.6rem,2.8vw,2.4rem)/1.05 var(--pub-display);letter-spacing:-.025em}.pub-grid{display:grid;gap:2rem}@media(min-width:768px){.pub-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:3rem}}.pub-c3{display:block}@media(min-width:768px){.pub-c3{grid-column:span 3}}.pub-c8{display:block}@media(min-width:768px){.pub-c8{grid-column:span 8}}
.pub-reveal{opacity:0;transform:translateY(18px);transition:opacity 900ms cubic-bezier(.22,1,.36,1),transform 900ms cubic-bezier(.22,1,.36,1)}.pub-reveal.is-in{opacity:1;transform:none}
.pub-hero{padding-top:5rem;padding-bottom:4rem}@media(min-width:768px){.pub-hero{padding-top:7rem;padding-bottom:5rem}}@media(min-width:1280px){.pub-hero{padding-top:9rem;padding-bottom:6rem}}.pub-hero h1{margin:2rem 0 0}.pub-hero .pub-line-signal{color:var(--pub-signal)}.pub-lead{max-width:58ch;margin-top:2.5rem;color:var(--pub-muted-dark);font-size:1rem;line-height:1.7}@media(min-width:768px){.pub-lead{font-size:1.0625rem}}
.pub-section{padding-block:5rem}@media(min-width:768px){.pub-section{padding-block:7rem}}.pub-section-label{font-size:.6875rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--pub-muted-dark)}.pub-light{background:var(--pub-ivory);color:var(--pub-ink)}.pub-light .pub-section-label{color:var(--pub-muted)}.pub-light .pub-border-t{border-color:var(--pub-line)}
.pub-categories{display:grid;border-top:1px solid var(--pub-line-dark);border-bottom:1px solid var(--pub-line-dark);margin-top:3rem}@media(min-width:768px){.pub-categories{grid-template-columns:1fr 1fr}}.pub-category{display:flex;flex-direction:column;justify-content:space-between;min-height:13rem;padding:2rem 1.5rem;transition:background 350ms ease,color 350ms ease}@media(min-width:768px){.pub-category{min-height:16rem;padding:2.5rem}.pub-category:first-child{padding-left:3rem;padding-right:3rem;border-right:1px solid var(--pub-line-dark)}.pub-category:last-child{padding-left:3rem}}.pub-category+.pub-category{border-top:1px solid var(--pub-line-dark)}@media(min-width:768px){.pub-category+.pub-category{border-top:0}}.pub-category:hover{background:var(--pub-ivory);color:var(--pub-ink)}.pub-category-title{font:600 1.35rem/1.15 var(--pub-display);letter-spacing:-.02em}.pub-category-copy{max-width:38ch;margin-top:1.25rem;color:var(--pub-muted-dark);font-size:.9375rem;line-height:1.65}.pub-category:hover .pub-category-copy{color:var(--pub-muted)}.pub-category-link{display:inline-block;margin-top:2rem;font-size:.6875rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.pub-category-link:after{content:"  →";color:var(--pub-signal);font-size:1rem}
.pub-recent{padding-top:3rem}.pub-publication{display:grid;gap:1.5rem;padding-block:2rem;border-bottom:1px solid var(--pub-line-dark);transition:padding-left 300ms ease}@media(min-width:768px){.pub-publication{grid-template-columns:7rem 1fr auto;gap:2rem;align-items:start;padding-block:2.5rem}}.pub-publication:hover{padding-left:.75rem}.pub-publication-meta{color:var(--pub-muted-dark);font-size:.6875rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.pub-publication-category{color:var(--pub-signal);font-size:.6875rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.pub-publication h3{margin:.75rem 0 0;font:600 clamp(1.35rem,2.3vw,2rem)/1.08 var(--pub-display);letter-spacing:-.025em}.pub-publication-deck{max-width:54ch;margin-top:.75rem;color:var(--pub-muted-dark);font-size:.9375rem;line-height:1.65}.pub-read{align-self:end;font-size:.6875rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap}.pub-read:after{content:"  →";color:var(--pub-signal);font-size:1rem}.pub-empty{padding-top:2rem;color:var(--pub-muted-dark);font-size:.9375rem;line-height:1.7}
.pub-breadcrumb{padding-top:2rem;color:var(--pub-muted-dark);font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.pub-breadcrumb ol{display:flex;flex-wrap:wrap;gap:.5rem 1rem;list-style:none;padding:0}.pub-breadcrumb li+li:before{content:"/";margin-right:1rem;color:var(--pub-signal)}.pub-breadcrumb a:hover{text-decoration:underline;text-underline-offset:4px}
.pub-category-hero{padding-top:4rem;padding-bottom:4.5rem}@media(min-width:768px){.pub-category-hero{padding-top:6rem;padding-bottom:6rem}}.pub-category-hero h1{margin-top:1.75rem}.pub-category-hero .pub-lead{margin-top:2rem}.pub-list{padding-top:4rem;padding-bottom:6rem}@media(min-width:768px){.pub-list{padding-top:6rem;padding-bottom:8rem}}.pub-list .pub-publication:first-child{border-top:1px solid var(--pub-line-dark)}
.pub-article-hero{padding-bottom:5rem}@media(min-width:768px){.pub-article-hero{padding-bottom:7rem}}.pub-article-hero h1{max-width:16ch;margin-top:1.75rem}.pub-article-deck{max-width:62ch;margin-top:2.25rem;color:var(--pub-muted-dark);font-size:1.0625rem;line-height:1.7}@media(min-width:768px){.pub-article-deck{font-size:1.125rem}}.pub-article-meta{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;margin-top:2rem;color:var(--pub-muted-dark);font-size:.6875rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.pub-article-meta span+span{position:relative;padding-left:1.5rem}.pub-article-meta span+span:before{content:"";position:absolute;left:0;top:50%;width:.75rem;height:1px;background:var(--pub-signal)}
.pub-reading{background:var(--pub-ivory);color:var(--pub-ink);padding-block:5rem}@media(min-width:768px){.pub-reading{padding-block:7rem}}.pub-reading-grid{display:grid;gap:3rem}@media(min-width:1024px){.pub-reading-grid{grid-template-columns:12rem minmax(0,68ch);justify-content:center;gap:4rem}}.pub-toc{font-size:.6875rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--pub-muted)}@media(min-width:1024px){.pub-toc{position:sticky;top:2rem;align-self:start}}.pub-toc summary{cursor:pointer;color:var(--pub-ink);list-style:none}.pub-toc summary::-webkit-details-marker{display:none}.pub-toc summary:after{content:"+";margin-left:.75rem;color:var(--pub-signal)}.pub-toc[open] summary:after{content:"−"}.pub-toc ol{display:grid;gap:.75rem;list-style:none;margin-top:1rem;padding:0}.pub-toc a{display:block;line-height:1.4}.pub-toc a:hover{text-decoration:underline;text-underline-offset:4px}.pub-article-body{min-width:0;max-width:68ch;font-size:1.0625rem;line-height:1.78}@media(min-width:768px){.pub-article-body{font-size:1.15625rem}}.pub-article-body .pub-chapeau{margin:0 0 3rem;color:var(--pub-ink);font-size:1.25rem;line-height:1.55}@media(min-width:768px){.pub-article-body .pub-chapeau{font-size:1.4rem}}.pub-article-body h2{margin:3.5rem 0 1rem;font:600 clamp(1.85rem,3vw,2.15rem)/1.12 var(--pub-display);letter-spacing:-.025em}.pub-article-body h3{margin:2.5rem 0 .75rem;font:600 clamp(1.3rem,2vw,1.5rem)/1.2 var(--pub-display);letter-spacing:-.015em}.pub-article-body h4{margin:2rem 0 .75rem;font:600 .6875rem/1.3 var(--pub-display);letter-spacing:.18em;text-transform:uppercase}.pub-article-body p{margin:0 0 1.5rem}.pub-article-body ul,.pub-article-body ol{margin:0 0 1.5rem;padding-left:1.4rem}.pub-article-body li+li{margin-top:.5rem}.pub-article-body blockquote{margin:3rem 0;padding:1rem 0 1rem 1.5rem;border-left:1px solid var(--pub-signal);font:1.75rem/1.25 var(--pub-serif);color:var(--pub-signal)}@media(min-width:768px){.pub-article-body blockquote{padding-left:2rem;font-size:2.25rem}}.pub-article-body cite{display:block;margin-top:1rem;font:600 .6875rem/1.4 var(--pub-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--pub-muted)}.pub-key-takeaway,.pub-callout{margin:2.5rem 0;padding:1.5rem;border-top:1px solid var(--pub-ink);border-bottom:1px solid var(--pub-ink)}.pub-key-takeaway h3,.pub-callout h3{margin:0 0 1rem;font:600 .6875rem/1.3 var(--pub-display);letter-spacing:.2em;text-transform:uppercase}.pub-key-takeaway ul,.pub-callout p{margin:0}.pub-figure{margin:3rem 0}.pub-figure img{display:block;width:100%;height:auto}.pub-figure figcaption{margin-top:.75rem;color:var(--pub-muted);font-size:.75rem;line-height:1.55}.pub-table-wrap{width:100%;margin:2.5rem 0;overflow-x:auto}.pub-table{width:100%;min-width:34rem;border-collapse:collapse;font-size:.875rem;line-height:1.5}.pub-table th,.pub-table td{padding:.875rem 1rem;border-bottom:1px solid var(--pub-line);text-align:left;vertical-align:top}.pub-table th{font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase}.pub-sources{margin-top:5rem;padding-top:1.5rem;border-top:1px solid var(--pub-line);font-size:.8125rem;line-height:1.6;color:var(--pub-muted)}.pub-sources h2{margin:0 0 1rem;font:600 .6875rem/1.3 var(--pub-display);letter-spacing:.2em;text-transform:uppercase;color:var(--pub-ink)}.pub-sources ol{margin:0;padding-left:1.25rem}.pub-sources li{padding-left:.5rem;margin-top:.75rem}.pub-sources a{text-decoration:underline;text-underline-offset:3px}.pub-author{display:flex;flex-direction:column;gap:.5rem;margin-top:4rem;padding-top:1.5rem;border-top:1px solid var(--pub-line);font-size:.875rem;line-height:1.5}.pub-author strong{font-weight:600}.pub-author span{color:var(--pub-muted)}.pub-related{background:var(--pub-ink);color:var(--pub-ivory);padding-block:5rem}@media(min-width:768px){.pub-related{padding-block:7rem}}.pub-related .pub-section-label{color:var(--pub-muted-dark)}.pub-related-list{margin-top:2rem;border-top:1px solid var(--pub-line-dark)}.pub-related-item{display:block;padding:1.5rem 0;border-bottom:1px solid var(--pub-line-dark)}.pub-related-item:hover{padding-left:.75rem}.pub-related-item .pub-category-link{margin-top:.75rem}
.pub-cta{padding-block:5rem}@media(min-width:768px){.pub-cta{padding-block:7rem}}.pub-cta-inner{display:flex;flex-direction:column;gap:2rem}@media(min-width:768px){.pub-cta-inner{flex-direction:row;align-items:center;justify-content:space-between;gap:3rem}}.pub-cta h2{max-width:18ch}.pub-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.5rem}.pub-btn{display:inline-flex;align-items:center;justify-content:center;padding:1rem 1.75rem;background:var(--pub-ivory);color:var(--pub-ink);font-size:.8125rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;border:1px solid var(--pub-ivory);transition:background 300ms ease,color 300ms ease}.pub-btn:hover{background:transparent;color:var(--pub-ivory)}.pub-actions .pub-link{font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.pub-doctrine{padding-block:6rem}@media(min-width:768px){.pub-doctrine{padding-block:8rem}}.pub-doctrine .pub-lines{border-left:1px solid var(--pub-line-dark);padding-left:1.5rem}@media(min-width:768px){.pub-doctrine .pub-lines{padding-left:2.5rem}}.pub-doctrine .pub-lines p{font:1.5rem/1.25 var(--pub-serif);color:var(--pub-signal)}@media(min-width:768px){.pub-doctrine .pub-lines p{font-size:2.25rem}}@media(min-width:1280px){.pub-doctrine .pub-lines p{font-size:3rem}}.pub-doctrine .pub-lines p+p{margin-top:1.5rem}@media(min-width:768px){.pub-doctrine .pub-lines p+p{margin-top:2rem}}
.pub-footer .pub-footer-inner{display:flex;flex-direction:column;gap:1rem;padding-block:2.5rem;color:var(--pub-muted-dark);font-size:.75rem}@media(min-width:640px){.pub-footer .pub-footer-inner{flex-direction:row;align-items:center;justify-content:space-between}}.pub-footer-meta{display:flex;flex-wrap:wrap;gap:1.25rem}.pub-noindex-note{max-width:42rem;padding:1rem;border-left:1px solid var(--pub-signal);color:var(--pub-muted-dark);font-size:.8125rem;line-height:1.6}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pub-reveal{opacity:1;transform:none;transition:none}}


/* ==============================================================
   SCALING FORCE — PUBLICATIONS / RECTIFICATIF 2026-10-14
   Périmètre exclusivement éditorial ; aucun style juridique/index
   Principes : texte lisible sans hover, rythme compact, pré-footer,
   doctrine et footer conformes aux références institutionnelles.
   ============================================================== */

/* Préserver les informations visibles en permanence sur fond ivoire. */
.pub-light .pub-categories{border-color:var(--pub-line)}
.pub-light .pub-category:first-child{border-color:var(--pub-line)}
.pub-light .pub-category + .pub-category{border-color:var(--pub-line)}
.pub-light .pub-category{color:var(--pub-ink)}
.pub-light .pub-category .pub-kicker{color:var(--pub-muted)}
.pub-light .pub-category .pub-category-copy{color:var(--pub-muted)}
.pub-light .pub-category:hover,.pub-light .pub-category:focus-visible{color:var(--pub-ink);background:rgba(20,23,28,.035)}
.pub-light .pub-category:hover .pub-category-copy,.pub-light .pub-category:focus-visible .pub-category-copy{color:var(--pub-muted)}
.pub-light .pub-category:focus-visible{outline-offset:6px}
.pub-category-link::after{display:inline-block;transition:transform 260ms ease}
.pub-category:hover .pub-category-link::after,.pub-category:focus-visible .pub-category-link::after{transform:translateX(.25rem)}

/* Les premiers contenus n'existent pas encore : pas de section surdimensionnée. */
.pub-recent{padding-top:0}
.pub-empty{max-width:58ch;padding-top:1.5rem}
.pub-category{min-height:0}
.pub-list{padding-top:3.25rem;padding-bottom:2rem}
.pub-list .pub-empty{padding-top:.75rem}
.pub-list .pub-noindex-note{max-width:58ch}
.pub-category-return{padding-block:1.75rem 3.25rem}
.pub-category-return .pub-link{font-size:.8125rem;letter-spacing:.015em}
.pub-section--recent{padding-block:4rem 5.5rem}
@media(min-width:768px){
  .pub-section--recent{padding-block:4.25rem 6rem}
  .pub-list{padding-top:3.75rem;padding-bottom:2rem}
  .pub-category-return{padding-block:1.5rem 4.25rem}
}

/* CTA éditorial : même équilibre que le CTA validé sur la page d'accueil. */
.pub-cta{padding-block:4rem}
.pub-cta-inner{gap:2rem}
.pub-cta h2{max-width:18ch;margin:0}
.pub-cta .pub-actions{gap:1.5rem}
.pub-cta .pub-btn{white-space:nowrap}
@media(min-width:1024px){
  .pub-cta{padding-block:6rem}
  .pub-cta-inner{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:2.5rem}
  .pub-cta-inner > *{min-width:0}
  .pub-cta h2{max-width:none;white-space:nowrap;font-size:clamp(1.6rem,2.8vw,2.4rem)}
  .pub-cta .pub-actions{flex-wrap:nowrap;justify-content:flex-end}
}
@media(min-width:768px) and (max-width:1023px){
  .pub-cta-inner{flex-direction:column;align-items:flex-start}
}
@media(max-width:639px){
  .pub-cta .pub-actions{align-items:flex-start}
  .pub-cta .pub-btn{white-space:normal;text-align:center}
}

/* Doctrine : typographie et proportions du modèle des pages juridiques. */
.pub-doctrine{padding-block:6rem}
.pub-doctrine .pub-grid{gap:2.5rem}
.pub-doctrine .pub-kicker{color:var(--pub-muted-dark);opacity:.65}
.pub-doctrine .pub-lines{border-left:1px solid var(--pub-line-dark);padding-left:1.5rem}
.pub-doctrine .pub-lines p{font-family:var(--pub-serif);font-size:1.5rem;line-height:1.25;letter-spacing:-.01em;color:var(--pub-signal);margin:0}
.pub-doctrine .pub-lines p + p{margin-top:1.5rem}
@media(min-width:768px){
  .pub-doctrine{padding-block:8rem}
  .pub-doctrine .pub-lines{padding-left:2.5rem}
  .pub-doctrine .pub-lines p{font-size:2.25rem}
  .pub-doctrine .pub-lines p + p{margin-top:2rem}
}
@media(min-width:1280px){.pub-doctrine .pub-lines p{font-size:3rem}}

/* Footer : structure commune, même densité que la référence juridique. */
.pub-footer .pub-footer-inner{gap:1rem;padding-block:2.5rem;font-size:.75rem;line-height:1.5;color:var(--pub-ivory)}
.pub-footer .pub-footer-inner > div,.pub-footer .pub-footer-meta{opacity:.5}
.pub-footer .pub-footer-inner p{margin:0}
.pub-footer .pub-footer-inner > div p + p{margin-top:.25rem}
.pub-footer .pub-footer-meta{display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem}
@media(min-width:640px){.pub-footer .pub-footer-inner{align-items:center}}

/* Lecture : la zone des sources demeure ivoire ; contenus toujours accessibles. */
.pub-reading{background:var(--pub-ivory);color:var(--pub-ink)}
.pub-article-body{font-style:normal}
.pub-article-body p{font-style:normal}
.pub-sources{margin-top:4rem}
.pub-article-body h2,.pub-article-body h3{scroll-margin-top:1.5rem}
.pub-article-body a:not(.pub-focus){text-decoration:underline;text-underline-offset:.2em}
.pub-article-body .pub-author a{color:var(--pub-ink)}
.pub-article-body .pub-author a:hover{color:var(--pub-signal)}
.pub-toc:focus-within{outline-offset:5px}

/* L'accessibilité ne doit pas dépendre de JavaScript ou des animations. */
.pub-reveal{opacity:1;transform:none}
.pub-reveal.is-preparing{opacity:0;transform:translateY(18px)}
.pub-reveal.is-preparing.is-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  .pub-reveal,.pub-reveal.is-preparing{opacity:1;transform:none;transition:none}
  html{scroll-behavior:auto}
}

/* Mobile : masquer réellement LinkedIn, sans écraser le wordmark. */
.pub-header nav .pub-hide-sm{display:none}
@media(min-width:640px){.pub-header nav .pub-hide-sm{display:inline-block}}

/* === DOCTRINE — fidélité structurelle aux pages institutionnelles ===
   Le modèle validé possède un bloc par phrase, SANS espace vertical
   additionnel entre les lignes. On conserve Instrument Serif à l’écran.
   Ce CSS ne s’applique qu’aux publications. */
.pub-doctrine .pub-lines > .pub-doctrine-verse { display:block; margin:0; padding:0; }
.pub-doctrine .pub-lines > .pub-doctrine-verse p {
  display:block; margin:0; padding:0;
  font-family:"Instrument Serif",Georgia,serif;
  font-weight:400; font-style:normal;
  line-height:1.25; letter-spacing:-.01em;
}
.pub-doctrine .pub-lines > .pub-doctrine-verse + .pub-doctrine-verse { margin:0; }

/* Révélation progressive facultative : sans JS et hors viewport, le contenu reste lisible. */
.pub-reveal{opacity:1;transform:none}
.pub-reveal.is-preparing:not(.is-in){opacity:0;transform:translateY(18px)}
@media(prefers-reduced-motion:reduce){
  .pub-reveal,.pub-reveal.is-preparing:not(.is-in){opacity:1;transform:none;transition:none}
}


/* V3 -- explicit final source of truth for editorial finishing elements.
   Matches the legal reference; no inflated space between scripture lines. */
.pub-doctrine .pub-lines { display:flex; flex-direction:column; gap:.32rem; }
.pub-doctrine .pub-lines .pub-doctrine-verse { margin:0!important; padding:0!important; display:block; }
.pub-doctrine .pub-lines .pub-doctrine-verse p {
  margin:0!important; padding:0!important; font:400 1.5rem/1.25 "Instrument Serif",Georgia,serif!important;
  letter-spacing:-.01em!important; color:var(--pub-signal)!important;
}
@media (min-width:768px){.pub-doctrine .pub-lines .pub-doctrine-verse p{font-size:2.25rem!important}}
@media (min-width:1280px){.pub-doctrine .pub-lines .pub-doctrine-verse p{font-size:3rem!important}}
/* Compact empty categories and the editorial action without shrinking the typography. */
.pub-category-hero{padding-bottom:3rem}
.pub-list{padding-block:3rem 1.25rem}
.pub-category-return{padding-block:2rem 3rem}
.pub-cta{padding-block:4.5rem}
.pub-doctrine{padding-block:5.5rem}
@media (min-width:768px){.pub-cta{padding-block:5.5rem}.pub-doctrine{padding-block:6.5rem}}
@media (min-width:1024px){
 .pub-cta-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2rem}
 .pub-cta h2{white-space:nowrap;max-width:none}
}
.pub-light .pub-category .pub-category-copy{opacity:1;visibility:visible;color:rgba(20,23,28,.75)}
.pub-light .pub-category:hover .pub-category-copy,.pub-light .pub-category:focus-visible .pub-category-copy{color:rgba(20,23,28,.85)}
/* Force no content to be inaccessible when animation JS is missing. */
.pub-reveal:not(.is-preparing){opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.pub-doctrine .pub-lines{scroll-behavior:auto}}

/* === ajouts publication d'articles : image d'article, sommaire lisible, sources === */
.pub-article-figure{max-width:calc(16rem + 68ch);margin:0 auto 3rem}
@media(min-width:768px){.pub-article-figure{margin-bottom:4rem}}
.pub-toc ol{letter-spacing:0;text-transform:none;font-size:.875rem;font-weight:500;line-height:1.45}
.pub-sources ol{margin-bottom:1.75rem}.pub-sources p{margin-bottom:.5rem}
