/* À propos : employer la largeur disponible sans étirer les paragraphes. */
.model-hero-layout { display:grid; grid-template-columns:minmax(0,1fr) 16rem; align-items:center; gap:3rem; }
.model-hero-layout h1 { max-width:var(--width-reading); }
.model-hero-illustration { display:block; width:100%; height:auto; }
.model-source-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:1.5rem; margin-block:2rem; }
.model-page .model-source-grid .model-reference-block {
  display:grid; grid-template-columns:14rem minmax(0,1fr); gap:2rem;
  max-width:none; margin:0; padding:var(--card-space);
}
.model-source-identity { border-right:1px dashed var(--color-border); padding-right:2rem; }
.model-page .model-source-identity .home-source-icon {
  box-sizing:content-box; width:2.75rem; height:2.75rem; padding:1rem;
  background:var(--surface-page); border:1px solid var(--color-border);
  border-radius:40% 60% 55% 45%; margin-bottom:1.25rem;
}
.model-reference-block:nth-child(even) .model-source-identity .home-source-icon { border-radius:60% 40% 45% 55%; transform:rotate(-5deg); }
.model-source-identity h3 { margin-bottom:0; }
.model-source-description p { max-width:var(--width-reading); }
.model-source-grid .model-reference-block:last-child { grid-column:1 / -1; }
.model-source-grid .model-reference-block:last-child p { max-width:var(--width-reading); }
.model-page .model-reading .home-note { font-size:var(--text-small); border-top:1px solid var(--color-border); padding-top:1rem; }
.model-experiment-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; margin-block:2rem; }
.model-page .model-experiment-grid .model-reference-block { margin:0; max-width:none; }
.model-page .model-references { display:block; max-width:none; list-style:none; padding:0; margin-block:2rem; }
.model-page .model-references li { margin:0; padding:1.5rem 0; border:0; border-bottom:1px solid var(--color-border); border-radius:0; background:none; box-shadow:none; }
.model-references li p { max-width:var(--width-reading); }
.model-references li > a { text-decoration:underline; text-underline-offset:3px; font-weight:var(--weight-heading); }
@media(max-width:900px) {
  .model-hero-layout { grid-template-columns:minmax(0,1fr) 10rem; gap:2rem; }
  .model-experiment-grid { grid-template-columns:1fr; }
}
@media(max-width:760px) {
  .model-hero-layout, .model-source-grid, .model-page .model-references { grid-template-columns:1fr; }
  .model-hero-illustration { width:10rem; justify-self:center; }
}

@media(max-width:760px) {
 .model-page .model-source-grid .model-reference-block { grid-template-columns:1fr; gap:1.25rem; }
 .model-source-identity { border-right:0; border-bottom:1px dashed var(--color-border); padding:0 0 1.25rem; }
}
