/* Annuaires BizNC — direction publique 2026, inspirée du hub Projets. */
:root{--dir-bg:#000;--dir-surface:#080809;--dir-surface-2:#111113;--dir-line:#29292d;--dir-line-strong:#4b4b51;--dir-text:#fff;--dir-soft:#aaaab0;--dir-muted:#77777d;--dir-accent:#fff;--dir-accent-text:#000}
html[data-theme="light"]{--dir-bg:#fafbf4;--dir-surface:#f5f6ee;--dir-surface-2:#eceee4;--dir-line:#d9dcd0;--dir-line-strong:#b9bdb1;--dir-text:#181a16;--dir-soft:#565b52;--dir-muted:#686c62;--dir-accent:#181a16;--dir-accent-text:#fff}
body{background:var(--dir-bg)!important;color:var(--dir-text)!important}
body>.breadcrumb{width:min(1060px,calc(100% - 64px));margin:auto;padding:18px 0;border:0!important;background:var(--dir-bg)!important;color:var(--dir-muted)!important}.breadcrumb a{color:var(--dir-soft)!important}
.hero,.section-hero{width:min(1060px,calc(100% - 64px))!important;max-width:none!important;margin:auto!important;background:var(--dir-bg)!important;color:var(--dir-text)!important}.hero{min-height:clamp(520px,72svh,720px)!important;padding:72px 0 86px!important;display:flex!important;align-items:center!important}.hero>div{max-width:900px}.section-hero{padding:clamp(28px,4vw,48px) 0 clamp(44px,5vw,68px) 0!important}.section-hero>.container{width:100%!important}
.eyebrow,.section-kicker{margin:0 0 18px!important;color:var(--dir-muted)!important;font-size:12px!important;font-weight:750!important;letter-spacing:.14em!important;text-transform:uppercase}.hero h1,.hero-title{max-width:980px!important;margin:0!important;color:var(--dir-text)!important;font-size:clamp(54px,7vw,92px)!important;font-weight:760!important;line-height:.91!important;letter-spacing:-.07em!important;overflow-wrap:anywhere}.hero-lead,.section-hero .microcopy{max-width:640px!important;margin:28px 0 0!important;color:var(--dir-soft)!important;font-size:clamp(17px,1.6vw,21px)!important;line-height:1.55!important}.actions{margin-top:30px!important}.microcopy{color:var(--dir-muted)!important}
.btn{min-height:50px!important;padding:0 22px!important;border:1px solid var(--dir-accent)!important;border-radius:5px!important;background:var(--dir-accent)!important;color:var(--dir-accent-text)!important;box-shadow:none!important}.btn:hover{transform:translateY(-2px)}
.section,.section-light,.section-dark,.seo-cluster,.final-cta,.intents-section{background:var(--dir-bg)!important;color:var(--dir-text)!important;border-color:var(--dir-line)!important}.section{padding:clamp(78px,9vw,118px) 0!important}.container{width:min(1060px,calc(100% - 64px))!important;max-width:none!important}.container.wide{width:min(1180px,calc(100% - 64px))!important}.section-heading,.final-cta h2{max-width:900px!important;margin:0 0 46px!important;color:var(--dir-text)!important;font-size:clamp(42px,5.5vw,72px)!important;line-height:.95!important;letter-spacing:-.06em!important}
/* Cartes .sat-list : canonique dans satellite.css (bloc CARTE DE FLUX). */
.section-copy,.editorial p,.faq p,.final-cta p{color:var(--dir-soft)!important}
.topic-signal-column{min-width:0!important;border-color:var(--dir-line)!important;background:var(--dir-surface)!important}.topic-signal-head{padding-bottom:12px;border-bottom:1px solid var(--dir-line)!important}.topic-signal-head span{color:var(--dir-text)!important}.topic-signal-head strong{background:var(--dir-text)!important;color:var(--dir-bg)!important}.topic-signal-more{color:var(--dir-text)!important}
.sat-chips,.company-chips{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0!important;border-top:1px solid var(--dir-line)!important}.sat-chip,.company-chip{min-height:76px!important;margin:0!important;padding:18px 48px 18px 0!important;border:0!important;border-bottom:1px solid var(--dir-line)!important;border-radius:0!important;background:transparent!important;color:var(--dir-soft)!important}.sat-chip:nth-child(odd),.company-chip:nth-child(odd){margin-right:28px!important}.sat-chip:nth-child(even),.company-chip:nth-child(even){margin-left:28px!important}.sat-chip:hover,.company-chip:hover{color:var(--dir-text)!important}.sat-chip-count{border-color:var(--dir-line)!important;background:var(--dir-surface-2)!important;color:var(--dir-soft)!important}
.actors-grid,.intents-grid,.similar-grid.is-index{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}.actor-card,.intent-item,.similar-card,.panel{border:1px solid var(--dir-line)!important;border-radius:7px!important;background:var(--dir-surface)!important;color:var(--dir-text)!important;box-shadow:none!important}.actor-card,.intent-item,.similar-card{padding:28px!important}.actor-title,.intent-content h3,.similar-name,.panel-title{color:var(--dir-text)!important}.actor-desc,.actor-stats,.intent-content p,.similar-meta,.explore-list a,.intents-section>p{color:var(--dir-soft)!important}.actor-icon,.intent-icon{background:var(--dir-surface-2)!important;color:var(--dir-text)!important;border-color:var(--dir-line)!important}.stat-item{border-color:var(--dir-line)!important}.actor-action{color:var(--dir-text)!important}
.actor-stats{background:var(--dir-surface-2)!important;border-color:var(--dir-line)!important}.actor-stats .stat-value{color:var(--dir-text)!important}.actor-stats .stat-label{color:var(--dir-muted)!important}
.fiche{width:min(1060px,calc(100% - 64px))!important;margin:auto!important;padding:90px 0!important;gap:16px!important}.panel{padding:30px!important}.institution-visual{filter:grayscale(1)!important;opacity:.82}.directory-source-note{border-color:var(--dir-line)!important;background:var(--dir-surface)!important;color:var(--dir-soft)!important}.faq details,.seo-cluster li,.seo-cluster a,.explore-list li{border-color:var(--dir-line)!important}.final-cta{min-height:560px!important}.final-cta-inner{width:min(1060px,calc(100% - 64px))!important}
@media(max-width:760px){body>.breadcrumb,.hero,.section-hero,.container,.container.wide,.fiche,.final-cta-inner{width:calc(100% - 24px)!important}body>.breadcrumb{padding:10px 0}.hero{min-height:auto!important;padding:64px 0 72px!important}.section-hero{padding:68px 0!important}.hero h1,.hero-title{font-size:clamp(46px,13vw,64px)!important}.hero-lead{margin-top:20px!important;font-size:16px!important}.section{padding:68px 0!important}.section-heading,.final-cta h2{margin-bottom:30px!important;font-size:clamp(38px,11vw,54px)!important}.sat-chips,.company-chips,.actors-grid,.intents-grid,.similar-grid.is-index{grid-template-columns:1fr!important}.sat-chip:nth-child(n),.company-chip:nth-child(n){margin:0!important}.actor-card,.intent-item,.similar-card,.panel{padding:22px!important}.fiche{padding:64px 0!important;grid-template-columns:1fr!important}.final-cta{min-height:480px!important}}
@media(prefers-reduced-motion:reduce){.btn{transition:none!important}}
.specialty-filter{max-width:720px;margin:-12px 0 38px}.specialty-filter label{display:block;margin-bottom:10px;color:var(--dir-soft);font-size:14px;font-weight:650}.specialty-filter input{width:100%;height:58px;padding:0 18px;border:1px solid var(--dir-line-strong);border-radius:7px;background:var(--dir-surface);color:var(--dir-text);font:500 16px Inter,sans-serif}.specialty-filter input:focus{outline:2px solid var(--dir-text);outline-offset:2px}.specialty-filter p{margin:9px 0 0;color:var(--dir-muted);font-size:12px}.specialty-commune{display:inline-block;padding:2px 8px;border:1px solid var(--dir-line);border-radius:999px;color:var(--dir-soft)}

/* Recherche et grandes catégories */
.directory-finder{width:min(1060px,calc(100% - 64px));margin:auto;padding:88px 0;border-top:1px solid var(--dir-line);display:grid;grid-template-columns:.82fr 1.18fr;gap:42px 70px;align-items:end}.directory-finder-copy h2{max-width:470px;margin:0;color:var(--dir-text);font-size:clamp(42px,4.8vw,66px);line-height:.96;letter-spacing:-.055em}.directory-finder-copy p:last-child{max-width:430px;margin:18px 0 0;color:var(--dir-muted);font-size:15px;line-height:1.55}.directory-search{position:relative}.directory-search input{width:100%;height:64px;padding:0 58px 0 20px;border:1px solid var(--dir-line-strong);border-radius:7px;background:var(--dir-surface);color:var(--dir-text);font:500 17px Inter,sans-serif;outline:0}.directory-search input:focus{border-color:var(--dir-text)}.directory-search input::placeholder{color:var(--dir-muted)}.directory-search svg{position:absolute;right:20px;top:21px;width:22px;height:22px;fill:none;stroke:var(--dir-muted);stroke-width:2}.directory-search-status{position:absolute;top:68px;left:2px;margin:0;color:var(--dir-muted);font-size:12px}.directory-categories{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--dir-line)}.directory-category{min-height:88px;padding:18px 4px;border:0;border-bottom:1px solid var(--dir-line);background:transparent;color:var(--dir-soft);display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;font:650 16px Inter,sans-serif;cursor:pointer}.directory-category:not(:nth-child(3n)){margin-right:28px}.directory-category strong{min-width:30px;height:30px;padding:0 8px;border:1px solid var(--dir-line);border-radius:999px;display:grid;place-items:center;color:var(--dir-muted);font-size:11px}.directory-category:hover,.directory-category.is-active{color:var(--dir-text)}.directory-category.is-active strong{border-color:var(--dir-text);background:var(--dir-text);color:var(--dir-bg)}[data-directory-category][hidden]{display:none!important}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:760px){.directory-finder{width:calc(100% - 24px);padding:66px 0;grid-template-columns:1fr;gap:30px}.directory-finder-copy h2{font-size:clamp(38px,11vw,52px)}.directory-finder-copy p:last-child{margin-top:12px;font-size:14px}.directory-search input{height:58px;font-size:15px}.directory-search svg{top:18px}.directory-search-status{top:63px}.directory-categories{grid-template-columns:1fr;margin-top:12px}.directory-category:nth-child(n){min-height:70px;margin:0}}

