/* PÉRON 2026 — associations : liste (v2026/pages/associations.php) et fiche (v2026/pages/association-detail.php)
 * En-tête et puces de filtre : search.css · articles de la fiche : pages.css · ici : couleurs des thèmes,
 * barre de recherche, cartes, rendez-vous, encart "vous animez une association ?", fiche. */

/* ---------- Couleurs des thèmes (--th : couleur, --th-50 : fond clair) ---------- */
.p26-th--sport{--th:#007d8d;--th-50:#e3f4f5}
.p26-th--culture{--th:#6a4bc4;--th-50:#efebfb}
.p26-th--solidarite{--th:#c2493a;--th-50:#fcece8}
.p26-th--jeunesse{--th:#035a7f;--th-50:#e4f0f7}
.p26-th--nature{--th:#3d7a28;--th-50:#eaf4e3}
.p26-th--traditions{--th:#9a5d07;--th-50:#fdf2df}
.p26-th--autres{--th:#586081;--th-50:#eef0f6}

/* ---------- Chiffres clés (en-tête) ---------- */
.p26-asstats{display:flex;flex-wrap:wrap;gap:12px 14px;margin-top:26px}
.p26-asstats li{display:flex;align-items:baseline;gap:8px;padding:12px 18px;border-radius:16px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.p26-asstats strong{font-size:1.6rem;font-weight:800;line-height:1;color:#fff}
.p26-asstats span{font-weight:600;color:rgba(255,255,255,.82)}
/* Rendez-vous : cliquable (evenement ou agenda), avec le prochain rendez-vous */
.p26-asstats li.p26-asstats__ev{position:relative;align-items:center;gap:14px;max-width:min(100%,560px);padding-right:16px;transition:background .2s,border-color .2s}
.p26-asstats li.p26-asstats__ev:hover{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.45)}
.p26-asstats__ev a{display:flex;flex-direction:column;gap:4px;min-width:0;color:#fff!important;text-decoration:none!important}
.p26-asstats__ev a::after{content:"";position:absolute;inset:0;border-radius:inherit}
.p26-asstats__ev a:focus-visible{outline:none}
.p26-asstats li.p26-asstats__ev:focus-within{outline:3px solid var(--p26-mint);outline-offset:2px}
.p26-asstats__n{display:flex;align-items:baseline;gap:8px;color:#fff!important}
.p26-asstats__ev small{display:block;font-size:.84rem;font-weight:600;color:rgba(255,255,255,.78);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.p26-asstats__ev small b{font-weight:800;color:var(--p26-mint-100)}
.p26-asstats__ev>.bi{flex:none;font-size:1.3rem;color:var(--p26-mint);transition:transform .2s}
.p26-asstats__ev:hover>.bi{transform:translateX(3px)}

/* ---------- Recherche + filtres ---------- */
.p26-asso__bar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding:14px;background:#fff;border:1px solid var(--p26-line);border-radius:var(--p26-radius);box-shadow:var(--p26-shadow-sm)}
.p26-asso__search{flex:1 1 260px;display:flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;border-radius:999px;background:var(--p26-bg);border:1.5px solid transparent;transition:border-color .15s,background .15s;cursor:text}
.p26-asso__search:focus-within{border-color:var(--p26-mint);background:#fff}
.p26-asso__search .bi{color:var(--p26-teal)}
.p26-asso__search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:1rem;font-weight:600;color:var(--p26-navy)}
.p26-asso__search input::placeholder{color:#8f97b6;font-weight:500}
.js-p26asso .p26-asso__submit{display:none}

.p26-filter--th .bi{color:var(--th)}
.p26-filter--th.is-active{background:var(--th);border-color:var(--th)}
.p26-filter--th.is-active .bi{color:#fff}

.p26-asso__status{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:18px 0 16px}
.p26-asso__summary{font-weight:800;color:var(--p26-navy)}
.p26-asso__reset{font-size:.9rem}
.p26-asso__reset[hidden]{display:none}

/* ---------- Cartes ---------- */
.p26-assolist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}  /* 3 par ligne, 2 sur tablette, 1 sur mobile */
.p26-asso[hidden]{display:none}
.p26-asso__card{position:relative;display:flex;flex-direction:column;gap:12px;height:100%;padding:18px;background:#fff;border:1px solid var(--p26-line);border-radius:var(--p26-radius);box-shadow:var(--p26-shadow-sm);transition:transform .2s var(--p26-ease),border-color .2s,box-shadow .2s}
.p26-asso__card::before{content:"";position:absolute;left:18px;right:18px;top:0;height:3px;border-radius:0 0 3px 3px;background:var(--th);opacity:0;transition:opacity .2s}
.p26-asso__card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--th) 45%,#fff);box-shadow:var(--p26-shadow)}
.p26-asso__card:hover::before{opacity:1}
.p26-asso__top{display:flex;align-items:flex-start;gap:14px}  /* icone toujours en haut, meme si le nom tient sur plusieurs lignes */
.p26-asso__top .p26-asso__id{padding-top:2px}
.p26-asso__ic{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--th-50);color:var(--th);font-size:1.35rem}
.p26-asso__ic--logo,.p26-ad__ic--logo{background:#fff;border:1px solid var(--p26-line);overflow:hidden}
.p26-asso__ic img,.p26-ad__ic img{width:100%;height:100%;object-fit:contain;padding:4px}
.p26-asso__id{min-width:0}
.p26-asso__name{font-size:1.02rem;font-weight:800;line-height:1.3;overflow-wrap:anywhere}
.p26-asso__name a{color:var(--p26-navy);text-decoration:none}
.p26-asso__name a::after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}
.p26-asso__name a:focus-visible{outline:none}
.p26-asso__card:focus-within{outline:3px solid var(--p26-mint);outline-offset:2px}
/* Etiquette du thème : poussée en bas à droite (margin-top:auto), juste au-dessus du trait */
.p26-asso__theme{display:flex;justify-content:flex-end;margin-top:auto}
.p26-asso__theme span{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:999px;background:var(--th-50);color:var(--th);font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.p26-asso__pres{margin-top:4px;font-size:.88rem;font-weight:600;color:var(--p26-muted)}
.p26-asso__pres .bi{color:var(--th);margin-right:.4em}
.p26-asso mark{background:rgba(55,181,164,.3);color:inherit;border-radius:4px;padding:0 2px}
.p26-asso__foot{display:flex;align-items:center;gap:10px;padding-top:12px;border-top:1px solid #eef1f7}
.p26-asso__cs{display:flex;flex-wrap:wrap;gap:6px}
.p26-asso__c{position:relative;z-index:2;display:grid;place-items:center;width:36px;height:36px;border-radius:12px;border:1px solid var(--p26-line);color:var(--p26-navy);font-size:1rem;text-decoration:none!important;transition:background .15s,border-color .15s,color .15s}
.p26-asso__c:hover,.p26-asso__c:focus-visible{background:var(--th);border-color:var(--th);color:#fff}
.p26-asso__go{margin-left:auto;font-size:.84rem;font-weight:700;color:var(--th);white-space:nowrap}
.p26-asso__go .bi{margin-left:.3em;transition:transform .2s}
.p26-asso__card:hover .p26-asso__go .bi{transform:translateX(3px)}
.p26-asso__none{margin-top:8px}
.p26-asso__none[hidden]{display:none}

/* Boutons de contact avec libellé (fiche) */
.p26-asso__cbtns{display:grid;gap:8px}
.p26-asso__cbtn{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:14px;border:1.5px solid var(--p26-line);font-weight:700;color:var(--p26-navy)!important;text-decoration:none!important;overflow-wrap:anywhere;transition:border-color .15s,background .15s,transform .15s var(--p26-ease)}
.p26-asso__cbtn>.bi:first-child{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--th-50,var(--p26-mint-50));color:var(--th,var(--p26-teal))}
.p26-asso__cbtn:hover{border-color:var(--th,var(--p26-teal));background:var(--th-50,var(--p26-mint-50));transform:translateX(2px)}
.p26-asso__ext{margin-left:auto;font-size:.78rem;color:var(--p26-muted)}

/* ---------- Rendez-vous ---------- */
.p26-asso-evs{display:grid;gap:10px}
.p26-asso-evs--grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:14px}
.p26-asso-ev a{display:flex;align-items:center;gap:14px;height:100%;padding:12px 14px;background:#fff;border:1px solid var(--p26-line);border-radius:16px;color:var(--p26-navy);text-decoration:none!important;transition:border-color .2s,transform .2s var(--p26-ease),box-shadow .2s}
.p26-asso-ev a:hover{border-color:var(--p26-mint);transform:translateY(-2px);box-shadow:var(--p26-shadow-sm)}
.p26-asso-ev__date{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;width:56px;height:60px;border-radius:14px;background:var(--p26-navy);color:#fff;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;line-height:1.1}
.p26-asso-ev__date b{font-size:1.45rem;font-weight:800;letter-spacing:0}
.p26-asso-evs--past .p26-asso-ev__date{background:var(--p26-bg);color:var(--p26-muted)}
.p26-asso-ev__txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.p26-asso-ev__txt strong{font-weight:800;line-height:1.3}
.p26-asso-ev__txt small{display:flex;flex-wrap:wrap;gap:2px 14px;font-size:.8rem;font-weight:600;color:var(--p26-muted)}
.p26-asso-ev__txt small .bi{color:var(--p26-teal);margin-right:.4em}
.p26-asso-ev__go{flex:none;color:#b4bbd6}

/* ---------- Encart "vous animez une association ?" ---------- */
.p26-asso-cta{display:flex;flex-wrap:wrap;align-items:center;gap:20px 28px;padding:clamp(22px,4vw,36px);border-radius:var(--p26-radius-lg);background:linear-gradient(135deg,var(--p26-navy) 0%,var(--p26-blue) 70%,var(--p26-teal) 100%);color:#fff;box-shadow:var(--p26-shadow)}
.p26-asso-cta__ic{flex:none;display:grid;place-items:center;width:64px;height:64px;border-radius:20px;background:rgba(255,255,255,.12);color:var(--p26-mint);font-size:1.8rem}
.p26-asso-cta__txt{flex:1 1 320px}
.p26-asso-cta__txt h2{color:#fff;font-size:clamp(1.3rem,2.4vw,1.7rem);font-weight:800}
.p26-asso-cta__txt p{margin-top:6px;color:rgba(255,255,255,.82);font-weight:600}
.p26-asso-cta__btns{display:flex;flex-wrap:wrap;gap:10px}

/* ---------- Fiche d'une association ---------- */
.p26-ad__id{display:flex;align-items:center;gap:18px;margin-top:18px}
.p26-ad__ic{flex:none;display:grid;place-items:center;width:76px;height:76px;border-radius:22px;background:#fff;color:var(--th);font-size:2rem;box-shadow:0 16px 34px -18px rgba(0,0,0,.6)}
.p26-ad__theme{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);font-size:.78rem;font-weight:800;letter-spacing:.04em;color:#fff!important;text-decoration:none!important}
.p26-ad__theme:hover{background:rgba(255,255,255,.24)}
.p26-ad__head h1{margin-top:8px;max-width:30ch;font-size:clamp(1.6rem,4vw,2.8rem)}
.p26-ad__head .p26-crumbs span[aria-current]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.p26-ad__facts{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:18px;font-weight:600;color:rgba(255,255,255,.88)}
.p26-ad__facts .bi{color:var(--p26-mint);margin-right:4px}

.p26-ad{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(24px,4vw,40px);align-items:start}
.p26-ad__main{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;min-width:0}
.p26-ad__block{padding:clamp(20px,3vw,32px);background:#fff;border:1px solid var(--p26-line);border-radius:var(--p26-radius-lg);box-shadow:var(--p26-shadow-sm)}
.p26-ad__block>h2{font-size:1.35rem;font-weight:800;margin-bottom:6px}
.p26-ad__sub{margin:18px 0 10px;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--p26-muted)}
.p26-ad__empty{text-align:center}
.p26-ad__empty .p26-noresult__ic{background:var(--th-50);color:var(--th)}
.p26-ad__empty h2{font-size:1.4rem;font-weight:800;overflow-wrap:anywhere}
.p26-ad__empty>p{margin:10px auto 0;max-width:56ch;color:var(--p26-muted)}

.p26-ad__aside{position:sticky;top:96px;display:grid;gap:16px}
.p26-ad__card{padding:22px;background:#fff;border:1px solid var(--p26-line);border-radius:var(--p26-radius-lg);box-shadow:var(--p26-shadow-sm)}
.p26-ad__card>p+p{margin-top:12px}
.p26-ad__cardtitle{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--th,var(--p26-teal));margin-bottom:14px}
.p26-ad__facts2{margin:18px 0 0;display:grid}
.p26-ad__facts2>div{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:10px 0;border-top:1px solid #eef1f7}
.p26-ad__facts2 dt{font-size:.84rem;font-weight:600;color:var(--p26-muted)}
.p26-ad__facts2 dd{margin:0;text-align:right;font-weight:700;color:var(--p26-navy);overflow-wrap:anywhere}
.p26-ad__actions{display:flex}
.p26-ad__actions .p26-btn{flex:1}

/* ---------- Adaptations ---------- */
@media (max-width:1020px){
	.p26-ad{grid-template-columns:minmax(0,1fr)}
	.p26-ad__aside{position:static;order:-1}
	.p26-assolist{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
	.p26-assolist{grid-template-columns:1fr}
	.p26-asso__bar{padding:10px}
	.p26-asso__submit{width:100%}
	/* thèmes : une seule ligne qui défile horizontalement */
	.p26-asso__themes{flex-wrap:nowrap;overflow-x:auto;margin-inline:calc(-1 * var(--p26-gutter));padding:2px var(--p26-gutter) 6px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
	.p26-asso__themes::-webkit-scrollbar{display:none}
	.p26-asso__themes .p26-filter{flex:none}
	.p26-ad__id{flex-direction:column;align-items:flex-start;gap:14px}
	.p26-ad__ic{width:60px;height:60px;border-radius:18px;font-size:1.6rem}
	.p26-ad__head h1{font-size:1.55rem}
	.p26-asso-cta__btns,.p26-asso-cta__btns .p26-btn{width:100%}
}
@media (prefers-reduced-motion:reduce){
	.p26-asso__card,.p26-asso-ev a,.p26-asso__cbtn{transition:none}
	.p26-asso__card:hover,.p26-asso-ev a:hover{transform:none}
}
