
:root{--green:#008a2e;--green-dark:#00691f;--green-soft:#e8f5ec;--teal:#16a3b8;--ink:#1d2b24;--muted:#5b6b62;--line:#dbe4de;--bg:#f4f6f3;--gold:#f0ad1e;--danger:#b3261e;--danger-soft:#fdecea;--rainbow:linear-gradient(90deg,#14a04a 0%,#2a6f8f 28%,#5521b5 55%,#a0208f 78%,#ec1a5e 100%)}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Open Sans","Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.55}
button,input,textarea,select{font:inherit;color:inherit}button{touch-action:manipulation}
.hidden{display:none!important}
.topnav{position:relative;z-index:5;display:flex;align-items:center;justify-content:flex-end;gap:14px;min-height:52px;padding:6px 24px 6px 170px;background:#fff}
.logo{position:absolute;left:18px;top:6px;width:118px;height:118px;border-radius:16px;box-shadow:0 4px 16px rgba(0,0,0,.28)}
.nav-title{margin-right:auto;font-weight:600;color:var(--green)}
.language-box{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--muted)}
.language-box label{display:flex;gap:6px;align-items:center}.language-box label span[aria-hidden]{display:none}
.language-box select{border:1px solid var(--line);border-radius:6px;padding:6px 10px;background:#fff}
.rainbow{height:24px;background:var(--rainbow)}
.hero{position:relative;display:flex;align-items:flex-end;min-height:min(62vh,540px);padding:150px 24px 96px;background:#3f6f8f url("hero.jpg") right 62%/cover no-repeat}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,35,30,.62) 0%,rgba(10,35,30,.32) 45%,rgba(10,35,30,0) 72%)}
.hero-inner{position:relative;width:min(1040px,100%);margin:0 auto;color:#fff}
.brand-title{margin:0;font-family:"Open Sans Condensed","Arial Narrow","Segoe UI",Arial,sans-serif;font-weight:700;max-width:580px;font-size:clamp(38px,5.2vw,62px);line-height:1.02;letter-spacing:-.01em;text-transform:uppercase;text-shadow:0 2px 14px rgba(0,0,0,.45)}
.brand-subtitle{max-width:52ch;margin:12px 0 0;font-size:18px;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.reference-card{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px}
.reference-label{display:none}.reference-value:empty,.reference-products:empty{display:none}
.reference-value{padding:3px 10px;background:var(--teal);font-weight:700;font-size:17px}
.reference-products{padding:3px 10px;background:var(--green);font-weight:600;font-size:15px;max-width:100%;overflow-wrap:anywhere}
.hero-cta{display:inline-flex;align-items:center;gap:12px;margin-top:24px;padding:11px 20px;border:2px solid var(--green);border-radius:9px;background:#fff;color:var(--green);font-weight:600;text-decoration:none}
.hero-cta:hover{background:var(--green-soft)}.hero-cta svg{width:20px;height:20px}
.shell{position:relative;width:min(1040px,calc(100% - 32px));margin:-56px auto 0}
.survey-card{background:#fff;border-radius:12px;box-shadow:0 10px 34px rgba(20,45,30,.16);scroll-margin-top:12px}
.progress-wrap{position:sticky;top:0;z-index:4;padding:12px 32px;background:#fff;border-bottom:1px solid var(--line);border-radius:12px 12px 0 0}
.progress-meta{display:flex;justify-content:space-between;font-size:13px;font-weight:600;color:var(--muted);margin-bottom:6px}
.progress-track{height:6px;border-radius:9px;background:#e6ece8;overflow:hidden}.progress-bar{height:100%;width:0;background:var(--rainbow);background-size:1040px 100%;transition:width .25s}
.form-panel{padding:28px 32px 32px}
.intro{margin-bottom:22px}.welcome-title{margin:0 0 6px;font-size:24px;font-weight:700;color:var(--green-dark)}.welcome-text{margin:0;max-width:70ch;color:var(--muted)}
.form-heading{display:none}
.loading-card{display:flex;align-items:center;gap:12px;padding:30px 0;color:var(--muted)}
.spinner{width:22px;height:22px;border:3px solid var(--line);border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.message{padding:12px 15px;border-radius:8px;margin-bottom:16px;font-size:15px}.message.error{background:var(--danger-soft);color:#7d1b14;border-inline-start:4px solid var(--danger)}
.message.attention{display:flex;gap:10px;background:#fff7e6;color:#6b4a00;border-inline-start:4px solid var(--gold)}
.question{padding:20px 0;border-top:1px solid var(--line);scroll-margin-top:70px}
.rating-question{border-top:0;padding-top:4px}
.question.invalid .question-title,.question.error .question-title{color:var(--danger)}
.question{position:relative;padding-inline-start:44px}
.question-number{position:absolute;inset-inline-start:0;top:20px;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--green-soft);color:var(--green-dark);font-size:14px;font-weight:700}
.rating-question .question-number{top:4px}
.question-title{font-weight:600;font-size:17px;line-height:1.4}.required{color:var(--danger)}
.help{margin-top:2px;font-size:14px;color:var(--muted)}
.stars{display:flex;gap:6px;margin-top:8px;direction:ltr}
.star{border:0;background:none;padding:0 2px;font-size:44px;line-height:1;color:#ccd5cf;cursor:pointer;transition:transform .1s,color .1s}.star:hover{transform:scale(1.08)}.star.active{color:var(--gold)}
.star:focus-visible{outline:2px solid var(--green);outline-offset:2px;border-radius:4px}
.rating-labels{display:flex;justify-content:space-between;max-width:280px;font-size:13px;color:var(--muted)}
.choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin-top:10px}
.choice{display:flex;gap:10px;align-items:center;padding:10px 13px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;transition:border-color .12s,background .12s}
.choice:hover{border-color:var(--green)}.choice:has(input:checked){border-color:var(--green);background:var(--green-soft);font-weight:600}
.choice input{width:18px;height:18px;margin:0;accent-color:var(--green);flex:none}
input[type=text],input[type=email],textarea,select{width:100%;border:1px solid #c6d2ca;border-radius:8px;padding:10px 12px;background:#fff}textarea{min-height:110px;resize:vertical;margin-top:10px}.question>.question-body>input,.question>.question-body>select{margin-top:10px}
input:focus,textarea:focus,select:focus{outline:2px solid var(--green);outline-offset:0;border-color:var(--green)}
.extra-text{margin-top:9px;min-height:84px}
.scale{display:grid;grid-template-columns:repeat(11,minmax(30px,1fr));gap:5px;margin-top:10px;direction:ltr}
.scale label{position:relative;padding:9px 0;border:1px solid var(--line);border-radius:7px;text-align:center;font-weight:600;cursor:pointer}.scale label:hover{border-color:var(--green)}.scale label:has(input:checked){background:var(--green);border-color:var(--green);color:#fff}.scale input{position:absolute;opacity:0;inset:0}
.scale-labels{display:flex;justify-content:space-between;margin-top:4px;font-size:13px;color:var(--muted)}
.question.followup{padding:14px 0 0;margin-top:14px;border-top:1px dashed var(--line);padding-inline-start:0}.question.followup>.question-number{display:none}.question.followup .choices{grid-template-columns:1fr}
.comment-grid{display:block}
.consent{display:flex;gap:10px;align-items:flex-start;margin-top:8px;cursor:pointer}.consent input{width:18px;height:18px;margin-top:3px;accent-color:var(--green);flex:none}
.privacy{display:flex;gap:8px;align-items:flex-start;padding:12px 14px;margin-top:6px;border-radius:8px;background:var(--bg);font-size:14px;color:var(--muted)}.privacy-icon svg{width:20px;height:20px;fill:none;stroke:var(--green);stroke-width:2;flex:none}
.actions{display:flex;justify-content:flex-end;margin-top:18px}
.button.primary{display:inline-flex;align-items:center;gap:10px;padding:12px 26px;border:2px solid var(--green);border-radius:9px;background:var(--green);color:#fff;font-weight:700;cursor:pointer}.button.primary:hover{background:var(--green-dark);border-color:var(--green-dark)}.button.primary:disabled{opacity:.6;cursor:wait}
.success{padding:44px 16px;text-align:center}.success-icon{width:68px;height:68px;margin:0 auto 14px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff;font-size:34px}.success h2{margin:0 0 6px;color:var(--green-dark)}.success p{margin:0;color:var(--muted)}
.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:20px 32px;background:#fafbf9;border-top:1px solid var(--line);border-radius:0 0 12px 12px}
.benefit{display:flex;gap:10px}.benefit-icon svg{width:24px;height:24px;fill:none;stroke:var(--green);stroke-width:2;flex:none}.benefit strong{display:block;font-size:14.5px}.benefit span{display:block;font-size:13.5px;color:var(--muted)}
.footer-note{margin:0;padding:22px 16px 28px;text-align:center;font-size:13px;color:var(--muted)}
.footbar{height:6px;background:var(--rainbow)}
[dir=rtl] .topnav{padding:6px 170px 6px 24px}[dir=rtl] .logo{left:auto;right:18px}[dir=rtl] .nav-title{margin-right:0;margin-left:auto}[dir=rtl] .hero::before{transform:scaleX(-1)}[dir=rtl] .hero-cta svg{transform:scaleX(-1)}[dir=rtl] .scale,[dir=rtl] .scale-labels{direction:ltr}[dir=rtl] input,[dir=rtl] textarea,[dir=rtl] select{text-align:right}
body{overflow-x:clip}.stars{flex-wrap:wrap}
@media(max-width:680px){.topnav{padding:6px 14px 6px 92px}.logo{left:8px;top:6px;width:70px;height:70px;border-radius:12px}.nav-title{display:none}.language-box label{display:none}.rainbow{height:14px}.hero{min-height:0;padding:64px 16px 76px;background-position:70% 50%}.hero::before{background:linear-gradient(180deg,rgba(10,35,30,.5),rgba(10,35,30,.35))}.brand-title{font-size:33px}.brand-subtitle{font-size:16px}.shell{width:calc(100% - 16px)}.form-panel{padding:18px 16px 22px}.progress-wrap{padding:10px 16px}.benefits{grid-template-columns:1fr;padding:16px}.question{padding-inline-start:0}.question-number{position:static;margin-bottom:6px}.star{font-size:38px}.choices{grid-template-columns:1fr}.scale{grid-template-columns:repeat(6,1fr)}.button.primary{width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation-duration:.01s!important}}

.reference{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0;color:#fff;font-size:15px}
.reference strong{padding:3px 10px;background:var(--teal);font-size:17px}
.reference span,.reference small{padding:3px 10px;background:var(--green);font-weight:600}
.progress{position:sticky;top:0;z-index:4;height:6px;margin:0;background:#e6ece8;border-radius:12px 12px 0 0;overflow:hidden}
.progress span{display:block;height:100%;width:0;background:var(--rainbow);background-size:1040px 100%;transition:width .25s}
.message.info{display:flex;gap:10px;padding:18px 0;color:var(--muted);background:none}
.card-inner{padding:24px 32px 30px}
.question.followup{padding-inline-start:0}
.footer-note a{color:var(--green)}
@media(max-width:680px){.card-inner{padding:16px}}
.question{padding-inline-start:0}.question-number{display:none}
