/**
 * Article en pleine page (node--article--full du sous-thème).
 *
 * En-tête éditorial, illustration en grand, texte sur une largeur de
 * lecture ; les paragraphes en colonnes (image + texte) gardent une
 * largeur plus généreuse.
 */
.ArticlePage {
  --read-width: 720px;
  --wide-width: 1120px;
  padding-bottom: 96px;
}

.ArticlePage-head {
  padding-top: clamp(24px, 4vw, 56px);
  padding-bottom: 32px;
  text-align: center;
}
.ArticlePage-head > * {
  max-width: 960px;
  margin-inline: auto;
}
.ArticlePage-kicker .field__item,
.ArticlePage-kicker a {
  color: inherit;
  text-decoration: none;
}
.ArticlePage-title {
  margin: 12px auto 0;
  font-size: clamp(34px, 4.6vw, 68px);
  font-weight: var(--u-title-weight);
  line-height: 1.05;
  letter-spacing: -0.01em;
}
.ArticlePage-date {
  margin-top: 16px;
  color: var(--u-ink-muted);
  font-size: 14px;
}

.ArticlePage-illustration {
  margin-bottom: clamp(40px, 5vw, 72px);
}
.ArticlePage-illustration img {
  display: block;
  width: 100%;
  max-width: var(--wide-width);
  height: auto;
  margin: 0 auto;
  border-radius: var(--u-radius-card);
}

.ArticlePage-body {
  padding-inline: var(--page-gutter);
}
.ArticlePage-chapo {
  max-width: var(--read-width);
  margin: 0 auto 48px;
  font-family: var(--u-font-title);
  font-size: clamp(19px, 1.6vw, 23px);
  line-height: 1.55;
}
.ArticlePage-paragraphs {
  max-width: var(--wide-width);
  margin: 0 auto;
  font-size: 17px;
  line-height: 1.7;
}
/* Texte courant des paragraphes : largeur de lecture */
.ArticlePage-paragraphs .paragraph--type--global-block,
.ArticlePage-paragraphs > .field > .field__item > .paragraph:not(.paragraph--type--global-columns):not(.paragraph--type--global-columns-two) {
  max-width: var(--read-width);
  margin-inline: auto;
}
.ArticlePage-paragraphs h2,
.ArticlePage-paragraphs h3,
.ArticlePage-paragraphs strong:only-child {
  font-family: var(--u-font-title);
}
.ArticlePage-paragraphs img {
  max-width: 100%;
  height: auto;
  border-radius: var(--u-radius-card);
}
.ArticlePage-paragraphs p {
  margin: 0 0 1em;
}

.ArticlePage .HomeShelf {
  margin-top: clamp(72px, 8vw, 120px);
}
.ArticlePage .HomeShelf-rail {
  --rail-inset: max(var(--page-gutter), calc((100vw - var(--page-max)) / 2 + var(--page-gutter)));
  grid-auto-columns: clamp(170px, 15vw, 240px);
}
