/* ==================================================================
   article.css — page d'article de landrucimetieres.fr

   Trois mesures commandent cette feuille :
   250 px de large en moyenne pour les 58 000 images, en 2026 comme
   en 2017 ; 87 % des fiches placent leurs images dans le texte par
   un raccourci, donc leur emplacement ne se redistribue pas ; et
   82 % des fiches font moins de 3 000 caractères.

   Ce site n'est pas un site de texte illustré mais un site de
   photographies légendées. La feuille accueille les images là où
   elles sont, sans jamais les agrandir.

   Les règles de flottement vivent dans style.css et sont conservées :
   6 149 fiches sur 7 059 emploient |left ou |right, les supprimer
   changerait l'aspect de tout le site.

   À charger après style.css.
   ================================================================== */

.page-article{
  --pierre:#f4f2ed;--pierre2:#e6e2da;--pierre3:#d9d3c8;
  --encre:#1c1a17;--encre2:#4a4540;--sourd:#8c857c;
  --bronze:#8b7355;--bronzef:#6b5745;
  --lecture:44rem;
  background:var(--pierre);color:var(--encre2);
  font-family:'Montserrat',system-ui,sans-serif;
  font-size:18px;line-height:1.75;-webkit-font-smoothing:antialiased;
}
.page-article h1,.page-article h2,.page-article h3{
  font-family:'Playfair Display',Georgia,serif;font-weight:500;
  color:var(--encre);line-height:1.2}
.page-article a{color:inherit;text-decoration:none}

.ar-wrap{max-width:1120px;margin:0 auto;padding:0 1.5rem 4rem}

.ar-fil{padding:1.2rem 0 0;font-size:.8rem;color:var(--sourd)}
.ar-fil a{border-bottom:1px solid var(--pierre2)}
.ar-fil a:hover{border-bottom-color:var(--bronze)}

/* ---------- En-tête ---------- */
.ar-tete{padding:1.7rem 0 1.5rem;border-bottom:1px solid var(--encre);
  max-width:var(--lecture)}
.ar-sur{font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;
  color:var(--bronze);margin:0 0 .55rem}
.ar-tete h1{font-size:clamp(1.55rem,3.2vw,2.1rem);letter-spacing:-.008em}
.ar-meta{display:flex;flex-wrap:wrap;gap:1.3rem;margin:.9rem 0 0;
  font-size:.79rem;color:var(--sourd)}
.ar-meta b{font-family:'Playfair Display',Georgia,serif;font-weight:500;color:var(--encre2)}
.ar-chapo{margin-top:1.1rem;font-size:1.06rem;color:var(--encre2)}
.ar-chapo p{margin-bottom:.7rem}

/* ---------- Corps ---------- */
.ar-corps{max-width:var(--lecture);padding:1.8rem 0 0;font-size:1.02rem}
.ar-corps p{margin-bottom:1.05rem}
.ar-corps strong{font-weight:600;color:var(--encre)}
.ar-corps a{color:var(--bronzef);border-bottom:1px solid var(--pierre2)}
.ar-corps a:hover{border-bottom-color:var(--bronze)}
.ar-corps ul,.ar-corps ol{margin:0 0 1.05rem 1.3rem}
.ar-corps li{margin-bottom:.35rem}
.ar-corps blockquote{margin:1.3rem 0;padding-left:1.2rem;
  border-left:1px solid var(--pierre3);color:var(--sourd)}

/* Les intertitres dégagent les flottants : avec sept images dans mille
   caractères, la cascade déborde et la suite viendrait s'y encastrer. */
.ar-corps h2,.ar-corps h3{clear:both;font-size:1.24rem;margin:2rem 0 .7rem}
.ar-corps h3{font-size:1.08rem}

.ar-ps{margin-top:2rem;padding-top:1.2rem;border-top:1px solid var(--pierre2);
  clear:both;font-size:.95rem}
