:root{--ink:#132238;--muted:#667386;--green:#2f8f50;--green-dark:#247540;--green-soft:#edf7ef;--line:#dfe6df;--paper:#fffefb}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#f8faf6}button,a{font:inherit}.page{position:relative;min-height:100dvh;overflow:hidden;background:radial-gradient(circle at -8% 105%,#dfeeda 0,transparent 31%),radial-gradient(circle at 108% 25%,#e4f1f2 0,transparent 27%),linear-gradient(135deg,#fffefa 0%,#fbfcf8 60%,#f7faf5 100%);display:flex;flex-direction:column}.page:before,.page:after{content:"";position:absolute;border:1px solid #dce9dc;border-radius:50%;pointer-events:none}.page:before{width:420px;height:420px;right:-280px;top:170px}.page:after{width:260px;height:260px;left:-190px;bottom:-100px}
.header{position:relative;z-index:2;height:88px;border-bottom:1px solid #e4e9e3;display:flex;align-items:center;gap:28px;padding:0 max(30px,calc((100vw - 1180px)/2));background:#fffefaD9;backdrop-filter:blur(12px)}.header a{text-decoration:none;color:inherit}.brand{display:flex;align-items:center;gap:12px}.brand-icon{width:38px;height:38px;border:1.5px solid var(--green);color:var(--green);border-radius:11px;display:grid;place-items:center}.brand-icon svg{width:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.brand>span:last-child{display:flex;flex-direction:column;gap:1px}.brand strong{font-size:20px;letter-spacing:-.3px}.brand small{font-size:10px;color:#7d897f;letter-spacing:.04em}.header-status{display:flex;align-items:center;gap:8px;color:#52705a;font-size:12px;background:#f1f7f0;border:1px solid #e2eee1;border-radius:99px;padding:8px 13px}.header-status i{width:7px;height:7px;border-radius:50%;background:#42a260;box-shadow:0 0 0 4px #42a26016}.about{margin-left:auto;font-size:13px;font-weight:600;padding:10px 0;border-bottom:1px solid transparent}.about:hover{border-color:var(--green)}
.layout{position:relative;z-index:1;width:min(1180px,calc(100% - 60px));margin:auto;display:grid;grid-template-columns:minmax(0,1.34fr) minmax(390px,.82fr);gap:74px;align-items:center;padding:66px 0 52px}.kicker{display:inline-flex;align-items:center;gap:10px;background:var(--green-soft);color:#337848;border:1px solid #e1efe3;border-radius:99px;padding:7px 8px 7px 14px;font-size:11px;font-weight:700;letter-spacing:.02em}.kicker b{background:#fff;color:#4d7056;border-radius:99px;padding:4px 8px;font-size:10px}.copy h1{font-size:clamp(48px,5vw,72px);line-height:1.01;letter-spacing:-3.8px;max-width:700px;margin:24px 0 20px}.copy h1 em{font-style:normal;color:var(--green)}.copy>p{font-size:clamp(18px,1.55vw,22px);line-height:1.55;color:var(--muted);max-width:680px;margin:0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:42px 0 14px}.section-heading span{font-size:13px;font-weight:700}.section-heading small{font-size:10px;color:#8b958e}
.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.benefits button{position:relative;min-height:142px;border:1px solid var(--line);border-radius:16px;background:#fffefa;color:#1c2938;display:flex;align-items:flex-start;justify-content:center;flex-direction:column;gap:15px;padding:20px;text-align:left;transition:.18s ease}.benefits button>span:nth-child(2){display:flex;flex-direction:column;gap:5px}.benefits button strong{font-size:13px}.benefits button small{font-size:10px;line-height:1.35;color:#859087}.benefits .icon{width:40px;height:40px;border-radius:12px;background:var(--green-soft);color:var(--green);display:grid;place-items:center}.benefits .icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}.benefits button:not(:disabled){cursor:pointer}.benefits button:not(:disabled):hover,.benefits button.selected{transform:translateY(-2px);border-color:#72b283;background:#fbfefb;box-shadow:0 10px 28px #285f3512}.benefits i{position:absolute;right:13px;top:13px;width:21px;height:21px;border:1px solid #cbd6cd;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:12px;font-style:normal}.page[data-step="intro"] .benefits i{display:none}.benefits .selected i{background:var(--green);border-color:var(--green)}
.vote-card{position:relative;background:#fff;border:1px solid #e1e7e0;border-radius:24px;padding:34px;box-shadow:0 25px 70px #24332613,0 2px 3px #24332608}.vote-card:before{content:"";position:absolute;inset:10px;border:1px solid #f1f3ef;border-radius:17px;pointer-events:none}.card-top{display:flex;align-items:center;justify-content:space-between;position:relative}.card-mark{width:46px;height:46px;border-radius:14px;background:var(--green-soft);color:var(--green);display:grid;place-items:center}.card-mark svg{width:25px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.verified{font-size:10px;font-weight:700;color:#4d7457;background:#f3f8f2;border-radius:99px;padding:7px 10px}.vote-card h2{position:relative;font-size:30px;line-height:1.15;letter-spacing:-1px;margin:28px 0 27px}.count{display:flex!important;align-items:center;gap:12px;margin:0!important}.count b{font-size:46px!important;line-height:1;color:var(--ink)!important;letter-spacing:-2px}.count span{font-size:12px;line-height:1.4;color:#657269}.goal{display:flex;justify-content:space-between;align-items:center;margin:29px 0 10px;font-size:11px;color:#78837c}.goal strong{font-size:11px;color:#43534a}.progress{height:9px;background:#e8ede8;border-radius:99px;overflow:hidden;margin:0}.progress span{display:block;width:72%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),#68b778)}.remaining{font-size:10px!important;color:#849087!important;margin:8px 0 25px!important}.primary,.message button{position:relative;width:100%;min-height:58px;border:0;border-radius:12px;background:linear-gradient(135deg,#39975a,var(--green));color:#fff;font-weight:750;font-size:14px;display:flex;align-items:center;justify-content:center;gap:12px;cursor:pointer;box-shadow:0 10px 24px #2f8f5023;transition:.18s ease}.primary span{font-size:18px;transition:transform .18s ease}.primary:hover,.message button:hover{background:linear-gradient(135deg,#31894f,var(--green-dark));transform:translateY(-1px)}.primary:hover span{transform:translateX(3px)}.primary:disabled{opacity:.43;cursor:not-allowed;box-shadow:none;transform:none}.privacy{display:flex;align-items:center;justify-content:center;gap:7px;color:#89948c;font-size:9px;line-height:1.35;margin:18px 8px 0}.privacy svg{width:15px;flex:0 0 15px;fill:none;stroke:#679073;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.hint{font-size:13px;line-height:1.65;color:#647168;margin:0 0 24px}.error{font-size:12px;color:#99424b;background:#fff2f3;border:1px solid #efd1d4;border-radius:9px;padding:11px 12px;margin-bottom:14px}
footer{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:14px;color:#929c94;font-size:10px;padding:0 25px 27px}footer i{width:4px;height:4px;border-radius:50%;background:#aab5ad}.centered{min-height:100dvh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 100%,#e8f3e4,transparent 38%),#fbfcf8}.message{width:min(460px,calc(100% - 34px));text-align:center;background:#fff;border:1px solid #e3e7e1;border-radius:22px;padding:42px;box-shadow:0 24px 70px #24332612}.status-icon{width:64px;height:64px;border-radius:18px;background:#f2f4f1;color:#627064;display:grid;place-items:center;margin:0 auto 24px;font-size:30px}.status-icon.done{background:#e9f6e9;color:var(--green)}.message h1{font-size:29px;margin:0 0 13px}.message p{color:#737e8d;line-height:1.65;margin:0 0 25px}.message button{min-height:50px;font-size:14px}.busy{cursor:progress}[hidden]{display:none!important}
@media(max-width:900px){.header{height:76px;padding:0 24px}.header-status{margin-left:auto}.about{display:none}.layout{grid-template-columns:1fr;width:min(650px,calc(100% - 40px));gap:34px;padding:44px 0 36px}.copy h1{font-size:52px}.vote-card{padding:31px}.section-heading{margin-top:35px}}
@media(max-width:580px){.header{padding:0 17px}.brand-icon{width:34px;height:34px}.brand strong{font-size:18px}.brand small{display:none}.header-status{font-size:0;padding:9px}.header-status i{margin:0}.layout{width:calc(100% - 28px);padding:30px 0 28px;gap:24px}.kicker{font-size:10px}.copy h1{font-size:40px;line-height:1.06;letter-spacing:-2.2px;margin:20px 0 15px}.copy>p{font-size:16px;line-height:1.5}.section-heading{align-items:center;margin:29px 0 12px}.section-heading small{display:none}.benefits{grid-template-columns:1fr;gap:9px}.benefits button{min-height:76px;flex-direction:row;align-items:center;justify-content:flex-start;padding:12px 15px;gap:13px}.benefits .icon{width:42px;flex:0 0 42px}.benefits i{top:27px;right:17px}.benefits button small{font-size:9px}.vote-card{padding:26px 22px;border-radius:19px}.vote-card:before{display:none}.vote-card h2{font-size:27px;margin:23px 0}.count b{font-size:42px!important}.primary{min-height:56px}footer{padding-bottom:22px}.message{padding:34px 23px}.message h1{font-size:25px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.hint{font-size:12px;line-height:1.55;margin-bottom:17px}.voter-fields{display:grid;gap:11px;margin-bottom:12px}.voter-fields label{display:grid;gap:6px;font-size:10px;font-weight:700;color:#4d5b52}.voter-fields input{width:100%;height:46px;border:1px solid #dce4dc;border-radius:10px;background:#fbfcfa;color:var(--ink);padding:0 13px;font-size:13px;outline:none}.voter-fields input:focus{border-color:#65aa77;box-shadow:0 0 0 3px #41975413;background:#fff}.voter-fields input::placeholder{color:#a1aaa3}.consent{display:flex;align-items:flex-start;gap:9px;color:#77827a;font-size:9px;line-height:1.45;margin:2px 1px 15px;cursor:pointer}.consent input{width:15px;height:15px;margin:0;accent-color:var(--green);flex:0 0 15px}
/* Published templates from Pegasus CRM */
.custom-page{min-height:100vh;padding:clamp(18px,5vw,64px);display:grid;place-items:center}.custom-shell{width:min(760px,100%);padding:clamp(24px,6vw,64px);box-shadow:0 24px 80px rgba(15,35,27,.12)}.custom-shell h1{font-size:clamp(34px,7vw,68px);line-height:1.02;margin:0 0 24px}.custom-shell h2{font-size:clamp(28px,5vw,46px);margin:0 0 20px}.custom-shell p{font-size:clamp(17px,2vw,21px);line-height:1.6;margin:0 0 24px}.custom-image{display:block;width:100%;max-height:520px;object-fit:cover;border-radius:18px;margin:18px 0}.custom-shell fieldset{border:0;padding:0;margin:20px 0}.custom-shell legend{font-weight:800;font-size:18px;margin-bottom:12px}.custom-choice,.custom-field,.custom-consent{display:flex;gap:12px;align-items:center;padding:14px 16px;border:1px solid #dce5e0;border-radius:14px;margin:10px 0}.custom-field{align-items:stretch;flex-direction:column;font-weight:700}.custom-field input{border:1px solid #ccd9d2;border-radius:10px;padding:13px;font:inherit}.custom-button{width:100%;border:0;border-radius:14px;color:#fff;padding:16px 22px;font:800 17px inherit;cursor:pointer;margin-top:16px}.custom-error{margin-top:14px;padding:12px;border-radius:10px;background:#fff0f0;color:#a92323}.custom-shell hr{border:0;border-top:1px solid #dce5e0;margin:24px 0}

/* Flexible templates v2 */
.custom-page{background-size:cover;background-position:center;align-items:center}.custom-shell{width:100%;min-height:120px;display:grid;align-content:start;background-size:cover;background-position:center;overflow:hidden}.custom-shell h1,.custom-shell h2,.custom-shell h3,.custom-shell p,.custom-shell fieldset,.custom-shell hr,.custom-image,.custom-button,.custom-field,.custom-consent{margin-left:0;margin-right:0;box-sizing:border-box}.custom-shell h1{font-size:clamp(34px,7vw,68px);line-height:1.04;margin-top:0}.custom-shell h2{font-size:clamp(28px,5vw,48px);line-height:1.1;margin-top:0}.custom-shell h3{font-size:clamp(22px,4vw,36px);line-height:1.15;margin-top:0}.custom-shell p{line-height:1.6}.custom-image{display:block;max-width:100%;max-height:none;margin:0}.custom-shell fieldset{margin:0}.custom-shell legend{font-weight:800;font-size:18px;margin-bottom:12px}.custom-choice,.custom-field,.custom-consent{margin:6px 0}.custom-choice{cursor:pointer}.custom-choice:has(input:checked){border-color:currentColor;background:rgba(127,127,127,.07)}.custom-field input{width:100%;background:#fff;color:#17231f;outline:none}.custom-field input:focus{border-color:#7664d8;box-shadow:0 0 0 3px rgba(102,85,217,.12)}.custom-button{margin:0;border:1px solid transparent;transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}.custom-button:hover{transform:translateY(-1px);filter:brightness(.96);box-shadow:0 10px 25px rgba(20,25,45,.12)}.custom-button.outline{border-width:2px}.custom-error{width:100%;grid-column:1/-1}.busy .custom-button{pointer-events:none;opacity:.7}.tpl-animated{animation-fill-mode:both;will-change:transform,opacity}.tpl-fade{animation-name:tplFade}.tpl-fade-up{animation-name:tplFadeUp}.tpl-slide-left{animation-name:tplSlideLeft}.tpl-slide-right{animation-name:tplSlideRight}.tpl-zoom{animation-name:tplZoom}.tpl-bounce{animation-name:tplBounce}@keyframes tplFade{from{opacity:0}to{opacity:1}}@keyframes tplFadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes tplSlideLeft{from{opacity:0;transform:translateX(-48px)}to{opacity:1;transform:none}}@keyframes tplSlideRight{from{opacity:0;transform:translateX(48px)}to{opacity:1;transform:none}}@keyframes tplZoom{from{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}@keyframes tplBounce{0%{opacity:0;transform:translateY(36px)}60%{opacity:1;transform:translateY(-10px)}100%{transform:none}}
@media(max-width:600px){.custom-page{padding:12px}.custom-shell{padding:var(--tpl-mobile-page-padding,24px)!important;border-radius:min(20px,var(--template-radius,20px))!important;grid-template-columns:1fr!important}.custom-shell>*{grid-column:1!important}.custom-shell h1{font-size:min(12vw,52px)!important}.custom-shell h2{font-size:min(10vw,42px)!important}.custom-shell [style*="width"]{max-width:100%}}
@media(prefers-reduced-motion:reduce){.tpl-animated{animation:none!important}}

#verification-form {display:grid;gap:12px;margin:26px auto 0;max-width:320px;text-align:left}#verification-form[hidden]{display:none}#verification-form label{font-weight:700}#verification-code{box-sizing:border-box;width:100%;padding:14px;border:1px solid #bbc9c2;border-radius:12px;font-size:22px;letter-spacing:.12em;text-align:center}#verification-form button{border:0;border-radius:12px;padding:14px;color:white;background:#16845b;font-weight:700;cursor:pointer}#verification-error{color:#b42318;margin:0}#verification-error[hidden]{display:none}
