/* Harmonisation des pièces de procédure avec la présentation générale du dossier. */
:root {
  --procedure-gray: #f2f2f0;
  --procedure-gray-soft: #f7f7f5;
  --procedure-line: #d8d8d3;
}

/* La barre latérale réserve déjà sa largeur sur body. */
.official-shell,
.page-shell {
  margin-left: 0 !important;
}

/* Auditions ABC : colonne centrée et largeur stable sur toute la page. */
.abc-audition-page {
  background: #fff !important;
}
.official-document {
  width: min(920px, calc(100% - 40px)) !important;
  margin-inline: auto !important;
}
.official-hero,
.official-part,
.official-part-body,
.official-continuous {
  max-width: none !important;
}
.official-note,
.parliament-language-note {
  background: var(--procedure-gray-soft) !important;
  border-left-color: #7d8790 !important;
}

/* Conclusions de Dirk Tirez : cadre, sommaire et fac-similés sur une même largeur. */
.tirez-conclusions-page {
  background: #fff !important;
}
.page-shell .document {
  width: min(920px, calc(100% - 40px)) !important;
}
.page-shell .pages {
  padding: 0 !important;
  background: var(--procedure-gray) !important;
}
.page-shell .paper {
  width: 100% !important;
  max-width: none !important;
  margin: 0 auto 1px !important;
  box-shadow: none !important;
}

/* Décision ABC : suppression du second décalage et largeur identique du début à la fin. */
.abc-decision-page .document-nav,
.abc-decision-page .masthead,
.abc-decision-page main,
.abc-decision-page footer {
  margin-left: 0 !important;
}
.abc-decision-page .decision-actions,
#decision-content {
  width: min(920px, calc(100% - 40px)) !important;
  max-width: 920px !important;
}
#decision-content .official-page-reference,
#decision-content .official-page-reference img,
#decision-content .decision-part {
  width: 100% !important;
  max-width: none !important;
}

/* Jugement et conclusions de première instance : gris neutre à la place des teintes bleues ou beiges. */
.judgment-page .case-box,
.judgment-page .parties,
.judgment-page .lang-note,
.judgment-page .sig-note,
.judgment-page .analysis-method {
  background: var(--procedure-gray) !important;
  border-color: var(--procedure-line) !important;
}
.first-instance-conclusions-page,
.first-instance-conclusions-page html {
  background: var(--procedure-gray) !important;
}
.first-instance-conclusions-page .case-line,
.first-instance-conclusions-page .chapter > summary,
.first-instance-conclusions-page .controls {
  background: var(--procedure-gray-soft) !important;
  border-color: var(--procedure-line) !important;
}
.first-instance-conclusions-page .chapter-body p.numbered {
  border-left-color: var(--procedure-line) !important;
}

/* Conclusions d'appel de Jean Muls : même vocabulaire visuel que les conclusions de bpost. */
.appeal-muls-page {
  background: #f4f5f7 !important;
}
.appeal-muls-page .parties,
.appeal-muls-page article.doc.pinned,
.appeal-muls-page .lang-note,
.appeal-muls-page .sig-note,
.appeal-muls-page .piece-popup,
.appeal-muls-page blockquote {
  background: var(--procedure-gray-soft) !important;
  border-color: var(--procedure-line) !important;
}

/* Conclusions de bpost : retrait suspendu régulier après chaque numéro de paragraphe. */
.appeal-bpost-page main p:has(> strong:first-child) {
  padding-left: 3.7rem !important;
  text-indent: -3.7rem !important;
}
.appeal-bpost-page main p > strong:first-child {
  display: inline-block !important;
  width: 3.7rem !important;
  min-width: 3.7rem !important;
  padding-right: .55rem;
  text-indent: 0;
  vertical-align: top;
}

@media (max-width: 900px) {
  .official-document,
  .page-shell .document,
  .abc-decision-page .decision-actions,
  #decision-content {
    width: calc(100% - 24px) !important;
  }
}

/*
 * Contrat visuel commun du chapitre I.
 *
 * Les neuf pages de procédure provenaient de cinq modèles historiques. Cette
 * couche fixe une largeur, un bandeau, un en-tête et un comportement responsive
 * communs, tout en conservant le contenu et l'identité propres à chaque source.
 */
:root {
  --procedure-navy: #112841;
  --procedure-red: #a9343f;
  --procedure-ink: #202a35;
  --procedure-muted: #68727d;
  --procedure-content: 920px;
  --procedure-gutter: 36px;
  --procedure-header-x: 40px;
  --procedure-header-y: 34px;
}

