
:root{--fond:#faf7f2;--encre:#2b2622;--doux:#6b6055;--trait:#e2d9cc;--sepia:#8c6d46;--carte:#fff}
.famille-site{background:var(--fond);color:var(--encre);font:17px/1.7 Georgia,'Iowan Old Style','Times New Roman',serif;margin:0 auto;padding:8px 0 40px;border-radius:4px}
.famille-site a{color:var(--sepia)}
/* formulaire de demande d'acces */
.fam-inscription{display:flex;flex-direction:column;gap:16px;max-width:500px;margin:26px 0;background:var(--carte);border:1px solid var(--trait);border-left:3px solid var(--sepia);border-radius:4px;padding:24px 26px}
.fam-inscription label{display:flex;flex-direction:column;gap:5px;font-size:.95rem}
.fam-inscription input,.fam-inscription textarea{padding:10px 12px;border:1px solid var(--trait);border-radius:3px;font:inherit;font-size:1rem;background:var(--carte);color:var(--encre);resize:vertical}
.fam-inscription button{align-self:flex-start;background:var(--sepia);color:#fff;border:0;padding:11px 22px;border-radius:3px;font:inherit;font-size:1rem;cursor:pointer}
.fam-inscription button:hover{opacity:.9}
.fam-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.fam-erreur{color:#a8443a;font-weight:600}
/* la page 'Demander un accès' ne doit pas figurer dans le menu des membres ;
   elle reste atteignable depuis l'écran de connexion. Le lien du verrou (hors <header>) n'est pas touché. */
header a[href*="/acces"]{display:none!important}
.famille-site h1,.famille-site h2,.famille-site h3{color:var(--encre)}
/* le theme affiche deja un titre de page ; nos pages ont le leur -> on masque celui du theme */
.wp-block-post-title{display:none!important}
/* visiteur non connecte : on masque le menu et la liste des pages (il ne voit que la porte) */
/* visiteur NON connecte : rien d'autre que la carte (connexion / demander un acces) */
body:not(.logged-in) .wp-site-blocks > header,
body:not(.logged-in) .wp-site-blocks > footer,
body:not(.logged-in) .wp-block-template-part:has(> header),
body:not(.logged-in) header.wp-block-template-part,
body:not(.logged-in) footer.wp-block-template-part,
body:not(.logged-in) .wp-block-navigation,
body:not(.logged-in) .wp-block-page-list,
body:not(.logged-in) nav.wp-block-navigation{display:none!important}
body:not(.logged-in) .wp-block-post-title{display:none!important}
*{box-sizing:border-box}
body{margin:0;background:var(--fond);color:var(--encre);
  font:17px/1.7 Georgia,"Iowan Old Style","Times New Roman",serif}
.dedans{max-width:900px;margin:0 auto;padding:0 22px}
img{max-width:100%;height:auto;display:block}
a{color:var(--sepia)}
h1,h2,h3{font-weight:600;line-height:1.25;letter-spacing:-.01em}
h1{font-size:2.1rem;margin:.6em 0 .2em}
h2{font-size:1.45rem;margin:2.2em 0 .5em}
.chapeau{color:var(--doux);font-size:1.08rem}
.tete{border-bottom:1px solid var(--trait);background:var(--fond);position:sticky;top:0;z-index:10}
.tete .dedans{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;padding-top:14px;padding-bottom:14px}
.marque{font-size:1.15rem;font-weight:600;text-decoration:none;color:var(--encre)}
.marque span{display:block;font-size:.78rem;color:var(--doux);font-style:italic}
.tete nav{display:flex;flex-wrap:wrap;gap:18px}
.tete nav a{text-decoration:none;color:var(--doux);font-size:.95rem}
.tete nav a.actif,.tete nav a:hover{color:var(--sepia)}
.heros{border-bottom:1px solid var(--trait);padding:64px 0 52px;text-align:center}
.heros h1{font-size:clamp(2.2rem,6vw,3.4rem);margin:.1em 0 .35em}
.heros .sur{color:var(--doux);font-style:italic;margin:0;font-size:.98rem}
.heros .chapeau{max-width:620px;margin:0 auto}
.dedans.recit{max-width:720px}
.recit p{margin:1.1em 0}
.recit h2{margin:2em 0 .45em;line-height:1.3}
.recit ul,.recit ol{margin:1.1em 0}
.recit li{margin:.4em 0}
.portrait{margin:34px auto;max-width:390px;text-align:center}
.portrait img{border-radius:3px;box-shadow:0 3px 26px rgba(0,0,0,.18);margin:0 auto}
figcaption{color:var(--doux);font-size:.9rem;font-style:italic;margin-top:.7em}
.duo{margin:36px auto;max-width:760px;display:flex;flex-wrap:wrap;gap:14px;justify-content:center;align-items:flex-end}
.duo img{flex:1 1 300px;max-width:100%;height:auto;border-radius:3px;box-shadow:0 3px 26px rgba(0,0,0,.18)}
.duo figcaption{flex-basis:100%;text-align:center;margin-top:.4em}
.encart{border:1px solid var(--trait);border-left:3px solid var(--sepia);
  background:var(--carte);padding:20px 24px;border-radius:3px;margin:34px 0}
.encart.doux{border-left-color:var(--trait)}
.encart h2{margin-top:0;font-size:1.2rem}
.bouton{display:inline-block;background:var(--sepia);color:#fff;text-decoration:none;
  padding:9px 18px;border-radius:3px;font-size:.95rem}
.frise{list-style:none;padding:0;margin:34px 0;border-left:2px solid var(--trait)}
.frise li{position:relative;padding:0 0 26px 26px}
.frise li::before{content:"";position:absolute;left:-7px;top:9px;width:12px;height:12px;
  border-radius:50%;background:var(--fond);border:2px solid var(--trait)}
.frise li.cle::before{background:var(--sepia);border-color:var(--sepia)}
.frise .date{color:var(--sepia);font-size:.86rem;letter-spacing:.03em;text-transform:uppercase}
/* Freminville : en teinte plus claire, pour distinguer l'hypothese des faits */
.frise li.frem{opacity:.72}
.frise li.frem::before{background:var(--fond);border-color:#9a7b2f;border-style:dashed}
.frise li.frem .date{color:#9a7b2f}
.frise li.frem h3{color:#9a7b2f;font-weight:500;font-style:italic}
.pastille-frem{display:inline-block;width:11px;height:11px;border-radius:50%;border:2px dashed #9a7b2f;vertical-align:middle;margin-right:4px}
/* Creton de Limerville : seconde piste, teinte prune */
.frise li.creton{opacity:.72}
.frise li.creton::before{background:var(--fond);border-color:#7a2f4f;border-style:dashed}
.frise li.creton .date{color:#7a2f4f}
.frise li.creton h3{color:#7a2f4f;font-weight:500;font-style:italic}
.pastille-creton{display:inline-block;width:11px;height:11px;border-radius:50%;border:2px dashed #7a2f4f;vertical-align:middle;margin-right:4px}
/* titres de piste dans la page « question ouverte » */
.recit h2.piste{margin-top:1.7em;padding-left:12px;border-left:4px solid var(--sepia)}
.recit h2.piste-frem{border-left-color:#9a7b2f}
.recit h2.piste-creton{border-left-color:#7a2f4f}
/* date supposee (famille) : trait pointille, mais couleur sepia, pas ocre Freminville */
.frise li.suppo::before{background:var(--fond);border-color:var(--sepia);border-style:dashed}
.frise li.suppo .date{font-style:italic}
.frise li.suppo h3{font-style:italic;font-weight:500}
.frise h3{margin:.15em 0 .2em;font-size:1.1rem}
.frise p{margin:0;color:var(--doux)}
.fiches{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin:30px 0}
.fiche{border:1px solid var(--trait);background:var(--carte);border-radius:3px;padding:18px 20px}
.fiche h3{margin:0;font-size:1.08rem}
.groupe-pers{margin:34px 0 4px;font-size:1.3rem;padding-bottom:6px;border-bottom:2px solid var(--trait)}
.groupe-pers:first-of-type{margin-top:14px}
/* l'arbre deborde la colonne de lecture et prend toute la largeur de l'ecran */
.arbre-svg{overflow-x:auto;background:var(--carte);border-top:1px solid var(--trait);
  border-bottom:1px solid var(--trait);padding:16px 20px;
  width:100vw;position:relative;left:50%;right:50%;margin:24px -50vw}
.arbre-svg svg{display:block;height:auto;max-width:none}
.fiche .dates{color:var(--sepia);font-size:.86rem;margin:.2em 0 .7em}
.fiche p{margin:0;font-size:.96rem}
/* --- la carte --- */
.choix{display:flex;flex-wrap:wrap;gap:10px 18px;margin:22px 0 14px}
.choix label{display:flex;align-items:center;gap:7px;font-size:.9rem;cursor:pointer;
  border:1px solid var(--trait);border-radius:99px;padding:4px 13px;background:var(--carte)}
.choix input{margin:0}
.pastille{width:11px;height:11px;border-radius:50%;display:inline-block}
.cadre-carte{border:1px solid var(--trait);background:var(--carte);border-radius:3px;
  padding:10px;margin:14px 0;position:relative;overflow:hidden;touch-action:none;cursor:grab}
.cadre-carte.drag{cursor:grabbing}
.carte{width:100%;height:auto;display:block}
.zoomable{transform-origin:0 0;will-change:transform;display:block;width:100%}
.plan-rennes{position:relative;line-height:0}
.fond-rennes{width:100%;height:auto;display:block;border-radius:2px}
.plan{position:absolute;inset:0;width:100%;height:100%}
.plan .adr circle{fill:var(--sepia);stroke:#fff;stroke-width:3;vector-effect:non-scaling-stroke}
.plan .adr text{font-size:20px;fill:#1a1206;font-family:Georgia,serif;font-weight:600;paint-order:stroke;stroke:#fff;stroke-width:4px;stroke-linejoin:round}
.plan .adr tspan{fill:var(--sepia);font-size:16px;font-weight:400}
.credit-carte{color:var(--doux);font-size:.74rem;margin:2px 0 20px}
/* liens vers la galerie + cible surlignee un instant */
.voir-doc{display:inline-block;margin-top:6px;font-size:.82rem;text-decoration:none;color:var(--sepia)}
.voir-doc:hover{text-decoration:underline}
.liens-croises{display:flex;flex-wrap:wrap;gap:14px;margin-top:6px}
.voir-lieu{font-size:.82rem;text-decoration:none;color:var(--sepia)}
.voir-lieu:hover{text-decoration:underline}
.adresses li{scroll-margin-top:90px}
.adresses li:target{background:rgba(140,109,70,.12);border-radius:4px;padding-left:8px}
.cadre-carte{scroll-margin-top:90px}
.piece{scroll-margin-top:90px}
.piece:target{outline:2px solid var(--sepia);outline-offset:3px}
.piece:target img{animation:flash 1.4s ease}
@keyframes flash{0%,40%{box-shadow:0 0 0 4px rgba(140,109,70,.5)}100%{box-shadow:none}}
.zoom-ctrl{position:absolute;top:16px;right:16px;display:flex;flex-direction:column;gap:5px;z-index:2}
.zoom-ctrl button{width:34px;height:34px;border:1px solid var(--trait);background:var(--fond);
  color:var(--encre);border-radius:6px;font-size:1.15rem;line-height:1;cursor:pointer;
  display:flex;align-items:center;justify-content:center;padding:0}
.zoom-ctrl button:hover{border-color:var(--sepia);color:var(--sepia)}
.zoom-ctrl button.rz{font-size:.9rem}
.zoom-aide{position:absolute;left:16px;bottom:14px;font-size:.72rem;color:var(--doux);
  background:var(--fond);padding:2px 8px;border-radius:99px;border:1px solid var(--trait);pointer-events:none}
.hexagone{fill:rgba(140,109,70,.07);stroke:var(--trait);stroke-width:2;stroke-linejoin:round}
.parcours polyline{fill:none;stroke:var(--c);stroke-width:2.4;stroke-linejoin:round;stroke-linecap:round;opacity:.85;vector-effect:non-scaling-stroke}
.parcours circle{fill:var(--c);stroke:var(--carte);stroke-width:2;vector-effect:non-scaling-stroke}
.ville circle{fill:var(--encre);opacity:.5}
.ville .lead{stroke:var(--doux);stroke-width:.7;opacity:.55;vector-effect:non-scaling-stroke}
.ville,.adr{cursor:pointer}
.ville:hover text,.adr:hover text{fill:var(--sepia)}
.ouvre-lieu{background:none;border:0;padding:0;font:inherit;font-weight:600;color:var(--sepia);cursor:pointer;text-align:left}
.ouvre-lieu:hover{text-decoration:underline}
.carte-zone{display:flex;flex-wrap:wrap;gap:18px;align-items:flex-start;margin:14px 0}
.carte-col{flex:1 1 440px;min-width:0}
.carte-col .cadre-carte{margin:0}
.carte-zone .lieu-encart{flex:1 1 300px;min-width:260px;margin:0;position:sticky;top:16px;max-height:80vh;overflow-y:auto}
@media(max-width:720px){.carte-zone .lieu-encart{position:static;max-height:none;flex-basis:100%}}
.lieu-encart{border:1px solid var(--trait);border-left:3px solid var(--sepia);background:var(--carte);border-radius:4px;padding:16px 18px}
.enc-tete{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}
.enc-nom{font-size:1.12rem}
.enc-fermer{background:none;border:0;color:var(--doux);font:inherit;font-size:.82rem;cursor:pointer;text-decoration:underline}
.enc-fermer:hover{color:var(--sepia)}
.enc-vide{margin:0;color:var(--doux);font-size:.9rem;font-style:italic}
.enc-corps .fam-sujet-bloc{margin-top:0}
.enc-corps .fam-fil-visible{margin-top:4px}
.ville text{font-size:13px;fill:var(--encre);font-family:Georgia,serif;paint-order:stroke;stroke:var(--fond);stroke-width:3px;stroke-linejoin:round}
.parcours.masque{display:none}
.vgrp.masque{display:none}
.plan .vparc polyline{fill:none;stroke-width:3.4;opacity:.9;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:1.5 8;vector-effect:non-scaling-stroke}
.plan .adr .lead,.plan .lead{fill:none;stroke:#b3a488;stroke-width:1.2;vector-effect:non-scaling-stroke}
.plan .mcas{fill:none;stroke:#fff;stroke-width:8;stroke-linejoin:round;stroke-linecap:round;opacity:.85;vector-effect:non-scaling-stroke}
.plan .mln{fill:none;stroke-width:4.5;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
.plan .mst{fill:#fff;stroke:#555;stroke-width:1.2;vector-effect:non-scaling-stroke}
.plan .mnum{font-size:19px;font-weight:700;text-anchor:middle;font-family:system-ui,sans-serif;stroke:none}
.plan .mgr circle:last-of-type{vector-effect:non-scaling-stroke}
.choix-ville .pastille{width:12px;height:12px;border-radius:50%;flex:none}
.choix-ville .mrd{display:inline-flex;align-items:center;justify-content:center;width:21px;height:21px;border-radius:50%;font-size:.72rem;font-weight:700}
.choix-ville .metgrp{padding-left:14px;border-left:1px solid var(--trait);display:inline-flex;gap:9px;align-items:center}
.choix-ville .metgrp b{font-size:.85rem;color:var(--doux);font-weight:600}
.hors-plan{font-size:.85rem;color:var(--doux);margin:6px 0 0}
.plan .adr circle{fill:var(--sepia);stroke:var(--carte);stroke-width:2.5}
.plan .adr text{font-size:15px;fill:var(--encre);font-family:Georgia,serif}
.plan .adr tspan{fill:var(--doux);font-size:12px}
.legende-carte{list-style:none;padding:0;margin:14px 0 34px}
.legende-carte li{padding:7px 0;border-bottom:1px solid var(--trait);font-size:.92rem;color:var(--doux)}
.legende-carte li.masque{display:none}
.adresses{list-style:none;padding:0;margin:12px 0 26px}
.adresses li{padding:8px 0;border-bottom:1px solid var(--trait);font-size:.92rem}
.adresses em{display:block;color:var(--doux);font-style:normal;font-size:.86rem;margin-top:2px}
.adresses .arr{color:var(--sepia);font-size:.82rem;font-weight:400;margin-left:4px}
.adresses em.src-adr{font-style:italic;font-size:.78rem;opacity:.85;margin-top:1px}
.hors-carte{color:var(--doux);font-size:.9rem;font-style:italic;margin:6px 0 30px}
/* --- arbre par generations --- */
.genea{margin:24px 0 8px}
.gen{margin:0}
.gen-tag{display:inline-block;font-size:.74rem;text-transform:uppercase;letter-spacing:.09em;
  color:var(--sepia);margin-bottom:8px}
.foyers{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.foyer{border:1px solid var(--trait);background:var(--carte);border-radius:4px;padding:13px 16px}
.foyer-cle{border-left:3px solid var(--sepia)}
.foyer .couple{margin:0;font-size:1rem}
.foyer .couple b{font-weight:600}
.foyer .x{color:var(--sepia);margin:0 5px}
.foyer .dt{color:var(--sepia);font-size:.82rem;margin-left:4px}
.foyer .det{margin:.45em 0 0;font-size:.88rem;color:var(--doux);line-height:1.55}
.fleche{text-align:center;color:var(--trait);font-size:1.5rem;line-height:1;margin:6px 0}
/* --- arbre genealogique --- */
.arbre,.arbre ul{list-style:none;padding:0;margin:0}
.arbre{margin:26px 0 34px}
.arbre ul{margin:10px 0 0 14px;padding-left:20px;border-left:2px solid var(--trait)}
.arbre li{position:relative;padding:10px 0 10px 16px}
.arbre ul>li::before{content:"";position:absolute;left:-20px;top:24px;width:16px;
  height:2px;background:var(--trait)}
.arbre .pers{font-weight:600}
.arbre .cple{font-weight:600}
.arbre .x{color:var(--sepia);font-weight:400;margin:0 4px}
.arbre .dt{color:var(--sepia);font-size:.85rem;margin-left:6px}
.arbre .lieu{display:block;color:var(--doux);font-size:.86rem;line-height:1.5;margin-top:2px}
.arbre li.cle>.pers{color:var(--sepia)}
.arbre li.adn>.pers{color:#5d7a4f}
.arbre.asc>li{padding-left:0}
.arbre .rôle{display:inline-block;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;
  color:var(--doux);border:1px solid var(--trait);border-radius:99px;padding:1px 8px;margin-right:6px}
.note-arbre{color:var(--doux);font-size:.9rem;font-style:italic;margin:-14px 0 30px}
.lien-hypo{text-align:center;margin:26px 0 0;font-weight:600}
.lien-hypo .pointille{color:var(--sepia);font-weight:400;letter-spacing:1px}
.lien-hypo em{display:block;font-weight:400;color:var(--doux);font-size:.9rem;margin-top:4px}
.piste h3{margin:.1em 0 .5em;font-size:1.08rem}
.piste .etat{display:inline-block;font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;
  border:1px solid var(--trait);border-radius:99px;padding:2px 10px;color:var(--doux);margin:0 0 .5em}
.piste.ok{border-left:3px solid #5d7a4f}
.piste.ok .etat{color:#5d7a4f;border-color:#5d7a4f}
.piste.cours{border-left:3px solid var(--sepia)}
.piste.cours .etat{color:var(--sepia);border-color:var(--sepia)}
.piste.mur{border-left:3px solid var(--doux)}
#recherche{width:100%;padding:12px 15px;margin:22px 0 6px;border:1px solid var(--trait);
  border-radius:3px;background:var(--carte);color:var(--encre);font:inherit;font-size:1rem}
.ancres{display:flex;flex-wrap:wrap;gap:14px;margin:10px 0 8px;font-size:.9rem}
.ancres a{color:var(--doux)}
.lot{margin:46px 0;scroll-margin-top:90px}
.grille{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));margin-top:18px}
.piece{margin:0;border:1px solid var(--trait);background:var(--carte);border-radius:3px;overflow:hidden;display:flex;flex-direction:column}
.piece .loupe{display:block;background:#efe9e0;cursor:zoom-in;padding:8px}
/* contain, pas cover : un document d'archive doit se voir en entier */
.piece img{width:100%;aspect-ratio:3/4;object-fit:contain}
.piece figcaption{padding:12px 14px 14px;font-style:normal;display:flex;flex-direction:column;gap:8px;flex:1}
.piece figcaption p{margin:0;font-size:.88rem;color:var(--encre);line-height:1.5;flex:1}
.an{color:var(--sepia);font-size:.78rem;letter-spacing:.05em}
.dl{font-size:.82rem;text-decoration:none;border-top:1px solid var(--trait);padding-top:9px}
.dl span{color:var(--doux)}
#visionneuse{position:fixed;inset:0;background:rgba(18,15,12,.95);z-index:50;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:26px}
/* imperatif : sans cette regle, display:flex ecrase l'attribut hidden et le calque
   recouvre toute la page en permanence. */
#visionneuse[hidden]{display:none}
#visionneuse img{max-width:94vw;max-height:82vh;object-fit:contain}
#cartouche{color:#e8e0d4;font-size:.92rem;font-style:italic;text-align:center;max-width:700px;margin:0}
#fermer{position:absolute;top:14px;right:18px;background:none;border:0;color:#e8e0d4;
  font-size:2.4rem;line-height:1;cursor:pointer}
footer{border-top:1px solid var(--trait);margin-top:70px;padding:30px 0 46px;
  color:var(--doux);font-size:.88rem}
footer p{margin:.4em 0}
.prive{font-style:italic}

/* --- ajouts WordPress --- */
/* le theme force la couleur des liens du contenu : on reimpose le blanc sur les boutons */
.famille-site a.bouton,.famille-site a.bouton:link,.famille-site a.bouton:visited,
.famille-site a.bouton:hover,.famille-site a.bouton:focus{color:#fff !important}
.fam-verrou{max-width:520px;margin:40px auto;border:1px solid var(--trait);
  background:var(--carte);padding:30px 32px;border-radius:5px}
.fam-verrou h2{margin-top:0}
.fam-verrou .fam-aide{color:var(--doux);font-size:.9rem;font-style:italic}
.famille-site .fam-form{margin:18px 0 6px}
.famille-site .fam-form .champ{margin:0 0 18px}
.famille-site .fam-form label{display:block!important;font-size:.95rem;font-weight:600;color:var(--encre);margin:0 0 5px}
.famille-site .fam-form .aide-champ{display:block!important;font-size:.82rem;font-weight:400;color:var(--doux);margin:0 0 7px;line-height:1.45}
.famille-site .fam-verrou form input[type=text],.famille-site .fam-verrou form input[type=password],.famille-site .fam-verrou form input[type=email],.famille-site .fam-verrou form textarea{display:block!important;width:100%!important;box-sizing:border-box!important;padding:11px 13px!important;margin:0!important;border:1px solid var(--trait)!important;border-radius:4px!important;background:var(--carte)!important;color:var(--encre)!important;font:inherit!important;font-size:1rem!important;line-height:1.5!important;resize:vertical}
.famille-site .fam-verrou form textarea{min-height:90px}
.famille-site .fam-verrou form input:focus,.famille-site .fam-verrou form textarea:focus{outline:none!important;border-color:var(--sepia)!important;box-shadow:0 0 0 2px rgba(140,109,70,.2)!important}
.famille-site .fam-verrou .bouton{display:inline-block;margin-top:6px;border:0;cursor:pointer;font-size:1rem;padding:12px 24px;background:var(--sepia);color:#fff;border-radius:4px}
.famille-site .fam-verrou .bouton{text-decoration:none;text-align:center}
.famille-site .fam-boutons{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:20px}
.famille-site .fam-boutons .bouton{margin-top:0}
.famille-site a.bouton.bouton-clair,.famille-site a.bouton.bouton-clair:link,.famille-site a.bouton.bouton-clair:visited,.famille-site a.bouton.bouton-clair:focus{background:transparent!important;color:var(--sepia)!important;border:1px solid var(--sepia)!important}
.famille-site a.bouton.bouton-clair:hover{background:rgba(140,109,70,.08)!important;color:var(--sepia)!important;border:1px solid var(--sepia)!important}
.famille-site .fam-remember{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--doux);font-weight:400;margin:6px 0 0}
.famille-site .fam-remember input{width:auto!important;margin:0}
.fam-verrou input[type=submit]{background:var(--sepia);color:#fff;border:0;
  padding:9px 18px;border-radius:3px;font:inherit;cursor:pointer}
/* navigation embarquee (le theme par blocs n'a pas d'emplacement de menu) */
.fam-nav{display:flex;flex-wrap:wrap;gap:10px 26px;align-items:baseline;
  justify-content:space-between;max-width:900px;margin:0 auto 26px;padding:0 22px 16px;
  border-bottom:1px solid var(--trait)}
.fam-marque{font-size:1.1rem;font-weight:600}
.fam-marque em{display:block;font-size:.76rem;color:var(--doux);font-weight:400}
.fam-liens{display:flex;flex-wrap:wrap;gap:18px}
.fam-liens a{text-decoration:none;color:var(--doux);font-size:.95rem}
.fam-liens a.ici,.fam-liens a:hover{color:var(--sepia)}
/* --- les echanges --- */
.fam-echanges{max-width:900px;margin:56px auto 0;padding:30px 22px 0;border-top:1px solid var(--trait)}
.fam-echanges h2{margin-top:0}
.fam-intro{color:var(--doux);font-size:.97rem;max-width:640px}
.fam-vide{color:var(--doux);font-style:italic}
.fam-fil,.fam-fil ol{list-style:none;padding:0;margin:26px 0}
.fam-fil ol.children{margin:16px 0 0 26px;padding-left:20px;border-left:2px solid var(--trait)}
.fam-fil li.comment{margin:0 0 20px}
.fam-fil article,.fam-fil .comment-body{border:1px solid var(--trait);background:var(--carte);
  border-radius:3px;padding:16px 18px}
.fam-fil .comment-author{display:flex;align-items:center;gap:10px;font-size:.95rem}
.fam-fil .comment-author img{border-radius:50%}
.fam-fil .comment-author .says{display:none}
.fam-fil .comment-meta,.fam-fil .comment-metadata{font-size:.8rem;color:var(--doux);margin:.3em 0 .8em}
.fam-fil .comment-meta a,.fam-fil .comment-metadata a{color:var(--doux);text-decoration:none}
.fam-fil p{margin:.5em 0;font-size:.98rem}
.fam-fil .reply{margin-top:.6em}
.fam-fil .comment-reply-link{font-size:.85rem;color:var(--sepia);text-decoration:none;
  border:1px solid var(--trait);border-radius:99px;padding:3px 12px}
#respond{border:1px solid var(--trait);background:var(--carte);border-radius:3px;
  padding:20px 22px;margin:30px 0 10px}
#respond h3,#reply-title{margin:0 0 .6em;font-size:1.15rem;font-weight:600}
.fam-signe{color:var(--doux);font-size:.9rem;margin:0 0 .8em}
.fam-champ textarea{width:100%;padding:11px 13px;border:1px solid var(--trait);border-radius:3px;
  font:inherit;font-size:.98rem;background:var(--fond);color:var(--encre);resize:vertical}
.fam-envoyer,#respond input[type=submit]{background:var(--sepia);color:#fff;border:0;
  padding:10px 22px;border-radius:3px;font:inherit;cursor:pointer}
.fam-envoyer:hover,#respond input[type=submit]:hover{opacity:.9}
#cancel-comment-reply-link{font-size:.85rem;color:var(--doux);margin-left:10px}
/* --- fils attaches a un element precis --- */
.fam-sujet-bloc{display:block;margin-top:10px}
.fam-ouvrir{background:none;border:1px dashed var(--trait);color:var(--doux);border-radius:99px;
  padding:3px 12px;font:inherit;font-size:.78rem;cursor:pointer}
.fam-ouvrir:hover{border-style:solid;color:var(--sepia);border-color:var(--sepia)}
.fam-ouvrir[aria-expanded="true"]{border-style:solid;color:var(--sepia);border-color:var(--sepia)}
.fam-fil-visible{display:block;margin-top:10px;border-left:2px solid var(--trait);padding-left:12px}
.fam-sujet-form{display:block;margin-top:10px}
/* IMPERATIF : sans cette regle, display:block ecrase l'attribut hidden et le
   formulaire reste deplie en permanence. Meme piege que #visionneuse. */
.fam-sujet-form[hidden]{display:none}
.fam-mot{display:block;margin:0 0 10px}
.fam-qui{display:block;font-size:.78rem;color:var(--sepia)}
.fam-qui em{color:var(--doux);font-style:normal;margin-left:6px}
.fam-txt{display:block;font-size:.9rem;line-height:1.55;white-space:pre-wrap}
.fam-mini{display:block;margin-top:8px}
.fam-mini textarea{width:100%;padding:8px 10px;border:1px solid var(--trait);border-radius:3px;
  font:inherit;font-size:.88rem;background:var(--fond);color:var(--encre);resize:vertical}
.fam-mini button{margin-top:6px;background:var(--sepia);color:#fff;border:0;padding:6px 16px;
  border-radius:3px;font:inherit;font-size:.85rem;cursor:pointer}
.frise .fam-sujet-bloc{margin-top:8px}
