:root{--ink:#121212;--paper:#f7f5f0;--white:#fff;--graphite:#1f2937;--pop:#22d3a6;--accent:#3b82f6;--pop-text:#0f766e;--accent-strong:#2563eb;--shadow:8px 8px 0 0 #121212d9;--shadow-sm:4px 4px 0 0 #12121299;--shadow-inset:inset 4px 4px 0 0 #1212121f;--display:"Space Grotesk", system-ui, sans-serif;--mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, monospace}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}:focus-visible{outline:3px solid var(--accent-strong);outline-offset:3px}.skip-link{z-index:100;border:4px solid var(--ink);background:var(--paper);padding:.5rem 1rem;font-weight:600;position:absolute;top:-4rem;left:1rem}.skip-link:focus{top:1rem}body{min-height:100vh;font-family:var(--display);color:var(--ink);background-color:var(--paper);background-image:linear-gradient(90deg,#1212120a 1px,#0000 0),linear-gradient(0deg,#1212120a 1px,#0000 0);background-size:28px 28px;background-attachment:fixed;margin:0;line-height:1.5}h1,h2,h3,p,blockquote,ul{margin:0}h1,h2,h3{letter-spacing:-.025em}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{max-width:100%;display:block}.icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:20px;height:20px}.icon-xs{width:12px;height:12px}.icon-sm{width:16px;height:16px}.icon-lg{width:24px;height:24px}.icon-xl{width:40px;height:40px}.center{text-align:center}.small{color:var(--graphite);font-size:.875rem}.graphite{color:var(--graphite)}.stack{gap:1.5rem;display:grid}.stack-sm{gap:.75rem;display:grid}.row-between{justify-content:space-between;align-items:center;display:flex}.lift{transition:transform .15s}.nav{background:var(--paper);border-bottom:4px solid var(--ink);box-shadow:var(--shadow);z-index:50;position:relative}.nav-inner,.footer-inner{max-width:1400px;margin:0 auto;padding:0 1.5rem}.nav-inner{align-items:center;height:5rem;display:flex}.logo{text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:.75rem;font-size:1.875rem;transition:transform .15s;display:flex}.logo:hover{transform:scale(1.05)}.logo-icon{width:32px;height:32px;color:var(--pop)}.footer{border-top:4px solid var(--ink);background:var(--paper);margin-top:4rem}.footer-inner{flex-direction:column;justify-content:space-between;align-items:center;gap:1.5rem;padding-block:2.5rem;display:flex}.footer-brand,.footer-links{align-items:center;gap:.75rem;display:flex}.footer-logo{text-transform:uppercase;letter-spacing:.1em;font-size:1.25rem}.main{gap:4rem;padding-top:3rem;display:grid}.container{width:100%;max-width:80rem;margin:0 auto;padding:0 1rem}.card{border:4px solid var(--ink);background:var(--white);box-shadow:var(--shadow);padding:1rem;transition:transform .2s;display:block}.card:hover{transform:translate(-6px,-6px)}.eyebrow{border:2px solid var(--ink);background:var(--paper);text-transform:uppercase;letter-spacing:.35em;color:#1f2937b3;width:fit-content;box-shadow:var(--shadow-sm);justify-self:center;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.button{border:4px solid var(--ink);background:var(--pop);text-transform:uppercase;letter-spacing:.025em;color:var(--ink);box-shadow:var(--shadow);justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;transition:transform .15s;display:inline-flex}.button:hover{transform:translate(-4px,-4px)}.button:active{transform:none}.button-grad{background:linear-gradient(90deg, var(--pop-text), var(--accent-strong));color:var(--white);font-size:1rem}.button-plain{background:var(--paper);box-shadow:var(--shadow-sm)}.tag{border:2px solid var(--ink);text-transform:uppercase;letter-spacing:.025em;box-shadow:var(--shadow-sm);align-items:center;gap:.5rem;padding:.25rem .75rem;font-weight:500;transition:transform .15s;display:inline-flex}.tag:hover{transform:translate(-4px,-4px)}.tag-accent{background:var(--accent-strong);color:var(--white)}.icon-btn,.icon-btn-sm{border:4px solid var(--ink);background:var(--paper);box-shadow:var(--shadow-sm);color:var(--ink);padding:.5rem .75rem;transition:transform .15s;display:inline-flex}.icon-btn-sm{background:var(--white);border-width:2px;padding:.5rem}.icon-btn:hover,.icon-btn-sm:hover{transform:translate(-4px,-4px)}.grad-text{background:linear-gradient(90deg, #16a34a, var(--accent-strong));color:#0000;-webkit-background-clip:text;background-clip:text}.grad-purple{background:linear-gradient(90deg,#7e22ce,#9333ea);color:#0000;-webkit-background-clip:text;background-clip:text}.hero{align-items:center;gap:2.5rem;display:grid}.hero-text{gap:1.5rem;display:grid}.hero-text .eyebrow{justify-self:start}.hero-title{text-transform:uppercase;font-size:3rem;font-weight:900;line-height:1.05}.hero-lead{color:var(--graphite);max-width:36rem;font-size:1.125rem;line-height:1.625}.stats{gap:1rem;display:grid}.stat{border:4px solid var(--ink);background:var(--paper);box-shadow:var(--shadow-sm);padding:1rem;transition:transform .15s;overflow:hidden}.stat:hover{transform:translateY(-4px)}.stat-label{text-transform:uppercase;letter-spacing:.1em;color:#1f2937b3;font-size:.75rem;font-weight:600}.stat-value{overflow-wrap:break-word;margin-top:.25rem;font-size:1.25rem;font-weight:900;line-height:1.375}.stat-desc{color:var(--graphite);margin-top:.25rem;font-size:.875rem}.actions,.connect,.connect-links{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.connect{padding-top:.5rem}.connect-label{text-transform:uppercase;letter-spacing:.4em;color:#1f2937bf;font-size:.75rem;font-weight:600}.hero-photo{justify-content:center;padding-bottom:1.5rem;display:flex;position:relative}.photo-glow{background:linear-gradient(135deg, var(--pop), var(--accent), #fde68a);opacity:.8;filter:blur(40px);border-radius:36px;position:absolute;inset:-1rem}.photo{object-fit:cover;border:4px solid var(--ink);width:14rem;height:14rem;box-shadow:var(--shadow);background:var(--paper);border-radius:32px;position:relative}.photo-badge{border:4px solid var(--ink);background:var(--paper);box-shadow:var(--shadow-sm);text-align:center;white-space:nowrap;padding:.5rem 1rem;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.photo-badge-title{font-size:.875rem;font-weight:700}.terminal{font-family:var(--mono);font-size:.875rem}.term-dots{gap:.75rem;margin-bottom:1.5rem;display:flex}.dot{border:2px solid var(--ink);width:1rem;height:1rem}.dot-red{background:#ef4444}.dot-yellow{background:#facc15}.dot-green{background:var(--pop)}.term-screen{border:4px solid var(--ink);background:var(--paper);height:24rem;box-shadow:var(--shadow-inset);cursor:text;align-content:start;gap:.5rem;padding:.75rem 1rem;display:grid;overflow-y:auto}.term-screen:focus-within{outline:3px solid var(--accent-strong);outline-offset:3px}.term-intro{color:var(--pop-text);min-height:1.5em;font-weight:600}.term-log{gap:.5rem;display:grid}.term-entry{gap:.25rem;display:grid}.term-row{gap:.75rem;display:flex}.term-prompt{color:var(--pop-text);font-weight:700}.term-out{white-space:pre-wrap;color:var(--graphite);margin-left:1.5rem}.term-copy{border:2px solid var(--ink);background:var(--paper);box-shadow:var(--shadow-sm);font:inherit;color:var(--ink);cursor:pointer;justify-self:start;margin-left:1.5rem;padding:.125rem .5rem;font-size:.75rem;font-weight:700}.term-copy:focus-visible{outline:3px solid var(--accent-strong);outline-offset:2px}.term-input{min-width:0;font:inherit;color:var(--ink);background:0 0;border:none;outline:none;flex:1}.section-title{text-transform:uppercase;font-size:1.875rem;font-weight:900}.section-lead{max-width:42rem;color:var(--graphite);margin:0 auto;line-height:1.625}.venture{border:4px solid var(--ink);box-shadow:var(--shadow);background:linear-gradient(135deg,#ffe4e6,#fffbeb,#ffedd5);gap:1rem;padding:1.5rem;transition:transform .15s;display:grid}.venture:hover{transform:translate(-8px,-8px)}.venture-top{justify-content:space-between;align-items:center;display:flex}.venture-icon{border:4px solid var(--ink);background:var(--paper);box-shadow:var(--shadow-sm);padding:.75rem}.venture-badge{border:2px solid var(--ink);text-transform:uppercase;letter-spacing:.3em;color:#be123c;box-shadow:var(--shadow-sm);background:#fff1f2;align-items:center;gap:.25rem;padding:.25rem .75rem;font-size:10px;font-weight:600;display:inline-flex}.heart{fill:#be123c;stroke:#be123c}.venture-tag{text-transform:uppercase;letter-spacing:.4em;color:#be123c;font-size:11px;font-weight:600}.venture-title{text-transform:uppercase;font-size:1.5rem;font-weight:900}.venture-desc{color:#121212cc;font-size:.875rem;line-height:1.625}.venture-link{color:#be123c;text-underline-offset:4px;font-size:.875rem;font-weight:600;text-decoration:underline;text-decoration-thickness:2px}.about{gap:1.5rem;display:grid}.quote{color:#1f2937cc;background:var(--paper);border-left:4px solid var(--pop);text-align:center;max-width:56rem;margin:0 auto;padding:1rem 0 1rem 1.5rem;font-size:1.125rem;font-style:italic}.about-lead{color:var(--graphite);text-align:center;max-width:56rem;margin:0 auto;font-size:1.125rem;line-height:1.625}.focus{max-width:56rem;margin:0 auto}.focus-title{text-align:center;margin-bottom:1rem;font-size:1.25rem;font-weight:700}.focus-list{color:var(--graphite);gap:1rem;padding:0;list-style:none;display:grid}.focus-list li{align-items:flex-start;gap:.75rem;line-height:1.625;display:flex}.bullet{background:var(--pop);border-radius:50%;flex-shrink:0;width:.75rem;height:.75rem;margin-top:.5rem}.duo{gap:1.5rem;margin-top:2rem;display:grid}.card-title{text-transform:uppercase;letter-spacing:-.025em;font-size:1.25rem;font-weight:900}.tech-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.tech{border:4px solid var(--ink);background:var(--paper);aspect-ratio:1;box-shadow:var(--shadow-sm);flex-direction:column;justify-content:center;align-items:center;padding:.75rem;transition:transform .15s;display:flex}.tech:hover{transform:scale(1.1)}.tech img{width:2rem;height:2rem}.tech span{text-transform:uppercase;color:var(--graphite);margin-top:.25rem;font-size:.75rem;font-weight:600}.collab-wrap{justify-content:center;display:flex}.collab{background:linear-gradient(90deg, var(--pop), var(--accent));width:100%;max-width:32rem;position:relative}.collab-frame{border:4px solid var(--ink);pointer-events:none;position:absolute;inset:.25rem}.collab-inner{background:var(--paper);border:4px solid var(--ink);height:100%;box-shadow:var(--shadow-inset);justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem;display:flex;position:relative}.collab-head{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.collab-head .card-title{color:var(--graphite);font-size:1.5rem}.touch{gap:1.5rem;display:grid}.touch-title{font-size:1.875rem;font-weight:700}.touch-sub{font-size:1.25rem}.arrow{display:inline-block}.touch-links{justify-content:center;gap:1rem;margin-top:.5rem;display:flex}.touch-btn{border:4px solid var(--ink);color:var(--white);box-shadow:var(--shadow-sm);padding:.75rem;transition:transform .15s}.touch-btn:hover{transform:translate(-4px,-4px)}.touch-btn .icon{width:24px;height:24px}.bg-linkedin{background:#0a66c2}.bg-github{background:#333}.bg-gitlab{background:#e24329}.bg-purple{background:#a855f7}.dialog{border:4px solid var(--ink);background:var(--white);box-shadow:var(--shadow);width:calc(100% - 2rem);max-width:32rem;color:var(--ink);padding:1.5rem}.dialog::backdrop{background:#12121299}.dialog>*+*{margin-top:1rem}.dialog-close{border:2px solid var(--ink);background:var(--paper);padding:.25rem;display:inline-flex;position:absolute;top:.75rem;right:.75rem}.dialog-note{border:2px solid var(--ink);background:#93c5fd66;padding:.75rem}.dialog-actions{flex-direction:column;gap:.75rem;display:flex}.dialog-actions .button{box-shadow:var(--shadow-sm);flex:1}.mono-pill{font-family:var(--mono);font-weight:600}@media (width>=640px){.hero-title{font-size:3.75rem}.hero-lead{font-size:1.25rem}.stats{grid-template-columns:repeat(2,1fr)}.stat-value{font-size:1.5rem}.photo{width:16rem;height:16rem}.tech-grid{grid-template-columns:repeat(3,1fr)}.tech img{width:2.5rem;height:2.5rem}.dialog-actions{flex-direction:row}}@media (width>=768px){.container{padding:0 2rem}.card{padding:2rem}.photo{width:18rem;height:18rem}.section-title{font-size:2.25rem}.section-lead,.quote,.about-lead{font-size:1.25rem}.venture{padding:2rem}.venture-title{font-size:1.875rem}.venture-desc{font-size:1rem}.focus-title{font-size:1.5rem}.focus-list{font-size:1.125rem}.card-title{font-size:1.5rem}.tech-grid{gap:1.5rem}.tech img{width:3rem;height:3rem}.touch-title{font-size:2.25rem}.touch-sub{font-size:1.5rem}.touch-btn{padding:1rem 1.25rem}.touch-btn .icon{width:32px;height:32px}.footer-inner{flex-direction:row}}@media (width>=1024px){.hero{grid-template-columns:1.4fr 1fr}.section-title,.touch-title{font-size:3rem}.touch-sub{font-size:1.875rem}.duo{grid-template-columns:1fr 1fr}}@media (width>=1280px){.stats{grid-template-columns:repeat(3,1fr)}.stat{padding:1.5rem}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
