:root{--bg:#ffffff;--ink:#0d0d0f;--muted:#6b6b73;--faint:#ececef;--line:#dcdce1;--accent:#2a3dff;--accent-soft:#eef0ff;
--sans:"Inter Tight","Helvetica Neue",Arial,sans-serif;--mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;color-scheme:light}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.55 var(--sans);-webkit-font-smoothing:antialiased}
a{color:var(--ink)}
.wrap{max-width:1100px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.bar{position:fixed;top:0;left:0;right:0;height:3px;background:var(--faint);z-index:30}
.bar i{display:block;height:100%;width:3%;background:var(--accent);transition:width .45s cubic-bezier(.2,.8,.2,1)}
.top{padding-top:3px}
.top .wrap{display:flex;justify-content:space-between;align-items:center;padding-block:22px}
.word{font:700 21px/1 var(--sans);letter-spacing:-.04em;text-decoration:none;color:var(--ink)}
.word b{color:var(--accent)}
.count{font:500 13px/1 var(--mono);color:var(--muted);letter-spacing:.04em}
.stage{min-height:calc(100vh - 230px);display:flex;align-items:center;padding:30px 0 60px}
.stage .wrap{width:100%}
.inner{max-width:720px}
.kicker{font:500 13px/1 var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--accent);display:flex;gap:10px;align-items:center;margin-bottom:22px}
.kicker::before{content:"";width:28px;height:1px;background:var(--accent)}
.intro{font:600 clamp(18px,2.2vw,20px)/1.4 var(--sans);color:var(--muted);margin:0 0 14px;letter-spacing:-.01em}
.qz-step{border:0;margin:0;padding:0;min-width:0;animation:rise .35s ease both}
@keyframes rise{from{opacity:0;transform:translateY(14px)}}
.qz-q{font:600 clamp(34px,5.4vw,60px)/1.03 var(--sans);letter-spacing:-.045em;padding:0;text-wrap:balance}
.qz-help{color:var(--muted);font-size:17px;margin:14px 0 0;max-width:52ch}
.qz-choices{margin-top:34px;display:grid;gap:10px;max-width:560px}
.qz-choices.two{grid-template-columns:1fr 1fr}
.qz-choices.four{grid-template-columns:repeat(4,1fr);max-width:480px}
.qz-choice{display:flex;align-items:center;gap:14px;background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:15px 16px;font:500 18px/1.3 var(--sans);color:var(--ink);text-align:left;cursor:pointer;transition:all .12s}
.qz-choice kbd{flex:none;width:26px;height:26px;border:1.5px solid var(--line);border-radius:6px;display:grid;place-items:center;font:500 12px var(--mono);color:var(--muted);background:#fff}
.qz-choice:hover{border-color:var(--ink)}
.qz-choice.on,.qz-choice:active{background:var(--ink);border-color:var(--ink);color:#fff}
.qz-choice.on kbd{background:var(--accent);border-color:var(--accent);color:#fff}
.qz-choice small{display:block;font-size:14px;color:var(--muted)}
.qz-choice.on small{color:#c9c9d1}
.qz-field{display:flex;flex-direction:column;gap:6px;margin-top:30px;min-width:0;max-width:560px}
.qz-field label{font:500 12px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.qz-field input{border:0;border-bottom:2px solid var(--line);padding:10px 0;font:500 clamp(26px,3.6vw,36px)/1.2 var(--sans);letter-spacing:-.02em;color:var(--ink);background:transparent;width:100%;border-radius:0}
.qz-field input:focus{outline:none;border-color:var(--accent)}
.qz-field input::placeholder{color:#c4c4cc}
.qz-row,.qz-dob{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:560px}
.qz-row .qz-field,.qz-dob .qz-field{margin-top:30px}
.qz-dob{grid-template-columns:1fr 1fr 1.6fr;max-width:420px}
.qz-next{margin-top:30px;display:inline-flex;align-items:center;gap:10px;background:var(--accent);color:#fff;border:0;border-radius:10px;padding:16px 26px;font:600 17px var(--sans);cursor:pointer}
.qz-next::after{content:"↵";font-family:var(--mono);opacity:.7}
.qz-next:hover{background:#1427d6}
.qz-err{color:#d12a2a;font-size:15px;margin:12px 0 0;min-height:1em}
.qz-consent{font-size:12px;line-height:1.55;color:var(--muted);margin:22px 0 0;max-width:620px}
.qz-safe{font:500 12px var(--mono);color:var(--muted);margin:14px 0 0}
.back{background:none;border:0;padding:0;margin-bottom:26px;font:500 13px var(--mono);color:var(--muted);cursor:pointer;visibility:hidden}
.back:hover{color:var(--ink)}
@media (max-width:520px){.qz-choices.two{grid-template-columns:1fr}.qz-choices.four{grid-template-columns:repeat(4,1fr)}.qz-row{grid-template-columns:1fr;gap:0}}
/* logos */
.strip{border-top:1px solid var(--faint);padding:26px 0}
.strip p{font:500 12px var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0 0 16px}
.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.track{display:flex;align-items:center;gap:56px;width:max-content;animation:slide 50s linear infinite}
@keyframes slide{to{transform:translateX(-50%)}}
.logo{flex:none;height:34px;display:flex;align-items:center}
.logo img{max-height:34px;max-width:140px;object-fit:contain;filter:grayscale(1);opacity:.6;transition:filter .2s,opacity .2s}
.logo img:hover{filter:none;opacity:1}
@media (prefers-reduced-motion:reduce){.track{animation:none}.qz-step{animation:none}}
.how{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;border-top:1px solid var(--faint);padding:40px 0}
.how div{min-width:0}
.how b{font:500 12px var(--mono);color:var(--accent);letter-spacing:.1em}
.how h3{font:600 20px/1.25 var(--sans);letter-spacing:-.02em;margin:10px 0 6px}
.how p{margin:0;color:var(--muted);font-size:15.5px}
@media (max-width:700px){.how{grid-template-columns:1fr}}
footer{border-top:1px solid var(--faint);padding:30px 0 40px;color:var(--muted);font-size:12.5px;line-height:1.6}
footer nav{display:flex;flex-wrap:wrap;gap:8px 20px;margin-bottom:16px;font:500 12px var(--mono)}
footer nav a{color:var(--ink);text-decoration:none}
footer p{margin:0 0 10px;max-width:120ch}
.ph{background:#fff2a8;color:#3a3000;padding:0 3px}
.page{padding:50px 0 80px}
.legal{max-width:720px}
.legal .eyebrow{font:500 12px var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--accent)}
.legal h1{font:600 48px/1.05 var(--sans);letter-spacing:-.04em;margin:12px 0 18px}
.legal h2{font:600 24px/1.2 var(--sans);letter-spacing:-.02em;margin:34px 0 8px}
.legal p,.legal li{color:#33333a}
.draft-note{background:#fff8d6;border:1px solid #efdc8a;border-radius:8px;padding:12px 16px;font-size:14px}
.done{max-width:640px}
.done h1{font:600 clamp(44px,7vw,76px)/1 var(--sans);letter-spacing:-.05em;margin:16px 0 18px}
.done ol{padding:0;margin:28px 0 0;list-style:none;counter-reset:s;border-top:1px solid var(--faint)}
.done li{counter-increment:s;display:flex;gap:18px;padding:16px 0;border-bottom:1px solid var(--faint);color:#33333a}
.done li::before{content:"0" counter(s);font:500 13px var(--mono);color:var(--accent);padding-top:4px}
