:root{
  --petrol:#0e2a2c;--green:#5fa35a;--green-dark:#477f43;--green-soft:#e7f1e4;
  --ink:#1e2426;--anthracite:#2f3335;--muted:#5f686e;--line:#dcdedb;--grey:#e8e8e4;
  --off:#f7f5ef;--white:#ffffff;--amber:#fff3d1;--err-bg:#fbe9e6;--err:#8a3326;
  --font:"Helvetica Neue",Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--off);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.55}
a{color:var(--green-dark)}a:hover{color:var(--petrol)}
.wrap{max-width:880px;margin:0 auto;padding-left:max(16px,4vw);padding-right:max(16px,4vw)}
.topbar{background:var(--petrol);color:var(--white)}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-block:18px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--white)}
.brand-mark{width:40px;height:27px;flex:none}
.brand-text{display:flex;flex-direction:column;gap:2px}
.brand b{font-size:14px;letter-spacing:.16em}
.brand-text>span{font-size:12px;color:#cfe3cc;letter-spacing:.04em}
.claim{font-size:13px;color:#cfe3cc}
.testbar{background:var(--amber);color:var(--anthracite);font-size:14px;text-align:center;padding:10px 16px}
.hero{padding-block:56px 24px}
.hero .wrap{display:flex;flex-direction:column;gap:20px}
.eyebrow{font-size:13px;font-weight:700;letter-spacing:.14em;color:var(--green-dark);text-transform:uppercase}
h1{margin:0;font-size:44px;line-height:1.12;color:var(--petrol);text-wrap:balance}
.lead{margin:0;font-size:19px;color:var(--anthracite);max-width:680px}
.hero p{margin:0;max-width:680px;color:var(--anthracite)}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none}
.chips li{padding:8px 14px;border-radius:999px;background:var(--white);border:1px solid var(--line);font-size:14px}
.code{font-size:14px;color:var(--muted)}
.code strong{color:var(--petrol)}
.progress{position:sticky;top:0;z-index:5;background:var(--off);border-bottom:1px solid var(--line)}
.progress .wrap{display:flex;align-items:center;gap:16px;padding-block:12px}
.bar{flex:1 1 auto;height:8px;border-radius:99px;background:var(--grey);overflow:hidden}
.bar i{display:block;height:8px;width:0;background:var(--green);transition:width .25s}
.count{font-size:14px;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--anthracite)}
main{padding-block:32px 72px}
main .wrap{display:flex;flex-direction:column;gap:28px}
.card{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:32px}
.card h2{margin:0;font-size:26px;color:var(--petrol)}
.card-head{display:flex;flex-direction:column;gap:4px}
fieldset{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;min-width:0}
legend{padding:0;display:flex;gap:12px;align-items:baseline;width:100%}
.qnum{flex:0 0 auto;font-size:15px;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}
.qtext{display:flex;flex-direction:column;gap:4px;min-width:0}
.qtext b{font-size:19px;line-height:1.35}
.qtext small{font-size:14px;color:var(--muted)}
.opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.opt{display:block;width:100%;text-align:left;min-height:48px;padding:12px 16px;border-radius:10px;border:1.5px solid var(--line);background:var(--white);color:var(--ink);font:inherit;font-size:16px;line-height:1.35;cursor:pointer}
.opt:hover{border-color:var(--green)}
.opt[aria-pressed="true"]{border-color:var(--green-dark);background:var(--green-soft);font-weight:600}
.stars{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}
.star{width:48px;height:48px;border-radius:10px;border:1.5px solid var(--line);background:var(--white);font:inherit;font-weight:600;font-size:18px;color:var(--ink);cursor:pointer}
.star[aria-pressed="true"]{background:var(--petrol);border-color:var(--petrol);color:var(--white)}
.hint{font-size:14px;color:var(--muted)}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-size:15px;font-weight:600}
.fld{width:100%;min-height:48px;padding:12px 14px;border-radius:10px;border:1.5px solid var(--line);background:var(--white);font:inherit;font-size:16px;color:var(--ink)}
textarea.fld{min-height:96px;resize:vertical}
.check{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.5;cursor:pointer}
.check input{width:22px;height:22px;margin-top:1px;flex:0 0 auto;accent-color:var(--green-dark)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.alert{padding:12px 16px;border-radius:10px;background:var(--err-bg);color:var(--err);font-size:15px}
.actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.cta{min-height:52px;padding:14px 28px;border-radius:10px;border:0;background:var(--green-dark);color:var(--white);font:inherit;font-size:17px;font-weight:700;cursor:pointer}
.cta:hover{background:var(--petrol)}
.cta[disabled]{opacity:.6;cursor:wait}
.opt:focus-visible,.star:focus-visible,.cta:focus-visible,.fld:focus-visible,.check input:focus-visible,a:focus-visible{outline:3px solid var(--green);outline-offset:2px}
.thanks{padding-block:96px}
.thanks .card{max-width:680px;margin:0 auto;gap:16px}
.thanks p{margin:0}
footer{border-top:1px solid var(--line);padding-block:24px 40px;font-size:14px;color:var(--muted)}
footer .wrap{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between}
footer nav{display:flex;gap:20px}
.legal{padding-block:48px 72px}
.legal .wrap{display:flex;flex-direction:column;gap:14px;max-width:760px}
.legal h1{font-size:36px}
.legal h2{font-size:20px;margin:18px 0 0;color:var(--petrol)}
.legal p,.legal ul{margin:0;color:var(--anthracite)}
.legal ul{padding-left:20px}
@media (max-width:640px){
  h1{font-size:32px}
  .opts,.grid2{grid-template-columns:minmax(0,1fr)}
  .card{padding:22px}
}
@media (prefers-reduced-motion:reduce){.bar i{transition:none}}
