/* Force des Plantes — gabarit "herbier botanique"
   Distinct des autres satellites : planches d'herbier à liseré pointillé,
   étiquettes de spécimen, noms latins, palette mousse/papier kraft. */
* { margin:0; padding:0; box-sizing:border-box; }
html { font-size:17px; }
body {
  font-family:'Palatino Linotype','Book Antiqua', Palatino, serif;
  background:#f5f1e3;
  color:#2c3327;
  line-height:1.7;
}
.cadre { max-width:920px; margin:0 auto; padding:0 22px; }

/* ---- En-tête herbier ---- */
header.herbier {
  background:#3d5a3c; color:#f5f1e3; padding:30px 0 24px;
  border-bottom:6px solid #2c4230;
}
header.herbier .cadre { display:flex; flex-wrap:wrap; align-items:center; gap:18px; }
.embleme { width:56px; height:56px; flex:0 0 auto; }
header.herbier h1 { font-size:1.9rem; font-weight:normal; letter-spacing:.03em; }
header.herbier h1 a { color:#f5f1e3; text-decoration:none; }
header.herbier .sous-titre { font-style:italic; font-size:.95rem; color:#cdd8bd; }
nav.branches { margin-left:auto; font-family:'Trebuchet MS', Verdana, sans-serif; font-size:.85rem; }
nav.branches a { color:#e8eeda; text-decoration:none; margin-left:20px; border-bottom:2px solid transparent; padding-bottom:3px; }
nav.branches a:hover { border-bottom-color:#c9a24b; }

/* ---- Intro ---- */
.preambule { padding:36px 0 8px; max-width:660px; }
.preambule p { font-size:1.05rem; color:#4a5240; }

/* ---- Planches (index) ---- */
.planches { display:grid; grid-template-columns:repeat(auto-fill, minmax(270px,1fr)); gap:26px; padding:26px 0 40px; }
.planche {
  background:#fbf8ee; border:1px solid #d5cdb2; padding:10px; position:relative;
  box-shadow:2px 3px 0 rgba(61,90,60,.12);
}
.planche .dedans { border:2px dashed #b9ae8c; padding:18px 16px 16px; height:100%; }
.planche .vignette { margin:-4px -2px 12px; }
.planche .vignette svg { display:block; width:100%; height:auto; }
.planche .vignette img { display:block; width:100%; height:150px; object-fit:cover; }
.planche h2 { font-size:1.18rem; font-weight:normal; }
.planche h2 a { color:#2c3327; text-decoration:none; }
.planche h2 a:hover { color:#75552c; }
.planche .latin { font-style:italic; color:#75552c; font-size:.9rem; display:block; margin:2px 0 10px; }
.planche p { font-size:.93rem; color:#565e4a; }
.etiquette {
  position:absolute; top:-9px; left:16px; background:#c9a24b; color:#2c3327;
  font-family:'Trebuchet MS', Verdana, sans-serif; font-size:.66rem; letter-spacing:.16em;
  text-transform:uppercase; padding:3px 10px;
}

/* ---- Page fiche ---- */
article.fiche { max-width:700px; margin:0 auto; padding:38px 0 30px; }
article.fiche .etiquette-fiche {
  display:inline-block; background:#c9a24b; font-family:'Trebuchet MS', Verdana, sans-serif;
  font-size:.7rem; letter-spacing:.18em; text-transform:uppercase; padding:4px 12px; margin-bottom:14px;
}
article.fiche h1 { font-size:1.95rem; font-weight:normal; line-height:1.25; }
article.fiche .latin-titre { font-style:italic; color:#75552c; font-size:1.05rem; margin:.15em 0 1em; }
article.fiche .planche-illustree {
  background:#fbf8ee; border:1px solid #d5cdb2; padding:10px; margin:8px 0 26px;
  box-shadow:2px 3px 0 rgba(61,90,60,.12);
}
article.fiche .planche-illustree .dedans { border:2px dashed #b9ae8c; }
article.fiche .planche-illustree svg { display:block; width:100%; height:auto; }
article.fiche .planche-illustree img { display:block; width:100%; height:auto; }
.credit-photo {
  font-family:'Trebuchet MS', Verdana, sans-serif; font-size:.68rem; color:#8a836b;
  text-align:right; padding:6px 4px 0;
}
article.fiche p { margin-bottom:16px; }
article.fiche h2 {
  font-family:'Trebuchet MS', Verdana, sans-serif; font-size:1rem; letter-spacing:.08em;
  text-transform:uppercase; color:#3d5a3c; margin:28px 0 12px; display:flex; align-items:center; gap:10px;
}
article.fiche h2::after { content:""; flex:1; height:1px; background:#c9bfa0; }
article.fiche ul { margin:0 0 16px 22px; }
article.fiche li { margin-bottom:8px; }
article.fiche .repere {
  background:#eee8d2; border:1px solid #d5cdb2; border-left:5px solid #3d5a3c;
  padding:14px 18px; margin:22px 0; font-size:.95rem;
}
article.fiche a { color:#75552c; }
.retour-herbier {
  display:inline-block; margin-top:12px; font-family:'Trebuchet MS', Verdana, sans-serif;
  font-size:.8rem; letter-spacing:.12em; text-transform:uppercase; color:#3d5a3c; text-decoration:none;
  border:2px solid #3d5a3c; padding:8px 16px; border-radius:3px;
}
.retour-herbier:hover { background:#3d5a3c; color:#f5f1e3; }

/* ---- Pied ---- */
footer.herbier {
  background:#3d5a3c; color:#cdd8bd; margin-top:40px; padding:24px 0 30px;
  font-size:.85rem; text-align:center; border-top:6px solid #2c4230;
}
footer.herbier a { color:#e8eeda; }
footer.herbier .prudence { font-style:italic; margin-top:8px; color:#b7c6a4; }

@media (max-width:640px){
  header.herbier .cadre { flex-direction:column; text-align:center; }
  nav.branches { margin-left:0; }
}
