
:root{
  --plum:#4A2257; --plum-2:#6B3A7D; --lav:#B89BE0; --lav-2:#D9CBF2; --lav-3:#F3EEFB;
  --green:#5FA36A; --teal:#2F9C95; --ink:#241530; --muted:#6A5A75; --white:#fff;
  --radius:18px; --max:1180px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--white);line-height:1.6;overflow-x:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
h1,h2,h3,.display{font-family:Archivo,sans-serif;line-height:1.05;letter-spacing:-.01em}
h2{font-size:clamp(2rem,4.5vw,3.2rem);font-weight:900;font-style:italic;text-transform:uppercase;color:var(--plum)}
h2 .star{color:var(--lav)}
.eyebrow{font-weight:600;text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:var(--plum-2)}
.btn{display:inline-flex;align-items:center;gap:.5em;padding:.85em 1.6em;border-radius:999px;font-weight:600;text-decoration:none;border:2px solid transparent;cursor:pointer;font-size:1rem;transition:transform .15s,background .15s}
.btn:hover{transform:translateY(-2px)}
.btn-plum{background:var(--plum);color:#fff}
.btn-lav{background:var(--lav);color:var(--plum)}
.btn-line{border-color:currentColor;background:transparent}
section{padding:90px 0}

/* Bandeau d'aide */
.helpbar{background:var(--lav);color:var(--plum);font-size:.85rem;font-weight:600;text-align:center;padding:8px 20px;text-transform:uppercase;letter-spacing:.06em}
.helpbar a{color:#fff;background:var(--plum);padding:2px 10px;border-radius:999px;text-decoration:none;margin-left:6px;white-space:nowrap}
.quick-exit{position:fixed;right:16px;bottom:16px;z-index:60;background:#C0392B;color:#fff;border:none;border-radius:999px;padding:12px 18px;font-weight:600;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.2)}

/* Header */
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--lav-2)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;height:78px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand svg{width:52px;height:52px}
.brand span{font-family:Archivo,sans-serif;font-weight:600;color:var(--plum-2);text-transform:uppercase;font-size:.95rem;line-height:1.1;letter-spacing:.02em}
.menu{display:flex;gap:18px;list-style:none;align-items:center}
.menu a{text-decoration:none;font-weight:500;color:var(--plum-2);font-size:.95rem}
.menu a:hover{color:var(--plum)}
.menu a{white-space:nowrap}
.menu a.btn{color:#fff;padding:.6em 1.3em}
.burger{display:none;background:none;border:none;cursor:pointer;padding:8px}
.burger span{display:block;width:26px;height:3px;background:var(--plum);margin:5px 0;border-radius:2px}

/* Hero */
.hero{background:linear-gradient(135deg,var(--plum) 0%,var(--plum-2) 55%,var(--lav) 130%);color:#fff;padding:100px 0 120px;position:relative;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}
.hero h1{font-size:clamp(2.6rem,6.5vw,5rem);font-weight:900;font-style:italic;text-transform:uppercase}
.hero h1 em{color:var(--lav-2);font-style:italic}
.hero p{font-size:1.15rem;max-width:560px;margin:22px 0 32px;opacity:.92}
.hero .ctas{display:flex;gap:14px;flex-wrap:wrap}
.hero .btn-line{color:#fff}
.hero-art{justify-self:center;width:min(380px,100%)}
.hero-art svg{width:100%;height:auto}

/* Marquee */
.marquee{background:var(--lav);color:var(--plum);overflow:hidden;white-space:nowrap;padding:16px 0;font-family:Archivo,sans-serif;font-weight:900;font-style:italic;text-transform:uppercase;font-size:1.4rem}
.marquee .track{display:inline-block;animation:scroll 28s linear infinite}
.marquee span{margin:0 28px}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.marquee .track{animation:none}}

/* Actualités */
.head-row{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:40px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.card{background:var(--lav-3);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.card .thumb{aspect-ratio:16/10;display:grid;place-items:center}
.card .thumb svg{width:38%}
.card .body{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1}
.tag{display:inline-block;background:var(--plum);color:#fff;font-size:.72rem;font-weight:600;padding:3px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.06em}
.date{font-size:.85rem;color:var(--muted)}
.card h3{font-size:1.2rem;font-weight:800;color:var(--plum)}
.card a.more{margin-top:auto;font-weight:600;color:var(--plum-2)}

/* À propos */
.about{background:var(--lav-3)}
.about .wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.quote{font-family:Archivo,sans-serif;font-weight:900;font-style:italic;text-transform:uppercase;font-size:clamp(2rem,4.2vw,3.2rem);color:var(--plum);line-height:1.05}
.quote em{color:var(--lav);font-style:italic}
.about p{margin-bottom:14px;color:var(--muted);font-size:1.05rem}
.about p strong{color:var(--ink)}

/* Chiffres */
.stats{background:var(--plum);color:#fff}
.stats h2{color:#fff}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:40px}
.stat{border-top:3px solid var(--lav);padding-top:18px}
.stat b{display:block;font-family:Archivo,sans-serif;font-size:clamp(2.4rem,5vw,3.6rem);font-weight:900;color:var(--lav-2);line-height:1}
.stat span{opacity:.85}
.note{font-size:.8rem;opacity:.6;margin-top:28px}

/* Missions */
.missions{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}
.mission{border:2px solid var(--lav-2);border-radius:var(--radius);padding:30px;display:flex;flex-direction:column;gap:14px;transition:border-color .2s,transform .2s}
.mission:hover{border-color:var(--lav);transform:translateY(-4px)}
.mission .ico{width:64px;height:64px;border-radius:50%;background:var(--lav-3);display:grid;place-items:center}
.mission h3{font-size:1.35rem;font-weight:800;color:var(--plum)}
.mission ul{padding-left:18px;color:var(--muted)}
.mission a{margin-top:auto;font-weight:600;color:var(--plum-2)}

/* Actions */
.actions{background:var(--lav-3)}
.action-list{display:grid;gap:22px;margin-top:40px}
.action{background:#fff;border-radius:var(--radius);padding:28px;display:grid;grid-template-columns:110px 1fr auto;gap:28px;align-items:center;box-shadow:0 4px 20px rgba(74,34,87,.06)}
.action .circle{width:110px;height:110px;border-radius:50%;display:grid;place-items:center}
.action .circle svg{width:52px}
.action h3{font-size:1.3rem;font-weight:900;font-style:italic;text-transform:uppercase;color:var(--plum)}
.action p{color:var(--muted)}
.action .btns{display:flex;gap:10px;flex-wrap:wrap}

/* Don */
.don .wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.don-box{background:var(--plum);color:#fff;border-radius:24px;padding:34px}
.toggle{display:flex;background:rgba(255,255,255,.12);border-radius:999px;padding:4px;margin-bottom:22px}
.toggle button{flex:1;border:none;background:none;color:#fff;padding:10px;border-radius:999px;font-weight:600;cursor:pointer;font-size:.95rem}
.toggle button.on{background:var(--lav);color:var(--plum)}
.amounts{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.amount{background:rgba(255,255,255,.08);border:2px solid transparent;border-radius:14px;padding:16px;cursor:pointer;text-align:left;color:#fff;font:inherit}
.amount.on{border-color:var(--lav);background:rgba(184,155,224,.18)}
.amount b{font-family:Archivo,sans-serif;font-size:1.6rem;display:block}
.amount small{opacity:.85}
.real{margin:20px 0;font-size:.95rem;background:rgba(255,255,255,.08);padding:12px 16px;border-radius:12px}
.don-box .btn{width:100%;justify-content:center}

/* Agir */
.agir-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:40px}
.agir{background:var(--lav);color:var(--plum);border-radius:var(--radius);padding:30px 24px;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;min-height:200px;font-family:Archivo,sans-serif;font-weight:900;font-style:italic;text-transform:uppercase;font-size:1.5rem;line-height:1.05;transition:background .2s,color .2s}
.agir:nth-child(even){background:var(--plum);color:#fff}
.agir:hover{background:var(--green);color:#fff}
.agir small{font-family:Inter;font-style:normal;text-transform:none;font-weight:500;font-size:.95rem}

/* Événements */
.events{display:grid;gap:14px;margin-top:40px}
.event{display:grid;grid-template-columns:90px 1fr auto;gap:24px;align-items:center;border-bottom:1px solid var(--lav-2);padding:18px 0}
.event .d{background:var(--lav-3);border-radius:14px;text-align:center;padding:10px;font-family:Archivo,sans-serif;color:var(--plum)}
.event .d b{display:block;font-size:1.8rem;line-height:1}
.event h3{font-size:1.15rem;font-weight:800;color:var(--plum)}
.event p{color:var(--muted);font-size:.95rem}

/* Newsletter */
.newsletter{background:linear-gradient(120deg,var(--lav) 0%,var(--lav-2) 100%);text-align:center}
.newsletter form{display:flex;gap:10px;max-width:520px;margin:26px auto 0;flex-wrap:wrap;justify-content:center}
.newsletter input{flex:1;min-width:220px;padding:14px 20px;border-radius:999px;border:2px solid #fff;font:inherit}

/* Footer */
footer{background:var(--ink);color:#d8cfe0;padding:70px 0 30px;font-size:.95rem}
.foot{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
footer h4{font-family:Archivo,sans-serif;color:#fff;text-transform:uppercase;margin-bottom:14px;font-size:.95rem;letter-spacing:.06em}
footer ul{list-style:none;display:grid;gap:8px}
footer a{text-decoration:none}
footer a:hover{color:var(--lav)}
.legal{border-top:1px solid rgba(255,255,255,.1);margin-top:50px;padding-top:24px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.82rem;opacity:.7}
.socials{display:flex;gap:10px;margin-top:18px}
.socials a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);display:grid;place-items:center;font-weight:700}

/* Responsive */
@media (max-width:1150px){
  .menu{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;flex-direction:column;padding:20px;gap:14px;border-bottom:1px solid var(--lav-2)}
  .menu.open{display:flex}
  .burger{display:block}
  .hero .wrap,.about .wrap,.don .wrap{grid-template-columns:1fr}
  .hero-art{max-width:260px}
  .cards,.missions{grid-template-columns:1fr 1fr}
  .stat-grid,.agir-grid{grid-template-columns:1fr 1fr}
  .foot{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  section{padding:64px 0}
  .brand span{font-size:.78rem}
  .cards,.missions,.stat-grid,.agir-grid,.foot{grid-template-columns:1fr}
  .action{grid-template-columns:1fr;text-align:left}
  .action .circle{width:80px;height:80px}
  .event{grid-template-columns:70px 1fr}
  .event .btn{grid-column:1/-1;justify-content:center}
  .amounts{grid-template-columns:1fr}
  .helpbar{font-size:.72rem}
}
/* L'attribut hidden doit toujours gagner. Sans cette ligne, une carte .doc
   (display:flex) restait affichee meme marquee hidden : l'espace benevole
   montrait a chacun les outils de tous les poles. Defaut du 20/09. */
[hidden]{display:none !important}


/* ---- Ajouts v2 ---- */
.brand img{width:54px;height:54px;border-radius:50%}
.menu .btn{padding:.55em 1.1em;font-size:.9rem}
.menu a.btn-lav{color:var(--plum)}
.menu a.active{color:var(--plum);font-weight:700;text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(--lav)}
@media (max-width:1250px){
  .menu{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;flex-direction:column;padding:20px;gap:14px;border-bottom:1px solid var(--lav-2)}
  .menu.open{display:flex}
  .burger{display:block}
}

/* Campagne urgente */
.urgent{background:var(--ink);color:#fff;padding:0}
.urgent .wrap{display:grid;grid-template-columns:auto 1fr auto;gap:30px;align-items:center;padding-top:36px;padding-bottom:36px}
.urgent .pulse{width:64px;height:64px;border-radius:50%;background:#C0392B;display:grid;place-items:center;font-size:1.8rem;box-shadow:0 0 0 0 rgba(192,57,43,.6);animation:pulse 2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 18px rgba(192,57,43,0)}100%{box-shadow:0 0 0 0 rgba(192,57,43,0)}}
@media (prefers-reduced-motion:reduce){.urgent .pulse{animation:none}}
.urgent h2{color:#fff;font-size:clamp(1.5rem,3vw,2.2rem)}
.urgent p{opacity:.85;margin-top:6px}
.urgent .btns{display:flex;gap:10px;flex-wrap:wrap}
.urgent .btn-line{color:#fff}
@media (max-width:900px){.urgent .wrap{grid-template-columns:1fr}}

/* En-tête de page interne */
.page-hero{background:linear-gradient(135deg,var(--plum) 0%,var(--plum-2) 70%,var(--lav) 140%);color:#fff;padding:70px 0 60px}
.page-hero h1{font-size:clamp(2.2rem,5vw,3.8rem);font-weight:900;font-style:italic;text-transform:uppercase}
.page-hero p{max-width:720px;margin-top:16px;font-size:1.1rem;opacity:.92}
.page-hero .btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.page-hero .btn-line{color:#fff}
.crumb{font-size:.85rem;opacity:.8;margin-bottom:14px}
.crumb a{text-decoration:none}

.split{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:start}
@media (max-width:900px){.split{grid-template-columns:1fr}}
.prose p{margin-bottom:14px;color:var(--muted);font-size:1.05rem}
.prose h3{font-size:1.4rem;color:var(--plum);margin:26px 0 10px;font-weight:800}
.prose ul{padding-left:20px;color:var(--muted);margin-bottom:14px}
.prose li{margin-bottom:6px}
.panel{background:var(--lav-3);border-radius:var(--radius);padding:28px}
.panel h3{color:var(--plum);font-weight:800;margin-bottom:10px;font-size:1.25rem}
.panel.dark{background:var(--plum);color:#fff}
.panel.dark h3{color:#fff}
.alert{background:#FDECEA;border-left:5px solid #C0392B;border-radius:12px;padding:18px 20px;color:#5a1a14;margin-bottom:24px}
.alert a{font-weight:700}

/* Formulaires */
form.f{display:grid;gap:18px}
.f label{font-weight:600;color:var(--plum);display:block;margin-bottom:6px;font-size:.95rem}
.f input[type=text],.f input[type=email],.f input[type=tel],.f input[type=number],.f input[type=date],.f select,.f textarea{width:100%;padding:13px 16px;border:2px solid var(--lav-2);border-radius:12px;font:inherit;background:#fff;color:var(--ink)}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--lav)}
.f textarea{min-height:140px;resize:vertical}
.f .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:640px){.f .row{grid-template-columns:1fr}}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips label{margin:0;font-weight:500;color:var(--ink);cursor:pointer}
.chips input{position:absolute;opacity:0;pointer-events:none}
.chips span{display:inline-block;padding:9px 16px;border-radius:999px;border:2px solid var(--lav-2);background:#fff;transition:all .15s}
.chips input:checked + span{background:var(--plum);border-color:var(--plum);color:#fff}
.chips input:focus-visible + span{outline:3px solid var(--lav)}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;color:var(--muted)}
.consent input{margin-top:4px;accent-color:var(--plum)}
.hp{display:none!important}
.hint{font-size:.85rem;color:var(--muted);margin-top:4px}

/* Missions bénévolat */
.mlist{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:30px}
@media (max-width:760px){.mlist{grid-template-columns:1fr}}
.mcard{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fff;border:2px solid var(--lav-2);border-radius:16px;padding:18px 20px;text-decoration:none;transition:border-color .15s,transform .15s}
.mcard:hover{border-color:var(--lav);transform:translateY(-2px)}
.mcard b{color:var(--plum);font-size:1rem;line-height:1.35}
.mcard small{display:block;color:var(--muted);margin-top:4px}
.mcard .go{flex:none;width:40px;height:40px;border-radius:50%;background:var(--lav);color:var(--plum);display:grid;place-items:center;font-weight:700}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}
.filters button{border:2px solid var(--lav-2);background:#fff;border-radius:999px;padding:8px 16px;font:inherit;cursor:pointer;color:var(--plum)}
.filters button.on{background:var(--plum);color:#fff;border-color:var(--plum)}

/* Étapes */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px;counter-reset:s}
@media (max-width:900px){.steps{grid-template-columns:1fr}}
.step{position:relative;background:#fff;border-radius:var(--radius);padding:30px 26px 26px;border:2px solid var(--lav-2)}
.step::before{counter-increment:s;content:counter(s);font-family:Archivo,sans-serif;font-weight:900;font-style:italic;font-size:3.4rem;color:var(--lav);line-height:1;display:block;margin-bottom:8px}
.step h3{color:var(--plum);font-weight:800;margin-bottom:8px}
.step p{color:var(--muted)}

/* Occasions */
.occasions{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:30px}
@media (max-width:900px){.occasions{grid-template-columns:1fr 1fr}}
.occ{border-radius:var(--radius);padding:24px;color:#fff;min-height:170px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;border:none;text-align:left;font:inherit;transition:transform .15s}
.occ:hover{transform:translateY(-3px)}
.occ .e{font-size:2rem}
.occ b{font-family:Archivo,sans-serif;font-style:italic;font-weight:900;text-transform:uppercase;font-size:1.2rem;line-height:1.1}
.occ small{opacity:.85}

/* Collectes */
.camp{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:30px}
@media (max-width:900px){.camp{grid-template-columns:1fr}}
.ccard{background:#fff;border-radius:var(--radius);overflow:hidden;border:2px solid var(--lav-2);display:flex;flex-direction:column}
.ccard .top{padding:22px;color:#fff;min-height:110px;display:flex;flex-direction:column;justify-content:flex-end}
.ccard .top small{opacity:.85;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:600}
.ccard .top b{font-family:Archivo,sans-serif;font-weight:800;font-size:1.2rem;line-height:1.2}
.ccard .bd{padding:20px 22px;display:flex;flex-direction:column;gap:12px;flex:1}
.ccard .bd p{color:var(--muted);font-size:.95rem}
.bar{height:10px;border-radius:999px;background:var(--lav-3);overflow:hidden}
.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--plum),var(--lav))}
.meta{display:flex;justify-content:space-between;font-size:.85rem;color:var(--muted)}
.ccard .acts{display:flex;gap:8px;margin-top:auto;flex-wrap:wrap}
.ccard .btn{padding:.6em 1.1em;font-size:.9rem}
.empty{grid-column:1/-1;text-align:center;padding:40px;border:2px dashed var(--lav);border-radius:var(--radius);color:var(--muted)}

/* Kit / modèles */
.tpl{background:#fff;border:2px solid var(--lav-2);border-radius:16px;padding:20px;position:relative}
.tpl pre{white-space:pre-wrap;font-family:Inter,sans-serif;color:var(--ink);font-size:.95rem}
.tpl button{position:absolute;top:14px;right:14px}
.tips{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:24px}
@media (max-width:760px){.tips{grid-template-columns:1fr}}
.tip{display:flex;gap:14px;align-items:flex-start;background:#fff;border-radius:16px;padding:20px}
.tip .n{flex:none;width:42px;height:42px;border-radius:50%;background:var(--lav);color:var(--plum);display:grid;place-items:center;font-size:1.3rem}
.tip b{color:var(--plum)}
.tip p{color:var(--muted);font-size:.95rem}

/* Documents / presse */
.docs{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}
@media (max-width:900px){.docs{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.docs{grid-template-columns:1fr}}
.doc{background:#fff;border:2px solid var(--lav-2);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:10px}
.doc .ico{width:52px;height:52px;border-radius:12px;background:var(--lav-3);display:grid;place-items:center;font-size:1.5rem}
.doc h3{color:var(--plum);font-weight:800;font-size:1.1rem}
.doc p{color:var(--muted);font-size:.95rem}
.doc .soon{margin-top:auto;font-size:.8rem;font-weight:600;color:var(--plum-2);background:var(--lav-3);padding:6px 12px;border-radius:999px;align-self:flex-start}
.doc a.btn{margin-top:auto;align-self:flex-start}
.contact-list{list-style:none;display:grid;gap:14px}
.contact-list li{display:flex;gap:12px;align-items:flex-start}
.contact-list .i{flex:none;width:40px;height:40px;border-radius:50%;background:var(--lav);display:grid;place-items:center}
.contact-list b{display:block;color:var(--plum)}
.panel.dark .contact-list b{color:#fff}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--plum);color:#fff;padding:12px 20px;border-radius:999px;font-weight:600;z-index:80;opacity:0;transition:opacity .2s;pointer-events:none}
.toast.show{opacity:1}

.brand{flex:none}
.brand span{white-space:nowrap;font-size:.85rem}
.f label.consent{font-weight:400;color:var(--muted);display:flex}
.chips label{display:inline-block}
.occasions > *{min-width:0}
@media (max-width:640px){.occasions{grid-template-columns:1fr}.occ{min-height:auto;flex-direction:row;align-items:center;gap:16px;justify-content:flex-start}}
.zones{padding-top:0}
.zone-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}
@media (max-width:760px){.zone-grid{grid-template-columns:1fr}}
.zone{border:2px solid var(--lav-2);border-radius:var(--radius);padding:28px}
.zone h3{font-family:Archivo,sans-serif;font-style:italic;font-weight:900;text-transform:uppercase;font-size:1.8rem;color:var(--plum);margin:6px 0 8px}
.zone p{color:var(--muted)}
.zone.dark{background:var(--plum);border-color:var(--plum)}
.zone.dark h3,.zone.dark p{color:#fff}
.zone.dark .eyebrow{color:var(--lav)}
.agir-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.releases{display:grid;gap:20px;margin-top:30px}
.release{border:2px solid var(--lav-2);border-radius:var(--radius);padding:28px}
.rmeta{display:flex;gap:10px;align-items:center;margin-bottom:10px}
.rtitle{font-size:1.4rem;font-weight:800;color:var(--plum);text-wrap:balance}
.chapo{color:var(--muted);margin:10px 0 14px;max-width:70ch}
.release summary{cursor:pointer;font-weight:600;color:var(--plum-2)}
.release details[open] summary{margin-bottom:10px}
.release .prose{max-width:72ch}
.sign{border-top:1px solid var(--lav-2);padding-top:14px;margin-top:20px}
/* V4 */
.helpbar{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 14px;text-transform:none;letter-spacing:0;font-size:.88rem;padding:8px 16px}
.hb-status{display:inline-flex;align-items:center;gap:8px;font-weight:700}
.hb-status i{width:10px;height:10px;border-radius:50%;background:#8A6FAE;display:inline-block}
.hb-status.open i{background:#2BB673;box-shadow:0 0 0 0 rgba(43,182,115,.7);animation:live 1.6s infinite}
@keyframes live{70%{box-shadow:0 0 0 8px rgba(43,182,115,0)}100%{box-shadow:0 0 0 0 rgba(43,182,115,0)}}
@media (prefers-reduced-motion:reduce){.hb-status.open i{animation:none}}
.helpbar a.hb-num{margin:0;font-weight:800;font-size:.95rem;animation:nudge 3s ease-in-out infinite}
@keyframes nudge{0%,90%,100%{transform:none}93%{transform:rotate(-3deg)}96%{transform:rotate(3deg)}}
@media (prefers-reduced-motion:reduce){.helpbar a.hb-num{animation:none}}
.hb-urg a{margin:0;background:#C0392B!important}
@media (max-width:640px){.hb-txt{display:none}}
.logo-disc{background:radial-gradient(circle,rgba(255,255,255,.18),rgba(255,255,255,0) 70%);border-radius:50%;padding:6%}
.logo-disc img{width:100%;filter:drop-shadow(0 10px 30px rgba(0,0,0,.25))}
.brand img{border-radius:0}
.timeline{list-style:none;display:grid;grid-template-columns:repeat(6,1fr);gap:0;margin-top:40px;position:relative}
.timeline::before{content:"";position:absolute;left:0;right:0;top:9px;height:3px;background:linear-gradient(90deg,var(--lav) 55%,rgba(184,155,224,.25) 55%)}
.timeline li{position:relative;padding:34px 14px 0 0}
.timeline li::before{content:"";position:absolute;top:0;left:0;width:21px;height:21px;border-radius:50%;background:var(--lav);border:4px solid var(--plum)}
.timeline li.t-now::before{background:#2BB673}
.timeline li.t-next::before{background:var(--plum);border-color:var(--lav)}
.t-date{display:block;font-family:Archivo,sans-serif;font-weight:900;font-style:italic;font-size:1.3rem;color:var(--lav-2)}
.timeline b{display:block;margin:4px 0}
.timeline p{opacity:.8;font-size:.9rem}
.t-tag{display:inline-block;margin-top:8px;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;padding:2px 8px;border-radius:999px;border:1px solid rgba(255,255,255,.35)}
@media (max-width:900px){.timeline{grid-template-columns:1fr}.timeline::before{left:9px;right:auto;width:3px;top:0;bottom:0;height:auto;background:var(--lav)}.timeline li{padding:0 0 26px 40px}}
.partners-cta{background:var(--lav-3)}
.partners-cta .wrap{display:grid;grid-template-columns:1.4fr 1fr;gap:30px;align-items:center}
.partners-cta p{color:var(--muted);margin-top:12px;max-width:60ch}
.partners-cta .btns{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.partners-cta .btn-line{color:var(--plum)}
@media (max-width:900px){.partners-cta .wrap{grid-template-columns:1fr}.partners-cta .btns{justify-content:flex-start}}
.social-band{padding-top:70px;padding-bottom:70px}
.soc-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:30px}
@media (max-width:900px){.soc-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.soc-grid{grid-template-columns:1fr}}
.soc{border-radius:var(--radius);padding:22px;text-decoration:none;color:#fff;background:var(--c);display:flex;flex-direction:column;gap:6px;min-height:150px;transition:transform .15s}
.soc:hover{transform:translateY(-3px)}
.soc b{font-family:Archivo,sans-serif;font-style:italic;font-weight:900;text-transform:uppercase;font-size:1.4rem}
.soc small{opacity:.9}
.soc span{margin-top:auto;font-weight:600}
.soc-grid.big .soc{min-height:190px}
.mcard{flex-wrap:wrap}
.mcard > div{flex:1;min-width:220px}
.mdesc{color:var(--muted);font-size:.9rem;margin-top:6px}
.mcard .apply{padding:.55em 1.1em;font-size:.9rem}
.jva-badge{display:flex;gap:18px;align-items:center;margin-top:30px;padding:18px 22px;border:2px dashed var(--lav);border-radius:var(--radius);text-decoration:none;color:var(--muted);flex-wrap:wrap}
.jva-logo{font-family:Archivo,sans-serif;font-weight:900;color:#000091;font-size:1.3rem;background:#fff;padding:6px 12px;border-radius:8px;border:1px solid #dcdcf0}
.jva-logo small{color:#E1000F;font-size:.8rem}
.infos{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media (max-width:900px){.infos{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.infos{grid-template-columns:1fr}}
.info{background:var(--lav-3);border-radius:var(--radius);padding:22px}
.info small{text-transform:uppercase;letter-spacing:.08em;font-weight:600;font-size:.72rem;color:var(--plum-2)}
.info b{display:block;font-family:Archivo,sans-serif;font-size:1.35rem;color:var(--plum);margin:6px 0 4px}
.info p{color:var(--muted);font-size:.9rem}
.form-wide{max-width:900px;margin:0 auto}
fieldset{border:none;border-top:2px solid var(--lav-2);padding:18px 0 0;display:grid;gap:16px}
legend{font-family:Archivo,sans-serif;font-weight:800;color:var(--plum);padding-right:10px;font-size:1.1rem}
.doc .btn + .btn{margin-top:6px}
.edito{font-family:Archivo,sans-serif;font-style:italic;font-weight:800;font-size:1.5rem;line-height:1.25;color:var(--plum);margin:14px 0 20px;text-wrap:balance}
.axes{padding-left:22px;display:grid;gap:10px;color:var(--muted)}
.axes b{color:var(--plum);display:block}
.people{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:30px}
@media (max-width:760px){.people{grid-template-columns:1fr 1fr}}
.person{text-align:center;padding:22px;border:2px solid var(--lav-2);border-radius:var(--radius)}
.person .av{width:64px;height:64px;border-radius:50%;background:var(--lav);color:var(--plum);display:grid;place-items:center;margin:0 auto 10px;font-family:Archivo,sans-serif;font-weight:900;font-size:1.5rem}
.person b{display:block;color:var(--plum)}
.person small{color:var(--muted)}
.subh{font-family:Archivo,sans-serif;color:var(--plum);font-size:1.4rem;margin:40px 0 16px}
.poles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media (max-width:900px){.poles{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.poles{grid-template-columns:1fr}}
.pole{background:var(--lav-3);border-radius:14px;padding:18px}
.pole b{color:var(--plum)}
.pole p{color:var(--muted);font-size:.9rem;margin-top:4px}
.socials a{font-size:.8rem}
.menu{gap:14px}
.menu a{font-size:.9rem}
@media (max-width:1340px){
  .menu{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;flex-direction:column;padding:20px;gap:14px;border-bottom:1px solid var(--lav-2)}
  .menu.open{display:flex}
  .burger{display:block}
}
/* V5 */
.helpbar{display:block;overflow:hidden;white-space:nowrap;padding:8px 0}
.hb-track{display:inline-block;animation:scroll 40s linear infinite}
.helpbar:hover .hb-track{animation-play-state:paused}
.hb-item{display:inline-flex;align-items:center;gap:8px;padding-right:60px}
.helpbar a.hb-red{background:#C0392B;margin:0}
@media (prefers-reduced-motion:reduce){.hb-track{animation:none}}
.hero-photo{position:relative;margin:0;border-radius:28px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.3);transform:rotate(1.5deg);max-width:100%}
.hero-photo img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;display:block}
.hero-photo figcaption{position:absolute;left:14px;right:14px;bottom:14px;background:rgba(255,255,255,.94);color:var(--plum);border-radius:16px;padding:10px 14px;display:flex;gap:10px;align-items:center;font-weight:600;font-size:.9rem;line-height:1.3}
.hero-art{width:min(400px,100%)}
.marquee.info{background:var(--plum);color:#fff;font-size:1.05rem;padding:14px 0}
.marquee.info a{color:#fff;text-decoration:none;margin:0 6px;font-style:normal;text-transform:none;font-family:Inter,sans-serif;font-weight:600}
.marquee.info a:hover{color:var(--lav-2)}
.marquee.info span{color:var(--lav);margin:0 18px}
.marquee.info .track{animation-duration:55s}
.marquee.info:hover .track{animation-play-state:paused}
.social-band{background:linear-gradient(120deg,#f6f0ff,#efe6fb,#f6f0ff);background-size:200% 200%;animation:shift 12s ease infinite;padding-top:60px;padding-bottom:60px}
@keyframes shift{50%{background-position:100% 50%}}
.soc{position:relative;overflow:hidden;box-shadow:0 10px 24px rgba(0,0,0,.08)}
.soc::after{content:"";position:absolute;inset:-40%;background:radial-gradient(circle,rgba(255,255,255,.35),transparent 60%);transform:translateX(-60%);transition:transform .6s}
.soc:hover::after{transform:translateX(40%)}
.soc:hover{transform:translateY(-6px) rotate(-1deg)}
.soc-grid .soc:nth-child(1){animation:bob 4s ease-in-out infinite}
.soc-grid .soc:nth-child(2){animation:bob 4s ease-in-out .5s infinite}
.soc-grid .soc:nth-child(3){animation:bob 4s ease-in-out 1s infinite}
.soc-grid .soc:nth-child(4){animation:bob 4s ease-in-out 1.5s infinite}
@keyframes bob{50%{transform:translateY(-6px)}}
@media (prefers-reduced-motion:reduce){.social-band,.soc-grid .soc{animation:none}}
.btn-line-plum{border-color:var(--plum);color:var(--plum);background:transparent}
.mbtns{display:flex;gap:8px;flex-wrap:wrap}
.mcard .mbtns .btn{padding:.5em 1em;font-size:.88rem}
.mission-body h3{margin-top:24px}
.mission-body strong{color:var(--ink)}
.mission-side{position:sticky;top:110px}
.kv{list-style:none;display:grid;gap:12px;margin:10px 0 20px}
.kv li{display:flex;flex-direction:column}
.kv span{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.kv b{color:var(--plum)}
.tiers{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:30px}
@media (max-width:1100px){.tiers{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.tiers{grid-template-columns:1fr}}
.tier{border-radius:var(--radius);padding:22px;display:flex;flex-direction:column;gap:10px;border:2px solid var(--lav-2);background:#fff}
.tier small{text-transform:uppercase;letter-spacing:.1em;font-weight:700;font-size:.75rem}
.tier b{font-family:Archivo,sans-serif;font-size:1.8rem;color:var(--plum);font-weight:900}
.tier b em{font-size:.9rem;font-style:normal;color:var(--muted);margin-left:4px}
.tier .lbl{font-size:.85rem;color:var(--plum-2);font-weight:600}
.tier ul{padding-left:18px;color:var(--muted);font-size:.9rem;display:grid;gap:4px}
.tier .btn{margin-top:auto;justify-content:center}
.tier-bronze small{color:#9a5b2b}.tier-argent small{color:#6f7680}.tier-or small{color:#b58a00}.tier-platine small{color:#4d6b7a}
.tier-or{border-color:#e7c65a}.tier-platine{border-color:var(--plum)}
.tier-ambassadeur{background:var(--plum);border-color:var(--plum)}
.tier-ambassadeur *{color:#fff!important}
.agenda .event{text-decoration:none;color:inherit;grid-template-columns:90px 1fr auto;border:2px solid var(--lav-2);border-radius:16px;padding:16px 20px;margin-bottom:12px;transition:border-color .15s,transform .15s}
.agenda .event:hover{border-color:var(--lav);transform:translateX(4px)}
.agenda .tag{margin-bottom:4px}
@media (max-width:640px){.agenda .event{grid-template-columns:70px 1fr}.agenda .event .btn{grid-column:1/-1;justify-content:center}}
.timeline.vertical{grid-template-columns:1fr;margin-top:24px}
.timeline.vertical::before{left:9px;right:auto;width:3px;top:0;bottom:0;height:auto;background:var(--lav)}
.timeline.vertical li{padding:0 0 22px 40px}
.timeline.vertical .t-date{color:var(--plum-2);font-size:1.05rem}
.timeline.vertical p{color:var(--muted);opacity:1}
fieldset.child{position:relative}
.hero-photo figcaption img{width:44px;height:44px;aspect-ratio:auto;flex:none}
/* V6 */
.menu .dd{position:relative}
.menu .sub{display:none;position:absolute;top:100%;left:-14px;min-width:250px;background:#fff;border:1px solid var(--lav-2);border-radius:14px;box-shadow:0 14px 30px rgba(74,34,87,.14);padding:8px;list-style:none;z-index:60}
.menu .sub a{display:block;padding:9px 12px;border-radius:10px}
.menu .sub a:hover{background:var(--lav-3)}
.menu .dd:hover .sub,.menu .dd:focus-within .sub{display:block}
@media (max-width:1340px){.menu .sub{display:block;position:static;box-shadow:none;border:none;padding:4px 0 0 14px;min-width:0}.menu .sub a{padding:5px 0;font-size:.88rem}}
.soc{background:var(--c)}
.soc-ico{width:40px;height:40px;margin-bottom:6px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}
.socials a img{width:18px;height:18px}
.audiences{background:var(--lav-3)}
.aud-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}
@media (max-width:900px){.aud-grid{grid-template-columns:1fr}}
.aud{background:#fff;border:2px solid var(--lav-2);border-radius:var(--radius);padding:26px;text-decoration:none;display:flex;flex-direction:column;gap:10px;transition:transform .15s,border-color .15s}
a.aud:hover{transform:translateY(-4px);border-color:var(--plum)}
.aud small{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:700;color:var(--plum-2)}
.aud b{font-family:Archivo,sans-serif;font-size:1.45rem;font-weight:900;font-style:italic;text-transform:uppercase;color:var(--plum);line-height:1.1}
.aud p{color:var(--muted)}
.aud span{margin-top:auto;font-weight:700;color:var(--plum)}
.aud.static{background:var(--lav-3);border-color:transparent}
.offers{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}
@media (max-width:900px){.offers{grid-template-columns:1fr}}
.offer{border:2px solid var(--lav-2);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:10px}
.offer small{color:var(--plum-2);font-weight:600;font-size:.8rem}
.offer h3{color:var(--plum);font-weight:800;font-size:1.25rem}
.offer p{color:var(--muted);font-size:.95rem}
.offer .btns{margin-top:auto;display:flex;gap:8px;flex-wrap:wrap}
.offer .btn{padding:.55em 1em;font-size:.88rem}
.menu{gap:12px}
.menu a{font-size:.88rem}
@media (max-width:1400px){
  .menu{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;flex-direction:column;padding:20px;gap:14px;border-bottom:1px solid var(--lav-2)}
  .menu.open{display:flex}
  .burger{display:block}
  .menu .sub{display:block;position:static;box-shadow:none;border:none;padding:4px 0 0 14px;min-width:0}
}

/* Charte du bénévole */
.charte-list{counter-reset:c;list-style:none;padding:0;margin:0 0 12px}
.charte-list li{counter-increment:c;position:relative;padding:10px 0 10px 44px;border-bottom:1px solid rgba(0,0,0,.08)}
.charte-list li::before{content:counter(c);position:absolute;left:0;top:10px;width:30px;height:30px;border-radius:50%;background:var(--plum,#5b2a6e);color:#fff;display:grid;place-items:center;font-weight:700;font-size:.9rem}

/* Intégration bénévole */
.steps-4{grid-template-columns:repeat(4,1fr)}
@media (max-width:900px){.steps-4{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.steps-4{grid-template-columns:1fr}}
.faq{display:grid;gap:10px}
.faq-item{background:#fff;border:2px solid var(--lav-2);border-radius:14px;padding:14px 18px}
.faq-item summary{cursor:pointer;font-weight:700;color:var(--plum)}
.faq-item[open] summary{margin-bottom:8px}
.faq-item p{margin:0}
.doc .btn-line{margin-top:-4px}
@media (max-width:1100px) and (min-width:901px){.soc-grid{grid-template-columns:repeat(3,1fr)}}

/* Pointage et planning */
.pointage-etat{border:2px dashed var(--lav-2);border-radius:14px;padding:14px 16px;margin-bottom:16px;display:flex;flex-direction:column;gap:2px}
.pointage-etat b{color:var(--plum)}
.pointage-etat span{color:var(--muted);font-size:.92rem}
.pointage-etat.on{border-style:solid;border-color:var(--plum);background:#F6F0FB}
.pointage-etat.on b::before{content:"● ";color:#0a8f4d}
.planning-list{display:block;margin-top:20px}
.planning-pole{background:#fff;border:2px solid var(--lav-2);border-radius:var(--radius);padding:20px}
.planning-pole h3{margin-top:0;color:var(--plum)}

/* Alerte urgence (fiche d'appel) */
.alerte-urgence{background:#FFF4E5;border:2px solid #E08A00;border-left-width:8px;border-radius:14px;padding:16px 20px;margin-bottom:24px;max-width:900px;margin-left:auto;margin-right:auto}
.alerte-urgence b{color:#8A4B00}

/* Espace bénévole */
.espace-grid{grid-template-columns:repeat(4,1fr)}
@media (max-width:1000px){.espace-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.espace-grid{grid-template-columns:1fr}}
a.espace-card{text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s}
a.espace-card:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(74,34,87,.14)}
a.espace-card .go{margin-top:auto;color:var(--plum);font-weight:700}

/* Profil bénévole */
.profil-bar{background:linear-gradient(120deg,var(--plum),var(--plum-2));color:#fff;border-radius:var(--radius);padding:22px 26px;display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between;align-items:center}
.pb-hello{display:block;font-size:1.35rem;font-weight:700}
.pb-sub{display:block;opacity:.85;font-size:.95rem}
.pb-stats{display:flex;flex-wrap:wrap;gap:22px}
.pb-stats div{text-align:center;min-width:90px}
.pb-stats b{display:block;font-size:1.25rem}
.pb-stats span{font-size:.78rem;opacity:.85;text-transform:uppercase;letter-spacing:.04em}
.pb-role{display:inline-block;margin-top:6px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:2px 12px;font-size:.8rem;font-weight:700}

/* Tableau des créneaux */
.table-wrap{overflow-x:auto;margin-top:18px}
.tbl{width:100%;border-collapse:collapse;background:#fff;border:2px solid var(--lav-2);border-radius:14px;overflow:hidden;font-size:.95rem}
.tbl th{background:var(--lav);color:var(--plum);text-align:left;padding:12px 14px;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em}
.tbl td{padding:12px 14px;border-top:1px solid var(--lav-2);vertical-align:top}
/* Créneaux verrouillés sur les jours de la mission */
.jours-note{margin:6px 0 0;font-size:.86rem;color:var(--plum,#4A2257);font-weight:600}

/* Feu tricolore de la fiche d'appel */
.feu{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;max-width:900px;margin:0 auto 18px;
  padding:14px 18px;border-radius:14px;border:2px solid #cdbfdc;background:#faf7fd;position:sticky;top:88px;z-index:20}
.feu-lampe i{display:block;width:26px;height:26px;border-radius:50%;background:#2e9e5b;box-shadow:0 0 0 5px rgba(46,158,91,.18)}
.feu-txt b{display:block;font-size:1.05rem;color:#2b1d33}
.feu-txt p{margin:4px 0 0;font-size:.9rem;color:#5b4a66}
.feu-conduite:empty{display:none}
.feu-conduite{margin-top:6px!important;font-weight:600}
.btn-alerte{background:#b3261e;color:#fff;border:none;white-space:nowrap}
.btn-alerte:hover{background:#8f1e18}
.btn-alerte:disabled{opacity:.6;cursor:default}
.feu-act{display:flex;flex-direction:column;align-items:flex-end;gap:6px;max-width:260px;text-align:right}
.feu[data-niveau="orange"]{border-color:#e08a1e;background:#fff8ec}
.feu[data-niveau="orange"] .feu-lampe i{background:#e08a1e;box-shadow:0 0 0 5px rgba(224,138,30,.18)}
.feu[data-niveau="rouge"]{border-color:#b3261e;background:#fdf0ef}
.feu[data-niveau="rouge"] .feu-lampe i{background:#b3261e;box-shadow:0 0 0 5px rgba(179,38,30,.2);animation:feubat 1.1s ease-in-out infinite}
@keyframes feubat{0%,100%{box-shadow:0 0 0 5px rgba(179,38,30,.2)}50%{box-shadow:0 0 0 11px rgba(179,38,30,0)}}
@media(max-width:760px){.feu{grid-template-columns:auto 1fr;position:static}.feu-act{grid-column:1/-1;align-items:stretch;max-width:none;text-align:left}}

/* Permanence téléphonique */
.tel-etat{max-width:1000px;margin:0 auto 16px;padding:12px 16px;border-radius:12px;border:1.5px solid #cdbfdc;background:#faf7fd}
.tel-etat b{display:block;color:#4A2257}
.tel-etat span{font-size:.9rem;color:#5b4a66}
.tel-etat.ok{border-color:#2e9e5b;background:#f0faf4}
.tel-etat.ko{border-color:#b3261e;background:#fdf0ef}
.tel-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;max-width:1000px;margin:0 auto;align-items:start}
.tel-phone{min-height:360px}
#zdrm-widget{min-height:280px}
@media(max-width:860px){.tel-grid{grid-template-columns:1fr}}

/* Animation des cercles de parole */
.an-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:0 0 22px}
.an-tuile{background:#faf7fd;border:1.5px solid #cdbfdc;border-radius:12px;padding:12px 14px}
.an-tuile b{display:block;font-size:1.6rem;color:#4A2257;line-height:1.1}
.an-tuile span{font-size:.84rem;color:#5b4a66}
.an-tuile.alerte{border-color:#b3261e;background:#fdf0ef}
.an-tuile.alerte b{color:#b3261e}
tr.sans-anim td{background:#fdf0ef}
.an-liste li b{font-weight:500}
.an-liste li i{color:#5b4a66}
.an-conf{border-left:3px solid #4A2257;padding-left:10px;margin-top:14px!important}

/* Parcours de permanence (espace bénévole) */
.parcours{list-style:none;counter-reset:pc;margin:18px 0 0;padding:0}
.parcours>li{counter-increment:pc;position:relative;padding:0 0 18px 46px;margin:0}
.parcours>li::before{content:counter(pc);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;
  background:#6B3FA0;color:#fff;font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center}
.parcours>li:not(:last-child)::after{content:"";position:absolute;left:14px;top:34px;bottom:4px;width:2px;background:#E4D8F2}
.parcours>li b{color:#3B2B4A}
.parcours .btns{margin-top:10px}
.parcours .hint{margin:6px 0 0}

/* ---------- Fiches d'appel : deux colonnes, scripts à droite ---------- */
.fiche-2col{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:22px;align-items:start;max-width:1320px;margin:0 auto}
.fiche-2col .fiche-col{min-width:0;margin:0}
.scripts-col{position:sticky;top:70px;max-height:calc(100vh - 110px);display:flex;flex-direction:column;
  background:#fff;border:1px solid #e2d8ee;border-radius:16px;overflow:hidden;box-shadow:0 2px 14px rgba(74,34,87,.06)}
.sc-tete{padding:16px 18px 10px;border-bottom:1px solid #eee3f6;background:#faf7fd}
.sc-tete h3{margin:0 0 4px;font-size:1.05rem;color:#4A2257}
.sc-tete .hint{margin:0 0 10px}
.sc-tabs{display:flex;flex-wrap:wrap;gap:6px}
.sc-tab{border:1px solid #ddd0ec;background:#fff;color:#5b4a66;border-radius:999px;padding:5px 11px;
  font:600 12.5px/1 inherit;cursor:pointer;transition:.15s}
.sc-tab:hover{border-color:#b995d8;color:#4A2257}
.sc-tab.on{background:#6B3FA0;border-color:#6B3FA0;color:#fff}
.sc-corps{overflow-y:auto;overscroll-behavior:contain;padding:4px 18px 26px;scroll-behavior:smooth}
.sc-bloc{padding:14px 0 4px;border-bottom:1px dashed #ece2f6}
.sc-bloc:last-child{border-bottom:0}
.sc-bloc h4{margin:0 0 8px;font-size:.95rem;color:#4A2257;letter-spacing:.01em}
.sc-bloc p{margin:0 0 9px;font-size:.92rem;line-height:1.55;color:#5b4a66}
.sc-dire{background:#f4eefb;border-left:3px solid #6B3FA0;border-radius:0 8px 8px 0;padding:9px 12px;
  color:#3B2B4A!important;font-style:italic}
.sc-dire::before{content:"« "}
.sc-dire::after{content:" »"}
.sc-eviter{background:#fdf0ef;border-left:3px solid #b3261e;border-radius:0 8px 8px 0;padding:9px 12px;
  color:#7a2019!important;text-decoration:line-through;text-decoration-color:rgba(179,38,30,.35)}
.sc-liste{margin:0 0 10px;padding-left:18px}
.sc-liste li{font-size:.92rem;line-height:1.5;color:#5b4a66;margin-bottom:5px}
/* boutons d'urgence */
.urg-boutons{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
a.urg{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:74px;padding:8px 12px;border-radius:12px;
  background:#b3261e;color:#fff;text-decoration:none;border:0;transition:.15s}
a.urg:hover{background:#8f1e17;transform:translateY(-1px)}
a.urg b{font-size:1.02rem;letter-spacing:.02em}
a.urg span{font-size:.72rem;opacity:.9}
/* inscription groupe de parole depuis une fiche */
.gp-bloc{background:#f7f2fc;border:1px solid #ddd0ec!important;border-radius:14px}
.gp-bloc legend{color:#4A2257}
@media (max-width:1080px){
  .fiche-2col{grid-template-columns:1fr}
  .scripts-col{position:static;max-height:none;order:-1}
  .sc-corps{max-height:52vh}
}
.transferts{margin:10px 0 4px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.pb-mat{display:inline-block;margin-left:10px;padding:3px 10px;border-radius:999px;background:rgba(255,255,255,.22);
  border:1px solid rgba(255,255,255,.35);font:700 12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em}
.pb-mat:empty{display:none}

/* Retour vers l'espace bénévole, en haut des pages outils */
.retour-espace:hover{background:#F3EEFB;border-color:var(--plum,#4A2257)}

/* ---------- Panneau des appels ---------- */
.pan-lignes{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 14px}
.pan-ligne{flex:1 1 180px;display:flex;align-items:center;gap:10px;padding:14px 16px;
  border:1px solid #E4D9F2;border-radius:10px;background:#FBF8FF}
.pan-ligne b{color:#4A2257}
.pan-ligne span{margin-left:auto;font-size:13px;color:#6A5A75}
.pan-ligne.sonne{border-color:#E0A21F;background:#FFF8E8}
.pan-ligne.sonne span{color:#8A6100;font-weight:700}
.pan-ligne.enligne{border-color:#2F9C95;background:#EAF7F6}
.pan-ligne.enligne span{color:#1D6B66;font-weight:700}
.pan-pt{width:11px;height:11px;border-radius:50%;background:#C9BCD8;flex:0 0 auto}
.pan-pt.sonne{background:#E0A21F;animation:panpulse 1s infinite}
.pan-pt.enligne{background:#2F9C95}
@keyframes panpulse{0%,100%{opacity:1}50%{opacity:.25}}
.pan-alerte{background:#FDECEC;border:1px solid #E88;border-left:5px solid #C62828;
  border-radius:8px;padding:13px 16px;margin:0 0 14px;color:#8B1A1A;font-size:15px}
.pan-alerte a{color:#8B1A1A;font-weight:700}
.pan-encours{display:flex;flex-direction:column;gap:8px;margin:0 0 6px}
.pan-encours div{background:#EAF7F6;border:1px solid #2F9C95;border-radius:8px;padding:12px 15px}
.pan-encours b{display:block;color:#1D6B66}
.pan-encours span{font-size:14px;color:#3B5A58}
.pan-tab{width:100%;border-collapse:collapse;font-size:14px}
.pan-tab th{text-align:left;padding:8px 10px;border-bottom:2px solid #E4D9F2;
  color:#4A2257;font-size:12px;letter-spacing:.4px;text-transform:uppercase}
.pan-tab td{padding:9px 10px;border-bottom:1px solid #F0E9F8}
.pan-tab tr.ko td{background:#FDF4F4}
.pan-ok{color:#1D6B66;font-weight:700}
@media(max-width:640px){
  .pan-tab thead{display:none}
  .pan-tab tr{display:block;border-bottom:1px solid #E4D9F2;padding:8px 0}
  .pan-tab td{display:flex;justify-content:space-between;border:0;padding:3px 0}
  .pan-tab td:before{content:attr(data-l);color:#6A5A75;font-size:12px;font-weight:600}
  .pan-tab tr{padding:10px 0}
}

/* ---------- Répondeur ---------- */
.rep-msg{border:1px solid #E4D9F2;border-radius:10px;padding:16px 18px;margin:0 0 12px;background:#fff}
.rep-msg.urgent{border-color:#C62828;border-left:5px solid #C62828;background:#FFFAFA}
.rep-tete{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:4px}
.rep-tete b{color:#4A2257}
.rep-tete span{font-size:13px;color:#6A5A75}
.rep-sta{margin-left:auto;font-style:normal;font-size:12px;font-weight:700;
  background:#F3EEFB;color:#4A2257;border-radius:20px;padding:4px 12px}
.rep-msg.urgent .rep-sta{background:#FDECEC;color:#8B1A1A}
.rep-num{font-size:17px;font-weight:700;color:#241530;margin:2px 0 10px}
.rep-msg audio{width:100%;margin:0 0 12px}
.rep-filtres{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}
.rep-filtres button{border:1px solid #D6C5EC;background:#fff;color:#4A2257;
  border-radius:22px;padding:9px 20px;font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.rep-filtres button:hover{background:#F7F2FE}
.rep-filtres button.on{background:#4A2257;border-color:#4A2257;color:#fff}
.rep-msg .btns{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.rep-msg .btn-line{background:#fff!important;color:#4A2257!important;border:2px solid #4A2257!important}

/* ---------- Bloc Appeler du juridique ---------- */
.ju-tel-haut{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap}
.ju-tel-etat{margin-left:auto;font-size:12px;font-weight:700;border-radius:20px;
  padding:6px 14px;background:#F3EEFB;color:#4A2257;white-space:nowrap}
.ju-tel-etat.ok{background:#EAF7F6;color:#1D6B66}
.ju-tel-etat.ko{background:#FDECEC;color:#8B1A1A}
.ju-tel .kv li{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #F0E9F8}
.ju-tel .kv li:last-child{border-bottom:0}
.ju-tel .kv b{color:#4A2257;text-align:right}
.ju-tel .kv{max-width:620px}

/* ---------- Page de confirmation ---------- */
.cf-panel{max-width:640px;margin:0 auto;text-align:center;padding:38px 32px}
.cf-texte{font-size:17px;line-height:1.7;color:#3A2A45;margin:0 0 22px}
.cf-panel .btns{justify-content:center}
.cf-attente{padding:24px 0;color:#6A5A75}
.cf-rond{width:38px;height:38px;margin:0 auto 16px;border-radius:50%;
  border:4px solid #E4D9F2;border-top-color:#4A2257;animation:cfspin .9s linear infinite}
@keyframes cfspin{to{transform:rotate(360deg)}}
.cf-panel h2{text-transform:none!important;font-style:normal!important;font-size:31px;line-height:1.25;margin:0 0 14px;color:#4A2257}

/* ---------- Espace privé : navigation par profil ---------- */
.espace-prive .helpbar{display:none}
.espace-prive header{position:static}
.espace-prive header .menu{display:none}
.espace-prive header .burger{display:none}
.espace-prive header .nav{justify-content:flex-start}
.esp-nav{position:sticky;top:0;z-index:55;background:#4A2257;box-shadow:0 2px 10px rgba(36,21,48,.18)}
.esp-nav-in{display:flex;align-items:center;gap:20px;min-height:52px}
.esp-qui{color:#E7D8FA;font-size:13px;font-weight:700;letter-spacing:.3px;white-space:nowrap;flex:0 0 auto}
.esp-onglets{display:flex;gap:2px;overflow-x:auto;min-width:0;flex:1 1 auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.esp-onglets::-webkit-scrollbar{display:none}
.esp-onglets{position:relative}
.esp-onglets.bord-g{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 34px);mask-image:linear-gradient(90deg,transparent 0,#000 34px)}
.esp-onglets.bord-d{-webkit-mask-image:linear-gradient(270deg,transparent 0,#000 34px);mask-image:linear-gradient(270deg,transparent 0,#000 34px)}
.esp-onglets.bord-g.bord-d{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 34px,#000 calc(100% - 34px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 34px,#000 calc(100% - 34px),transparent 100%)}
.esp-onglets a{display:block;white-space:nowrap;padding:16px 12px;color:#DCC8F5;
  font-size:14px;font-weight:600;text-decoration:none;border-bottom:3px solid transparent}
.esp-onglets a:hover{color:#fff;background:rgba(255,255,255,.07)}
.esp-onglets a[aria-current="page"]{color:#fff;border-bottom-color:#2F9C95;background:rgba(255,255,255,.1)}
.espace-prive footer .foot{display:none}
.espace-prive footer{background:#F3EEFB;border-top:1px solid #E4D9F2}
.espace-prive footer .legal{color:#6A5A75;padding:18px 0}
@media(max-width:760px){
  .esp-nav-in{flex-direction:column;align-items:stretch;gap:0}
  .esp-qui{padding:11px 0 5px;font-size:12px}
  .esp-onglets{margin:0 -16px;padding:0 16px}
  .esp-onglets a{padding:13px 14px;font-size:13.5px}
}

/* Sur téléphone, le script reste visible pendant qu'on remplit la fiche :
   il se replie en bandeau collant au lieu de disparaître en haut de page. */
@media(max-width:900px){
  .espace-prive .scripts-col, .scripts-col{
    position:sticky; top:64px; order:-1; z-index:30;
    max-height:44vh; overflow:auto; display:flex; flex-direction:column;
    background:#fff; border:1px solid #E4D9F2; border-radius:12px;
    box-shadow:0 6px 18px rgba(36,21,48,.12);
  }
}

/* ---------- Planning de la semaine, en grille ---------- */
.pg-resume{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap;margin:0 0 18px}
.pg-chiffre{display:flex;align-items:baseline;gap:7px;background:#fff;border:1px solid #E4D9F2;
  border-radius:10px;padding:11px 16px;font-size:14px;color:#6A5A75}
.pg-chiffre b{font-size:22px;color:#4A2257;font-family:Archivo,sans-serif}
.pg-chiffre.alerte{border-color:#E0A21F;background:#FFF8E8}
.pg-chiffre.alerte b{color:#8A6100}
.pg-wrap{overflow-x:auto;border:1px solid #E4D9F2;border-radius:12px;background:#fff}
.pg-tab{width:100%;border-collapse:collapse;font-size:14px;min-width:620px}
.pg-tab th[scope="col"]{background:#4A2257;color:#fff;text-align:left;padding:11px 12px;
  font-size:12px;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap}
.pg-tab th[scope="row"]{background:#F7F2FE;color:#4A2257;font-weight:700;text-align:left;
  padding:12px;white-space:nowrap;border-bottom:1px solid #F0E9F8;font-variant-numeric:tabular-nums}
.pg-tab td{padding:9px 10px;border-bottom:1px solid #F0E9F8;border-left:1px solid #F0E9F8;vertical-align:top}
.pg-tab tr:last-child td,.pg-tab tr:last-child th{border-bottom:0}
.pg-tab td.pg-vide{background:repeating-linear-gradient(135deg,#FCFAFE,#FCFAFE 6px,#F5F0FB 6px,#F5F0FB 12px)}
.pg-pris,.pg-libre{display:block;border-radius:8px;padding:8px 10px;margin:0 0 6px}
.pg-pris:last-child,.pg-libre:last-child{margin-bottom:0}
.pg-pris{background:#EAF7F6;border:1px solid #BEE4E1}
.pg-pris b{display:block;color:#1D6B66;font-size:14.5px}
.pg-pris i,.pg-libre i{display:block;font-style:normal;font-size:11.5px;color:#6A5A75;margin-top:1px}
.pg-pris u{display:block;text-decoration:none;font-size:11.5px;color:#8A6100;margin-top:3px}
.pg-pris.pg-rempl{background:#FFF8E8;border-color:#E8CE8E}
.pg-pris.pg-rempl b{color:#8A6100}
.pg-libre{background:#fff;border:2px dashed #B89BE0}
.pg-libre b{display:block;color:#4A2257;font-size:14.5px}
.pg-note{margin-top:12px}
@media(max-width:640px){
  .pg-tab{min-width:0}
  .pg-tab thead{display:none}
  .pg-tab tr{display:block;border-bottom:2px solid #E4D9F2;padding:6px 0}
  .pg-tab th[scope="row"]{display:block;background:none;padding:8px 12px 2px;font-size:15px}
  .pg-tab td{display:flex;gap:10px;border:0;padding:4px 12px}
  .pg-tab td:before{content:attr(data-l);flex:0 0 78px;color:#6A5A75;font-size:12px;font-weight:600;padding-top:9px}
  .pg-tab td.pg-vide{display:none}
  .pg-pris,.pg-libre{flex:1}
}
.prerempli{background:#EAF7F6;border:1px solid #BEE4E1;border-radius:8px;padding:9px 13px;margin:0 0 16px;color:#1D6B66}

/* ---------- Mes informations ---------- */
.mi-grille{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.mi-grille .kv li{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #F0E9F8}
.mi-grille .kv li:last-child{border-bottom:0}
.mi-grille .kv b{color:#4A2257;text-align:right}
.mi-voyants{list-style:none;margin:0;padding:0}
.mi-voyants li{display:flex;align-items:center;gap:11px;padding:11px 0;border-bottom:1px solid #F0E9F8}
.mi-voyants li:last-child{border-bottom:0}
.mi-voyants i{width:11px;height:11px;border-radius:50%;flex:0 0 auto}
.mi-voyants li.ok i{background:#2F9C95}
.mi-voyants li.ko i{background:#C62828}
.mi-voyants span{flex:1}
.mi-voyants b{font-size:13px}
.mi-voyants li.ok b{color:#1D6B66}
.mi-voyants li.ko b{color:#8B1A1A}
.mi-chiffres{display:flex;gap:14px;flex-wrap:wrap}
.mi-chiffre{flex:1 1 90px;background:#F7F2FE;border:1px solid #E4D9F2;border-radius:10px;padding:14px;text-align:center}
.mi-chiffre b{display:block;font-family:Archivo,sans-serif;font-size:26px;color:#4A2257;font-variant-numeric:tabular-nums}
.mi-chiffre span{font-size:12.5px;color:#6A5A75}
.mi-perms{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.mi-perm{background:#EAF7F6;border:1px solid #BEE4E1;border-radius:10px;padding:15px 17px}
.mi-perm b{display:block;font-size:17px;color:#1D6B66}
.mi-perm span{display:block;font-size:15px;color:#241530;font-variant-numeric:tabular-nums}
.mi-perm i{display:block;font-style:normal;font-size:12px;color:#6A5A75;margin-top:3px}
.mi-perm u{display:block;text-decoration:none;font-size:12px;color:#8A6100;margin-top:4px;font-weight:700}
.mi-perm.rempl{background:#FFF8E8;border-color:#E8CE8E}
.mi-perm.rempl b{color:#8A6100}

/* ---------- Mes messages ---------- */
.ms-msg{background:#fff;border:1px solid #E4D9F2;border-radius:12px;padding:18px 20px;margin:0 0 14px}
.ms-msg.important{border-left:5px solid #C62828}
.ms-msg.lu{background:#FBF9FD;border-style:dashed}
.ms-msg header{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:8px}
.ms-msg header b{font-family:Archivo,sans-serif;font-size:18px;color:#4A2257}
.ms-msg header span{font-size:13px;color:#6A5A75}
.ms-msg header i{font-style:normal;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;
  background:#FDECEC;color:#8B1A1A;border-radius:20px;padding:3px 10px}
.ms-msg p{margin:0 0 14px;line-height:1.7;color:#241530}
.ms-lu{font-size:13px;color:#1D6B66;font-weight:700}
.mi-grille .kv li{align-items:baseline;padding:9px 0}
.mi-grille .kv li span{flex:1 1 auto;min-width:0;display:inline!important;width:auto!important}
.mi-grille .kv li b{flex:0 0 auto;display:inline!important;width:auto!important;white-space:nowrap}
@media(max-width:520px){
  .mi-grille .kv li{flex-direction:column;gap:2px}
  .mi-grille .kv li b{text-align:left;white-space:normal}
}
.esp-qui{display:flex;align-items:baseline;gap:8px;text-decoration:none;white-space:nowrap;flex:0 0 auto;
  padding:8px 14px 8px 0;border-right:1px solid rgba(255,255,255,.18);margin-right:6px}
.esp-qui b{color:#fff;font-size:14px;font-weight:700}
.esp-qui span{color:#DCC8F5;font-size:12.5px}
.esp-qui:hover b{text-decoration:underline}
@media(max-width:760px){.esp-qui{border-right:0;padding:10px 0 4px;margin:0}}
.pg-barre{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 16px}
.pg-barre b{font-family:Archivo,sans-serif;font-size:17px;color:#4A2257}
.pg-fleche,.pg-auj{border:1px solid #D6C5EC;background:#fff;color:#4A2257;border-radius:8px;
  padding:7px 13px;font:inherit;font-size:15px;font-weight:700;cursor:pointer;line-height:1}
.pg-auj{font-size:13px;border-radius:20px}
.pg-fleche:hover,.pg-auj:hover{background:#F7F2FE;border-color:#4A2257}
.pg-tab th[scope="col"] span{display:block;font-size:11px;font-weight:600;opacity:.75;
  letter-spacing:0;text-transform:none;margin-top:2px;font-variant-numeric:tabular-nums}
.pg-tab th.pg-jour{background:#2F9C95}
.pg-tab td.pg-jour{background:#F0FAF9}
.pg-tab td.pg-vide.pg-jour{background:repeating-linear-gradient(135deg,#EAF7F6,#EAF7F6 6px,#DCF0EE 6px,#DCF0EE 12px)}

/* ---- Planning mensuel : la bénévole pose son mois, la coordination voit les trous ---- */
.pm-barre{display:flex;align-items:center;justify-content:center;gap:18px;margin:0 0 22px}
.pm-barre b{font-size:1.3rem;color:var(--plum);font-weight:800;min-width:190px;text-align:center;text-transform:capitalize}
.pm-fleche{width:42px;height:42px;border-radius:50%;border:2px solid var(--lav-2);background:#fff;color:var(--plum);font-size:1.1rem;cursor:pointer;line-height:1}
.pm-fleche:hover{border-color:var(--lav);background:var(--lav-3)}
.pm-fleche.vide{border-color:transparent;background:none;cursor:default}

.pm-bloc{background:#fff;border:2px solid var(--lav-2);border-radius:var(--radius);padding:26px;margin:0 0 26px}
.pm-bloc h3{color:var(--plum);font-weight:800;font-size:1.3rem;margin:0}
.pm-bloc h4{color:var(--plum);font-weight:700;font-size:.92rem;letter-spacing:.4px;text-transform:uppercase;margin:22px 0 8px}
.pm-titre{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.pm-intro{margin:10px 0 16px;max-width:66ch}
.pm-badge{font-size:.82rem;font-weight:700;padding:5px 13px;border-radius:999px;background:#fdf1dc;color:#8a5a12;white-space:nowrap}
.pm-badge.ok{background:#e3f5e8;color:#1e7a3c}
.pm-anon h3{margin-bottom:8px}

.pm-raccourcis{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 6px}
.btn-sm{padding:.45em .95em;font-size:.85rem}

.pm-liste{list-style:none;margin:0;padding:0;border:1px solid var(--lav-2);border-radius:12px;overflow:hidden}
.pm-l{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--lav-2);background:#fff}
.pm-l:last-child{border-bottom:0}
.pm-l>label{display:flex;align-items:center;gap:12px;flex:1;padding:13px 16px;cursor:pointer;margin:0}
.pm-l input[type=checkbox]{width:21px;height:21px;accent-color:var(--plum);flex:none;cursor:pointer}
.pm-l.pm-oui{background:#f4fbf6}
.pm-date{font-weight:800;color:var(--plum);min-width:78px;text-transform:capitalize}
.pm-h{font-weight:600;min-width:92px}
.pm-p{color:var(--ink);opacity:.62;font-size:.9rem;flex:1}
.pm-etat{font-size:.84rem;font-weight:600;color:#9a8aa6;padding-right:16px;white-space:nowrap}
.pm-l.pm-oui .pm-etat{color:#1e7a3c}
.pm-l.pm-passe{background:#faf8fc;color:#9a8aa6}
.pm-l.pm-passe .pm-date{color:#9a8aa6}
.pm-l.pm-passe>*:not(.pm-etat){padding:13px 0 13px 16px}
.pm-l.pm-passe .pm-date{padding-left:16px}

.pm-pied{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:22px;padding-top:20px;border-top:2px solid var(--lav-2)}
.pm-compte{font-size:1.02rem}
.pm-compte b{color:var(--plum);font-size:1.35rem;font-weight:800}
.pm-ok{color:#1e7a3c;font-weight:600}
.pm-ko{color:#b3261e;font-weight:600}

.pm-tuiles{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0 18px}
.pm-tuile{display:flex;flex-direction:column;gap:2px;background:var(--lav-3);border-radius:12px;padding:14px 20px;font-size:.88rem;min-width:130px}
.pm-tuile b{font-size:1.7rem;font-weight:800;color:var(--plum);line-height:1.1}
.pm-tuile.alerte{background:#fdeceb}
.pm-tuile.alerte b{color:#b3261e}
.pm-trous ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.pm-trous li{background:#fdeceb;color:#7d1c15;border-radius:10px;padding:8px 14px;font-size:.9rem}
.pm-trous li b{text-transform:capitalize}
.pm-complet{color:#1e7a3c;font-weight:600}
.pm-detail{margin-top:22px;border-top:1px solid var(--lav-2);padding-top:14px}
.pm-detail summary{cursor:pointer;font-weight:700;color:var(--plum)}
.pm-cl{display:flex;align-items:center;gap:10px;padding:11px 16px;border-bottom:1px solid var(--lav-2)}
.pm-cl:last-child{border-bottom:0}
.pm-cl.pm-trou{background:#fdeceb}
.pm-qui{font-weight:600;text-align:right;flex:1}
.pm-cl.pm-trou .pm-qui{color:#b3261e}

@media (max-width:720px){
  .pm-bloc{padding:20px 16px}
  .pm-l>label{flex-wrap:wrap;gap:8px 12px}
  .pm-p{flex:100%;margin-left:33px}
  .pm-etat{display:none}
  .pm-cl{flex-wrap:wrap}
  .pm-qui{flex:100%;text-align:left}
  .pm-pied{flex-direction:column;align-items:stretch}
  .pm-pied .btn{width:100%;text-align:center}
}
.pm-passees{margin:22px 0 0;border-top:1px solid var(--lav-2);padding-top:14px}
.pm-passees summary{cursor:pointer;color:#7a6a86;font-size:.92rem}
.pm-passees .pm-liste{margin-top:10px}
.pm-passees .pm-l{padding:11px 16px}
.pm-attente{color:#8a5a12;font-weight:600}
.pm-suite{background:#eef8f7;border-left:4px solid var(--teal,#2F9C95);border-radius:0 10px 10px 0;padding:11px 16px;margin:12px 0 4px;font-size:.95rem}
.pm-suite b{color:var(--plum)}
.pm-date sup{font-size:.7em;vertical-align:super}

/* « Ma permanence » : un onglet qui se déplie sur ses deux pages. */
.esp-nav .esp-menu{position:relative;display:inline-block}
.esp-nav .esp-menu>summary{list-style:none;cursor:pointer;white-space:nowrap}
.esp-nav .esp-menu>summary::-webkit-details-marker{display:none}
.esp-nav .esp-menu>summary::after{content:"\25be";margin-left:6px;font-size:.8em;opacity:.7}
.esp-nav .esp-menu-in{position:absolute;z-index:40;top:100%;left:0;min-width:210px;
  background:#fff;border:1px solid var(--lav-2);border-radius:10px;padding:6px;
  box-shadow:0 10px 24px rgba(74,34,87,.16);display:flex;flex-direction:column;gap:2px}
.esp-nav .esp-menu-in a{display:block;padding:9px 12px;border-radius:7px;white-space:nowrap}
.esp-nav .esp-menu-in a:hover{background:var(--lav-3)}
@media (max-width:700px){.esp-nav .esp-menu-in{position:static;box-shadow:none;border:0;padding:0}}

/* Les inscrites d'une séance : une fiche par personne, chaque
   information sous son étiquette. Avant, le prénom et la motivation
   étaient collés sur la même ligne et se lisaient comme une phrase
   sans queue ni tête. Corrigé le 20/09. */
.an-insc{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.an-insc-c{border:1px solid var(--lav-2);border-radius:12px;padding:14px 16px;background:#fff}
.an-insc-n{display:block;color:var(--plum);font-size:1.05rem;margin-bottom:8px}
.an-insc-e{display:block;font-size:.76rem;letter-spacing:.6px;text-transform:uppercase;
  color:#7a6a86;margin-top:8px}
.an-insc-v{margin:2px 0 0;line-height:1.5}
.an-insc-m{color:#4a3a55;font-style:italic}

/* Signaler un cas au juridique : la zone d'explication doit pouvoir
   accueillir une vraie situation, pas deux lignes. */
textarea.jc-grand{min-height:230px;line-height:1.6;resize:vertical}

/* Le dossier juridique ouvert : d'où vient la demande, et le texte
   de la personne rendu lisible. */
.ju-orig{margin:0 0 14px;font-size:.92rem;color:#6a5a75;background:var(--lav-3,#F3EEFB);
  border-radius:9px;padding:9px 13px;display:inline-block}
.ju-orig-p{background:#eef8f7;color:#2b6b66}
.ju-orig b{color:var(--plum)}
.ju-resume{white-space:normal;line-height:1.65;background:#FBF8FE;border-left:3px solid var(--lav);
  border-radius:0 10px 10px 0;padding:12px 16px;margin:6px 0 0}

/* Fiches ressources (21/09) */
.fr-legende{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 22px;padding:0;list-style:none}
.fr-legende li{font-size:.8rem;padding:5px 10px;border-radius:999px;background:#F3EEFB;color:var(--plum)}
.fr-carte{border:2px solid var(--lav-2);border-radius:16px;padding:20px 22px;margin:0 0 18px;background:#fff}
.fr-carte.cible{border-color:var(--plum);box-shadow:0 0 0 4px #EDE5F8}
.fr-carte.alerte{border-left:6px solid #b3261e}
.fr-haut{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:flex-start}
.fr-haut h3{margin:0;font-size:1.15rem;color:var(--plum)}
.fr-num{font-size:.8rem;color:#6A5A75;font-weight:700;letter-spacing:.04em}
.fr-badge{display:inline-block;padding:6px 12px;border-radius:999px;font-size:.82rem;font-weight:700;background:#EDE5F8;color:var(--plum);white-space:nowrap}
.fr-badge.b-rel{background:#fff1d6;color:#8a5a00}.fr-badge.b-ok{background:#dff3e6;color:#1f6b3a}
.fr-frise{display:flex;gap:4px;margin:14px 0 6px}
.fr-frise span{flex:1;height:7px;border-radius:4px;background:#EDE5F8}
.fr-frise span.fait{background:var(--plum)}.fr-frise span.ici{background:#2F9C95}
.fr-infos{font-size:.92rem;color:#4a3d55;margin:8px 0 0;line-height:1.6}
.fr-infos b{color:var(--plum)}
.fr-liens{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 0}
.fr-note{margin:14px 0 0;padding:12px 16px;border-radius:12px;background:#fff8ec;border:1px solid #e8c98f;white-space:pre-line;font-size:.94rem}
.fr-note.pres{background:#F3EEFB;border-color:#B89BE0}
.fr-note b{display:block;margin-bottom:4px}
.fr-actions{margin:16px 0 0;padding:16px 0 0;border-top:1px dashed var(--lav-2)}
.fr-actions h4{margin:0 0 10px;color:var(--plum);font-size:1rem}
.fr-actions .row{gap:14px}
.fr-actions textarea{min-height:90px}
.fr-actions textarea.grand{min-height:220px}
.fr-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.fr-etat{font-size:.9rem;margin:10px 0 0;min-height:1.2em}
.fr-etat.ok{color:#1f6b3a}.fr-etat.ko{color:#b3261e}
.fr-histo summary{cursor:pointer;color:var(--plum);font-weight:600;font-size:.9rem;margin-top:12px}
.fr-histo ul{margin:8px 0 0;padding-left:18px;font-size:.86rem;color:#4a3d55}
.fr-cases{display:flex;flex-wrap:wrap;gap:8px 16px;margin:4px 0 10px}
.fr-cases label{font-weight:500;color:var(--ink);font-size:.92rem;display:flex;gap:6px;align-items:center;margin:0}
.fr-theme{border:2px dashed var(--lav-2);border-radius:14px;padding:16px 18px;margin:0 0 12px}
.fr-theme h3{margin:0 0 6px;font-size:1.05rem;color:var(--plum)}
.fr-filtre{max-width:340px;margin:0 0 18px}

/* Pages d action (21/09) */
.pl-etat{font-size:.9rem;margin:8px 0 0;min-height:1.2em}.pl-etat.ok{color:#1f6b3a}.pl-etat.ko{color:#b3261e}
.pl-carte{border:2px solid var(--lav-2);border-radius:14px;padding:16px 18px;margin:0 0 12px;background:#fff}
.pl-carte.cible{border-color:var(--plum);box-shadow:0 0 0 4px #EDE5F8}
.pl-carte.rouge{border-left:6px solid #b3261e}
.pl-carte h3{margin:0 0 4px;font-size:1.05rem;color:var(--plum)}
.pl-sous{font-size:.9rem;color:#5b4a66;margin:0}
.pl-btns{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px}
.pl-btns select,.pl-btns input[type=date],.pl-btns input[type=text]{padding:9px 12px;border:2px solid var(--lav-2);border-radius:10px;font:inherit;background:#fff}
.pl-btns .btn{padding:9px 16px}
.btn-oui{background:#2e9e5b;color:#fff}.btn-non{background:#b3261e;color:#fff}
.pl-champs{width:100%;border-collapse:collapse;margin:12px 0}
.pl-champs th,.pl-champs td{border:1px solid var(--lav-2);padding:8px 10px;text-align:left;vertical-align:top;font-size:.94rem}
.pl-champs th{background:#F3EEFB;color:var(--plum);width:34%}
.pl-badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:.8rem;font-weight:700;background:#EDE5F8;color:var(--plum)}
.pl-badge.rouge{background:#fde6e4;color:#b3261e}.pl-badge.vert{background:#dff3e6;color:#1f6b3a}
.pl-liste{margin:0;padding-left:18px}.pl-liste li{margin:0 0 6px}
.pl-case{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-top:1px solid var(--lav-2)}
.pl-case:first-child{border-top:0}
.pl-sec{margin-top:44px}
/* 22/09 : onglet déroulant de l'espace aligné sur les autres onglets ; numéros d'urgence lisibles */
.esp-nav .esp-menu>summary{display:block;padding:16px 12px;color:#DCC8F5;font-size:14px;font-weight:600;border-bottom:3px solid transparent}
.alerte-urgence a.urg b{color:#fff}

/* 23/09 : le téléphone Zadarma se place tout seul en haut à gauche, par-dessus le
   logo et la navigation. On le renvoie en bas à droite, où il ne recouvre rien. */
#zdrm-widget #zdrmWPhI{position:static !important;top:auto !important;left:auto !important;right:auto !important;bottom:auto !important;margin:0 !important}
#zdrm-widget .zdrm-webphone{max-width:100% !important}