body:is(.judgment-page, .abc-decision-page, .abc-audition-page, .conclusions-set)
:is(.topbar, .document-nav, .official-topbar) {
  position: sticky !important;
  top: 0 !important;
  z-index: 40 !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 58px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 28px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;
  color: #fff !important;
  background: var(--procedure-navy) !important;
  border: 0 !important;
  border-bottom: 3px solid var(--procedure-red) !important;
  font: 700 10px/1.35 Arial, Helvetica, sans-serif !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

body:is(.judgment-page, .abc-decision-page, .abc-audition-page, .conclusions-set)
:is(.topbar, .document-nav, .official-topbar) a {
  color: #fff !important;
  font: inherit !important;
  text-decoration: none !important;
}

body:is(.judgment-page, .abc-decision-page, .abc-audition-page, .conclusions-set)
:is(.topbar, .document-nav, .official-topbar) > span {
  color: #c2ccd6 !important;
  font: inherit !important;
}

/* Une seule colonne et une seule largeur, quelle que soit la famille de page. */
body:is(.judgment-page, .abc-decision-page, .appeal-conclusions-page) header.masthead,
.judgment-page main,
.appeal-conclusions-page main,
.appeal-conclusions-page .source-links,
.abc-decision-page #decision-content,
.abc-decision-page .decision-actions,
.first-instance-conclusions-page main.page,
.tirez-conclusions-page .page-shell .document,
.abc-audition-page .official-document {
  width: min(var(--procedure-content), calc(100% - var(--procedure-gutter))) !important;
  max-width: var(--procedure-content) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.tirez-conclusions-page .page-shell .document {
  padding: 0 !important;
}

/* Même carte d'en-tête, avec les mêmes marges internes. */
body:is(.judgment-page, .abc-decision-page, .appeal-conclusions-page) header.masthead,
body.tirez-conclusions-page .page-shell .document > .hero,
.abc-audition-page .official-hero {
  margin-top: 24px !important;
  padding: var(--procedure-header-y) var(--procedure-header-x) 31px !important;
  color: var(--procedure-ink) !important;
  background: #fff !important;
  border: 1px solid var(--procedure-line) !important;
  border-top: 4px solid var(--procedure-red) !important;
  text-align: left !important;
  box-shadow: none !important;
}

body.tirez-conclusions-page .page-shell .document > .hero {
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.first-instance-conclusions-page main.page {
  position: relative;
  margin-top: 24px !important;
  padding: var(--procedure-header-y) var(--procedure-header-x) 60px !important;
  background: #fff !important;
  border: 1px solid var(--procedure-line) !important;
  border-top: 4px solid var(--procedure-red) !important;
}

/* Même échelle typographique et aucun saut de ligne forcé. */
body:is(.judgment-page, .abc-decision-page, .appeal-conclusions-page) header.masthead .title,
.first-instance-conclusions-page main.page > h1,
.tirez-conclusions-page .hero h1,
.abc-audition-page .official-hero h1 {
  width: auto !important;
  max-width: none !important;
  margin: 0 0 10px !important;
  color: var(--procedure-navy) !important;
  font: 500 clamp(31px, 3vw, 38px)/1.14 Georgia, "Times New Roman", serif !important;
  letter-spacing: -.025em !important;
  text-align: left !important;
  text-decoration: none !important;
  text-transform: none !important;
}

body:is(.judgment-page, .abc-decision-page, .appeal-conclusions-page) header.masthead .eyebrow,
.first-instance-conclusions-page .book-kicker,
.tirez-conclusions-page .hero .eyebrow,
.abc-audition-page .official-eyebrow {
  width: auto !important;
  margin: 0 0 10px !important;
  color: var(--procedure-red) !important;
  font: 700 9px/1.4 Arial, Helvetica, sans-serif !important;
  letter-spacing: .13em !important;
  text-align: left !important;
  text-transform: uppercase !important;
}

body:is(.judgment-page, .abc-decision-page, .appeal-conclusions-page) header.masthead .subtitle,
.first-instance-conclusions-page .book-subtitle,
.tirez-conclusions-page .hero > p:not(.eyebrow),
.abc-audition-page .official-summary {
  width: auto !important;
  max-width: 790px !important;
  margin: 0 !important;
  color: var(--procedure-muted) !important;
  font: 12px/1.6 Arial, Helvetica, sans-serif !important;
  text-align: left !important;
}

.first-instance-conclusions-page .book-subtitle {
  margin-bottom: 0 !important;
  font-style: normal !important;
}

body:is(.judgment-page, .abc-decision-page, .appeal-conclusions-page) header.masthead .docket,
.tirez-conclusions-page .hero .meta,
.abc-audition-page .official-meta,
.first-instance-conclusions-page .case-line {
  margin-top: 18px !important;
  padding-top: 13px !important;
  display: flex !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 8px 26px !important;
  color: var(--procedure-muted) !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--procedure-line) !important;
  font: 600 10px/1.45 Arial, Helvetica, sans-serif !important;
  text-align: left !important;
}

/* Les signatures institutionnelles restent visibles sans déplacer le titre. */
.first-instance-bpost-page .law-firm {
  position: absolute !important;
  top: 28px !important;
  right: var(--procedure-header-x) !important;
  margin: 0 !important;
  color: var(--procedure-muted) !important;
  font: 700 13px/1.2 Arial, Helvetica, sans-serif !important;
}

.first-instance-bpost-page .book-kicker {
  padding-right: 110px;
}

.abc-audition-page .official-hero {
  position: relative;
}

.abc-audition-page .official-authority {
  position: absolute !important;
  top: 24px !important;
  right: 32px !important;
  margin: 0 !important;
  gap: 10px !important;
}

.abc-audition-page .official-seal {
  width: 42px !important;
  height: 42px !important;
  font-size: 11px !important;
}

.abc-audition-page .official-authority > span:last-child {
  display: none !important;
}

.abc-audition-page .official-eyebrow,
.abc-audition-page .official-hero h1 {
  max-width: calc(100% - 62px) !important;
}

.abc-audition-page .official-summary {
  max-width: 790px !important;
}

/* Stabilise la lecture des procès-verbaux à toutes les largeurs d'écran. */
.abc-audition-page .official-part-body,
.abc-audition-page .official-continuous {
  min-width: 0 !important;
}

.abc-audition-page .official-continuous p,
.abc-audition-page .official-continuous li {
  max-width: 100% !important;
  overflow-wrap: anywhere;
  word-break: normal;
  text-align: left !important;
}

.abc-audition-page .official-continuous p + p {
  margin-top: 1em !important;
}

/* La date appartient aux métadonnées et ne doit pas agrandir le titre. */
.appeal-muls-page header.masthead .title em {
  display: inline-block;
  margin-left: 10px;
  color: var(--procedure-muted) !important;
  font: 700 10px/1.4 Arial, Helvetica, sans-serif !important;
  letter-spacing: .08em !important;
  vertical-align: middle;
}

@media (max-width: 1120px) {
  html.site-tree-ready body:is(.judgment-page, .abc-decision-page, .abc-audition-page, .conclusions-set) {
    padding-left: 0 !important;
  }

  body:is(.judgment-page, .abc-decision-page, .abc-audition-page, .conclusions-set)
  :is(.topbar, .document-nav, .official-topbar) {
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    margin-left: 0 !important;
  }

  .abc-audition-page .official-shell,
  .tirez-conclusions-page .page-shell {
    margin-left: 0 !important;
  }

  body:is(.judgment-page, .abc-decision-page, .abc-audition-page, .conclusions-set)
  :is(.topbar, .document-nav, .official-topbar) {
    padding-left: 142px !important;
  }
}

@media (max-width: 720px) {
  :root {
    --procedure-gutter: 20px;
    --procedure-header-x: 22px;
    --procedure-header-y: 27px;
  }

  body:is(.judgment-page, .abc-decision-page, .abc-audition-page, .conclusions-set)
  :is(.topbar, .document-nav, .official-topbar) {
    padding-right: 14px !important;
  }

  body:is(.judgment-page, .abc-decision-page, .abc-audition-page, .conclusions-set)
  :is(.topbar, .document-nav, .official-topbar) > span {
    display: none !important;
  }

  .abc-audition-page .official-authority {
    position: static !important;
    margin-bottom: 18px !important;
  }

  .abc-audition-page .official-authority > span:last-child {
    display: block !important;
  }

  .abc-audition-page .official-eyebrow,
  .abc-audition-page .official-hero h1,
  .abc-audition-page .official-summary {
    max-width: none !important;
  }

  .abc-audition-page .official-part > summary {
    align-items: flex-start !important;
  }
}

@media print {
  .official-shell,
  .page-shell,
  .abc-decision-page .document-nav,
  .abc-decision-page .masthead,
  .abc-decision-page main,
  .abc-decision-page footer {
    margin-left: 0 !important;
  }
  .official-document,
  .page-shell .document,
  #decision-content {
    width: 100% !important;
    max-width: none !important;
  }
}
