:root{--ink:#243c30;--green:#315542;--muted:#526653;--line:#d6dfd0;--paper:#f7f8f3;--focus:#965118}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font:16px/1.65 Arial,Helvetica,sans-serif}h1,h2,p{margin-top:0}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.15}h1{letter-spacing:-1.5px;margin-bottom:18px;font-size:clamp(34px,5vw,50px)}h2{letter-spacing:-.5px;font-size:27px}p{margin-bottom:14px}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,a,summary{cursor:pointer}:is(button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible){outline:3px solid var(--focus);outline-offset:4px}button:disabled{opacity:.55;cursor:wait}a{color:var(--green);text-underline-offset:4px}header{border-bottom:1px solid var(--line);align-items:center;gap:13px;max-width:1100px;margin:0 auto;padding:30px 32px;display:flex}.brand-icon{background:var(--green);color:#f4f5e8;border-radius:12px;place-items:center;width:44px;height:48px;display:grid}header strong{letter-spacing:2px;font-size:12px;display:block}header span{letter-spacing:1.7px;font-size:10px;display:block}.header-note{color:var(--muted);margin-left:auto;font-size:10px}main{max-width:810px;margin:55px auto 70px;padding:0 28px}.eyebrow{letter-spacing:1.8px;color:var(--muted);margin-bottom:18px;font-size:11px;font-weight:700}.intro{color:var(--muted);max-width:680px;font-size:19px}.context-line{color:var(--muted);flex-wrap:wrap;gap:8px 20px;margin:24px 0;font-size:13px;display:flex}.privacy{background:#eaf0e2;border:1px solid #d5dfca;border-radius:14px;margin:30px 0;padding:27px 30px;font-size:14px}.privacy h2{font-size:25px}.privacy p:last-child{margin-bottom:0}.form-progress{color:var(--muted);border-bottom:1px solid var(--line);margin-bottom:30px;padding:10px 0 18px;font-size:12px}.question{border:1px solid var(--line);background:#fff;border-radius:13px;min-width:0;margin:0 0 30px;padding:24px}.question legend{max-width:100%;padding:0 8px;font-weight:600;line-height:1.5}.question-number{color:var(--muted);margin-right:10px;font-size:12px;font-weight:400}.optional{color:var(--muted);margin-left:10px;font-size:11px;font-weight:400}.help{color:var(--muted);margin-bottom:17px;font-size:13px}.choices{gap:8px;display:grid}.choices.multi{grid-template-columns:1fr 1fr}.choice{cursor:pointer;background:#fcfdf9;border:1px solid #dce3d6;border-radius:7px;align-items:flex-start;gap:12px;min-height:46px;padding:11px 14px;font-size:14px;display:flex}.choice:has(input:checked){background:#e6efdd;border-color:#6c885d}.choice input{width:18px;height:18px;accent-color:var(--green);flex:none;margin:4px 0 0}.question textarea,.field input,.field select,.field textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #aabca1;border-radius:7px;min-height:46px;padding:12px}.question textarea,.field textarea{resize:vertical;line-height:1.7}.muted{color:var(--muted);font-size:12px}.text-button{color:var(--green);background:0 0;border:0;padding:12px 0;font-size:13px;text-decoration:underline}.optional-details{border:1px solid var(--line);background:#fff;border-radius:12px;margin:25px 0;padding:22px 25px}.optional-details summary{min-height:36px;font-weight:600}.optional-details p{color:var(--muted);font-size:13px}.field{margin:18px 0;display:block}.field span{margin-bottom:7px;font-size:14px;font-weight:600;display:block}.matching{border-left:3px solid #b1c29f;padding-left:18px}.consent{cursor:pointer;gap:14px;padding:22px 0;font-size:14px;display:flex}.consent input{width:20px;height:20px;accent-color:var(--green);flex:none;margin:4px 0}.btn{border:1px solid var(--green);background:var(--green);color:#fff;border-radius:7px;align-items:center;gap:14px;min-height:48px;padding:13px 21px;font-size:14px;font-weight:600;display:inline-flex}.btn.secondary{color:var(--green);background:#fff;font-size:13px}.submit{justify-content:center;width:100%;margin-top:12px}.submit-note{text-align:center;color:var(--muted);margin:14px 0;font-size:12px}.notice{background:#edf2e7;border:1px solid #b8c8ac;border-radius:8px;margin-bottom:28px;padding:18px;font-size:14px}.notice.error{color:#713f1b;background:#fff4e6;border-color:#bb8954}.success{text-align:center;padding:50px 0}.success-icon{background:#dfead5;border-radius:50%;place-items:center;width:70px;height:70px;margin:0 auto 28px;display:grid}.preview-links{gap:12px;margin-top:20px;display:grid}.preview-links a{background:#f7faf3;border:1px solid #bccdaf;border-radius:7px;justify-content:space-between;padding:14px;text-decoration:none;display:flex}.preview-links a:hover{background:#fff}footer{border-top:1px solid var(--line);max-width:810px;color:var(--muted);gap:15px;margin:0 auto 35px;padding:25px 28px;font-size:12px;display:flex}footer svg{flex:none;margin-top:2px}footer strong{font-size:13px}footer p{margin:6px 0}svg{vertical-align:middle}.skip{z-index:10;background:#fff;padding:15px;position:absolute;top:-90px;left:12px}.skip:focus{top:10px}.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}@media (max-width:550px){header{padding:22px 20px}.header-note{display:none}main{margin:35px auto 45px;padding:0 18px}.privacy{padding:22px}.question{padding:19px 16px}.choices.multi{grid-template-columns:1fr}.choice{padding:11px}.optional-details{padding:20px}.question legend{font-size:15px}.intro{font-size:17px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}@media print{header,.btn,.submit-note,.consent,.skip,footer{display:none}body{background:#fff;font-size:11pt}main{max-width:none;margin:0;padding:0}.question{break-inside:avoid;border-color:#999}.privacy{background:#fff}.optional-details{display:block}.question textarea{min-height:90px}}.landing-actions{margin:28px 0 34px}.landing-actions .btn{text-decoration:none}.landing-actions p{margin:9px 0 0}.landing-context{border-top:1px solid var(--line);padding-top:24px}.landing-context h2{margin-bottom:14px;font-size:27px}@media (max-width:550px){header span{letter-spacing:.7px;font-size:8px}.brand-icon{flex:none}.landing-actions .btn{justify-content:center;width:100%}}
