/* Dons et projets. */
@layer pms {
.pms-don { max-width: 640px; }
.pms-don__intro { font-size: var(--pms-text-lg); color: var(--pms-ink-2); margin-bottom: var(--pms-space-5); max-width: 60ch; }
.pms-don__kinds { display: grid; gap: var(--pms-space-2); grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); margin-top: var(--pms-space-2); }
.pms-don__kind { display: flex; gap: var(--pms-space-3); align-items: center; padding: var(--pms-space-3) var(--pms-space-4); border: 1px solid var(--pms-line-strong); border-radius: var(--pms-radius); background: var(--pms-surface); cursor: pointer; }
.pms-don__kind.is-on { border-color: var(--pms-primary); box-shadow: inset 0 0 0 1px var(--pms-primary); background: var(--pms-tint); }
.pms-don__kind:focus-within { outline: 3px solid var(--pms-focus); outline-offset: 2px; }
.pms-don__kind-title { display: block; font-weight: 700; }
.pms-don__kind-desc { display: block; font-size: var(--pms-text-sm); color: var(--pms-ink-2); }
.pms-don__amounts { display: grid; gap: var(--pms-space-2); grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: var(--pms-space-2); }
.pms-don__amount { min-height: 52px; border: 1px solid var(--pms-line-strong); border-radius: var(--pms-radius); background: var(--pms-surface); color: var(--pms-ink); font: inherit; font-weight: 700; font-variant-numeric: tabular-nums; cursor: pointer; }
.pms-don__amount:hover { border-color: var(--pms-primary); }
.pms-don__amount.is-on { background: var(--pms-primary); border-color: var(--pms-primary); color: var(--pms-on-primary); }
.pms-don__submit { display: grid; gap: var(--pms-space-2); }
.pms-don__submit .pms-btn { min-height: 56px; font-size: var(--pms-text-md); }
.pms-camps { display: grid; gap: var(--pms-space-4); grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); }
.pms-camps--one { grid-template-columns: minmax(0, 1fr); }
.pms-camp { display: flex; flex-direction: column; border: 1px solid var(--pms-line); border-radius: var(--pms-radius); background: var(--pms-surface); overflow: hidden; color: inherit; text-decoration: none; }
.pms-camps--one .pms-camp { flex-direction: row; }
.pms-camp__media { aspect-ratio: 16 / 9; background: var(--pms-tint); color: var(--pms-primary-text); display: grid; place-items: center; }
.pms-camps--one .pms-camp__media { flex: 0 0 38%; aspect-ratio: auto; min-height: 140px; }
.pms-camp__media img { width: 100%; height: 100%; object-fit: cover; }
.pms-camp__body { display: grid; gap: var(--pms-space-3); padding: var(--pms-space-4); flex: 1; min-width: 0; }
.pms-camp__title { font-weight: 700; font-size: var(--pms-text-lg); line-height: 1.3; }
.pms-camp__progress { display: grid; gap: 6px; }
.pms-camp__progress .pms-progress__bar { height: 10px; }
.pms-camp__figures { font-variant-numeric: tabular-nums; }
.pms-camp__hero { width: 100%; max-height: 360px; object-fit: cover; border-radius: var(--pms-radius); }
.pms-camp__thumb { width: 128px; height: 72px; border-radius: 8px; overflow: hidden; display: grid; place-items: center; background: var(--pms-tint); color: var(--pms-primary-text); }
.pms-camp__thumb img { width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 560px) { .pms-camps--one .pms-camp { flex-direction: column; } .pms-camps--one .pms-camp__media { aspect-ratio: 16 / 9; } }
}
