/* Pages de listes uniquement : aucune incidence sur les pages existantes. */
.directory-page { --agf2-orange:#ff4b1b; --directory-bg:#000; --directory-card:#111; --directory-text:#fff; --directory-muted:#bbb; --directory-line:#333; background:var(--directory-bg); color:var(--directory-text); padding:160px 0 110px; min-height:75vh; }
html[data-theme="light"] .directory-page { --directory-bg:#fff; --directory-card:#f5f5f5; --directory-text:#111; --directory-muted:#555; --directory-line:#ddd; }
.directory-heading { max-width:1000px; margin-bottom:55px; }
.directory-heading .eyebrow { color:#ff4b1b; }
.directory-heading h1 { margin:20px 0 30px; font-size:clamp(3.2rem,8vw,8rem); line-height:.92; text-transform:uppercase; letter-spacing:-.065em; overflow-wrap:anywhere; }
.directory-heading > p:last-child { color:var(--directory-muted); font-size:clamp(1rem,2vw,1.25rem); line-height:1.7; max-width:700px; }
.directory-filters { display:flex; flex-wrap:wrap; gap:12px; padding-block:25px; border-block:1px solid var(--directory-line); }
.directory-filters a,.directory-pagination :is(a,span) { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:12px 20px; border:1px solid var(--directory-line); border-radius:30px; font-size:.85rem; }
.directory-filters a:hover,.directory-pagination a:hover { border-color:#ff4b1b; color:#ff4b1b; }
.directory-filters [aria-current],.directory-pagination .current { color:#111; background:#ff4b1b; border-color:#ff4b1b; }
.directory-count { color:var(--directory-muted); margin:26px 0 35px; font-size:.85rem; }
.directory-page .agf2-project-card h3 { color:var(--directory-text); }
.directory-page .agf2-project-card :is(p,.agf2-project-card__meta) { color:var(--directory-muted); }
.directory-pagination { margin-top:65px; }
.directory-pagination ul { display:flex; justify-content:center; flex-wrap:wrap; gap:10px; list-style:none; padding:0; }
.directory-expertise-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.directory-expertise-card { background:var(--directory-card); border:1px solid var(--directory-line); padding:clamp(25px,4vw,50px); transition:border-color .2s; }
.directory-expertise-card > a { display:flex; flex-direction:column; height:100%; }
.directory-expertise-card:hover,.directory-expertise-card:focus-within { border-color:#ff4b1b; }
.directory-expertise-top { display:flex; justify-content:space-between; align-items:center; color:#ff4b1b; font-weight:800; }
.directory-expertise-symbol { font-size:3rem; line-height:1; }
.directory-expertise-card .directory-expertise-tag { color:#ff4b1b; text-transform:uppercase; letter-spacing:.08em; font-size:.7rem; margin-top:45px; }
.directory-expertise-card h2 { font-size:clamp(2rem,4vw,3.6rem); line-height:1; text-transform:uppercase; letter-spacing:-.05em; margin:12px 0 22px; }
.directory-expertise-card p { color:var(--directory-muted); line-height:1.75; }
.directory-expertise-link { padding-top:25px; margin-top:auto; font-size:.78rem; font-weight:800; text-transform:uppercase; color:#ff4b1b; }
@media(max-width:760px) { .directory-page { padding:120px 0 70px; } .directory-expertise-grid { grid-template-columns:1fr; } .directory-filters { gap:8px; } .directory-filters a { padding:10px 14px; } }
@media(prefers-reduced-motion:reduce) { .directory-page * { transition:none!important; } }
