:root{--ink:#20213b;--purple:#5639b8;--cream:#fffaf1;--yellow:#ffc940;--pink:#ef5d96;--teal:#16a89c}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:'DM Sans',sans-serif;background:var(--cream)}.site-header,footer{padding:1.2rem clamp(1.25rem,6vw,6rem);display:flex;align-items:center;gap:2rem}.site-header{background:#fff;box-shadow:0 2px 16px #20213b12}.brand{display:flex;align-items:center;gap:.55rem;color:var(--ink);text-decoration:none;font:600 1.35rem Fredoka,sans-serif}.brand img{width:48px;height:48px;object-fit:contain}.brand b{color:var(--purple)}nav{margin-left:auto;display:flex;gap:1.5rem}nav a{color:var(--ink);text-decoration:none;font-weight:700}.donation-hero{padding:clamp(4rem,9vw,8rem) clamp(1.25rem,10vw,10rem);background:linear-gradient(120deg,#e8e0ff,#fff5df)}.donation-hero>div{max-width:730px}.eyebrow{letter-spacing:.12em;color:var(--purple);font-size:.78rem;font-weight:700}.donation-hero h1,h2{font-family:Fredoka,sans-serif}.donation-hero h1{font-size:clamp(3rem,7vw,5.7rem);line-height:.95;margin:.6rem 0 1rem}.donation-hero p:not(.eyebrow){font-size:1.2rem;line-height:1.7;max-width:620px}.donation-content{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;padding:clamp(3rem,8vw,6rem) clamp(1.25rem,10vw,10rem)}h2{font-size:clamp(2rem,4vw,3.2rem);margin-top:0}.donation-copy>p{line-height:1.7;font-size:1.05rem}.giving-types{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:2rem 0}.giving-types div{padding:1.25rem;border-radius:18px;background:#fff}.giving-types i{font-size:1.45rem;color:var(--purple);display:block;margin-bottom:.7rem}.giving-types b,.giving-types span{display:block}.giving-types span{font-size:.9rem;margin-top:.25rem;color:#646477}.contact-note a{color:var(--purple);font-weight:700}.qr-card{align-self:start;padding:2rem;border-radius:24px;background:#fff;box-shadow:0 12px 30px #20213b14;text-align:center}.qr-card h2{font-size:2rem;margin-bottom:.6rem}.qr-card img{width:100%;max-width:520px;margin:1rem auto;display:block}.venmo-handle{font-weight:700}.qr-card p{line-height:1.5}footer{justify-content:space-between;background:var(--ink);color:#fff}footer .brand{color:#fff}@media(max-width:700px){.donation-content{grid-template-columns:1fr}.giving-types{grid-template-columns:1fr}.site-header,footer{flex-wrap:wrap}nav{margin-left:0}}
/* Digital donation account details. */
.payment-handles{margin-top:1rem;padding:1rem;border-radius:14px;background:#f5f1ff}.payment-handles p{margin:.25rem 0;font-weight:500}.payment-handles strong{color:var(--purple)}.payment-handles a{color:var(--ink);font-weight:700;text-decoration:none}.payment-handles a:hover{text-decoration:underline}
.donation-methods{display:grid;gap:1.25rem}.paypal-card{padding:2rem;border-radius:24px;background:#fff;box-shadow:0 12px 30px #20213b14}.paypal-card h2{font-size:2rem;margin-bottom:.4rem}.paypal-card>p{line-height:1.5}.amount-options{display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem;margin:1.3rem 0}.amount-options button{border:2px solid #ddd6f7;border-radius:12px;background:#fff;color:var(--purple);padding:.75rem .35rem;font:700 1rem 'DM Sans',sans-serif;cursor:pointer}.amount-options button:hover,.amount-options button:focus-visible,.amount-options button.selected{border-color:var(--purple);background:#f1edff}.custom-amount{display:block;font-weight:700;margin-bottom:1rem}.custom-amount span{display:flex;align-items:center;margin-top:.45rem;border:2px solid #ddd6f7;border-radius:12px;background:#fff;overflow:hidden}.custom-amount span:focus-within{border-color:var(--purple)}.custom-amount b{padding-left:1rem;font-size:1.1rem}.custom-amount input{width:100%;border:0;outline:0;padding:.8rem;font:700 1.1rem 'DM Sans',sans-serif;color:var(--ink)}.donation-help,.sandbox-note,.donation-status{font-size:.85rem;color:#646477}.donation-status{min-height:1.3rem;font-weight:700}.donation-status.error{color:#b42318}.donation-status.success{color:#087f5b}.sandbox-note{text-align:center}.sandbox-note i{margin-right:.35rem}.paypal-card #donation-paypal-buttons{min-height:45px}@media(max-width:420px){.amount-options{grid-template-columns:repeat(2,1fr)}}
