:root{--g:#2f4a3a;--g2:#4f6f58;--stone:#f4f1ea;--stone2:#e6e0d4;--ink:#2b2a27;--gold:#a8874a}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:19px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--stone)}
h1,h2,h3,.brand,.pname{font-family:Georgia,"Times New Roman",serif;color:var(--g);line-height:1.2}
h1{font-size:2.3rem;margin:.2em 0}h2{font-size:1.75rem;margin:0 0 .5em}h3{font-size:1.15rem;margin:0 0 .2em}
.top{background:var(--g);padding:.7rem 1rem}.brand{color:#fff;text-decoration:none;font-size:1.2rem;display:flex;align-items:center;gap:.5rem}.logo{width:44px;color:#cdbb8f}
main{max-width:760px;margin:0 auto}section{padding:2rem 1.25rem;border-bottom:1px solid var(--stone2)}
.hero{text-align:center;padding:3rem 1.25rem;background:linear-gradient(180deg,#e9efe6,var(--stone))}.hero.sm{padding:2.2rem 1.25rem}
.kicker{text-transform:uppercase;letter-spacing:.15em;color:var(--g2);font-size:.85rem;margin:0}
.orn{width:140px;color:var(--gold);display:block;margin:.8rem auto 1.4rem}
.btn{display:inline-block;background:var(--g);color:#fff;border:0;border-radius:12px;padding:1rem 1.4rem;font:600 1.1rem system-ui,sans-serif;text-decoration:none;cursor:pointer;min-height:56px}
.btn:hover{background:var(--g2)}.btn.big{width:100%;max-width:420px;font-size:1.2rem}.btn.sm{min-height:48px;padding:.6rem 1rem;font-size:1rem;white-space:nowrap}
.need{background:#fff}.offer{font-size:1.25rem;background:#fff;border-left:5px solid var(--gold);padding:.8rem 1rem;border-radius:6px}
.parks{display:grid;gap:1rem}.park{display:block;background:#fff;border:2px solid var(--stone2);border-radius:16px;padding:1.4rem;text-decoration:none;color:var(--ink);box-shadow:0 2px 8px #0001}
.park:hover{border-color:var(--g2)}.pname{display:block;font-size:1.45rem}.ploc{display:block;color:var(--g2)}.go{display:block;margin-top:.6rem;font-weight:600;color:var(--gold)}
.cats{list-style:none;padding:0;margin:0;display:grid;gap:.8rem}.cat{background:#fff;border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.6rem;border:1px solid var(--stone2)}.cat p{margin:0;font-size:1rem}.cat.most{border:2px solid var(--gold)}
.donate{background:#fff;border-radius:16px;margin:1.5rem .5rem;border:2px solid var(--stone2)}
label{display:block;font-weight:600;margin:0 0 1rem}select,input[type=number]{display:block;width:100%;font:inherit;padding:.8rem;border:2px solid var(--stone2);border-radius:10px;margin-top:.3rem;background:#fff}
fieldset{border:0;padding:0;margin:0 0 1rem}legend{font-weight:600;margin-bottom:.4rem}
.amts{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.amt{font:600 1.3rem system-ui,sans-serif;padding:.9rem;border:2px solid var(--stone2);border-radius:12px;background:var(--stone);cursor:pointer;min-height:64px;color:var(--ink)}
.amt small{display:block;font-size:.8rem;font-weight:500}.amt.featured{grid-column:1/-1;border-color:var(--gold)}.amt.on{background:var(--g);color:#fff;border-color:var(--g)}
.custom{grid-column:1/-1;margin:0}.freq{display:flex;gap:.6rem}.freq label{flex:1;border:2px solid var(--stone2);border-radius:12px;padding:.8rem;margin:0;font-weight:500}
.summary{font-size:1.1rem;background:var(--stone);padding:.8rem;border-radius:10px}
.pay{display:grid;gap:.6rem}.pay-btn{width:100%}.msg{background:#fff8e6;border:2px solid var(--gold);padding:1rem;border-radius:10px;font-weight:600}
.fine{font-size:.9rem;color:#555}
footer{background:var(--g);color:#e8efe9;text-align:center;padding:2rem 1rem;font-size:1rem}footer a{color:#fff}
@media(min-width:700px){h1{font-size:3rem}.parks{grid-template-columns:repeat(3,1fr)}.cat{flex-direction:row;justify-content:space-between;align-items:center}.amts{grid-template-columns:repeat(4,1fr)}.pay{grid-template-columns:1fr 1fr}}
.freqtabs{display:grid;grid-template-columns:1fr 1fr;background:var(--stone);border-radius:14px;padding:4px;margin-bottom:1rem}
.ftab{font:700 1.1rem system-ui,sans-serif;border:0;border-radius:11px;padding:.9rem;background:none;color:var(--g);cursor:pointer;min-height:56px}.ftab.on{background:var(--g);color:#fff}
.tiers{display:grid;gap:.7rem;margin-bottom:1rem}.tiers[hidden]{display:none}
.tier{position:relative;text-align:left;display:grid;grid-template-columns:1fr auto;gap:.15rem .8rem;align-items:baseline;padding:1rem 1.1rem;border:2px solid var(--stone2);border-radius:14px;background:#fff;cursor:pointer;font:inherit;color:var(--ink)}
.tier.feat{border-color:var(--gold);padding-top:1.5rem}.tier.on{border-color:var(--g);background:#eef3ec;box-shadow:0 0 0 2px var(--g)}
.tn{font:700 1.15rem Georgia,serif;color:var(--g)}.ta{font:700 1.3rem system-ui,sans-serif;text-align:right}.ta small{font-size:.8rem;font-weight:500;color:#555}
.ti{grid-column:1/-1;font-size:.95rem;color:#444}.badge{position:absolute;top:-.75rem;left:1rem;background:var(--gold);color:#fff;font:700 .75rem system-ui,sans-serif;text-transform:uppercase;letter-spacing:.08em;padding:.25rem .6rem;border-radius:20px}
.recog{font-size:.9rem;color:#555;font-style:italic}
.gift{grid-column:1/-1;font-size:.88rem;color:var(--g);font-weight:600;border-top:1px dashed var(--stone2);padding-top:.35rem;margin-top:.2rem}
.chk{display:flex;gap:.6rem;align-items:flex-start;font-weight:500;background:var(--stone);padding:.8rem;border-radius:10px}.chk input{width:24px;height:24px;flex:none;margin-top:.15rem}
input[type=text]{display:block;width:100%;font:inherit;padding:.8rem;border:2px solid var(--stone2);border-radius:10px;margin-top:.3rem}
.gifts{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;font-size:1rem}.gifts th,.gifts td{padding:.7rem;border-bottom:1px solid var(--stone2);text-align:left;vertical-align:top}.gifts th{font-family:Georgia,serif;color:var(--g);width:38%}.gifts small{display:block;font:500 .8rem system-ui,sans-serif;color:#555}
.tier.nogift .gift{text-decoration:line-through;opacity:.5}
