:root{--brand:#0f5c54;--brand-2:#13786d;--ink:#1e2329;--muted:#5d6670;--line:#dfe4e8;--bg:#f6f8f9;--ok:#1d7a3e;--okbg:#e8f6ed;--bad:#b42318;--badbg:#fdecea;--warn:#8a5a00;--warnbg:#fff6dc;--info:#1f4e8c;--infobg:#eaf1fb;--r:12px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{color:var(--ink);background:#fff;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:17px;line-height:1.6}a{color:var(--brand-2)}img{max-width:100%}.wrap{max-width:980px;margin:0 auto;padding:0 20px}.narrow{max-width:720px}.topbar{background:var(--warnbg);color:#5c4100;border-bottom:1px solid #f0dca0;padding:8px 0;font-size:14px}.topbar a{color:#5c4100;font-weight:600}header.site{border-bottom:1px solid var(--line);z-index:10;background:#fff;position:sticky;top:0}header.site .wrap{justify-content:space-between;align-items:center;gap:12px;height:62px;display:flex}.logo{color:var(--ink);letter-spacing:-.3px;align-items:center;gap:8px;font-size:20px;font-weight:800;text-decoration:none;display:flex}.logo .mark{background:var(--brand);color:#fff;border-radius:8px;place-items:center;width:30px;height:30px;font-size:17px;display:grid}nav.main{gap:18px;font-size:15px;display:flex}nav.main a{color:var(--ink);text-decoration:none}nav.main a:hover{color:var(--brand-2)}@media (max-width:640px){nav.main .hide-sm{display:none}}.btn{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:13px 22px;font-size:17px;font-weight:700;line-height:1.2;text-decoration:none;display:inline-block}.btn:hover{background:var(--brand-2)}.btn.secondary{color:var(--brand);border:2px solid var(--brand);background:#fff}.btn.small{padding:9px 14px;font-size:15px}.btn[disabled]{opacity:.5;cursor:not-allowed}.hero{background:linear-gradient(#eef6f5,#fff);padding:56px 0 40px}.hero h1{letter-spacing:-.8px;margin:0 0 14px;font-size:clamp(30px,5vw,46px);line-height:1.12}.hero p.lead{color:var(--muted);max-width:640px;margin:0 0 24px;font-size:20px}.ticks{color:var(--muted);flex-wrap:wrap;gap:10px 22px;margin:22px 0 0;padding:0;font-size:15px;list-style:none;display:flex}.ticks li:before{content:"✓ ";color:var(--ok);font-weight:800}section.block{padding:44px 0}section.block.alt{background:var(--bg)}h2{letter-spacing:-.4px;margin:0 0 14px;font-size:28px;line-height:1.2}h3{margin:22px 0 6px;font-size:19px}.grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.card{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:20px}.card h3{margin-top:0}.price{font-size:34px;font-weight:800}.muted{color:var(--muted)}.small{font-size:14px}.notice{border-radius:var(--r);border:1px solid;margin:16px 0;padding:14px 16px}.notice.warn{background:var(--warnbg);border-color:#f0dca0}.notice.info{background:var(--infobg);border-color:#c9daf2}footer.site{border-top:1px solid var(--line);background:var(--bg);color:var(--muted);margin-top:40px;padding:30px 0 40px;font-size:14px}footer.site .cols{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;display:grid}footer.site a{color:var(--muted)}footer.site ul{margin:6px 0;padding:0;list-style:none}.step{border:1px solid var(--line);border-radius:var(--r);background:#fff;margin:0 0 18px;padding:20px}.step h2{margin:0 0 4px;font-size:20px}.field{margin:16px 0}.field label.q{margin-bottom:4px;font-weight:650;display:block}.field .hint{color:var(--muted);margin-bottom:8px;font-size:14px;display:block}.opts{flex-wrap:wrap;gap:8px;display:flex}.opt{position:relative}.opt input{opacity:0;cursor:pointer;position:absolute;inset:0}.opt span{border:1.5px solid var(--line);background:#fff;border-radius:10px;padding:9px 14px;font-size:15px;display:block}.opt input:checked+span{border-color:var(--brand);background:#e6f2f0;font-weight:650}.opt input:focus-visible+span{outline:3px solid #9cd3cb}input[type=date],input[type=number],input[type=text],textarea{font:inherit;border:1.5px solid var(--line);background:#fff;border-radius:10px;width:100%;max-width:340px;padding:10px 12px}textarea{max-width:100%;min-height:80px}input:focus,textarea:focus{border-color:var(--brand);outline:3px solid #9cd3cb}.row{flex-wrap:wrap;gap:14px;display:flex}.row .field{flex:200px}.progress{background:var(--line);border-radius:6px;height:6px;margin:6px 0 20px;overflow:hidden}.progress div{background:var(--brand);height:100%;transition:width .3s}.nav-btns{justify-content:space-between;gap:10px;margin-top:10px;display:flex}.verdict{border-radius:var(--r);border:2px solid;margin:0 0 18px;padding:22px}.verdict h2{margin:0 0 6px;font-size:26px}.verdict.likely_valid{background:var(--okbg);border-color:#9fd5b2}.verdict.likely_invalid{background:var(--badbg);border-color:#f3b3ac}.verdict.unsure,.verdict.out_of_scope{background:var(--warnbg);border-color:#f0dca0}.finding{border-bottom:1px solid var(--line);gap:12px;padding:14px 0;display:flex}.finding:last-child{border-bottom:0}.badge{letter-spacing:.4px;border-radius:6px;flex:none;height:fit-content;margin-top:3px;padding:3px 8px;font-size:12px;font-weight:800}.badge.fail{background:var(--badbg);color:var(--bad)}.badge.warn{background:var(--warnbg);color:var(--warn)}.badge.ok{background:var(--okbg);color:var(--ok)}.badge.info{background:var(--infobg);color:var(--info)}.finding p{color:var(--muted);margin:2px 0 0;font-size:15px}.finding a{font-size:13px}.dates{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:14px 0;display:grid}.dates div{background:var(--bg);border-radius:10px;padding:12px}.dates b{font-size:18px;display:block}article.guide h1{letter-spacing:-.6px;margin:30px 0 10px;font-size:clamp(28px,4.5vw,40px);line-height:1.15}article.guide h2{margin-top:34px;font-size:24px}article.guide li{margin:6px 0}.sources{background:var(--bg);border-radius:var(--r);margin-top:30px;padding:14px 18px;font-size:14px}.sources ul{margin:6px 0;padding-left:18px}.cta-box{border-radius:var(--r);background:#eef6f5;border:1px solid #c7e3df;margin:28px 0;padding:20px}.cta-box h3{margin-top:0}table.simple{border-collapse:collapse;width:100%;font-size:15px}table.simple th,table.simple td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 10px}table.simple th{background:var(--bg)}details{border:1px solid var(--line);background:#fff;border-radius:10px;margin:10px 0;padding:12px 16px}details summary{cursor:pointer;font-weight:650}nav.main a.btn{color:#fff}@media (max-width:640px){.logo{white-space:nowrap;font-size:16px}.logo .mark{width:26px;height:26px}nav.main .btn.small{white-space:nowrap;padding:8px 10px;font-size:14px}}
