.bio-page { min-width:0; color:var(--theme-texte); font-size:var(--theme-texte-base,1rem); }
.bio-entete,.bio-fiche,.bio-recit { border:1px solid var(--theme-bordure); border-radius:1rem; padding:clamp(1rem,2vw,2rem); }
.bio-entete { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem; background:linear-gradient(110deg,var(--theme-bandeau-debut),var(--theme-bandeau-fin)); }
.bio-entete p { color:var(--theme-principale); font-weight:600; margin:0 0 .25rem; }
.bio-entete h1,.bio-recit h2 { font-family:Georgia,serif; margin:0 0 .5rem; }
.bio-contenu { margin-block:1rem; display:grid; grid-template-columns:minmax(15rem,35%) minmax(0,1fr); gap:1rem; align-items:start; }
.bio-fiche,.bio-recit { min-width:0; background:var(--theme-surface); }
.bio-fiche>img { display:block; width: min(100%,15rem); height:auto; max-height:18rem; object-fit:contain; margin:0 auto 1rem; border-radius:.75rem; }
.bio-recit p { max-width:72ch; line-height:1.75; white-space:pre-line; overflow-wrap:anywhere; }
@media (max-width:850px) { .bio-contenu { grid-template-columns:minmax(0,1fr); } }

/* Un bandeau compact, avec une seconde ligne seulement si la place manque. */
.bio-entete-compact { padding:.45rem 1rem; gap:.35rem 1rem; }
.bio-entete-compact > div:first-child { display:flex; align-items:baseline; flex-wrap:wrap; gap:.15rem .65rem; min-width:0; }
.bio-entete-compact p,.bio-entete-compact h1 { margin:0; }
.bio-entete-compact h1 { font-size:1.35rem; line-height:1.2; overflow-wrap:anywhere; }
.bio-entete-compact span { white-space:nowrap; }
.bio-entete-compact > div:last-child { margin-inline-start:auto; }

.bio-edition { margin:1rem 0; border:1px solid var(--theme-bordure); border-radius:.65rem; }
.bio-edition summary { padding:.6rem .9rem; color:var(--theme-principale); font-weight:600; cursor:pointer; }
.bio-edition form { padding:.25rem .9rem .9rem; }