.ar-ps h2{font-size:1.05rem;margin-top:0}
.ar-notes{margin-top:1.6rem;padding-top:1.1rem;border-top:1px solid var(--pierre2);
  font-size:.86rem;color:var(--sourd);clear:both}

.ar-sans-image{max-width:var(--lecture);margin-top:1.6rem;padding-top:1.1rem;
  border-top:1px solid var(--pierre2);clear:both;
  font-size:.9rem;color:var(--sourd);font-style:italic}
.ar-sans-image a{color:var(--bronzef);border-bottom:1px solid var(--pierre2)}

/* ---------- Légendes des images ----------
   Sur un site de photographies légendées, la légende porte souvent
   l'information : le nom sur la pierre, la date, la division. */
.page-article .spip_doc_legende,.page-article figcaption{
  font-size:.79rem;color:var(--sourd);line-height:1.55;
  margin-top:.4rem;text-align:left}
.page-article .spip_doc_titre{font-weight:500;color:var(--encre2)}

/* ---------- Pied d'article ---------- */
.ar-pied{max-width:var(--lecture);margin-top:2.8rem;clear:both}

.ar-voisines h2{font-size:1.05rem;padding-bottom:.6rem;
  border-bottom:1px solid var(--encre)}
.ar-voisines-liste{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;background:var(--pierre2);border-bottom:1px solid var(--pierre2)}
.ar-voisines-liste a{background:var(--pierre);padding:.8rem;display:block}
.ar-voisines-liste a:hover{background:#efece5}
.ar-voisines-liste .vig{display:block;aspect-ratio:4/3;overflow:hidden;
  margin-bottom:.5rem;
  background:repeating-linear-gradient(45deg,#e9e5dc,#e9e5dc 4px,#e3ded4 4px,#e3ded4 8px)}
.ar-voisines-liste .vig img{width:100%;height:100%;object-fit:cover;
  display:block;filter:grayscale(1)}
.ar-voisines-liste a:hover .vig img{filter:none}
.ar-voisines-liste .t{font-size:.85rem;color:var(--encre2);line-height:1.4}
.ar-voisines-liste a:hover .t{color:var(--bronzef)}

/* ---------- Échanges ---------- */
.ar-echanges{margin-top:2.6rem}
.ar-echanges h2{font-size:1.1rem;padding-bottom:.6rem;
  border-bottom:1px solid var(--encre);display:flex;align-items:baseline;gap:.7rem}
.ar-echanges h2 .n{font-family:'Montserrat',sans-serif;font-size:.72rem;
  letter-spacing:.1em;color:var(--sourd)}

.ar-msg{padding:1rem .2rem;border-bottom:1px solid var(--pierre2)}
.ar-msg .qui{font-size:.87rem;color:var(--encre);font-weight:500;margin-bottom:.35rem}
.ar-msg .role{font-family:'Montserrat',sans-serif;font-size:.63rem;
  letter-spacing:.09em;text-transform:uppercase;color:var(--bronzef);
  font-weight:400;margin-left:.6rem}
.ar-msg .quand{font-size:.73rem;color:var(--sourd);font-weight:400;margin-left:.6rem}
.ar-msg p{font-size:.93rem;margin-bottom:.5rem}
.ar-msg p:last-child{margin-bottom:0}
.ar-msg-auteur .qui{color:var(--bronzef)}
.ar-msg-reponse{margin-left:1.6rem;padding-left:1rem;
  border-left:1px solid var(--pierre2)}

/* Pagination des échanges : balisage bootstrap2spip (ul > li.page-item
   > .page-link, .active, .disabled, libellé .pagination-label), dans
   un <nav>, jamais un <p>. */
.ar-pagination{padding:1.1rem 0 0;font-size:.9rem;color:var(--sourd)}
.ar-pagination .pagination-label,.ar-pagination .pagination_ancre{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
.ar-pagination ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;
  gap:.15rem;align-items:center}
.ar-pagination li{list-style:none;margin:0;padding:0;display:block}
.ar-pagination li::before,.ar-pagination li::marker{content:none;display:none}
.ar-pagination .page-link{display:inline-flex;align-items:center;justify-content:center;
  min-width:38px;height:38px;padding:0 .5rem;border:1px solid transparent;
  border-radius:0;background:none;color:var(--encre2);font-weight:400;text-decoration:none}
.ar-pagination a.page-link:hover{border-color:var(--pierre3);background:#efece5;color:var(--encre)}
.ar-pagination .page-item.active .page-link{background:var(--encre);color:var(--pierre)}
.ar-pagination .page-item.disabled .page-link{color:var(--sourd);padding:0 .3rem;min-width:0}
.ar-pagination .icon svg{width:1em;height:1em;display:block;fill:currentColor}

/* ---------- Écrire ---------- */
.ar-ecrire{margin-top:2.6rem;padding-top:1.5rem;border-top:1px solid var(--encre)}
.ar-ecrire h2{font-size:1.1rem}
.ar-ecrire-note{font-size:.88rem;color:var(--sourd);margin:.5rem 0 1.2rem;max-width:58ch}
.page-article .formulaire_forum{background:#fbfaf7;border:1px solid var(--pierre3);
  border-radius:3px;padding:1.2rem 1.3rem}
.page-article .formulaire_forum label{display:block;font-size:.83rem;
  color:var(--sourd);margin-bottom:.3rem}
.page-article .formulaire_forum input[type="text"],
.page-article .formulaire_forum input[type="email"],
.page-article .formulaire_forum textarea{width:100%;font-family:inherit;
  font-size:1rem;color:var(--encre);background:#fff;
  border:1px solid var(--pierre3);border-radius:3px;padding:.65rem .8rem}
.page-article .formulaire_forum textarea{min-height:9rem;line-height:1.6;resize:vertical}
.page-article .formulaire_forum .editer{margin-bottom:1rem}
.page-article .formulaire_forum .boutons{margin-top:.5rem}
.page-article .formulaire_forum button,
.page-article .formulaire_forum input[type="submit"]{border:0;
  background:var(--encre);color:var(--pierre);font-family:inherit;
  font-size:.95rem;padding:.8rem 1.6rem;border-radius:2px;cursor:pointer}
.page-article .formulaire_forum button:hover{background:var(--bronzef)}

/* ---------- Masquage accessible ---------- */
.page-article .skip-link{position:absolute;left:-9999px;top:auto;
  width:1px;height:1px;overflow:hidden}
.page-article .skip-link:focus{position:fixed;left:1rem;top:1rem;
  width:auto;height:auto;z-index:200;background:#fff;color:var(--encre);
  padding:.7rem 1.2rem;border:2px solid var(--bronze);border-radius:2px}

/* ==================================================================
   Points de rupture

   Le flottement est déjà annulé sur petit écran par style.css : une
   image de 250 px dans une colonne de 390 ne laisse qu'une gouttière
   de texte illisible. On laisse cette règle faire son travail.
   ================================================================== */

@media (max-width:900px){
  .ar-voisines-liste{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:640px){
  .page-article{font-size:17px}
  .ar-wrap{padding:0 1.1rem 3rem}
  .ar-meta{gap:.9rem}
  .ar-msg-reponse{margin-left:.8rem;padding-left:.7rem}
  .ar-pagination .page-link{min-width:44px;height:44px}
  /* Fiches voisines : sur téléphone, une liste de titres, sans vignette. */
  .ar-voisines-liste{grid-template-columns:1fr}
  .ar-voisines-liste a{padding:.8rem .3rem;min-height:46px;display:flex;align-items:center}
  .ar-voisines-liste .vig{display:none}
  .ar-voisines-liste .t{font-size:.95rem}
  .page-article .formulaire_forum{padding:1rem}
  .page-article .formulaire_forum button{width:100%}
}

/* Fiche introuvable ou dépubliée */
.page-article .ar-absent{max-width:44rem;padding:3rem 0;
  color:var(--sourd);font-style:italic}
