/* JVSI 2026-10-25 | Skin filtre Projets inspiré des panneaux Projects Abroad.
   Ne modifie ni le rendu des cartes ni la logique du catalogue. */
.destination-page{padding-top:24px!important}
.page-literature img{max-width:100%;height:auto}
.project-card.is-hidden,.project-empty{display:none}
.project-img-placeholder{height:165px;background:#f0fdf4;display:flex;align-items:center;justify-content:center;color:#059669;font-size:2rem}
.project-badge-img{position:absolute;top:-24px;right:-24px;width:152px;height:152px;border-radius:999px;object-fit:cover;border:0!important;box-shadow:0 8px 20px rgba(0,0,0,.18)}
.project-img-link{display:block;height:100%;text-decoration:none}

#project-catalog .project-live-filters{margin-bottom:1.35rem}
#project-catalog .project-filter-pa{position:relative;isolation:isolate}
#project-catalog .project-filter-pa.pa-panel-active{z-index:1081}
#project-catalog .pa-filter-label{font-size:.97rem;font-weight:700;color:#4f5554;margin-bottom:.7rem}
#project-catalog .project-filter-shell{background:none;border:0;box-shadow:none;border-radius:0;overflow:visible;width:auto;max-width:100%}
#project-catalog .project-filter-row{display:flex;align-items:stretch;gap:18px;flex-wrap:wrap}
#project-catalog .pa-filter-control{position:relative;display:flex;align-items:stretch;min-width:0}
#project-catalog .project-filter-trigger{
 display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;
 min-height:42px;min-width:225px;max-width:100%;border:3px solid #cbd0ca;border-radius:0;
 padding:4px 14px;background:#fff;color:#383e3c;font-size:1rem;line-height:1.25;font-weight:500;
 transition:border-color .18s ease,color .18s ease,background-color .18s ease;
}
#project-catalog .project-filter-trigger .filter-label{white-space:nowrap}
#project-catalog .project-filter-trigger .filter-count{font-size:.9rem;margin-left:.35rem;color:#68716c;font-weight:700}
#project-catalog .project-filter-trigger .filter-count:empty{display:none}
#project-catalog .project-filter-trigger .bi{font-size:.9rem}
#project-catalog .project-filter-trigger:hover,#project-catalog .project-filter-trigger:focus-visible{border-color:#728a7b;outline:0}
#project-catalog .project-filter-trigger.is-active{border-color:#096d50;color:#096d50;background:#fff}
#project-catalog .pa-control-clear{display:none;position:absolute;right:3px;top:3px;bottom:3px;min-width:32px;border:0;background:#fff;color:#086b4f;font-size:1.5rem;line-height:1;align-items:center;justify-content:center}
#project-catalog .pa-filter-control.has-selected .project-filter-trigger{padding-right:43px}
#project-catalog .pa-filter-control.has-selected .project-filter-trigger>.bi{display:none}
#project-catalog .pa-filter-control.has-selected .pa-control-clear{display:flex}
#project-catalog .project-filter-subrow{display:flex;align-items:center;flex-wrap:wrap;gap:1.1rem;margin-top:.85rem}
#project-catalog .pa-sort-select{appearance:auto;background:#fafbf9;color:#37403a;border:3px solid #cbd0ca;border-radius:22px;padding:.28rem .65rem;max-width:200px;font-size:.94rem}
#project-catalog .pa-sort-select:focus{outline:2px solid #14764b;outline-offset:1px}
#project-catalog #resetProjectFilters{border:0;background:none;text-decoration:underline;color:#637068;font-weight:600;font-size:.94rem;padding:.2rem 0}
#project-catalog #resetProjectFilters:hover{color:#0b7544}
#project-catalog .pa-summary-counters{display:none}
#project-catalog .project-filter-dimmer{position:fixed;inset:0;background:rgba(244,246,244,.69);z-index:0;cursor:default}
#project-catalog .project-filter-dimmer[hidden]{display:none!important}
#project-catalog .project-filter-pa .project-filter-shell,#project-catalog .project-filter-pa .project-filter-subrow{position:relative;z-index:2}
#project-catalog .project-filter-panels{
 display:none;position:absolute;z-index:3;top:calc(100% + 8px);left:var(--pa-left,0px);
 width:min(960px,calc(100vw - 32px));max-width:100%;overflow:hidden;
 border:1px solid #e0e3df;border-radius:0;background:#fff;
 box-shadow:0 18px 48px rgba(16,30,20,.12);
}
#project-catalog .project-filter-panels.is-open{display:block}
#project-catalog .project-filter-panels.is-compact{width:min(430px,calc(100vw - 32px))}
#project-catalog .project-filter-panel{display:none}
#project-catalog .project-filter-panel.is-open{display:block}
#project-catalog .pa-panel-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:126px;padding:1.1rem 3.8%;border-bottom:2px solid #4fce43;background:#fff}
#project-catalog .pa-clear-btn{border:0;background:none;padding:0;text-decoration:underline;color:#353a38;font-size:1rem;font-weight:800;text-align:left}
#project-catalog .pa-view-btn{border:0;background:linear-gradient(90deg,#02ab9e,#61d035);border-radius:999px;color:#fff;padding:.8rem 1.65rem;min-width:220px;font-size:1.04rem;font-weight:800}
#project-catalog .pa-view-btn:hover,#project-catalog .pa-view-btn:focus-visible{filter:brightness(.96);outline:none}
#project-catalog .pa-panel-body{background:#fff;max-height:min(62vh,590px);overflow:auto;overscroll-behavior:contain}
#project-catalog .pa-group{border-bottom:1px solid #d4d8d3;margin:0 6.5%}
#project-catalog .pa-group:last-child{border-bottom:0}
#project-catalog .pa-group-head{display:flex;align-items:flex-start;gap:.75rem;padding:.8rem 0 .6rem}
#project-catalog .pa-group-info{flex:1;min-width:0}
#project-catalog .pa-group-main{display:flex;align-items:baseline;gap:.45rem;flex-wrap:wrap;font-weight:800;font-size:1.1rem;color:#303634;line-height:1.25;cursor:pointer}
#project-catalog .pa-group-main .pa-group-meta{color:#949a95;font-size:.79rem;font-weight:700;margin-left:.3rem}
#project-catalog .pa-group-toggle{display:inline-flex;align-items:center;gap:.3rem;color:#666f69;font-size:.85rem;font-weight:750;text-decoration:underline;background:none;border:0;padding:.3rem 0 0}
#project-catalog .pa-group-toggle:hover{color:#096d50}
#project-catalog .pa-group-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem 1.65rem;padding:.25rem .2rem .95rem 2.2rem}
#project-catalog .pa-group.is-collapsed .pa-group-options{display:none}
#project-catalog .pa-group-input,#project-catalog .pa-option input{accent-color:#009b71;cursor:pointer}
#project-catalog .pa-option{display:flex;align-items:baseline;gap:.45rem;font-size:1rem;line-height:1.35;font-weight:750;color:#373d3a;padding:.23rem 0;cursor:pointer}
#project-catalog .pa-option span{overflow-wrap:anywhere;min-width:0}
#project-catalog .pa-option.is-unavailable{color:#a1a7a2;cursor:default}
#project-catalog .pa-option-desc{display:block;font-size:.78rem;color:#9aa19a;font-weight:650;line-height:1.35;padding:.15rem 0 0 1.4rem}
#project-catalog .pa-flat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem 1.3rem;padding:1.35rem 6.5%}
#project-catalog .project-filter-panels.is-compact .pa-panel-head{padding:1rem 6%;min-height:106px}
#project-catalog .project-filter-panels.is-compact .pa-view-btn{min-width:0;padding:.65rem 1rem;font-size:.87rem}
#project-catalog .project-filter-panels.is-compact .pa-flat-grid{grid-template-columns:1fr;gap:.55rem;padding:1.25rem 7%}
#project-catalog .project-filter-panels.is-compact .pa-option{flex-wrap:wrap;font-size:1.02rem}
#project-catalog .pa-panel-empty{padding:1rem 6%;color:#66736a}
@media (max-width:850px){
 #project-catalog .project-filter-row{gap:10px}
 #project-catalog .project-filter-trigger{min-width:0;width:100%;font-size:.94rem}
 #project-catalog .pa-filter-control{flex:1 1 215px}
 #project-catalog .pa-group-options{grid-template-columns:repeat(2,minmax(0,1fr))}
 #project-catalog .pa-panel-head{min-height:95px}
}
@media (max-width:575.98px){
 #project-catalog .project-filter-row{gap:8px}
 #project-catalog .pa-filter-control{flex:1 1 100%}
 #project-catalog .project-filter-panels,#project-catalog .project-filter-panels.is-compact{width:100%;left:0!important}
 #project-catalog .pa-panel-head{min-height:90px;padding:.8rem 4%;gap:.35rem}
 #project-catalog .pa-clear-btn{font-size:.82rem}
 #project-catalog .pa-view-btn{min-width:0;padding:.66rem .85rem;font-size:.82rem}
 #project-catalog .pa-group{margin:0 4%}
 #project-catalog .pa-group-main{font-size:.98rem}
 #project-catalog .pa-group-options{grid-template-columns:1fr;padding-left:1.5rem}
 #project-catalog .pa-flat-grid{grid-template-columns:1fr}
}
#project-catalog .pa-control-clear[hidden]{display:none!important}
