.donation-page { padding-top:24px; }
.donation-lead { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); align-items:start; gap:64px; }
.donation-copy h1 { font-size:clamp(3rem,6.4vw,6rem); max-width:12ch; text-wrap:balance; margin-bottom:32px; }
.donation-copy .lead { font-size:1.35rem; margin-bottom:24px; }
.donation-copy > .btn { margin-top:16px; }
.donation-payment-note,.donation-terms,.donation-art figcaption { color:var(--muted); font-size:.9rem; }
.donation-payment-note { margin-top:16px; }
.donation-terms { border-top:1px solid var(--line); margin-top:32px; padding-top:24px; }
.donation-unavailable { margin-top:32px; padding-block:24px; border-top:1px solid var(--line); }
.donation-art { margin:0; }
.donation-art img { width:100%; }
.donation-art figcaption { margin-top:16px; }
.donation-membership { display:flex; align-items:center; justify-content:space-between; gap:40px; margin-top:64px; padding-top:40px; border-top:1px solid var(--line); }
.donation-membership h2 { font-size:clamp(2rem,3.6vw,3rem); margin-bottom:16px; }
.donation-membership .text-link { flex-shrink:0; }
.donation-recent { margin-top:40px; padding-top:32px; border-top:1px solid var(--line); }
.donation-recent h2 { font-size:2rem; margin-bottom:16px; }
.donation-feed-note,.donor-date { color:var(--muted); font-size:.85rem; }
.donation-feed { list-style:none; padding:0; margin:24px 0; }
.donation-feed li { display:flex; align-items:start; justify-content:space-between; gap:16px; padding:16px 0; border-bottom:1px solid var(--line); }
.donation-feed li > div { min-width:0; overflow-wrap:anywhere; }
.donation-feed time { display:block; color:var(--muted); font-size:.8rem; margin-top:4px; }
.donation-amount { flex-shrink:0; font-weight:700; font-variant-numeric:tabular-nums; }
.donation-import { margin-block:32px 48px; padding-block:24px; border-block:1px solid var(--line); }
.donation-import form { display:inline-block; margin:8px 16px 8px 0; }
.donor-email,.donor-date { display:block; overflow-wrap:anywhere; }
.donor-table td { vertical-align:top; }
.donation-paging { display:flex; gap:24px; margin-top:24px; }
.donation-admin-note { color:var(--muted); overflow-wrap:anywhere; }
@media(max-width:767px) { .donation-page { padding-top:8px; } .donation-lead { grid-template-columns:1fr; gap:40px; } .donation-copy h1 { font-size:clamp(2.8rem,12vw,4rem); margin-bottom:24px; } .donation-art { max-width:400px; } .donation-membership { margin-top:48px; padding-top:32px; flex-direction:column; align-items:start; gap:16px; } }
