@font-face{font-family:IBM Plex Mono;src:url(/assets/fonts/IBMPlexMono-Regular.ttf) format("truetype");font-display:swap;font-weight:400}@font-face{font-family:IBM Plex Mono;src:url(/assets/fonts/IBMPlexMono-SemiBold.ttf) format("truetype");font-display:swap;font-weight:600}@font-face{font-family:Source Code Pro;src:url(/assets/fonts/SourceCodePro-VariableFont_wght.ttf) format("truetype");font-display:swap;font-weight:200 900}:root{--color-background: #000000;--color-foreground: #ffffff;--color-muted: #c7d7cc;--color-accent: #00ff66;--color-border: #242a24;--color-border-active: #00ff66;--color-card: #030503;--color-card-hover: #050a05;--color-highlight: #b7ff4a;--color-shadow: rgba(0, 255, 102, .26);--color-noise: rgba(255, 255, 255, .035);--font-display: "IBM Plex Mono", "Source Code Pro", ui-monospace, SFMono-Regular, Consolas, monospace;--font-body: "Source Code Pro", "IBM Plex Mono", ui-monospace, SFMono-Regular, Consolas, monospace;--font-data: "IBM Plex Mono", "Source Code Pro", ui-monospace, SFMono-Regular, Consolas, monospace;--max-width: 1180px;--space-page: clamp(1rem, 4vw, 3rem);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--radius-card: 0}*{box-sizing:border-box}html{color-scheme:dark;forced-color-adjust:none;scroll-behavior:smooth}body{forced-color-adjust:none;min-width:320px;margin:0;color:var(--color-foreground);background:linear-gradient(rgba(0,255,102,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(0,255,102,.025) 1px,transparent 1px),var(--color-background);background-size:32px 32px,32px 32px,auto;font-family:var(--font-body);line-height:1.6}body:before{position:fixed;inset:0;z-index:10;content:"";pointer-events:none;background:radial-gradient(ellipse at center,transparent 42%,rgba(0,0,0,.46) 100%),repeating-radial-gradient(circle at 17% 23%,var(--color-noise) 0 1px,transparent 1px 5px),repeating-radial-gradient(circle at 71% 63%,rgba(0,255,102,.025) 0 1px,transparent 1px 7px);opacity:.7}body:after{position:fixed;inset:0;z-index:11;content:"";pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(0,255,102,.025),rgba(0,255,102,.025) 1px,transparent 1px,transparent 5px);opacity:.42;mix-blend-mode:screen}.boot-overlay{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:var(--space-page);color:var(--color-accent);background:var(--color-background);pointer-events:none;opacity:1;transition:opacity .24s ease,visibility .24s ease}.boot-overlay--done{visibility:hidden;opacity:0}.boot-overlay__frame{width:min(100%,48rem);border:1px solid var(--color-border);padding:var(--space-6);box-shadow:0 0 32px #00ff661f}.boot-overlay__kicker,.boot-overlay__line{margin:0;font-family:var(--font-data)}.boot-overlay__kicker{color:var(--color-muted);font-size:.75rem;text-transform:uppercase}.boot-overlay__line{min-height:2.8rem;margin-top:var(--space-3);font-size:clamp(1.2rem,4vw,2.25rem);text-shadow:0 0 18px var(--color-shadow)}img{max-width:100%;display:block}a{color:inherit}:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}.skip-link{position:absolute;top:.75rem;left:.75rem;z-index:20;padding:.65rem .9rem;border:1px solid var(--color-accent);color:var(--color-accent);background:var(--color-background);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header,.site-footer,.hero,.section{width:min(100% - (var(--space-page) * 2),var(--max-width));margin-inline:auto}.site-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border)}.brand-mark{display:inline-flex;align-items:center;gap:var(--space-3);min-width:0;color:var(--color-foreground);font-family:var(--font-data);font-size:.85rem;text-decoration:none}.brand-mark:hover .brand-mark__sigil,.brand-mark:focus-visible .brand-mark__sigil{text-shadow:2px 0 rgba(183,255,74,.38),-2px 0 rgba(0,255,102,.28)}.brand-mark__sigil{display:inline-flex;min-height:2.1rem;align-items:center;border:1px solid var(--color-accent);padding:var(--space-1) var(--space-2);color:var(--color-accent);text-shadow:0 0 12px var(--color-shadow);box-shadow:0 0 18px #00ff6629}.site-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2) var(--space-4);color:var(--color-muted);font-family:var(--font-data);font-size:.84rem}.site-nav a{text-decoration:none}.site-nav a:hover{color:var(--color-accent)}.site-nav a{position:relative}.site-nav a:after{position:absolute;right:0;bottom:-.25rem;left:0;height:1px;content:"";background:var(--color-accent);opacity:0;transform:scaleX(.35);transform-origin:left;transition:opacity .16s ease,transform .16s ease}.site-nav a:hover:after,.site-nav a:focus-visible:after{opacity:1;transform:scaleX(1)}.hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(18rem,.75fr);gap:clamp(2rem,6vw,4rem);align-items:center;min-height:calc(100svh - 5rem);padding:clamp(3rem,8vw,7rem) 0}.eyebrow{margin:0 0 .75rem;color:var(--color-accent);font-family:var(--font-data);font-size:.78rem;text-transform:uppercase}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{margin:0;font-family:var(--font-display);line-height:1.08;letter-spacing:0;text-shadow:0 0 18px rgba(0,255,102,.2)}h1{max-width:12ch;font-size:clamp(3.2rem,8vw,6.8rem)}.hero h1{text-wrap:balance}h2{max-width:14ch;font-size:clamp(2rem,5vw,4.25rem)}h3{font-size:1.05rem}.hero__lead{max-width:45rem;margin:1.35rem 0 0;color:var(--color-muted);font-size:clamp(1rem,2vw,1.2rem)}.hero__actions,.contact-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}.button{display:inline-flex;min-height:2.75rem;align-items:center;justify-content:center;border:1px solid var(--color-border);padding:var(--space-3) var(--space-4);font-family:var(--font-display);font-size:.85rem;text-decoration:none;transition:border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease}.button:hover,.button:focus-visible{border-color:var(--color-accent);box-shadow:0 0 16px #00ff6629}.button--primary{color:var(--color-accent);background:#00ff661f;border-color:var(--color-accent)}.button--secondary{color:var(--color-foreground);background:#00ff660f}.hero-console,.dndtv-panel{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-card);box-shadow:none}.hero-console{position:relative;padding:var(--space-5)}.hero-console:before,.hero-console:after,.project-card:before,.project-card:after{position:absolute;width:1.4rem;height:1.4rem;content:"";pointer-events:none}.hero-console:before,.project-card:before{top:-1px;left:-1px;border-top:2px solid var(--color-accent);border-left:2px solid var(--color-accent)}.hero-console:after,.project-card:after{right:-1px;bottom:-1px;border-right:2px solid var(--color-accent);border-bottom:2px solid var(--color-accent)}.hero-console img{width:100%;border:1px solid rgba(0,255,102,.2)}.console-grid,.signal-strip{display:grid;gap:var(--space-2)}.console-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:var(--space-4)}.console-grid span,.signal-strip span{border:1px solid rgba(0,255,102,.18);padding:var(--space-3);color:var(--color-muted);font-family:var(--font-data);font-size:.72rem;text-shadow:0 0 10px rgba(0,255,102,.2)}.section{padding:clamp(3rem,8vw,6rem) 0}.section-header{max-width:56rem;margin-bottom:var(--space-6)}.section-summary{max-width:44rem;margin:var(--space-4) 0 0;color:var(--color-muted)}.feature-grid,.project-grid,.stack-grid{display:grid;gap:var(--space-4)}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-grid article,.service-list article,.stack-card,.project-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-card);box-shadow:none}.feature-grid article,.service-list article,.stack-card,.project-card{transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.feature-grid article:hover,.service-list article:hover,.stack-card:hover,.project-card:hover{border-color:var(--color-border-active);background:var(--color-card-hover)}.feature-grid article,.service-list article,.stack-card{padding:var(--space-4)}.feature-grid p,.service-list p,.stack-card li,.project-card p,.project-card dd,.contact-actions p{color:var(--color-muted)}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-card{position:relative;overflow:hidden}.project-card__media{display:grid;min-height:12rem;place-items:center;border-bottom:1px solid var(--color-border);color:#00ff66b8;background:linear-gradient(135deg,rgba(0,255,102,.2),transparent 35%),repeating-linear-gradient(90deg,rgba(0,255,102,.07),rgba(0,255,102,.07) 1px,transparent 1px,transparent 16px),var(--color-background);font-family:var(--font-data);font-size:.78rem;text-shadow:0 0 12px var(--color-shadow);text-transform:uppercase}.project-card__body{padding:var(--space-4)}.project-card__topline{display:flex;align-items:start;justify-content:space-between;gap:var(--space-4)}.project-card__topline span{flex:0 0 auto;border:1px solid rgba(0,255,102,.22);padding:var(--space-1) var(--space-2);color:var(--color-accent);font-family:var(--font-data);font-size:.68rem}.project-card:hover h3,.project-card:focus-within h3{color:var(--color-accent);animation:controlledGlitch .2s steps(2,end) 1;text-shadow:0 0 14px rgba(0,255,102,.38)}dl{display:grid;gap:var(--space-3);margin:var(--space-4) 0 0}dt{color:var(--color-foreground);font-family:var(--font-data);font-size:.75rem;text-transform:uppercase}dd{margin:var(--space-1) 0 0}.section--split{display:grid;grid-template-columns:.8fr 1.2fr;gap:var(--space-6)}.service-list{display:grid;gap:var(--space-4)}.dndtv-panel{padding:var(--space-6)}.signal-strip{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:var(--space-6)}.stack-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.stack-card ul{display:grid;gap:var(--space-2);margin:var(--space-4) 0 0;padding:0;list-style:none}.stack-card li:before{color:var(--color-accent);font-family:var(--font-data);content:"[ ] "}.subsection{margin-top:var(--space-6)}.contact-section{padding-bottom:clamp(4rem,9vw,7rem)}.contact-actions p{width:100%;margin:0;border:1px solid var(--color-border);border-radius:var(--radius-card);padding:var(--space-4);background:var(--color-card)}.contact-actions a{color:var(--color-accent);text-decoration-color:#00ff6680;text-underline-offset:.2em}.contact-actions a:hover,.contact-actions a:focus-visible{text-shadow:0 0 14px var(--color-shadow)}.site-footer{display:flex;justify-content:space-between;gap:var(--space-4);padding:var(--space-5) 0 var(--space-6);border-top:1px solid var(--color-border);color:var(--color-muted);font-size:.78rem}.site-footer p{margin:0}@keyframes cursorBlink{0%{opacity:1}to{opacity:0}}.blinking-cursor{display:inline-block;color:var(--color-accent);font-family:var(--font-data);animation:cursorBlink .5s step-end infinite;text-shadow:0 0 14px var(--color-shadow)}@keyframes controlledGlitch{0%{text-shadow:2px 0 rgba(255,0,80,.75),-2px 0 rgba(0,170,255,.7);transform:translate(0)}50%{text-shadow:-1px 0 rgba(255,0,80,.7),1px 0 rgba(0,170,255,.65);transform:translate(1px)}to{text-shadow:0 0 14px rgba(0,255,102,.38);transform:translate(0)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:1ms!important}.boot-overlay{display:none}}@media(max-width:900px){.hero,.section--split{grid-template-columns:1fr}.feature-grid,.project-grid,.stack-grid,.signal-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.site-header,.site-footer{align-items:flex-start;flex-direction:column}.site-nav{justify-content:flex-start}h1{max-width:10ch}.feature-grid,.project-grid,.stack-grid,.signal-strip,.console-grid{grid-template-columns:1fr}.project-card__topline{flex-direction:column}}
