@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/poppins-600.woff2)format("woff2")}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/poppins-700.woff2)format("woff2")}:root{color:#051833;background:#f3f8fe;font-family:Open Sans,Helvetica Neue,Helvetica,Arial,sans-serif;line-height:1.5}*{box-sizing:border-box}[hidden]{display:none!important}body{background:#cfe3fb url(/bg-pattern.webp) top/cover no-repeat fixed;min-height:100vh;margin:0;padding:2.75rem 1.25rem 4rem}main{max-width:40rem;margin:0 auto}.card{background:#fff;border-radius:14px;padding:2rem;box-shadow:0 10px 30px #05183314}.hero-kind{width:min(440px,94%);height:auto;margin:0 auto 1.25rem;display:block}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}h1{text-align:center;color:#051833;margin:.5rem 0;font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1.85rem;font-weight:700;line-height:1.2}.sub{text-align:center;color:#46587a;margin:.5rem 0 0;font-size:.95rem}.sub-line{display:block}.counter{text-align:center;margin:1.5rem 0 .25rem}.count-num{font-variant-numeric:tabular-nums;color:#1f74df;margin:0;font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:3.4rem;font-weight:700;line-height:1}.count-label{color:#46587a;margin:.35rem 0 0;font-size:.92rem}.count-label strong{color:#051833}.count-track{background:#edf3fb;border:1px solid #d5e2f2;border-radius:99px;max-width:26rem;height:10px;margin:.9rem auto 0;overflow:hidden}.count-bar{background:linear-gradient(90deg,#1f74df,#14549e);border-radius:99px;width:0%;height:100%;transition:width 1.2s cubic-bezier(.2,.7,.2,1)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.hero-kind,.card,.module,#pledge-map{margin-top:.9rem}#pledge-map .state path,#pledge-map circle.state{fill:#e1edfc;transition:fill .4s}#pledge-map .borders{stroke:#fff;stroke-width:1px}#pledge-map g.borders path{fill:none}#pledge-map .separator1{stroke:#d5e2f2;stroke-width:2px}@media (prefers-reduced-motion:reduce){#pledge-map .state path,#pledge-map circle.state{transition:none}}.pagefoot{animation:.55s both rise}.module:first-of-type{animation-delay:80ms}.module:nth-of-type(2){animation-delay:.16s}.module:nth-of-type(3){animation-delay:.24s}.pagefoot{animation-delay:.3s}@keyframes pop{0%{transform:scale(.96)}to{transform:none}}#certificate{animation:.25s both pop}button{transition:transform .15s,background .15s}button:hover{transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){.count-bar{transition:none}.hero-kind,.card,.module,.pagefoot,#certificate{animation:none}button{transition:none}}#pledge{border-top:1px solid #d5e2f2;margin-top:2rem;padding-top:1.5rem}#pledge h2,.module h2{color:#051833;margin:0 0 .5rem;font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1.25rem;font-weight:700}.pledge-lead{color:#051833;background:#edf3fb;border-left:3px solid #1f74df;border-radius:0 10px 10px 0;margin:0 0 .75rem;padding:.7rem .9rem;font-weight:600}.pledge-what{color:#46587a;margin:0 0 .25rem;font-size:.92rem;font-weight:600}.pledge-points{color:#051833;margin:0;padding-left:1.3rem;font-size:.95rem}.pledge-points li{margin:.2rem 0}#pledge-form{margin-top:1.5rem}form,.panel{gap:.95rem;margin-top:1.5rem;display:grid}.grid2{grid-template-columns:1fr 1fr;gap:.95rem;display:grid}@media (width<=560px){.grid2{grid-template-columns:1fr}}label{letter-spacing:.05em;text-transform:uppercase;color:#46587a;gap:.35rem;font-size:.78rem;font-weight:600;display:grid}input,select,textarea,button{font:inherit}input:not([type=checkbox]),select,textarea{color:#051833;letter-spacing:normal;text-transform:none;background:#f3f8fe;border:1px solid #d5e2f2;border-radius:9px;width:100%;min-width:0;padding:.65rem .75rem;font-size:1rem}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline-offset:2px;outline:2px solid #1f74df}button{color:#fff;cursor:pointer;background:#1f74df;border:0;border-radius:10px;width:100%;padding:.8rem 1.1rem;font-size:1rem;font-weight:700}button:hover,button:focus-visible{background:#155bb3}#errors{color:#9b1c1c;margin:0;padding-left:1.2rem}#turnstile{min-height:65px}#confirmation{overflow-wrap:anywhere;color:#0b5a2a;background:#e6f4ea;border-radius:9px;margin-top:1.25rem;padding:.85rem 1rem}.module{background:#fff;border-radius:14px;margin-top:1.25rem;padding:1.4rem 1.6rem;box-shadow:0 10px 30px #05183314}.module p{color:#46587a;margin:0;font-size:.92rem}.ways-list{color:#46587a;margin:.75rem 0 0;padding-left:1.5rem;font-size:.9rem}.ways-list li{margin:.2rem 0}.pagefoot{text-align:center;color:#46587a;background:#fff;border-radius:999px;width:fit-content;margin-top:1.5rem;margin-left:auto;margin-right:auto;padding:.4rem 1.1rem;font-size:.82rem;box-shadow:0 10px 30px #05183314}.pagefoot.policies{margin-top:.5rem}.pagefoot a{color:#14549e}.admin{background:#fff;border-radius:14px;max-width:56rem;padding:2rem;box-shadow:0 10px 30px #05183314}.admin h1{text-align:left;font-size:2rem}.admin label{font-size:inherit;letter-spacing:normal;text-transform:none;color:inherit}.admin button{width:fit-content}.eyebrow{color:#4a5b70;letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.85rem;font-weight:700}.admin h2{margin:1.75rem 0 .75rem;font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1.15rem}.admin #error{color:#9b1c1c}.chips,.metrics,.city-grid{flex-wrap:wrap;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.chip,.metric,.city{background:#fff;border:1px solid #d5dde6;border-radius:.4rem;margin:0;padding:.55rem .75rem}.chip.ready{background:#e6f4ea;border-color:#9ad0aa}.chip.down{background:#fdecec;border-color:#e2b0b0}.metric{min-width:10rem;font-weight:700}.city.reached{background:#e8f1fb;border-color:#9bbbe6;font-weight:700}.admin table{border-collapse:collapse;background:#fff;width:100%}.admin th,.admin td{text-align:left;border-bottom:1px solid #d5dde6;padding:.55rem .7rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.overlay{z-index:50;background:#0518338c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}#certificate{background:#fff;border-radius:14px;gap:.85rem;width:100%;max-width:34rem;max-height:92vh;padding:1.5rem;display:grid;overflow-y:auto;box-shadow:0 10px 30px #05183340}.stamp{width:160px;height:160px;margin:0 auto;display:block}#certificate h2{text-align:center;color:#051833;margin:0;font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:700}.certificate-number{letter-spacing:.08em;text-transform:uppercase;text-align:center;color:#d6335f;margin:0;font-size:.8rem;font-weight:700}#certificate canvas{border:1px solid #d5e2f2;border-radius:10px;width:100%;max-width:420px;height:auto;margin:0 auto;display:block}.certificate-actions{flex-wrap:wrap;justify-content:center;gap:.6rem;display:flex}.certificate-actions button{width:fit-content;padding:.65rem 1rem;font-size:.92rem}.certificate-actions a{color:#14549e;background:#fff;border:1px solid #1f74df;border-radius:10px;padding:.65rem 1rem;font-size:.92rem;font-weight:700;text-decoration:none;display:inline-block}.certificate-caption{color:#46587a;-webkit-user-select:all;user-select:all;border:1px dashed #9aa7b8;border-radius:9px;margin:0;padding:.6rem .7rem;font-size:.85rem}.cert-body,.cert-footer{text-align:center;color:#46587a;margin:0;font-size:.95rem}.cert-footer{color:#051833;font-size:1.05rem;font-weight:700}
