@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=Space+Grotesk:wght@300;400;500;600;700&display=swap');
:root{--void:#070807;--deep:#0a0c09;--panel:#0d100c;--ink:#f0f2e9;--soft:#b7bbae;--muted:#767b70;--line:rgba(240,242,233,.14);--line2:rgba(240,242,233,.07);--signal:#c8ff35;--signal-rgb:200,255,53;--alert:#ff5b45;--max:1480px;--pad:clamp(20px,4.2vw,68px);--nav:74px;--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}html{background:var(--void);scroll-behavior:smooth}body{margin:0;background:var(--void);color:var(--ink);font-family:'Space Grotesk',sans-serif;overflow-x:hidden}body.shell-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}::selection{background:var(--signal);color:var(--void)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--void)}::-webkit-scrollbar-thumb{background:#272b23}
.noise{position:fixed;inset:0;pointer-events:none;z-index:100;opacity:.032;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.scanline{position:fixed;z-index:99;left:0;right:0;top:-2px;height:1px;background:linear-gradient(90deg,transparent,var(--signal),transparent);opacity:.07;animation:scan 10s linear infinite;pointer-events:none}@keyframes scan{to{transform:translateY(105vh)}}
.ambient-world{position:fixed;z-index:0;inset:0;width:100%;height:100%;pointer-events:none;opacity:.72}.site-shell{position:relative;z-index:1;width:min(var(--max),100%);margin:auto;border-inline:1px solid var(--line2);min-height:100vh;background:rgba(7,8,7,.68)}.nav{height:var(--nav);position:fixed;z-index:80;inset:0 0 auto;background:rgba(7,8,7,.84);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav-inner{width:min(var(--max),100%);height:100%;margin:auto;padding-inline:var(--pad);display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.brand{font-size:18px;font-weight:700;letter-spacing:-.055em}.brand i{color:var(--signal);font-style:normal}.nav-links{display:flex;gap:25px;align-items:center}.nav-links a{font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);position:relative;min-height:44px;display:inline-flex;align-items:center}.nav-links a:after{content:"";position:absolute;height:1px;left:0;right:100%;bottom:-7px;background:var(--signal);transition:.3s}.nav-links a:hover,.nav-links a.active{color:var(--ink)}.nav-links a:hover:after,.nav-links a.active:after{right:0}.nav-actions{justify-self:end;display:flex;gap:10px;align-items:center}.shell-trigger{height:44px;padding:0 14px;border:1px solid rgba(var(--signal-rgb),.35);background:rgba(var(--signal-rgb),.05);font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.1em;text-transform:uppercase;display:flex;gap:10px;align-items:center}.shell-trigger:hover{background:var(--signal);color:var(--void)}.shell-trigger kbd{border:1px solid currentColor;padding:2px 5px;opacity:.55}.live-dot{width:7px;height:7px;background:var(--signal);border-radius:50%;box-shadow:0 0 14px var(--signal);animation:pulse 2s infinite}@keyframes pulse{70%{box-shadow:0 0 0 8px transparent}}.menu{display:none;width:44px;height:44px;background:transparent;border:1px solid var(--line)}
.route-index{position:fixed;z-index:40;left:12px;top:50%;transform:translateY(-50%);display:grid;gap:9px}.route-index a{width:5px;height:5px;border:1px solid var(--muted);border-radius:50%;transition:.25s}.route-index a.active,.route-index a:hover{background:var(--signal);border-color:var(--signal);box-shadow:0 0 12px var(--signal)}
.page-hero{min-height:74svh;padding:calc(var(--nav) + 90px) var(--pad) 70px;position:relative;overflow:hidden;display:flex;align-items:flex-end}.page-hero.full{min-height:100svh}.hero-canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.72}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,var(--void),rgba(7,8,7,.82) 35%,rgba(7,8,7,.18) 76%,var(--void)),linear-gradient(0deg,var(--void),transparent 45%);pointer-events:none}.sentinel-hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 76% 39%,rgba(var(--signal-rgb),.095),transparent 19%),radial-gradient(ellipse at 82% 58%,rgba(var(--signal-rgb),.035),transparent 35%);mix-blend-mode:screen}.sentinel-hero .hero-shade{background:linear-gradient(90deg,var(--void) 0,rgba(7,8,7,.93) 31%,rgba(7,8,7,.32) 56%,transparent 82%),linear-gradient(0deg,var(--void),transparent 43%)}.sentinel-scene{position:absolute;z-index:1;inset:0;pointer-events:none;overflow:hidden}.relic{position:absolute;display:block;width:clamp(34px,4.5vw,68px);aspect-ratio:1;clip-path:polygon(50% 0,86% 24%,100% 66%,61% 100%,16% 83%,0 36%);background:linear-gradient(145deg,rgba(240,242,233,.16),rgba(var(--signal-rgb),.05) 42%,rgba(7,8,7,.5));border:1px solid rgba(var(--signal-rgb),.3);filter:drop-shadow(0 0 18px rgba(var(--signal-rgb),.13));animation:relic-float 7s ease-in-out infinite}.relic:before,.relic:after{content:"";position:absolute;inset:18%;border:1px solid rgba(var(--signal-rgb),.25);transform:rotate(32deg)}.relic:after{inset:36%;background:var(--signal);box-shadow:0 0 18px var(--signal)}.relic-a{right:9%;top:20%;animation-delay:-1.7s}.relic-b{right:38%;top:30%;width:clamp(22px,2.8vw,42px);animation-delay:-4.4s;opacity:.65}.relic-c{right:24%;bottom:12%;width:clamp(28px,3.6vw,54px);animation-delay:-6s;opacity:.75}.sentinel-lock{position:absolute;right:6.5%;top:51%;display:flex;align-items:center;gap:11px;font:8px/1.65 'IBM Plex Mono',monospace;letter-spacing:.1em;color:var(--muted);animation:lock-drift 5.5s ease-in-out infinite}.sentinel-lock i{width:34px;height:34px;border:1px solid rgba(var(--signal-rgb),.32);border-radius:50%;position:relative}.sentinel-lock i:before,.sentinel-lock i:after{content:"";position:absolute;background:var(--signal)}.sentinel-lock i:before{width:5px;height:5px;border-radius:50%;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 0 13px var(--signal)}.sentinel-lock i:after{width:52px;height:1px;left:-9px;top:50%;opacity:.35}@keyframes relic-float{0%,100%{transform:translate3d(0,0,0) rotate(-7deg)}50%{transform:translate3d(7px,-16px,0) rotate(8deg)}}@keyframes lock-drift{50%{transform:translateY(-9px)}}.page-hero-content{position:relative;z-index:2;width:100%}.eyebrow{font:500 10px 'IBM Plex Mono',monospace;letter-spacing:.14em;color:var(--signal);text-transform:uppercase;display:flex;align-items:center;gap:12px;margin-bottom:24px}.eyebrow:before{content:"";width:34px;height:1px;background:currentColor}.hero-title{font-size:clamp(64px,11.2vw,170px);line-height:.78;letter-spacing:-.082em;text-transform:uppercase;font-weight:600;margin:0;max-width:1300px}.hero-title .outline{color:transparent;-webkit-text-stroke:1px rgba(240,242,233,.55)}.hero-title.small{font-size:clamp(60px,9vw,135px)}.hero-meta{margin-top:48px;display:grid;grid-template-columns:minmax(0,620px) 1fr;gap:50px;align-items:end}.hero-lead{font-size:clamp(17px,1.8vw,22px);line-height:1.6;color:var(--soft);margin:0}.meta-grid{justify-self:end;display:grid;grid-template-columns:repeat(2,minmax(120px,190px));border:1px solid var(--line)}.meta-cell{padding:16px;border-right:1px solid var(--line);font:9px/1.6 'IBM Plex Mono',monospace;color:var(--muted)}.meta-cell:last-child{border:0}.meta-cell b{display:block;color:var(--ink);font-weight:400}.button{min-height:46px;padding:0 18px;border:1px solid var(--line);background:transparent;display:inline-flex;align-items:center;gap:14px;justify-content:center;font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.09em;text-transform:uppercase;position:relative;overflow:hidden;z-index:0}.button:before{content:"";position:absolute;inset:0;background:var(--signal);transform:translateY(103%);transition:.35s var(--ease);z-index:-1}.button:hover{color:var(--void);border-color:var(--signal)}.button:hover:before{transform:none}.button.primary{background:var(--signal);color:var(--void);border-color:var(--signal)}.button.primary:before{background:var(--ink)}
.section{padding:clamp(90px,11vw,165px) var(--pad);border-top:1px solid var(--line)}.section-grid{display:grid;grid-template-columns:.48fr 1.52fr;gap:7vw}.section-grid>*{min-width:0}.section-label{font:10px 'IBM Plex Mono',monospace;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);height:max-content;position:sticky;top:104px}.section-label b{color:var(--signal);font-weight:500;margin-right:10px}.section-title{font-size:clamp(46px,7vw,104px);line-height:.9;letter-spacing:-.065em;text-transform:uppercase;font-weight:500;margin:0 0 42px}.section-title .outline{color:transparent;-webkit-text-stroke:1px var(--muted)}.section-copy{font-size:17px;line-height:1.75;color:var(--soft);max-width:700px}.micro{font:9px 'IBM Plex Mono',monospace;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}.signal{color:var(--signal)}
.gateway-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:10px;background:transparent;border:0;perspective:1200px}.gateway{--gx:72%;--gy:34%;--tilt-x:0deg;--tilt-y:0deg;--ink:#f0f2e9;--muted:#9ea596;--line:rgba(240,242,233,.15);color:var(--ink);background:rgba(7,8,7,.94);border:1px solid var(--line);min-height:340px;padding:30px;position:relative;overflow:hidden;display:flex;flex-direction:column;transition:transform .45s var(--ease),border-color .35s,box-shadow .35s;transform:rotateX(var(--tilt-x)) rotateY(var(--tilt-y));isolation:isolate}.gateway:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle 210px at var(--gx) var(--gy),rgba(var(--signal-rgb),.20),transparent 62%),linear-gradient(135deg,rgba(var(--signal-rgb),.025),transparent 55%);opacity:.65;transition:opacity .3s}.gateway:after{content:"";position:absolute;z-index:-1;inset:0;background-image:linear-gradient(rgba(240,242,233,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(240,242,233,.055) 1px,transparent 1px);background-size:38px 38px;mask-image:radial-gradient(circle at var(--gx) var(--gy),#000,transparent 66%)}.gateway:nth-child(1){grid-column:span 7;min-height:390px}.gateway:nth-child(2){grid-column:span 5;min-height:390px}.gateway:nth-child(3){grid-column:span 4}.gateway:nth-child(4){grid-column:span 4}.gateway:nth-child(5){grid-column:span 4}.gateway:hover{border-color:rgba(var(--signal-rgb),.56);box-shadow:0 30px 80px rgba(0,0,0,.28),inset 0 0 80px rgba(var(--signal-rgb),.035)}.gateway:hover:before{opacity:1}.gateway-no{position:relative;z-index:2;font:600 10px 'IBM Plex Mono',monospace;color:var(--signal);text-shadow:0 0 14px rgba(var(--signal-rgb),.55)}.gateway h3{position:relative;z-index:2;font-size:clamp(30px,3.8vw,57px);line-height:.92;letter-spacing:-.055em;font-weight:500;margin:auto 0 13px;max-width:85%}.gateway p{position:relative;z-index:2;color:var(--muted);max-width:430px;margin:0;font-size:14px;line-height:1.55}.gateway-arrow{position:absolute;z-index:3;right:25px;top:24px;font-size:25px;transition:.3s}.gateway:hover .gateway-arrow{transform:translate(6px,-6px) rotate(8deg);color:var(--signal)}.gateway-gridlines{position:absolute;inset:0;opacity:.16;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(135deg,transparent 20%,#000)}.gateway-art{position:absolute;z-index:0;inset:0;pointer-events:none}.gateway-glyph{position:absolute;right:8%;top:13%;font-size:clamp(84px,10vw,150px);line-height:1;font-weight:600;letter-spacing:-.09em;color:transparent;-webkit-text-stroke:1px rgba(var(--signal-rgb),.22);transform:translate3d(calc((var(--gx) - 50%)*.09),calc((var(--gy) - 50%)*.09),0);transition:transform .25s}.gateway-orbit{position:absolute;width:clamp(110px,14vw,190px);aspect-ratio:1;right:-3%;top:3%;border:1px solid rgba(var(--signal-rgb),.18);border-radius:50%;animation:gateway-spin 19s linear infinite}.gateway-orbit:before,.gateway-orbit:after,.gateway-orbit i{content:"";position:absolute;border:1px solid rgba(var(--signal-rgb),.18);border-radius:50%}.gateway-orbit:before{inset:15%}.gateway-orbit:after{inset:34%;background:radial-gradient(circle,var(--signal) 0 2px,transparent 3px)}.gateway-orbit i:nth-child(1){width:8px;height:8px;background:var(--signal);border:0;top:9%;left:25%;box-shadow:0 0 15px var(--signal)}.gateway-orbit i:nth-child(2){inset:47%;background:var(--signal);border:0}.gateway-orbit i:nth-child(3){width:54%;height:1px;border:0;border-top:1px dashed rgba(var(--signal-rgb),.32);top:50%;left:-7%;border-radius:0}.gateway-trace{position:absolute;left:30px;right:30px;top:47%;height:1px;background:linear-gradient(90deg,transparent,rgba(var(--signal-rgb),.42),transparent);transform:scaleX(.4);transform-origin:right;transition:transform .6s var(--ease)}.gateway:hover .gateway-trace{transform:scaleX(1)}.gateway-coord{position:absolute;right:22px;bottom:18px;font:8px 'IBM Plex Mono',monospace;letter-spacing:.1em;color:rgba(240,242,233,.38)}@keyframes gateway-spin{to{transform:rotate(360deg)}}
.status-ribbon{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}.status-item{padding:24px var(--pad);border-right:1px solid var(--line)}.status-item:last-child{border:0}.status-item b{display:block;font-size:clamp(28px,4vw,54px);font-weight:400;letter-spacing:-.06em}.status-item span{font:9px 'IBM Plex Mono',monospace;color:var(--muted);letter-spacing:.08em}.manifesto{font-size:clamp(38px,6.4vw,92px);line-height:1.01;letter-spacing:-.06em;margin:0}.manifesto span{color:var(--muted)}
/* Projects */
.project-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:40px}.filter{height:44px;padding:0 14px;border:1px solid var(--line);background:transparent;font:9px 'IBM Plex Mono',monospace;color:var(--muted);text-transform:uppercase}.filter.active,.filter:hover{background:var(--signal);color:var(--void);border-color:var(--signal)}.project-lab{display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}.project-file{background:var(--void);display:grid;grid-template-columns:100px .85fr 1.15fr;min-height:360px;transition:.35s;position:relative;overflow:hidden}.project-file:hover{background:#0c0f0b}.project-id{padding:30px;border-right:1px solid var(--line);font:9px/1.7 'IBM Plex Mono',monospace;color:var(--muted)}.project-id b{color:var(--signal);font-weight:400}.project-info{padding:35px;display:flex;flex-direction:column}.project-info h2{font-size:clamp(31px,4.2vw,62px);line-height:.95;letter-spacing:-.055em;font-weight:500;margin:auto 0 20px}.project-info p{color:var(--soft);line-height:1.7}.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:20px}.tag{border:1px solid var(--line);padding:6px 9px;font:8px 'IBM Plex Mono',monospace;color:var(--muted)}.project-visual{border-left:1px solid var(--line);position:relative;overflow:hidden;min-height:340px}.project-visual canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.visual-hud{position:absolute;inset:0;padding:20px;display:flex;justify-content:space-between;flex-direction:column;pointer-events:none;font:8px 'IBM Plex Mono',monospace;color:var(--muted)}.hud-line{display:flex;justify-content:space-between}.project-actions{display:flex;gap:9px;margin-top:22px}.method-strip{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.method{padding:28px;border-right:1px solid var(--line);min-height:200px}.method:last-child{border:0}.method b{font:9px 'IBM Plex Mono',monospace;color:var(--signal)}.method h3{font-size:20px;font-weight:500;margin:65px 0 8px}.method p{font-size:13px;color:var(--muted);line-height:1.6}
/* Experience */
.mission-timeline{border-top:1px solid var(--line)}.mission{display:grid;grid-template-columns:170px 1fr 240px;gap:38px;padding:38px 0;border-bottom:1px solid var(--line);position:relative}.mission time{font:9px/1.7 'IBM Plex Mono',monospace;color:var(--muted)}.mission h2{font-size:clamp(27px,3.5vw,48px);font-weight:500;letter-spacing:-.045em;margin:0}.mission .company{font:9px 'IBM Plex Mono',monospace;color:var(--signal);margin:8px 0 18px}.mission p{color:var(--soft);line-height:1.7;margin:0}.mission-outcome{align-self:center;border-left:1px solid var(--line);padding-left:25px;font:9px/1.7 'IBM Plex Mono',monospace;color:var(--muted)}.mission-outcome strong{font-size:42px;font-family:'Space Grotesk';font-weight:400;color:var(--ink);letter-spacing:-.05em;display:block}.ops-map{border:1px solid var(--line);min-height:510px;display:grid;grid-template-columns:1.1fr .9fr}.ops-canvas{position:relative;overflow:hidden;border-right:1px solid var(--line);background:#090b08}.ops-canvas:before{content:"";position:absolute;inset:0;background:repeating-radial-gradient(circle at 50%,transparent 0 14%,var(--line2) 14.3% 14.6%);opacity:.8}.orbit-system{position:absolute;inset:50% auto auto 50%;width:360px;aspect-ratio:1;transform:translate(-50%,-50%);border:1px solid var(--line);border-radius:50%;animation:rotate 28s linear infinite}.orbit-system:before,.orbit-system:after{content:"";position:absolute;border:1px solid var(--line);border-radius:50%}.orbit-system:before{inset:20%}.orbit-system:after{inset:40%}.orbit-node{position:absolute;width:10px;height:10px;background:var(--signal);border-radius:50%;box-shadow:0 0 20px var(--signal)}.orbit-node.a{left:50%;top:-5px}.orbit-node.b{right:8%;bottom:20%;background:var(--alert);box-shadow:0 0 20px var(--alert)}@keyframes rotate{to{transform:translate(-50%,-50%) rotate(360deg)}}.ops-log{padding:30px;font:10px/2 'IBM Plex Mono',monospace;color:var(--muted)}.ops-log .ok{color:var(--signal)}.ops-log .alert{color:var(--alert)}
/* Arsenal */
.capability-radar{display:grid;grid-template-columns:.9fr 1.1fr;border:1px solid var(--line);min-height:560px}.radar-wrap{position:relative;border-right:1px solid var(--line);display:grid;place-items:center;background:radial-gradient(circle,rgba(var(--signal-rgb),.04),transparent 60%)}.radar-ring{width:min(430px,80%);aspect-ratio:1;border:1px solid var(--line);border-radius:50%;position:relative}.radar-ring:before,.radar-ring:after{content:"";position:absolute;border:1px solid var(--line);border-radius:50%}.radar-ring:before{inset:20%}.radar-ring:after{inset:40%}.radar-axis{position:absolute;inset:50% auto auto 50%;width:100%;height:1px;background:var(--line);transform:translate(-50%,-50%)}.radar-axis:after{content:"";position:absolute;left:50%;top:-215px;width:1px;height:430px;background:var(--line)}.radar-sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(rgba(var(--signal-rgb),.22),transparent 19%);animation:rotate 6s linear infinite}.radar-label{position:absolute;font:8px 'IBM Plex Mono',monospace;color:var(--signal)}.radar-label.a{top:-25px;left:43%}.radar-label.b{right:-63px;top:48%}.radar-label.c{bottom:-25px;left:40%}.radar-label.d{left:-58px;top:48%}.cap-list{display:grid;grid-template-columns:1fr 1fr}.cap-cell{padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.cap-cell:nth-child(even){border-right:0}.cap-cell:nth-last-child(-n+2){border-bottom:0}.cap-cell h3{font-size:23px;margin:40px 0 16px;font-weight:500}.cap-cell ul{list-style:none;padding:0;margin:0;columns:2}.cap-cell li{font:9px/2 'IBM Plex Mono',monospace;color:var(--muted)}.cap-cell li:before{content:"+ ";color:var(--signal)}.tool-cloud{display:flex;flex-wrap:wrap;gap:8px}.tool{padding:11px 14px;border:1px solid var(--line);font:9px 'IBM Plex Mono',monospace;color:var(--soft);transition:.25s}.tool:hover{color:var(--void);background:var(--signal);border-color:var(--signal);transform:translateY(-3px)}
/* Credentials */
.vault-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.credential{background:var(--void);padding:28px;min-height:220px;position:relative;overflow:hidden;display:flex;flex-direction:column}.credential:after{content:attr(data-code);position:absolute;right:-4px;bottom:-28px;font-size:88px;font-weight:700;letter-spacing:-.08em;color:rgba(var(--signal-rgb),.035)}.cred-top{display:flex;justify-content:space-between;font:9px 'IBM Plex Mono',monospace;color:var(--muted)}.cred-state{color:var(--signal);display:flex;align-items:center;gap:7px}.cred-state:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--signal)}.credential h2{font-size:clamp(21px,2.6vw,35px);line-height:1.08;font-weight:500;letter-spacing:-.035em;margin:auto 0 0;max-width:520px}.credential p{font:9px 'IBM Plex Mono',monospace;color:var(--muted);margin:12px 0 0}.learning-line{position:relative;padding-left:32px;border-left:1px solid var(--line);display:grid;gap:35px}.learning-item{position:relative}.learning-item:before{content:"";position:absolute;left:-36px;top:5px;width:7px;height:7px;background:var(--signal);border-radius:50%;box-shadow:0 0 12px var(--signal)}.learning-item h3{font-size:25px;font-weight:500;margin:0 0 10px}.learning-item p{color:var(--muted);line-height:1.65}
/* Contact */
.contact-console{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);min-height:620px}.contact-console>*{min-width:0}.contact-intro{padding:50px;background:linear-gradient(145deg,rgba(var(--signal-rgb),.06),transparent 55%);display:flex;flex-direction:column}.contact-intro h2{font-size:clamp(48px,7vw,100px);line-height:.86;text-transform:uppercase;letter-spacing:-.07em;font-weight:500;margin:80px 0 25px}.contact-intro p{color:var(--soft);line-height:1.7;max-width:530px}.contact-channels{margin-top:auto;display:grid;gap:12px;font:10px 'IBM Plex Mono',monospace}.contact-channels a{padding-bottom:11px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.contact-channels a:hover{color:var(--signal)}.contact-form{padding:50px;border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:center}.field{margin-bottom:22px}.field label{display:block;font:9px 'IBM Plex Mono',monospace;color:var(--muted);letter-spacing:.1em;margin-bottom:9px}.field input,.field textarea{width:100%;background:#090b08;border:1px solid var(--line);outline:0;padding:14px;color:var(--ink);border-radius:0}.field textarea{height:150px;resize:vertical}.field input:focus,.field textarea:focus{border-color:var(--signal);box-shadow:0 0 0 2px rgba(var(--signal-rgb),.08)}.protocols{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.protocol{background:var(--void);padding:28px;min-height:190px}.protocol span{font:9px 'IBM Plex Mono',monospace;color:var(--signal)}.protocol h3{font-size:21px;margin:55px 0 10px}.protocol p{font-size:13px;line-height:1.6;color:var(--muted)}
/* Shell mode */
.shell-overlay{position:fixed;z-index:150;inset:0;background:rgba(3,4,3,.96);backdrop-filter:blur(22px);opacity:0;visibility:hidden;transition:.35s var(--ease);padding:clamp(12px,3vw,42px)}.shell-overlay.open{opacity:1;visibility:visible}.terminal-app{height:100%;border:1px solid rgba(var(--signal-rgb),.25);display:grid;grid-template-rows:58px 1fr 32px;background:#050704;box-shadow:0 0 100px rgba(var(--signal-rgb),.06);position:relative;overflow:hidden}.terminal-app:before,.terminal-app:after{content:"";position:absolute;width:13px;height:13px;border-color:var(--signal);pointer-events:none}.terminal-app:before{left:7px;top:7px;border-left:1px solid;border-top:1px solid}.terminal-app:after{right:7px;bottom:7px;border-right:1px solid;border-bottom:1px solid}.terminal-head{border-bottom:1px solid var(--line);padding:0 20px;display:flex;align-items:center;justify-content:space-between;font:9px 'IBM Plex Mono',monospace;letter-spacing:.1em;color:var(--muted)}.terminal-head-left{display:flex;align-items:center;gap:10px}.terminal-close{height:44px;padding:0 12px;border:1px solid var(--line);background:transparent;font:9px 'IBM Plex Mono',monospace}.terminal-close:hover{background:var(--signal);color:var(--void)}.terminal-main{display:grid;grid-template-columns:230px 1fr;min-height:0}.terminal-side{border-right:1px solid var(--line);padding:24px;overflow:auto}.terminal-side h3{font:9px 'IBM Plex Mono',monospace;color:var(--signal);letter-spacing:.1em;margin:0 0 20px}.command-list{display:grid;gap:10px}.command-list button{border:0;background:transparent;text-align:left;padding:0;font:9px 'IBM Plex Mono',monospace;color:var(--muted)}.command-list button:hover{color:var(--signal)}.terminal-stage{display:grid;grid-template-rows:1fr auto;min-width:0}.terminal-output{padding:28px;overflow:auto;font:12px/1.8 'IBM Plex Mono',monospace;color:var(--soft);white-space:pre-wrap;overflow-wrap:anywhere}.terminal-output .boot{color:var(--signal)}.terminal-output .cmd{color:var(--ink)}.terminal-output .err{color:var(--alert)}.terminal-output .dim{color:var(--muted)}.terminal-output a{color:var(--signal);border-bottom:1px solid rgba(var(--signal-rgb),.3)}.prompt-row{border-top:1px solid var(--line);display:grid;grid-template-columns:auto 1fr;align-items:center;padding:16px 22px;gap:10px}.prompt-label{font:12px 'IBM Plex Mono',monospace;color:var(--signal)}.terminal-input{border:0;background:transparent;outline:0;width:100%;font:12px 'IBM Plex Mono',monospace;color:var(--ink);caret-color:var(--signal)}.terminal-foot{border-top:1px solid var(--line);padding:0 20px;display:flex;justify-content:space-between;align-items:center;font:8px 'IBM Plex Mono',monospace;color:var(--muted)}
.page-footer{padding:45px var(--pad);border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;font:9px 'IBM Plex Mono',monospace;color:var(--muted);letter-spacing:.08em}.page-footer div:nth-child(2){text-align:center}.page-footer div:last-child{text-align:right}.page-footer button{min-height:44px;display:inline-flex;align-items:center}.page-curtain{position:fixed;z-index:140;inset:0;background:#090d08;color:#ecffd0;transform:translateY(102%);visibility:hidden;pointer-events:none;overflow:hidden;transition:transform .5s var(--ease),visibility 0s .5s}.page-curtain:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 48%,rgba(var(--signal-rgb),.18),transparent 24%),linear-gradient(120deg,rgba(var(--signal-rgb),.06),transparent 45%),linear-gradient(90deg,transparent 0 72%,rgba(var(--signal-rgb),.05) 72%)}.page-curtain.active{transform:none;visibility:visible;transition:transform .5s var(--ease)}.curtain-grid{position:absolute;inset:-20%;background-image:linear-gradient(rgba(var(--signal-rgb),.09) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--signal-rgb),.09) 1px,transparent 1px);background-size:44px 44px;transform:perspective(700px) rotateX(64deg) translateY(24%);transform-origin:center bottom;mask-image:linear-gradient(0deg,#000,transparent 76%)}.curtain-orbit{position:absolute;right:8%;top:50%;width:min(42vw,520px);aspect-ratio:1;border:1px solid rgba(var(--signal-rgb),.38);border-radius:50%;transform:translateY(-50%)}.curtain-orbit:before,.curtain-orbit:after,.curtain-orbit i{content:"";position:absolute;border:1px solid rgba(var(--signal-rgb),.22);border-radius:50%}.curtain-orbit:before{inset:11%;border-style:dashed}.curtain-orbit:after{inset:32%;background:radial-gradient(circle,var(--signal) 0 4px,transparent 5px)}.curtain-orbit i:nth-child(1){inset:-7% 46%;border-radius:0;border-width:0 1px}.curtain-orbit i:nth-child(2){inset:46% -7%;border-radius:0;border-width:1px 0}.curtain-orbit i:nth-child(3){width:18px;height:18px;top:8%;left:20%;background:var(--signal);border:0;box-shadow:0 0 40px var(--signal)}.curtain-orbit b{position:absolute;inset:21%;border:1px solid rgba(240,242,233,.15);transform:rotate(45deg)}.active .curtain-orbit{animation:curtain-spin 5s linear infinite}.active .curtain-orbit:before{animation:curtain-spin 3s linear infinite reverse}.curtain-data{position:absolute;z-index:2;left:clamp(24px,7vw,110px);top:50%;transform:translateY(-50%);display:grid;gap:12px}.curtain-data span,.curtain-data small{font:600 10px 'IBM Plex Mono',monospace;letter-spacing:.16em;color:var(--signal);text-shadow:0 0 14px rgba(var(--signal-rgb),.4)}.curtain-data strong{font-size:clamp(70px,13vw,190px);line-height:.78;letter-spacing:-.08em;text-transform:uppercase;color:transparent;-webkit-text-stroke:1px rgba(236,255,208,.88)}.curtain-data small{color:rgba(236,255,208,.56);font-size:8px}.curtain-sweep{position:absolute;inset:0 auto 0 -8%;width:3px;background:var(--signal);box-shadow:0 0 30px var(--signal),0 0 90px rgba(var(--signal-rgb),.6);opacity:0}.active .curtain-sweep{animation:curtain-sweep .64s var(--ease) both}@keyframes curtain-spin{to{transform:translateY(-50%) rotate(360deg)}}@keyframes curtain-sweep{0%{left:-8%;opacity:0}18%{opacity:1}100%{left:108%;opacity:0}}.inversion{background:#e7e8e1;color:#0a0b09;--ink:#0a0b09;--soft:#3d4039;--muted:#656960;--line:rgba(10,11,9,.18);--line2:rgba(10,11,9,.08)}.inversion .protocol{background:transparent}.kinetic-band{height:clamp(120px,18vw,270px);overflow:hidden;display:flex;align-items:center;border-block:1px solid var(--line);white-space:nowrap}.kinetic-track{display:flex;width:max-content;animation:kinetic 24s linear infinite;font-size:clamp(72px,13vw,190px);line-height:.8;letter-spacing:-.075em;text-transform:uppercase}.kinetic-track span:after{content:' + ';color:var(--signal);margin:0 .18em}@keyframes kinetic{to{transform:translateX(-50%)}}.corner-code{position:absolute;font:8px 'IBM Plex Mono',monospace;color:var(--muted);letter-spacing:.1em}.corner-code.tl{left:var(--pad);top:calc(var(--nav) + 24px)}.corner-code.br{right:var(--pad);bottom:26px}.eyebrow,.gateway-no,.section-label b,.micro,.project-id b,.method b,.protocol span,.vault-status,.phase-no,.terminal-output .boot{color:var(--signal);font-weight:600;text-shadow:0 0 13px rgba(var(--signal-rgb),.46)}.eyebrow{font-size:11px}.micro,.project-id b,.method b,.protocol span{font-size:10px}.inversion .eyebrow,.inversion .section-label b,.inversion .micro{color:#355900;text-shadow:none}.reveal{opacity:0;transform:translateY(25px);transition:.72s var(--ease)}.reveal.in{opacity:1;transform:none}
@media(max-width:1050px){.nav-inner{grid-template-columns:1fr auto}.nav-links{position:fixed;inset:var(--nav) 0 auto;background:rgba(7,8,7,.98);padding:28px var(--pad);border-bottom:1px solid var(--line);display:none;flex-direction:column;align-items:flex-start}.nav-links.open{display:flex}.menu{display:block}.nav-actions .live-dot{display:none}.section-grid{grid-template-columns:1fr}.section-label{position:static;margin-bottom:30px}.hero-meta{grid-template-columns:1fr}.meta-grid{justify-self:start}.gateway:nth-child(n){grid-column:span 6}.project-file{grid-template-columns:72px 1fr}.project-visual{grid-column:2;border-left:0;border-top:1px solid var(--line);min-height:280px}.mission{grid-template-columns:135px 1fr}.mission-outcome{grid-column:2}.capability-radar,.contact-console{grid-template-columns:1fr}.radar-wrap{border-right:0;border-bottom:1px solid var(--line);min-height:500px}.contact-form{border-left:0;border-top:1px solid var(--line)}.ops-map{grid-template-columns:1fr}.ops-canvas{border-right:0;border-bottom:1px solid var(--line);min-height:400px}}
@media(max-width:700px){:root{--nav:64px}.route-index{display:none}.shell-trigger kbd{display:none}.ambient-world{opacity:.5}.curtain-orbit{width:78vw;right:-34%;opacity:.64}.curtain-data{left:24px;right:24px}.curtain-data strong{font-size:19vw}.curtain-data span{font-size:9px}.sentinel-hero .hero-canvas{opacity:.48}.sentinel-hero .hero-shade{background:linear-gradient(90deg,var(--void) 0,rgba(7,8,7,.92) 54%,rgba(7,8,7,.28)),linear-gradient(0deg,var(--void),transparent 38%)}.relic-b,.relic-c,.sentinel-lock{display:none}.relic-a{right:4%;top:16%;width:38px;opacity:.72}.page-hero{padding-top:calc(var(--nav) + 72px);min-height:75svh}.page-hero.full{min-height:100svh}.hero-title{font-size:clamp(54px,18vw,85px)}.hero-title.small{font-size:clamp(44px,14vw,72px)}.hero-meta{gap:30px;margin-top:35px}.meta-grid{grid-template-columns:1fr;width:100%}.meta-cell{border-right:0;border-bottom:1px solid var(--line)}.meta-cell:last-child{border:0}.section{padding-block:90px}.section-title{font-size:clamp(43px,14vw,68px)}.gateway:nth-child(n){grid-column:1/-1;min-height:280px;transform:none}.status-ribbon{grid-template-columns:1fr 1fr}.status-item:nth-child(2){border-right:0}.status-item:nth-child(-n+2){border-bottom:1px solid var(--line)}.project-file{grid-template-columns:1fr}.project-id{border-right:0;border-bottom:1px solid var(--line);padding:18px}.project-visual{grid-column:1}.project-info{padding:26px}.method-strip{grid-template-columns:1fr 1fr}.method:nth-child(2){border-right:0}.method:nth-child(-n+2){border-bottom:1px solid var(--line)}.mission{grid-template-columns:1fr;gap:12px}.mission-outcome{grid-column:1;border-left:0;border-top:1px solid var(--line);padding:18px 0 0}.cap-list{grid-template-columns:1fr}.cap-cell{border-right:0}.cap-cell:nth-last-child(2){border-bottom:1px solid var(--line)}.radar-wrap{min-height:390px}.radar-label.b{right:6px}.vault-grid{grid-template-columns:1fr}.protocols{grid-template-columns:1fr}.contact-intro,.contact-form{padding:28px}.contact-intro h2{margin-top:55px}.terminal-main{grid-template-columns:1fr}.terminal-side{display:none}.terminal-output{padding:18px;font-size:10px}.shell-overlay{padding:6px}.page-footer{grid-template-columns:1fr}.page-footer div:nth-child(2),.page-footer div:last-child{text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scanline,.live-dot,.radar-sweep,.orbit-system,.kinetic-track,.relic,.sentinel-lock,.gateway-orbit,.curtain-orbit,.curtain-sweep{animation:none}.reveal{opacity:1;transform:none}.shell-overlay,.page-curtain{transition:none}}
