.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg: #0a0a0a;--accent: #6366f1;--accent-dim: rgba(99,102,241,.15);--amber: #f59e0b;--amber-dim: rgba(245,158,11,.12);--text: #e4e4e4;--dim: #888;--border: rgba(255,255,255,.07);--border-hover: rgba(99,102,241,.35);--card-bg: rgba(255,255,255,.025);--gutter: 2rem;--max-w: 780px;--nav-height: 56px;--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-code: "JetBrains Mono", "Fira Code", "Courier New", monospace;--fs-h1: clamp(2.4rem, 7vw, 4.4rem);--fs-h2: clamp(1.8rem, 5vw, 2.8rem);--fs-h3: 1.3rem;--fs-h4: 1.05rem;--fs-body: 1rem;--fs-small: .875rem;--fs-caption: .75rem;--lh-tight: 1.15;--lh-body: 1.65}html{scroll-behavior:smooth;font-size:16px}body{background:var(--bg);color:var(--text);font-family:var(--font-body);overflow-x:hidden;line-height:var(--lh-body);font-size:var(--fs-body);-webkit-font-smoothing:antialiased}h1,.h1{font-size:var(--fs-h1);line-height:var(--lh-tight);font-weight:700;letter-spacing:-.03em}h2,.h2{font-size:var(--fs-h2);line-height:1.2;font-weight:650;letter-spacing:-.02em}h3,.h3{font-size:var(--fs-h3);line-height:1.3;font-weight:600}h4,.h4{font-size:var(--fs-h4);line-height:1.35;font-weight:600}small,.text-small{font-size:var(--fs-small);line-height:1.45}.caption,.text-caption{font-size:var(--fs-caption);line-height:1.4;letter-spacing:.04em;text-transform:uppercase}code,pre,.font-code{font-family:var(--font-code)}body:before{content:"";position:fixed;inset:0;z-index:999;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:200px 200px}.btn{background:var(--accent);color:#fff;border:1px solid transparent;border-radius:10px;padding:.62rem .95rem;font-size:var(--fs-small);font-weight:600;cursor:pointer;text-decoration:none}.social-link{color:var(--text);text-decoration:none}.top-nav{position:fixed;top:0;left:0;right:0;z-index:100;background:#0a0a0af2;border-bottom:1px solid #1d1d1d}.top-nav-inner{max-width:780px;margin:0 auto;padding:.8rem 1rem}.top-nav-links{list-style:none;margin:0;padding:0;display:flex;gap:1rem;align-items:center}.top-nav-link{color:#cfcfcf;font-size:var(--fs-small);text-decoration:none}.top-nav-link:hover,.top-nav-link:focus-visible,.top-nav-link.active{color:#f4f4f4}.top-nav-toggle{display:none;background:transparent;border:1px solid #2b2b2b;color:#f4f4f4;font:inherit;font-size:var(--fs-caption);padding:.35rem .65rem;border-radius:6px;margin-bottom:.6rem}.container{position:relative;z-index:2;max-width:var(--max-w);margin:0 auto;padding:0 var(--gutter)}.page-main{position:relative;z-index:2;padding-top:calc(var(--nav-height) + 1rem);padding-bottom:2.5rem}section{min-height:auto;display:flex;flex-direction:column;justify-content:center;padding:3rem 0}.section-stack{padding:2rem 0}.section-tight{padding-top:0}.section-top-space{padding-top:4rem}.section-title{margin-bottom:1.4rem}section.hero{min-height:calc(100vh - 5rem)}section.connect{min-height:60vh}h2{font-size:clamp(1.8rem,4vw,2.4rem);font-weight:700;margin-bottom:2.5rem;letter-spacing:-.025em}h2 .dot{color:var(--accent)}.reveal{opacity:0;transform:translateY(28px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:translateY(0)}.hero{position:relative;min-height:calc(100vh - 5rem);display:flex;align-items:center}.hero-inner{max-width:720px}.hero-kicker{font-size:var(--fs-small);letter-spacing:.08em;text-transform:uppercase;color:var(--dim);margin-bottom:1rem}.hero-name{font-size:clamp(2.6rem,7vw,4.6rem);font-weight:750;letter-spacing:-.03em;line-height:1.05;margin-bottom:.9rem}.hero-title{font-size:var(--fs-body);color:var(--dim);margin-bottom:2rem;max-width:62ch}.hero-links{display:flex;flex-wrap:wrap;gap:1rem}.hero-link{color:var(--text);text-decoration:none;font-size:.95rem;border-bottom:1px solid transparent;padding-bottom:.1rem;transition:border-color .2s ease,color .2s ease}.hero-link:hover{color:#fff;border-color:var(--text)}.hub-grid-section{min-height:auto;padding-top:1rem;padding-bottom:2rem;margin-bottom:1rem}.hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;max-width:760px;margin:0 auto;align-items:stretch}.hub-card{background:#ffffff08;border:1px solid var(--border);border-radius:12px;padding:1rem 1.1rem;text-decoration:none;color:inherit;position:relative;overflow:hidden;transition:border-color .28s ease,transform .28s ease,box-shadow .28s ease}.hub-card:before{content:"";position:absolute;inset:0;background:radial-gradient(220px circle at var(--mx, 50%) var(--my, 50%),rgba(99,102,241,.1),transparent 70%);opacity:0;transition:opacity .28s ease;pointer-events:none}.hub-card:hover{border-color:var(--border-hover);box-shadow:0 0 0 1px #6366f126,0 14px 30px #6366f11a;transform:translateY(-2px)}.hub-card:hover:before{opacity:1}.hub-card-icon{font-size:1.15rem;color:#ffffffe6;font-family:JetBrains Mono,Fira Code,Courier New,monospace}.hub-card h3{margin-top:.3rem;font-size:1rem;font-weight:600;display:flex;align-items:center;gap:.45rem}.hub-card p{margin-top:.2rem;color:var(--dim);font-size:.88rem}.hub-status-dot{width:7px;height:7px;border-radius:999px;background:#28c840;box-shadow:0 0 #28c84073;animation:statusPulse 2s ease-in-out infinite}.page-intro{min-height:auto;padding-bottom:0}.page-title{font-size:clamp(2.2rem,6vw,3.2rem);line-height:1.08;font-weight:700;letter-spacing:-.02em}.page-title-signal{display:inline-block;width:8px;height:8px;border-radius:999px;background:#28c840;margin-left:.45rem;vertical-align:middle;box-shadow:0 0 #28c84073;animation:statusPulse 2s ease-in-out infinite}.jarvis-spotlight{min-height:auto;border:1px solid var(--border-hover);background:linear-gradient(145deg,#6366f11f,#ffffff05);border-radius:16px;padding:1.4rem}.jarvis-spotlight-kicker{color:var(--dim);text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;margin-bottom:.5rem}.jarvis-spotlight-title{font-size:clamp(1.4rem,3.6vw,2rem);margin-bottom:.75rem}.jarvis-spotlight-copy{color:#c6c6c6;max-width:64ch;margin-bottom:1rem}.jarvis-spotlight-link{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.45);padding-bottom:.08rem}.projects-grid{display:grid;grid-template-columns:1fr;gap:1.2rem}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:16px;padding:1.5rem;position:relative;display:flex;flex-direction:column;gap:.2rem}.card h3{font-size:1.1rem;font-weight:600;margin-bottom:.5rem;letter-spacing:-.01em}.card .desc{color:var(--dim);font-size:.875rem;margin-bottom:1rem;line-height:1.55;flex:1}.card-featured .desc{flex:unset}.pills{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1rem}.pill{background:var(--accent-dim);color:var(--accent);padding:.18rem .6rem;border-radius:99px;font-size:.72rem;font-weight:500;letter-spacing:.01em}.pill.amber{background:var(--amber-dim);color:var(--amber)}.stats{display:flex;flex-wrap:wrap;gap:.75rem 1rem;font-size:.78rem;color:#8e8e8e}.badge-link{display:inline-flex;align-items:center}.badge-link img{height:20px}.stat-link{color:var(--accent);text-decoration:none}.stat-link:hover{text-decoration:underline}.newsletter{margin-top:2rem;padding:1.25rem;border:1px solid var(--border);border-radius:12px;background:#ffffff05}.newsletter-value{color:#bcbcbc;font-size:.9rem;margin-bottom:.8rem}.newsletter-proof{display:inline-block;margin-left:.5rem;color:#8e8e8e;font-size:.82rem}.newsletter-form{display:flex;gap:.6rem}.newsletter-form input{flex:1;min-width:0;background:#00000059;border:1px solid rgba(255,255,255,.14);color:var(--text);border-radius:10px;padding:.62rem .75rem;font-size:.9rem}.newsletter-form input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #6366f126}.newsletter-form .btn:hover{filter:brightness(1.06)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.writing-list{display:flex;flex-direction:column;gap:.8rem}.writing-item{padding:1.3rem 1.5rem;background:var(--card-bg);border:1px solid var(--border);border-radius:12px;transition:border-color .2s ease}.writing-item:hover{border-color:#6366f14d}.writing-item h3{font-size:1rem;font-weight:550;margin-bottom:.3rem}.writing-item .date{color:var(--dim);font-size:.82rem;margin-bottom:.55rem}.writing-description{color:#bcbcbc;font-size:.9rem;margin-bottom:.8rem}.writing-read-link{color:var(--text);text-decoration:none;font-size:.88rem;border-bottom:1px solid rgba(255,255,255,.3);padding-bottom:.08rem}.writing-read-link:hover{border-color:var(--text)}.writing-empty{border:1px dashed var(--border);border-radius:12px;padding:1.5rem;color:var(--dim)}.writing-empty a{display:inline-block;margin-top:.7rem;color:var(--text);text-decoration:none}.now-terminal{background:#0a0a0acc;border:1px solid rgba(99,102,241,.15);border-radius:14px;overflow:hidden;font-family:JetBrains Mono,monospace;font-size:.82rem;line-height:1.7}.now-terminal-header{display:flex;align-items:center;gap:6px;padding:.65rem 1rem;background:#ffffff08;border-bottom:1px solid rgba(255,255,255,.06)}.now-terminal-dot{width:10px;height:10px;border-radius:50%}.now-terminal-dot.r{background:#ff5f57}.now-terminal-dot.y{background:#febc2e}.now-terminal-dot.g{background:#28c840}.now-terminal-header span{margin-left:.6rem;color:#ffffff4d;font-size:.72rem}.now-terminal-body{padding:1.2rem 1.4rem;overflow:hidden}.now-line{display:flex;flex-wrap:wrap;gap:0 .5ch;margin-bottom:.15rem}.now-line.spacer{margin-bottom:.6rem}.now-prompt{color:var(--accent)}.now-cmd{color:var(--amber)}.now-flag{color:#ffffff59}.now-val{color:#e2e8f0}.now-comment{color:#fff3;font-style:italic}.now-tag-pill{display:inline-block;padding:.1rem .5rem;border-radius:20px;background:#6366f11f;color:#ffffff73;font-size:.7rem;border:1px solid rgba(99,102,241,.15);margin-right:.3rem}.now-status-active{color:#28c840}.now-status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#28c840;margin-right:.3rem;animation:statusPulse 2s ease-in-out infinite}.now-cursor{display:inline-block;width:7px;height:1.1em;background:var(--accent);vertical-align:text-bottom;animation:cursorBlink 1s step-end infinite;margin-left:2px}.now-terminal-body:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(255,255,255,.008) 2px,rgba(255,255,255,.008) 4px)}.now-terminal-body{position:relative}.now-divider{border:none;border-top:1px solid rgba(255,255,255,.05);margin:.7rem 0}.connect{text-align:center}.connect-subtitle{color:var(--dim);margin-bottom:2rem;font-size:1rem}.connect-links{display:flex;justify-content:center;flex-wrap:wrap;gap:1rem}.connect-link{color:var(--dim);text-decoration:none;font-size:.95rem;padding:.6rem 1.6rem;border:1px solid rgba(255,255,255,.1);border-radius:10px;transition:all .3s ease;position:relative;overflow:hidden}.connect-link:before{content:"";position:absolute;inset:-2px;border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--amber));opacity:0;z-index:-1;transition:opacity .3s}.connect-link:after{content:"";position:absolute;width:100px;height:100px;background:radial-gradient(circle,rgba(99,102,241,.4) 0%,transparent 70%);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);animation:none}.connect-link:hover{color:var(--text);border-color:var(--accent);background:#6366f114;box-shadow:0 0 20px #6366f126,0 4px 16px #0000004d;transform:translateY(-3px)}.connect-link.ripple:after{animation:rippleAnim .6s ease-out forwards}.beliefs-content{gap:1rem}.belief-block{border:1px solid var(--border);border-radius:12px;background:#ffffff05;padding:1.2rem 1.3rem}.belief-block h2{font-family:JetBrains Mono,Fira Code,Courier New,monospace;font-size:1rem;margin-bottom:.7rem;letter-spacing:0}.belief-block p{color:#c9c9c9;font-size:.92rem}.site-footer{text-align:center;padding:2.5rem 1rem 2rem;color:var(--dim);position:relative;z-index:2;border-top:1px solid var(--border)}.site-footer-name{color:var(--text);font-weight:600}.site-footer-meta{font-size:var(--fs-small);margin-top:.2rem}.site-footer-links{margin-top:.7rem;display:flex;justify-content:center;flex-wrap:wrap;gap:.8rem}.site-footer-links a{color:var(--dim);font-size:var(--fs-small);text-decoration:none}.site-footer-links a:hover{color:var(--text)}.stat-counter{font-variant-numeric:tabular-nums}#lobster-mode-btn{margin-top:1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);color:#666;padding:.5rem 1.2rem;border-radius:99px;cursor:pointer;font-size:.85rem;font-family:JetBrains Mono,monospace;transition:all .3s;display:inline-flex;align-items:center;gap:.5rem}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}html{scroll-behavior:auto}}@media(max-width:768px){:root{--gutter: 1.25rem;--nav-height: 56px}.top-nav-toggle{display:inline-block}.top-nav-links{display:none;flex-direction:column;align-items:flex-start;gap:.7rem;padding-top:.2rem}.top-nav-links.open{display:flex}section{padding:2.75rem 0;min-height:auto}.section-top-space{padding-top:3rem}.hero{min-height:auto;padding-top:2rem}.hero-name{font-size:clamp(2rem,10vw,3rem)}.hero-title{margin-bottom:1.25rem}.hero-links{gap:.65rem}.projects-grid,.hub-grid{grid-template-columns:1fr}.card{padding:1.1rem}.writing-item{padding:1rem}.writing-description{margin-bottom:.65rem}.newsletter-form{flex-direction:column}.newsletter-form .btn{width:100%}.now-terminal{font-size:.75rem}.now-terminal-body{padding:.9rem}}@media(max-width:480px){.page-main{padding-top:calc(var(--nav-height) + .6rem)}.connect-links{flex-direction:column;align-items:stretch}.connect-link{width:100%;text-align:center}.hero-links .hero-link{width:fit-content}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes blink{50%{opacity:0}}@keyframes heroFadeUp{to{opacity:1;transform:translateY(0)}}@keyframes heroFadeIn{to{opacity:1}}@keyframes statusPulse{0%,to{opacity:1;box-shadow:0 0 #28c84066}50%{opacity:.6;box-shadow:0 0 0 6px #28c84000}}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}
