
:root{
  --papier:#ffffff; --ivoire:#fdfdfb; --ink:#141210; --ink-pale:#3a362f; --line:#c9beae;
  --vert:#2e7d4e; --terre:#e2622e; --terre-fonce:#9a3e23;
}
*{box-sizing:border-box}
body{margin:0;font-family:'Source Serif 4',Georgia,serif;background:var(--papier);color:var(--ink);line-height:1.6}
main{max-width:760px;margin:0 auto;padding:1.5rem 1.2rem 5rem}
.site-header{max-width:760px;margin:0 auto;padding:1.6rem 1.2rem 0.8rem;border-bottom:3px solid var(--ink)}
.logo{font-family:'Inter',system-ui,sans-serif;font-size:2.1rem;font-weight:800;text-decoration:none;color:var(--ink);letter-spacing:-0.01em}
.tagline{margin:0.3rem 0 0.9rem;font-style:italic;color:var(--ink-pale);max-width:46ch}
nav{font-family:'Inter',system-ui,sans-serif;font-size:0.9rem}
nav a{color:var(--terre-fonce);text-decoration:none;margin-right:0.4rem}
nav a.active,nav a:hover{text-decoration:underline}
h1{font-family:'Inter',system-ui,sans-serif;font-size:1.9rem;font-weight:800;line-height:1.15;margin-top:0.4rem}
h2{font-family:'Inter',system-ui,sans-serif;font-size:1.15rem;font-weight:700;margin:0 0 0.5rem}
a{color:var(--terre-fonce)}

/* --- tampons encreurs : métadonnées, jamais des badges plats --- */
.tampon{
  display:inline-block;margin:0 0.4rem 0.4rem 0;padding:0.15rem 0.55rem;
  font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:0.72rem;
  border:1.5px solid var(--terre);color:var(--terre-fonce);
  border-radius:2px 11px 4px 13px;transform:rotate(-1.4deg);background:rgba(226,98,46,0.045);
  box-shadow:0 0 0.6px var(--terre),0.3px 0.2px 0.4px rgba(226,98,46,0.35);
}
.tampon:nth-child(2n){border-radius:9px 3px 12px 5px;border-width:1px}
.tampon:nth-child(3n){border-radius:4px 14px 2px 10px;transform:rotate(0.9deg);border-width:2px}
.tampon:nth-child(5n){transform:rotate(-0.5deg);border-width:1.25px;box-shadow:0 0 0.9px var(--terre)}
.tampon-label{text-transform:uppercase;letter-spacing:0.04em;opacity:0.7;margin-right:0.3rem}
.tampon-valeur{font-weight:600}

/* --- couverture / index --- */
.couverture{max-width:62ch;font-size:1.05rem}
.steppe{margin-top:1.5rem}
.campement{padding:1.1rem 0;border-bottom:1px dashed var(--line);position:relative}
.campement h2{font-size:1.3rem;margin:0.3rem 0}
.campement-meta{margin:0}
.campement-teaser{color:var(--ink-pale);margin:0.3rem 0}
.campement-lien a{font-family:'Inter',system-ui,sans-serif;font-size:0.85rem;font-weight:600}

/* --- page d'un campement --- */
.campement-page{background:var(--ivoire);border:1px solid var(--line);padding:1.6rem 1.6rem 2rem;
  box-shadow:0.22rem 0.32rem 0 rgba(20,18,16,0.055),-0.06rem 0.1rem 0 rgba(20,18,16,0.03)}
.meta-ligne{margin-bottom:0.2rem}

.section-scene{font-size:1.12rem}
.section-scene h2{display:none}
.section-faits,.section-rapport,.section-methode,.section-bilan{margin-top:1.1rem}

/* frise des moments-clés — transformer la liste à puces en piste de transhumance */
.section-frise ul{list-style:none;margin:0.6rem 0 0;padding:0;border-left:3px solid var(--vert)}
.section-frise li{position:relative;padding:0.1rem 0 0.9rem 1.1rem}
.section-frise li::before{
  content:"";position:absolute;left:-7.5px;top:0.35rem;width:12px;height:12px;
  background:var(--papier);border:2.5px solid var(--vert);border-radius:2px 9px 3px 10px;
}
.section-frise li strong{font-family:'IBM Plex Mono',ui-monospace,monospace;font-weight:700}

/* marginalia — facteurs de réussite/échec, inclinées, fond ivoire léger (plus de kraft) */
.section-marginalia{
  background:var(--ivoire);border:1px solid var(--line);padding:0.9rem 1.1rem;margin:1.2rem 0.4rem;
  border-radius:2px 16px 3px 18px;box-shadow:0.15rem 0.2rem 0 rgba(20,18,16,0.045);
}
.section-marginalia-succes{transform:rotate(-0.9deg)}
.section-marginalia-obstacle{transform:rotate(0.8deg)}
.section-marginalia h2{font-size:0.95rem;text-transform:uppercase;letter-spacing:0.03em;margin-bottom:0.4rem}
.section-marginalia-succes h2::before{content:"";}
.section-marginalia-obstacle h2::before{content:"";}
/* rature à l'encre sur ce qui a cédé — pas un strikethrough plat, un vrai trait de plume */
.section-marginalia-obstacle .rature{
  text-decoration:line-through;text-decoration-color:var(--ink);text-decoration-thickness:2px;
  display:inline-block;transform:skewX(-2deg);
}

/* clôture — la leçon */
.section-lecon{
  margin-top:1.6rem;padding:1rem 1.2rem;border-left:4px solid var(--terre);
  background:rgba(226,98,46,0.04);font-style:italic;
}
.section-lecon h2{font-style:normal;text-transform:uppercase;font-size:0.85rem;letter-spacing:0.05em;color:var(--terre-fonce)}

/* partage / impression */
.partage{margin:1.4rem 0;display:flex;gap:0.6rem;flex-wrap:wrap}
.partage button{
  font-family:'Inter',system-ui,sans-serif;font-size:0.82rem;background:none;cursor:pointer;
  border:1.5px solid var(--ink);color:var(--ink);padding:0.35rem 0.7rem;border-radius:2px 10px 3px 11px;
}
.partage button:hover{background:var(--ink);color:var(--papier)}
.partage .btn-un{transform:rotate(-0.6deg)}
.partage .btn-deux{transform:rotate(0.5deg);border-radius:9px 3px 11px 2px}

/* regards invités + sources */
.cartouche{margin-top:1rem;padding:0.7rem 0.9rem;border-left:3px solid var(--line);font-size:0.92rem}
.cartouche-eozen{border-left-color:#3b5a7a}
.cartouche-antimeta{border-left-color:#5a3b7a}
.cartouche-sources{font-size:0.8rem;color:var(--ink-pale);border-left-color:var(--line)}
.cartouche strong{font-family:'Inter',system-ui,sans-serif}

.retour{margin-top:1.6rem;font-family:'Inter',system-ui,sans-serif;font-size:0.9rem}
.page-grille h2{margin-top:1.4rem}
.site-footer{max-width:760px;margin:2.2rem auto 0;padding:1.1rem 1.2rem;border-top:1px solid var(--line);font-size:0.85rem;color:var(--ink-pale)}
@media (max-width:600px){main{padding:1.2rem 0.9rem 4rem}}

@media print{
  .site-header nav,.site-footer,.partage,.retour{display:none}
  body{background:#fff}
  .campement-page{box-shadow:none;border:none}
  .tampon{border-radius:0;transform:none;background:none}
  a{color:var(--ink);text-decoration:underline}
}
