@font-face{font-family:"Funnel Display";src:url("/assets/funnel-display-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Funnel Display";src:url("/assets/funnel-display-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Funnel Display";src:url("/assets/funnel-display-800.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}
:root{font-family:"Funnel Display",Arial,sans-serif;color:#101712;background:#f3f6f1;font-synthesis:none;text-rendering:optimizeLegibility;--green:#00811e;--green-mid:#40bf5b;--green-soft:#82dd73;--forest:#001d08;--deep:#001305;--ink:#101712;--muted:#68726b;--line:#dbe3db;--paper:#fff;--danger:#b5262e}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;min-width:320px;background:radial-gradient(circle at 12% 18%,rgba(130,221,115,.1),transparent 28%),#f3f6f1}
button,input,textarea{font:inherit}
button{cursor:pointer}
.page-shell{max-width:1440px;margin:0 auto;padding:0 6.15%}
.site-header{height:86px;display:flex;align-items:center;gap:22px;border-bottom:1px solid rgba(255,255,255,.14);position:relative;z-index:2;margin:0 -7.05%;padding:0 7.05%;background:var(--deep);color:#fff}
.brand{width:178px;height:42px;display:flex;align-items:center;overflow:hidden;flex:none}
.brand img{display:block;width:178px;height:auto;mix-blend-mode:screen}
.header-rule{width:1px;height:25px;background:rgba(255,255,255,.25)}
.header-label{font-size:14px;letter-spacing:.02em;color:rgba(255,255,255,.8)}
.header-lock{margin-left:auto;font-size:12px;color:#c6d6c8;display:flex;align-items:center;gap:8px}
.header-lock span{color:var(--green-soft);font-size:10px;box-shadow:0 0 0 5px rgba(130,221,115,.1);border-radius:50%}
.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.82fr);gap:7.5%;align-items:center;background:linear-gradient(118deg,var(--forest),#002a0d 68%,#003c17);color:#fff;margin:0 -7.05%;padding:86px 7.05% 92px;min-height:465px;overflow:hidden;position:relative}
.hero:before{content:"";position:absolute;inset:auto -6% -180px 48%;height:420px;border:1px solid rgba(130,221,115,.16);border-radius:50%;transform:rotate(-18deg);pointer-events:none}
.hero-copy{max-width:665px;position:relative;z-index:1}
.eyebrow,.section-kicker,.step-overline,.visual-kicker{letter-spacing:.16em;font-size:11px;font-weight:600}
.eyebrow{color:#b8e8ad;display:flex;align-items:center;gap:11px;margin:0 0 21px}
.eyebrow-dot{width:7px;height:7px;border-radius:50%;background:var(--green-soft);box-shadow:0 0 0 5px rgba(130,221,115,.12)}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(42px,5vw,68px);line-height:1.02;letter-spacing:-.045em;margin:0 0 20px;max-width:740px;font-weight:600}
h1 em{color:var(--green-soft);font-style:normal}
.hero-lead{font-size:17px;line-height:1.62;color:#d1ddd2;max-width:630px;margin:0 0 27px}
.hero-cta{display:inline-flex;align-items:center;gap:16px;text-decoration:none;border:1px solid rgba(130,221,115,.7);color:#fff;padding:12px 17px;border-radius:8px;font-size:14px;font-weight:600;transition:background .18s ease,transform .18s ease}
.hero-cta:hover{background:rgba(130,221,115,.12);transform:translateY(-1px)}
.hero-cta span{font-size:19px;color:var(--green-soft)}
.hero-visual{min-height:280px;position:relative;border:1px solid rgba(130,221,115,.2);border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012));display:grid;place-items:center;overflow:hidden}
.hero-visual:after{content:"";position:absolute;inset:12% 15%;border:1px solid rgba(130,221,115,.22);border-radius:50%;transform:rotate(-31deg)}
.orbit{position:absolute;border-radius:50%;border:1px solid rgba(130,221,115,.23);transform:rotate(27deg)}
.orbit-one{width:245px;height:135px}.orbit-two{width:190px;height:220px;transform:rotate(-36deg)}
.scan-mark{width:116px;height:116px;border:1px solid rgba(130,221,115,.7);border-radius:30px;display:grid;place-items:center;color:var(--green-soft);font-size:69px;line-height:1;font-weight:400;transform:rotate(45deg);box-shadow:0 0 52px rgba(64,191,91,.13);z-index:1}
.scan-mark::first-letter{transform:rotate(-45deg)}
.visual-caption{position:absolute;left:24px;bottom:22px;display:flex;flex-direction:column;gap:5px;z-index:2}
.visual-kicker{color:#a5d79e;font-size:9px}
.visual-caption strong{font-size:16px;font-weight:600}.visual-caption strong b{color:var(--green-soft);font-weight:400;padding:0 4px}
.visual-foot{color:#aab9ab;font-size:11px}
.visual-index{position:absolute;right:22px;bottom:24px;color:#b6e8ac;font-size:13px;font-weight:600;z-index:2}.visual-index span{color:#748978;font-weight:400}
.form-section{max-width:900px;margin:0 auto;padding:73px 0 68px}
.form-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}
.section-kicker{color:var(--green);margin:0 0 10px}
h2{font-size:clamp(30px,3.5vw,42px);line-height:1.12;letter-spacing:-.035em;margin:0 0 9px;font-weight:600}
.form-intro{font-size:15px;color:var(--muted);line-height:1.6;margin:0;max-width:610px}
.time-note{display:flex;align-items:center;gap:10px;color:#5c6c60;font-size:12px;line-height:1.35;flex:none}
.time-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e1f1e0;color:var(--green);font-size:18px}
.progress-wrap{margin:0 0 21px}
.progress-meta{display:flex;justify-content:space-between;color:#5f6b62;font-size:12px;margin:0 0 8px}
.progress-track{height:4px;background:#dce5dc;border-radius:8px;overflow:hidden}
.progress-track span{height:100%;width:25%;display:block;background:linear-gradient(90deg,var(--green),var(--green-mid));border-radius:inherit;transition:width .25s ease}
.step-dots{margin:19px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.step-dots li{display:flex;align-items:center;gap:8px;color:#9aa39b;font-size:11px;white-space:nowrap}
.step-dots li span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;border:1px solid #d1dad2;background:#f6f8f4;font-size:10px;color:#728076;flex:none}
.step-dots li b{font-weight:400}
.step-dots li.is-current,.step-dots li.is-done{color:#244b2b}.step-dots li.is-current span,.step-dots li.is-done span{background:#e1f4de;border-color:#a9d9a3;color:var(--green);font-weight:600}
.form-card,.success-card{background:var(--paper);border:1px solid #e3e9e3;border-radius:16px;box-shadow:0 14px 50px rgba(9,34,14,.055);padding:36px 40px 28px}
.form-step[hidden],.form-alert[hidden],.form-actions [hidden],.success-card[hidden]{display:none!important}
.step-heading{display:flex;align-items:flex-start;gap:17px;border-bottom:1px solid #ebefeb;padding-bottom:25px;margin-bottom:27px}
.step-number{width:43px;height:43px;display:grid;place-items:center;border-radius:12px;background:#e9f5e7;color:var(--green);font-size:13px;font-weight:600;flex:none}
.step-overline{color:#738275;font-size:9px;margin:1px 0 5px}
.step-heading h3{font-size:25px;line-height:1.12;letter-spacing:-.025em;margin:0 0 6px;font-weight:600}
.step-heading p:last-child{font-size:13px;line-height:1.5;color:var(--muted);margin:0}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 19px}
.field{display:flex;flex-direction:column;gap:8px;min-width:0;color:#28342b;font-size:14px;font-weight:600}
.field-full{grid-column:1/-1}
.field input[type="text"],.field textarea{width:100%;border:1px solid #ccd7cd;background:#fbfcfa;border-radius:8px;color:var(--ink);font-size:14px;font-weight:400;line-height:1.5;padding:12px 13px;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.field input[type="text"]{height:46px}
.field textarea{resize:vertical;min-height:88px}
.field input[type="text"]::placeholder,.field textarea::placeholder{color:#a2aaa3}
.field input:focus,.field textarea:focus{border-color:#36a34c;background:#fff;box-shadow:0 0 0 3px rgba(64,191,91,.13)}
.field input:invalid:not(:placeholder-shown),.field textarea:invalid:not(:placeholder-shown){border-color:#d59797}
.field-hint{color:#78847b;font-weight:400;font-size:12px;line-height:1.45;margin-top:-3px}
.choice-field{border:0;padding:0;margin:0;gap:12px}
.choice-field legend{padding:0;margin:0 0 1px;color:#28342b;font-size:14px;font-weight:600}
.required-mark,.required-note i,.consent-label i{font-style:normal;color:#b52c32;margin-left:3px}
.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.stage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.choice-card{position:relative;display:flex;min-height:48px;align-items:center;padding:10px 12px;border:1px solid #d6dfd6;border-radius:8px;background:#fbfcfa;color:#49554b;font-size:13px;line-height:1.35;font-weight:400;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}
.choice-card:hover{border-color:#8fc695;background:#f7fcf5}
.choice-card:has(input:checked){border-color:#59aa64;background:#eef8ec;color:#174d22;box-shadow:inset 0 0 0 1px #a4d2a7}
.choice-card input{appearance:none;width:15px;height:15px;border:1px solid #aebbb0;border-radius:50%;margin:0 10px 0 0;flex:none;background:#fff}
.choice-card input[type=checkbox]{border-radius:4px}
.choice-card input:checked{border-color:var(--green);background:var(--green);box-shadow:inset 0 0 0 3px #eef8ec}
.choice-card input[type=checkbox]:checked{box-shadow:none;position:relative}
.choice-card input[type=checkbox]:checked:after{content:"✓";position:absolute;inset:-1px 0 0;color:#fff;font-size:11px;text-align:center;line-height:15px;font-weight:600}
.choice-card input:focus-visible{outline:3px solid rgba(64,191,91,.25);outline-offset:2px}
.field-error{color:var(--danger);font-size:12px;font-weight:400;margin:0}
.privacy-box{grid-column:1/-1;display:flex;gap:13px;padding:18px 17px;border:1px solid #dce8dc;background:#f6faf4;border-radius:10px}
.privacy-icon{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#e0f1dd;color:var(--green);font-size:14px;flex:none}
.privacy-box strong{display:block;color:#233429;font-size:13px;margin:2px 0 4px}
.privacy-box p{color:#738077;font-size:12px;line-height:1.45;margin:0 0 13px}
.consent-label{display:flex;align-items:flex-start;gap:9px;color:#38453b;font-size:12px;line-height:1.45;font-weight:400;cursor:pointer}
.consent-label input{appearance:none;width:17px;height:17px;border:1px solid #95a498;border-radius:4px;margin:0;flex:none;background:#fff}
.consent-label input:checked{background:var(--green);border-color:var(--green);box-shadow:inset 0 0 0 3px #fff}
.consent-label input:focus-visible{outline:3px solid rgba(64,191,91,.25);outline-offset:2px}
.form-alert{margin:22px 0 0;padding:12px 14px;border-radius:8px;background:#fff4ec;border:1px solid #f0d6c7;color:#8b3c2d;font-size:13px;line-height:1.5}
.form-alert.is-success{background:#f0f8ed;border-color:#cee5c8;color:#275f2e}
.form-actions{display:flex;align-items:center;gap:15px;margin:30px 0 0;padding-top:21px;border-top:1px solid #ebefeb}
.actions-spacer{flex:1}
.required-note{font-size:11px;color:#88938a;white-space:nowrap}
.button{min-height:45px;border-radius:8px;padding:0 17px;border:1px solid transparent;font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:12px;transition:transform .15s ease,background .15s ease,border-color .15s ease}
.button:hover{transform:translateY(-1px)}
.button:focus-visible,.hero-cta:focus-visible{outline:3px solid rgba(64,191,91,.35);outline-offset:3px}
.button-next,.button-submit{background:var(--green);color:#fff;box-shadow:0 6px 15px rgba(0,129,30,.12)}
.button-next:hover,.button-submit:hover{background:#006c19}
.button-next span,.button-submit span{font-size:18px;font-weight:400}
.button-back{background:#fff;border-color:#d5ded5;color:#536055}
.button-back:hover{background:#f4f7f2}
.button:disabled{opacity:.6;cursor:wait;transform:none}
.success-card{padding:58px 46px 54px;text-align:center;max-width:680px;margin:0 auto}
.success-mark{width:60px;height:60px;display:grid;place-items:center;border-radius:50%;background:#e2f3de;color:var(--green);font-size:28px;margin:0 auto 20px}
.success-card h2{margin-bottom:12px}.success-card>p:not(.section-kicker){max-width:470px;margin:0 auto;color:var(--muted);font-size:15px;line-height:1.6}
.receipt-label{display:inline-flex;align-items:center;gap:9px;margin-top:25px;padding:10px 13px;border-radius:7px;background:#f2f6f0;color:#718074;letter-spacing:.1em;font-size:9px}.receipt-label strong{color:#285934;font-size:11px;letter-spacing:.03em}
.form-footer{text-align:center;color:#79847a;font-size:11px;margin:21px 0 0}.form-footer span{color:var(--green-mid);padding:0 6px}
.site-footer{border-top:1px solid #dfe5df;display:flex;justify-content:space-between;padding:18px 0 25px;color:#8b958c;font-size:11px}
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
@media(max-width:900px){.page-shell{padding:0 5%}.site-header,.hero{margin-left:-5.55%;margin-right:-5.55%;padding-left:5.55%;padding-right:5.55%}.hero{gap:5%;grid-template-columns:minmax(0,1fr) minmax(260px,.72fr);padding-top:69px;padding-bottom:74px}.hero-visual{min-height:260px}.form-section{padding-top:58px}}
@media(max-width:680px){.page-shell{padding:0 20px}.site-header{height:70px;margin:0 -20px;padding:0 20px;gap:13px}.brand,.brand img{width:145px}.brand{height:36px}.header-rule{height:20px}.header-label{font-size:12px}.header-lock{font-size:0;gap:0}.header-lock span{font-size:9px}.hero{display:block;margin:0 -20px;padding:54px 22px 38px;min-height:0}.hero h1{font-size:45px;max-width:520px}.hero-lead{font-size:15px;line-height:1.55}.hero-visual{min-height:210px;margin-top:34px}.scan-mark{width:88px;height:88px;font-size:51px}.orbit-one{width:195px;height:105px}.orbit-two{width:150px;height:180px}.visual-caption{left:18px;bottom:17px}.visual-caption strong{font-size:14px}.visual-foot{font-size:10px}.form-section{padding:45px 0 48px}.form-heading{align-items:flex-start;margin-bottom:25px}.form-heading h2{font-size:32px}.form-intro{font-size:14px}.time-note{display:none}.step-dots{gap:4px;margin-top:14px}.step-dots li{gap:5px;font-size:9px}.step-dots li span{width:23px;height:23px;font-size:9px}.step-dots li b{font-size:9px}.form-card{padding:25px 19px 20px;border-radius:13px}.step-heading{gap:12px;padding-bottom:20px;margin-bottom:22px}.step-number{width:36px;height:36px;border-radius:10px;font-size:11px}.step-heading h3{font-size:22px}.step-heading p:last-child{font-size:12px}.field-grid{grid-template-columns:1fr;gap:19px}.field-full{grid-column:1}.choice-grid,.stage-grid{grid-template-columns:1fr}.choice-card{min-height:45px}.privacy-box{grid-column:1;padding:15px 13px}.form-actions{gap:8px;flex-wrap:wrap;margin-top:24px}.required-note{order:3;width:100%;text-align:right;margin-top:2px}.actions-spacer{flex:1}.button{min-height:43px;padding:0 12px;font-size:12px}.button-back{margin-right:auto}.success-card{padding:42px 22px}.site-footer{font-size:10px}.site-footer span:last-child{text-align:right}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
