@font-face{font-family:'Luckiest Guy';src:url(/fonts/LuckiestGuy-Regular.woff2) format('woff2');font-display:swap}
@font-face{font-family:'Bungee';src:url(/fonts/Bungee-Regular.woff2) format('woff2');font-display:swap}
:root{--bg:#120827;--bg2:#1d0d3d;--txt:#f3eaff;--mut:#c4b3e6;--g:linear-gradient(90deg,#6220E6,#E12D8C,#FF6E28)}
*{box-sizing:border-box}html,body{margin:0}
body{background:radial-gradient(1200px 600px at 50% -10%,#3a1578 0%,var(--bg) 60%) fixed,var(--bg);color:var(--txt);font:17px/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;min-height:100vh}
a{color:#ffb38a}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #FF6E28;outline-offset:3px}
.wrap{max-width:1040px;margin:0 auto;padding:24px 20px}
header{text-align:center}.logo{width:min(260px,60vw);height:auto;filter:drop-shadow(0 0 24px rgba(225,45,140,.45))}
.hero{display:grid;gap:32px;align-items:center;margin-top:8px}
@media(min-width:860px){.hero{grid-template-columns:1.2fr 1fr}}
h1,h2{font-family:'Luckiest Guy',system-ui,sans-serif;font-weight:400;letter-spacing:.5px;line-height:1.05;margin:0 0 14px}
h1{font-size:clamp(2.4rem,7vw,4.2rem);background:var(--g);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 18px rgba(225,45,140,.35))}
h2{font-size:2rem;text-align:center;margin-top:48px}
.sub{color:var(--mut);font-size:1.1rem}
form{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
input[type=email]{flex:1 1 220px;padding:15px 16px;border-radius:14px;border:2px solid #5b3a9e;background:#1a0b36;color:var(--txt);font-size:1rem}
button{font-family:'Luckiest Guy',system-ui,sans-serif;font-size:1.15rem;letter-spacing:.5px;padding:14px 22px;border:0;border-radius:14px;background:var(--g);color:#fff;cursor:pointer;box-shadow:0 0 24px rgba(225,45,140,.5)}
button:disabled{opacity:.6}
.note{color:var(--mut);font-size:.92rem;margin:10px 0 0}.err{color:#ff9a9a;min-height:1.2em;margin:8px 0 0}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.done{background:rgba(255,255,255,.05);border:1px solid #5b3a9e;border-radius:18px;padding:20px;margin-top:20px}
.done p{margin:6px 0}
.ladder{display:flex;flex-direction:column;align-items:center;gap:10px}
.row{display:flex;gap:8px}
.t{font-family:'Bungee',system-ui,sans-serif;width:52px;height:52px;display:grid;place-items:center;border-radius:12px;font-size:1.5rem;color:#fff;background:#24124a;border:2px solid var(--c);box-shadow:0 0 14px var(--c),inset 0 0 10px rgba(255,255,255,.08)}
.t.on{background:var(--c)}
.r1{--c:#6220E6}.r2{--c:#8a24d0}.r3{--c:#E12D8C}.r4{--c:#f24d5a}.r5{--c:#FF6E28}
.steps{display:grid;gap:16px;margin-top:8px}@media(min-width:760px){.steps{grid-template-columns:repeat(3,1fr)}}
.card{background:linear-gradient(180deg,rgba(98,32,230,.18),rgba(225,45,140,.08));border:1px solid #4a2c86;border-radius:18px;padding:20px}
.card h3{font-family:'Luckiest Guy',sans-serif;font-weight:400;font-size:1.4rem;margin:0 0 6px}.card p{margin:0;color:var(--mut)}
.em{font-size:2rem}
footer{text-align:center;color:var(--mut);font-size:.95rem;margin:56px 0 24px}
.prose{max-width:720px}.prose h1{font-size:2.6rem}.prose h2{text-align:left;font-size:1.5rem;margin-top:28px}
@media(prefers-reduced-motion:no-preference){.t{animation:glow 3s ease-in-out infinite alternate}@keyframes glow{to{box-shadow:0 0 22px var(--c),inset 0 0 10px rgba(255,255,255,.12)}}}
