:root{--ink:#16201c;--ink-soft:#5a6862;--line:#e4e8e4;--bg:#f6f7f4;--card:#ffffff;--green:#1f8a4c;--green-d:#176b3b;--green-bg:#e8f5ec;--amber:#c98a16;--amber-bg:#fbf2dd;--blue:#2b6fb3;--radius:16px;--shadow:0 1px 2px rgba(22,32,28,0.04),0 4px 16px rgba(22,32,28,0.06);--font:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}.shell{max-width:480px;margin:0 auto;min-height:100vh;padding:18px 18px 36px;display:flex;flex-direction:column}.shell.flush{padding:0 0 36px}.shell.flush>.sheet{padding:20px 18px 0}.h1{font-size:22px;margin:4px 0 2px;line-height:1.2}.h1,.h2{font-weight:800;letter-spacing:-.02em}.h2{font-size:20px;margin:6px 0 4px;line-height:1.22}.sub{font-size:14.5px;line-height:1.55;margin-bottom:14px}.note,.sub{color:var(--ink-soft)}.note{font-size:13.5px;line-height:1.5;margin-top:6px}.muted,.seclabel{color:var(--ink-soft)}.seclabel{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin:14px 2px 0}.topbar{display:flex;align-items:center;gap:12px;padding:2px 0 12px}.topbar .tt{font-size:18px;font-weight:700;letter-spacing:-.02em}.topbar .grow{flex:1 1}.back{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--card);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;font-size:17px;color:var(--ink);text-decoration:none;box-shadow:var(--shadow)}.back:active{background:var(--bg)}.back.float{left:14px;border:none}.back.float,.share-float{position:absolute;top:14px;z-index:10;background:rgba(255,255,255,.94)}.share-float{right:14px;width:38px;height:38px;border-radius:50%;font-size:16px;box-shadow:var(--shadow)}.btn,.share-float{border:none;display:flex;align-items:center;justify-content:center;cursor:pointer}.btn{gap:8px;width:100%;padding:15px;border-radius:13px;background:var(--green);color:#fff;font:inherit;font-size:15.5px;font-weight:700;transition:background .15s;margin-top:14px}.btn:hover:not(:disabled){background:var(--green-d)}.btn:disabled{opacity:.45;cursor:default}.btn-ghost{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:13px 15px;border:1.5px solid var(--line);border-radius:13px;background:var(--card);color:var(--ink);font:inherit;font-size:14.5px;font-weight:600;cursor:pointer;transition:all .15s;margin-top:10px;text-decoration:none}.btn-ghost:hover{border-color:#c4ccc4;background:var(--bg)}.dock{position:-webkit-sticky;position:sticky;bottom:0;background:linear-gradient(180deg,rgba(246,247,244,0),var(--bg) 22%);padding:12px 0 16px;margin-top:auto}.opt{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:14px 15px;margin:8px 0;border:1.5px solid var(--line);border-radius:13px;background:var(--card);color:var(--ink);font:inherit;font-size:14.5px;font-weight:600;cursor:pointer;transition:all .12s}.opt:hover{border-color:#c4ccc4}.opt.on{border-color:var(--green);background:var(--green-bg);box-shadow:0 0 0 1px var(--green)}.opt .hint{color:var(--ink-soft);font-size:13px;font-weight:500}.opt .ic{font-size:22px}.input{width:100%;padding:13px;border:1.5px solid var(--line);border-radius:12px;font:inherit;font-size:15px;background:var(--card);color:var(--ink);resize:none}.input:focus{outline:none;border-color:var(--green)}.field-label{font-size:14.5px;font-weight:700;color:var(--ink);margin:16px 0 8px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:15px;box-shadow:var(--shadow)}.info{font-size:13.5px;line-height:1.55;color:var(--ink);background:var(--amber-bg);border:1px solid #f0e2c4;border-radius:12px;padding:12px 13px;margin:8px 0}.info b,.info strong{color:var(--amber)}.success-box{font-size:14px;line-height:1.55;background:var(--green-bg);border:1px solid #bfe6cc;border-radius:12px;padding:13px 14px;color:var(--ink)}.box{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:15px}.box .lab{font-size:11.5px;font-weight:700;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.box .kv{display:flex;justify-content:space-between;gap:12px;font-size:14px;padding:5px 0}.box .kv .k{color:var(--ink-soft);flex-shrink:0}.box .kv .v{font-weight:600;text-align:right}.box p{font-size:14px;line-height:1.55;margin:0}.pill{display:inline-flex;gap:5px;background:var(--green-bg);color:var(--green-d);font-size:12px;font-weight:700;padding:5px 11px;border-radius:20px}.meta-row,.pill{align-items:center}.meta-row{display:flex;gap:6px;font-size:13.5px;color:var(--ink-soft)}.pricebox{background:var(--ink);color:#fff;border-radius:18px;padding:22px;text-align:center;margin:8px 0}.pricebox .val{font-size:42px;font-weight:800;letter-spacing:-.03em}.pricebox .cap{font-size:12.5px;color:#9fb0a8;margin-top:4px;line-height:1.4}.stepbar{display:flex;gap:6px;margin:4px 0 18px}.stepbar .step{flex:1 1;height:4px;border-radius:4px;background:var(--line);transition:background .2s}.stepbar .step.on{background:var(--green)}.map-wrap{position:relative}.map{height:400px;border-radius:14px;overflow:hidden;border:1px solid var(--line)}.map-pin{position:absolute;top:50%;left:50%;transform:translate(-50%,-100%);font-size:36px;z-index:500;pointer-events:none;filter:drop-shadow(0 2px 3px rgba(0,0,0,.35))}.brand{gap:9px}.brand,.brand-mark{display:flex;align-items:center}.brand-mark{width:34px;height:34px;border-radius:10px;background:var(--green);justify-content:center;color:#fff;font-weight:800;box-shadow:var(--shadow)}.brand-name{font-size:20px;font-weight:800;letter-spacing:-.03em}.brand-logo{display:flex;align-items:center;margin:2px 0 14px}.brand-logo img{height:46px;width:auto;display:block}.lp{min-height:100dvh;background:var(--bg)}.lp-wrap{max-width:920px;margin:0 auto;padding:0 22px}.lp-head{display:flex;align-items:center;justify-content:space-between;padding:20px 0}.lp-head img{height:34px;width:auto;display:block}.lp-pill{font-size:14px;font-weight:700;color:#fff;background:var(--green);text-decoration:none;border-radius:999px;padding:9px 18px}.lp-hero{text-align:center;max-width:660px;margin:0 auto;padding:44px 0 8px}.lp-h1{font-size:clamp(30px,5.2vw,44px);font-weight:800;letter-spacing:-.032em;line-height:1.12;margin:0}.lp-hero .sub2{font-size:clamp(16px,2vw,18px);line-height:1.65;color:var(--ink-soft);margin:16px auto 0;max-width:32em}.lp-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:26px}.lp-cta a{text-decoration:none;font-weight:700;font-size:15px;border-radius:999px;padding:13px 24px}.lp-cta .go{background:var(--green);color:#fff}.lp-cta .alt{color:var(--ink);border:1.5px solid #ccd3cc;background:var(--card)}.lp-sec{padding:52px 0 0}.lp-h2{font-size:clamp(22px,3vw,28px);font-weight:800;letter-spacing:-.025em;line-height:1.2;margin:0 0 12px}.lp-p{font-size:clamp(15.5px,1.8vw,17px);line-height:1.7;color:var(--ink);margin:0 0 14px;max-width:38em}.lp-story{background:var(--green-bg);border-radius:24px;padding:clamp(26px,4.5vw,44px)}.lp-flow{display:grid;grid-template-columns:1fr;grid-gap:12px;gap:12px;margin-top:22px}.lp-flow .fc{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px 18px;text-align:center}.lp-flow .ic{font-size:34px;line-height:1}.lp-flow .ft{font-size:16px;font-weight:800;letter-spacing:-.01em;margin:10px 0 6px}.lp-flow .fd{font-size:14px;line-height:1.55;color:var(--ink-soft);margin:0}.lp-ba{display:flex;gap:3px;border-radius:18px;overflow:hidden;margin-top:18px;box-shadow:var(--shadow)}.lp-ba>div{position:relative;width:50%}.lp-ba img{width:100%;height:260px;object-fit:cover;display:block}.lp-ba .tag{position:absolute;left:10px;top:10px;font-size:11.5px;font-weight:800;letter-spacing:.5px;color:#fff;padding:4px 11px;border-radius:8px}.lp-cap{font-size:14.5px;color:var(--ink-soft);margin:12px 0 0;line-height:1.55}.lp-two{display:grid;grid-template-columns:1fr;grid-gap:12px;gap:12px;margin-top:20px}.lp-two .tc{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px 20px}.lp-two .tt2{font-size:17px;font-weight:800;letter-spacing:-.01em;margin:0 0 8px}.lp-two p{font-size:14.5px;line-height:1.6;color:var(--ink-soft);margin:0}.lp-close{text-align:center;padding:56px 0 26px}.lp-close .lp-p{margin-left:auto;margin-right:auto;max-width:26em}.lp-foot{border-top:1px solid var(--line);margin-top:26px;padding:20px 0 30px;text-align:center;font-size:13px}.lp-foot,.lp-foot a{color:var(--ink-soft)}.lp-foot a{text-decoration:none}@media (min-width:760px){.lp-flow{grid-template-columns:repeat(4,1fr)}.lp-two{grid-template-columns:1fr 1fr}.lp-ba img{height:320px}}.seg{display:flex;gap:6px;background:var(--line);padding:4px;border-radius:13px}.segbtn{flex:1 1;min-height:44px;padding:7px 4px;border:none;border-radius:10px;background:transparent;font:inherit;font-size:13px;line-height:1.15;font-weight:700;color:var(--ink-soft);cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;text-align:center}.segbtn.on{background:var(--card);color:var(--ink);box-shadow:var(--shadow)}.feed-list{display:grid;grid-gap:14px;gap:14px;margin-top:14px}.mcard{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .12s}.mcard:active{transform:scale(.985)}.mcard .photo{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center 72%;display:block;background:var(--line)}.mcard .photo-empty{width:100%;height:168px;display:grid;place-items:center;font-size:42px;background:var(--green-bg)}.mcard .photo-wrap{position:relative}.mcard .cat-pill{background:rgba(22,32,28,.78);font-size:12px;font-weight:600;padding:5px 10px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mcard .cat-pill,.mcard .receive-pill{position:absolute;left:10px;top:10px;color:#fff;border-radius:20px}.mcard .receive-pill{background:var(--ink);font-size:13px;font-weight:700;padding:6px 12px;box-shadow:var(--shadow)}.mcard .body{padding:13px 14px 15px}.mcard .mtitle{font-size:16.5px;font-weight:700;line-height:1.25;margin:0;letter-spacing:-.01em}.mcard .place{font-size:13px;margin-top:3px;align-items:center;gap:4px}.mcard .meta,.mcard .place{color:var(--ink-soft);display:flex}.mcard .meta{justify-content:space-between;font-size:13.5px;margin-top:8px}.mcard .receive{font-size:22px;font-weight:800;color:var(--green-d);margin-top:8px}.mcard .fundrow{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-top:7px}.mcard .fund-raised{font-size:14.5px;font-weight:700;color:var(--green-d)}.mcard .fund-left{font-size:14.5px;font-weight:700;color:var(--ink-soft);white-space:nowrap}.mcard .funders{font-size:13px;color:var(--ink-soft);margin-top:9px;line-height:1.4}.mcard .funders .lead{font-weight:700;color:var(--ink)}.mchips{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:9px;font-size:13px;color:var(--ink-soft)}.mcard .btn{padding:12px;font-size:14.5px;margin-top:12px}.bar{height:7px;background:var(--line);margin-top:12px;overflow:hidden}.bar,.bar>span{border-radius:10px}.bar>span{display:block;height:100%}.bar>span,.fab{background:var(--green)}.fab{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:30px;text-decoration:none;box-shadow:0 8px 22px rgba(31,138,76,.45),0 2px 6px rgba(0,0,0,.12);z-index:50}.fab:hover{background:var(--green-d)}.empty{color:var(--ink-soft);text-align:center;margin-top:40px;font-size:14.5px}.hero{position:relative}.hero img{width:100%;height:250px;object-fit:cover;object-position:center 72%;display:block;background:var(--line)}.sheet{background:var(--bg);border-radius:22px 22px 0 0;margin-top:-22px;position:relative;padding-top:20px;display:flex;flex-direction:column}.tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(74px,1fr));grid-gap:9px;gap:9px;margin-top:8px}.tiers .tier{margin:0;padding:16px 4px;text-align:center;font-size:17px}.tier{width:100%;padding:15px;margin:8px 0;border:1.5px solid var(--line);border-radius:13px;background:var(--card);font:inherit;font-size:17px;font-weight:800;color:var(--ink);cursor:pointer;transition:all .12s}.tier.on,.tier:hover{border-color:var(--green);background:var(--green-bg)}.tier.on{color:var(--green-d);box-shadow:0 0 0 1px var(--green)}.complete{display:flex;align-items:center;gap:12px;width:100%;margin-top:9px;padding:13px 15px;border:1.5px solid var(--line);border-radius:13px;cursor:pointer;background:var(--card);font:inherit;text-align:left;transition:all .12s}.complete.on{border-color:var(--green);background:var(--green-bg);box-shadow:0 0 0 1px var(--green)}.complete .ct{font-size:14px;font-weight:700;color:var(--ink)}.complete .cs{font-size:12px;color:var(--ink-soft);margin-top:2px;line-height:1.3}.complete .cv{margin-left:auto;font-size:18px;font-weight:800;color:var(--green-d);flex-shrink:0}.qrbox{background:var(--card);border:1.5px dashed var(--line);border-radius:12px;padding:14px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11px;line-height:1.5;word-break:break-all;color:var(--ink-soft)}.resume-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--ink);color:#fff;border-radius:14px;padding:13px 15px;margin-top:14px;text-decoration:none;box-shadow:var(--shadow)}.resume-banner strong{font-size:13.5px}.resume-go{background:var(--green);color:#fff;font-size:12.5px;font-weight:700;padding:8px 14px;border-radius:20px;white-space:nowrap}