:root{--ink:#18302a;--muted:#66766f;--paper:#f4f3ed;--surface:#fffefa;--line:#d9dfd7;--green:#155e4b;--green-soft:#e5f2eb;--focus:#005fcc;--danger:#9a3b34;--shadow:0 18px 55px rgba(29,54,45,.12)}
*{box-sizing:border-box}html{min-height:100%;background:var(--paper)}body{margin:0;min-height:100%;color:var(--ink);font:17px/1.45 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.skip{position:fixed;left:12px;top:-60px;z-index:20;padding:10px 14px;background:#fff;color:#000}.skip:focus{top:12px}.shell{height:100dvh;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;width:min(100%,760px);margin:auto;padding:14px 16px 9px}.brand{display:flex;align-items:center;gap:9px;font-weight:850;letter-spacing:-.02em}.mark{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--green);color:#fff}.time{color:var(--muted);font-size:14px;font-weight:700}.survey{position:relative;height:100%;min-height:0;padding:8px 14px 6px;overflow:hidden}.honeypot{position:absolute!important;left:-9999px!important}.step{display:none;width:min(100%,700px);height:100%;max-height:100%;min-height:0;margin:auto;border:1px solid var(--line);border-radius:28px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden;overscroll-behavior:contain}.step.active{display:grid;grid-template-rows:minmax(0,1fr) auto;animation:arrive .22s ease}.card-main{display:flex;min-height:0;flex-direction:column;justify-content:center;padding:26px 22px 18px;overflow-y:auto;overscroll-behavior:contain}.eyebrow{margin-bottom:10px;color:var(--green);font-size:13px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.step h1,.step h2{margin:0;max-width:620px;font-size:clamp(29px,8vw,47px);line-height:1.08;letter-spacing:-.04em}.lead,.support{margin:16px 0 0;color:var(--muted);font-size:18px}.promises{display:grid;gap:9px;margin:24px 0 0;padding:0;list-style:none}.promises li{position:relative;padding-left:28px}.promises li::before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:900}.choices{display:grid;gap:9px;margin-top:22px}.choices.compact{grid-template-columns:1fr 1fr}.choice{position:relative;display:block;min-width:0}.choice input{position:absolute;opacity:0;pointer-events:none}.choice span{display:flex;align-items:center;min-height:54px;padding:11px 14px;border:1px solid var(--line);border-radius:14px;background:#fff;font-weight:720;cursor:pointer;transition:border-color .15s,background .15s,transform .12s}.choice span::before{content:"";flex:0 0 auto;width:19px;height:19px;margin-right:10px;border:2px solid #a9b5ae;border-radius:50%;background:#fff}.choice input[type=checkbox]+span::before{border-radius:6px}.choice input:focus-visible+span{outline:3px solid var(--focus);outline-offset:3px}.choice input:checked+span{border-color:var(--green);background:var(--green-soft);color:var(--green)}.choice input:checked+span::before{border:6px solid var(--green)}.choice input[type=checkbox]:checked+span::before{border:2px solid var(--green);background:var(--green);box-shadow:inset 0 0 0 3px var(--green-soft)}.choice:active span{transform:scale(.99)}.wide{grid-column:1/-1}.text-field{display:grid;gap:7px;margin-top:18px;color:var(--muted);font-size:14px;font-weight:750}.text-field textarea,.text-field input{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font:inherit;resize:vertical}.text-field textarea:focus,.text-field input:focus{outline:3px solid var(--focus);outline-offset:2px}.contact-panel{margin-top:16px;padding:15px;border:1px solid var(--line);border-radius:16px;background:#f8faf7}.contact-panel .text-field{margin-top:0}.consent{display:flex;align-items:flex-start;gap:9px;margin-top:13px;color:var(--muted);font-size:13px}.consent input{width:20px;height:20px;flex:0 0 auto}.privacy{margin-top:16px;color:var(--muted);font-size:13px}.privacy summary{min-height:42px;padding:10px 0;color:var(--green);font-weight:800;cursor:pointer}.privacy p{margin:0}.actions{position:sticky;bottom:0;display:grid;grid-template-columns:minmax(100px,.7fr) 1.3fr;gap:10px;padding:12px 22px max(22px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:linear-gradient(to bottom,rgba(255,254,250,.94),var(--surface) 20%)}.actions.single{grid-template-columns:1fr}.primary,.secondary{min-height:56px;border-radius:15px;font:inherit;font-weight:850;cursor:pointer}.primary{border:1px solid var(--green);background:var(--green);color:#fff}.link-button{display:grid;place-items:center;padding:0 18px;text-decoration:none}.primary:disabled{opacity:.48;cursor:not-allowed}.secondary{border:1px solid var(--line);background:#fff;color:var(--ink)}button:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.progress-wrap{width:min(100%,760px);margin:auto;padding:9px 16px max(14px,env(safe-area-inset-bottom));text-align:center}.counter{display:block;margin-bottom:6px;color:var(--muted);font-size:13px;font-weight:750}.progress{height:6px;overflow:hidden;border-radius:999px;background:#dce2dc}.progress span{display:block;width:0;height:100%;border-radius:inherit;background:var(--green);transition:width .2s ease}.error{position:fixed;right:14px;bottom:86px;left:14px;z-index:10;max-width:520px;margin:auto;padding:12px 15px;border-radius:13px;background:var(--danger);color:#fff;box-shadow:var(--shadow);text-align:center}.hidden{display:none!important}@keyframes arrive{from{transform:translateX(3%);opacity:.35}to{transform:none;opacity:1}}
@media(max-width:520px){.choices.compact{grid-template-columns:1fr}.card-main{justify-content:flex-start;padding-top:23px}.step h1,.step h2{font-size:clamp(29px,9vw,40px)}.lead,.support{font-size:16px}}
@media(max-height:700px){.card-main{justify-content:flex-start;padding-top:20px}.step h1,.step h2{font-size:29px}.choices{margin-top:15px}.choice span{min-height:50px}.actions{padding-bottom:max(14px,env(safe-area-inset-bottom))}}
@media(min-width:800px){.topbar{padding-top:22px}.survey{padding:14px 22px}.step{max-height:790px}.card-main{padding-inline:46px}.actions{padding-inline:46px;padding-bottom:30px}.progress-wrap{padding-bottom:20px}}
@media(prefers-reduced-motion:reduce){.step.active,.progress span{animation:none;transition:none}}
