:root{--green:#009e50;--dark:#143b2d;--ink:#263e35;--muted:#738178;--line:#e0e9e3;--pale:#f1f7f2;--bg:#fbfcfa;--shadow:0 20px 70px #204e3010;font-family:Inter,'Segoe UI',sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:inherit}.header{height:100px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 max(5vw,24px);gap:35px}.brand{width:235px;height:72px;overflow:hidden;position:relative;display:block;flex-shrink:0}.brand img{width:255px;position:absolute;top:-36px;left:-13px}.header-label{font-size:13px;color:var(--muted);margin-left:auto}.private{font-size:12px;text-decoration:none;border:1px solid var(--line);padding:10px 14px;border-radius:30px}main{min-height:calc(100vh - 180px);max-width:1320px;margin:auto;padding:38px 5vw 65px}footer{border-top:1px solid var(--line);display:flex;padding:23px 5vw;gap:25px;color:var(--muted);font-size:11px;align-items:center}footer span:first-child{font-weight:800;letter-spacing:1px}footer .link{margin-left:auto}.eyebrow{font-size:11px;font-weight:750;letter-spacing:2px;color:var(--green);text-transform:uppercase}.tag{display:inline-flex;align-items:center;gap:8px;font-size:12px;border:1px solid #cfe4d6;border-radius:25px;padding:9px 14px;background:#fff}.dot{height:6px;width:6px;background:var(--green);border-radius:100%}h1{font-size:clamp(36px,4.4vw,65px);line-height:1.09;letter-spacing:-2.8px;font-weight:650;margin:25px 0}h1 em{font-style:normal;color:var(--green)}h2{font-size:30px;letter-spacing:-1px;line-height:1.2;font-weight:650}h3{font-size:18px;letter-spacing:-.4px}p{line-height:1.7}.lead{font-size:17px;color:#718078;max-width:550px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:75px;align-items:center;padding:40px 0 55px}.btn{border:0;background:var(--green);color:white;padding:16px 23px;border-radius:10px;font-weight:650;display:inline-flex;gap:20px;align-items:center;justify-content:center;text-decoration:none;font-size:14px;box-shadow:0 6px 18px #009e5018}.btn:hover{background:#008744}.btn.secondary{background:white;color:var(--ink);border:1px solid var(--line);box-shadow:none}.btn.dark{background:var(--dark)}.btn.small{padding:10px 14px;font-size:12px}.link{background:none;border:0;color:var(--muted);font-size:12px;text-decoration:underline;text-underline-offset:4px}.hero-actions{display:flex;gap:20px;align-items:center;margin-top:30px}.assurance{display:flex;gap:20px;font-size:11px;color:var(--muted);margin-top:22px}.assurance span:before{content:'✓';color:var(--green);margin-right:6px}.hero-art{background:#eaf4e9;border-radius:32px;padding:30px;position:relative;min-height:420px;display:flex;flex-direction:column;justify-content:center;box-shadow:inset 0 0 90px #dae8d5;background-image:radial-gradient(#98b8a44d 1px,transparent 1px);background-size:18px 18px}.art-top{display:flex;align-items:center;justify-content:space-between;margin:0 4px 16px}.art-top span{font-size:10px;letter-spacing:1px;font-weight:700}.art-card{background:#fff;border-radius:17px;padding:24px;box-shadow:0 10px 35px #173e3010;position:relative}.art-title{font-size:13px;color:var(--muted)}.flow{display:flex;gap:6px;margin:22px 0;align-items:center}.flow span{background:var(--pale);border:1px solid var(--line);border-radius:10px;padding:12px 8px;font-size:11px;flex:1;text-align:center}.flow b{color:#83a58f}.art-chart{display:flex;align-items:flex-end;gap:13px;height:125px;border-bottom:1px solid var(--line);padding:0 20px 0}.art-chart div{flex:1;background:#dce7de;border-radius:6px 6px 0 0;height:var(--h)}.art-chart div:nth-child(even){background:var(--green)}.art-bottom{background:var(--dark);color:white;border-radius:12px;margin:18px -10px -12px 35px;padding:18px 20px;display:flex;align-items:center;gap:14px;font-size:13px;box-shadow:var(--shadow)}.art-bottom strong{font-size:24px}.micro{font-size:11px;color:var(--muted);line-height:1.6}.steps-overview{border-top:1px solid var(--line);padding-top:28px;display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.step-overview{display:flex;gap:15px;align-items:flex-start}.step-overview b{border:1px solid var(--line);border-radius:10px;padding:12px;color:var(--green);font-weight:500;font-size:13px}.step-overview h3{margin:0 0 6px;font-size:14px}.step-overview p{font-size:12px;margin:0;color:var(--muted)}.workspace{max-width:850px;margin:0 auto}.crumb{display:flex;justify-content:space-between;gap:15px;font-size:12px;color:var(--muted);margin-bottom:12px}.progress{background:#e4ebe5;height:5px;border-radius:10px;margin-bottom:40px;overflow:hidden}.progress div{background:var(--green);height:100%;transition:width .3s}.card{background:white;border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-grid .full{grid-column:1/-1}label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}input:not([type=range]):not([type=checkbox]):not([type=radio]),select,textarea{background:#fff;border:1px solid #d5dfd8;border-radius:9px;padding:12px 13px;min-height:45px;width:100%;color:var(--ink)}textarea{min-height:100px;resize:vertical}input:focus-visible,button:focus-visible,a:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #84d8a6;outline-offset:3px}input[type=checkbox]{accent-color:var(--green);width:17px;height:17px;flex-shrink:0}.check{display:flex;align-items:flex-start;gap:9px;font-size:12px;font-weight:400;line-height:1.6;margin-top:13px}.nav{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:28px}.options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:25px}.option{border:1px solid var(--line);background:#fff;padding:18px;text-align:left;border-radius:12px;display:flex;align-items:center;gap:12px;font-size:13px;min-height:70px}.radio{width:18px;height:18px;border:1px solid #cbd7ce;border-radius:100%;display:block;flex-shrink:0}.option.selected{border-color:var(--green);background:#f0f9f2}.option.selected .radio{border:5px solid var(--green)}.muted{color:var(--muted)}.info{background:var(--pale);border:1px solid #dce9de;border-radius:11px;padding:15px 18px;font-size:12px;line-height:1.7;margin:18px 0}.warning{background:#fff8e9;border-color:#eedfba;color:#79602d}.slider-row{margin:26px 0}.slider-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.slider-top label{margin:0}.slider-top input{max-width:110px;font-weight:650;text-align:right;font-size:18px}.range{width:100%;accent-color:var(--green);margin:22px 0 0;height:7px}.range-scale{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin-top:12px}.live-total{background:var(--dark);color:white;padding:22px;border-radius:12px;display:flex;align-items:center;gap:15px}.live-total strong{font-size:32px;letter-spacing:-1px}.live-total small{margin-left:auto;max-width:220px;line-height:1.5;color:#b9d4c1}.process-num{font-size:50px;color:#d4e4d8;font-weight:300;line-height:1}.process-head{display:flex;gap:24px;align-items:center}.process-head h2{margin:12px 0}.review-row{display:flex;align-items:center;gap:15px;padding:16px 0;border-bottom:1px solid var(--line);font-size:13px}.review-row span{flex:1}.review-row strong{font-weight:500}.review-row button{margin-left:15px}.center{text-align:center;padding:70px 0}.spinner{width:60px;height:60px;border:3px solid var(--line);border-top-color:var(--green);border-radius:100%;animation:spin 1s linear infinite;margin:35px auto}@keyframes spin{to{transform:rotate(360deg)}}.loading{text-align:center;padding:100px}.error{background:#fff2ee;border:1px solid #efcec3;color:#9b452b;padding:15px;border-radius:10px;font-size:13px;margin:15px 0}.dashboard-head{display:flex;justify-content:space-between;align-items:flex-start;gap:30px}.dashboard-head h1{font-size:43px;margin:15px 0}.tools{display:flex;gap:10px;flex-wrap:wrap}.tabs{display:flex;gap:5px;background:#edf2ed;border-radius:10px;padding:5px;width:fit-content;margin:25px 0}.tabs button{padding:10px 17px;border:0;background:transparent;color:var(--muted);border-radius:7px;font-size:12px}.tabs .active{background:white;color:var(--dark);box-shadow:0 2px 5px #2343220a}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.metric{background:white;border:1px solid var(--line);border-radius:14px;padding:25px}.metric.featured{background:var(--dark);color:white;border:0}.metric label{font-size:11px;letter-spacing:.2px;font-weight:500;opacity:.75}.metric strong{font-size:36px;letter-spacing:-1.5px}.metric small{font-size:12px;margin-left:5px;opacity:.7}.metric p{font-size:11px;opacity:.7;margin:10px 0 0}.results-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:22px}.chart-row{margin:20px 0}.chart-label{font-size:11px;display:flex;justify-content:space-between;margin-bottom:7px}.bars{width:100%}.bar{height:7px;background:#cbd8cd;border-radius:10px;margin:4px 0;min-width:2px}.bar.after{background:var(--green)}.legend{display:flex;gap:18px;font-size:10px;color:var(--muted)}.legend span:before{content:'';display:inline-block;width:8px;height:8px;background:#cbd8cd;margin-right:5px;border-radius:2px}.legend span:last-child:before{background:var(--green)}.priority{padding:15px 0;border-bottom:1px solid var(--line);display:flex;gap:14px}.priority .rank{font-size:12px;color:var(--green);padding-top:4px}.priority h3{font-size:14px;margin:0 0 8px}.priority p{font-size:11px;color:var(--muted);margin:0}.priority strong{font-size:13px}.section-title{display:flex;justify-content:space-between;align-items:center;margin:32px 0 16px}.section-title h2{font-size:24px;margin:0}.opportunities{display:grid;grid-template-columns:1fr 1fr;gap:16px}.opportunity{padding:25px}.opportunity h3{margin:0 0 10px}.badge{display:inline-block;border-radius:5px;padding:5px 8px;background:var(--pale);color:#48775a;font-size:10px;margin:0 4px 7px 0}.opportunity p{font-size:12px}.op-values{display:flex;justify-content:space-between;margin:20px 0;font-size:13px}.op-values strong{font-size:25px;color:var(--green);display:block}.op-values small{font-size:10px;color:var(--muted)}details summary{font-size:12px;cursor:pointer;color:var(--green);padding-top:10px}details p{color:var(--muted)}.cta{background:#e9f4e9;border-radius:18px;padding:30px 35px;display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:30px}.cta h2{font-size:23px;margin:0 0 12px}.cta p{font-size:13px;max-width:620px;margin:0;color:var(--muted)}.admin-header{display:flex;justify-content:space-between;gap:15px;align-items:center}.admin-tabs{display:flex;gap:10px;margin:22px 0;flex-wrap:wrap}.admin-tabs button{border:1px solid var(--line);background:white;border-radius:9px;padding:12px 18px;font-size:13px}.admin-tabs .active{background:var(--dark);color:white}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th,td{padding:15px 10px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--muted);font-weight:500}td select{min-width:150px}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;background:var(--pale);padding:15px;border-radius:8px;max-height:450px;overflow:auto}.catalog-item{padding:18px;border:1px solid var(--line);border-radius:12px;margin:15px 0}.catalog-item .form-grid{gap:15px}.catalog-item textarea{min-height:80px}.filter{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin:22px 0}.filter input{max-width:180px}dialog{border:1px solid var(--line);border-radius:18px;max-width:740px;width:calc(100% - 30px);padding:30px;max-height:88vh}dialog::backdrop{background:#153d2dc0;backdrop-filter:blur(4px)}.dialog-top{display:flex;justify-content:space-between;gap:15px;align-items:center}.dialog-top h2{font-size:23px;margin-top:0}.close{border:0;background:var(--pale);border-radius:50%;width:32px;height:32px}.consent-box{max-height:160px;overflow:auto;font-size:12px;white-space:pre-wrap;background:var(--pale);padding:15px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--dark);color:white;padding:14px 22px;border-radius:12px;font-size:13px;box-shadow:var(--shadow);display:none;z-index:10}.success-mark{font-size:50px;color:var(--green)}@media(max-width:900px){.hero{gap:30px}.header-label{display:none}.private{margin-left:auto}.hero-art{padding:20px;min-height:360px}.hero{padding-top:15px}h1{letter-spacing:-1.8px}.results-grid{grid-template-columns:1fr}.dashboard-head{flex-direction:column}.hero-actions{flex-direction:column;align-items:flex-start}.cta{align-items:flex-start;flex-direction:column}.metric{padding:20px}.metric strong{font-size:29px}}@media(max-width:640px){.header{height:80px;padding:0 18px;gap:10px}.brand{width:180px;height:60px}.brand img{width:200px;top:-28px;left:-10px}.private{font-size:10px;padding:8px 10px}main{padding:26px 20px 45px}.hero{grid-template-columns:1fr;gap:35px;padding-bottom:35px}.hero h1{font-size:45px}.hero-art{min-height:330px}.lead{font-size:15px}.hero-actions{gap:15px}.hero-actions .btn{width:100%}.assurance{gap:14px}.steps-overview{grid-template-columns:1fr;gap:23px}footer{flex-wrap:wrap;gap:12px;padding:20px}footer span:nth-child(2){display:none}.card{padding:22px}.form-grid,.options,.opportunities{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.options{gap:10px}.option{min-height:60px;padding:14px}.process-head{gap:15px}.process-num{font-size:38px}h2{font-size:26px}.live-total{flex-wrap:wrap}.live-total small{margin-left:0;max-width:100%}.nav{gap:10px}.nav .btn{font-size:12px;padding:14px}.metrics{grid-template-columns:1fr;gap:10px}.metric{padding:20px}.metric strong{font-size:34px}.dashboard-head h1{font-size:36px;letter-spacing:-1.5px}.tabs{width:100%;justify-content:space-between}.tabs button{padding:10px}.review-row{flex-wrap:wrap}.review-row strong{font-size:11px}.review-row button{margin-left:0}.cta{padding:25px}.cta .btn{width:100%}.slider-top label{max-width:65%}.admin-header{align-items:flex-start}.admin-header h1{font-size:34px}dialog{padding:20px}.header .brand{flex-shrink:1}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.brand.custom img{width:100%;height:100%;object-fit:contain;top:0;left:0;padding:10px 0}
.hero-actions{flex-wrap:wrap}
/* Questionnaire v2: give the question, help and answer list a clear reading order. */
.optional{font-size:10px;font-weight:400;color:var(--muted);margin-left:5px}
.field-help{font-size:12px;font-weight:400;line-height:1.65;color:#64746a;margin:8px 0 0}
.company-divider{border-top:1px solid var(--line);padding-top:22px}
.contact-consent{border:1px solid var(--line);background:var(--pale);border-radius:10px;padding:16px}
.contact-consent summary{padding:0;color:var(--ink)}
.contact-consent[hidden]{display:none}
.block-intro{font-size:12px;color:var(--muted);margin:0 0 20px;line-height:1.6}
.process-head{align-items:flex-start;gap:19px}
.process-num{font-size:17px;line-height:1;background:#eaf4ec;color:#568168;border-radius:10px;padding:12px 10px;margin-top:0}
.question-title{font-size:clamp(26px,3vw,34px);line-height:1.27;letter-spacing:-.8px;margin:12px 0!important;max-width:760px}
.question-help{font-size:14px;color:#65766c;line-height:1.75;margin:0;max-width:720px}
.options.question-options{grid-template-columns:1fr;margin-top:27px}
.question-options .option{min-height:57px;padding:15px 19px;gap:14px;line-height:1.55;font-size:14px;box-shadow:0 1px 2px #143b2d03}
.question-options .option:hover{border-color:#83bd98;background:#f7fbf7}
.question-options .option.selected{border-color:var(--green);background:#f0f9f2;color:#154c30}
.skip-feedback{font-size:12px;color:#4f755c;background:var(--pale);border-radius:8px;padding:12px 16px;margin-bottom:0}
.quantity-label{font-size:17px;line-height:1.55;font-weight:600;letter-spacing:-.2px;margin-bottom:8px;max-width:680px}
.quantity-control{display:flex;align-items:center;gap:12px;margin-top:15px}
.quantity-control input{max-width:130px;font-size:23px;font-weight:600;text-align:center;padding:10px!important}
.quantity-unit{font-size:12px;color:var(--muted)}
.quantities-card .slider-row{padding:25px 0 8px;margin:0;border-top:1px solid var(--line)}
.quantities-card .range{margin-top:23px}
.current-method{display:flex;flex-direction:column;gap:6px;padding:0 0 21px;font-size:13px}
.current-method span{font-size:11px;color:var(--muted)}
.current-method strong{font-weight:500}
.frequency{display:flex;gap:20px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:20px 0}
.frequency label{font-size:12px;font-weight:400;margin:0;color:var(--muted)}
.frequency select{max-width:180px;min-height:40px;font-size:12px}
.conversion-help{margin-top:12px}.conversion-help summary{font-size:11px;color:var(--muted)}
.safeguard{border-left:2px solid #a2cdb1;padding-left:10px;margin-bottom:22px}
.multi-help{font-size:12px;color:#4d735b;line-height:1.7;margin:11px 0 0}
.question-options .option input[type=checkbox]{width:18px;height:18px;margin:0;flex-shrink:0;accent-color:var(--green)}
.question-options .option{margin-bottom:0;cursor:pointer;font-weight:400}
.selected-methods{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}
.selected-methods span{background:var(--pale);border:1px solid var(--line);border-radius:7px;padding:8px 11px;font-size:11px;line-height:1.5}
.flow-options{border:0;margin:0;padding:0;display:grid;gap:12px}
.flow-options .option{font-weight:400;cursor:pointer;line-height:1.7}
.flow-options input[type=radio]{accent-color:var(--green);width:18px;min-width:18px;max-width:18px;height:18px;min-height:18px;padding:0;margin:0;flex:0 0 18px}
.flow-options .option span{min-width:0;flex:1;overflow-wrap:anywhere}
.flow-options .option:has(input:checked){border-color:var(--green);background:#f0f9f2}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.work-group{border:1px solid var(--line);border-radius:12px;padding:20px;margin:20px 0;background:#fcfefb}
.group-top{display:flex;justify-content:space-between;align-items:center;gap:15px}.group-top h3{margin:0}
.group-methods{border:0;border-bottom:1px solid var(--line);padding:14px 0 19px;margin:14px 0}
.group-methods legend{font-size:12px;color:var(--muted)}
.work-group .quantity-label{font-size:14px}.work-group .slider-row{padding:20px 0 8px}
.extra-context{margin:22px 0}.extra-context label{margin-top:18px}.extra-context textarea{min-height:85px}
.extra-context summary,.group-summary summary{padding:0;font-size:12px}
.uncertain-note{color:#8a6d2e;background:#fff8e9;padding:9px 11px;border-radius:7px}
.group-summary{margin:12px 0}.review-row .group-summary{font-weight:400}
.answer-summary{border-bottom:1px solid var(--line);padding:15px 0}.answer-summary h3{margin:0 0 8px;font-size:15px}
@media(max-width:640px){.work-group{padding:15px}.selected-methods{gap:6px}.flow-options .option{font-size:13px;padding:14px}.multi-help{font-size:12px}}
@media(max-width:640px){.process-head{gap:12px}.process-num{padding:10px 8px;font-size:14px}.question-title{font-size:25px;letter-spacing:-.6px}.question-help{font-size:13px}.question-options .option{font-size:13px;padding:13px 14px;min-height:56px}.quantity-label{font-size:16px}.frequency{align-items:flex-start;flex-direction:column;gap:10px}.frequency select{max-width:100%}.company-card{padding:22px}.quantity-control input{font-size:21px}}
