:root{--purple:#7138d4;--ink:#24212b;--muted:#716c79;--line:#e9e5ee}
*{box-sizing:border-box;letter-spacing:0}
html{background:#fff}
body{margin:0;color:var(--ink);font:16px/1.6 'Avenir Next',Avenir,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}button,input{font:inherit}
:focus-visible{outline:3px solid #a880e9;outline-offset:4px}
header{max-width:1200px;margin:auto;padding:20px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand,.header-brand,.mark{display:block;width:52px;height:52px;flex:none}
.brand img,.mark img{display:block;width:100%;height:100%;object-fit:contain}
.header-note,.coming{font-size:14px;color:var(--purple);font-weight:600}.coming{text-underline-offset:5px}
.hero{min-height:calc(100svh - 200px);max-width:1200px;margin:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:54px 28px 66px;text-align:center}
.edition,.eyebrow{color:var(--purple);font-size:12px;font-weight:800;text-transform:uppercase;margin:0 0 28px}
.hero h1{margin:0 0 24px;width:min(850px,100%);line-height:0;animation:arrival .7s ease-out both}
.wordmark{display:block;width:100%;height:auto;aspect-ratio:530/84;object-fit:contain}
.intro{font-size:24px;line-height:1.45;max-width:620px;margin:0 0 28px;text-wrap:pretty}.intro strong{font-weight:750}.intro span{display:block;font-size:16px;color:var(--muted);margin-top:10px}
.cta,.signup button{display:inline-flex;align-items:center;justify-content:center;background:var(--purple);color:#fff;border:0;border-radius:6px;min-height:56px;padding:14px 32px;font-weight:750;font-size:17px;text-decoration:none;cursor:pointer;transition:background .2s,transform .2s}
.cta{min-width:230px}.cta:hover,.signup button:hover{background:#602bc1;transform:translateY(-1px)}
.note{font-size:13px;color:var(--muted);margin:14px 0 0}
.first{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f8f6fc;padding:30px 28px}
.first-inner{max-width:1060px;margin:auto;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:32px;align-items:center}.first h2{font-size:24px;line-height:1.25;margin:0;font-weight:800}.benefit{display:flex;gap:14px;align-items:center}.number{color:var(--purple);font-size:13px;font-weight:800}.benefit strong{font-size:16px}.benefit p{font-size:14px;color:var(--muted);margin:4px 0 0}
footer{max-width:1200px;margin:auto;padding:24px 28px;display:flex;justify-content:space-between;gap:18px;color:var(--muted);font-size:13px}footer p{margin:0}
.screen{min-height:100svh;display:flex;flex-direction:column}.screen header,.screen footer{width:100%}.screen header{border-bottom:1px solid var(--line)}.screen main{flex:1}
.registration{max-width:580px;padding:48px 28px 56px;margin:auto}.registration h1{font-size:34px;line-height:1.15;margin:0 0 16px;font-weight:850}.intro-copy{color:var(--muted);font-size:16px;margin:0 0 30px}
.signup-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 16px}.field{min-width:0}label{display:block;font-size:14px;font-weight:650;margin-bottom:8px}input{width:100%;height:54px;border:1px solid #dcd6e5;background:#faf9fc;border-radius:6px;padding:0 14px;color:var(--ink);min-width:0}input::placeholder{color:#77707f}input:focus{border-color:var(--purple)}
.signup button{width:100%;margin-top:26px}.signup button:disabled{opacity:.65;cursor:wait;transform:none}.perk{font-size:13px;color:var(--purple);text-align:center;margin:14px 0 0}.status{font-size:15px;color:var(--purple);line-height:1.6}.status:empty{display:none}.screen footer{border-top:1px solid var(--line)}
@keyframes arrival{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:700px){header{padding:16px 22px}.brand,.header-brand,.mark{width:44px;height:44px}.header-note,.coming{font-size:13px}.hero{min-height:calc(100svh - 175px);padding:42px 22px 48px}.hero h1{margin-bottom:26px}.edition{margin-bottom:24px}.intro{font-size:21px;max-width:400px}.intro span{font-size:15px}.cta{width:min(340px,100%)}.first{padding:26px 22px}.first-inner{grid-template-columns:1fr;gap:22px}.first h2{font-size:23px}footer{padding:22px;flex-wrap:wrap}.registration{padding:34px 22px 44px}.registration h1{font-size:30px}}
@media(max-width:440px){.signup-fields{grid-template-columns:1fr;gap:16px}.header-note{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