.directory-group-heading{grid-column:1/-1!important;min-height:0!important;margin:72px 0 0!important;padding:0 0 22px!important;border:0!important;border-bottom:1px solid var(--dir-line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:20px!important;color:var(--dir-text)!important;list-style:none!important;transform:none!important}.directory-group-heading:first-child{margin-top:0!important}.directory-group-heading:after{display:none!important}.directory-group-heading h3{margin:0!important;color:var(--dir-text)!important;font-size:clamp(30px,3.8vw,48px)!important;line-height:1!important;letter-spacing:-.05em!important}.directory-group-heading span{color:var(--dir-muted)!important;font-size:12px!important;white-space:nowrap!important}.sat-list>.directory-group-heading:hover{padding-left:0!important}.sat-list>.directory-group-heading+li,.similar-grid.is-index>.directory-group-heading+a,.sat-chips>.directory-group-heading+a{border-top:0!important}
@media(max-width:760px){.directory-group-heading{margin-top:54px!important;padding-bottom:16px!important}.directory-group-heading:first-child{margin-top:0!important}.directory-group-heading h3{font-size:clamp(28px,9vw,40px)!important}}

/* Footer officiel, raccordé aux thèmes de la DA publique. */
.official-footer{background:var(--dir-bg)!important;color:var(--dir-muted)!important;border-top:1px solid var(--dir-line)!important}.official-footer .footer-col-title{color:var(--dir-text)!important}.official-footer .footer-brand-desc,.official-footer .footer-col-links a,.official-footer .footer-bottom,.official-footer .footer-bottom a,.official-footer .footer-brand,.official-footer .footer-version{color:var(--dir-muted)!important}.official-footer .footer-col-links a:hover,.official-footer .footer-contact,.official-footer .footer-contact:hover{color:var(--dir-text)!important}.official-footer .footer-icon{color:var(--dir-muted)!important}.official-footer .footer-divider{background:var(--dir-line)!important}.official-footer .footer-socials a{border-color:var(--dir-line)!important;background:var(--dir-surface)!important;color:var(--dir-muted)!important}.official-footer .footer-socials a:hover{border-color:var(--dir-line-strong)!important;background:var(--dir-surface-2)!important;color:var(--dir-text)!important}.official-footer .footer-partners{border-color:var(--dir-line)!important}
html:not([data-theme="light"]) .official-footer .footer-biznc-logo,html:not([data-theme="light"]) .official-footer .neonea-footer-logo,html:not([data-theme="light"]) .official-footer .french-tech-logo{filter:grayscale(1) invert(1)!important}html[data-theme="light"] .official-footer .footer-biznc-logo,html[data-theme="light"] .official-footer .neonea-footer-logo,html[data-theme="light"] .official-footer .french-tech-logo{filter:none!important}


/* Rattrapage des surfaces repeintes en sombre sans recoloration du texte.
   Même cause que sur public-modern.css : satellite.css décrit .seo-cluster,
   details et les blocs FAQ comme des surfaces CLAIRES et y pose des encres en
   dur (#101418, #181a16, #4a4d45). Les règles plus haut repeignent le fond en
   --dir-bg sans toucher ces enfants, d'où du texte noir sur noir sur
   veille-*.html et acteurs/. */
.seo-cluster h2,.seo-cluster h3,.section h3,.faq summary,details>summary,.faq dt,dl dt,.editorial strong,.faq strong{color:var(--dir-text)!important}
.faq details,details{background:var(--dir-surface)!important;border-color:var(--dir-line)!important}
.faq details p,details p,.faq dd,dl dd,.seo-cluster p{color:var(--dir-soft)!important}
.directory-source-note a{color:var(--dir-text)!important}
.geo-lead strong,.section .container>p strong,.editorial p strong{color:var(--dir-text)!important}
