:root{--accent:#ffb000;--vignette:rgba(0,0,0,.5);--accent-dim:color-mix(in srgb, var(--accent) 38%, #4a4a46);--line:color-mix(in srgb, var(--accent) 11%, #1e1e1c);--muted:color-mix(in srgb, var(--accent) 12%, #a09e98);--bright:color-mix(in srgb, var(--accent) 6%,  #ececea);--bg:color-mix(in srgb, var(--accent) 4%,  #0a0a09);--field:color-mix(in srgb, #000 62%, var(--bg))}html[data-theme=light]{--field:color-mix(in srgb, #000 7%, var(--bg))}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{margin:0;padding:0;background:var(--bg);overflow-x:clip}html.booting,html.booting body{overflow:hidden;height:100%}body{font-family:Archivo,sans-serif;color:var(--bright)}::selection{background:var(--accent);color:#0a0a09}a{color:var(--bright);text-decoration:none}a:hover{color:var(--accent)}img{max-width:100%}button,input,select,textarea{border:0}@keyframes blink{0%,49%{opacity:1}100%,50%{opacity:0}}@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}@keyframes navDrop{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}#boot{position:fixed;inset:0;z-index:60;cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--accent) 6%,transparent) 0,transparent 58%),radial-gradient(ellipse at center,transparent 42%,rgba(0,0,0,.62) 100%),var(--bg);transition:opacity .3s ease}html.noboot #boot{display:none}#boot.done{opacity:0;pointer-events:none}#boot::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.26) 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,rgba(255,0,0,.045) 0 1px,rgba(0,255,0,.045) 1px 2px,rgba(0,80,255,.045) 2px 3px);box-shadow:inset 0 0 150px 46px rgba(0,0,0,.55)}#boot::after{content:"";position:absolute;top:0;left:0;right:0;height:26vh;z-index:3;pointer-events:none;background:linear-gradient(transparent,color-mix(in srgb,var(--accent) 8%,transparent),transparent);animation:crtRoll 11s linear infinite}@keyframes crtRoll{from{transform:translateY(-28vh)}to{transform:translateY(100vh)}}.boot-inner{position:relative;z-index:1;text-align:center;font-family:'IBM Plex Mono',monospace;animation:crtOn .62s cubic-bezier(.2,.85,.25,1) both,crtFlicker 9s steps(1) infinite .7s,crtJump 14s steps(1) infinite 1.6s}@keyframes crtOn{0%{opacity:0;transform:scale(1.35,.004);filter:brightness(7) blur(1px)}38%{opacity:1;transform:scale(1.2,.006);filter:brightness(6) blur(1px)}62%{transform:scale(1,.3);filter:brightness(2.6)}100%{opacity:1;transform:none;filter:none}}@keyframes crtFlicker{0%,96%{opacity:1}96.6%{opacity:.84}97.2%{opacity:1}98%{opacity:.91}98.6%{opacity:1}}@keyframes crtJump{0%,92%{transform:none;filter:none}92.4%{transform:translate(-5px,2px) skewX(-1.2deg);filter:brightness(1.6)}92.8%{transform:translate(6px,-3px) skewX(1deg);filter:brightness(.7)}93.2%{transform:translate(-2px,1px);filter:none}100%,93.6%{transform:none;filter:none}}.boot-logo{width:64px;height:64px;display:block;margin:0 auto 22px;background:var(--accent);-webkit-mask:url('media/logo_flat.svg') center/contain no-repeat;mask:url('media/logo_flat.svg') center/contain no-repeat;filter:drop-shadow(0 0 12px color-mix(in srgb, var(--accent) 60%, transparent))}.boot-line{font-size:12px;letter-spacing:.18em;color:var(--accent);text-shadow:-.6px 0 0 rgba(255,40,80,.45),.6px 0 0 rgba(0,220,255,.4),0 0 12px color-mix(in srgb,var(--accent) 55%,transparent);animation:crtSplit 11s steps(1) infinite 3.4s}@keyframes crtSplit{0%,94%{text-shadow:-.6px 0 0 rgba(255,40,80,.45),.6px 0 0 rgba(0,220,255,.4),0 0 12px color-mix(in srgb,var(--accent) 55%,transparent)}94.5%{text-shadow:-5px 0 0 rgba(255,40,80,.8),5px 0 0 rgba(0,220,255,.75),0 0 16px color-mix(in srgb,var(--accent) 65%,transparent)}95%{text-shadow:4px 0 0 rgba(255,40,80,.75),-4px 0 0 rgba(0,220,255,.7),0 0 16px color-mix(in srgb,var(--accent) 65%,transparent)}100%,95.5%{text-shadow:-.6px 0 0 rgba(255,40,80,.45),.6px 0 0 rgba(0,220,255,.4),0 0 12px color-mix(in srgb,var(--accent) 55%,transparent)}}.boot-line.dim{color:var(--accent-dim);margin-top:6px;font-size:11px}.boot-bar{width:260px;height:12px;margin:22px auto 0;padding:2px;background:var(--field)}#boot-fill{display:block;height:100%;width:0;background:repeating-linear-gradient(90deg,var(--accent) 0 6px,transparent 6px 9px);filter:drop-shadow(0 0 6px color-mix(in srgb, var(--accent) 70%, transparent));transition:width .25s ease}.boot-status{font-size:11px;letter-spacing:.22em;color:var(--accent-dim);margin-top:14px}.boot-status .cursor{animation:blink 1.1s step-end infinite}.boot-status.flash{color:var(--accent);text-shadow:0 0 12px color-mix(in srgb,var(--accent) 55%,transparent);animation:blink .9s step-end infinite}#bg3d{position:fixed;inset:0;width:100vw;height:100vh;z-index:0}.fx-vignette{position:fixed;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at center,transparent 55%,var(--vignette) 100%)}.fx-scanlines{position:fixed;inset:0;z-index:1;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.12) 0 1px,transparent 1px 3px)}html.no3d #bg3d{display:none}html.no3d #top{height:100svh}html.no3d .hero-sticky::before{content:"";position:absolute;inset:0;background:linear-gradient(color-mix(in srgb,var(--accent) 14%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--accent) 14%,transparent) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse at 70% 60%,#000 0%,transparent 72%);mask-image:radial-gradient(ellipse at 70% 60%,#000 0%,transparent 72%)}.nav{position:fixed;top:0;left:0;right:0;z-index:30;display:flex;justify-content:space-between;align-items:center;padding:20px 44px;font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.12em;background:linear-gradient(color-mix(in srgb,var(--bg) 85%,transparent),transparent);transition:background .25s ease,border-color .25s ease,box-shadow .25s ease}.nav.scrolled{background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 6px 24px color-mix(in srgb,#000 30%,transparent)}.nav-logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:13px}.logo-mark{width:30px;height:30px;display:block;background:var(--accent);-webkit-mask:url('media/logo_flat.svg') center/contain no-repeat;mask:url('media/logo_flat.svg') center/contain no-repeat}.nav-logo .tld{color:var(--accent)}.nav-links{display:flex;gap:30px}.nav-links a{color:var(--muted)}.nav-links a:hover{color:var(--accent)}.nav-cta{color:var(--accent);padding:8px 16px}.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;padding:0;background:0 0;cursor:pointer}.nav-toggle span{display:block;width:20px;height:2px;margin:0 auto;background:var(--accent);transition:transform .25s ease,opacity .2s ease}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.settings{position:fixed;right:22px;bottom:22px;z-index:40;display:flex;flex-direction:column-reverse;align-items:flex-end;gap:12px}.settings-btn{width:46px;height:46px;background:color-mix(in srgb,var(--bg) 80%,transparent);color:var(--accent);font-size:19px;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.settings-btn:hover{border-color:var(--accent)}.settings-panel{width:232px;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:18px 18px 20px;display:none;flex-direction:column;gap:16px}.settings.open .settings-panel{display:flex}.settings-title{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.18em;color:var(--accent-dim)}.settings-label{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;color:var(--accent);margin-bottom:10px}.swatches{display:flex;gap:10px}.swatch{width:28px;height:28px;cursor:pointer;padding:0}.swatch.active{border:2px solid var(--bright)}.modes{display:flex;gap:8px}.boot-btn,.mode-btn,.sound-btn{flex:1;font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.1em;padding:9px 0;cursor:pointer;background:0 0;color:var(--bright)}.boot-btn.active,.mode-btn.active,.sound-btn.active{border-color:var(--accent)}#top{height:340vh;position:relative;z-index:2}#hero-track{position:absolute;inset:0}.hero-sticky{position:sticky;top:0;height:100vh;height:100svh;pointer-events:none}.hero-intro{position:absolute;left:44px;top:24vh;max-width:640px;opacity:clamp(0, calc(1 - (var(--dive, 0) - .22) * 6), 1)}.hero-kicker{font-family:'IBM Plex Mono',monospace;font-size:13px;letter-spacing:.2em;color:var(--accent)}.hero-name{font-weight:900;font-size:clamp(54px, 11vw, 108px);line-height:.94;letter-spacing:-.04em;margin:20px 0 0}.hero-sub{font-size:19px;color:var(--muted);margin-top:22px;max-width:440px;line-height:1.6}.hero-band-wrap{position:absolute;left:0;right:0;top:16vh;display:flex;justify-content:center;opacity:clamp(0, min(calc((var(--dive, 0) - .38) * 7), calc(1 - (var(--dive, 0) - .68) * 7)), 1)}.hero-band{text-align:center;flex:1;background:color-mix(in srgb,var(--bg) 72%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:28px 44px 32px}.hero-band-kicker{font-family:'IBM Plex Mono',monospace;font-size:14px;letter-spacing:.22em;color:var(--accent)}.hero-band-line{font-weight:900;font-size:clamp(28px, 5.8vw, 56px);letter-spacing:-.02em;margin-top:14px}.hero-bottom{position:absolute;left:0;right:0;bottom:calc(5vh + env(safe-area-inset-bottom));text-align:center;font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.24em}.hero-scroll{color:var(--accent-dim);opacity:clamp(0, calc(1 - var(--dive, 0) * 7), 1);pointer-events:auto;cursor:pointer;background:0 0;border:0;font:inherit;font-size:12px;letter-spacing:.24em;padding:10px 0;animation:bounce 1.6s ease-in-out infinite}.hero-scroll .arrow{display:inline-block}.hero-connected{color:var(--accent);font-size:20px;font-weight:700;letter-spacing:.3em;text-shadow:0 0 16px color-mix(in srgb,var(--accent) 70%,transparent),0 0 42px color-mix(in srgb,var(--accent) 35%,transparent);opacity:clamp(0, calc((var(--dive, 0) - .8) * 6), 1)}.hero-connected .cursor{animation:blink 1.1s step-end infinite}.site-main{position:relative;z-index:10;background:linear-gradient(180deg,transparent 0,color-mix(in srgb,var(--bg) 82%,transparent) 22vh,color-mix(in srgb,var(--bg) 88%,transparent) 55vh)}html.no3d .site-main{background:linear-gradient(180deg,transparent 0,color-mix(in srgb,var(--bg) 94%,transparent) 22vh,var(--bg) 55vh)}.section{max-width:1200px;margin:0 auto;padding:120px 44px 40px}#contact,#flagships,#log,#range,#shelf,#work{content-visibility:auto;contain-intrinsic-size:auto 1200px}.sec-head{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:18px}.sec-title{font-weight:900;font-size:clamp(38px, 7vw, 64px);letter-spacing:-.03em}.sec-kicker{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--accent-dim);letter-spacing:.14em}.kicker{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.18em;color:var(--accent)}.meta{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--accent-dim);margin-top:18px;letter-spacing:.08em}.meta a{color:var(--accent)}[data-reveal]{opacity:0;transform:translateY(36px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}[data-reveal].rv{opacity:1;transform:none}.rv-d1{transition-delay:.1s}[data-tilt]{transform-style:preserve-3d;will-change:transform;transition:transform .2s ease-out}.intro.section{padding:16vh 44px 60px}.statement{font-weight:800;font-size:clamp(28px, 4.6vw, 44px);letter-spacing:-.02em;line-height:1.15;margin-top:18px;max-width:900px}.work-rows{display:flex;flex-direction:column;gap:80px;margin-top:70px}.work-row{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center}.work-row.flip{grid-template-columns:1fr 1.15fr}.work-title{font-weight:800;font-size:clamp(28px, 4.5vw, 38px);letter-spacing:-.02em;margin-top:12px}.work-body{font-size:15.5px;line-height:1.7;color:var(--muted);margin-top:16px}.shot{overflow:hidden}.shot img{width:100%;height:auto;display:block}.plate{background:color-mix(in srgb,var(--accent) 3%,transparent);font-family:'IBM Plex Mono',monospace}.plate-head{font-size:11px;letter-spacing:.16em;color:var(--accent);padding:13px 20px}.plate-body{margin:0}.plate-row{display:grid;grid-template-columns:64px 1fr;gap:16px;padding:12px 20px}.plate-row:last-child{border-bottom:none}.plate-row dt{font-size:10.5px;letter-spacing:.14em;color:var(--accent-dim);padding-top:2px}.plate-row dd{margin:0;font-size:12.5px;line-height:1.5;color:var(--muted);letter-spacing:.02em}.flag{display:grid;grid-template-columns:1fr 380px;gap:60px;margin-top:70px}.flag.flip{grid-template-columns:480px 1fr;margin-top:90px}.flag-title{font-weight:900;font-size:clamp(44px, 9vw, 72px);letter-spacing:-.03em;line-height:1;margin-top:12px}.flag-body{font-size:16px;line-height:1.7;color:var(--muted);margin-top:18px;max-width:560px}.pull-quote{border-left:2px solid var(--accent);padding:10px 0 10px 22px;margin-top:24px;font-size:17px;color:var(--bright);font-style:italic}.pull-quote cite{font-style:normal;font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--accent-dim);display:block;margin-top:8px}.flag-stats{display:flex;gap:36px;margin-top:28px;font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--accent-dim);flex-wrap:wrap}.flag-stats b{color:var(--accent);font-weight:700}.flag-links{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--accent-dim);margin-top:20px;letter-spacing:.08em}.flag-links a{color:var(--accent)}.fig{overflow:hidden;align-self:start;margin:0}.fig img{width:100%;height:auto;display:block}.fig figcaption{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--accent-dim);padding:12px 16px;letter-spacing:.1em}.shelf-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:70px}.shelf-card{background:var(--bg)}.shelf-card img{width:100%;display:block;aspect-ratio:16/9;object-fit:cover}.shelf-card:last-child:nth-child(odd){grid-column:1/-1}.shelf-card:last-child:nth-child(odd) img{aspect-ratio:16/10}.shelf-card:last-child:nth-child(odd) .shelf-text{max-width:76ch}.shelf-card-body{padding:26px 28px 30px}.shelf-kicker{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;color:var(--accent)}.shelf-title{font-weight:800;font-size:26px;margin-top:8px}.shelf-text{font-size:14px;line-height:1.65;color:var(--muted);margin-top:8px}.chip-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:26px;margin-top:30px}.chip{position:relative;background:#17171a;border-radius:4px;padding:18px 20px;color:#c8cacd;box-shadow:0 2px 0 #000}.chip::after,.chip::before{content:"";position:absolute;left:14px;right:14px;height:6px;background:repeating-linear-gradient(90deg,var(--accent) 0 8px,transparent 8px 20px);opacity:.75}.chip::before{top:-6px}.chip::after{bottom:-6px}.chip .pin1{width:8px;height:8px;border-radius:50%;background:#c8cacd;opacity:.45;margin-bottom:10px}.chip .part{font-family:'IBM Plex Mono',monospace;font-weight:700;font-size:16px;letter-spacing:.04em}.chip .spec{font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:#8a8d92;margin-top:6px;line-height:1.6;letter-spacing:.04em}.range-quote{font-size:19px;color:var(--muted);margin-top:28px;max-width:760px;line-height:1.6;font-style:italic}.range-quote b{color:var(--bright);font-weight:400}.skills{margin-top:48px}.skills-head{font-family:'IBM Plex Mono',monospace;font-size:13px;padding:14px 24px;color:var(--accent)}.skills-head span{color:var(--accent-dim)}.skills-row{display:grid;grid-template-columns:200px 1fr;gap:20px;padding:16px 24px;align-items:baseline}.skills-row:last-child{border-bottom:none}.skills-cat{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.16em;color:var(--accent)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips span{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--muted);background:var(--field);padding:6px 12px;white-space:nowrap}.upstream{margin-top:60px;padding:26px 30px}.upstream-title{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.16em;color:var(--accent)}.upstream .chips{gap:10px;margin-top:16px}.upstream .chips span{font-size:12px}.log-rows{margin-top:60px;display:flex;flex-direction:column}.log-row{display:grid;grid-template-columns:140px 1fr;gap:30px;padding:20px 0}.log-row[data-reveal]{transform:translateY(30px);transition-duration:.7s}.log-row[data-reveal].rv{transform:none}.log-row:last-child{border-bottom:none}.log-date{font-family:'IBM Plex Mono',monospace;color:var(--accent);font-size:14px}.log-body{font-size:15px;color:var(--muted);line-height:1.6}.log-row.now .log-body{color:var(--bright);font-weight:600}.contact.section{padding:140px 44px 60px}.contact-inner{text-align:center}.contact-logo{width:84px;height:84px;display:block;margin:0 auto 26px;background:var(--accent);-webkit-mask:url('media/logo_flat.svg') center/contain no-repeat;mask:url('media/logo_flat.svg') center/contain no-repeat}.contact-kicker{font-family:'IBM Plex Mono',monospace;font-size:13px;letter-spacing:.22em;color:var(--accent)}.contact-pitch{font-size:17px;color:var(--muted);margin-top:30px;max-width:560px;margin-left:auto;margin-right:auto;line-height:1.7}.cform{max-width:640px;margin:48px auto 0;text-align:left;background:color-mix(in srgb,var(--accent) 3%,transparent)}.cform-head{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.14em;color:var(--accent-dim);padding:12px 20px}.cform-cols{display:grid;grid-template-columns:1fr 1fr;gap:0}.cform label{display:block;padding:18px 20px 0}.cform .flabel{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;color:var(--accent)}.cform input{display:block;width:100%;margin-top:8px;background:var(--field);border:none;padding:11px 13px;font-family:'IBM Plex Mono',monospace;font-size:14px;color:var(--bright);outline:0;border-radius:0}.cform input:focus{background:color-mix(in srgb,var(--accent) 8%,var(--field))}.cform .msg{padding:18px 20px}.cform textarea{display:block;width:100%;margin-top:8px;background:var(--field);padding:12px 14px;font-family:'IBM Plex Mono',monospace;font-size:14px;color:var(--bright);outline:0;resize:vertical;border-radius:0}.cform textarea:focus{background:color-mix(in srgb,var(--accent) 8%,var(--field))}.cform ::placeholder{color:var(--accent-dim);opacity:1}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.captcha{margin:0 20px 18px;background:color-mix(in srgb,var(--bg) 60%,transparent);padding:14px 16px;max-width:320px}.captcha-row{display:flex;align-items:center;gap:14px}.captcha-btn{width:26px;height:26px;flex:none;background:0 0;color:var(--accent);font-family:'IBM Plex Mono',monospace;font-size:15px;line-height:1;cursor:pointer;padding:0}.captcha-btn:hover{border-color:var(--accent)}.captcha-label{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--bright);letter-spacing:.06em}.captcha-note{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--accent-dim);letter-spacing:.1em;margin-top:3px}#turnstile-box:not(:empty){margin-top:12px}.cform-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 20px 20px}.cform-status{font-family:'IBM Plex Mono',monospace;font-size:11.5px;color:var(--accent-dim);letter-spacing:.1em}.cform-status a{color:var(--accent)}.transmit{background:var(--accent);color:#0a0a09;border:none;font-family:'IBM Plex Mono',monospace;font-weight:700;font-size:14px;letter-spacing:.08em;padding:14px 28px;cursor:pointer;flex:none}.transmit:hover{filter:brightness(1.15)}.transmit:disabled{opacity:.55;cursor:default;filter:none}.socials{display:flex;justify-content:center;gap:32px;margin-top:36px;font-family:'IBM Plex Mono',monospace;font-size:13px;letter-spacing:.08em;flex-wrap:wrap}.socials .em{color:var(--accent)}.footer{padding:24px 44px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.1em;color:var(--accent-dim)}.footer a{color:var(--accent-dim);text-decoration:underline}@media (max-width:1080px){.work-row,.work-row.flip{grid-template-columns:1fr;gap:28px}.work-row .shot{order:-1}.flag,.flag.flip{grid-template-columns:1fr;gap:36px}.flag .fig{order:2;max-width:480px}.chip-row{grid-template-columns:1fr 1fr}.hero-band-wrap{display:none}.hero-intro{isolation:isolate}.hero-intro::before{content:"";position:absolute;inset:-40px -30px;z-index:-1;pointer-events:none;background:radial-gradient(120% 90% at 30% 45%,color-mix(in srgb,var(--bg) 80%,transparent) 0,color-mix(in srgb,var(--bg) 55%,transparent) 45%,transparent 75%)}}@media (max-width:760px){.nav{padding:16px 20px;flex-wrap:wrap}.nav-cta{display:none}.nav-toggle{display:flex}.nav:has(.nav-links.open){background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.nav-links{display:none;order:3;flex-basis:100%;flex-direction:column;gap:0;margin:14px -20px 0;padding:6px 20px 4px}.nav-links.open{display:flex;counter-reset:navItem;animation:navDrop .3s ease both}.nav-links a{position:relative;display:flex;align-items:center;gap:12px;padding:15px 6px;font-family:'IBM Plex Mono',monospace;font-size:14px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);transition:color .2s ease,background .2s ease,padding-left .2s ease}.nav-links a::before{content:"0"counter(navItem);counter-increment:navItem;font-size:11px;color:var(--accent-dim);transition:color .2s ease}.nav-links a:last-child{border-bottom:none}.nav-links a:active,.nav-links a:hover{color:var(--accent);padding-left:14px;background:color-mix(in srgb,var(--accent) 9%,transparent)}.nav-links a:active::before,.nav-links a:hover::before{color:var(--accent)}.nav-links.open{counter-reset:navItem}.contact.section,.intro.section,.section{padding-left:24px;padding-right:24px}.hero-intro{left:24px;right:24px}.sec-head{flex-direction:column;align-items:flex-start;gap:8px}.shelf-grid{grid-template-columns:1fr}.cform-cols{grid-template-columns:1fr}.cform-cols label:first-child{border-right:none}.skills-row{grid-template-columns:1fr;gap:10px}.log-row{grid-template-columns:90px 1fr;gap:16px}.flag-stats{gap:22px}.settings{right:14px;bottom:14px}.footer{padding:24px 20px}#top{height:260vh}.hero-intro{top:20vh}.hero-name{font-size:clamp(46px,15vw,82px);margin-top:14px}.hero-sub{font-size:17px;margin-top:16px}.hero-band{padding:22px 24px 26px}.hero-band-line{font-size:clamp(24px,6.4vw,40px)}.hero-band-kicker{font-size:12px}.cform-foot{flex-direction:column;align-items:stretch;gap:14px}.cform-foot .transmit{width:100%;padding:16px}.captcha{max-width:none}}@media (max-width:560px){.chip-row{grid-template-columns:1fr}.captcha-btn{width:38px;height:38px}.swatch{width:38px;height:38px}.settings-btn{width:52px;height:52px}}body.article{background:var(--bg)}.art-wrap{max-width:1200px;margin:0 auto;padding:150px 44px 0}.art-back{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.14em;color:var(--accent-dim)}.art-back a{color:var(--accent-dim)}.art-back a:hover{color:var(--accent)}.art-head{padding-bottom:34px;margin-top:26px}.art-kicker{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;color:var(--accent)}.art-title{font-weight:900;font-size:clamp(44px, 9vw, 84px);letter-spacing:-.035em;line-height:1;margin:14px 0 0}.art-dek{font-size:clamp(18px, 2.3vw, 23px);line-height:1.45;color:var(--muted);max-width:42em;margin-top:20px}.art-links{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.08em;color:var(--accent-dim);margin-top:24px}.art-links a{color:var(--accent)}.art-specs{display:grid;grid-template-columns:repeat(3,1fr);margin-top:40px}.art-spec{background:var(--bg);padding:16px 18px}.art-spec dt{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.16em;color:var(--accent);text-transform:uppercase}.art-spec dd{margin:7px 0 0;font-size:14px;line-height:1.5;color:var(--muted)}.art-hero{margin:40px 0 0}.art-hero img{width:100%;height:auto;display:block}.art-body{max-width:74ch;margin:0 auto;padding:56px 0 40px;font-size:17px;line-height:1.72;color:var(--muted)}.art-body>:first-child{margin-top:0}.art-body h2{font-family:Archivo,sans-serif;font-weight:800;font-size:clamp(26px, 3.4vw, 34px);letter-spacing:-.02em;line-height:1.15;color:var(--bright);margin:64px 0 0}.art-body h2+p{margin-top:16px}.art-body h3{font-weight:700;font-size:20px;letter-spacing:-.01em;color:var(--bright);margin:38px 0 0}.art-body h3+p{margin-top:10px}.art-body p{margin:20px 0 0}.art-body strong{color:var(--bright);font-weight:700}.art-body a{color:var(--accent)}.art-body a:hover{border-bottom-color:var(--accent)}.art-body ol,.art-body ul{margin:20px 0 0;padding-left:22px}.art-body li{margin-top:9px}.art-body li::marker{color:var(--accent-dim)}.art-body hr{border:0;margin:56px 0 0}.art-body code{font-family:'IBM Plex Mono',monospace;font-size:.88em;color:var(--bright);background:color-mix(in srgb,var(--accent) 8%,transparent);border-radius:3px;padding:1px 5px}.art-body pre{margin:26px 0 0;padding:20px 22px;background:color-mix(in srgb,var(--accent) 3%,#080807);overflow-x:auto;font-family:'IBM Plex Mono',monospace;font-size:13px;line-height:1.62;color:var(--muted)}.art-body pre code{background:0 0;border:0;padding:0;font-size:inherit;color:inherit}.art-fig{margin:44px 0 0;width:min(1112px,92vw);margin-left:calc(50% - min(556px,46vw))}.art-fig img{width:100%;height:auto;display:block}.art-fig figcaption,.art-hero figcaption{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.1em;color:var(--accent-dim);margin-top:12px;text-transform:uppercase}.art-fig.narrow{width:auto;margin-left:0}.art-embed{aspect-ratio:16/9;background:#000}.art-embed iframe{width:100%;height:100%;display:block;border:0}.art-note{margin:32px 0 0;padding:18px 22px;border-left:2px solid var(--accent);background:color-mix(in srgb,var(--accent) 5%,transparent);font-size:15.5px;line-height:1.62}.art-note b{color:var(--accent);font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;display:block;margin-bottom:7px;text-transform:uppercase}.art-note p{margin:10px 0 0}.art-pull{margin:48px 0 0;font-family:Archivo,sans-serif;font-weight:800;font-size:clamp(21px, 2.8vw, 27px);line-height:1.3;letter-spacing:-.015em;color:var(--bright)}.art-pull cite{display:block;font-family:'IBM Plex Mono',monospace;font-weight:400;font-size:11px;letter-spacing:.14em;color:var(--accent-dim);font-style:normal;margin-top:14px;text-transform:uppercase}.art-tablewrap{margin:30px 0 0;overflow-x:auto}.art-body table{border-collapse:collapse;width:100%;font-size:14.5px}.art-body td,.art-body th{text-align:left;padding:11px 16px;vertical-align:top}.art-body th{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.14em;color:var(--accent);text-transform:uppercase;white-space:nowrap}.art-body tr:last-child td{border-bottom:0}.art-body td code{white-space:nowrap}.art-foot{max-width:1200px;margin:0 auto;padding:20px 44px 110px}.art-next{display:grid;grid-template-columns:1fr 1fr;margin-top:30px}.art-next a{background:var(--bg);padding:26px 28px;display:block}.art-next a:hover{background:color-mix(in srgb,var(--accent) 5%,var(--bg))}.art-next .lbl{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.16em;color:var(--accent);text-transform:uppercase}.art-next .ttl{font-weight:800;font-size:22px;letter-spacing:-.015em;color:var(--bright);margin-top:8px}.art-next .sub{font-size:13.5px;line-height:1.55;color:var(--muted);margin-top:6px}@media (max-width:900px){.art-wrap{padding:120px 24px 0}.art-foot{padding:20px 24px 80px}.art-body{font-size:16px;padding-top:40px}.art-fig{width:auto;margin-left:0}.art-specs{grid-template-columns:repeat(2,1fr)}.art-next{grid-template-columns:1fr}}@media (max-width:520px){.art-specs{grid-template-columns:1fr}}.resume{display:none}@media print{@page{margin:14mm}html{--accent:#7a5200!important;--muted:#3d3931!important;--dim:#6b6559!important;--line:#d3cebf!important;--bright:#141109!important}body{background:#fff!important;overflow:visible!important;height:auto!important}body.home>:not(.resume){display:none!important}body.article .art-foot,body.article>#bg3d,body.article>.fx-scanlines,body.article>.fx-vignette,body.article>.nav,body.article>.settings{display:none!important}body.article{background:#fff!important}body.article .art-wrap{max-width:none;margin:0;padding:0}body.article .art-body{color:var(--bright);font-size:11pt;line-height:1.5}body.article .art-body h2{break-after:avoid;page-break-after:avoid}body.article .art-body .art-note,body.article .art-body figure,body.article .art-body pre{break-inside:avoid;page-break-inside:avoid}.resume{display:block;color:var(--bright);font-family:Archivo,Arial,sans-serif;font-size:10.5pt;line-height:1.42}.resume a{color:inherit;text-decoration:none}.r-head{border-bottom:2px solid var(--bright);padding-bottom:9px;margin-bottom:13px}.r-name{font-weight:900;font-size:30pt;letter-spacing:-.02em;line-height:1;margin:0}.r-title{font-size:11pt;color:var(--muted);margin-top:7px}.r-contact{font-family:'IBM Plex Mono',monospace;font-size:8.5pt;color:var(--dim);letter-spacing:.01em;margin-top:8px}.r-meta{font-family:'IBM Plex Mono',monospace;font-size:8.5pt;color:var(--accent);letter-spacing:.01em;margin-top:4px}.r-summary{font-size:10.5pt;color:var(--muted);line-height:1.5;margin:0 0 15px}.r-section{margin-bottom:14px}.r-h2{font-weight:800;font-size:14pt;letter-spacing:-.01em;margin:0 0 8px;padding-bottom:4px;break-after:avoid;page-break-after:avoid}.r-entry{margin-bottom:10px;break-inside:avoid;page-break-inside:avoid}.r-entry:last-child{margin-bottom:0}.r-entry-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px}.r-role{font-weight:700;font-size:11.5pt;letter-spacing:-.005em}.r-dates{font-family:'IBM Plex Mono',monospace;font-size:8.5pt;color:var(--dim);white-space:nowrap;letter-spacing:.01em}.r-org{font-size:9.5pt;color:var(--muted);margin-top:1px}.r-bullets{margin:5px 0 0;padding-left:15px}.r-bullets li{margin-bottom:3px;line-height:1.4}.r-skills{margin:0}.r-skill{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:5px 0;break-inside:avoid;page-break-inside:avoid}.r-skill:last-child{border-bottom:none}.r-skill dt{font-family:'IBM Plex Mono',monospace;font-size:8pt;letter-spacing:.05em;color:var(--accent);text-transform:uppercase;padding-top:1px}.r-skill dd{margin:0;font-size:9.5pt;color:var(--muted)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}[data-reveal]{opacity:1;transform:none;transition:none}.hero-connected .cursor{animation:none}.hero-scroll{animation:none}[data-tilt]{transition:none}.boot-inner{animation:none}.boot-line{animation:none}#boot::after{display:none}}