:root{--paper:#f7f4ec;--paper-2:#fffdf8;--ink:#1c1b18;--muted:#6b6862;--line:#e6dfd0;--accent:#2f7d5b;--accent-soft:#2f7d5b1a;--amber:#b06a1d}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 1px 1px,#1c1b1809 1px,#0000 0);background-size:22px 22px;font-family:Newsreader,Georgia,serif;font-size:18px;line-height:1.6}.mono{font-family:JetBrains Mono,ui-monospace,monospace}.wrap{max-width:1040px;margin:0 auto;padding:0 28px}a{color:inherit;text-decoration:none}.accent{color:var(--accent)}nav{justify-content:space-between;align-items:center;padding:26px 0;display:flex}.logo{letter-spacing:-.02em;align-items:center;gap:9px;font-family:JetBrains Mono,monospace;font-size:18px;font-weight:700;display:flex}.logo .dot{background:var(--accent);border-radius:2px;width:11px;height:11px;display:inline-block}.navlinks{align-items:center;gap:30px;font-size:15px;display:flex}.navlinks .mono{color:var(--muted);font-size:13.5px}.navlinks a:hover{color:var(--ink)}.btn{border:1px solid var(--ink);border-radius:7px;padding:9px 16px;font-family:JetBrains Mono,monospace;font-size:13.5px;font-weight:500;transition:all .18s}.btn.solid{background:var(--ink);color:var(--paper);border-color:var(--ink)}.btn.solid:hover{background:var(--accent);border-color:var(--accent)}.btn.ghost:hover{background:#1c1b180d}@media (max-width:720px){.navlinks .hide{display:none}}header{padding:64px 0 40px}.tagline{letter-spacing:.06em;color:var(--accent);text-transform:uppercase;margin-bottom:22px;font-family:JetBrains Mono,monospace;font-size:13px}h1{letter-spacing:-.02em;max-width:14ch;font-size:clamp(40px,7vw,72px);font-weight:500;line-height:1.04}h1 em{color:var(--accent);font-style:italic}.sub{color:var(--muted);max-width:54ch;margin-top:26px;font-size:21px}.cta{flex-wrap:wrap;align-items:center;gap:14px;margin-top:34px;display:flex}.cta .note{color:var(--muted);font-family:JetBrains Mono,monospace;font-size:12.5px}.demo{border:1px solid var(--line);background:var(--paper-2);border-radius:14px;margin-top:64px;overflow:hidden;box-shadow:0 24px 60px -34px #1c1b1866}.demo-bar{border-bottom:1px solid var(--line);background:#1c1b1804;align-items:center;gap:7px;padding:13px 18px;display:flex}.demo-bar .b{background:var(--line);border-radius:50%;width:11px;height:11px}.demo-bar .name{color:var(--muted);margin-left:10px;font-family:JetBrains Mono,monospace;font-size:12.5px}.demo-body{padding:26px 26px 30px;font-family:JetBrains Mono,monospace;font-size:15px;line-height:2.05}.task{cursor:pointer;border-radius:6px;align-items:baseline;gap:13px;padding:1px 8px;transition:all .12s;display:flex}.task:hover{background:#1c1b1808}.task .box{border:1.5px solid var(--muted);border-radius:4px;flex:none;width:17px;height:17px;transition:all .15s;position:relative;top:3px}.task.done .box{background:var(--accent);border-color:var(--accent)}.task.done .box:after{content:"✓";color:#fff;font-size:12px;position:absolute;top:-2px;left:2px}.task .txt{color:var(--ink)}.task.done .txt{color:var(--muted);text-decoration:line-through}.task .tag{color:var(--accent)}.task .due{color:var(--amber)}.task .pri{color:var(--muted)}section{padding:78px 0}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:16px;font-family:JetBrains Mono,monospace;font-size:12.5px}h2{letter-spacing:-.015em;max-width:18ch;font-size:clamp(30px,4.5vw,42px);font-weight:500}.lead{color:var(--muted);max-width:52ch;margin-top:16px;font-size:19px}.grid{grid-template-columns:repeat(3,1fr);gap:30px;margin-top:50px;display:grid}@media (max-width:760px){.grid{grid-template-columns:1fr}}.feat{border-top:1px solid var(--line);padding-top:22px}.feat .n{color:var(--muted);margin-bottom:14px;font-family:JetBrains Mono,monospace;font-size:12.5px}.feat h3{margin-bottom:9px;font-size:22px;font-weight:600}.feat p{color:var(--muted);font-size:16.5px}.fmt{background:var(--ink);color:var(--paper);border-radius:16px;grid-template-columns:1fr 1fr;align-items:center;gap:44px;padding:48px clamp(28px,5vw,56px);display:grid}@media (max-width:760px){.fmt{grid-template-columns:1fr;gap:28px}}.fmt h2{color:var(--paper)}.fmt .lead{color:#f7f4ec99}.fmt pre{color:#f7f4eceb;background:#ffffff0a;border:1px solid #ffffff17;border-radius:10px;padding:22px;font-family:JetBrains Mono,monospace;font-size:13.5px;line-height:1.95;overflow:auto}.price{grid-template-columns:1fr 1fr;gap:26px;margin-top:50px;display:grid}@media (max-width:680px){.price{grid-template-columns:1fr}}.plan{border:1px solid var(--line);background:var(--paper-2);border-radius:14px;padding:34px}.plan.pro{border-color:var(--ink);position:relative}.plan.pro .badge{letter-spacing:.06em;text-transform:uppercase;background:var(--accent);color:#fff;border-radius:20px;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:11px;position:absolute;top:-11px;left:34px}.plan .pname{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-family:JetBrains Mono,monospace;font-size:14px}.plan .amt{letter-spacing:-.02em;margin:14px 0 4px;font-size:46px;font-weight:500}.plan .amt span{color:var(--muted);font-size:17px}.plan ul{flex-direction:column;gap:11px;margin:22px 0 26px;list-style:none;display:flex}.plan li{color:var(--muted);padding-left:24px;font-size:16px;position:relative}.plan li:before{content:"✓";color:var(--accent);font-family:JetBrains Mono,monospace;position:absolute;left:0}.plan .btn{text-align:center;width:100%;display:inline-block}footer{border-top:1px solid var(--line);margin-top:30px;padding:46px 0 60px}.fcols{flex-wrap:wrap;justify-content:space-between;gap:30px;display:flex}.fcols .col h4{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:14px;font-family:JetBrains Mono,monospace;font-size:12px}.fcols .col a{color:var(--muted);margin-bottom:9px;font-size:15px;display:block}.fcols .col a:hover{color:var(--ink)}.copy{color:var(--muted);margin-top:40px;font-family:JetBrains Mono,monospace;font-size:12.5px}.reveal{opacity:0;animation:.7s cubic-bezier(.2,.7,.2,1) forwards rise;transform:translateY(16px)}@keyframes rise{to{opacity:1;transform:none}}
