.pixel-portfolio{--ink:#1a1c2c;--paper:#fff;--red:#ff004d;--green:#00e436;--blue:#29adff;--yellow:#ffec27;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:var(--paper);color:var(--ink);min-height:100vh;font-family:var(--font-mono),"Courier New",monospace;font-size:12px;line-height:1.7}html:has(.pixel-portfolio){scroll-behavior:auto;scroll-padding-top:88px}.pixel-portfolio *,.pixel-portfolio :before,.pixel-portfolio :after{border-radius:0;transition:none;animation:none}.pixel-portfolio ::selection{background:var(--yellow);color:var(--ink)}.pixel-portfolio :focus-visible{outline:4px solid var(--blue);outline-offset:4px}.pixel-portfolio .max-w-6xl{max-width:1024px}.pixel-portfolio h1,.pixel-portfolio h2,.pixel-portfolio h3,.pixel-portfolio .eyebrow,.pixel-portfolio .pixel-button,.pixel-portfolio .brand{font-family:var(--font-pixel),"Courier New",monospace;font-weight:400}.pixel-portfolio h2{letter-spacing:.05em;text-transform:uppercase;font-size:24px;line-height:1.6}.pixel-portfolio h3{text-transform:uppercase;font-size:12px;line-height:1.8}.pixel-portfolio p{margin:0}.pixel-portfolio a{text-underline-offset:4px}.pixel-portfolio button,.pixel-portfolio a{-webkit-tap-highlight-color:var(--yellow)}.pixel-portfolio button{cursor:pointer}.pixel-portfolio .eyebrow{letter-spacing:.05em;margin-bottom:20px;font-size:10px;line-height:1.8}.pixel-portfolio .small-label{letter-spacing:.12em;text-transform:uppercase;font-size:10px}.pixel-portfolio .skip-link{background:var(--yellow);z-index:100;border:4px solid var(--ink);padding:12px 24px;position:fixed;top:-100px;left:16px}.pixel-portfolio .skip-link:focus{top:8px}.pixel-nav{z-index:30;background:var(--ink);color:var(--paper);border-bottom:4px solid var(--red);position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;gap:24px;max-width:1024px;min-height:56px;margin:auto;padding:0 24px;display:flex}.pixel-portfolio .brand{white-space:nowrap;font-size:12px;text-decoration:none}.brand>span:first-child,.brand-dot{color:var(--yellow)}.pixel-nav nav{gap:20px;display:flex}.pixel-nav nav a{text-transform:uppercase;letter-spacing:.05em;padding:16px 0;font-size:10px;text-decoration:none}.pixel-nav nav a[aria-current]{color:var(--yellow)}.pixel-nav nav a:hover{color:var(--ink);background:var(--paper)}.menu-toggle{border:4px solid var(--paper);padding:4px 8px;font-size:10px;display:none}.pixel-hero{padding:64px 0 0}.hero-grid{grid-template-columns:1.1fr 1fr;align-items:center;gap:40px;display:grid}.pixel-portfolio h1{letter-spacing:.05em;margin:0 0 20px;font-size:32px;line-height:1.65}.pixel-portfolio h1>span:not(.hero-period){color:var(--red)}.hero-period{color:var(--blue)}.status-square{background:var(--green);width:8px;height:8px;box-shadow:0 0 0 4px var(--ink);margin-right:8px;display:inline-block}.hero-intro{font-size:16px;font-weight:600;line-height:1.7}.pixel-portfolio .hero-description{max-width:440px;margin-top:16px}.button-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.hero-copy .button-row{margin-top:28px}.pixel-portfolio .pixel-button{border:4px solid var(--ink);background:var(--red);color:var(--paper);box-shadow:4px 4px 0 var(--ink);justify-content:center;align-items:center;gap:12px;padding:12px 16px;font-size:10px;line-height:1.6;text-decoration:none;display:inline-flex}.pixel-portfolio .pixel-button.secondary{background:var(--paper);color:var(--ink)}.pixel-portfolio .pixel-button:hover{background:var(--blue);color:var(--ink);box-shadow:4px 4px 0 var(--red)}.pixel-portfolio .pixel-button:active{box-shadow:none;transform:translate(4px,4px)}.hero-bottom{border-top:4px solid var(--ink);border-bottom:4px solid var(--ink);align-items:center;gap:24px;margin-top:48px;padding:20px 0;display:flex}.hero-bottom>div{flex-wrap:wrap;gap:16px;font-size:12px;font-weight:600;display:flex}.hero-bottom>a{white-space:nowrap;margin-left:auto;font-size:10px}.hero-bottom>.small-label{max-width:100px}.developer-console{border:4px solid var(--ink);box-shadow:8px 8px 0 var(--ink);width:100%}.console-bar{background:var(--ink);color:var(--paper);letter-spacing:.1em;justify-content:space-between;padding:8px 12px;font-size:10px;display:flex}.console-bar>span:last-child{color:var(--yellow)}.console-scene{background:var(--blue);height:328px;position:relative;overflow:hidden}.scene-label{font-family:var(--font-pixel),monospace;background:var(--paper);border:4px solid var(--ink);box-shadow:4px 4px 0 var(--ink);padding:12px;font-size:12px;position:absolute;top:28px;left:24px}.scene-plus{font-family:var(--font-pixel),monospace;color:var(--paper);font-size:24px;position:absolute}.plus-one{top:32px;right:24px}.plus-two{color:var(--yellow);top:104px;left:24px}.pixel-monitor{background:var(--paper);border:8px solid var(--ink);width:216px;height:148px;padding:8px;position:absolute;top:112px;right:24px}.monitor-code{background:var(--ink);height:100%;color:var(--paper);padding:8px;font-size:10px;line-height:1.8}.monitor-code>span{display:block}.code-yellow{color:var(--yellow)}.code-blue{color:var(--blue)}.code-green{color:var(--green)}.code-cursor{background:var(--green);color:var(--ink)}.monitor-stand{background:var(--ink);width:40px;height:24px;position:absolute;bottom:44px;right:112px}.pixel-desk{background:var(--ink);width:264px;height:12px;position:absolute;bottom:36px;right:12px}.pixel-desk:after{content:"";background:var(--ink);width:12px;height:36px;position:absolute;top:0;right:12px}.pixel-person{z-index:2;grid-template-columns:repeat(16,8px);display:grid;position:absolute;bottom:12px;left:16px}.pixel-person i{width:8px;height:8px}.pixel-plant{width:32px;height:40px;position:absolute;bottom:48px;right:12px}.pixel-plant span{background:var(--green);border:4px solid var(--ink);width:12px;height:16px;position:absolute;top:0;left:12px}.pixel-plant span:nth-child(2){top:8px;left:0}.pixel-plant span:nth-child(3){top:8px;left:24px}.pixel-plant i{background:var(--red);border:4px solid var(--ink);width:28px;height:16px;position:absolute;bottom:0;left:4px}.scene-ground{background:var(--ink);width:100%;height:12px;position:absolute;bottom:0}.console-status{background:var(--yellow);border-top:4px solid var(--ink);justify-content:space-between;gap:8px;padding:12px;font-size:10px;display:flex}.console-status i{background:var(--ink);width:8px;height:8px;margin-right:4px;display:inline-block}.pixel-section{padding-top:64px;scroll-margin-top:24px}.section-heading{max-width:680px;margin-bottom:32px}.section-heading>p:last-child:not(.eyebrow){max-width:560px;margin-top:16px}.about-grid{border-bottom:4px solid var(--ink);grid-template-columns:1fr 1fr;gap:48px;padding-bottom:64px;display:grid}.about-grid h2{font-size:24px}.about-copy p+p{margin-top:16px}.about-copy{padding-top:36px}.about-stats{gap:32px;display:flex}.about-stats>div{flex-direction:column;gap:8px;display:flex}.about-stats strong{font-family:var(--font-pixel),monospace;font-size:16px;font-weight:400}.about-stats span{font-size:10px}.pixel-portfolio .text-link{font-size:10px;font-weight:600;text-decoration:underline;display:inline-block}.about-copy .text-link{margin-top:24px}.text-link:hover{background:var(--yellow);color:var(--ink)}.pixel-card{border:4px solid var(--ink);box-shadow:4px 4px 0 var(--ink);background:var(--paper)}.pixel-card:hover{border-color:var(--red);box-shadow:4px 4px 0 var(--red)}.pixel-card:hover h3{color:var(--red)}.projects-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.project-total{font-family:var(--font-pixel),monospace;padding-top:32px;font-size:32px}.project-total span{margin-top:8px;font-size:10px;display:block}.project-filters{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}.project-filters button{border:4px solid var(--ink);text-transform:uppercase;padding:4px 12px;font-size:10px}.project-filters button[aria-pressed=true]{background:var(--ink);color:var(--yellow)}.project-filters button:hover{background:var(--yellow);color:var(--ink)}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.project-card{flex-direction:column;min-width:0;display:flex}.project-content{flex-direction:column;flex:1;gap:16px;padding:20px;display:flex}.project-content .small-label{letter-spacing:0;font-size:10px}.project-content>p:not(.small-label){flex:1}.project-card h3{font-size:12px}.project-art{background:var(--blue);border-bottom:4px solid var(--ink);place-items:center;height:172px;display:grid;position:relative;overflow:hidden}.art-pos,.art-logistics{background:var(--yellow)}.art-cms{background:var(--green)}.art-mobility,.art-edtech{background:var(--red)}.project-art-window{border:4px solid var(--ink);background:var(--paper);width:148px;height:112px;box-shadow:8px 8px 0 var(--ink);position:relative}.mini-window-bar{background:var(--ink);height:20px;color:var(--paper);justify-content:space-between;align-items:center;padding:0 4px;font-size:10px;display:flex}.project-symbol{font-family:var(--font-pixel),monospace;text-align:center;padding:16px 0 8px;font-size:12px;display:block}.mini-code{gap:4px;padding:0 16px;display:flex}.mini-code i{background:var(--blue);width:24px;height:4px;display:block}.mini-code i:nth-child(2){background:var(--red);width:40px}.mini-code i:nth-child(3){background:var(--ink)}.art-corner{font-size:24px;font-family:var(--font-pixel),monospace;position:absolute;top:8px;left:12px}.art-caption{font-size:10px;position:absolute;bottom:4px;right:8px}.tags{flex-wrap:wrap;gap:8px;display:flex}.tags>span{background:var(--paper);border:4px solid var(--ink);padding:0 4px;font-size:10px}.project-open{border-top:4px solid var(--ink);justify-content:space-between;padding:12px 0 0;font-size:10px;font-weight:600;display:flex}.project-open:hover{color:var(--red)}.experience-list{border-top:4px solid var(--ink)}.experience-item{border-bottom:4px solid var(--ink);grid-template-columns:240px 1fr;gap:32px;padding:28px 0;display:grid}.experience-meta p{margin-top:12px;font-weight:600}.experience-meta>span:last-child{font-size:10px}.experience-number{width:40px;height:40px;font-family:var(--font-pixel),monospace;background:var(--yellow);border:4px solid var(--ink);place-items:center;display:grid}.experience-body h3{margin:8px 0 12px;font-size:16px}.experience-body ul,.dialog-content ul{margin-top:8px;padding-left:20px;list-style-type:square}.experience-body li+li{margin-top:4px}.skills-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:24px;display:grid}.skill-card{grid-column:span 2;padding:24px}.skill-card:nth-child(n+4){grid-column:span 3}.skill-title{align-items:center;gap:12px;margin-bottom:24px;display:flex}.skill-icon{white-space:nowrap;font-size:16px;font-weight:600}.skill-card:nth-child(2) .skill-icon{background:var(--yellow)}.skill-card:nth-child(3) .skill-icon{background:var(--blue)}.skill-card:nth-child(4) .skill-icon{background:var(--green)}.skill-card:nth-child(5) .skill-icon{background:var(--yellow)}.education-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.education-card{padding:24px}.education-top{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.education-top>span:last-child{background:var(--yellow);padding:0 8px;font-size:16px}.education-card h3{margin-bottom:16px}.education-card>span{font-size:10px}.pixel-portfolio .cert-heading{margin:32px 0 24px;font-size:10px}.cert-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.certificate{align-items:flex-start;gap:16px;display:flex}.certificate>span{font-size:24px;line-height:1}.certificate h4{font-weight:600}.certificate p{font-size:10px}.contact-section{background:var(--ink);color:var(--paper);border-top:4px solid var(--red);margin-top:64px;padding:48px 0}.contact-grid{grid-template-columns:1fr 1fr;gap:48px;display:grid}.contact-section .eyebrow{color:var(--yellow)}.contact-section h2{margin-bottom:24px;font-size:24px;line-height:1.8}.contact-section h2 span{color:var(--yellow)}.contact-links{gap:12px;margin-top:24px;display:grid}.contact-links a{word-break:break-word;width:fit-content}.contact-links a:hover{color:var(--yellow)}.pixel-portfolio .contact-location{margin-top:24px;font-size:10px}.contact-panel{color:var(--ink);box-shadow:4px 4px 0 var(--yellow);padding:24px}.contact-form{flex-direction:column;align-items:flex-start;gap:12px;margin-top:24px;display:flex}.contact-form label{letter-spacing:.12em;font-size:10px}.contact-form input,.contact-form textarea{border:4px solid var(--ink);background:var(--paper);color:var(--ink);width:100%;box-shadow:none;padding:12px 16px;font-size:12px;line-height:1.7}.contact-form textarea{resize:vertical;min-height:128px}.contact-form input::-moz-placeholder{color:var(--ink);opacity:.5}.contact-form textarea::-moz-placeholder{color:var(--ink);opacity:.5}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--ink);opacity:.5}.contact-form input:focus,.contact-form textarea:focus{box-shadow:inset 0 0 0 2px var(--blue);border-color:var(--ink);outline:none}.contact-form input[aria-invalid=true],.contact-form textarea[aria-invalid=true]{border-color:var(--red)}.form-error{color:var(--ink);font-weight:600}.form-note{font-size:10px}.contact-form .pixel-button{margin-top:8px}.pixel-footer{padding:24px 0}.pixel-footer .max-w-6xl{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.pixel-footer p,.pixel-footer>div>span{font-size:10px}.pixel-portfolio .back-top{z-index:20;padding:8px 12px;font-size:16px;position:fixed;bottom:24px;right:24px}.pixel-dialog{border:4px solid var(--ink);background:var(--paper);width:calc(100% - 48px);max-width:680px;max-height:calc(100dvh - 48px);color:var(--ink);box-shadow:8px 8px 0 var(--ink);margin:auto;padding:0}.pixel-dialog::backdrop{background:var(--ink)}.dialog-bar{background:var(--ink);color:var(--paper);justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.dialog-bar button{background:var(--red);width:40px;height:40px;font-size:24px}.dialog-content{gap:20px;padding:24px;display:grid}.dialog-content h2{overflow-wrap:anywhere;font-size:24px}.dialog-content .eyebrow{margin:0}.project-highlight{background:var(--yellow);padding:8px 12px}@media (max-width:1000px){.pixel-nav nav{gap:12px}.hero-grid{gap:24px}.pixel-portfolio h1{font-size:28px}.hero-bottom{flex-wrap:wrap}.hero-bottom>a{margin-left:0}.hero-copy .pixel-button{padding:12px;font-size:10px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:767px){.nav-inner{flex-wrap:wrap;padding-top:8px;padding-bottom:8px}.menu-toggle{display:block}.pixel-nav nav{grid-template-columns:repeat(3,1fr);gap:8px;width:100%;padding-bottom:8px;display:none}.pixel-nav nav.is-open{display:grid}.pixel-nav nav a{padding:8px}.hero-grid{grid-template-columns:1fr;gap:40px}.pixel-hero{padding-top:40px}.pixel-portfolio h1{font-size:32px}.hero-description{max-width:520px}.developer-console{max-width:480px}.hero-bottom{gap:16px;margin-top:40px}.hero-bottom>div{gap:12px}.hero-bottom>a{display:none}.about-grid{grid-template-columns:1fr;gap:24px;padding-bottom:48px}.about-copy{padding-top:0}.pixel-section{padding-top:48px}.experience-item{grid-template-columns:180px 1fr;gap:24px}.experience-body h3{font-size:12px}.skills-grid{grid-template-columns:1fr 1fr}.skill-card,.skill-card:nth-child(n+4){grid-column:span 1}.skill-card:last-child{grid-column:span 2}.contact-grid{grid-template-columns:1fr;gap:32px}.contact-section{margin-top:48px;padding:40px 0}.contact-panel{max-width:560px}.project-total{display:none}}@media (max-width:479px){.pixel-portfolio h1{font-size:24px;line-height:1.7}.pixel-portfolio h2,.about-grid h2{font-size:16px;line-height:1.8}.pixel-portfolio .eyebrow{letter-spacing:0;font-size:10px}.project-grid,.education-grid,.cert-grid{grid-template-columns:1fr}.project-art{height:184px}.skills-grid{grid-template-columns:1fr}.skill-card:last-child{grid-column:auto}.experience-item{grid-template-columns:1fr;gap:16px}.experience-meta{-moz-column-gap:16px;grid-template-columns:40px 1fr;align-items:center;column-gap:16px;display:grid}.experience-meta .experience-number{grid-row:span 2}.experience-meta p{margin-top:0}.hero-bottom>.small-label{max-width:none}.console-scene{height:288px}.pixel-monitor{width:184px;height:128px;top:104px;right:12px}.monitor-code{padding:4px;font-size:10px}.pixel-person{grid-template-columns:repeat(16,8px);left:0}.scene-label{font-size:10px;top:20px;left:16px}.plus-one{top:72px;right:12px}.plus-two{display:none}.pixel-desk{width:200px}.console-status{padding:8px;font-size:10px}.console-status>span:last-child{display:none}.hero-copy .button-row{gap:12px}.hero-copy .pixel-button{gap:4px;padding:12px 8px;font-size:10px}.contact-panel{padding:20px}.contact-form .pixel-button{gap:8px;padding:12px 8px;font-size:10px}.pixel-portfolio .back-top{bottom:12px;right:12px}.pixel-footer{padding-right:40px}.pixel-dialog{width:calc(100% - 32px)}.dialog-content h2{font-size:16px}}.skill-title{flex-wrap:wrap}.skill-card{min-width:0}.contact-form .pixel-button{max-width:100%}@media (min-width:480px) and (max-width:767px){.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.skill-title h3{overflow-wrap:anywhere}}
