:root{--bg:#0a0e12;--bg-alt:#0e141a;--surface:#121a22;--surface-raised:#16202a;--border:rgba(255, 255, 255, 0.08);--border-strong:rgba(255, 255, 255, 0.14);--text:#e6edf3;--text-dim:#98a6b3;--text-faint:#6b7a88;--green:#2fd672;--green-dim:#1fa858;--green-glow:rgba(47, 214, 114, 0.12);--mono:ui-monospace, "SF Mono", "JetBrains Mono", "Cascadia Code", Menlo, Consolas, monospace;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "Inter", Roboto, Helvetica, Arial, sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem}body{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased}.container{max-width:1080px;margin:0 auto;padding:0 1.5rem}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}h1,h2,h3{line-height:1.2;letter-spacing:-.02em;font-weight:650}h2{font-size:clamp(1.6rem,3.5vw,2.2rem);margin-bottom:1rem}h3{font-size:1.2rem;margin-bottom:.5rem}h4{font-family:var(--mono);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin-bottom:.6rem}.prompt{color:var(--green)}.nav-wrap{position:sticky;top:0;z-index:50;background:var(--bg);border-bottom:1px solid var(--border)}.nav{display:flex;align-items:center;justify-content:space-between;height:3.5rem}.wordmark{font-family:var(--mono);font-weight:700;font-size:1rem;color:var(--text)}.wordmark:hover{text-decoration:none;color:var(--green)}.nav-links{display:flex;align-items:center;gap:1.4rem;font-size:.9rem}.nav-links a{color:var(--text-dim)}.nav-links a:hover{color:var(--text);text-decoration:none}.nav-links a:not(.nav-github){position:relative;padding:.2rem 0}.nav-links a:not(.nav-github)::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--green);transform:scaleX(0);transform-origin:left center;transition:transform .25s ease}.nav-links a.active{color:var(--text)}.nav-links a.active::after{transform:scaleX(1)}.nav-github{border:1px solid var(--border-strong);padding:.3rem .8rem;color:var(--text)!important;font-family:var(--mono);font-size:.85rem}.nav-github:hover{border-color:var(--green);color:var(--green)!important}.hero{padding:4.5rem 0 5rem;background:radial-gradient(ellipse 60% 45% at 50% 0%,var(--green-glow),transparent 70%),repeating-linear-gradient(0,transparent,transparent 39px,rgba(255,255,255,.015) 40px),repeating-linear-gradient(90deg,transparent,transparent 39px,rgba(255,255,255,.015) 40px);border-bottom:1px solid var(--border);text-align:center;position:relative;overflow:hidden}.hero .container{position:relative}.hero::before,.hero::after{content:"";position:absolute;inset:0;pointer-events:none;background-repeat:repeat;background-size:640px 480px;animation:twinkle 6s ease-in-out infinite}.hero::before{background-image:radial-gradient(1px 1px at 43px 67px,rgba(255,255,255,.7),transparent 100%),radial-gradient(1px 1px at 187px 212px,rgba(255,255,255,.5),transparent 100%),radial-gradient(1.5px 1.5px at 331px 89px,rgba(180,255,210,.6),transparent 100%),radial-gradient(1px 1px at 512px 340px,rgba(255,255,255,.55),transparent 100%),radial-gradient(1px 1px at 92px 402px,rgba(255,255,255,.45),transparent 100%),radial-gradient(1.5px 1.5px at 601px 158px,rgba(200,255,225,.5),transparent 100%);opacity:.5}.hero::after{background-image:radial-gradient(1px 1px at 121px 154px,rgba(255,255,255,.6),transparent 100%),radial-gradient(1.5px 1.5px at 274px 331px,rgba(190,255,215,.55),transparent 100%),radial-gradient(1px 1px at 429px 47px,rgba(255,255,255,.5),transparent 100%),radial-gradient(1px 1px at 566px 264px,rgba(255,255,255,.45),transparent 100%),radial-gradient(1px 1px at 33px 296px,rgba(200,255,225,.5),transparent 100%);opacity:.3;animation-delay:-3s}@keyframes twinkle{0%,100%{opacity:.15}50%{opacity:.6}}@media(prefers-reduced-motion:reduce){.hero::before,.hero::after{animation:none;opacity:.35}}.ascii-logo{font-family:var(--mono);font-size:1rem;line-height:1.2;color:var(--green);text-shadow:0 0 10px rgba(47,214,114,.3);display:inline-block;text-align:left;margin-bottom:2.5rem;user-select:none}@media(max-width:700px){.ascii-logo{font-size:.6rem}}@media(max-width:480px){.ascii-logo{font-size:.45rem}}.hero h1{font-size:clamp(2rem,5vw,3.1rem);max-width:720px;margin:0 auto 1.2rem}.hero-sub{color:var(--text-dim);max-width:640px;margin:0 auto 2.5rem;font-size:1.1rem}.install-box{max-width:780px;margin:0 auto;text-align:left}.install-label{font-family:var(--mono);font-size:.8rem;color:var(--text-faint);margin-bottom:.5rem}.install-command{display:flex;align-items:center;gap:.75rem;background:var(--surface);border:1px solid var(--border-strong);padding:.9rem 1rem;box-shadow:0 8px 32px rgba(0,0,0,.4)}.install-command code{font-family:var(--mono);font-size:.85rem;color:var(--text);overflow-x:auto;white-space:nowrap;flex:1;scrollbar-width:thin}.copy-button{font-family:var(--mono);font-size:.8rem;background:var(--surface-raised);color:var(--text);border:1px solid var(--border-strong);padding:.4rem .9rem;cursor:pointer;flex-shrink:0;transition:border-color .15s,color .15s}.copy-button:hover{border-color:var(--green);color:var(--green)}.copy-button.copied{border-color:var(--green);color:var(--green)}.hero-actions{display:flex;gap:.9rem;justify-content:center;margin-top:1.6rem;flex-wrap:wrap}.hero-badges{list-style:none;display:flex;gap:2rem;justify-content:center;margin-top:3rem;flex-wrap:wrap;font-family:var(--mono);font-size:.8rem;color:var(--text-faint)}.hero-badges li::before{content:"✓ ";color:var(--green)}.btn{display:inline-block;font-weight:600;font-size:.95rem;padding:.65rem 1.4rem;transition:transform .1s,box-shadow .15s,border-color .15s}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn-primary{background:var(--green);color:#06130b;box-shadow:0 4px 20px rgba(47,214,114,.25)}.btn-primary:hover{box-shadow:0 6px 28px rgba(47,214,114,.4)}.btn-secondary{border:1px solid var(--border-strong);color:var(--text);background:var(--surface-raised)}.btn-secondary:hover{border-color:var(--green);color:var(--green)}.btn-ghost{color:var(--text-dim)}.btn-ghost:hover{color:var(--text)}.btn-outline{border:1px solid var(--border-strong);color:var(--text);font-family:var(--mono);font-size:.9rem}.btn-outline:hover{border-color:var(--green);color:var(--green)}.icon{display:inline-block;line-height:0;vertical-align:-.08em;margin-right:.5em}.icon svg{width:.95em;height:.95em;fill:currentColor}.btn-outline .icon{margin-right:0;margin-left:.5em}.seen-at{background:var(--bg-alt);border-bottom:1px solid var(--border);padding:1.2rem 0}.seen-at-inner{display:flex;align-items:center;justify-content:center;gap:1rem}.seen-at img{background:#f2f5f7;padding:4px}.seen-at p{color:var(--text-dim);font-size:.9rem;max-width:620px}.section{padding:5rem 0}.section-alt{background:var(--bg-alt);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.eyebrow{font-family:var(--mono);font-size:.8rem;color:var(--green);letter-spacing:.05em;margin-bottom:.8rem}.section-sub{color:var(--text-dim);max-width:640px;margin-bottom:2.5rem}.aside{color:var(--text-faint);font-size:.9rem;margin-top:1.5rem}.tool-row{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;margin-top:3rem}.tool-row-reverse .tool-content{order:2}.tool-row-reverse .tool-image{order:1}.tool-content h3{font-family:var(--mono);color:var(--green)}.tool-content p{color:var(--text-dim);margin-bottom:1rem}.tool-image img{width:100%;height:auto;border:1px solid var(--border-strong);box-shadow:0 16px 48px rgba(0,0,0,.5)}.checklist{list-style:none;margin:1rem 0}.checklist li{padding-left:1.4rem;position:relative;margin-bottom:.45rem;color:var(--text-dim)}.checklist li:last-child{margin-bottom:0}.checklist li::before{content:"▸";position:absolute;left:0;color:var(--green)}.req-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:4rem}.plain-list{list-style:none}.plain-list li{padding:.45rem 0;border-bottom:1px solid var(--border);color:var(--text-dim);font-size:.95rem}.hw-cols{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.tag{font-family:var(--mono);font-size:.68rem;color:var(--green);border:1px solid rgba(47,214,114,.35);padding:.05rem .4rem;margin-left:.4rem;white-space:nowrap}.pro-card{display:grid;grid-template-columns:1.6fr 1fr;gap:2.5rem;background:linear-gradient(135deg,var(--surface),var(--surface-raised));border:1px solid var(--border-strong);padding:2.5rem;margin-top:2rem;box-shadow:0 20px 60px rgba(0,0,0,.4)}.pro-lead{color:var(--text-dim);margin-bottom:1.2rem}.pro-buy{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;text-align:center;border-left:1px solid var(--border);padding-left:2.5rem}.price{font-family:var(--mono);font-size:2.6rem;font-weight:700;color:var(--green)}.price-note{font-family:var(--mono);font-size:.75rem;color:var(--text-faint)}.pro-shot{display:block;width:100%;height:auto;border:1px solid var(--border);margin-bottom:1.4rem}.support-by{display:flex;align-items:center;gap:.6rem;margin-top:1rem;font-size:.82rem;color:var(--text-dim)}.support-by img{display:block}.hw-cards{display:grid;grid-template-columns:1fr 1.2fr;gap:1.5rem;align-items:stretch}.hw-card{background:var(--surface);border:1px solid var(--border-strong);padding:2rem;display:flex;flex-direction:column;gap:.8rem}.hw-card p{color:var(--text-dim);flex:1}.hw-card .btn{align-self:flex-start}.hw-img{align-self:center;height:190px;width:auto;max-width:100%;object-fit:contain;margin-bottom:.6rem}.hw-card-featured{border-color:rgba(47,214,114,.4);background:linear-gradient(160deg,var(--surface-raised),var(--surface))}.hw-card-tag{font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--green)}.hw-price{font-family:var(--mono);font-size:1.9rem;font-weight:700}.feature-banner{display:flex;align-items:center;justify-content:space-between;gap:2.5rem;background-color:var(--surface);background-size:cover;background-position:50%;background-repeat:no-repeat;border:1px solid var(--border);padding:2.5rem}.feature-banner p{color:var(--text-dim);max-width:560px}.feature-banner .btn{flex-shrink:0}.banner-logo{display:block;height:40px;width:auto;margin-bottom:1.2rem}.notes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}.note-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);color:var(--text);transition:border-color .15s,transform .1s;overflow:hidden}.note-card:hover{border-color:var(--green);text-decoration:none;transform:translateY(-2px)}.note-card>img{display:block;width:100%;height:auto;border-bottom:1px solid var(--border)}.note-body{display:flex;flex-direction:column;gap:.7rem;padding:1.5rem 1.8rem 1.8rem;flex:1}.note-card h3{font-size:1.05rem}.note-card p{color:var(--text-dim);font-size:.92rem;flex:1}.note-more{font-family:var(--mono);font-size:.78rem;color:var(--green)}.notes-browse{text-align:right;margin-top:1.2rem;font-family:var(--mono);font-size:.82rem}.consulting-grid{display:grid;grid-template-columns:1fr auto;gap:3rem;align-items:center}.consulting-grid p{color:var(--text-dim);max-width:620px}.contact-actions{display:flex;gap:.9rem;margin-top:1.6rem;flex-wrap:wrap}.headshot{border:1px solid var(--border-strong);width:200px;height:auto}.ack-list{list-style:none;max-width:760px}.ack-list li{color:var(--text-dim);font-size:.95rem;padding:.6rem 0;border-bottom:1px solid var(--border)}footer{padding:3.5rem 0;text-align:center;border-top:1px solid var(--border)}.footer-inner p{color:var(--text-faint);font-size:.9rem;margin-top:.8rem}.footer-mark{opacity:.5}.footer-links{font-family:var(--mono);font-size:.78rem}.footer-meta{font-family:var(--mono);font-size:.78rem}.footer-meta span{color:var(--text-faint);margin:0 .35rem}.legal .container{max-width:760px}.legal h1{font-size:clamp(1.8rem,4vw,2.4rem);margin-bottom:.6rem}.legal-updated{font-family:var(--mono);font-size:.8rem;color:var(--text-faint);margin-bottom:2.5rem}.legal h2{font-size:1.3rem;margin:2.4rem 0 .8rem}.legal p{color:var(--text-dim);margin-bottom:1rem}.legal ul{margin:0 0 1rem 1.4rem;color:var(--text-dim)}.legal li{margin-bottom:.5rem}@media(max-width:860px){.nav-links{gap:.9rem;font-size:.82rem}.nav-links a:not(.nav-github){display:none}.tool-row,.req-grid,.pro-card,.hw-cards,.consulting-grid{grid-template-columns:1fr}.tool-row{gap:1.5rem}.tool-row-reverse .tool-content{order:1}.tool-row-reverse .tool-image{order:2}.pro-buy{border-left:none;border-top:1px solid var(--border);padding-left:0;padding-top:1.8rem}.feature-banner{flex-direction:column;align-items:flex-start}.seen-at-inner{flex-direction:column;text-align:center}.notes-grid{grid-template-columns:1fr}.hero{padding:3rem 0}.section{padding:3.5rem 0}.headshot{order:-1}}