:root,:root[data-theme="dark"]{
  --mint:#352274;--green:#352274;--green-d:#281857;--green-l:#57429A;--on-mint:#FFFFFF;
  --yellow:#D5302A;--coral:#D5302A;--blue:#352274;--blue-d:#241750;
  --off:#F7F5FB;--white:#FFFFFF;--ink:#211C2E;--ink-soft:#625D6D;
  --line:rgba(53,34,116,.15);--line-soft:rgba(53,34,116,.08);
  --card:#FFFFFF;--tile:#FFFFFF;--on-dark:#FFFFFF;
  --shadow:0 12px 28px -22px rgba(53,34,116,.35);
  color-scheme:light;
}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --mint:#352274;--green:#352274;--green-d:#281857;--green-l:#57429A;--on-mint:#FFFFFF;
  --yellow:#D5302A;--coral:#D5302A;--blue:#352274;--blue-d:#241750;
  --off:#F7F5FB;--white:#FFFFFF;--ink:#211C2E;--ink-soft:#625D6D;
  --line:rgba(53,34,116,.15);--line-soft:rgba(53,34,116,.08);
  --card:#FFFFFF;--tile:#FFFFFF;--on-dark:#FFFFFF;color-scheme:light;
}}
.cur-link{color:var(--green)!important;font-weight:700!important;}
.skip-link{position:fixed;z-index:1000;left:16px;top:12px;transform:translateY(-160%);padding:12px 16px;
  border-radius:8px;background:#fff;color:var(--ink);box-shadow:var(--shadow);font-weight:700;}
.skip-link:focus{transform:none;}
.brand{width:174px;height:68px;display:flex;align-items:center;flex:none;}
.brand .l{display:block!important;width:170px;height:64px;max-width:none;object-fit:contain;}
.foot .flogo{width:180px;height:auto;max-height:none;background:#fff;padding:8px 10px;border-radius:10px;}
.btn-yellow{background:#D5302A!important;border-color:#D5302A!important;color:#fff!important;}
.btn-primary{background:#352274!important;border-color:#352274!important;color:#fff!important;}
.btn-primary:hover{background:#281857!important;border-color:#281857!important;}
.hslide::after{background:linear-gradient(75deg,rgba(28,18,67,.88) 0%,rgba(40,24,87,.68) 42%,rgba(40,24,87,.22) 72%,rgba(40,24,87,.42) 100%);}
.hlabel{background:rgba(213,48,42,.18);border-color:rgba(255,255,255,.42);color:#fff;}
.content-hero{background:linear-gradient(135deg,#EEEAF8,#FFFFFF 72%)!important;}
.editorial-card:hover{border-color:rgba(53,34,116,.42);transform:translateY(-2px);}
.editorial-card{transition:border-color .2s ease,transform .2s ease;}
.source-note,.empty-state{border-left-color:#D5302A;background:#FCF0EF;}
.timeline{border-left-color:#D5302A;}
.timeline li:before{background:#352274;}
.page-tag{background:#EEEAF8;color:#352274;}
.region-list span,.partner-list li,.values p,.impact-grid article{background:#F7F5FB;}
.stub{padding:64px 0 72px;}
.stub .box{max-width:70ch;}
.stub .kind{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--coral);background:rgba(231,90,77,.12);
  border-radius:100px;padding:6px 14px;}
.stub h1{font-family:'Jakarta',sans-serif;font-weight:800;letter-spacing:-.02em;
  font-size:clamp(1.9rem,3.6vw,2.8rem);margin:18px 0 0;line-height:1.14;}
.stub p{margin-top:18px;color:var(--ink-soft);font-size:1.05rem;}
.stub .acts{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px;}
.content-hero{padding:50px 0;background:linear-gradient(135deg,#EEEAF8,#FFFFFF 72%);overflow:hidden;}
.content-hero.has-hero-image .wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:52px;align-items:center;}
.content-hero-copy{min-width:0;}
.content-hero h1{max-width:900px;margin:14px 0 12px;font-family:'Jakarta',sans-serif;
  font-size:clamp(2.2rem,5vw,4.2rem);line-height:1.03;letter-spacing:-.045em;}
.content-hero p{max-width:680px;color:var(--ink-soft);font-size:1.08rem;line-height:1.7;}
.content-hero-media,.phead-hero-media{position:relative;margin:0;min-height:300px;border-radius:24px;
  overflow:hidden;background:#ddd8ec;box-shadow:0 24px 58px -36px rgba(53,34,116,.7);}
.content-hero-media::after,.phead-hero-media::after{content:"";position:absolute;inset:0;
  background:linear-gradient(145deg,rgba(53,34,116,.06),rgba(53,34,116,.28));pointer-events:none;}
.content-hero-media img,.phead-hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.phead.has-hero-image{padding:44px 0;background:linear-gradient(135deg,#EEEAF8,#FFFFFF 72%);}
.phead.has-hero-image>.wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:26px 52px;align-items:center;}
.phead.has-hero-image .phead-copy{min-width:0;}
.phead.has-hero-image .phead-hero-media{min-height:300px;}
.phead.has-hero-image .searchbar,.phead.has-hero-image .filter-row{grid-column:1/-1;}
.content-body{padding-top:42px;padding-bottom:62px;}
.content-body>section{max-width:760px;margin:0 0 32px;}
.content-body h2{font-family:'Jakarta',sans-serif;font-size:clamp(1.45rem,2.5vw,2rem);
  line-height:1.2;margin:0 0 16px;color:var(--ink);}
.content-body p,.content-body li{line-height:1.8;color:var(--ink-soft);}
.content-body ul{padding-left:1.25rem;}
.editorial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 0 34px;}
.editorial-card{padding:28px;border:1px solid rgba(24,58,85,.12);border-radius:18px;background:#fff;
  box-shadow:none;}
.editorial-card h2{font-size:1.2rem;margin:12px 0;}
.editorial-card p{font-size:.95rem;}
.page-tag{display:inline-flex;padding:5px 10px;border-radius:99px;background:var(--mint);color:var(--green);
  font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;}
.editorial-cta{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px;
  border-radius:22px;background:var(--green);margin-top:38px;}
.editorial-cta h2,.editorial-cta p{color:#fff;margin:0}.editorial-cta p{margin-top:8px;opacity:.82}
.timeline{list-style:none;padding:0;max-width:850px;border-left:3px solid var(--yellow);margin-left:8px;}
.timeline li{padding:0 0 34px 30px;position:relative}.timeline li:before{content:'';position:absolute;left:-9px;
  top:4px;width:15px;height:15px;border-radius:50%;background:var(--coral);border:3px solid #fff;}
.timeline b{font-family:'Jakarta',sans-serif;color:var(--ink);font-size:1.12rem}
.values,.impact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.values p,.impact-grid article{padding:22px;border-radius:14px;background:var(--off);}
.impact-grid{margin-bottom:38px}.impact-grid article{display:flex;flex-direction:column}
.impact-grid b{font:800 clamp(2rem,4vw,3.4rem)/1 'Jakarta',sans-serif;color:var(--green)}
.impact-grid span{margin-top:10px;color:var(--ink-soft);line-height:1.45}
.partner-list,.region-list{display:flex;flex-wrap:wrap;gap:10px;padding:0!important;list-style:none}
.partner-list li,.region-list span{padding:10px 14px;border-radius:10px;background:var(--off);color:var(--ink)}
.source-note,.empty-state{padding:20px;border-left:4px solid var(--yellow);background:#fff9eb;border-radius:0 12px 12px 0}
.empty-state{max-width:750px;margin:24px 0 48px}.empty-state p{margin:6px 0 0}
.sec{padding-top:68px;padding-bottom:68px;}
.hero{min-height:600px;}
.dom-grid{gap:16px;}
.dom{box-shadow:none!important;}
.about-grid{align-items:center;}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 28px;}
.filters .filter{min-height:44px;}
.site-search{max-width:760px;margin-bottom:26px;}
.site-search label{display:block;font-weight:700;margin-bottom:10px;}
.search-row{display:flex;gap:10px;}
.search-row input{min-width:0;flex:1;border:1px solid var(--line);border-radius:10px;padding:13px 14px;
  color:var(--ink);background:#fff;font:inherit;}
.search-status{color:var(--ink-soft);margin-bottom:24px;}
.profile-layout{display:grid;grid-template-columns:minmax(240px,360px) minmax(0,1fr);gap:42px;
  align-items:start;padding-top:48px;padding-bottom:62px;}
.profile-photo{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:18px;}
.profile-layout h1{font:800 clamp(2.1rem,5vw,4rem)/1.05 'Jakarta',sans-serif;margin:18px 0 8px;}
.profile-role{font-size:1.18rem;font-weight:700;color:var(--green);margin-bottom:24px;}
.profile-layout>div>p{max-width:68ch;line-height:1.75;}
.profile-status{display:inline-flex!important;margin:0 0 18px!important;padding:7px 11px;border-radius:99px;
  background:#fff6df;color:#714f00;font-size:.78rem;font-weight:800;}
.profile-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:34px 0;}
.profile-section{padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff;}
.profile-section h2{font:800 1.05rem/1.25 'Jakarta',sans-serif;margin:0 0 12px;color:var(--ink);}
.profile-section ul{margin:0;padding-left:20px}.profile-section li{margin:7px 0;line-height:1.55;}
.profile-section a{color:var(--green);font-weight:700;text-decoration:underline;text-underline-offset:3px;}
.profile-missing{background:var(--off)}.profile-missing p{margin:0;color:var(--ink-soft);}
.profile-actions,.team-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;}
.team-expertise{margin-top:44px;max-width:920px}.team-expertise h2,.team-cta h2{
  font:800 clamp(1.7rem,3vw,2.5rem)/1.1 'Jakarta',sans-serif;margin:14px 0;}
.team-expertise>p{max-width:72ch;color:var(--ink-soft);line-height:1.7;}
.expertise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px;}
.expertise-grid article{padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff;}
.expertise-grid h3{font:800 1rem/1.25 'Jakarta',sans-serif;margin:0 0 8px;}
.expertise-grid p{margin:0;color:var(--ink-soft);line-height:1.55;}
.team-cta{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:40px;padding:30px;
  border-radius:20px;background:var(--off);}
.team-cta p{margin:0;color:var(--ink-soft)}.team-cta .team-actions{margin:0;justify-content:flex-end;}
.governance-intro{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:16px;margin:34px 0;}
.governance-intro article{padding:24px;border:1px solid var(--line);border-radius:16px;background:#fff;}
.governance-intro .governance-lead{background:var(--off)}.governance-intro h2{
  font:800 1.12rem/1.25 'Jakarta',sans-serif;margin:12px 0 10px;}
.governance-intro p{margin:0;color:var(--ink-soft);line-height:1.65;}
.intervention-map-section{background:var(--off);}
.map-section-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:34px;}
.map-section-head>div{max-width:720px}.map-section-head .h2{margin:16px 0 12px;}
.map-section-head .lead{margin:0}.map-section-head>.btn{flex:0 0 auto;}
.map-symbols{position:absolute;pointer-events:none;}
.map-mobile-select{display:none;margin:0 0 18px;font-weight:800;}
.map-mobile-select span{display:block;margin-bottom:8px;}
.map-mobile-select select,.map-filters select{width:100%;min-height:46px;padding:10px 38px 10px 12px;
  border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font:inherit;}
.intervention-map-grid{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(330px,.84fr);
  gap:24px;align-items:start;}
.intervention-map-canvas{padding:20px;border:1px solid rgba(39,29,78,.12);border-radius:22px;
  background:linear-gradient(145deg,#fff 0%,#f2f8f6 100%);overflow:hidden;}
.guinea-regions{display:block;width:100%;height:auto;max-height:650px;}
.map-region{fill:#dedde6;stroke:#fff;stroke-width:2.2;vector-effect:non-scaling-stroke;
  cursor:pointer;transition:fill .2s ease,filter .2s ease,transform .2s ease;transform-box:fill-box;transform-origin:center;}
.map-region.documented{fill:#cfe9df}.map-region:hover,.map-region:focus-visible{fill:#f5cc4b;filter:drop-shadow(0 5px 8px rgba(39,29,78,.16));outline:none;}
.map-region.is-selected{fill:#352274;filter:drop-shadow(0 7px 10px rgba(39,29,78,.28));}
.map-region-hit{fill:var(--coral);stroke:#fff;stroke-width:4;cursor:pointer;transition:transform .2s ease;
  transform-box:fill-box;transform-origin:center;}
.map-region-hit:hover,.map-region-hit:focus-visible,.map-region-hit.is-selected{transform:scale(1.25);outline:none;}
.map-region-label{fill:var(--ink);font:800 17px/1 'Jakarta',sans-serif;pointer-events:none;
  paint-order:stroke;stroke:#fff;stroke-width:4;stroke-linejoin:round;}
.map-region.is-selected~.map-region-label{fill:var(--ink)}
.map-legend{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:12px;color:var(--ink-soft);font-size:.82rem;}
.map-legend span{display:inline-flex;align-items:center;gap:8px}.map-legend i{width:12px;height:12px;border-radius:4px;}
.legend-confirmed{background:#cfe9df}.legend-empty{background:#dedde6;}
.map-attribution{display:block;margin-top:12px;color:var(--ink-soft);font-size:.68rem;line-height:1.45;}
.intervention-panel{padding:30px;border:1px solid rgba(39,29,78,.12);border-radius:22px;background:#fff;
  box-shadow:0 14px 35px rgba(39,29,78,.08);}
.intervention-panel>h3{font:800 clamp(2rem,4vw,3rem)/1 'Jakarta',sans-serif;margin:14px 0 22px;}
.map-status,.map-result-status{display:inline-flex;padding:6px 10px;border-radius:99px;font-size:.72rem;
  font-weight:800;text-transform:uppercase;letter-spacing:.04em;}
.map-status.is-confirmed{background:#e9e3f8;color:#352274}.map-status.is-empty{background:#ececf1;color:#5c6170;}
.map-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:24px;}
.map-summary div{padding:16px;border-radius:13px;background:var(--off)}.map-summary b{display:block;
  font:800 1.8rem/1 'Jakarta',sans-serif;color:var(--purple)}.map-summary span{display:block;margin-top:6px;font-size:.8rem;color:var(--ink-soft);}
.intervention-panel section{padding:18px 0;border-top:1px solid var(--line);}
.intervention-panel h4{margin:0 0 10px;font:800 .92rem/1.25 'Jakarta',sans-serif;}
.intervention-panel p,.intervention-panel li{line-height:1.55;color:var(--ink-soft);}
.intervention-panel ul{margin:0;padding-left:20px}.intervention-panel li+li{margin-top:7px;}
.map-domain-badges{display:flex;flex-wrap:wrap;gap:8px}.map-domain-badge{display:inline-flex;align-items:center;gap:7px;
  padding:8px 10px;border-radius:10px;background:var(--off);font-size:.76rem;font-weight:750;color:var(--ink);}
.map-domain-badge svg{width:17px;height:17px}.d-sante{color:#246f61}.d-repro{color:#9d2d4e}
.d-jeunesse{color:#725100}.d-genre{color:#8f2a73}.d-gouv{color:#563a91}
.map-link-list{list-style:none;padding:0!important}.map-link-list li{display:flex;justify-content:space-between;gap:14px;align-items:start;}
.map-link-list a{color:var(--green);font-weight:750;text-decoration:underline;text-underline-offset:3px;}
.map-link-list small{flex:0 0 auto;color:var(--ink-soft)}.map-data-note{padding:12px 14px;border-radius:10px;background:#fff8df;font-size:.8rem;}
.map-page-body{padding-top:42px;padding-bottom:62px}.map-page-body>.h2{margin:0 0 12px}.map-page-body>.lead{max-width:760px;margin-bottom:24px;}
.map-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:end;
  padding:20px;margin-bottom:24px;border:1px solid var(--line);border-radius:16px;background:var(--off);}
.map-filters label{font-size:.82rem;font-weight:800}.map-filters select{display:block;margin-top:7px;}
.map-grid-large{grid-template-columns:minmax(0,1.3fr) minmax(350px,.7fr)}
.map-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:30px;}
.map-results>section{min-width:0}.map-results-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px;}
.map-results-head h2{margin:0;font:800 1.35rem/1.2 'Jakarta',sans-serif}.map-results-head span{color:var(--ink-soft);font-size:.82rem;}
.map-project-results,.map-news-results{display:grid;gap:12px}.map-result-card{padding:20px;border:1px solid var(--line);border-radius:14px;background:#fff;}
.map-result-card h3{margin:9px 0 7px;font:800 1rem/1.35 'Jakarta',sans-serif}.map-result-card h3 a{color:var(--ink);}
.map-result-card p,.map-result-card time{margin:0;color:var(--ink-soft);font-size:.82rem}.map-result-status{background:#e9e3f8;color:#352274;}
.map-source{max-width:none;margin-top:28px;}
.form-note{flex-basis:100%;margin:4px 0 0;color:#fff;font-size:.85rem;}

/* Système UX/UI : hiérarchie plus calme, interactions explicites et mouvement utile. */
body::after{content:"";position:fixed;z-index:999;left:0;top:0;width:100%;height:3px;
  background:#D5302A;transform:scaleX(var(--scroll-progress,0));transform-origin:left;
  pointer-events:none;}
.mainbar{transition:box-shadow .25s ease,border-color .25s ease;}
body.has-scrolled .mainbar{box-shadow:0 10px 30px -24px rgba(33,28,46,.55);border-color:transparent;}
.sec{padding-top:68px;padding-bottom:68px;}
.h2{letter-spacing:-.035em;line-height:1.1;text-wrap:balance;}
.lead{line-height:1.72;}
.about-media img{max-height:560px;aspect-ratio:4/5;object-fit:cover;}
.dom{min-height:270px;border-color:var(--line-soft);box-shadow:0 10px 32px -28px rgba(53,34,116,.45)!important;}
.more{display:inline-flex;align-items:center;gap:7px;max-width:max-content;}
.more svg{display:block;width:14px!important;height:14px!important;min-width:14px;max-width:14px;
  flex:0 0 14px;stroke-width:1.8;}
.na .more{margin-top:14px;line-height:1.25;}
.na-body{padding:22px 22px 23px;}
.na-grid{gap:18px!important;}
.news-grid{gap:24px;}
.news-side{gap:18px;}
.feature .fbody{padding:34px 32px;}
.foot{padding-top:58px;}
.feature,.na,.intervention-map-canvas,.intervention-panel{box-shadow:0 18px 48px -38px rgba(53,34,116,.5);}
.btn{transition:transform .22s cubic-bezier(.2,.75,.25,1),box-shadow .22s ease,
  background-color .22s ease,border-color .22s ease,color .22s ease;}
.btn:active{transform:translateY(0) scale(.98);}
.map-disclosure{border-top:1px solid var(--line);}
.map-disclosure summary{position:relative;cursor:pointer;list-style:none;padding:17px 34px 17px 0;
  font:800 .92rem/1.3 'Jakarta',sans-serif;color:var(--ink);}
.map-disclosure summary::-webkit-details-marker{display:none;}
.map-disclosure summary::after{content:"+";position:absolute;right:2px;top:50%;width:24px;height:24px;
  margin-top:-12px;display:grid;place-items:center;border-radius:50%;background:var(--off);
  color:var(--green);font-size:1.05rem;transition:transform .22s ease,background-color .22s ease;}
.map-disclosure[open] summary::after{transform:rotate(45deg);background:#EEEAF8;}
.map-disclosure>div,.map-disclosure>ul,.map-disclosure>p{margin-top:0;margin-bottom:17px;}
.intervention-panel>.map-data-note{margin-top:18px;}
.intervention-panel>.btn{margin-top:4px;}

@media (hover:hover) and (prefers-reduced-motion:no-preference){
  .btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px -16px rgba(53,34,116,.65);}
  .dom,.na,.editorial-card,.map-result-card,.expertise-grid article,.governance-intro article{
    transition:transform .3s cubic-bezier(.2,.75,.25,1),box-shadow .3s ease,border-color .3s ease;}
  .dom:hover,.na:hover,.editorial-card:hover,.map-result-card:hover,.expertise-grid article:hover,
  .governance-intro article:hover{transform:translateY(-5px);box-shadow:0 22px 42px -28px rgba(53,34,116,.5);}
  .na-img img,.feature .fmedia img{transition:transform .65s cubic-bezier(.2,.75,.25,1);}
  .na:hover .na-img img,.feature:hover .fmedia img{transform:scale(1.035);}
}
@media (prefers-reduced-motion:no-preference){
  .rv.in{transition-delay:var(--motion-delay,0ms);}
  .motion-item{opacity:0;transform:translateY(20px);
    transition:opacity .62s ease,transform .62s cubic-bezier(.2,.75,.25,1);
    transition-delay:var(--motion-delay,0ms);}
  .motion-item.is-visible{opacity:1;transform:none;}
  .hpane.on .hlabel,.hpane.on .htitle,.hpane.on p,.hpane.on .acts{
    animation:hero-rise .62s both cubic-bezier(.2,.75,.25,1);}
  .hpane.on .htitle{animation-delay:.08s}.hpane.on p{animation-delay:.16s}.hpane.on .acts{animation-delay:.24s}
  .intervention-panel.is-updating{animation:panel-refresh .38s cubic-bezier(.2,.75,.25,1);}
  .map-result-card{animation:result-in .42s both cubic-bezier(.2,.75,.25,1);}
  .map-result-card:nth-child(2){animation-delay:.06s}.map-result-card:nth-child(3){animation-delay:.12s}
  @keyframes hero-rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
  @keyframes panel-refresh{from{opacity:.55;transform:translateY(8px)}to{opacity:1;transform:none}}
  @keyframes result-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
}
@media (prefers-reduced-motion:reduce){
  body::after{display:none}.mainbar,.btn,.dom,.na,.map-region,.map-region-hit,
  .map-disclosure summary::after{transition:none!important;}
  .motion-item{opacity:1!important;transform:none!important;}
}
@media(max-width:1080px){
  .mainbar nav[aria-label="Navigation principale"]{display:none;position:absolute;z-index:100;top:82px;left:16px;right:16px;
    padding:12px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);}
  .mainbar nav.mobile-open{display:block;}
  .mainbar nav .menu{display:flex;flex-direction:column;align-items:stretch;}
  .mainbar nav .menu>li>a{display:flex;min-height:44px;white-space:normal;}
  .mainbar nav .submenu{position:static;display:block;opacity:1;visibility:visible;transform:none;box-shadow:none;
    border:0;border-left:2px solid var(--line);border-radius:0;margin-left:14px;padding:2px 0 2px 8px;}
}
@media(max-width:820px){.editorial-cta,.team-cta{align-items:flex-start;flex-direction:column}.hero{min-height:560px}
  .sec{padding-top:54px;padding-bottom:54px}
  .content-hero.has-hero-image .wrap,.phead.has-hero-image>.wrap{grid-template-columns:1fr;gap:28px}
  .content-hero-media,.phead.has-hero-image .phead-hero-media{min-height:260px}
  .expertise-grid,.governance-intro{grid-template-columns:1fr}.team-cta .team-actions{justify-content:flex-start}
  .map-section-head{align-items:flex-start;flex-direction:column}.map-mobile-select{display:block}
  .intervention-map-grid,.map-grid-large,.map-results{grid-template-columns:1fr}
  .map-filters{grid-template-columns:1fr 1fr}.intervention-panel{padding:24px}.map-region-label{font-size:19px}}
@media(max-width:560px){.editorial-grid,.values,.impact-grid{grid-template-columns:1fr}.content-hero{padding:52px 0 42px}
  .content-hero-media,.phead.has-hero-image .phead-hero-media{min-height:210px;border-radius:18px}
  .phead.has-hero-image{padding:38px 0}
  .content-body{padding-top:44px}.editorial-card{padding:22px}
  .brand{width:154px;height:64px}.brand .l{width:150px;height:58px}
  .topbar{display:none!important}
  .hero{min-height:620px}
  .about-media{display:none}
  .feature .fmedia{display:none}
  #actualites .news-side .ns:nth-child(2){display:none}
  #partenaires .marquee{display:none}
  .sec{padding-top:44px;padding-bottom:44px}
  .search-row{flex-direction:column}.profile-layout{grid-template-columns:1fr;gap:28px;padding-top:36px}
  .profile-details{grid-template-columns:1fr}.team-grid{grid-template-columns:1fr!important}
  .map-filters{grid-template-columns:1fr}.intervention-map-canvas{padding:10px}.intervention-panel{padding:20px}
  .map-region-label{font-size:22px}.map-summary{grid-template-columns:1fr 1fr}
  .profile-photo{max-width:320px}.map-grid>*{min-width:0}
}

/* ================================================================
   Direction 2026 — ONG internationale, éditoriale et contemporaine
   ================================================================ */
:root{
  --surface:#FBFAFD;--surface-warm:#F7F3EF;--surface-purple:#F1EEF8;
  --purple:#352274;--purple-deep:#1D123F;--red:#D5302A;
  --radius-card:24px;--radius-media:28px;
  --shadow-soft:0 18px 50px -38px rgba(33,18,74,.45);
  --shadow-lift:0 26px 64px -38px rgba(33,18,74,.55);
}
html{background:var(--surface);}
body{background:var(--surface);letter-spacing:-.006em;}
.wrap{max-width:1280px;padding-left:32px;padding-right:32px;}
.topbar{display:none!important;}
.mainbar{background:rgba(251,250,253,.94);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);}
.mainbar .wrap{height:76px;}
.brand{width:158px;height:62px}.brand .l{width:154px;height:58px;}
.social-icons{display:flex;align-items:center;gap:8px;}
.social-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(53,34,116,.12);
  border-radius:12px;background:#fff;color:var(--purple);box-shadow:0 8px 24px -20px rgba(33,18,74,.6);
  transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease;}
.social-icon svg{width:17px;height:17px;fill:currentColor;}
.social-icons-header{gap:5px;margin-left:auto;}
.social-icons-header .social-icon{width:32px;height:32px;border-radius:10px;background:var(--surface-purple);box-shadow:none;}
.social-icons-header .social-icon svg{width:14px;height:14px;}
.social-icons-footer{margin-top:20px;}
.social-icons-footer .social-icon{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff;box-shadow:none;}
.contact-social-card{margin-top:18px;padding:22px;border:1px solid rgba(53,34,116,.08);
  border-radius:19px;background:#fff;}
.contact-social-card .section-kicker{margin-bottom:8px;}
.contact-social-card h2{margin:0 0 17px!important;font-size:1.15rem!important;}
.social-icons-contact .social-icon{width:44px;height:44px;border-radius:13px;background:var(--surface-purple);}
.social-icons-contact .social-icon svg{width:19px;height:19px;}
.menu{gap:4px!important;}
.menu>li>a{position:relative;padding:12px 14px!important;border-radius:999px;font-size:.9rem;}
.menu>li>a:hover{background:var(--surface-purple);color:var(--purple);}
.menu>li>a::after{content:"";position:absolute;left:16px;right:16px;bottom:7px;height:2px;
  background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .24s ease;}
.menu>li>a:hover::after,.menu>li>a.cur-link::after{transform:scaleX(1);}
.header-cta .btn,.mainbar>.wrap>.btn{border-radius:999px;padding:12px 22px;}
.curve{display:none;}
.hero{margin:14px 16px 0;border-radius:30px;min-height:0;box-shadow:var(--shadow-soft);}
.hero-track{height:clamp(590px,calc(100vh - 105px),760px);}
.hero-body .wrap{width:100%;}
.hcontent{max-width:760px;}
.hpane .htitle{font-size:clamp(2.6rem,5.5vw,5rem);line-height:1.01;letter-spacing:-.055em;}
.hpane p{font-size:clamp(1rem,1.5vw,1.16rem);line-height:1.65;max-width:58ch;}
.hlabel{padding:8px 15px;background:rgba(213,48,42,.22);border-color:rgba(255,255,255,.5);}
.btn{border-radius:999px;padding:13px 21px;font-weight:750;letter-spacing:-.01em;}
.btn-ghost{background:rgba(255,255,255,.72);border-color:rgba(53,34,116,.18);}
.hero .btn-ghost{background:rgba(255,255,255,.09);color:#fff;border-color:rgba(255,255,255,.48);}
.sec{position:relative;padding-top:62px;padding-bottom:62px;}
.sec>.wrap{position:relative;z-index:1;}
.eyebrow{font-weight:800;color:var(--purple);letter-spacing:.15em;}
.eyebrow::before{width:22px;height:2px;background:var(--red);}
.h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.02;letter-spacing:-.055em;}
.lead{font-size:1.03rem;line-height:1.68;}
#apropos{background:var(--surface);}
#domaines,#actualites{background:var(--surface-purple)!important;}
.about-grid{grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);gap:58px;}
.about-media{isolation:isolate;}
.about-media::before{content:"";position:absolute;z-index:-1;left:-16px;bottom:-16px;width:42%;height:42%;
  border-radius:26px;background:var(--red);}
.about-media img{border-radius:var(--radius-media);box-shadow:var(--shadow-lift);}
.badges{gap:8px}.badge{background:#fff;padding:7px 13px;border-color:rgba(53,34,116,.1);}
.dom-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;}
.dom{grid-column:span 6;min-height:240px;padding:28px;border:0;border-radius:var(--radius-card);
  background:rgba(255,255,255,.9);box-shadow:var(--shadow-soft)!important;overflow:hidden;position:relative;}
.dom:nth-child(n+3){grid-column:span 4;}
.dom:nth-child(1),.dom:nth-child(4){background:linear-gradient(145deg,#fff,#F6F3FC);}
.dom::after{content:"";position:absolute;right:-42px;bottom:-54px;width:130px;height:130px;
  border-radius:50%;background:rgba(53,34,116,.045);transition:transform .4s ease;}
.dom:hover::after{transform:scale(1.25);}
.dom .ic{width:48px;height:48px;border-radius:15px;margin-bottom:18px;}
.dom h3{font-size:1.18rem;letter-spacing:-.025em}.dom p{line-height:1.62;}
.feature{border:0;border-radius:30px;overflow:hidden;background:#fff;box-shadow:var(--shadow-lift);}
.feature .fmedia{min-height:440px}.feature .fbody{padding:40px;}
.feature h3{letter-spacing:-.035em;line-height:1.16;}
.intervention-map-section{background:linear-gradient(180deg,#F8F6FB 0%,#F0EDF7 100%)!important;}
.map-section-head{margin-bottom:28px;}
.intervention-map-canvas,.intervention-panel{border:0;border-radius:26px;box-shadow:var(--shadow-soft);}
.intervention-map-canvas{background:#fff;}
.intervention-panel{background:rgba(255,255,255,.94);}
.map-summary div{background:var(--surface-purple);border-radius:16px;}
.map-disclosure summary{padding-top:15px;padding-bottom:15px;}
.intervention-map-section{position:relative;overflow:hidden;}
.intervention-map-section::before{content:"";position:absolute;right:-140px;top:-180px;width:420px;height:420px;
  border-radius:50%;background:rgba(53,34,116,.045);pointer-events:none;}
.intervention-map-section .wrap{position:relative;z-index:1;}
.intervention-map-section .map-section-head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.75fr);
  align-items:end;gap:clamp(36px,7vw,90px);margin-bottom:30px;padding-bottom:28px;
  border-bottom:1px solid rgba(53,34,116,.1);}
.map-section-title{max-width:680px;}
.map-section-title .eyebrow{margin-bottom:14px;}
.map-section-title .h2{max-width:650px;margin:0;font-size:clamp(2.25rem,4.6vw,4.35rem);line-height:.98;}
.map-section-intro{display:grid;justify-items:start;gap:18px;max-width:520px;}
.map-section-intro .lead{margin:0;font-size:1rem;line-height:1.7;color:#514963;}
.map-section-intro .btn{min-height:44px;padding:10px 17px;}
.intervention-map-section .intervention-map-grid{grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);
  gap:18px;align-items:stretch;}
.intervention-map-section .intervention-map-canvas{display:grid;grid-template-rows:minmax(0,1fr) auto auto;
  min-height:680px;padding:22px 24px;}
.intervention-map-section .guinea-regions{align-self:center;width:100%;max-height:570px;}
.intervention-map-section .intervention-panel{display:flex;flex-direction:column;min-height:680px;padding:25px 26px;}
.intervention-map-section .intervention-panel>h3{margin:10px 0 17px;font-size:clamp(2rem,3.2vw,2.65rem);}
.intervention-map-section .map-summary{margin-bottom:13px;}
.intervention-map-section .map-summary div{padding:13px 15px;}
.intervention-map-section .map-summary b{font-size:1.55rem;}
.intervention-map-section .map-disclosure summary{padding-top:13px;padding-bottom:13px;}
.intervention-map-section .map-data-note{margin-top:12px!important;}
.intervention-map-section .intervention-panel>.btn{width:100%;justify-content:center;margin-top:12px;}
.intervention-map-section .map-legend{padding-top:13px;border-top:1px solid rgba(53,34,116,.08);}
.intervention-map-section .map-attribution{margin-bottom:0;}
.news-grid{gap:20px;}
.na{border:0;border-radius:24px;background:#fff;box-shadow:var(--shadow-soft);}
.na-body{padding:22px;}
.na h3{letter-spacing:-.025em;line-height:1.32;}
.news-side{gap:16px;}
.ns{border:0;border-radius:20px;box-shadow:var(--shadow-soft);}
.marquee{margin-top:32px;}
.ptile{display:flex!important;align-items:center!important;justify-content:center!important;
  width:212px;height:108px;padding:20px 22px!important;border-radius:18px!important;
  border-color:rgba(53,34,116,.08)!important;background:#fff!important;}
.ptile img{display:block!important;width:100%!important;height:100%!important;max-width:168px!important;
  max-height:68px!important;margin:auto!important;object-fit:contain!important;object-position:50% 50%!important;}
.content-body>.partner-showcase{max-width:none;margin-bottom:46px;}
.partner-showcase-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.65fr);gap:12px 48px;
  align-items:end;margin-bottom:25px;}
.partner-showcase-head .section-kicker{grid-column:1/-1;margin:0;}
.partner-showcase-head h2{margin:0;color:var(--purple-deep);font-size:clamp(1.75rem,3vw,2.65rem);
  line-height:1.1;letter-spacing:-.045em;text-wrap:balance;}
.partner-showcase-head p{margin:0;color:var(--muted);line-height:1.65;}
.partner-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.partner-logo-card{display:flex;min-width:0;min-height:180px;flex-direction:column;padding:16px 16px 15px;
  border:1px solid rgba(53,34,116,.08);border-radius:20px;background:#fff;box-shadow:var(--shadow-soft);
  transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease;}
.partner-logo-media{display:flex;align-items:center;justify-content:center;flex:1;min-height:104px;padding:14px;
  border-radius:14px;background:#F9F8FB;}
.partner-logo-media img{display:block;width:100%;height:76px;max-width:178px;margin:auto;
  object-fit:contain;object-position:center;}
.partner-logo-card h3{margin:13px 4px 0;color:var(--purple-deep);font-size:.78rem;font-weight:800;
  line-height:1.35;text-align:center;}
.content-body>.domains-intro{max-width:none;display:grid;grid-template-columns:minmax(210px,.4fr) minmax(0,1fr);
  gap:40px;align-items:start;margin-bottom:30px;padding:0 0 30px;border-bottom:1px solid rgba(53,34,116,.1);}
.domains-intro .section-kicker{margin-top:8px;}
.domains-intro>div{display:grid;grid-template-columns:minmax(0,.9fr) minmax(280px,.65fr);gap:40px;align-items:end;}
.domains-intro h2{margin:0;color:var(--purple-deep);font-size:clamp(1.8rem,3.2vw,2.8rem);
  line-height:1.08;letter-spacing:-.045em;text-wrap:balance;}
.domains-intro p{margin:0;color:var(--muted);line-height:1.72;}
.domain-overview-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;}
.domain-overview-card{position:relative;display:flex;grid-column:span 6;min-height:410px;flex-direction:column;
  overflow:hidden;padding:29px;border:1px solid rgba(53,34,116,.08);border-radius:26px;background:#fff;
  box-shadow:var(--shadow-soft);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease;}
.domain-overview-card:nth-child(n+3){grid-column:span 4;min-height:430px;}
.domain-overview-card::after{content:"";position:absolute;right:-70px;bottom:-82px;width:190px;height:190px;
  border-radius:50%;background:var(--domain-glow,rgba(53,34,116,.06));pointer-events:none;}
.domain-tone-1{--domain-accent:#246F61;--domain-soft:#EAF6F2;--domain-glow:rgba(36,111,97,.08);}
.domain-tone-2{--domain-accent:#A32F51;--domain-soft:#FBEFF3;--domain-glow:rgba(163,47,81,.07);}
.domain-tone-3{--domain-accent:#806018;--domain-soft:#FFF6DC;--domain-glow:rgba(128,96,24,.08);}
.domain-tone-4{--domain-accent:#8F2A73;--domain-soft:#FAEFF7;--domain-glow:rgba(143,42,115,.07);}
.domain-tone-5{--domain-accent:#563A91;--domain-soft:#F1EDFA;--domain-glow:rgba(86,58,145,.07);}
.domain-card-head{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;}
.domain-number{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:var(--domain-soft);
  color:var(--domain-accent);font-size:.76rem;font-weight:900;letter-spacing:.08em;}
.domain-card-label{color:var(--muted);font-size:.65rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase;}
.domain-overview-card h2{position:relative;z-index:1;max-width:480px;margin:30px 0 12px;color:var(--purple-deep);
  font-size:clamp(1.45rem,2.5vw,2.05rem);line-height:1.12;letter-spacing:-.045em;text-wrap:balance;}
.domain-overview-card>p{position:relative;z-index:1;margin:0;color:var(--muted);line-height:1.65;}
.domain-overview-card ul{position:relative;z-index:1;display:grid;gap:8px;margin:23px 0 26px;padding:0;list-style:none;}
.domain-overview-card li{position:relative;padding-left:19px;color:#40384F;font-size:.86rem;line-height:1.45;}
.domain-overview-card li::before{content:"";position:absolute;left:0;top:.55em;width:7px;height:7px;border-radius:50%;
  background:var(--domain-accent);}
.domain-card-link{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:15px;
  margin-top:auto;padding-top:17px;border-top:1px solid rgba(53,34,116,.1);color:var(--domain-accent);
  font-size:.84rem;font-weight:850;}
.domain-card-link span{font-size:1.1rem;transition:transform .22s ease;}
.domains-pathway{display:flex;align-items:center;justify-content:space-between;gap:36px;margin-top:22px;padding:34px 38px;
  border-radius:28px;background:linear-gradient(120deg,var(--purple-deep),var(--purple));color:#fff;}
.domains-pathway .section-kicker{color:var(--yellow);}
.domains-pathway h2{max-width:720px;margin:0;color:#fff;font-size:clamp(1.45rem,2.8vw,2.25rem);
  line-height:1.14;letter-spacing:-.04em;text-wrap:balance;}
.domains-pathway-actions{display:flex;flex:0 0 auto;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.domains-pathway .btn-ghost{border-color:rgba(255,255,255,.32);color:#fff;}
.contact-cols{position:relative;z-index:3;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)!important;
  gap:18px!important;margin-top:-34px;}
.contact-cols>div{min-width:0;padding:clamp(25px,3vw,36px);border:1px solid rgba(53,34,116,.08);
  border-radius:26px;background:#fff;box-shadow:var(--shadow-lift);}
.contact-panel-head,.contact-form-head{padding-bottom:24px;border-bottom:1px solid rgba(53,34,116,.09);}
.contact-panel-head h2,.contact-form-head h2,.contact-location-card h2{margin:0 0 10px;color:var(--purple-deep);
  font-size:clamp(1.45rem,2.5vw,2rem);line-height:1.14;letter-spacing:-.04em;text-wrap:balance;}
.contact-panel-head p,.contact-form-head p,.contact-location-card p{margin:0;color:var(--muted);line-height:1.65;}
.contact-cols dl{display:grid;gap:10px;margin-top:18px!important;}
.contact-cols .cinfo{grid-template-columns:42px minmax(0,1fr);gap:14px;padding:16px;border:0;border-radius:16px;
  background:#F8F7FA;}
.contact-cols .cinfo .ic{width:42px;height:42px;border-radius:13px;background:var(--surface-purple);color:var(--purple);}
.contact-cols .cinfo dt{color:var(--muted);font-size:.65rem;font-weight:850;letter-spacing:.1em;}
.contact-cols .cinfo dd{margin-top:6px;color:#352F43;font-size:.9rem;line-height:1.55;}
.contact-cols .cinfo a{font-weight:750;color:var(--purple);overflow-wrap:anywhere;}
.contact-location-card{margin-top:12px;padding:22px;border-radius:19px;background:linear-gradient(145deg,#F1EDFA,#F9F7FC);}
.contact-location-card .section-kicker{margin-bottom:8px;}
.contact-location-card h2{font-size:1.15rem;}
.contact-location-card .btn{width:100%;justify-content:center;margin-top:17px;background:#fff;}
.contact-form-head{margin-bottom:24px;}
.contact-cols .formgrid{gap:17px 14px;}
.contact-cols .field{gap:8px;}
.contact-cols .field label{color:#352F43;font-size:.78rem;font-weight:800;}
.contact-cols .field input,.contact-cols .field select,.contact-cols .field textarea{
  width:100%;min-height:50px;padding:13px 14px;border:1px solid rgba(53,34,116,.14);border-radius:13px;
  background:#FCFBFD;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;}
.contact-cols .field textarea{min-height:142px;resize:vertical;}
.contact-cols .field input::placeholder,.contact-cols .field textarea::placeholder{color:#8B8497;}
.contact-cols .field input:focus,.contact-cols .field select:focus,.contact-cols .field textarea:focus{
  outline:0;border-color:var(--purple);background:#fff;box-shadow:0 0 0 4px rgba(53,34,116,.09);}
.contact-cols .field .hint{font-size:.7rem;}
.contact-cols .consent{padding:14px;border-radius:13px;background:#F7F5FB;color:#5A5367;line-height:1.55;}
.contact-cols .consent input{accent-color:var(--purple);}
.contact-cols form>.btn{width:100%;justify-content:center;min-height:50px;margin-top:18px!important;}
.contact-cols .formnote{margin-bottom:0;border-radius:13px;}
.cta{background:linear-gradient(120deg,var(--purple-deep),var(--purple))!important;}
.cta .wrap{padding-top:8px;padding-bottom:8px;}
.cta h2{letter-spacing:-.045em;}
.foot{background:#180F35;padding-top:52px;}
.f-grid{gap:36px!important;}
.crumbs{background:var(--surface);border-bottom-color:rgba(53,34,116,.08);}
.content-hero,.phead.has-hero-image{background:linear-gradient(135deg,#F0EDF8 0%,#FBFAFD 58%,#F7F3EF 100%)!important;}
.content-hero.has-hero-image .wrap,.phead.has-hero-image>.wrap{gap:44px;}
.content-hero-media,.phead-hero-media{border-radius:var(--radius-media);border:5px solid rgba(255,255,255,.72);
  box-shadow:var(--shadow-lift);}
.content-hero h1,.phead h1{letter-spacing:-.06em;line-height:1.01;text-wrap:balance;}
.content-body{max-width:1180px;}
.content-body>section{max-width:800px;}
.editorial-grid{gap:14px;}
.editorial-card,.profile-section,.expertise-grid article,.governance-intro article,.map-result-card{
  border:0;border-radius:20px;background:#fff;box-shadow:var(--shadow-soft);}
.editorial-card{padding:24px;}
.editorial-cta,.team-cta{border-radius:24px;}
.values p,.impact-grid article{border-radius:18px;background:#fff;box-shadow:var(--shadow-soft);}
.filters .filter,.filter-row .filter{border-radius:999px!important;padding-left:17px!important;padding-right:17px!important;}
.site-search input,.searchbar input,.map-filters select,.map-mobile-select select{
  border-radius:14px!important;border-color:rgba(53,34,116,.13)!important;}
.profile-photo{border-radius:26px;box-shadow:var(--shadow-lift);}
.team-grid{gap:18px!important;}
.mcard{border:0!important;border-radius:22px!important;box-shadow:var(--shadow-soft)!important;overflow:hidden;}
.mcard img{aspect-ratio:4/5;object-fit:cover;}
.team-hero-pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px;}
.team-hero-pills span{display:inline-flex;align-items:center;min-height:39px;padding:9px 14px;border:1px solid rgba(255,255,255,.28);
  border-radius:999px;background:rgba(255,255,255,.12);color:#fff;font-size:.76rem;font-weight:800;
  backdrop-filter:blur(12px);}
.team-directory-head{display:grid;grid-template-columns:minmax(190px,.35fr) minmax(0,1fr);gap:34px;align-items:start;
  margin:0 0 24px;padding:32px 0 27px;border-bottom:1px solid rgba(53,34,116,.1);}
.team-directory-head h2{max-width:760px;margin:0;color:var(--purple-deep);font-size:clamp(1.8rem,3.4vw,3rem);
  line-height:1.08;letter-spacing:-.05em;text-wrap:balance;}
.team-directory-head .section-kicker{margin-top:8px;}
.team-grid-minimal{grid-template-columns:repeat(4,minmax(0,1fr))!important;margin-top:24px!important;}
.team-grid-minimal .mcard{position:relative;background:#fff;transition:transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .38s ease;}
.team-grid-minimal .mcard img{width:100%;aspect-ratio:4/4.7;object-fit:cover;object-position:center top;
  transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .35s ease;}
.team-grid-minimal .mcard .body{position:relative;z-index:2;min-height:112px;padding:19px 19px 21px;
  border-top:3px solid var(--purple);background:#fff;}
.team-grid-minimal .mcard h3{margin:0;color:var(--purple-deep);font-size:1rem;line-height:1.28;letter-spacing:-.02em;}
.team-grid-minimal .mcard .role{margin:8px 0 0;color:var(--red);font-size:.76rem;font-weight:750;line-height:1.45;}
.team-grid-minimal+.team-expertise{display:none;}
.team-directory-head+.tabs-filter{margin-top:0;}
.more{font-weight:800;color:var(--purple)!important;}

/* Parcours projets : catalogue éditorial et fiches détaillées. */
.project-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px;}
.project-card{position:relative;display:flex;flex-direction:column;overflow:hidden;
  border:1px solid rgba(53,34,116,.08);border-radius:22px;background:#fff;box-shadow:var(--shadow-soft);
  transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .35s ease;}
.project-card-media{position:relative;display:block;min-height:186px;overflow:hidden;background:#E9E4F3;}
.project-card-media::after{content:"";position:absolute;inset:48% 0 0;
  background:linear-gradient(0deg,rgba(24,13,55,.58),transparent);}
.project-card-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .35s ease;}
.project-index{position:absolute;z-index:1;left:20px;bottom:17px;color:#fff;font-size:.76rem;
  font-weight:900;letter-spacing:.12em;text-shadow:0 2px 10px rgba(18,10,42,.35);}
.project-card-content{display:flex;flex:1;flex-direction:column;padding:18px 20px 19px;}
.project-card-top,.project-card-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;}
.project-card-top{justify-content:flex-end;}
.project-status{display:inline-flex;align-items:center;gap:7px;width:max-content;padding:7px 11px;border-radius:999px;
  font-size:.72rem;font-weight:850;letter-spacing:.03em;line-height:1.15;}
.project-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px currentColor;}
.project-status.is-cours{color:#176546;background:#EAF7F0;}
.project-status.is-realise{color:#315D9C;background:#ECF3FC;}
.project-status.is-confirmer{color:#785A1A;background:#FFF6DC;}
.project-status::before{box-shadow:0 0 0 3px color-mix(in srgb,currentColor 14%,transparent);}
.project-card-copy{flex:1;padding:14px 0 16px;}
.project-card h2{max-width:520px;margin:0 0 9px;font-size:clamp(1.16rem,1.5vw,1.42rem);line-height:1.16;
  letter-spacing:-.035em;color:var(--purple-deep);text-wrap:balance;}
.project-card p{max-width:560px;margin:0;color:var(--muted);font-size:.94rem;line-height:1.6;}
.project-card-foot{padding-top:14px;border-top:1px solid rgba(53,34,116,.1);font-size:.69rem;
  font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);}
.project-card-link{display:inline-flex;align-items:center;gap:9px;color:var(--purple);font-size:.82rem;letter-spacing:0;text-transform:none;}
.project-card-link svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;transition:transform .25s ease;}

/* Projet phare : première carte du catalogue, sur toute la largeur. */
.project-card.is-featured{grid-column:1/-1;display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(320px,.98fr);border-color:rgba(53,34,116,.16);}
.project-card.is-featured .project-card-media{min-height:318px;}
.project-card.is-featured .project-card-content{justify-content:center;padding:clamp(26px,3.4vw,40px);}
.project-card.is-featured .project-card-copy{padding:16px 0 20px;}
.project-card.is-featured h2{font-size:clamp(1.6rem,2.9vw,2.35rem);letter-spacing:-.05em;}
.project-card.is-featured p{font-size:1.02rem;line-height:1.66;}
.project-flag{position:absolute;z-index:2;top:16px;left:16px;padding:7px 12px;border-radius:999px;
  background:var(--purple);color:#fff;font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;}
@media(max-width:1080px){
  .project-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .project-card.is-featured{grid-template-columns:minmax(0,1fr) minmax(280px,.92fr);}
  .project-card.is-featured .project-card-media{min-height:260px;}
}
@media(max-width:760px){
  .project-catalog-grid{grid-template-columns:1fr;}
  .project-card,.project-card.is-featured{grid-column:auto;display:flex;}
  .project-card-media,.project-card.is-featured .project-card-media{min-height:210px;}
  .project-card-content,.project-card.is-featured .project-card-content{padding:20px;}
  .project-card.is-featured h2{font-size:1.55rem;}
  .project-card.is-featured p{font-size:.96rem;}
}

/* Page Projets et impact : catalogue visuel puis lecture consolidée des résultats. */
.projects-showcase{padding:10px 0 74px;}
.projects-showcase-head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.75fr);gap:56px;
  align-items:end;margin-bottom:34px;padding-bottom:28px;border-bottom:1px solid rgba(53,34,116,.1);}
.projects-showcase-head h2,.impact-signature-head h2{max-width:720px;margin:0;color:var(--purple-deep);
  font-size:clamp(2rem,4.2vw,3.65rem);line-height:1.04;letter-spacing:-.055em;text-wrap:balance;}
.projects-showcase-head p{max-width:560px;margin:0 0 16px;color:var(--muted);line-height:1.7;}
.project-text-link{display:inline-flex;align-items:center;color:var(--purple);font-size:.84rem;font-weight:850;}
.project-text-link::after{content:"→";margin-left:8px;transition:transform .25s ease;}
.projects-showcase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.project-showcase-card{position:relative;overflow:hidden;border:1px solid rgba(53,34,116,.08);
  border-radius:26px;background:#fff;box-shadow:var(--shadow-soft);
  transition:transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .38s ease,border-color .38s ease;}
.project-showcase-card:first-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);}
.project-showcase-media{position:relative;display:block;min-height:280px;overflow:hidden;background:#E9E4F3;}
.project-showcase-card:first-child .project-showcase-media{min-height:430px;}
.project-showcase-media::after{content:"";position:absolute;inset:50% 0 0;
  background:linear-gradient(0deg,rgba(25,14,57,.58),transparent);}
.project-showcase-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transition:transform .75s cubic-bezier(.2,.8,.2,1),filter .35s ease;}
.project-showcase-number{position:absolute;z-index:1;left:20px;bottom:17px;color:#fff;
  font-size:.74rem;font-weight:900;letter-spacing:.15em;text-shadow:0 2px 10px rgba(0,0,0,.24);}
.project-showcase-copy{display:flex;flex-direction:column;align-items:flex-start;padding:27px 28px 29px;}
.project-showcase-card:first-child .project-showcase-copy{justify-content:center;padding:clamp(32px,5vw,54px);}
.project-showcase-copy h2{margin:20px 0 12px;color:var(--purple-deep);
  font-size:clamp(1.35rem,2.1vw,2rem);line-height:1.13;letter-spacing:-.04em;text-wrap:balance;}
.project-showcase-card:first-child h2{font-size:clamp(1.8rem,3.4vw,3rem);}
.project-showcase-copy h2 a{color:inherit;}
.project-showcase-copy p{margin:0 0 24px;color:var(--muted);line-height:1.65;}
.project-showcase-link{display:inline-flex;align-items:center;gap:9px;margin-top:auto;color:var(--purple);
  font-size:.84rem;font-weight:850;}
.project-showcase-link span{font-size:1rem;transition:transform .25s ease;}
.impact-signature{position:relative;isolation:isolate;margin:0 0 24px;padding:clamp(34px,5vw,64px);
  overflow:hidden;border-radius:32px;background:linear-gradient(135deg,#241750 0%,#352274 66%,#46328A 100%);
  color:#fff;box-shadow:0 28px 70px rgba(36,23,80,.2);}
.impact-signature::before{content:"";position:absolute;z-index:-1;right:-110px;top:-150px;width:390px;height:390px;
  border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 48px rgba(255,255,255,.025);}
.impact-signature-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.7fr);gap:50px;
  align-items:end;margin-bottom:42px;}
.impact-signature .section-kicker{color:#FFCF56;}
.impact-signature-head h2{color:#fff;}
.impact-signature-head p{max-width:510px;margin:0 0 22px;color:rgba(255,255,255,.76);line-height:1.7;}
.impact-signature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.16);}
.impact-signature-grid article{min-height:190px;padding:30px 24px 12px 0;border-right:1px solid rgba(255,255,255,.16);}
.impact-signature-grid article:not(:first-child){padding-left:24px;}
.impact-signature-grid article:last-child{border-right:0;}
.impact-signature-grid strong{display:block;margin-bottom:10px;color:#fff;
  font-size:clamp(2.2rem,4vw,4rem);line-height:1;letter-spacing:-.055em;}
.impact-signature-grid span{display:block;min-height:48px;color:#fff;font-size:.92rem;font-weight:750;line-height:1.45;}
.impact-signature-grid small{display:block;margin-top:14px;color:rgba(255,255,255,.58);font-size:.7rem;line-height:1.4;}
.project-detail-page{background:linear-gradient(180deg,#F7F5FA 0%,#fff 760px);}
.project-hero-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:18px;}
.project-hero-meta .eyebrow{margin:0;}
.project-detail-shell{position:relative;z-index:3;margin-top:-32px;padding-bottom:84px;}
.project-jump-nav{position:sticky;top:84px;z-index:10;display:flex;gap:6px;width:max-content;max-width:100%;
  margin:0 auto 18px;padding:7px;overflow-x:auto;border:1px solid rgba(53,34,116,.09);border-radius:999px;
  background:rgba(255,255,255,.9);box-shadow:0 12px 34px rgba(34,21,74,.1);backdrop-filter:blur(16px);}
.project-jump-nav a{flex:0 0 auto;padding:9px 14px;border-radius:999px;color:var(--purple-deep);
  font-size:.78rem;font-weight:800;transition:background .2s ease,color .2s ease;}
.project-jump-nav a:hover,.project-jump-nav a:focus-visible{background:var(--purple);color:#fff;}
.project-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin:0 0 26px;padding:10px;
  border:1px solid rgba(53,34,116,.08);border-radius:25px;background:#fff;box-shadow:var(--shadow-lift);}
.project-facts article{min-height:142px;padding:22px;border-right:1px solid rgba(53,34,116,.09);}
.project-facts article:last-child{border-right:0;}
.project-facts span,.section-kicker{display:block;margin-bottom:10px;color:var(--red);font-size:.68rem;font-weight:900;
  letter-spacing:.11em;text-transform:uppercase;}
.project-facts strong{display:block;color:var(--purple-deep);font-size:.98rem;line-height:1.48;}
.project-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start;}
.project-story{display:grid;gap:18px;}
.project-story>section,.project-aside>section{scroll-margin-top:150px;border:1px solid rgba(53,34,116,.07);
  border-radius:26px;background:#fff;box-shadow:var(--shadow-soft);}
.project-story>section{padding:clamp(28px,4vw,44px);}
.project-story h2,.project-aside h2,.project-next h2{margin:0 0 16px;color:var(--purple-deep);
  font-size:clamp(1.45rem,2.7vw,2.25rem);line-height:1.15;letter-spacing:-.045em;text-wrap:balance;}
.project-story p,.project-aside p{color:var(--muted);line-height:1.74;}
.project-story .project-lead{font-size:1.08rem;color:#463D59;}
.project-activity-list{display:grid;gap:0;margin:24px 0 0;padding:0;list-style:none;counter-reset:none;}
.project-activity-list li{display:grid;grid-template-columns:48px 1fr;gap:18px;align-items:start;padding:19px 0;
  border-top:1px solid rgba(53,34,116,.09);}
.project-activity-list li span{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;
  background:var(--surface-purple);color:var(--purple);font-size:.72rem;font-weight:900;}
.project-activity-list li p{margin:5px 0 0;color:#332B45;}
.project-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px;}
.project-result-grid article{display:flex;gap:13px;align-items:flex-start;min-height:116px;padding:20px;border-radius:18px;background:#F7F5FB;}
.project-result-grid p{margin:0;color:var(--purple-deep);font-weight:750;line-height:1.5;}
.result-mark{flex:0 0 auto;width:12px;height:12px;margin-top:5px;border:3px solid var(--red);border-radius:50%;}
.project-aside{position:sticky;top:146px;display:grid;gap:16px;}
.project-aside>section{padding:25px;}
.project-aside h2{font-size:1.25rem;}
.project-domain-list{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;}
.project-domain-list li{padding:9px 12px;border-radius:12px;background:var(--surface-purple);color:var(--purple);
  font-size:.78rem;font-weight:800;line-height:1.35;}
.project-data-note{background:#FFF9EA!important;border-color:#F3E5B6!important;}
.project-data-note .section-kicker{color:#806018;}
.project-map-link{width:100%;justify-content:center;}
.project-next{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-top:26px;padding:34px 38px;
  border-radius:28px;background:linear-gradient(120deg,var(--purple-deep),var(--purple));color:#fff;}
.project-next .section-kicker{color:var(--yellow);}
.project-next h2{max-width:650px;margin:0;color:#fff;}
.phead.has-existing-hero-image + .sec .metabar{position:relative;z-index:3;margin-top:-42px;padding:10px;
  border:1px solid rgba(53,34,116,.08);border-radius:24px;background:#fff;box-shadow:var(--shadow-lift);}
.phead.has-existing-hero-image + .sec .metabar>div{padding:20px;border-right:1px solid rgba(53,34,116,.09);}
.phead.has-existing-hero-image + .sec .metabar>div:last-child{border-right:0;}
.with-rail{gap:28px!important;align-items:start;}
.railbox{border:0!important;border-radius:22px!important;background:#fff!important;box-shadow:var(--shadow-soft);}

@media (hover:hover) and (prefers-reduced-motion:no-preference){
  .dom:hover,.na:hover,.mcard:hover,.editorial-card:hover,.map-result-card:hover,.project-card:hover{
    transform:translateY(-7px);box-shadow:var(--shadow-lift);}
  .team-grid-minimal .mcard:hover img{transform:scale(1.045);filter:saturate(1.05);}
  .project-card:hover{border-color:rgba(53,34,116,.18);}
  .project-card:hover .project-card-media img{transform:scale(1.045);filter:saturate(1.06);}
  .project-card:hover .project-card-link svg{transform:translateX(4px);}
  .project-showcase-card:hover{transform:translateY(-7px);border-color:rgba(53,34,116,.17);box-shadow:var(--shadow-lift);}
  .project-showcase-card:hover .project-showcase-media img{transform:scale(1.045);filter:saturate(1.06);}
  .project-showcase-card:hover .project-showcase-link span,.project-text-link:hover::after{transform:translateX(4px);}
  .partner-logo-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lift);}
  .domain-overview-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lift);}
  .domain-overview-card:hover .domain-card-link span{transform:translateX(4px);}
  .dom:hover .ic{transform:rotate(-4deg) scale(1.06);}
  .dom .ic{transition:transform .3s cubic-bezier(.2,.8,.2,1);}
  .more svg{transition:transform .22s ease}.na:hover .more svg,.dom:hover .more svg{transform:translateX(4px);}
}
@media (prefers-reduced-motion:no-preference){
  .rv{filter:blur(5px);transform:translateY(24px) scale(.99);}
  .rv.in{filter:none;transform:none;transition:opacity .65s ease,transform .7s cubic-bezier(.2,.8,.2,1),
    filter .65s ease;transition-delay:var(--motion-delay,0ms);}
  .content-hero-media.rv,.phead-hero-media.rv{clip-path:inset(0 0 100% 0 round 28px);}
  .content-hero-media.rv.in,.phead-hero-media.rv.in{clip-path:inset(0 0 0 0 round 28px);
    transition:clip-path .8s cubic-bezier(.2,.8,.2,1),opacity .4s ease,filter .6s ease;}
  .content-hero-media img,.phead-hero-media img{transition:transform 1.1s cubic-bezier(.2,.8,.2,1);}
  .content-hero-media.in img,.phead-hero-media.in img{transform:scale(1.015);}
}
@media(max-width:1080px){
  .mainbar nav[aria-label="Navigation principale"]{top:76px;border-radius:20px;padding:10px;}
  .menu>li>a::after{display:none;}
  .social-icons-header{display:none;}
}
@media(max-width:900px){
  .wrap{padding-left:22px;padding-right:22px;}
  .hero{margin:10px 10px 0;border-radius:24px;}
  .dom,.dom:nth-child(n+3){grid-column:span 6;}
  .about-grid{gap:36px;}
  .partner-showcase-head{grid-template-columns:1fr;gap:12px;}
  .partner-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .team-directory-head{grid-template-columns:1fr;gap:10px;}
  .team-grid-minimal{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .content-body>.domains-intro,.domains-intro>div{grid-template-columns:1fr;gap:14px;}
  .domain-overview-card,.domain-overview-card:nth-child(n+3){grid-column:span 6;min-height:390px;}
  .domains-pathway{align-items:flex-start;flex-direction:column;}
  .domains-pathway-actions{justify-content:flex-start;}
  .contact-cols{grid-template-columns:1fr!important;margin-top:-24px;}
  .intervention-map-section .map-section-head{grid-template-columns:1fr;gap:18px;padding-bottom:24px;}
  .map-section-intro{max-width:680px;}
  .intervention-map-section .intervention-map-grid{grid-template-columns:1fr;}
  .intervention-map-section .intervention-map-canvas,
  .intervention-map-section .intervention-panel{min-height:0;}
  .intervention-map-section .guinea-regions{max-height:620px;}
  .project-facts{grid-template-columns:repeat(2,minmax(0,1fr));}
  .project-facts article:nth-child(2){border-right:0;}
  .project-facts article:nth-child(-n+2){border-bottom:1px solid rgba(53,34,116,.09);}
  .project-detail-layout{grid-template-columns:1fr;}
  .project-aside{position:static;grid-template-columns:repeat(2,minmax(0,1fr));}
  .project-aside .project-map-link{grid-column:1/-1;}
  .impact-signature-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .impact-signature-grid article:nth-child(2){border-right:0;}
  .impact-signature-grid article:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.16);}
}
@media(max-width:620px){
  .wrap{padding-left:18px;padding-right:18px;}
  .mainbar .wrap{height:68px}.brand{width:145px;height:58px}.brand .l{width:142px;height:54px;}
  .hero{margin:8px 8px 0;border-radius:20px;}
  .content-body>.partner-showcase{margin-bottom:36px;}
  .partner-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .partner-logo-card{min-height:154px;padding:11px;}
  .partner-logo-media{min-height:88px;padding:10px;}
  .partner-logo-media img{height:64px;max-width:140px;}
  .partner-logo-card h3{margin-top:10px;font-size:.72rem;}
  .team-directory-head{padding:24px 0 20px;}
  .team-grid-minimal{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important;}
  .team-grid-minimal .mcard{border-radius:17px!important;}
  .team-grid-minimal .mcard .body{min-height:104px;padding:15px 13px 17px;}
  .team-grid-minimal .mcard h3{font-size:.88rem;}
  .team-grid-minimal .mcard .role{font-size:.69rem;}
  .content-body>.domains-intro{margin-bottom:20px;padding-bottom:22px;}
  .domain-overview-grid{gap:12px;}
  .domain-overview-card,.domain-overview-card:nth-child(n+3){grid-column:1/-1;min-height:0;padding:23px;border-radius:21px;}
  .domain-overview-card h2{margin-top:24px;}
  .domains-pathway{padding:28px 23px;border-radius:22px;}
  .domains-pathway-actions{width:100%;}
  .domains-pathway-actions .btn{width:100%;justify-content:center;}
  .contact-cols{margin-top:-18px;}
  .contact-cols>div{padding:22px 18px;border-radius:21px;}
  .contact-cols .formgrid{grid-template-columns:1fr;}
  .contact-cols .field.full,.contact-cols .consent{grid-column:auto;}
  .intervention-map-section .map-section-head{margin-bottom:20px;padding-bottom:20px;}
  .map-section-title .h2{font-size:clamp(2.15rem,11vw,3.2rem);}
  .map-section-intro{gap:15px;}
  .map-section-intro .btn{width:100%;justify-content:center;}
  .intervention-map-section .intervention-map-grid{gap:14px;}
  .intervention-map-section .intervention-map-canvas{padding:14px 12px;border-radius:20px;}
  .intervention-map-section .intervention-panel{padding:21px 19px;border-radius:20px;}
  .intervention-map-section .guinea-regions{max-height:none;}
  .intervention-map-section .map-summary div{padding:12px;}
  .intervention-map-section .map-legend{gap:9px 14px;}
  .hero-track{height:600px;}
  .hpane .htitle{font-size:clamp(2.35rem,12vw,3.6rem);}
  .sec{padding-top:46px;padding-bottom:46px;}
  .dom,.dom:nth-child(n+3){grid-column:1/-1;min-height:0;padding:24px;}
  .about-media{display:block;max-width:440px;}
  .feature .fmedia{display:block;min-height:250px;}
  #actualites .news-side .ns:nth-child(2){display:grid;}
  #partenaires .marquee{display:block;}
  .content-hero-media,.phead.has-hero-image .phead-hero-media{min-height:230px;}
  .content-hero,.phead.has-hero-image{padding-top:38px;padding-bottom:38px;}
  .editorial-card{padding:21px;}
  .project-catalog-grid{grid-template-columns:1fr;}
  .project-card,.project-card:last-child:nth-child(odd){grid-column:auto;display:flex;padding:0;}
  .project-card-media,.project-card:last-child:nth-child(odd) .project-card-media{min-height:225px;}
  .project-card-content,.project-card:last-child:nth-child(odd) .project-card-content{padding:22px;}
  .project-card-copy{padding:18px 0 20px;}
  .project-card:last-child:nth-child(odd) h2{font-size:1.65rem;}
  .projects-showcase{padding-bottom:48px;}
  .projects-showcase-head,.impact-signature-head{grid-template-columns:1fr;gap:18px;margin-bottom:25px;}
  .projects-showcase-grid{grid-template-columns:1fr;gap:14px;}
  .project-showcase-card:first-child{grid-column:auto;display:block;}
  .project-showcase-media,.project-showcase-card:first-child .project-showcase-media{min-height:235px;}
  .project-showcase-copy,.project-showcase-card:first-child .project-showcase-copy{padding:23px 21px 25px;}
  .project-showcase-card:first-child h2{font-size:1.65rem;}
  .impact-signature{padding:30px 22px;border-radius:23px;}
  .impact-signature-grid{grid-template-columns:1fr;}
  .impact-signature-grid article,.impact-signature-grid article:not(:first-child){min-height:0;padding:22px 0;
    border-right:0;border-bottom:1px solid rgba(255,255,255,.16);}
  .impact-signature-grid article:last-child{border-bottom:0;}
  .impact-signature-grid span{min-height:0;}
  .project-detail-shell{margin-top:-20px;padding-bottom:54px;}
  .project-jump-nav{justify-content:flex-start;margin-bottom:14px;border-radius:18px;}
  .project-facts{grid-template-columns:1fr;padding:6px;border-radius:20px;}
  .project-facts article{min-height:0;padding:18px;border-right:0;border-bottom:1px solid rgba(53,34,116,.09)!important;}
  .project-facts article:last-child{border-bottom:0!important;}
  .project-story>section{padding:25px 21px;border-radius:21px;}
  .project-result-grid{grid-template-columns:1fr;}
  .project-result-grid article{min-height:0;}
  .project-aside{grid-template-columns:1fr;}
  .project-next{align-items:flex-start;flex-direction:column;padding:28px 23px;border-radius:22px;}
  .foot{padding-top:44px;}
}

/* Héros internes pleine largeur : photographie de fond et contenu superposé. */
.content-hero.has-hero-image,.phead.has-hero-image,.phead.has-existing-hero-image{
  position:relative;isolation:isolate;display:flex;align-items:flex-end;overflow:hidden;
  min-height:clamp(500px,64vh,660px);padding:0!important;background:var(--purple-deep)!important;color:#fff;}
.content-hero.has-hero-image::after,.phead.has-hero-image::after,.phead.has-existing-hero-image::after{
  content:"";position:absolute;z-index:-1;inset:0;
  background:linear-gradient(90deg,rgba(19,10,45,.92) 0%,rgba(29,18,63,.76) 43%,
    rgba(29,18,63,.28) 72%,rgba(29,18,63,.42) 100%);}
.content-hero.has-hero-image .wrap,.phead.has-hero-image>.wrap,.phead.has-existing-hero-image>.wrap{
  position:static;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;
  width:100%;min-height:inherit;padding-top:110px;padding-bottom:64px;}
.content-hero-copy,.phead-copy,.phead.has-existing-hero-image .phead-grid>div:first-child{
  position:relative;z-index:2;width:min(820px,72%);}
.content-hero.has-hero-image h1,.phead.has-hero-image h1,.phead.has-existing-hero-image h1{
  max-width:880px;color:#fff;font-size:clamp(2.65rem,5.7vw,5.3rem);
  text-shadow:0 2px 24px rgba(15,8,36,.18);}
.content-hero.has-hero-image p,.phead.has-hero-image .chapo,.phead.has-existing-hero-image .chapo{
  max-width:720px;color:rgba(255,255,255,.84);font-size:clamp(1rem,1.35vw,1.16rem);line-height:1.65;}
.content-hero.has-hero-image .eyebrow,.phead.has-hero-image .eyebrow,
.phead.has-existing-hero-image .eyebrow{color:#fff;}
.content-hero-media,.phead-hero-media,.phead.has-existing-hero-image .phead-media{
  position:absolute;z-index:-2;inset:0;width:100%;height:100%;min-height:0;margin:0;
  border:0;border-radius:0;box-shadow:none;background:var(--purple-deep);}
.content-hero-media::after,.phead-hero-media::after,.phead.has-existing-hero-image .phead-media::after{display:none;}
.content-hero-media img,.phead-hero-media img,.phead.has-existing-hero-image .phead-media img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.phead.has-existing-hero-image .phead-grid{position:static;display:block;width:100%;}
.phead.has-hero-image .searchbar,.phead.has-hero-image .filter-row{
  position:relative;z-index:2;width:100%;grid-column:auto;margin-top:24px;}
.phead.has-hero-image .searchbar{padding:8px;border-radius:18px;background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(12px);}
.phead.has-hero-image .searchbar input{background:rgba(255,255,255,.96);}
.phead.has-hero-image .filter-row{gap:8px;}
.phead.has-hero-image .filter-row .filter{background:rgba(255,255,255,.13);color:#fff;
  border-color:rgba(255,255,255,.28);}
.phead.has-hero-image .filter-row .filter.on{background:#fff;color:var(--purple);border-color:#fff;}
@media (prefers-reduced-motion:no-preference){
  .content-hero-media.rv,.phead-hero-media.rv{clip-path:inset(0);transform:scale(1.04);}
  .content-hero-media.rv.in,.phead-hero-media.rv.in{clip-path:inset(0);transform:scale(1);
    transition:transform 1.1s cubic-bezier(.2,.8,.2,1),opacity .5s ease,filter .6s ease;}
}
@media(max-width:820px){
  .content-hero.has-hero-image,.phead.has-hero-image,.phead.has-existing-hero-image{
    min-height:520px;}
  .content-hero.has-hero-image .wrap,.phead.has-hero-image>.wrap,.phead.has-existing-hero-image>.wrap{
    padding-top:90px;padding-bottom:48px;}
  .content-hero-copy,.phead-copy,.phead.has-existing-hero-image .phead-grid>div:first-child{
    width:min(100%,700px);}
}
@media(max-width:560px){
  .content-hero.has-hero-image,.phead.has-hero-image,.phead.has-existing-hero-image{min-height:500px;}
  .content-hero.has-hero-image::after,.phead.has-hero-image::after,.phead.has-existing-hero-image::after{
    background:linear-gradient(0deg,rgba(19,10,45,.94) 0%,rgba(29,18,63,.7) 68%,rgba(29,18,63,.35) 100%);}
  .content-hero.has-hero-image h1,.phead.has-hero-image h1,.phead.has-existing-hero-image h1{
    font-size:clamp(2.35rem,12vw,3.6rem);}
  .content-hero.has-hero-image .wrap,.phead.has-hero-image>.wrap,.phead.has-existing-hero-image>.wrap{
    padding-top:78px;padding-bottom:38px;}
  .phead.has-hero-image .searchbar{margin-top:20px;}
}
