@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600&family=Inter:wght@400;500;600;700;750&family=Montserrat:wght@600;700&family=Orbitron:wght@500;600&family=Roboto:wght@400;500;700&family=Space+Grotesk:wght@500;600;700&display=swap");

:root{color-scheme:dark;--bg:#0e1523;--panel:#131e30;--text:#f0f3f8;--muted:#9aaec8;--lime:#a3e923;--border:#29384e;font-family:Inter,Roboto,"IBM Plex Sans",sans-serif;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0}html{scroll-behavior:smooth;scroll-padding-top:24px}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--lime);outline-offset:6px}header,main,footer{max-width:1240px;margin:auto}header{padding:25px 32px;display:flex;justify-content:space-between;align-items:center;gap:25px}.brand{display:flex;align-items:center;gap:10px;font-weight:750;font-size:20px;letter-spacing:-.5px}.brand svg{width:43px;height:43px}.brand-sub{display:block;font-size:10px;letter-spacing:4px;color:var(--lime);margin-top:3px}nav{display:flex;align-items:center;gap:30px;font-size:13px;color:var(--muted)}.nav-pill{border:1px solid var(--border);padding:12px 18px;border-radius:30px;color:var(--text)}main{padding:0 32px}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:35px;align-items:center;padding:90px 0 80px}.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11px;letter-spacing:2px;font-weight:650;color:var(--lime)}.eyebrow i,.status-dot{width:7px;height:7px;border-radius:50%;background:var(--lime);display:inline-block}h1{font-size:clamp(46px,5.4vw,74px);line-height:1.07;letter-spacing:-3.8px;margin:27px 0}em{font-style:normal;color:var(--lime)}p{color:var(--muted);line-height:1.85;font-size:15px}.hero-copy>p{max-width:480px;margin-bottom:30px}.button{display:inline-flex;gap:28px;justify-content:space-between;align-items:center;background:var(--lime);color:#07120b;padding:16px 22px;border-radius:8px;font-size:13px;font-weight:700;transition:transform .2s}.button:hover{transform:translateY(-2px)}.hero-note{display:block;font:11px ui-monospace,monospace;color:var(--muted);margin-top:20px}.hero-art{position:relative;min-height:420px;background:radial-gradient(ellipse,#a3e9230b,transparent 70%)}.robot{position:absolute;width:340px;left:50%;top:30px;transform:translateX(-50%)}.robot-body{animation:float 5s ease-in-out infinite}.orbit{position:absolute;inset:60px 20px;border:1px dashed #a3e92335;border-radius:50%;transform:rotate(-25deg)}.art-label{position:absolute;font:10px ui-monospace,monospace;letter-spacing:1.5px;color:var(--muted)}.label-top{left:15px;top:15px}.label-bottom{right:0;bottom:12px}.sticker{position:absolute;background:#1b2a40;border:1px solid #29384e;border-radius:12px;padding:14px 17px;font:12px ui-monospace,monospace;box-shadow:0 12px 30px #0002;animation:float 6s ease-in-out infinite}.terminal{left:0;top:125px;rotate:-8deg}.terminal>span{color:var(--lime)}.shield{right:-4px;bottom:82px;rotate:7deg;color:var(--lime);animation-delay:-3s}.shield span{color:var(--text)}.spark{position:absolute;color:var(--lime);font-size:32px}.spark-a{right:30px;top:66px}.spark-b{left:55px;bottom:50px;color:#83baff}.manifesto-strip{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;border-block:1px solid var(--border);padding:25px 0;font:11px ui-monospace,monospace;letter-spacing:2px;color:var(--muted)}.section{padding:95px 0;border-bottom:1px solid var(--border)}h2{font-size:clamp(30px,3.6vw,46px);line-height:1.17;letter-spacing:-1.8px;font-weight:600;margin:23px 0}h3{font-size:23px;line-height:1.35;letter-spacing:-.7px;font-weight:600}.about{display:grid;grid-template-columns:1fr 1fr;gap:75px}.about-copy{padding-top:15px}.about-copy .lead{font-size:20px;line-height:1.7;color:var(--text);margin-top:0}.section-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.section-top>p{max-width:300px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{--color:var(--lime);border:1px solid var(--border);background:var(--panel);border-radius:16px;padding:25px;display:flex;flex-direction:column}.linux{--color:#83baff}.network{--color:#a3e923}.security{--color:#a3e923}.topic-art{height:130px;position:relative;color:var(--color);background:radial-gradient(ellipse,#ffffff08,transparent);margin-bottom:25px}.topic-art svg{width:100%;height:100%}.topic-art svg rect{fill:currentColor}.window-dots{position:absolute;left:25px;top:7px;letter-spacing:4px;font-size:8px}.command{font:48px ui-monospace,monospace;position:absolute;left:35px;top:28px}.blink{opacity:.55}.mini-label{position:absolute;left:35px;bottom:6px;font:12px ui-monospace,monospace}.card-number{font:10px ui-monospace,monospace;letter-spacing:1.5px;color:var(--color)}.card p{font-size:14px;margin:0 0 25px}.card h3{margin:18px 0}.card-note{font-size:11px;line-height:1.7;color:var(--muted);border-top:1px solid var(--border);padding-top:18px;margin-top:auto}.people{display:grid;grid-template-columns:1fr 1fr;gap:100px}.people>div>p{max-width:420px}.values>div{position:relative;padding:0 0 24px 42px;border-bottom:1px solid var(--border);margin-bottom:25px}.values>div:last-child{border-bottom:0;margin-bottom:0}.values>div>span{position:absolute;left:0;top:4px;font-size:23px;color:var(--lime)}.values h3{font-size:19px;margin:0 0 7px}.values p{font-size:14px;margin:0}.future{margin:70px 0;padding:65px 25px;text-align:center;border:1px solid var(--border);border-radius:20px;background:var(--panel)}.future p{max-width:610px;margin:20px auto}.status{font:11px/1.8 ui-monospace,monospace;color:var(--muted);margin:25px 0}.status-dot{margin-right:8px}footer{padding:25px 32px 35px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted);border-top:1px solid var(--border)}.footer-brand{font-weight:700;color:var(--text)}.skip{position:absolute;top:-100px;left:12px;background:var(--lime);color:var(--bg);padding:12px;z-index:5}.skip:focus{top:12px}@keyframes float{0%,100%{translate:0 0}50%{translate:0 -12px}}@media(max-width:900px){.hero{gap:10px}.hero-art{min-height:360px}.robot{width:290px;top:30px}.sticker{font-size:10px;padding:12px}.terminal{top:100px}.shield{bottom:55px}.about,.people{gap:40px}.card{padding:18px}.cards{gap:12px}}@media(max-width:650px){header{padding:20px;flex-wrap:wrap}nav{gap:18px;font-size:12px;flex-wrap:wrap}.nav-pill{padding:9px 12px}main{padding:0 20px}.hero{grid-template-columns:1fr;padding:50px 0 35px}h1{font-size:51px;letter-spacing:-2.8px}.hero-art{width:100%;max-width:410px;margin:25px auto 0;min-height:340px}.robot{width:290px;top:15px}.label-bottom{bottom:0}.orbit{inset:40px 25px}.shield{right:8px}.section{padding:55px 0}.about,.people,.cards{grid-template-columns:1fr;gap:25px}.section-top{display:block}.section-top>p{max-width:none}.cards{gap:20px}.card{padding:26px}.topic-art{height:130px}.card h3 br{display:none}.manifesto-strip{font-size:9px;letter-spacing:1px;gap:12px}.future{margin:45px 0;padding:40px 20px}.future h2{font-size:30px}.future .eyebrow{font-size:9px;letter-spacing:1px}footer{padding:25px 20px;flex-wrap:wrap}.about-copy{padding-top:0}.status{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.robot-body,.sticker{animation:none}.button{transition:none}}

/* Shared system header and brand treatment. */
header{background:#172337}.brand svg{filter:hue-rotate(-70deg)}

/* Body copy and hero / hook typography. */
p{font-family:Roboto,Inter,"IBM Plex Sans",sans-serif}
.about-copy .lead,.hero-note,.card-note,.status{font-family:"IBM Plex Sans",Inter,Roboto,sans-serif}
.hero h1{font-family:"Space Grotesk",Montserrat,sans-serif;font-weight:700}
.hero h1 em{font-family:Montserrat,"Space Grotesk",sans-serif;font-weight:700}
.hero .eyebrow,.hero .art-label,.manifesto-strip{font-family:Orbitron,"Space Grotesk",sans-serif;font-weight:500}

/* Contact section. */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}
.contact h2{margin-bottom:0}
.contact-copy p{margin-top:0}
.contact-phone{display:inline-block;font-family:"IBM Plex Sans",Inter,Roboto,sans-serif;font-size:clamp(23px,3vw,34px);font-weight:600;color:var(--lime);text-underline-offset:6px;overflow-wrap:anywhere}
.contact-phone:hover{text-decoration:underline}
@media(max-width:650px){.contact{grid-template-columns:1fr;gap:25px}}

.contact-email{display:block;width:fit-content;margin-top:16px;font-family:"IBM Plex Sans",Inter,Roboto,sans-serif;font-size:clamp(18px,2.4vw,26px);color:var(--lime);overflow-wrap:anywhere;text-underline-offset:6px}
.contact-email:hover{text-decoration:underline}

/* Blog and article pages. */
nav{flex-wrap:wrap}
.blog-intro{padding:80px 0 45px;max-width:800px}
.blog-intro h1,.article-content h1{font-family:"Space Grotesk",Montserrat,sans-serif;letter-spacing:-2px}
.blog-intro>p{max-width:600px;font-size:18px}
.blog-empty{padding:36px;border:1px solid var(--border);border-radius:16px;background:var(--panel);margin-bottom:10px}
.blog-empty h2{font-size:30px;letter-spacing:-1px}
.article-content{max-width:760px;margin:50px auto 80px}
.article-content .article-header{display:block;padding:30px 0;background:transparent}
.article-content h1{font-size:clamp(36px,5vw,56px);line-height:1.15}
.article-content h2{font-size:30px;letter-spacing:-1px}
.article-content section{padding-top:20px}
.article-content p{font-size:17px}
.article-content .article-meta{font-size:13px;font-family:"IBM Plex Sans",sans-serif}
.back-link,.article-toc a{color:var(--lime);text-decoration:underline;text-underline-offset:4px}
.article-toc{display:flex;align-items:start;flex-direction:column;gap:14px;padding:24px;background:var(--panel);border:1px solid var(--border);border-radius:12px}
@media(max-width:650px){.blog-intro{padding-top:50px}.blog-empty{padding:24px}.blog-intro h1{font-size:44px}}

.article-body{line-height:1.85;color:var(--muted)}
.article-body img{max-width:100%;height:auto;border-radius:12px}
.article-body a{color:var(--lime);text-decoration:underline;text-underline-offset:4px}
.article-body pre{overflow-x:auto;padding:20px;background:var(--panel);border:1px solid var(--border);border-radius:12px}
.article-body blockquote{border-left:3px solid var(--lime);margin-left:0;padding-left:20px}

.blog-heading{padding:48px 0 12px}
.blog-heading h1{font-size:clamp(36px,5vw,52px);margin:0}
.blog-heading + .section{padding-top:24px}

/* White frame for the site navigation header. */
body>header{border:1px solid #fff}
