@font-face{font-family:Share Tech Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/share-tech-mono-latin-400-normal.CCqdbj5z.woff2)format("woff2"),url(/_astro/share-tech-mono-latin-400-normal.15MgdvEM.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/orbitron-latin-500-normal.DQ2gt4P1.woff2)format("woff2"),url(/_astro/orbitron-latin-500-normal.BCCupJ8c.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/orbitron-latin-700-normal.4jsRXGGJ.woff2)format("woff2"),url(/_astro/orbitron-latin-700-normal.DmYOh-W9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:900;src:url(/_astro/orbitron-latin-900-normal.DrIi7unX.woff2)format("woff2"),url(/_astro/orbitron-latin-900-normal.BbJatbhp.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#030806;--bg-2:#06110a;--panel:#070f0a;--line:#00ff4129;--line-bright:#00ff4180;--green:#00ff41;--green-dim:#17c948;--cyan:#0af5ff;--pink:#ff2a6d;--text:#c5e8cf;--muted:#6d9c7d;--font-mono:"Share Tech Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--font-display:"Orbitron", var(--font-mono);--nav-h:64px;--glow-green:0 0 12px #00ff418c, 0 0 42px #00ff4138}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 16px)}body{background:var(--bg);background-image:linear-gradient(180deg, #04120b 0%, var(--bg) 320px);color:var(--text);font-family:var(--font-mono);-webkit-font-smoothing:antialiased;margin:0;font-size:16.5px;line-height:1.65;overflow-x:hidden}body:before{content:"";z-index:9990;pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0 2px,#00000024 2px 4px);position:fixed;inset:0}body:after{content:"";z-index:9991;pointer-events:none;background:radial-gradient(120% 90% at 50% 10%,#0000 55%,#0000006b);position:fixed;inset:0}::selection{background:var(--green);color:#01130a}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#040a06}::-webkit-scrollbar-thumb{background:#123f22;border:2px solid #040a06}::-webkit-scrollbar-thumb:hover{background:var(--green-dim)}a{color:var(--green);text-decoration:none}a:hover{text-shadow:0 0 8px #00ff4199}:focus-visible{outline:1px solid var(--cyan);outline-offset:3px}img,svg{max-width:100%}.container{width:min(1120px,100% - 3rem);margin-inline:auto}.skip-link{z-index:10000;background:var(--green);color:#01130a;padding:.5rem 1rem;transition:top .2s;position:absolute;top:-60px;left:1rem}.skip-link:focus{top:.5rem}.nav{z-index:1000;height:var(--nav-h);-webkit-backdrop-filter:blur(10px);background:#03080659;border-bottom:1px solid #0000;transition:background .3s,border-color .3s;position:fixed;top:0;left:0;right:0}.nav[data-scrolled=true]{border-bottom-color:var(--line);background:#030806db}.nav-inner{justify-content:space-between;align-items:center;gap:1rem;height:100%;display:flex}.nav-logo{font-family:var(--font-display);letter-spacing:.14em;color:var(--green);text-shadow:var(--glow-green);white-space:nowrap;font-size:1.15rem;font-weight:700}.nav-logo .dim{color:var(--muted);font-family:var(--font-mono);font-weight:400}.nav-links{align-items:center;gap:1.9rem;margin:0;padding:0;list-style:none;display:flex}.nav-links a{color:var(--text);letter-spacing:.1em;text-transform:lowercase;font-size:.92rem}.nav-links a:hover{color:var(--green)}.nav-links .nav-num{color:var(--cyan);opacity:.85;margin-right:.25rem;font-size:.75rem}.nav-toggle{border:1px solid var(--line);cursor:pointer;background:0 0;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;padding:8px;display:none}.nav-toggle span{background:var(--green);height:2px;transition:transform .25s,opacity .25s;display:block}@media (width<=760px){.nav-toggle{display:flex}.nav-links{top:var(--nav-h);border-bottom:1px solid var(--line);background:#030806f7;flex-direction:column;align-items:flex-start;gap:0;display:none;position:absolute;left:0;right:0}.nav[data-open=true] .nav-links{display:flex}.nav-links li{border-top:1px solid var(--line);width:100%}.nav-links a{padding:1rem 1.5rem;display:block}.nav[data-open=true] .nav-toggle span:first-child{transform:translateY(7px)rotate(45deg)}.nav[data-open=true] .nav-toggle span:nth-child(2){opacity:0}.nav[data-open=true] .nav-toggle span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}}.hero{background:radial-gradient(ellipse 80% 60% at 50% 40%, #06170c 0%, var(--bg) 70%);align-items:center;min-height:100svh;display:flex;position:relative;overflow:hidden}.hero-video{pointer-events:none;opacity:0;transition:opacity 2.2s;position:absolute;inset:0;overflow:hidden}.hero-video.is-live{opacity:1}.hero-video-poster{filter:grayscale(.5)brightness(.46)contrast(1.1);background-position:50%;background-size:cover;position:absolute;inset:0}.hero-video iframe{filter:grayscale(.5)brightness(.46)contrast(1.1);opacity:0;border:0;width:max(100vw,177.78svh);height:max(100svh,56.25vw);transition:opacity 1.8s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-video.is-playing iframe{opacity:1}.hero-video:after{content:"";background:var(--green);opacity:.26;mix-blend-mode:color;position:absolute;inset:0}.hero-canvas{mix-blend-mode:screen;width:100%;height:100%;display:block;position:absolute;inset:0}.hero:after{content:"";z-index:1;pointer-events:none;background:radial-gradient(ellipse 62% 58% at 40% 48%, #02070473, transparent 72%), linear-gradient(180deg, #03080680 0%, transparent 22%, transparent 72%, var(--bg) 100%);position:absolute;inset:0}.hero-overlay{z-index:2;width:100%;padding:calc(var(--nav-h) + 2rem) 0 4rem;position:relative}.hero-kicker{color:var(--muted);min-height:1.6em;margin:0 0 1.2rem;font-size:.95rem}.hero-prompt{color:var(--green-dim)}.type-cursor{color:var(--green);margin-left:2px;animation:1.05s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.hero-title{font-family:var(--font-display);letter-spacing:.06em;color:#eafff0;text-shadow:0 0 18px #00ff4159,0 0 70px #00ff412e;text-transform:uppercase;margin:0 0 1.1rem;font-size:clamp(2.6rem,8.5vw,6.2rem);font-weight:900;line-height:1.05}.hero-role{color:var(--cyan);letter-spacing:.22em;text-transform:uppercase;text-shadow:0 0 14px #0af5ff73;margin:0 0 1.4rem;font-size:clamp(.95rem,2.2vw,1.25rem)}.hero-tagline{max-width:560px;color:var(--muted);margin:0 0 2.4rem;font-size:1.05rem}.hero-cta{flex-wrap:wrap;gap:1rem;display:flex}.hero-hud{z-index:1;pointer-events:none;color:#6d9c7dbf;letter-spacing:.18em;text-transform:uppercase;font-size:.72rem;position:absolute;inset:0}.hero-hud span{position:absolute}.hero-hud .hud-tl{top:calc(var(--nav-h) + 18px);left:24px}.hero-hud .hud-tr{top:calc(var(--nav-h) + 18px);color:#0af5ff99;right:24px}.hero-hud .hud-bl{bottom:22px;left:24px}.hero-hud .hud-br{bottom:22px;right:24px}@media (width<=760px){.hero-hud .hud-tr,.hero-hud .hud-bl{display:none}}.hero-scroll{z-index:2;color:var(--green);font-size:.9rem;animation:2s ease-in-out infinite scroll-pulse;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}@keyframes scroll-pulse{0%,to{opacity:.9;transform:translate(-50%)}50%{opacity:.35;transform:translate(-50%,8px)}}.glitch{position:relative}.glitch:before,.glitch:after{content:attr(data-text);opacity:0;pointer-events:none;text-shadow:none;position:absolute;inset:0}.glitch:before{color:var(--cyan);animation:3.8s step-end infinite glitch-a}.glitch:after{color:var(--pink);animation:3.8s step-end infinite glitch-b}@keyframes glitch-a{0%,86%,94%,to{opacity:0;clip-path:none;transform:none}87%{opacity:.85;clip-path:inset(12% 0 58%);transform:translate(-7px,2px)}90%{opacity:.85;clip-path:inset(62% 0 6%);transform:translate(5px,-2px)}92%{opacity:.85;clip-path:inset(35% 0 38%);transform:translate(-3px,1px)}}@keyframes glitch-b{0%,86%,94%,to{opacity:0;clip-path:none;transform:none}88%{opacity:.85;clip-path:inset(55% 0 18%);transform:translate(6px,-1px)}91%{opacity:.85;clip-path:inset(8% 0 72%);transform:translate(-5px,2px)}93%{opacity:.85;clip-path:inset(42% 0 30%);transform:translate(3px)}}.btn{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--green);border:1px solid var(--green);cursor:pointer;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));background:#00ff410d;padding:.85rem 1.7rem;font-size:.92rem;transition:background .2s,color .2s,box-shadow .2s;display:inline-block}.btn:hover{background:var(--green);color:#01130a;text-shadow:none;box-shadow:0 0 26px #00ff418c}.btn--ghost{color:var(--cyan);border-color:var(--cyan);background:#0af5ff0a}.btn--ghost:hover{background:var(--cyan);color:#001318;box-shadow:0 0 26px #0af5ff80}.section{padding:6.5rem 0;position:relative}.section+.section{border-top:1px solid #00ff4112}.section-head{flex-wrap:wrap;align-items:baseline;gap:1rem;margin-bottom:3rem;display:flex}.section-index{font-family:var(--font-display);color:var(--cyan);letter-spacing:.2em;opacity:.9;font-size:1rem;font-weight:500}.section-title{font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:#eafff0;text-shadow:0 0 16px #00ff414d;margin:0;font-size:clamp(1.5rem,4vw,2.2rem);font-weight:700}.section-head:after{content:"";background:linear-gradient(90deg, var(--line-bright), transparent);flex:1;align-self:center;min-width:60px;height:1px}.section-path{color:var(--muted);font-size:.85rem}.card{border:1px solid var(--line);background:linear-gradient(160deg, #00ff410e, transparent 50%), var(--panel);padding:1.7rem;transition:border-color .25s,transform .25s,box-shadow .25s;position:relative}.card:before,.card:after{content:"";width:15px;height:15px;transition:border-color .25s;position:absolute}.card:before{border-top:2px solid var(--green);border-left:2px solid var(--green);top:-1px;left:-1px}.card:after{border-bottom:2px solid var(--green);border-right:2px solid var(--green);bottom:-1px;right:-1px}.card:hover{border-color:var(--line-bright);transform:translateY(-4px);box-shadow:0 14px 44px -16px #00ff4166}.chips{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.chip{border:1px solid var(--line);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;padding:.18rem .6rem;font-size:.76rem}.term{border:1px solid var(--line);background:#040b07eb;box-shadow:0 0 60px -18px #00ff414d}.term-bar{border-bottom:1px solid var(--line);background:#00ff410d;align-items:center;gap:.55rem;padding:.65rem 1rem;display:flex}.term-dot{opacity:.85;border-radius:50%;width:11px;height:11px}.term-dot--r{background:#ff5f56}.term-dot--y{background:#ffbd2e}.term-dot--g{background:#27c93f}.term-title{color:var(--muted);letter-spacing:.08em;margin-left:.6rem;font-size:.8rem}.term-body{padding:1.8rem}.prompt{color:var(--green);margin:0 0 .2rem}.prompt .cmd{color:var(--cyan)}.term-out{color:var(--text);margin:0 0 1.6rem}.term-out.dim{color:var(--muted)}.stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin-top:2.2rem;display:grid}.stat{border:1px solid var(--line);text-align:center;background:#00ff4109;padding:1.1rem 1rem}.stat-value{font-family:var(--font-display);color:var(--green);text-shadow:var(--glow-green);font-size:1.65rem;font-weight:700;display:block}.stat-label{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin-top:.35rem;font-size:.78rem;display:block}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(min(330px,100%),1fr));gap:1.4rem;display:grid}.project-card{flex-direction:column;gap:.9rem;display:flex}.project-top{justify-content:space-between;align-items:baseline;display:flex}.project-index{font-family:var(--font-display);color:#00ff4147;letter-spacing:.1em;font-size:1.5rem;font-weight:700}.project-card:hover .project-index{color:var(--green);text-shadow:var(--glow-green)}.project-year{color:var(--cyan);letter-spacing:.15em;font-size:.8rem}.project-title{font-family:var(--font-display);letter-spacing:.05em;margin:0;font-size:1.12rem;font-weight:500;line-height:1.35}.project-title a{color:#eafff0}.project-title a:after{content:"";position:absolute;inset:0}.project-card:hover .project-title a{color:var(--green)}.project-summary{color:var(--muted);flex:1;margin:0;font-size:.95rem}.project-open{color:var(--green-dim);letter-spacing:.1em;font-size:.85rem}.project-card:hover .project-open{color:var(--green)}.featured-badge{color:var(--pink);letter-spacing:.2em;text-transform:uppercase;font-size:.72rem}.services-grid{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:1.4rem;display:grid}.service-card{flex-direction:column;gap:.8rem;display:flex}.service-icon{border:1px solid var(--line-bright);width:46px;height:46px;color:var(--green);background:#00ff410f;place-items:center;display:grid;box-shadow:inset 0 0 18px #00ff411f}.service-card:hover .service-icon{box-shadow:inset 0 0 18px #00ff411f,0 0 20px #00ff4159}.service-title{font-family:var(--font-display);letter-spacing:.06em;color:#eafff0;margin:0;font-size:1.05rem;font-weight:500}.service-blurb{color:var(--muted);margin:0;font-size:.93rem}.service-points{flex-direction:column;gap:.35rem;margin:.2rem 0 0;padding:0;list-style:none;display:flex}.service-points li{color:var(--text);padding-left:1.1rem;font-size:.88rem;position:relative}.service-points li:before{content:">";color:var(--green);position:absolute;left:0}.contact-grid{grid-template-columns:minmax(280px,5fr) minmax(300px,7fr);align-items:start;gap:2.5rem;display:grid}@media (width<=860px){.contact-grid{grid-template-columns:1fr}}.contact-list{flex-direction:column;gap:1.3rem;margin:0 0 2rem;padding:0;list-style:none;display:flex}.contact-list .label{color:var(--cyan);letter-spacing:.22em;text-transform:uppercase;margin-bottom:.25rem;font-size:.75rem;display:block}.contact-list .value{overflow-wrap:anywhere;font-size:1.02rem}.status-dot{background:var(--green);border-radius:50%;width:9px;height:9px;margin-right:.5rem;animation:2s ease-in-out infinite status-pulse;display:inline-block;box-shadow:0 0 10px #00ff41e6}@keyframes status-pulse{50%{opacity:.35}}.socials{flex-wrap:wrap;gap:.8rem;display:flex}.socials a{border:1px solid var(--line);color:var(--muted);letter-spacing:.1em;padding:.45rem .9rem;font-size:.85rem;transition:color .2s,border-color .2s,box-shadow .2s}.socials a:hover{color:var(--green);border-color:var(--green);text-shadow:none;box-shadow:0 0 16px #00ff414d}.contact-form{border:1px solid var(--line);background:var(--panel);flex-direction:column;gap:1.2rem;padding:1.8rem;display:flex}.field label{color:var(--muted);letter-spacing:.2em;text-transform:uppercase;margin-bottom:.45rem;font-size:.78rem;display:block}.field label:before{content:"> ";color:var(--green)}.field input,.field textarea{border:1px solid var(--line);width:100%;color:var(--text);font-family:var(--font-mono);resize:vertical;background:#00ff4109;padding:.8rem .95rem;font-size:1rem}.field input:focus,.field textarea:focus{border-color:var(--green);box-shadow:0 0 0 1px var(--green), 0 0 22px #00ff4138;background:#00ff410f;outline:none}.form-row{grid-template-columns:1fr 1fr;gap:1.2rem;display:grid}@media (width<=560px){.form-row{grid-template-columns:1fr}}.form-status{min-height:1.5em;margin:0;font-size:.92rem}.form-status[data-state=ok]{color:var(--green)}.form-status[data-state=err]{color:var(--pink)}.form-status[data-state=busy]{color:var(--cyan)}.hp-field{opacity:0;pointer-events:none;left:-9999px;position:absolute!important}.page{padding:calc(var(--nav-h) + 4rem) 0 6rem}.back-link{color:var(--muted);letter-spacing:.08em;margin-bottom:2.2rem;font-size:.9rem;display:inline-block}.back-link:hover{color:var(--green)}.page-path{color:var(--muted);margin:0 0 .8rem;font-size:.85rem}.page-title{font-family:var(--font-display);letter-spacing:.06em;color:#eafff0;text-transform:uppercase;text-shadow:0 0 18px #00ff414d;margin:0 0 1.6rem;font-size:clamp(1.8rem,5vw,3rem);font-weight:700;line-height:1.15}.meta-grid{border:1px solid var(--line);background:var(--panel);grid-template-columns:repeat(auto-fit,minmax(150px,max-content));gap:1rem 2.5rem;margin:0 0 1.4rem;padding:1.2rem 1.5rem;display:grid}.meta-grid div{min-width:0}.meta-grid dt{color:var(--cyan);letter-spacing:.22em;text-transform:uppercase;margin-bottom:.2rem;font-size:.72rem}.meta-grid dd{color:var(--text);overflow-wrap:anywhere;margin:0}.prose{max-width:760px;margin-top:3rem}.prose h2{font-family:var(--font-display);letter-spacing:.08em;color:var(--green);text-transform:uppercase;margin:2.6rem 0 1rem;font-size:1.3rem;font-weight:500}.prose h2:before{content:"// ";color:var(--muted)}.prose h3{color:var(--cyan);letter-spacing:.06em;margin:2rem 0 .8rem;font-size:1.05rem}.prose p{margin:0 0 1.1rem}.prose ul{margin:0 0 1.2rem;padding-left:0;list-style:none}.prose ul li{margin-bottom:.5rem;padding-left:1.3rem;position:relative}.prose ul li:before{content:">";color:var(--green);position:absolute;left:0}.prose strong{color:#eafff0}.prose code{border:1px solid var(--line);background:#00ff4114;padding:.1em .4em;font-size:.92em}.prose blockquote{border-left:2px solid var(--green);color:var(--muted);margin:1.4rem 0;padding:.2rem 0 .2rem 1.2rem}.footer{border-top:1px solid var(--line);background:linear-gradient(#0000,#00ff410a);padding:2.4rem 0 5rem}.footer-inner{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 2rem;font-size:.85rem;display:flex}.footer a{color:var(--muted)}.footer a:hover{color:var(--green)}.footer .sys{color:var(--green-dim)}.error-page{text-align:center;place-items:center;min-height:100svh;padding:2rem;display:grid}.error-code{font-family:var(--font-display);color:var(--green);text-shadow:var(--glow-green);margin:0;font-size:clamp(5rem,20vw,11rem);font-weight:900;line-height:1}.error-msg{color:var(--muted);letter-spacing:.15em;text-transform:uppercase;margin:1rem 0 2.5rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
