:root{--bg:#fff;--ink:#282C75;--muted:#5A5D94;--line:#e4e4e4}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.55 Exo,system-ui,sans-serif}
a{color:var(--ink)}a:hover{color:#1A1D55}a:focus-visible{outline:3px solid #2a78d6;outline-offset:2px}
main{max-width:860px;margin:0 auto;padding:40px 16px 32px;text-align:center}
.logo{display:block;width:min(260px,62vw);height:auto;margin:0 auto 28px}
h1{font-weight:700;line-height:1.15;font-size:clamp(2rem,6vw,3rem);margin:0 0 .35em}
.lead{color:var(--muted);font-size:1.15rem;max-width:34em;margin:0 auto 32px}
.pubs{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;text-align:left;margin-bottom:32px}
.pub{border:1px solid var(--line);border-radius:12px;padding:22px 24px}
.pub h2{font-size:1.3rem;line-height:1.2;margin:0 0 .35em}
.pub p{margin:0 0 .35em}.when{font-weight:600}.muted{color:var(--muted)}
.start{margin-top:.8em!important;font-weight:700}
.follow{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:0}
.btn{display:inline-block;background:var(--ink);color:#fff;font-weight:700;text-decoration:none;padding:10px 20px;border-radius:8px}
.btn:hover{color:#fff;background:#1A1D55}
footer{border-top:1px solid var(--line);padding:20px 16px;text-align:center;color:var(--muted);font-size:.95rem}
footer p{margin:0}
.signup{max-width:34em;margin:0 auto 32px;padding:24px;border:1px solid var(--line);border-radius:12px}
.signup h2{font-size:1.3rem;line-height:1.2;margin:0 0 .3em}
.signup p{margin:0 0 14px}
.row{display:flex;gap:8px;flex-wrap:wrap}
.row input{flex:1 1 220px;min-width:0;padding:11px 12px;border:1px solid #8a8cb0;border-radius:8px;font:inherit;color:var(--ink);background:#fff}
.row .btn{border:0;cursor:pointer;font:inherit;font-weight:700;flex:0 0 auto}
.row input:focus-visible,.row .btn:focus-visible{outline:3px solid #2a78d6;outline-offset:2px}
.signup .fine{color:var(--muted);font-size:.88rem;margin:12px 0 0}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:480px){.row .btn{flex:1 1 100%}}
.prose{text-align:left;max-width:40em}.prose h1{font-size:clamp(1.7rem,5vw,2.3rem)}.prose h2{font-size:1.15rem;margin:1.5em 0 .3em}.prose p,.prose ul{margin:0 0 .8em}
.back{margin-top:1.8em}
