:root{--ink:#0e0e0e;--muted:#5a5a5a;--bg:#ffffff;--line:#e8e8e8;--accent:#ff5a1f}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 Inter,system-ui,-apple-system,sans-serif}
.wrap{max-width:640px;margin:0 auto;padding:0 22px}
header.top{padding:22px 0}
.brand{font:800 1rem/1 "Inter Tight",system-ui,sans-serif;letter-spacing:.02em;text-transform:uppercase;color:var(--ink);text-decoration:none}
section{padding:44px 0}
h1,h2{font-family:"Inter Tight",system-ui,sans-serif;font-weight:800;letter-spacing:-.035em}
h1{font-size:clamp(2.9rem,14vw,5rem);line-height:.98;margin:28px 0 22px}
h2{font-size:1.75rem;line-height:1.1;margin:0 0 18px}
p{margin:0 0 14px}
.lead{font-size:1.2rem;color:var(--ink)}
.btn{display:inline-block;background:var(--accent);color:var(--ink);text-decoration:none;font-weight:600;font-size:1.05rem;padding:17px 28px;border-radius:4px;margin:12px 0 10px;min-height:48px}
.btn:hover{background:var(--ink);color:#fff}
.btn:focus-visible,a:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.note{font-size:.95rem;color:var(--muted)}
ol.steps{list-style:none;padding:0;margin:0;display:grid;gap:0}
ol.steps li{border-top:2px solid var(--ink);padding:18px 0 22px}
ol.steps b{display:block;font:800 1.25rem/1.2 "Inter Tight",system-ui,sans-serif;letter-spacing:-.02em;margin-bottom:4px}
.num{display:block;color:var(--accent);font:800 .95rem/1 "Inter Tight",system-ui,sans-serif;margin-bottom:10px}
.cta{background:var(--ink);color:#fff;margin:0 -22px;padding:56px 22px}
.cta p{color:#cfcfcf}
.cta .btn:hover{background:#fff;color:var(--ink)}
footer{padding:28px 0 44px;font-size:.9rem;color:var(--muted)}
footer a{color:var(--ink)}
@media(min-width:800px){section{padding:64px 0}ol.steps{grid-template-columns:repeat(3,1fr);gap:28px}.wrap{max-width:860px}.cta{margin:0;padding:56px 44px}}
h1{min-height:2em}
.type.on::after{content:"";display:inline-block;width:.07em;height:.85em;background:var(--accent);margin-left:.06em;vertical-align:-.05em;animation:blink .5s steps(1) infinite}
.type.done::after{display:none}
@keyframes blink{50%{opacity:0}}
.type .w{color:var(--accent)}
