
/* FDDF — moteur de découverte des projets */
.fddfpd-discovery{min-height:100vh;background:#fff}
.fddfpd-discovery .fddfpd-topbar{position:sticky}
.fddfpd-discovery-hero{background:#0b1422;color:#fff;padding:104px 0 82px;overflow:hidden;position:relative}
.fddfpd-discovery-hero:after{content:"";position:absolute;width:620px;height:620px;border-radius:50%;right:-230px;top:-290px;background:radial-gradient(circle,rgba(11,208,247,.18),rgba(11,208,247,0) 68%);pointer-events:none}
.fddfpd-discovery-hero .fddfpd-shell{position:relative;z-index:1}
.fddfpd-discovery-hero h1{font-family:var(--f-font-regular);font-weight:400;font-size:clamp(48px,6vw,84px);line-height:.97;max-width:950px;margin:0 0 28px}
.fddfpd-discovery-hero p{font-size:20px;line-height:1.55;color:#bdc6d4;max-width:800px;margin:0}
.fddfpd-discovery-stats{display:flex;gap:42px;flex-wrap:wrap;margin-top:48px;padding-top:28px;border-top:1px solid rgba(255,255,255,.14);max-width:860px}
.fddfpd-discovery-stats span{font-size:15px;color:#c7cfda}
.fddfpd-discovery-stats strong{font-family:var(--f-font-regular);font-size:26px;color:#fff;margin-right:7px}
.fddfpd-discovery-search{padding:78px 0 110px}
.fddfpd-search-intro{display:grid;grid-template-columns:1fr .75fr;gap:70px;align-items:end;margin-bottom:34px}
.fddfpd-search-intro h2{margin:0;font-size:clamp(36px,4.8vw,62px)}
.fddfpd-search-intro p{margin:0 0 7px;color:var(--f-muted);font-size:17px}
.fddfpd-filter-panel{display:grid;grid-template-columns:minmax(280px,1.7fr) minmax(180px,.8fr) minmax(180px,.8fr) auto;gap:12px;align-items:end;padding:22px 0;border-top:1px solid var(--f-border);border-bottom:1px solid var(--f-border)}
.fddfpd-filter-panel label>span{display:block;color:#778190;font-size:12px;margin-bottom:8px}
.fddfpd-filter-panel input,.fddfpd-filter-panel select{width:100%;height:48px;border:1px solid #d9dee4;background:#fff;color:#18202b;padding:0 14px;font:inherit;font-size:14px;border-radius:2px;outline:none}
.fddfpd-filter-panel input:focus,.fddfpd-filter-panel select:focus{border-color:var(--f-cyan)}
.fddfpd-search-field>div{position:relative}
.fddfpd-search-field svg{position:absolute;left:14px;top:15px;color:#7b8594;width:18px;height:18px}
.fddfpd-search-field input{padding-left:42px}
.fddfpd-reset-filters{height:48px;border:0;border-bottom:1px solid #98a1ae;background:transparent;color:#4e5968;padding:0 2px;cursor:pointer;font:inherit;white-space:nowrap}
.fddfpd-theme-shortcuts{display:flex;gap:8px;flex-wrap:wrap;padding:22px 0}
.fddfpd-theme-chip{border:1px solid #dce1e6;background:#fff;border-radius:2px;padding:8px 12px;color:#5d6674;cursor:pointer;font:inherit;font-size:13px}
.fddfpd-theme-chip:hover,.fddfpd-theme-chip.is-active{border-color:#ff6d00;color:#ff6d00}
.fddfpd-results-bar{display:flex;justify-content:space-between;align-items:center;padding:18px 0 24px}
.fddfpd-results-bar p{margin:0;color:#687386}
.fddfpd-results-bar p strong{font-family:var(--f-font-regular);color:#18202b;font-size:24px;margin-right:5px}
.fddfpd-results-bar label{display:flex;align-items:center;gap:9px;color:#7a8390;font-size:12px}
.fddfpd-results-bar select{border:0;background:#f4f5f6;padding:8px 30px 8px 10px;font:inherit;color:#303946}
.fddfpd-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #e1e5e9;border-left:1px solid #e1e5e9}
.fddfpd-project-card{display:flex;flex-direction:column;min-height:390px;border-right:1px solid #e1e5e9;border-bottom:1px solid #e1e5e9;padding:30px;background:#fff;position:relative;transition:background .18s ease}
.fddfpd-project-card:hover{background:#fafafa}
.fddfpd-project-card.is-featured{background:#0d1726;color:#fff}
.fddfpd-project-card.is-featured:hover{background:#111d2d}
.fddfpd-card-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.fddfpd-card-theme{color:var(--f-orange);font-size:13px;font-family:var(--f-font-regular)}
.fddfpd-card-number{font-size:12px;color:#9aa3af}
.fddfpd-project-card.is-featured .fddfpd-card-number{color:#8f9baa}
.fddfpd-card-association{margin:42px 0 8px;color:#7b8593;font-size:14px}
.fddfpd-project-card.is-featured .fddfpd-card-association{color:#9aa7b8}
.fddfpd-project-card h3{font-family:var(--f-font-regular);font-size:29px;line-height:1.06;margin:0 0 20px;font-weight:400}
.fddfpd-card-territory{font-size:14px;color:#687386;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}
.fddfpd-project-card.is-featured .fddfpd-card-territory{color:#bec7d3}
.fddfpd-card-agencies{display:flex;flex-wrap:wrap;gap:5px;margin-top:17px}
.fddfpd-card-agencies span{font-size:11px;padding:4px 7px;border:1px solid #dce1e6;border-radius:2px;color:#6e7886}
.fddfpd-project-card.is-featured .fddfpd-card-agencies span{border-color:rgba(255,255,255,.22);color:#d1d8e2}
.fddfpd-card-bottom{margin-top:auto;padding-top:26px}
.fddfpd-card-metrics{display:flex;gap:20px;padding-top:18px;border-top:1px solid #e5e8eb}
.fddfpd-project-card.is-featured .fddfpd-card-metrics{border-color:rgba(255,255,255,.16)}
.fddfpd-card-metrics span{font-size:11px;color:#7a8491}
.fddfpd-card-metrics strong{display:block;font-family:var(--f-font-regular);font-size:20px;color:#17202c;margin-bottom:1px}
.fddfpd-project-card.is-featured .fddfpd-card-metrics strong{color:#fff}
.fddfpd-project-card.is-featured .fddfpd-card-metrics span{color:#aeb9c7}
.fddfpd-card-action{display:flex;align-items:center;gap:8px;margin-top:24px;color:#ff6d00;font-family:var(--f-font-regular);font-size:14px;background:none;border:0;padding:0;cursor:pointer;text-align:left}
.fddfpd-card-action svg{width:17px;height:17px}
.fddfpd-featured-label{display:inline-flex;align-items:center;background:var(--f-orange);color:#fff;padding:5px 7px;font-size:10px;margin-left:8px;vertical-align:middle}
.fddfpd-loadmore-wrap{text-align:center;padding-top:34px}
.fddfpd-loadmore{border:1px solid #cfd5dc;background:#fff;padding:13px 18px;color:#26303d;cursor:pointer;font:inherit}
.fddfpd-loadmore[hidden]{display:none}
.fddfpd-no-results{text-align:center;padding:90px 20px;border-top:1px solid #e1e5e9}
.fddfpd-no-results>span{color:#ff6d00}
.fddfpd-no-results svg{width:34px;height:34px}
.fddfpd-no-results h3{font-size:28px;margin:18px 0 8px}
.fddfpd-no-results p{color:#717b89}
.fddfpd-project-drawer{position:fixed;z-index:99998;inset:0;pointer-events:none;visibility:hidden}
.fddfpd-project-drawer.is-open{pointer-events:auto;visibility:visible}
.fddfpd-drawer-backdrop{position:absolute;inset:0;border:0;background:rgba(4,9,16,.62);opacity:0;transition:opacity .2s;cursor:pointer}
.fddfpd-project-drawer.is-open .fddfpd-drawer-backdrop{opacity:1}
.fddfpd-drawer-panel{position:absolute;right:0;top:0;bottom:0;width:min(610px,92vw);background:#fff;padding:58px 54px;overflow:auto;transform:translateX(100%);transition:transform .28s ease}
.fddfpd-project-drawer.is-open .fddfpd-drawer-panel{transform:none}
.fddfpd-drawer-close{position:absolute;right:22px;top:18px;border:0;background:transparent;font:inherit;font-size:34px;line-height:1;color:#525c69;cursor:pointer}
.fddfpd-drawer-theme{color:#ff6d00;font-family:var(--f-font-regular);font-size:14px}
.fddfpd-drawer-association{color:#727c8a;margin:24px 0 8px}
.fddfpd-drawer-panel h2{font-size:46px;line-height:1;margin:0 0 24px}
.fddfpd-drawer-meta{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid #e1e5e9;border-bottom:1px solid #e1e5e9;margin:30px 0}
.fddfpd-drawer-meta div{padding:18px 16px 18px 0}
.fddfpd-drawer-meta div:nth-child(even){padding-left:16px;border-left:1px solid #e1e5e9}
.fddfpd-drawer-meta small{display:block;color:#808a97;margin-bottom:5px}
.fddfpd-drawer-meta strong{font-family:var(--f-font-regular);font-size:20px}
.fddfpd-drawer-section{padding:22px 0;border-bottom:1px solid #e5e8eb}
.fddfpd-drawer-section h3{font-size:18px;margin:0 0 8px}
.fddfpd-drawer-section p{margin:0;color:#5c6674;line-height:1.65}
.fddfpd-drawer-full-link{display:inline-flex;align-items:center;gap:8px;margin-top:28px;background:#ff6d00;color:#fff;padding:13px 16px}
.fddfpd-drawer-full-link svg{width:16px;height:16px}
.fddfpd-discovery-no-scroll{overflow:hidden}
@media(max-width:1000px){
  .fddfpd-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fddfpd-filter-panel{grid-template-columns:1fr 1fr}
  .fddfpd-search-field{grid-column:1/-1}
  .fddfpd-reset-filters{justify-self:start}
}
@media(max-width:760px){
  .fddfpd-discovery-hero{padding:80px 0 62px}
  .fddfpd-search-intro{grid-template-columns:1fr;gap:20px}
  .fddfpd-filter-panel{grid-template-columns:1fr}
  .fddfpd-search-field{grid-column:auto}
  .fddfpd-project-grid{grid-template-columns:1fr}
  .fddfpd-project-card{min-height:330px;padding:26px 24px}
  .fddfpd-drawer-panel{padding:54px 26px 34px}
  .fddfpd-drawer-panel h2{font-size:36px}
  .fddfpd-discovery-stats{gap:18px 30px}
  .fddfpd-results-bar{align-items:flex-start;gap:14px;flex-direction:column}
}
@media(max-width:560px){
  .fddfpd-discovery-hero h1{font-size:46px}
  .fddfpd-discovery-hero p{font-size:17px}
  .fddfpd-theme-shortcuts{overflow-x:auto;flex-wrap:nowrap;padding-bottom:15px}
  .fddfpd-theme-chip{white-space:nowrap}
  .fddfpd-drawer-meta{grid-template-columns:1fr}
  .fddfpd-drawer-meta div:nth-child(even){padding-left:0;border-left:0;border-top:1px solid #e1e5e9}
}
