:root{color-scheme:light;--paper:#f5f1e8;--ink:#2c302a;--muted:#62695d;--line:#d6d5c8;--accent:#435d43}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,"Apple SD Gothic Neo",sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-underline-offset:4px}a,button,input{touch-action:manipulation}a:focus-visible,button:focus-visible,label:has(input:focus-visible){outline:3px solid #587748;outline-offset:5px}header{max-width:1180px;margin:auto;padding:28px 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-weight:850;letter-spacing:-.04em;font-size:22px}.brand span{font-size:12px;letter-spacing:.1em;font-weight:500;color:var(--muted);margin-left:12px}nav{display:flex;gap:12px}nav a{padding:10px 4px;font-size:13px}main{max-width:1180px;padding:72px 32px 80px;margin:auto;display:grid;grid-template-columns:1fr 440px;gap:76px;align-items:start}.eyebrow{font-size:11px;letter-spacing:.15em;color:var(--muted);font-weight:700;margin:0 0 20px}h1{font-size:clamp(38px,4.5vw,64px);line-height:1.2;letter-spacing:-.07em;font-weight:750;margin:0 0 26px}h2{font-size:24px;line-height:1.4;letter-spacing:-.045em;margin:0 0 14px}.lead{color:var(--muted);font-size:18px;line-height:1.9;max-width:36em}.support-purpose{margin:50px 0 36px}.support-purpose h2{font-size:16px}.support-purpose ol{list-style:none;padding:0;margin:18px 0}.support-purpose li{border-bottom:1px solid var(--line);padding:14px 0;max-width:430px}.support-purpose li span{font-size:12px;margin-right:24px;color:var(--muted)}.support-card{padding:32px;background:#fffcf5;border:1px solid var(--line);border-radius:5px;box-shadow:0 10px 32px #2c302a06}.support-card .eyebrow{margin-bottom:12px}.free-note{font-size:15px;color:var(--muted);margin-bottom:28px}fieldset{border:0;margin:0 0 20px;padding:0;min-width:0}legend{font-weight:700;margin-bottom:12px;font-size:15px}.amounts{display:grid;grid-template-columns:1fr 1fr;gap:10px}.amounts label{position:relative;cursor:pointer}.amounts input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.amounts span{display:block;text-align:center;padding:13px 5px;border:1px solid var(--line);border-radius:3px;font-weight:650}.amounts input:checked+span{background:#e8eee0;border-color:var(--accent);color:#2c492a}.muted{font-size:13px;color:var(--muted)}#support-terms{font-size:14px}.consent{display:flex;gap:10px;margin:20px 0;font-size:13px;line-height:1.6;cursor:pointer}.consent input{width:18px;height:18px;flex-shrink:0;accent-color:var(--accent);margin-top:2px}button{font:inherit;cursor:pointer;border-radius:3px;min-height:48px}button:disabled{cursor:not-allowed}.pay-button{width:100%;border:0;background:var(--accent);color:white;font-weight:700;padding:12px}.pay-button:disabled{background:#e0e3d9;color:#687060}#support-feedback{font-size:14px;margin:16px 0;overflow-wrap:anywhere}.payment-note{border-top:1px solid var(--line);padding-top:18px}.explanation{font-size:12px;line-height:1.8;color:var(--muted);border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.contact,.back{display:block;font-size:14px;padding:10px 0}.contact{color:var(--accent)}footer{border-top:1px solid var(--line);max-width:1116px;margin:0 auto;padding:24px 0 40px;color:var(--muted);font-size:12px}.skip{position:fixed;top:-100px}.skip:focus{top:10px;left:10px;background:white;padding:12px;z-index:5}[hidden]{display:none!important}#support-result button{border:1px solid var(--line);background:transparent;padding:8px 16px}#result-details{font-size:13px;overflow-wrap:anywhere}#result-details dt{color:var(--muted)}#result-details dd{margin:0 0 10px}#result-message{font-size:17px;font-weight:600}body[data-payment-state="paid"] #result-message{color:var(--accent)}@media(max-width:850px){main{grid-template-columns:1fr;max-width:600px;gap:28px;padding-top:40px}.support-purpose{margin:28px 0}.support-intro>.back{display:none}footer{margin:0 24px}.lead br{display:none}}@media(max-width:400px){header{padding:18px 20px}main{padding:32px 20px 48px}.support-card{padding:24px 20px}h1{font-size:36px}.brand span{margin-left:6px}}
.support-purpose summary { cursor: pointer; min-height: 44px; }
.support-purpose summary h2 { display: inline; }
.support-purpose summary:focus-visible { outline: 3px solid #587748; outline-offset: 5px; }
