:root{
  --bg:#ffffff;
  --panel:#f7f7f7;
  --ink:#111111;
  --muted:#555555;
  --line:#dddddd;
  --brand:#1f4fd8;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial, Helvetica, sans-serif}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}
.header{text-align:center;padding:40px 20px 20px;border-bottom:1px solid var(--line)}
.logo{max-width:560px;width:92%;height:auto;display:block;margin:0 auto 10px}
.brand{margin-top:6px}
.org{font-weight:800;letter-spacing:.4px}
.tagline{font-style:italic;color:var(--muted);margin-top:4px}
.nonprofit{margin-top:8px;font-size:13px;font-weight:700;color:#1f4fd8}
.nonprofit.small{font-weight:600;color:#666}
.addr,.email{color:var(--muted);font-size:14px;margin-top:6px}
.container{max-width:720px;margin:30px auto;padding:0 20px}
.card{background:var(--panel);padding:24px;border:1px solid var(--line);border-radius:10px}
label{display:block;margin-bottom:12px;font-size:14px}
input,textarea{width:100%;padding:10px;margin-top:6px;border:1px solid var(--line);border-radius:8px;background:#fff}
button{background:var(--brand);color:#fff;border:none;padding:12px 18px;cursor:pointer;border-radius:10px;font-weight:800}
footer{text-align:center;margin:40px 0 10px;color:var(--muted)}
.fineprint{margin:12px 0 0;font-size:12px;color:#777}
.hp{display:none}
