:root{--ink:#0F1B2D;--gold:#C9973A;--text:#1A1D24;--muted:#4A505B;--line:#cfd3da}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--text);font:18px/1.55 'Assistant',system-ui,sans-serif}
.wrap{max-width:560px;margin:0 auto;padding:0 20px}
h1,h2,.raised,.amounts button{font-family:'Frank Ruhl Libre',Georgia,serif}
.preview-bar{background:var(--gold);color:var(--ink);text-align:center;font-weight:600;font-size:14px;padding:8px}

.band{background-size:cover;background-position:center;padding:44px 0 40px;text-align:center}
.logo{max-height:84px;max-width:70%;margin:0 auto 20px;display:block}
h1{font-weight:700;font-size:clamp(34px,9vw,60px);line-height:1.08;margin:0 0 14px;color:var(--ink)}
.desc{margin:0;color:var(--muted);font-size:19px;white-space:pre-line}
.on-photo h1,.on-photo .desc{color:#fff}

.meter{text-align:center;padding:40px 0 8px}
.raised{font-size:clamp(44px,13vw,64px);font-weight:700;color:var(--ink);line-height:1}
.bar{height:6px;background:#ebe7de;border-radius:3px;margin:18px 0 10px;overflow:hidden}
.bar span{display:block;height:100%;background:var(--gold);border-radius:3px}
.meter-line{display:flex;justify-content:space-between;color:var(--muted);font-size:15px}

h2{font-size:24px;font-weight:500;text-align:center;color:var(--ink);margin:44px 0 18px}
.amounts{display:grid;grid-template-columns:repeat(3,1fr);gap:6px 4px;text-align:center}
.amounts button{all:unset;cursor:pointer;font-size:30px;color:var(--muted);padding:12px 4px;
  border-bottom:3px solid transparent;margin:0 10px;text-align:center;line-height:1.1}
.amounts button[aria-checked=true]{color:var(--ink);font-weight:700;border-bottom-color:var(--gold)}
.amounts button:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
@media(min-width:520px){.amounts{grid-template-columns:repeat(6,auto);justify-content:center}}
.other{display:flex;justify-content:center;align-items:baseline;gap:6px;margin-top:14px;color:var(--muted)}
.other span{text-decoration:underline;font-size:18px}
.other input{width:110px;text-align:center;font:600 24px 'Frank Ruhl Libre',serif;color:var(--ink);
  border:0;border-bottom:2px solid var(--line);border-radius:0;background:none;padding:2px}
.other input:focus{border-bottom-color:var(--gold)}

.field{display:block;margin-bottom:22px}
.field span{display:block;font-size:14px;color:var(--muted)}
.field input{width:100%;font:inherit;font-size:19px;color:var(--text);border:0;border-bottom:1.5px solid var(--line);
  border-radius:0;background:none;padding:6px 0;-webkit-appearance:none}
.field input:focus{border-bottom-color:var(--gold);outline:0}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:380px){.row2{grid-template-columns:1fr;gap:0}}
#payment-element{min-height:44px}
.loading{text-align:center;color:var(--muted);font-size:15px;margin:0 0 8px}

.cover{display:flex;gap:12px;align-items:flex-start;margin:28px 0 22px;color:var(--text);font-size:17px;cursor:pointer}
.cover input{width:22px;height:22px;margin:2px 0 0;accent-color:var(--ink);flex:none}
.donate{display:block;width:100%;max-width:360px;margin:8px auto 0;border:0;border-radius:999px;background:var(--ink);
  color:#fff;font:600 20px 'Assistant',sans-serif;padding:17px 24px;cursor:pointer;min-height:56px}
.donate:disabled{opacity:.5;cursor:not-allowed}
.error{color:#b3261e;text-align:center;margin:12px 0 0;font-size:16px}
#turnstile{display:flex;justify-content:center;margin-bottom:10px}
.secure{text-align:center;color:var(--muted);font-size:14px;margin:18px 0 0}
.secure svg{vertical-align:-1px;margin-right:4px}
.foot{text-align:center;color:var(--muted);font-size:14px;padding:36px 20px 48px}
.foot a{color:inherit}

.thanks{text-align:center;padding:36px 0 8px}
.check{width:60px;height:60px;border-radius:50%;background:var(--gold);color:#fff;font-size:32px;line-height:60px;margin:0 auto 14px}
.thanks p{font:500 24px/1.4 'Frank Ruhl Libre',serif;color:var(--ink);margin:0;white-space:pre-line}
[hidden]{display:none!important}
